// <![CDATA[


////////////////////////
// Variables used in template selection functions
var current_collection = 0;
var locked_collection = 0;

var current_page = 0;
var locked_page = 0;

var locked_page_imgURL = '';
var locked_page_imgWidth = 0;
var locked_page_imgHeight = 0;
// END OF Variables used in template selection functions
////////////////////////


////////////////////////
// Hide Page Image
// Called 'on mouse over' in template collection selection screen
function show_collection_div(divNum, enableLock){
	var divname = 'div_tc' + divNum + '_previews';

	showHideLayers(divname, 'show');
	current_collection = divNum;

	//Cacher la div barree
	if(locked_collection > 0 && locked_collection != divNum){
		divname = 'div_tc'+ locked_collection + '_previews';
		showHideLayers(divname, 'hide');
	}

	if(enableLock == 1){ locked_collection = divNum; }
}

////////////////////////
// Hide Collection Div
// Called 'on mouse out' in template collection selection screen
function hide_collection_div(divNum){
	var divname = 'div_tc'+ divNum + '_previews';

	if(locked_collection == 0){
		showHideLayers( divname, 'hide');
		current_page = 0;
	}
	else if(locked_collection > 0 && locked_collection != divNum){
		showHideLayers( divname, 'hide');
		current_page = 0;
		divname = 'div_tc'+ locked_collection + '_previews';
		showHideLayers( divname, 'show');
	}

}

////////////////////////
// Show Page Image
// Called 'on mouse over' in template selection screen
function show_page_img(pageNum, enableLock, imgURL, imgWidth, imgHeight){

	var imgZoom = document.getElementById('tmpl_zoom');
	imgZoom.src = imgURL;
	imgZoom.width = imgWidth;
	imgZoom.height = imgHeight;
	current_page = pageNum;

	//Cacher la div barree
	/*if(lock_zoom > 0 && lock_zoom != pageNum){
		divname = 'div_tc'+ lock_zoom + '_previews';
		showHideLayers(divname, 'hide');
	}*/

	if(enableLock == 1){
		locked_page = pageNum;
		locked_page_imgURL = imgURL;
		locked_page_imgHeight = imgHeight;
		locked_page_imgWidth = imgWidth;
	}

}
////////////////////////
// Hide Page Image
// Called 'on mouse out' in template selection screen
function hide_page_img(pageNum, imgURL, imgWidth, imgHeight ){
	var imgZoom = document.getElementById('tmpl_zoom');

	if(locked_page == 0){
		imgZoom.src = imgURL;
		imgZoom.width = imgWidth;
		imgZoom.height = imgHeight;
		current_page = 0;
	}
	else if(locked_page > 0 && locked_page != pageNum){
		imgZoom.src = locked_page_imgURL;
		imgZoom.width = locked_page_imgWidth;
		imgZoom.height = locked_page_imgHeight;
		current_page = locked_page;
	}
}

///////////////////////
// Refresh 'Sites List'
// Called upon selecting a different 'order by' column title
// or by requesting page 2 (or other)
function refresh_sites_list(fieldName, fieldValue){

	var sl_field = document.getElementById(fieldName);
	var sl_ascDesc = document.getElementById("sites_asc_desc");

	if(fieldName == "sites_order"){
		var currentOrder = sl_field.value;
		var currentAscDesc = sl_ascDesc.value;

		//If new order value is same as current, swith asd_desc
		if(fieldValue == currentOrder){

			var newAscDesc = "DESC";
			if(currentAscDesc == "DESC"){ newAscDesc = "ASC"; }

			sl_ascDesc.value = newAscDesc;
		}
		else{
			//If order is changed from Date to Other, switch DESC to ASC
			if(currentOrder == "date_created" && currentAscDesc == "DESC"){
				sl_ascDesc.value = "ASC";
			}
			//If order is changed from other to Date, switch ASC to DESC
			else if(currentOrder != "date_created" && currentAscDesc == "ASC"){
				sl_ascDesc.value = "DESC";
			}
			sl_field.value = fieldValue;
		}

	}
	else{
		sl_field.value = fieldValue;
	}

	return reload_sites_list();
}




/////////////////////
// Show 'New Site' Form
// NSF = New Site Form
// Called when requesting a new site
function zo_show_nsf (){

	document.getElementById("Sites_name").value= "";
	document.getElementById("Users_identity").value = "";
	document.getElementById("Users_passwd").value = "";
	document.getElementById("Users_email").value = "";

	showHideLayers("zo_nsf", "show");
	document.getElementById('Sites_name').focus();
	//showHideLayers("sites_list", "hide");
	return false;
}

