////////////////////////////////////////////////////////
// Fonctions de base
///////////////////////////////////////////////////////


//retourne un element objHTTP
////////////////////////////////////////////////////////
function ajax() {
	var objHTTP = null;
	if (typeof XMLHttpRequest != 'undefined') {
		try {
			objHTTP = new XMLHttpRequest();
		} catch (e) {}
	} else {
		var msxmlhttp = new Array(
			'Msxml2.XMLHTTP.5.0',
			'Msxml2.XMLHTTP.4.0',
			'Msxml2.XMLHTTP.3.0',
			'Msxml2.XMLHTTP',
			'Microsoft.XMLHTTP');
		for (var i = 0; i < msxmlhttp.length; i++) {
			try {
				objHTTP = new ActiveXObject(msxmlhttp[i]);
			} catch (e) {}
		}
	}
	return objHTTP;
}

//retourne un objet
////////////////////////////////////////////////////////
function $(id){
	return document.getElementById(id);
}
function $_(id) {
	return document.getElementsByTagName(id);
}

//gère les classes
////////////////////////////////////////////////////////
Element.prototype.HasClassName = function(className) {
	if (this.className) {
		var arrList = this.className.toUpperCase().split(' ');
		var classNameUpper = className.toUpperCase();
		for (var i = 0; i < arrList.length; ++i) {
			if (arrList[i] == classNameUpper) {
				return true;
			}
		}
	}
	return false;
}
Element.prototype.AddClassName = function(className) {
	if (this.className) {
		var arrList = this.className.toUpperCase().split(' ');
		var classNameUpper = className.toUpperCase();
		for (var i = 0; i < arrList.length; ++i) {
			if (arrList[i] == classNameUpper) {
				arrList.splice(i, 1);
				i--;
			}
		}
		arrList[arrList.length] = className;
		this.className = arrList.join(' ');
	} else {
		this.className = className;
	}
}
Element.prototype.RemoveClassName = function(className) {
	if (this.className) {
		var arrList = this.className.toUpperCase().split(' ');
		var classNameUpper = className.toUpperCase();
		for (var i = 0; i < arrList.length; ++i) {
			if (arrList[i] == classNameUpper) {
				arrList.splice(i, 1);
				--i;
			}
		}
		this.className = arrList.join(' ');
	}
}


////////////////////////////////////////////////////////
// Gestion de la page
///////////////////////////////////////////////////////
function loadpage() {
	init_fields();
}
function lancer(fct) {
	if (window.addEventListener)
		window.addEventListener('load', fct, false);
	else
		window.attachEvent('onload', fct);
}
lancer(loadpage);


// Initialisation des champs vides
///////////////////////////////////////////////////////
function init_fields() {/*
	//email reinit
	if($('email_reinit')) {
		if($('email_reinit').value=='') {
			$('email_reinit').value=$('email_reinit-autocomplete').value;
			$('email_reinit').AddClassName('infofield');
		}
		$('email_reinit').onfocus=function() {
			if($('email_reinit').value==$('email_reinit-autocomplete').value) {
				$('email_reinit').value='';
				$('email_reinit').RemoveClassName('infofield');
			}
		}
	}
	//email
	if($('email')) {
		if($('email').value=='') {
			$('email').value=$('email-autocomplete').value;
			$('email').AddClassName('infofield');
		}
		$('email').onfocus=function() {
			if($('email').value==$('email-autocomplete').value) {
				$('email').value='';
				$('email').RemoveClassName('infofield');
			}
		}
	}
	//pseudo
	if($('pseudo')) {
		if($('pseudo').value=='') {
			$('pseudo').value=$('pseudo-autocomplete').value;
			$('pseudo').AddClassName('infofield');
		}
		$('pseudo').onfocus=function() {
			if($('pseudo').value==$('pseudo-autocomplete').value) {
				$('pseudo').value='';
				$('pseudo').RemoveClassName('infofield');
			}
		}
	}
	//twitter
	if($('twitter')) {
		if($('twitter').value=='') {
			$('twitter').value=$('twitter-autocomplete').value;
			$('twitter').AddClassName('infofield');
		}
		$('twitter').onfocus=function() {
			if($('twitter').value=='login') {
				$('twitter').value=$('twitter-autocomplete').value;
				$('twitter').RemoveClassName('infofield');
			}
		}
	}
	//mot de passe
	if($('password')) {
		if($('password').value=='') {
			$('password').value=$('password-autocomplete').value;
			$('password').AddClassName('infofield');
		}
		$('password').onfocus=function() {
			if($('password').value==$('password-autocomplete').value) {
				$('password').value='';
				$('password').RemoveClassName('infofield');
			}
		}
	}

	//edition de blog
	if($('nom')) {
		if($('nom').value=='') {
			$('nom').value=$('nom-autocomplete').value;
			$('nom').AddClassName('infofield');
		}
		$('nom').onfocus=function() {
			if($('nom').value==$('nom-autocomplete').value) {
				$('nom').value='';
				$('nom').RemoveClassName('infofield');
			}
		}
	}	
	//edition de blog
	if($('url_source')) {
		if($('url_source').value=='') {
			$('url_source').value=$('url_source-autocomplete').value;
			$('url_source').AddClassName('infofield');
		}
		$('url_source').onfocus=function() {
			if($('url_source').value==$('url_source-autocomplete').value) {
				$('url_source').value='';
				$('url_source').RemoveClassName('infofield');
			}
		}
	}	*/	
}




