//------------------- for clearing and replacing text in form input fields and textareas -------------------//
function clearText(thefield) {
  if (thefield.defaultValue==thefield.value) { thefield.value = "" }
} 
function replaceText(thefield) {
  if (thefield.value=="") { thefield.value = thefield.defaultValue }
}

//------------------- Form Validation -------------------//
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() { //v2.0
  var args = YY_checkform.arguments; var myDot=true; myV=''; var myErr='';var addErr=false;
  if (document.all){eval("args[0]=args[0].replace(/.layers/gi, '.all');");}
  for (var i=1; i<args.length;i=i+4){
    if (args[i+1].charAt(0)=='#'){
      var myReq=true; args[i+1]=args[i+1].substring(1);
    }else{myReq=false}
    var myObj = eval(args[0]+'.'+args[i])
    if (myObj.type=='text'){
      if (myReq&&myObj.value.length==0){addErr=true}
      myV=myObj.value
      if ((myV.length>0)&&(args[i+2]==1)){ //vonbis
      if (isNaN(parseInt(myV))||myV<args[i+1].substring(0,args[i+1].indexOf('_')/1)||myV > args[i+1].substring(args[i+1].indexOf('_')+1)/1){addErr=true}
      }
      if ((myV.length>0)&&(args[i+2]==2)){ //e-mail
        if (myV.lastIndexOf('.')<myV.lastIndexOf('@')||myV.lastIndexOf('.')==-1||myV.lastIndexOf('@')==-1){addErr=true}
      }
      if ((myV.length>0)&&(args[i+2]==3)){ // date
        var myD=''; myM=''; myY=''; myYY=0; myDot=true;
        for(var j=0;j<args[i+1].length;j++){
          if(args[i+1].charAt(j)=='D')myD=myD.concat(myObj.value.charAt(j));
          if(args[i+1].charAt(j)=='M')myM=myM.concat(myObj.value.charAt(j));
          if(args[i+1].charAt(j)=='Y'){myY=myY.concat(myObj.value.charAt(j)); myYY++}
          if(args[i+1].charAt(j)=='-'&&myObj.value.charAt(j)!='-')myDot=false;
          if(args[i+1].charAt(j)=='.'&&myObj.value.charAt(j)!='.')myDot=false;
          if(args[i+1].charAt(j)=='/'&&myObj.value.charAt(j)!='/')myDot=false;
        }
        if(myD/1<1||myD/1>31||myM/1<1||myM/1>12||myY.length!=myYY)myDot=false;
        if(!myDot){addErr=true}
       }
      if ((myV.length>0)&&(args[i+2]==4)){ // time
        var myH=''; myM=''; myDot=true;
        for(var j=0;j<args[i+1].length;j++){
          if ((args[i+1])=="HH:MM"){
            if(args[i+1].charAt(j)=='H')myH=myH.concat(myObj.value.charAt(j));
            if(args[i+1].charAt(j)=='M')myM=myM.concat(myObj.value.charAt(j));
          }else{
            if(args[i+1].charAt(j)=='h')myH=myH.concat(myObj.value.charAt(j));
            if(args[i+1].charAt(j)=='m')myM=myM.concat(myObj.value.charAt(j));
          }
          if(args[i+1].charAt(j)==':'&&myObj.value.charAt(j)!=':')myDot=false;
        }
        if ((args[i+1])=="hh:mm"){
          if(myH/1<0||myH/1>12||myM/1<0||myM/1>59)myDot=false;
        }else{
          if(myH/1<0||myH/1>23||myM/1<0||myM/1>59)myDot=false;
        }
        if(!myDot){addErr=true}
      }
      if ((myV.length>0)&&(args[i+2]==5)){ // check this 2
        if (!eval(args[0]+'.'+args[i+1]+'.checked')){addErr=true}
      }
    }
    if (myObj.type=='radio'){
      if (args[i+2]==1&&myObj.checked&&eval(args[0]+'.'+args[i+1]+'.value.length')/1==0){addErr=true}
      if (args[i+2]==2){
        myDot=false;
        myV=eval(args[0]+'.'+args[i].substring(0,args[i].lastIndexOf('[')))
        for(var j=0;j<myV.length;j++){myDot=myDot||myV[j].checked}
        if(!myDot){myErr+='* ' +args[i+3]+'\n'}
      }
    }
    if (myObj.type=='checkbox'){
      if(args[i+2]==1&&myObj.checked&&eval(args[0]+'.'+args[i+1]+'.value.length')/1==0){addErr=true}
    }
    if (myObj.type=='select-one'||myObj.type=='select-multiple'){
      if(args[i+2]==1&&eval(args[0]+'.'+args[i]+'.selectedIndex')/1==0){addErr=true}
    }
    if (myObj.type=='textarea'){
      myV = eval(args[0]+'.'+args[i]+'.value');
      if(myV.length<args[i+1]){addErr=true}
    }
    if (addErr){myErr+='* '+args[i+3]+'\n'; addErr=false}
  }
  if (myErr!=''){alert('The required information is incomplete or contains errors:\t\t\t\t\t\n\n'+myErr)}
  document.MM_returnValue = (myErr=='')
}

//------------------- Tab Machine -------------------//

function gei(obj){
	return document.getElementById(obj);
}

