
function selectAll(nomForm,cat)
{
  var checkBoxName = "checkbox_"+cat;
  for (var i = 0; i < document.forms[nomForm].elements.length; i++) 
  {
  	if ( document.forms[nomForm].elements[i].type == "checkbox" )
	{
		var e = document.forms[nomForm].elements[i];
		var ename = e.name.toString();
		var testCat = ename.substr(0,4);
		if ((e.name != checkBoxName) && (e.type == 'checkbox') && (cat == testCat)) {
		  e.checked = document.forms[nomForm].elements[checkBoxName].checked;
		}
    }
  }
}

function galChgOrdre(ordre)
{
	if (document.forms['inv_gal'].elements['first'].value == "#")
	{
		document.forms['inv_gal'].elements['first'].value = ordre;
	}
	else
	{
		document.forms['inv_gal'].elements['second'].value = ordre;
		document.forms['inv_gal'].submit();
	}
}

function testForm(nomForm) {
	var i = 0;
	var count = nomForm.length;
	var rater = 0;
	
	while ( i < count ) {
		if ( nomForm[i].value == "" && nomForm[i].type !== "hidden" && nomForm[i].type !== "file" && nomForm[i].name !== "group_mdp" && nomForm[i].name !== "nsoc" && nomForm[i].disabled !== true ) {
			rater = 1;
		}
		i++;
	}
	if ( rater == 0 ) {
		nomForm.submit();
	}else{
		alert("Please fill in all the fields.");
	}
}

function testQuantity(nomForm) 
{
		nomForm.submit();
}

function showHide(id) 
{
	if ( document.getElementById(id).style.display == "block" )
	{
		document.getElementById(id).style.display = "none";
	}
	else
	{
		document.getElementById(id).style.display = "block";
	}
}

function mkEnabled(form,input)
{
	if ( document.forms[form].elements[input].disabled == false )
	{
		document.forms[form].elements[input].disabled = true;
	}
	else
	{
		document.forms[form].elements[input].disabled = false;
	}
}

function mkEmpty(nomField)
{
	nomField.value = "";
}

function doDelete(url) {
	if ( confirm("Are you sure?") ) {
		window.location = url;
	}
}

function format(type,field) {
  switch(type)
  {
  	case "bold":
		repdeb = "<bold>";
		repfin = "</bold>";
		break;
  	case "italic":
		repdeb = "<italic>";
		repfin = "</italic>";
		break;
  	case "list":
		repdeb = "<list>";
		repfin = "";
		break;
  	case "gallery":
		repdeb = "<gallery>";
		repfin = "</gallery>";
		break;
  	case "thumb":
		repdeb = "<thumb>";
		repfin = "</thumb>";
		break;
  	case "picture":
		repdeb = "<picture>";
		repfin = "</picture>";
		break;
  	case "logo":
		repdeb = "<logo>";
		repfin = "</logo>";
		break;
  	case "left":
		repdeb = "<left>";
		repfin = "</left>";
		break;
  	case "right":
		repdeb = "<right>";
		repfin = "</right>";
		break;
  	case "center":
		repdeb = "<center>";
		repfin = "</center>";
		break;
  	case "justify":
		repdeb = "<justify>";
		repfin = "</justify>";
		break;
  	case "title":
		switch(document.forms['form_page'].elements['titles'].value)
		{
			case "titre_0":
				repdeb = "<title>";
				break;
			case "titre_1":
				repdeb = "<title_1>";
				break;
			case "titre_2":
				repdeb = "<title_2>";
				break;
			case "titre_3":
				repdeb = "<title_3>";
				break;
		}
		repfin = "</title>";
		break;
  	case "clear":
		repdeb = "<clear>";
		repfin = "";
		break;
  	case "event":
		repdeb = "<event>";
		repfin = "";
		break;
  	case "secret":
		repdeb = "<secret>";
		repfin = "</secret>";
		break;
  	case "lienDyn":
		ans = prompt('N° Page?','');
		if ( ans == null ) { ans = ""; }
		repdeb = "<link '" + ans + "'>";
		repfin = "</link>";
		break;
  	case "lienSta":
		ans = prompt('Name page?','');
		if ( ans == null ) { ans = ""; }
		repdeb = "<link '=" + ans + "'>";
		repfin = "</link>";
		break;
  	case "lienAbs":
		ans = prompt('Absolute URL?','http://');
		if ( ans == null ) { ans = ""; }
		repdeb = "<link '" + ans + "'>";
		repfin = "</link>";
		break;
  	case "info":
		repdeb = "<info>";
		repfin = "</info>";
		break;
  	case "part":
		repdeb = "<particulier>";
		repfin = "</particulier>";
		break;
  	case "indu":
		repdeb = "<industrieel>";
		repfin = "</industrieel>";
		break;
  	case "vvpe":
		repdeb = "<voortverkoper>";
		repfin = "</voortverkoper>";
		break;

  }
  
  var input = document.getElementById(field);
  input.focus();
  /* IE */
  if(typeof document.selection != 'undefined') {
    /* Insertion du code de formatage */
    var range = document.selection.createRange();
    var insText = range.text;
    range.text = repdeb + insText + repfin;
    /* Ajustement de la position du curseur */
    range = document.selection.createRange();
    if (insText.length == 0) {
      range.move('character', -repfin.length);
    } else {
      range.moveStart('character', repdeb.length + insText.length + repfin.length);
    }
    range.select();
  }
  /* pour navigateurs plus récents basés sur Gecko*/
  else if(typeof input.selectionStart != 'undefined')
  {
    /* Insertion du code de formatage */
    var start = input.selectionStart;
    var end = input.selectionEnd;
    var insText = input.value.substring(start, end);
    input.value = input.value.substr(0, start) + repdeb + insText + repfin + input.value.substr(end);
    /* Ajustement de la position du curseur */
    var pos;
    if (insText.length == 0) {
      pos = start + repdeb.length;
    } else {
      pos = start + repdeb.length + insText.length + repfin.length;
    }
    input.selectionStart = pos;
    input.selectionEnd = pos;
  }
  /* pour les autres navigateurs */
  else
  {
    /* requête de la position d'insertion */
    var pos;
    var re = new RegExp('^[0-9]{0,3}$');
    while(!re.test(pos)) {
      pos = prompt("Insertion à la position (0.." + input.value.length + "):", "0");
    }
    if(pos > input.value.length) {
      pos = input.value.length;
    }
    /* Insertion du code de formatage */
    var insText = prompt("Veuillez entrer le texte à formater:");
    input.value = input.value.substr(0, pos) + repdeb + insText + repfin + input.value.substr(pos);
  }
}

