// JavaScript Document


function $(element) {
  if (arguments.length > 1) {
    for (var i = 0, elements = [], length = arguments.length; i < length; i++)
      elements.push($(arguments[i]));
    return elements;
  }
  return document.getElementById(element);
}

/**
 * puts innerHTML into select elemnt, deals with IE select.innerHTML bug
 */
function selectSetInnerHTML( element, innerHTML ) {
  if ( window.ActiveXObject ) {
    element.outerHTML = element.outerHTML.substring( 0, element.outerHTML.indexOf(">") + 1 ) + innerHTML + "</select>";
  } else
    element.innerHTML = innerHTML;
}

/*
function selectSetInnerHTML( selectElement, options ) {
  selectElement.innerHTML = '<foobar>&nbsp;</foobar>' + options;
  selectElement.outerHTML = selectElement.outerHTML;
}
*/

/**
* Returns  : The textual representation of the array.
* This function was inspired by the print_r function of PHP.
* This will accept some data as the argument and return a
* text that will be a more readable version of the
* array/hash/object that is given.
* 
* Arguments: The data - array,hash(associative array),object
*    The level - OPTIONAL
*/
function debug(arr,level) {
  var dumped_text = "";
  if(!level) level = 0;

  //The padding given at the beginning of the line.
  var level_padding = "";
  for(var j=0;j<level+1;j++) 
    level_padding += "    ";


  if ( arr instanceof Array ) {
    for(var item = 0; item < arr.length; item++ ) {
      var value = arr[item];
 
      if(typeof(value) == 'object') { //If it is an array,
        dumped_text += level_padding + "'" + item + "' ...\n";
        dumped_text += debug(value,level+1);
      } else {
        dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n\n";
      }
    }
  } else if(typeof(arr) == 'object') { //Array/Hashes/Objects
    for(var item in arr) {
      var value = arr[item];
 
      if(typeof(value) == 'object') { //If it is an array,
        dumped_text += level_padding + "'" + item + "' ...\n";
        dumped_text += debug(value,level+1);
      } else {
        dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n\n";
      }
    }
  } else { //Stings/Chars/Numbers etc.
    dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
  }
  
  return dumped_text;
}

/*
 * Prints parameters into firebug window (firefox extension)
 */
function printfire()
{
    if (document.createEvent)
    {
        printfire.args = arguments;
        var ev = document.createEvent("Events");
        ev.initEvent("printfire", false, true);
        dispatchEvent(ev);
    }
}

/**
 * Prints debug info into firebug window (firefox extension)
 */
function debugf( arr, level ) {
  if ( window.console )
    console.log( debug ( arr, level ) );
  else
    debugd( arr, level )
} 

bindMethod = function ( object, method ) { 
  var tmp = function() {
    return method.apply( object, arguments );
  };
  
  return tmp;
};



function exFormMenu()
{
  if(document.menuform.payment_access[4].selected == true) 
  {
    //alert('change');
    document.getElementById('formpageforms').style.display = 'block';
  }
  else
  {
    document.getElementById('formpageforms').style.display = 'none';
  }
}

function setGoldZero()
{
    //document.getElementById(goldtables).value='0';
    document.transactionupdate.goldtables[0].selected = true;
}

function setOthersZero()
{
    //document.getElementById(tables).value='0';
    //document.getElementById(seats).value='0';
    document.transactionupdate.tables[0].selected = true;
    document.transactionupdate.seats[0].selected = true;
}

function lan(lanNo) {
	if ( document.getElementById(lanNo) != null )
    	document.getElementById(lanNo).className='landed';
	//document.all.sub1.style.display = 'inherit';
	//document.getElementById(subName).style.display = 'inherit';
};

function openHelp(winURL, winName) {
    window.open(winURL,winName,'width=560,height=600');
};

function openTerms(winURL, winName) {
    window.open(winURL,winName,'width=560,height=600');
    //winName.document.write('hello');
}


function writeConsole(content) {
 top.consoleRef=window.open('','myconsole',
  'width=560,height=600'
   +',menubar=0'
   +',toolbar=1'
   +',status=0'
   +',scrollbars=1'
   +',resizable=1')
 top.consoleRef.document.writeln(
  '<html><head><title>Console</title><link media="all" href="http://www.icisconference.com/css/core_icisconference.css" type="text/css" rel="stylesheet"></head>'
   +'<body bgcolor=white onLoad="self.focus()">'
   +content
   +'</body></html>'
 )
 top.consoleRef.document.close()
}


/*
function doPreload()
{
	var the_images = new Array(

		'information2.jpg',
		'contact2.jpg',
		'websites2.jpg',
		'webdesign2.jpg',
		'onlinecv2.jpg',
		'email2.jpg',
		'interests2.jpg');
	preloadImages(the_images);
}
function preloadImages(the_images_array) {
	for(loop = 0; loop < the_images_array.length; loop++)

	{
		var an_image = new Image();
		an_image.src = the_images_array[loop];
	}
}
*/
/*
textArray = new Array(6);
textArray[0] = 'ECB raises interest rates in the eurozone countries to 4%.';
textArray[1] = 'Two Nato soldiers killed in clashes in southern Afghanistan. ';
textArray[2] = 'Three Finnish nationals detained by Iran while fishing near disputed area.';
textArray[3] = 'Dozens of people trapped under collapsed building in south-western China.';
textArray[4] = 'ECB raises interest rates in the eurozone countries to 4%.';
textArray[5] = 'Two Nato soldiers killed in clashes in southern Afghanistan. ';
*/