var tabMachine = {
		addTabs: function( tabSet )
		{
			if( tabSet == 1 )
				var currentTab = tabMachine.tabs1;
			else if( tabSet == 2 )
				var currentTab = tabMachine.tabs2;
			else if( tabSet == 3 )
				var currentTab = tabMachine.tabs3;
			
			for(var i=0; i<currentTab.length; i++)
			{
				if(currentTab[i].div)
				{
					var closureMaker = function(line) {
						return function(event){ tabMachine.activateTab(line); };
					};
					var closure = closureMaker( currentTab[i] );
					currentTab[i].tab.onclick		= closure;
					currentTab[i].tab.innerHTML	= currentTab[i].label;
					currentTab[i].tab.className	= 'tabMachineTabOff';
					currentTab[i].tab.id			= 'tab'+i;
					tabMachine.appWin.appendChild(currentTab[i].tab);
				}
			}
			for(var i=0; i<currentTab.length; i++)
			{
				if(currentTab[i].div)
				{
					tabMachine.activateTab(currentTab[i]);
					break;
				}
			}
		},
		tabs1:
		[
			{
				label:	'Overview',
				div:	(gei('overview'))?gei('overview'):null,
				value:	(gei('overview'))?encodeURIComponent(gei('overview').innerHTML):null,
				tab:	document.createElement('a')
			},	
			{
				label:	'Speakers',
				div:	(gei('speakers'))?gei('speakers'):null,
				value:	(gei('speakers'))?encodeURIComponent(gei('speakers').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Cost',
				div:	(gei('cost'))?gei('cost'):null,
				value:	(gei('cost'))?encodeURIComponent(gei('cost').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Accommodations',
				div:	(gei('accommodations'))?gei('accommodations'):null,
				value:	(gei('accommodations'))?gei('accommodations').innerHTML:null,
				tab:	document.createElement('a')
			}
		],
		tabs2:
		[
			{
				label:	'Blog',
				div:	(gei('blogWrap'))?gei('blogWrap'):null,
				value:	(gei('blogWrap'))?encodeURIComponent(gei('blogWrap').innerHTML):null,
				tab:	document.createElement('a')
			},	
			{
				label:	'Forum',
				div:	(gei('speakers'))?gei('speakers'):null,
				value:	(gei('speakers'))?encodeURIComponent(gei('speakers').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'White Papers',
				div:	(gei('accommodations'))?gei('accommodations'):null,
				value:	(gei('accommodations'))?gei('accommodations').innerHTML:null,
				tab:	document.createElement('a')
			},
			{
				label:	'News',
				div:	(gei('news'))?gei('news'):null,
				value:	(gei('news'))?encodeURIComponent(gei('news').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Referrals',
				div:	(gei('referrals'))?gei('referrals'):null,
				value:	(gei('referrals'))?encodeURIComponent(gei('referrals').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Book Reviews',
				div:	(gei('reviews'))?gei('reviews'):null,
				value:	(gei('reviews'))?encodeURIComponent(gei('reviews').innerHTML):null,
				tab:	document.createElement('a')
			}
		],
		tabs3:
		[
			{
				label:	'Videos',
				div:	(gei('media'))?gei('media'):null,
				value:	(gei('media'))?encodeURIComponent(gei('media').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Podcasts',
				div:	(gei('cost'))?gei('cost'):null,
				value:	(gei('cost'))?encodeURIComponent(gei('cost').innerHTML):null,
				tab:	document.createElement('a')
			},
			{
				label:	'Photos',
				div:	(gei('photos'))?gei('photos'):null,
				value:	(gei('photos'))?encodeURIComponent(gei('photos').innerHTML):null,
				tab:	document.createElement('a')
			}
		],
		appWin:			gei('tabMachine'),
		activeTab:		null,
		activateTab:	function(theTab)
		{
			if(tabMachine.activeTab)
			{
				tabMachine.activeTab.div.className = 'prod_container hidden';
				tabMachine.activeTab.tab.className = 'tabMachineTabOff';
			}
			theTab.tab.className = 'tabMachineTabOn';
			theTab.div.className = 'prod_container';
			tabMachine.activeTab = theTab;
		}
	}

	function addEvent( obj, evType, fn )
	{ 
		if ( obj.addEventListener )
		{ 
			obj.addEventListener( evType, fn, false ); 
			return true; 
		}
		else if( obj.attachEvent )
		{ 
			var r = obj.attachEvent( ( "on" + evType ), fn ); 
			return r; 
		}
		else
		{ 
			return false;
		} 
	}

	if( document.body.className.indexOf( 'page-template-conference-php' ) != -1 || document.body.className.indexOf( 'PROD' ) != -1 )
	{
		tabMachine.addTabs( 1 );
		$("#tab3.tabMachineTabOff").click(function () { 
			$(this).css("padding","9px 22px 8px");
		});
		$("#tab0, #tab1, #tab2").click(function () { 
			$("#tab3").css("padding","9px 23px");
		});
	}
	else if( document.body.className.indexOf( 'blog' ) != -1 )
	{
		tabMachine.addTabs( 2 );
		$("#tab3.tabMachineTabOff").click(function () { 
			$(this).css("padding","9px 22px 8px");
		});
		$("#tab0, #tab1, #tab2").click(function () { 
			$("#tab3").css("padding","9px 23px");
		});
	}
	else if( document.body.className.indexOf( 'page-template-tabs-php' ) != -1 )
	{
		tabMachine.addTabs( 3 );
		$("#tab3.tabMachineTabOff").click(function () { 
			$(this).css("padding","9px 22px 8px");
		});
		$("#tab0, #tab1, #tab2").click(function () { 
			$("#tab3").css("padding","9px 23px");
		});
	}


