var cPREFIX= 'kicmag_', cTABLE_SECTIONS= new Array('thead', 'tbody', 'tfoot'),
  cCMAG_RECAPTCHA_KEY= '6Lf2mAIAAAAAACmftFNpGx-6ta-XGrL0KZKm8G77',
  cRECAPTCHA_THEME= 'red';

function centerElement( pElt ) { var x, y;
  x= ( screen.availWidth?screen.availWidth:window.innerWidth)/2;
  y= ( screen.availHeight?screen.availHeight:window.innerHeight)/2;
  with ( pElt ) { style.display= 'block'; style.left= (x-offsetWidth/2)+'px'; style.top= (y-offsetHeight/2)+'px'; }
}

function myGetClass( pElt ) { return pElt.className; }

function mySetClass( pElt, pClass ) { pElt.className= pClass; }

function formValidate() {
  var i, msg = '', r;
  for ( i=0; i < document.KIFORM.elements.length; i++)  {
    if ( document.KIFORM.elements[i].getAttribute('KIV') )  {
       r= eval(document.KIFORM.elements[i].getAttribute('KIV'));
       if ( r ) { msg+= r + '\n'; }
    }
  }
  if ( msg!= '' ) { alert(msg); }
  return (msg== '');
}

function DoSubmit() { var parmAction= arguments[0], parmValidate;
  parmValidate= ( arguments.length== 2?arguments[1]:'Y' );
  if ( (parmValidate== 'N') || formValidate() ) {
    document.getElementById(cPREFIX+'captchaContainer').style.display= 'none';
    centerElement(document.getElementById(cPREFIX+'pageLoading'));
    document.KIFORM.action.value= parmAction;
    document.KIFORM.submit();
  }
}

function myCancelEvent( pEvt ) { 
 pEvt.cancel= true; pEvt.cancelBubble= true; pEvt.returnValue= false;
 if ( pEvt.stopPropagation ) pEvt.stopPropagation();
 if ( pEvt.preventDefault ) pEvt.preventDefault();
 return false;
}

function enterSubmit( e ) { var a, c, myAction, myID, prefix= cPREFIX+'action_', r= false;
  if ( e && e.which ) { c= e.which; }
  else if ( typeof(event)!= 'undefined' ) { e= event; c= e.keyCode; }
  if ( c== 13 ) { myCancelEvent(e);
    if ( myFormFocus ) { myID= myFormFocus.id;
      if ( myID.substr(0, prefix.length)== prefix ) {
        a= myID.split('_'); myAction= a.slice(-1);
        /*
        a= myID.split('_'); myAction= a.slice(-1);
        if ( myAction== 'subscribe' ) showCaptcha('/Register/One_on_One');
        if ( myAction== 'register' ) showCaptcha('/Register/Site');
        else */ DoSubmit(myAction, 'N');
      }
    }
  }
}

function setBrowserClass()
{
  var 
    a0= navigator.userAgent.toLowerCase(),
    is= function(t) { return a0.indexOf(t) != -1; },
    h= document.getElementsByTagName('html')[0],
    a1= (!(/opera|webtv/i.test(a0))&&/msie (\d)/.test(a0))?('ie ie'+RegExp.$1)
      :is('gecko/')? 'gecko'
      :is('opera/9')?'opera opera9'
      :/opera (\d)/.test(a0)?'opera opera'+RegExp.$1
      :is('konqueror')?'konqueror'
      :is('applewebkit/')?'webkit safari'
      :is('mozilla/')?'gecko'
      :'',
    e= (is('x11')||is('linux'))?' linux'
      :is('mac')?' mac'
      :is('win')?' win':'',
    c= a1+e+' js',
    oldClass= myGetClass(h);
  mySetClass(h, ( oldClass.length== 0?c:oldClass+' '+c ));
  return c;
}

function buildSurvey() {
  var eltSurvey= document.getElementById(cPREFIX+'survey'), i;
  if ( eltSurvey ) {
    aEltInput= eltSurvey.getElementsByTagName('input');
    for ( i= 0; i< aEltInput.length; i++ ) {elt= aEltInput[i];
      if ( (t= elt.getAttribute('type')) && (t== 'radio') ) {
        elt.onchange= function(){ DoSubmit('pollVoted', false); };
      }
    }
  }
}

function buildLists() { 
  var aeLIs, aeULs= document.getElementsByTagName('UL'), c= '', h, i, j, k, isNav, s;
  if ( aeULs ) {
    for ( i= 0; i< aeULs.length; i++ ) { c= myGetClass(aeULs[i]).toLowerCase();
      isNav= (c.indexOf('nav')>= 0); 
      if ( !aeULs[i].className || isNav || (c.indexOf('articlelist')== -1) ) {
        s= document.getElementById(cPREFIX+'constant'+( isNav?'DelimiterNav':'BulletList' )).innerHTML;
        aeLIs= aeULs[i].getElementsByTagName('LI');
        if ( aeLIs ) { k= aeLIs.length;
          for ( j= 0; j< k; j++ ) { h= aeLIs[j].innerHTML;
            if ( isNav && (h.substr(h.length-s.length)!= s) ) { if ( j< (k-1) ) h= h+s; }
            else if ( h.substr(0, s.length)!= s ) { h= s+h; }
            aeLIs[j].innerHTML= h;
          }
        }
      }
    }
  }
}

function showCaptcha( pPostAction ) { document.KIFORM.kicmag_captchaAction.value= pPostAction;
  centerElement(document.getElementById(cPREFIX+'captchaContainer'));
}

function paintRating( pRating ) { var a;
  for ( var i= 1; i<= 5; i++ ) { a= document.getElementById(cPREFIX+'rating'+i).getElementsByTagName('img');
    a[0].src= '/cmag_media/icons/iconRating'+( i<= pRating?'ON':'OFF' )+'.gif';
  }
}

function loadSubconsole( s ) {
  if ( document.getElementById(cPREFIX+'subconsole') ) {
    document.getElementById(cPREFIX+'subconsole').innerHTML=
      document.getElementById(cPREFIX+s).innerHTML;
    document.getElementById(cPREFIX+'subconsole').style.display= 'block';
  }
}

function showVideo ( pURL ) { window.open(pURL,'cmagVideo', ''); return false; }

function addListeners() { var aElements, aNames= new Array('input', 'select'), i, j;
  for ( i= 0; i< aNames.length; i++ ) {
    aElements= document.KIFORM.getElementsByTagName(aNames[i]);
    for ( j= 0; j< aElements.length; j++ )
      aElements[j].onfocus= function () { myFormFocus= this; }
  }
}

function myOnLoad() { 
  buildLists(); processLoadDirectives(); addListeners(); buildSurvey(); 
  document.getElementById(cPREFIX+'RHC').style.display= 'block';
  if ( self.slideshowSetup ) slideshowSetup();
}

// main
var s= setBrowserClass().indexOf('ie ')!= -1?'IE':'nonIE', myFormFocus;

