var sPrefixe = 'ebn';
var sSuffixe = 'ebn';
var sNameStart = sPrefixe + '.' + sSuffixe;
var b__internal_encodeRedirect = false;

// Utilisee par resource.js
var sLang = 'fr';

function setProxyParameters( sUrlStart, sSession) {
	b__internal_encodeRedirect = true;
	sNameStart = sUrlStart + sPrefixe + '.' + sSuffixe; // + sSession;

	var today = new Date()
	var expires = new Date()

	// valid for 10 minutes
	expires.setTime(today.getTime() + 10 * 60 * 1000)

	var cookieLanguageName = sSession.substring(1);

	//document.cookie=cookieLanguageName + "; PATH=" + sUrlStart + "; EXPIRES=" + expires.toGMTString() ;
	document.cookie=cookieLanguageName + "; PATH=" + sUrlStart ;
}

function __internal_encodeRedirect( sRedirect) {
	if (b__internal_encodeRedirect) {
		/*
		var temp = sRedirect;
		var Find = "ebn.ebn";
		var Replace = "ebnProxy.ebn"; //sNameStart;
		var a = 0;

		for (var i = 0; i < sRedirect.length; i++)
		{
			a = temp.indexOf(Find);
			if (a == -1)
				break
			else
				temp = temp.substring(0, a) + Replace + temp.substring((a + Find.length));
		}
		alert(temp);
		return temp;
		*/
	}
	return sRedirect;
}

function isNetscape() {
	if ( navigator.appName == 'Netscape' ) {
		return true
	}	else {
		return false;
	}
}

function isIE5() {
	if(navigator.appName == 'Microsoft Internet Explorer'){
		return true;
	} else {
		return false;
	}
}

function isOpera() {
	if ( navigator.appName=='Opera') {
		return true
	}	else {
		return false;
	}
}

//********************************
// MAIN ACTIONS
//********************************
function Object_adminGetUrl(sRedirect, Object_id, Object_action, Object_type, Object_form) {
	var str='';
	str = sNameStart;
	str += '?form_object=' + Object_type;
	str += '&form_action=' + Object_action;
	str += '&form_id=' + Object_id;
	str += '&redirect=' + __internal_encodeRedirect(sRedirect);
	return (str);
}

function Object_admin(sRedirect, Object_id, Object_action, Object_type, Object_form){
	Object_form.method = "POST";
	Object_form.target = "_self";
	Object_form.action = Object_adminGetUrl(sRedirect, Object_id, Object_action, Object_type, Object_form)
	Object_form.submit();
}

function Object_safe(SurferRole, Object_id, Object_action, Object_type, Object_form, sQuestion){
	var truthBeTold = window.confirm(sQuestion);
	if (truthBeTold) {
		Object_admin(SurferRole, Object_id, Object_action, Object_type, Object_form);
	};
}

function Object_upload(SurferRole, Object_id, Object_action, Object_type, Object_form, Field_Type, sSousRepertoire, sFormName, sFieldName){
	var str = '';
	str = sNameStart;
	str += '?form_action=UploadLoad';
	str += '&form_object=' + Object_type;
	str += '&field_type=' + Field_Type;
	str += '&SousRepertoire=' + sSousRepertoire;
	if (typeof(sFormName) == 'undefined') {
		str += '&formname=';
	} else {
		str += '&formname=' + sFormName;
	}
	if (typeof(sFieldName) == 'undefined') {
		str += '&fieldname=';
	} else {
		str += '&fieldname=' + sFieldName;
	}
	OWindowCenter(str , "Upload","dependant=yes,status=yes,scrollbars=yes,resizable=yes,directories=no,location=no,menubar=no,toolbar=no,screenX=10,screenY=10,top=0,left=0,marginheight=no,marginwidth=no,width=400,height=400",400,400);

}

