/**

*/

function debug(str){
	var footer = window.top.document.getElementById("footer");
	if(footer){
		footer.innerHTML = str +'<br/>'+ footer.innerHTML;
		document.status = str;
	}
}
function debug_url(url){
	var footer = window.top.document.getElementById("footer");
	if(footer){
		footer.innerHTML = '<a href="'+url+'" target="_blank">' + url + '</a>' + '<br/>' + footer.innerHTML;
		document.status = url;
	}
}
function debug_clear(){
	content('footer','');
}
function debug_toggle(){
	if (_debug_show) {
		hide('footer');
	}
	else {
		show('footer');
	}
	_debug_show = !_debug_show;

	var url = 'php/ax_debug_set.php?debug=' + ( (_debug_show==true)?1:0 );
	debug(url);
	doAjax(url, debug_xml_response);
}
function debug_xml_response(){
	if (!this.req.responseXML) {
		debug("Request failed");
	}
	else {
		var xmlDoc = this.req.responseXML.documentElement;
		if (!xmlDoc) {
			debug("Failed loading response");
		}
		else {
			var _debug	= (xmlDoc.getElementsByTagName('debug')[0].childNodes.length)?(xmlDoc.getElementsByTagName('debug')[0].childNodes[0].nodeValue):(' ');
			//debug_clear();
			debug(_debug);
		}
	}
}

function content(id, str){
	debug(str);
	if(!document.getElementById(id)){}
	else if(document.all){//ie
		document.getElementById(id).innerText = str;
	}
	else{
		document.getElementById(id).innerHTML = str;
	}
}
function hide(id){
	/*if(document.all){
	document.getElementById(id).setAttribute('style', "display:none; ");
	}
	else */
	document.getElementById(id).style.display = "none";
}

function show(id){
	if(document.getElementById(id)){
		document.getElementById(id).style.display = "block";
	}
}

function toggle(id){
	var el  = document.getElementById(id);
	var li  = document.getElementById('li'+id);
	var icn = document.getElementById('icn'+id); 
	if (el) {
		if (el.style.display == 'none') {
			el.style.display = 'block';
			if (li) {
				li.setAttribute('class', 'opend');
				icn.setAttribute('src', 'design/images/opt12op.png');
				icn.setAttribute('title', 'Contracter');
			}
		}
		else {
			el.style.display = 'none';
			if (li) {
				li.setAttribute('class', 'clos');
				icn.setAttribute('src', 'design/images/option12.png');
				icn.setAttribute('title', 'Déployer');
			}
		}
	}	
}

function setEvent(id, evenmt, action){
	var e = document.getElementById(id);
	if(e){
		if (document.all){//IE
			eval(id + ".attachEvent('" + evenmt + "'," + action + ");");
		}
		else  {	//DOM2 compatibles
			document.getElementById(id).setAttribute( evenmt, action + ';' );
		}
	}
}

function getElementsByClassName(className, tag, elm){
    var testClass = new RegExp("(^|s)" + className + "(s|$)");
    var tag = tag || "*";
    var elm = elm || document;
    var elements = (tag == "*" && elm.all) ? elm.all : elm.getElementsByTagName(tag);
    var returnElements = [];
    var current;
    var length = elements.length;
    for (var i = 0; i < length; i++) {
        current = elements[i];
        if (testClass.test(current.className)) {
            returnElements.push(current);
        }
    }
    return returnElements;
}

function selectUpdate(selectName, action, conteneur, xmlDoc, titre){
	debug('selectUpdate ' + selectName);
	/********** MISE A JOUR DU SELECT *****/
	var nSelect = xmlDoc.getElementsByTagName(selectName).length;
	if (nSelect > 0) {
		/********** MISE A ZERO DU SELECT   *****/
		content(conteneur,'');
		var select = document.getElementById(selectName);
		if (!select) {// existe pas: on le crée
			var select = document.createElement("select");
			select.setAttribute('id', selectName);
			select.setAttribute('name', selectName);
			select.setAttribute('onchange', action);
			select.setAttribute('title', titre);
			select.value='0';
			var madiv = document.getElementById(conteneur);
			madiv.appendChild(select);
			//setEvent('livre', 'onclick', 'livre_set(this.value)');
		}
		//var nLivres	= xmlDoc.getElementsByTagName('livre').length;
		var nOptions = xmlDoc.getElementsByTagName('texte').length;
		var _selected = (xmlDoc.getElementsByTagName('curval')[0].childNodes.length) ? (xmlDoc.getElementsByTagName('curval')[0].childNodes[0].nodeValue) : (0);
		debug('selectUpdate: ' + selectName + '/' + _selected);

		//debug(nOptions + ' Options');
		for (var i = 0; i < nOptions; i++) {
			var _texte = (xmlDoc.getElementsByTagName('texte')[i].childNodes.length) ? (xmlDoc.getElementsByTagName('texte')[i].childNodes[0].nodeValue) : (' ');
			var _valeur = (xmlDoc.getElementsByTagName('valeur')[i].childNodes.length) ? (xmlDoc.getElementsByTagName('valeur')[i].childNodes[0].nodeValue) : (' ');
			var nOption = document.createElement("option");
			nOption.value = _valeur;
			nOption.text = _texte;
			select.appendChild(nOption);
		}
		select.value = _selected;
	}
}

function xml_read_fieldRow(xmlDoc, champ, ligne){
	var val = (xmlDoc.getElementsByTagName(champ)[ligne].childNodes.length) ? (xmlDoc.getElementsByTagName(champ)[ligne].childNodes[0].nodeValue) : (' ');
	return val;
}

var editor;

function createEditor(champ){
	hide('_'+champ);// masque la div contenant le html
	editor = CKEDITOR.replace( champ,
    {
        toolbar :
        [
        ['Save','NewPage','Preview','Maximize'],
        ['Cut','Copy','Paste','PasteText','PasteFromWord','Image','-','Scayt'],
        ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
        ['Format','Bold','Italic','JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'],
        ['NumberedList','BulletedList','-','Outdent','Indent','Blockquote'],
        ['Link','Unlink','Anchor'],
        ['About']
        ],
        uiColor : '#9AB8F3'
    });

	CKFinder.setupCKEditor( editor, '/module/ckfinder/' );
	$('_editeurActif').value = 1;// pour identifier le submit par bouton de CKeditor
}

function removeEditor()
{
	if ( !editor )
		return;

	// Retrieve the editor contents. In an Ajax application, this data would be
	// sent to the server or used in any other way.
	document.getElementById( 'editorcontents' ).innerHTML = editor.getData();
	document.getElementById( 'contents' ).style.display = '';

	// Destroy the editor.
	editor.destroy();
	editor = null;
}


