
/*
 * hide
 * Paramètre string ou array
 * Si array, boucle sur les valeurs et les 'hide' tous
 * si string, 'hide' l'id
 */
function hide(arr)
{
	
	// if an array
	if (typeof arr == "object") {
	
		for (var i = 0; i < arr.length ; i++) {
			$("#" + arr[i]).hide();

		}
	// if string
	} else if (typeof arr == "string") {
		$("#" + arr).hide();
	}
	
}

/*
 * showOne
 * 'hide' tous les champs du tableau arr et 'show' l'id du 2ème paramètre
 */
function showOne (arr, string)
{
	hide(arr);
	$("#" + string).show();
}


/*
 * cleanField
 * Vide la valeur de 'field'
 */

function cleanField (field)
{

	// if not 'this'
	if (!field.value) {	
		var fieldToClean = document.getElementById(field);
	} else {
		var fieldToClean = field;
	}
	if (!empty(fieldToClean)) {
		fieldToClean.value = '';
	}
	
}

function empty (mixed_var)
{
    // !No description available for empty. @php.js developers: Please update the function summary text file.
    // 
    // version: 911.1619
    // discuss at: http://phpjs.org/functions/empty
    // +   original by: Philippe Baumann
    // +      input by: Onno Marsman
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: LH
    // +   improved by: Onno Marsman
    // +   improved by: Francesco
    // +   improved by: Marc Jansen
    // +   input by: Stoyan Kyosev (http://www.svest.org/)
    // *     example 1: empty(null);
    // *     returns 1: true
    // *     example 2: empty(undefined);
    // *     returns 2: true
    // *     example 3: empty([]);
    // *     returns 3: true
    // *     example 4: empty({});
    // *     returns 4: true
    // *     example 5: empty({'aFunc' : function () { alert('humpty'); } });
    // *     returns 5: false
    
    var key;
    
    if (mixed_var === "" ||
        mixed_var === 0 ||
        mixed_var === "0" ||
        mixed_var === null ||
        mixed_var === false ||
        typeof mixed_var === 'undefined'
    ){
        return true;
    }

    if (typeof mixed_var == 'object') {
        for (key in mixed_var) {
            return false;
        }
        return true;
    }

    return false;
}



/*
 * Search
 *
 */

function searchClean()
{
	var searchField = document.getElementById('input_search');
	if (!empty(searchField.value)) {
		if (searchField.value == 'Saisissez votre mot-clé') {
			cleanField(searchField);
		}
	}
}



/*
 * Pour faire des lien qui s'ouvre dans une nouvelle fenetre avec rel="external"
*/
 function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}
window.onload = externalLinks;