function Object_upload_Valid(sRedirect, Object_id, Object_action, Object_type, Object_form, field_type, sSousRepertoire, sFormName, sFieldName, sTask){
	Object_form.action = sNameStart;
	Object_form.action += '?form_object=' + Object_type;
	Object_form.action += '&form_action=' + Object_action;
	Object_form.action += '&form_id=' + Object_id;
	Object_form.action += '&redirect=' + __internal_encodeRedirect(sRedirect);
	Object_form.action += '&field_type=' + field_type;
	Object_form.action += '&SousRepertoire=' + sSousRepertoire;
	Object_form.action += '&formname=' + sFormName;
	Object_form.action += '&fieldname=' + sFieldName;
	if( sTask != null ) Object_form.action += '&task=' + sTask;
	Object_form.submit();
}

function Object_affect(lUrl, sTitle){
	if ( isIE5() == true ) {
		var options = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=yes,width=500,height=400';
		str=window.showModalDialog(lUrl, sTitle);
	}	else {
		alert('Cette fonction n\'est pour le moment disponible\nqu\'avec Microsoft Internet Explorer 5.0');
	}
}

function Object_modal(lUrl, sTitle){
	if ( isIE5() == true ) {
		var options = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=yes,width=500,height=400';
		str=window.showModalDialog(lUrl, sTitle);
	}	else {
		alert('Cette fonction n\'est pour le moment disponible\nqu\'avec Microsoft Internet Explorer 5.0');
	}
}

function Object_test_structure(SurferRole, Object_id, Object_action, Object_type, Object_form, sQuestion){
	var str = Object_form.object_new.value;
	var objetPat=/^\w(\w)[^_]*$/
	if (str.match(objetPat)==null) {
		alert("Le nom d'objet ne doit contenir que des caractères alphanumériques, et éventuellement le caractère _ (sauf au début).");
	}	else {
		Object_safe(SurferRole, Object_id, Object_action, Object_type, Object_form, sQuestion);
	}
}

function Object_test_field(SurferRole, Object_id, Object_action, Object_type, Object_form, sFieldName){
	var str = Object_form.elements[sFieldName].value; //window.document.all(sFieldName).value;
	var objetPat=/^\s(\s)*$/
	if (str.match(objetPat)==null && str!='')	{
		Object_admin(SurferRole, Object_id, Object_action, Object_type, Object_form);
	}	else {
		if (sLang == 'fr') {
			alert("Le champ ne peut pas etre vide.");
		} else {
			alert("Field name can't be blank.");
		}
	}
}

//********************************
// SEARCH CAPABILITIES
//********************************
function iObject_search(SurferRole, Object_id, Object_action, Object_type, Object_form, sCriteria, sField, sOrderBy, sSort, sCriteriaExt){
	if ( typeof( sCriteriaExt ) == 'undefined' )
	{
		sCriteriaExt = "";
	}
	if (sCriteria.length == 0 && sCriteriaExt.length==0) {
		alert('Veuillez spécifier des critères de recherche');
		return;
	}
	if (Object_type.length == 0  && sCriteriaExt.length==0) {
		alert('Veuillez spécifier la nature pour exécuter la recherche');
		return;
	}
	iSearch(Object_form, sCriteria, Object_type, sField, sOrderBy, sSort, sCriteriaExt);
	Object_admin('', Object_id, Object_action, Object_type, Object_form);
}

function iSearch(Object_form, sCriteria, sNature, sField, sOrderBy, sSort, sCriteriaExt){
	Object_form.search_criteria.value = sCriteria;
	try {
		Object_form.search_criteria_ext.value = sCriteriaExt;
	} catch (e) {
	}
	Object_form.search_nature.value = sNature;
	Object_form.search_field.value = sField;
	Object_form.search_orderby.value = sOrderBy;
	Object_form.search_sort.value = sSort;
}

//********************************
// DEVELOPMENT ISSUES
//********************************
function list_over(oObj){
	oObj.parentElement.parentElement.classOld = oObj.parentElement.parentElement.className;
	oObj.parentElement.parentElement.className = 'bo_txtListSurbrillance';
}

