// ZSite widget library -- tabcontrol widget routines
// (c) Zagorodnikov Anton 2007-2008

function zsite_control_tab_activate(id, number)
{
	var i = 0;

	while(i < 255)
	{
		//hide all unneeded tabs
		var tabdiv = dojo.byId(id+'_contents_'+i)
		if((tabdiv != null)&&(number != i)&&(tabdiv.style.display != "none"))
		{
			//hide it and show our div

//		dojo.byId('".$tabid."_contents_".$selected."').innerHTML = \"\";");
//		dojo.byId('".$tabid."_container').innerHTML = tabcontent;");

//			dojo._setOpacity(dojo.byId(id+'_contents_'+i), 100);	
//  			dojo.fx.wipeOut({node:id+'_contents_'+i, duration: 500}).play();                     
  			dojo.fadeOut({node:id+'_contents_'+i, duration: 400}).play();
			

			dojo.byId(id+"_tab_"+i).className = "ztabcontrol_td";
			dojo.byId(id+"_div_"+i).className = "ztabcontrol_td_div";

			dojo.byId(id+"_tab_"+number).className = "ztabcontrol_td_active";
			dojo.byId(id+"_div_"+number).className = "ztabcontrol_td_active_div";

			setTimeout(function() {
					dojo.byId(id+'_contents_'+i).style.display = 'none';
					dojo._setOpacity(dojo.byId(id+'_contents_'+number), 0);
					dojo.byId(id+'_contents_'+number).style.display = 'block';
//		  			dojo.fx.wipeOut({node:id+'_contents_'+number, duration: 1}).play();
		  			dojo.fadeIn({node:id+'_contents_'+number, duration: 500}).play();
				}, 400);
			return;
		}
		i++;
	}

	//no divs are shown yet
	dojo.byId(id+'_contents_'+number).style.display = 'block';
//	dojo.fx.wipeIn({node:id+'_contents_'+number, duration: 1500}).play();
}



function zsite_control_tab_ajaxactivate(id, number, url /*'admin.php?item=structureedit'*/ )
{
	var i = 0;

	if(url.indexOf('?') > 0)
		var urlto = url+"&AJAX=1&ClientIdCounter="+ClientIdCounter;
	else
	{
		var urlto = url+"?AJAX=1&ClientIdCounter="+ClientIdCounter;
	}

	while(i < 255)
	{
		//hide all unneeded tabs
		var tabdiv = dojo.byId(id+'_tab_'+i)

		if((tabdiv != null)&&(number != i)&&(tabdiv.className == "ztabcontrol_td_active"))
		{
//			alert(1);
			//hide it and show our div

//		dojo.byId('".$tabid."_contents_".$selected."').innerHTML = \"\";");
//		dojo.byId('".$tabid."_container').innerHTML = tabcontent;");

//			dojo._setOpacity(dojo.byId(id+'_contents_'+i), 100);	
//  			dojo.fx.wipeOut({node:id+'_contents_'+i, duration: 500}).play();                     

			if(dojo.byId(id+"_contents_"+i) != null)
	  			dojo.fadeOut({node:id+'_contents_'+i, duration: 400}).play();
			


			tabdiv.className = "ztabcontrol_td";
			dojo.byId(id+"_div_"+i).className = "ztabcontrol_td_div";

			dojo.byId(id+"_tab_"+number).className = "ztabcontrol_td_active";
			dojo.byId(id+"_div_"+number).className = "ztabcontrol_td_active_div";

			//todo: add loading here

			//show loading picture

			ajaxShowLoading(dojo.byId(id+'_container'));

			dojo.xhrGet( {
				url: urlto,
				handleAs: 'text',
				timeout: 50000,
				load: function(response, ioArgs)
				{
					dojo.byId(id+'_container').innerHTML = response;
					//also evaluate scripts
					zsite_evalscripts(id+'_container');
					//parse dojo widgets also
					try
					{
						dojo.parser.parse(dojo.byId(id+'_container'));
					}
					catch(e) { alert(e); }
					ajaxHideLoading();
				},
				error: function(response, ioArgs)
				{
					ajaxHideLoading();
					if(ioArgs.xhr.status == '200') return; alert("An AJAX error occurred, HTTP status code: "+ioArgs.xhr.status+"."); 
				}
			} );

			return;
		}
		i++;
	}


	dojo.byId(id+"_tab_"+number).className = "ztabcontrol_td_active";
	dojo.byId(id+"_div_"+number).className = "ztabcontrol_td_active_div";

	ajaxShowLoading(dojo.byId(id+'_container'));

	dojo.xhrGet( {
			url: urlto,
			handleAs: 'text',
			timeout: 50000,
			load: function(response, ioArgs)
			{
				dojo.byId(id+'_container').innerHTML = response;
				//also evaluate scripts
//				var scrpts = dojo.byId(id+'_container').getElementsByTagName('script');
//				for(var i = 0;i < scrpts.length;i++)
//				{
//					if(scrpts[i].innerHTML){
//					if(scrpts[i].innerHTML.substr(3,4)=='<!--') //some IE strangeness
//					try{ globaleval(scrpts[i].innerHTML.substr(8,scrpts[i].innerHTML.length-12)); } catch(e) {}
//					else globaleval(scrpts[i].innerHTML); }
//				}

				zsite_evalscripts(id+'_container');
				//parse dojo widgets also
				try
				{
					dojo.parser.parse(dojo.byId(id+'_container'));
				}
				catch(e) { alert(e); }
				ajaxHideLoading();
//				alert(1);
			},
			error: function(response, ioArgs)
			{
				ajaxHideLoading();
				if(ioArgs.xhr.status == '200') return; alert("An AJAX error occurred, HTTP status code: "+ioArgs.xhr.status+"."); 
			}
		} );


}