function menuOverStyle(id)
{
  document.getElementById(id).style.backgroundColor = "#fedf2c";
}

function menuOutStyle(id)
{
  document.getElementById(id).style.backgroundColor = "#ffffff";
}

function panierGetComment()
{
  document.forms['form_type_jour'].elements['commentaire'].value = document.forms['form_details'].elements['commentaire'].value;
}


// VC

function go_subcat() {
	document.s_product.submit();
}

function zoeken2ShowHide(id_form,id_text) 
{
	if ( document.getElementById(id_form).style.display == "block" )
	{
		document.getElementById(id_form).style.display = "none";
	}
	else
	{
		document.getElementById(id_form).style.display = "block";
	}
	
	if ( document.getElementById(id_text).style.display == "block" )
	{
		document.getElementById(id_text).style.display = "none";
	}
	else
	{
		document.getElementById(id_text).style.display = "block";
	}
}

function submitZoeken2Form(nomForm)
{
	nomForm.submit();
}

function openClientProperties(nCode)
{
	var page;
	page = "../ADMIN/client_properties.php?v_nCode=" + nCode;
	window.open(page,'Properties',"menubar=0, status=0, scrollbars=1, menubar=0, width=500, height=300, resizable=1");
}

function zoeken2PosPic(id)
{
	tempX = window.event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft ;
    tempY = window.event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
	document.getElementById(id).style.left = tempX;
	document.getElementById(id).style.top = tempY;
}

function openNewsletter(nCode)
{
	var page;
	page = "../ADMIN/newsletter_view.php?e_nCode=" + nCode;
	window.open(page,'Properties',"menubar=0, status=0, scrollbars=1, menubar=0, width=623, height=300, resizable=1");
}

function openNewsletterSending()
{
	var page;
	page = "../ADMIN/opener.php";
	window.open(page,'winSending',"menubar=0, status=0, scrollbars=1, menubar=0, width=500, height=125, resizable=0");
}

// ADMIN EDITPAGE
function insertTag(startTag, endTag, textareaId, tagType) {
        var field = document.getElementById(textareaId); 
        field.focus();
        
        /* === Partie 1 : on récupère la sélection === */
        if (window.ActiveXObject) {
                var textRange = document.selection.createRange();            
                var currentSelection = textRange.text;
        } else {
                var startSelection   = field.value.substring(0, field.selectionStart);
                var currentSelection = field.value.substring(field.selectionStart, field.selectionEnd);
                var endSelection     = field.value.substring(field.selectionEnd);               
        }
        
        /* === Partie 2 : on analyse le tagType === */
        if (tagType) {
                switch (tagType) {
                        case "lienAbs":
							endTag = "</link>";
							if (currentSelection) { // Il y a une sélection
									if (currentSelection.indexOf("http://") == 0 || currentSelection.indexOf("https://") == 0 || currentSelection.indexOf("ftp://") == 0 || currentSelection.indexOf("www.") == 0) {
											// La sélection semble être un lien. On demande alors le libellé
											var label = prompt("What's the label?") || "";
											startTag = "<link '" + currentSelection + "'>";
											currentSelection = label;
									} else {
											// La sélection n'est pas un lien, donc c'est le libelle. On demande alors l'URL
											var URL = prompt("What's the URL?","http://");
											startTag = "<link '" + URL + "'>";
									}
							} else { // Pas de sélection, donc on demande l'URL et le libelle
									var URL = prompt("What's the URL?","http://") || "";
									var label = prompt("What's the label?") || "";
									startTag = "<link '" + URL + "'>";
									currentSelection = label;                     
							}
						break;

                        case "lienDyn":
							endTag = "</link>";
							if (currentSelection) { // La sélection n'est pas un lien, donc c'est le libelle. On demande alors l'URL
									var URL = prompt("What's the number of the page?","p");
									startTag = "<link '" + URL + "'>";
							} else { // Pas de sélection, donc on demande l'URL et le libelle
									var URL = prompt("What's the number of the page?","p") || "";
									var label = prompt("What's the label?") || "";
									startTag = "<link '" + URL + "'>";
									currentSelection = label;                     
							}
						break;
                }
        }
        
        /* === Partie 3 : on insère le tout === */
        if (window.ActiveXObject) {
                textRange.text = startTag + currentSelection + endTag;
                textRange.moveStart("character", -endTag.length - currentSelection.length);
                textRange.moveEnd("character", -endTag.length);
                textRange.select();     
        } else {
                field.value = startSelection + startTag + currentSelection + endTag + endSelection;
                field.focus();
                field.setSelectionRange(startSelection.length + startTag.length, startSelection.length + startTag.length + currentSelection.length);
        }       
}