function list_out(oObj){
	var tmp = oObj.parentElement.parentElement.classOld;
	if (typeof(tmp) == 'undefined') {
		oObj.parentElement.parentElement.className = 'bo_txtList';
	} else {
		oObj.parentElement.parentElement.className = tmp;
	}
}

function doSearch(url, sField, sForm) {
	if(typeof(sForm)=='undefined'){
		sForm = "data_form";
	}
	var str = "";
	str += url;
	str += "&data_form=" + sForm;
	str += "&ns=" + sField;
	str += "&modal=0";
	OWindowCenter(str , "uploadWnd","dependant=yes,status=no,scrollbars=yes,resizable=yes,directories=no,location=no,menubar=no,toolbar=no,screenX=10,screenY=10,top=0,left=0,marginheight=no,marginwidth=no,height=600,width=700",700,600);
}

function search(search_form){
	search_form.action = 'http://search.yahoo.com/bin/search?p=' + search_form.elements.item('search_text').value;
	search_form.target = '_blank';
	search_form.submit();
}

function iOrderBy(sRole, sId, sAction, sObject, sForm, sField){
	window.document.all('OrderBy').value = sField;
	Object_admin(sRole, sId, sAction, sObject, sForm);
}

function Object_connect(sRedirectGood, sRedirectBad, Object_form, sObjet){
	Object_form.method= 'POST';
	Object_form.action = sNameStart;
	Object_form.action += '?form_action=CONNEXION';
	Object_form.action += '&redirectGood=' + __internal_encodeRedirect(sRedirectGood);
	Object_form.action += '&redirectBad=' + __internal_encodeRedirect(sRedirectBad);
	if (sObjet != null) {
		Object_form.action += "&cnx_obj=" + sObjet;
	};
	Object_form.submit();
}

function WindowOpen(sUrl, Field) {
	var str;
	var options = 'dialogWidth:80pc';
	if ( isIE5() == true ) {
		str = Field.value;
		str = window.showModalDialog(sUrl, str, options);
//	Field.value = str;
	}	else {
		alert('Cette fonction n\'est pour le moment disponible\nqu\'avec Microsoft Internet Explorer 5.0');
	}
}

function ShowEditeur(sUrl, sId) {
	var win;
	sUrl = "applet/easytaglauncher.jsp";
	win = window.open(sUrl + "?id=" + sId,"NohetoEditeur", "fullscreen=0,channelmode=0,toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=0,resizable=1,top=0,left=0,width=800,height=600", true);
	win.focus();
}

function ChooseDate(sField){
	var win;
	win = window.open("model/modelcalendar.html?sField=" + sField ,"calendar","width=230,height=195,dependent=yes,toolbar=0,directories=no,resizable=no,screenx=230,screeny=195");
	win.focus();
}

function EditorHtml(sField){
	//window.self.open("model/modeleditorhtml.html?sField=" + sField,"EditorHtml", "alwaysRaised=yes,dependent=yes,directory=no,width=800,height=480,toolbar=0,resizable=yes,screenx=0,screeny=200");
	window.self.open(
		"model/editor/editor.html?sField=" + sField,
		"",
		"alwaysRaised=yes,dependent=yes,directory=no,width=800,height=480,toolbar=0,resizable=yes,screenx=0,screeny=200"
		);
}

function OWindow(sUrl, sName, sOptions) {
	var win;
	if (typeof(sOptions) == 'undefined') {
		win = window.open('' + sUrl, '' + sName);
	} else {
		win = window.open('' + sUrl, '' + sName, '' + sOptions);
	}
	win.focus();
}

function OWindowCenter(sUrl, sName, sOptions, iWidth, iHeight) {
	var winC;
	if (typeof(sOptions) == 'undefined') {
		winC = window.open('' + sUrl, '' + sName);
	} else {
		winC = window.open('' + sUrl, '' + sName, '' + sOptions);
	}
	winC.moveTo((screen.availWidth - iWidth )/2,(screen.availHeight - iHeight )/2);
	winC.focus();
}