// JavaScript Document

var pw=0;

String.prototype.padLeft = function(strChar, intLength)
{
 var str = this + '';
 while (str.length != intLength) {
  str = strChar + str;
 }
 return str;
}

function swap_td(id,o)
{
	document.getElementById(id).className='menu'+(o?'_on':'');
}

function chercher(q,s,p)
{
	var t = new Date();	
	var url = 'data/admin/includes/resultat.php';
	q=escape(q.replace(/\&/g,'%26'));
	var pars = 'q=' + q  + '&s=' + s + '&p=' + p + '&t=' + t.getTime();
	
	var myAjax = new Ajax.Updater(
		'resultat', 
		url, 
		{
			method: 'get', 
			parameters: pars
		});
	
}

function retour()
{
	var t = new Date();	
	var url = 'data/admin/includes/resultat.php';
	var pars = 't=' + t.getTime();
	
	var myAjax = new Ajax.Updater(
		'resultat', 
		url, 
		{
			method: 'get', 
			parameters: pars
		});
	
}

function fiche(v,q,s,p)
{
	if (v=='') {return false;}
	var t = new Date();
	var url = 'data/admin/includes/fiche.php';
	var pars = 'id=' + v + '&q=' + q + '&s=' + s + '&p=' + p + '&t=' + t.getTime();
	
	var myAjax = new Ajax.Updater(
		'resultat', 
		url, 
		{
			method: 'get', 
			parameters: pars
		});

}
 

// select box

function move(fbox, tbox) {
	var arrFbox = new Array();
	var arrTbox = new Array();
	var arrLookup = new Array();
	var i;
	var c;
	for(i=0; i<tbox.options.length; i++) {
		arrLookup[tbox.options[i].text] = tbox.options[i].value;
		arrTbox[i] = tbox.options[i].text;
	}	 

	var fLength = 0;
	var tLength = arrTbox.length;
	for(i=0; i<fbox.options.length; i++) {
		arrLookup[fbox.options[i].text] = fbox.options[i].value;
		if(fbox.options[i].selected && fbox.options[i].value != "") {
			arrTbox[tLength] = fbox.options[i].text;
			tLength++;
		} else {
			arrFbox[fLength] = fbox.options[i].text;
			fLength++;
		}
	}
	//arrFbox.sort();
	fbox.length = 0;
	//arrTbox.sort();
	tbox.length = 0;     

	for(c=0; c<arrFbox.length; c++) {
	  var no = new Option();
	  no.value = arrLookup[arrFbox[c]];
	  no.text = arrFbox[c];
	  fbox[c] = no;
	}
     for(c=0; c<arrTbox.length; c++) {
     	var no = new Option();
     	no.value = arrLookup[arrTbox[c]];
     	no.text = arrTbox[c];
     	tbox[c] = no;
     }	 
}

function addAlternate(fbox, tbox)
{	
	if(fbox.value=='') { return }
	var arrTbox = new Array();
	var arrLookup = new Array();
	var i;
	var c;
	
	for(i=0; i<tbox.options.length; i++) {
		arrLookup[tbox.options[i].text] = tbox.options[i].value;
		arrTbox[i] = tbox.options[i].text;
	}
	arrLookup[fbox.value] = fbox.value;
	arrTbox[i] = fbox.value;
	fbox.value='';
	//arrTbox.sort();
	tbox.length = 0;   
	
	for(c=0; c<arrTbox.length; c++) {
		var no = new Option();
		no.value = arrLookup[arrTbox[c]];
		no.text = arrTbox[c];
		tbox[c] = no;
	}

}

function selectAll(box) {
     for(var i=0; i<box.length; i++) {
     box[i].selected = true;
     }
}
// eslect box


