var translatable=[];
var curLang="";

function setLanguage(lang)
{
   curLang=lang;
   for(var i=0; i<translatable.length; i++)
   {
      var fl=$(translatable[i])[0];
      if(fl)
      {
         if(fl.setLanguage) fl.setLanguage(lang);
         else if(fl.setContentLanguage) fl.setContentLanguage(lang);
      }
   }
   if($.nav)
   {
      if(curLang==""||curLang=="en") $.nav.enable();
      else $.nav.disable();
   }
}

function registerTranslatable(str)
{
   translatable.push(str);
   if(curLang!="") $(str)[0].setLanguage(curLang);
}

function flashTranslateHookin(el)
{
   var found=false;
   for(var n1 in el.b)
   {
      var obj=el.b[n1];
      for(var n2 in obj)
      {
         var functionbody=String(obj[n2]);
         if(!found&&(functionbody.indexOf("g.selectedIndex = b")>=0||functionbody.indexOf("g.selectedIndex=b")>=0))
         {
            found=true;
            obj.xxx=obj[n2];
            obj[n2]=function(a) {
               this.xxx(a);
               setLanguage(this.g.value);
            }
			
         }
      }
   }
}