///////////////////////
//Submit New Site Form
// Called on submit of NSF
function zo_submit_nsf(){
	setAction('new_site_step1');

	pjx_guru(['session_id', 'action', 'Sites_name', 'Sites_domain', 'Users_identity', 'Users_passwd', 'Users_email', 'Languages_id_language'], [prepare_nsf_step2]);

	return false;
}

function prepare_nsf_step2(sites_list, template_screen, id_site){
	document.getElementById('sites_list').innerHTML = sites_list;
	document.getElementById('div_choose_template').innerHTML = template_screen;

	document.getElementById('new_site_id').value = id_site;

	showHideLayers("zo_nsf", "hide");
	//showHideLayers("sites_list", "show");
	showHideLayers("div_choose_template", "show");

}

function process_nsf_step2(){
	setAction('new_site_step2');
	document.getElementById('selected_template_collection').value = locked_collection
	document.getElementById('selected_template_page').value = locked_page;

	var divname = 'div_tc'+ locked_collection + '_previews';
	showHideLayers(divname, 'hide');

	pjx_guru(['session_id', 'action', 'new_site_id', 'selected_template_collection', 'selected_template_page'],[end_nsf_process]);
}

function end_nsf_process(){
	showHideLayers("div_choose_template", "hide");

}


function create_master_login(){
	setAction('create_master_login');
	pjx_guru(['action', 'session_id', 'ff_identity','ff_passwd','ff_passwd_2'], ['top','main','bottom'], 'POST');
	return false;
}


function guru_login(){
	setAction('login');
	pjx_guru(['action', 'Users_identity','Users_passwd'],[guru_login_validation]);
	return false;
}

function delete_site(id_site, msg)
{
	if(confirm(msg))
	{
		setAction('delete_site');
		document.getElementById('Sites_id_site').value = id_site;
		pjx_guru(['action', 'session_id', 'Sites_id_site', 'sites_start', 'sites_limit', 'sites_order', 'sites_asc_desc'],['sites_list'], 'POST');
	}
	return false;
}

/*
function reprint_sites_list(sl_HTML){
	document.getElementById('sites_list').innerHTML = sl_HTML;
}
*/

function reload_sites_list(){
	setAction('reload_sites_list');
	pjx_guru(['action', 'session_id', 'sites_start', 'sites_limit', 'sites_order', 'sites_asc_desc'], ['sites_list'], 'POST');
	return false;
}

function guru_login_validation(login_ok, html_main, redirect){

	if(login_ok == 1){
		window.location = redirect;

		//main_div.style.backgroundColor="white";
		//main_div.style.border="2px black solid";

		//document.getElementById('top').innerHTML = html_top;
		//document.getElementById('bottom').innerHTML = html_bottom;
		//document.getElementById('session_id').value = session_id;
	}
	else{
		var main_div = document.getElementById('main');
		main_div.innerHTML = html_main;
	}

}


/////////////////////////////////////////
// <input type="radio"> change selected option
function radio_change(element_name, new_value){
	var frm_radio = document.getElementsByName(element_name);

    for (var i=0; i<frm_radio.length;i++) {
        if (frm_radio[i].value == new_value) {
			frm_radio[i].checked = 'checked';

			return 1;
        }
    }
	return 0;
}

//////////////////////////////////////
// <SELECT> change selected option
function select_change(element_id, new_value){
	var frm_select = document.getElementById(element_id);

	for (var i=0; i<frm_select.options.length; i++){
		if (frm_select.options[i].value == new_value) {
			frm_select.options[i].selected = 'selected';
			return 1;
		}
	}
	return 0;
}


////////////////////////////////////
// Set Action Field Value
function setAction(newValue){
	var fieldname = 'action';
	var actionField = document.getElementById(fieldname);
	actionField.value = newValue;
	return fieldname;
}

///////////////////////////////////
// Show/Hide Layers
// (required)
// 1 - element name
// 2 - new status ('show', 'hide')
function showHideLayers() { //v9.0
	var i,p,v,obj,args=(arguments ? arguments : showHideLayers.arguments);
	for (i=0; i<(args.length-1); i+=2)
	with (document) if (getElementById && ((obj=getElementById(args[i]))!=null)) {
		v=args[i+1];
		if (obj.style) {
			obj=obj.style;
			v=(v=='show')?'visible':(v=='hide')?'hidden':v;
		}
		obj.visibility=v;
	}
}




// ]]>