function preview(textareaId, previewDiv) {
	var field = textareaId.value;
	if (document.getElementById('previsualisation').checked && field) {
		field = field.replace(/&/g, '&amp;');
		field = field.replace(/</g, '&lt;').replace(/>/g, '&gt;');
		field = field.replace(/\n/g, '<br />').replace(/\t/g, '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;');
		
		field = field.replace(/&lt;link 'http([\s\S]*?)'&gt;([\s\S]*?)&lt;\/link&gt;/g, '<a href="http$1" title="$2" target="_blank">$2</a>');
		field = field.replace(/&lt;link 'p([\s\S]*?)'&gt;([\s\S]*?)&lt;\/link&gt;/g, '<a href="?page=pages&p_nCode=p$1" title="$2" target="_blank">$2</a>');
		field = field.replace(/&lt;clear&gt;/g, '<div class="clear"></div>');
		field = field.replace(/&lt;title&gt;([\s\S]*?)&lt;\/title&gt;/g, '<div class="titre">$1</div>');
		field = field.replace(/&lt;title_1&gt;([\s\S]*?)&lt;\/title&gt;/g, '<div class="titre_1">$1</div>');
		field = field.replace(/&lt;title_2&gt;([\s\S]*?)&lt;\/title&gt;/g, '<div class="titre_2">$1</div>');
		field = field.replace(/&lt;title_3&gt;([\s\S]*?)&lt;\/title&gt;/g, '<div class="titre_3">$1</div>');
		field = field.replace(/&lt;picture&gt;([\s\S]*?)&lt;\/picture&gt;/g, '<img src="../IMAGES/TEXT_IMAGES/$1.jpg" alt="$1" class="textImage">');
		field = field.replace(/&lt;thumb&gt;([\s\S]*?)&lt;\/thumb&gt;/g, '<img src="../IMAGES/TEXT_IMAGES/$1.thumb.jpg" alt="$1" class="textImage">');
		field = field.replace(/&lt;bold&gt;([\s\S]*?)&lt;\/bold&gt;/g, '<strong>$1</strong>');
		field = field.replace(/&lt;italic&gt;([\s\S]*?)&lt;\/italic&gt;/g, '<em>$1</em>');
		field = field.replace(/&lt;right&gt;([\s\S]*?)&lt;\/right&gt;/g, '<div class="right">$1</div>');
		field = field.replace(/&lt;left&gt;([\s\S]*?)&lt;\/left&gt;/g, '<div class="left">$1</div>');
		field = field.replace(/&lt;justify&gt;([\s\S]*?)&lt;\/justify&gt;/g, '<div class="justify">$1</div>');
		field = field.replace(/&lt;info&gt;([\s\S]*?)&lt;\/info&gt;/g, '<div class="infoPage">$1</div>');
				
		document.getElementById(previewDiv).innerHTML = field;
	}
}

function getXMLHttpRequest() {
	var xhr = null;
	
	if (window.XMLHttpRequest || window.ActiveXObject) {
		if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		} else {
			xhr = new XMLHttpRequest();
		}
	} else {
		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
		return null;
	}
	
	return xhr;
}

function view(textareaId, viewDiv){
	document.getElementById('preview').style.display = "block";
	document.getElementById('previsualisation').checked = true;
	var content = encodeURIComponent(document.getElementById(textareaId).value);
	var xhr = getXMLHttpRequest();
	
	if (xhr && xhr.readyState != 0) {
		xhr.abort();
		delete xhr;
	}
	
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4 && xhr.status == 200){
			document.getElementById(viewDiv).innerHTML = xhr.responseText;
		} else if (xhr.readyState == 3){
			document.getElementById(viewDiv).innerHTML = "<div style=\"text-align: center;\">Loading...</div>";
		}
	}
	
	xhr.open("POST", "parse.php", true);
	xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	xhr.send("string=" + content);
}
// FIN ADMIN EDITPAGE