//gestion des utilisateurs aditionnels
////////////////////////////////////////////////////////
function listutilisateursaditionnels() {
	//init
	$('utilisateurs_aditionnel').type='hidden';
	$('utilisateurs_aditionnel_management').innerHTML='';
	//contenu
	if($('utilisateurs_aditionnel').value!='') {
		list=$('utilisateurs_aditionnel').value.split(',');
		for(j=0;j<list.length;++j) {	
			$('utilisateurs_aditionnel_management').innerHTML+=list[j]+'<span onclick="removeusera('+j+')"><img alt="supprimer" title="supprimer" style="vertical-align: baseline;" src="/core/template/images/supprimer.png"></span> ';
		}
	}
	
	//lister tous les utilisateurs
	utilisateurs_aditionnel_management_temp='<select id="utilisateurs_aditionnel_add">';
	list=$('user_additionnels_listall').value.split(',');
	utilisateurs_aditionnel_management_temp+='<option value="-1">'+list[0]+'</option>';
	for(j=1;j<list.length;++j) {	
			utilisateurs_aditionnel_management_temp+='<option value="'+list[j]+'">'+list[j]+'</option>';
	}
	utilisateurs_aditionnel_management_temp+='</select>';
	
	//ajout
	$('utilisateurs_aditionnel_management').innerHTML+=utilisateurs_aditionnel_management_temp+'<input type="button" value="+" onclick="addusera()"/>';
}
function addusera() {
	if($('utilisateurs_aditionnel_add').value!='' && $('utilisateurs_aditionnel_add').value!=-1) {
		if($('utilisateurs_aditionnel').value=='') {
			$('utilisateurs_aditionnel').value=$('utilisateurs_aditionnel_add').value;
		} else {
			list=$('utilisateurs_aditionnel').value.split(',');
			list.push($('utilisateurs_aditionnel_add').value);
			$('utilisateurs_aditionnel').value=list.join(',');
		}
		listutilisateursaditionnels();
	}
}
function removeusera(idtag) {
	list=$('utilisateurs_aditionnel').value.split(',');
	list.splice(idtag,1);
	$('utilisateurs_aditionnel').value=list.join(',');
	listutilisateursaditionnels();
}


//gestion des catégories
////////////////////////////////////////////////////////
function listcategories() {
	listecats=$('liste_cats').value.split(',');
	for(i=0;i<listecats.length;++i) {
		//init
		$('cat_'+listecats[i]).type='hidden';
		$('cat_management_'+listecats[i]).innerHTML='';
		//contenu
		if($('cat_'+listecats[i]).value!='') {
		list=$('cat_'+listecats[i]).value.split(',');
			for(j=0;j<list.length;++j) {	
				$('cat_management_'+listecats[i]).innerHTML+=list[j]+'<span onclick="removecat('+listecats[i]+','+j+')"><img alt="supprimer" title="supprimer" style="vertical-align: baseline;" src="/core/template/images/supprimer.png"></span> ';
			}
		}
		//ajout
		$('cat_management_'+listecats[i]).innerHTML+='<input id="cat_add_'+listecats[i]+'" type="text" size="10"/><input type="button" value="+" onclick="addcat('+listecats[i]+')"/>';
	}
}
function addcat(idcat) {
	if($('cat_add_'+idcat).value!='' && $('cat_add_'+idcat).value!=-1) {
		if($('cat_'+idcat).value=='') {
			$('cat_'+idcat).value=$('cat_add_'+idcat).value;
		} else {
			list=$('cat_'+idcat).value.split(',');
			list.push($('cat_add_'+idcat).value);
			$('cat_'+idcat).value=list.join(',');
		}
		listcategories();
	}
}
function removecat(idcat,idtag) {
	list=$('cat_'+idcat).value.split(',');
	list.splice(idtag,1);
	$('cat_'+idcat).value=list.join(',');
	listcategories();
}