var delay=50;
var currentChar=1;
var destination;
var num = 0;
var text = textArray[num];

function type()
{
    
    var text = textArray[num];
    
    
  if (document.getElementById)
  {
    var dest=document.getElementById(destination);
    if (dest)// && dest.innerHTML)
    {
      dest.innerHTML=text.substr(0, currentChar);
      //dest.innerHTML+=text[currentChar-1];
      currentChar++
      if (currentChar>text.length)
      {
        currentChar=1;
        setTimeout("type()", 5000);
        if(num < (textArray.length - 1)) {
            num = num + 1;
        } else { 
            num = 0;
        }
      }
      else
      {
        setTimeout("type()", delay);
      }
    }
  }
}

function startTyping(textParam, delayParam, destinationParam)
{
  text=textParam;
  delay=delayParam;
  currentChar=1;
  destination=destinationParam;
  type();
}

function setAccountID()
{
if(document.getElementById('cardType').value=='AMERICANEXPRESS')
{document.getElementById('accountID').value=accountIDAmex1;}
else
{document.getElementById('accountID').value=accountID1;}
}

function cnt(w,x){
var y=w.value;
var r = 0;
a=y.replace(/\s/g,' ');
a=a.split(' ');
for (z=0; z<a.length; z++) {if (a[z].length > 0) r++;}
x.value=r;
}


function word_count(text, counter)
{
     var y=text.value;
     var r = 0;
     a=y.replace(/\s/g,' ');
     a=a.split(' ');
     for (z=0; z<a.length; z++) {if (a[z].length > 0) r++;}
     number=r;
     var counter1 = document.getElementById(counter);
     counter1.firstChild.nodeValue=number;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function YY_checkform() { //v4.71
//copyright (c)1998,2002 Yaromat.com
  var a=YY_checkform.arguments,oo=true,v='',s='',err=false,r,o,at,o1,t,i,j,ma,rx,cd,cm,cy,dte,at;
  for (i=1; i<a.length;i=i+4){
    if (a[i+1].charAt(0)=='#'){r=true; a[i+1]=a[i+1].substring(1);}else{r=false}
    o=MM_findObj(a[i].replace(/\[\d+\]/ig,""));
    o1=MM_findObj(a[i+1].replace(/\[\d+\]/ig,""));
    v=o.value;t=a[i+2];
    if (o.type=='text'||o.type=='password'||o.type=='hidden'){
      if (r&&v.length==0){err=true}
      if (v.length>0)
      if (t==1){ //fromto
        ma=a[i+1].split('_');if(isNaN(v)||v<ma[0]/1||v > ma[1]/1){err=true}
      } else if (t==2){
        rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-zA-Z]{2,4}$");if(!rx.test(v))err=true;
      } else if (t==3){ // date
        ma=a[i+1].split("#");at=v.match(ma[0]);
        if(at){
          cd=(at[ma[1]])?at[ma[1]]:1;cm=at[ma[2]]-1;cy=at[ma[3]];
          dte=new Date(cy,cm,cd);
          if(dte.getFullYear()!=cy||dte.getDate()!=cd||dte.getMonth()!=cm){err=true};
        }else{err=true}
      } else if (t==4){ // time
        ma=a[i+1].split("#");at=v.match(ma[0]);if(!at){err=true}
      } else if (t==5){ // check this 2
            if(o1.length)o1=o1[a[i+1].replace(/(.*\[)|(\].*)/ig,"")];
            if(!o1.checked){err=true}
      } else if (t==6){ // the same
            if(v!=MM_findObj(a[i+1]).value){err=true}
      }
    } else
    if (!o.type&&o.length>0&&o[0].type=='radio'){
          at = a[i].match(/(.*)\[(\d+)\].*/i);
          o2=(o.length>1)?o[at[2]]:o;
      if (t==1&&o2&&o2.checked&&o1&&o1.value.length/1==0){err=true}
      if (t==2){
        oo=false;
        for(j=0;j<o.length;j++){oo=oo||o[j].checked}
        if(!oo){s+='* '+a[i+3]+'\n'}
      }
    } else if (o.type=='checkbox'){
      if((t==1&&o.checked==false)||(t==2&&o.checked&&o1&&o1.value.length/1==0)){err=true}
    } else if (o.type=='select-one'||o.type=='select-multiple'){
      if(t==1&&o.selectedIndex/1==0){err=true}
    }else if (o.type=='textarea'){
      if(v.length<a[i+1]){err=true}
    }
    if (err){document.s+='* '+a[i+3]+'\n'; err=false}                
  }
  if (document.s!=''){alert('The required information is incomplete or contains errors:\t\t\t\t\t\n\n'+document.s)}
  document.MM_returnValue = (document.s=='');
}

