var FlagsSupported=false;
var rEnabled=false;
var ActiveFlag=null;
var usedFlags=null;
var FlagMatrixHeight=null;
var OFFSETX = 20;
var OFFSETY = 10;
var Flags=new Array("DE","EN","FR","ES","JP","KO");

function initFlags(){
 BrowserCheck();
 if ((is_ie4up && (!is_mac)) || (is_nav4up && (!is_nav6up))) {
  FlagsSupported = true;
  for(var i=0;i<Flags.length;i++){
   eval("Flag"+Flags[i]+" = new DynLayer('Flag"+Flags[i]+"div');");
   eval("Flag"+Flags[i]+".hide();");
  }
  document.onmousemove = mouseMove;
  if (is_nav) {
   document.captureEvents(Event.MOUSEMOVE);
  }
 }
}

function mouseMove(e) {
 if (rEnabled) {
  var x = (is_nav)? e.pageX : event.x+document.body.scrollLeft;
  var y = (is_nav)? e.pageY : event.y+document.body.scrollTop;
  for(var i=0;i<usedFlags.length;i++){
   eval("Flag"+usedFlags[i]+".show();");
   eval("Flag"+usedFlags[i]+".moveTo(x + OFFSETX + 21 * (i % FlagMatrixHeight), y + OFFSETY + 14 * (Math.floor(i / FlagMatrixHeight)));");
  }
 }		
 return true
}

function showFlag(flag){
 ActiveFlag=flag;
 usedFlags=ActiveFlag.split(",");
 FlagMatrixHeight=Math.floor(Math.sqrt(usedFlags.length));
 rEnabled=true;
}

function hideFlag() {
 if (FlagsSupported) {
  for(var i=0;i<Flags.length;i++){
   eval("Flag"+Flags[i]+".hide();");
  }
  rEnabled = false;
 }
}