function rsscustomload() {
	liste_sources=$('liste_sources').value.split(',');
	liste_categories_nanami=$('liste_categories_nanami').value.split(',');

	for(i=0;i<liste_sources.length;++i) {
		$('idblog_'+liste_sources[i]).onclick=function(){rsscustomsource(this.id);};
	}
	for(i=0;i<liste_categories_nanami.length;++i) {
		$('idcat_'+liste_categories_nanami[i]).onclick=function(){rsscustomcat(this.id);};
	}
}
function rsscustomcat(eleid) {
	liste_sources=$('liste_sources').value.split(',');
	liste_categories_nanami=$('liste_categories_nanami').value.split(',');
	getid=eleid.substring(6,eleid.length);

	state=false;
	for(i=0;i<liste_sources.length;++i) {
		if(!$('flux-'+liste_sources[i]+'-'+getid).checked) {state=true};
	}
	
	for(i=0;i<liste_sources.length;++i) {
		$('flux-'+liste_sources[i]+'-'+getid).checked=state;
	}
	$('flux-nouveau-'+getid).checked=state;
	
}
function rsscustomsource(eleid) {
	liste_sources=$('liste_sources').value.split(',');
	liste_categories_nanami=$('liste_categories_nanami').value.split(',');
	getid=eleid.substring(7,eleid.length);

	state=false;
	for(i=0;i<liste_categories_nanami.length;++i) {
		if(!$('flux-'+getid+'-'+liste_categories_nanami[i]).checked) {state=true};
	}
	
	for(i=0;i<liste_categories_nanami.length;++i) {
		$('flux-'+getid+'-'+liste_categories_nanami[i]).checked=state;
	}
	$('flux-nouveau-'+getid).checked=state;
}


//gestion de la recherche
////////////////////////////////////////////////////////
var timeoutset=false;
var isout=false;
var isfocused=false;

function searchresult(search) {
	var htr=ajax();
	if (typeof htr == 'object') {
		//pas de mot tapé, on vire le résultat
		if(search=='' || search==' ') {
			document.getElementById('content').innerHTML=reponse;
		} else {
			htr.open('GET', '/ajax_search/?search=' + search, true);
			htr.onreadystatechange = function() {
				if (htr.readyState == 4 && htr.status == 200) {
					var reponse=htr.responseText;
					if(reponse!='') {
						document.getElementById('content').innerHTML=reponse;
					}
				}  
			}
			htr.send(null);
		}
	}
}


function valide_delete() {
	return confirm('Supprimer ?');
}

/*
function setresult(data) {
	window.location='http://www.nanami.fr/article/'+data;
}
function goneout() {
	timeoutset=window.setTimeout("hideresult()",200);
}
function hideresult() {
	if(isout && !isfocused) {
		document.getElementById('result').style.display='none';
		document.getElementById('result').innerHTML='';
	}
}
*/


//effectue une requête AJAX
////////////////////////////////////////////////////////
/*
function arbo_display() {
	var ajax1 = ajax();
	ajax1.open('GET', '/?action=get_arbo_content', true);
	ajax1.onreadystatechange = function() {
			if (ajax1.readyState == 4 && ajax1.status == 200) {
				var reponse=ajax1.responseText;
				$('arborecence').innerHTML=reponse;
			}  
		}
	ajax1.send(null);
}
//gestion d'onglets
function showtab(id,othertabs) {
	for (var i = 0; i< othertabs.length; i++) {
		$(elements[i]).className =""
	}
	$(id).className ="current";
}*/




/*
//document.onmousemove=bouge;
//document.onmouseup=lache;
//window.onkeypress=keyPressHandler;
//window.onload=loadpage;
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}
//addLoadEvent(nameOfSomeFunctionToRunOnPageLoad);
addLoadEvent(function() {
});
function keyPressHandler(e) {
	var kC  = (window.event) ? event.keyCode : e.keyCode;
	var Esc = (window.event) ? 27 : e.DOM_VK_ESCAPE;
	if(kC==Esc) {
		if(document.getElementById('editpopup')) {
			document.getElementById('editpopup').style.display='none';
		}
	}
}
*/