function ajustJour(jour,mois,annee)
{
/*******************************************************************
DESCRIPTION: Redimension la liste des jours selon le mois et l'annee
*******************************************************************/
	nbJourMois = new Array("","31","28","31","30","31","30","31","31","30","31","30","31");
	if ((annee % 4) == 0) {nbJourMois[2] = "29";}
	dernier_jour = nbJourMois[mois];
	if (eval('document.record.'+jour).length>dernier_jour) {
		for (var m=eval('document.record.'+jour).length ; m>dernier_jour ; m--) {
			eval('document.record.'+jour).options[(m-1)]=null;
		}
	}
	if (eval('document.record.'+jour).length<dernier_jour) {
		for (var m=eval(document.record.jour).length ; m<dernier_jour ; m++) {
			eval('document.record.'+jour).options[m]=new Option((m+1),(m+1));
		}
	}	
}

function validerNumeric(f,v)
{
/*********************************************************
DESCRIPTION: Valide que les differents champs soit numeric
*********************************************************/
	if (isNaN((eval(f+'.'+v).value))) { alert('Cette valeur n\'est pas numerique.\nCorrigez SVP.'); }
	if (!eval(f+'.'+v).value.length) { eval(f+'.'+v).value=0; }
}

function popupcentree(page)
{
	var top=(screen.height)/2 - 200;
	var left=(screen.width)/2 - 200;
	window.open(page,"popup","top="+top+",left="+left+",resizable,width=10,height=10,status=no");
}

function redimentionnement(fichier)
{
	var larg, haut
	img = new Image;
	img.src = '../public/'+fichier ;
	larg = img.width + 12;
	haut = img.height + 48;	
	self.resizeTo(larg, haut);
	self.focus();
}


function trim(str)
{
   //str = str.replace(/\'/g,"\'\'");
   //str = str.replace(/\"/g,"&quot;");
   return str.replace(/^\s*|\s*$/g,"");
}

function validerChamps(f,table)
{
/**********************************************************************
DESCRIPTION: Valide que les differents champs soit correctement popules
**********************************************************************/	
	var stop = false;
	var message = 'Vous devez enter un valeur pour le champ ';
	var objDate = new Date();
	var now = objDate.getFullYear() + '-' + (objDate.getMonth()+1).toString().padLeft('0', 2) + '-' + objDate.getDate().toString().padLeft('0', 2);	
	//alert(now);
	for (var i = 0; i< f.length ; i++) {
		//alert(i+' '+document.record.elements[i].name);
		switch(table)
		{			
		case 'entreprises': 
			if ( (i==2 || i==3) && (trim(f.elements[i].value)=='' || f.elements[i].value==0)) { stop = true; }
			if ( document.record.elements[i].name=='mots_cles' ) { 
				selectAll(document.record.elements[i]); 
				if (document.record.elements[i].length>1) { document.record.elements[i].name=document.record.elements[i].name+'[]'; }
			}
			break
		case 'entreprise_forfait':
			if ( (document.record.elements[i].name=='entreprise' || document.record.elements[i].name=='date_reference' ) && (trim(f.elements[i].value)=='' || f.elements[i].value==0)) { stop = true; }
			if ( (document.record.elements[i].name=='forfait') && (f.elements[i].value==1 || f.elements[i].value==0)) { 
				stop = true; 
				message = 'Vous devez enter un valeur autre que "A" pour le champ ';
			}
			break
		case 'forfaits_tarification':
			if ( (i==1 || i==2 || i==3) && (trim(f.elements[i].value)=='')) { stop = true; }
			break
		case 'images':
			if ( (i==0) && (trim(f.elements[i].value)=='')) { stop = true; }
			break
		default:
			if ( (f.elements[i].value=='' || f.elements[i].value==0) && i==1 ) { stop = true; }
		}
		if (stop) { break; }
	}	
	
	if (stop) 
	{
		alert(message+f.elements[i].name);
		if (f.elements[i].type == 'hidden') { i+=1; }
		f.elements[i].focus();
	}
	else {  if (document.is_this) {document.is_this.modified.value = 0; f.submit();	} }
}

function onChangeThis(f) 
{
	if (f) { eval('document.record.'+f).style.background='#FFCCE6'; }
	if (document.is_this) {document.is_this.modified.value = 1;}
}