function Ouvrir_Index(url) {
	Index = window
			.open(
					url,
					"Index",
					"scrollbars=yes,status=no,resizable=no,menubar=no,width=500,height=600,left=800");
	Index.focus();
}

function Fill_Form(fieldname, pickedvalue, pref) {
	var newvalue = "";
	var val = "@";
	var newval = "";
	newval = val.replace(/@/g, "%");

	if (newval != "%") {
		for ( var i = 0; i < (pickedvalue.length); i++) {
			if (pickedvalue.charAt(i) == "@")
				newvalue += "%";
			else
				newvalue += pickedvalue.charAt(i);
		}
	} else
		newvalue = pickedvalue.replace(/@/g, "%");
	pickedvalue = unescape(newvalue);

	if (fieldname == "champ_type") {
		if (pickedvalue == "d")
			document.recherchemanuscrit[fieldname].selectedIndex = 0;
		else
			document.recherchemanuscrit[fieldname].selectedIndex = 1;
	} else {
		var value0 = document.recherchemanuscrit[fieldname].value;
		document.recherchemanuscrit[fieldname].value += ((value0 == '') ? ""
				: " ")
				+ pickedvalue;
	}
	window.focus();
}

//
// chargement des fonctions dès que la page est terminée de charger.
//

$(document).ready( function() {

});

function recherche(type) {
	params = ajouteParams('REGION');
	params += ajouteParams('DEPARTEMENT');
	params += ajouteParams('DIOCESE');
	params += ajouteParams('ORDRE');
	params += ajouteParams('TYPOLA');
	params += ajouteParams('TYPOECC');

	// On récupère tous les paramètres à envoyer au script php de recherche
	switch (type) {
	case 'libre':
		params = ajouteParams('criterelibre');
		params = params.substr(0, params.length - 1);

		params = '({' + params + '})';

		rechercheProd(params);
		rechercheManus(params);
		break;
	case 'prod':
		params = params.substr(0, params.length - 1);

		params = '({' + params + '})';

		// On appelle le script de recherche
		rechercheProd(params);
		break;
	case 'manus':
		params += ajouteParams('TYPOENTITE[]');
		params += ajouteParams('COTE_COMPLETE');
		params += ajouteParams('STEIN');
		params += ajouteParams('ANNEE1');
		params += ajouteParams('ANNEE2');
		params = params.substr(0, params.length - 1);

		params = '({' + params + '})';

		// On appelle le script de recherche
		rechercheManus(params);
		break;
	}
}

function rechercheProd(params) {
	$.post('../php/rechercheprod.php', eval(params), function(data) {//alert (data);
				// Les données de retour sont au format "json" (c'est
			// une chaine
			// de texte donc) et vont être interprétés et transformés
			// en objet. On accède aux champs de l'objet "data" avec le
			// point.
			// ex : data.length pour récupérer le champ length créé dans
			// le script

			// Si la longueur des données est null on n'a pas de
			// résultats
			if (data.length == 0) {
				$('#resultatsProducteurs ul').append('Aucun r�sultat');
			} else { // sinon :
				// On récupère la liste ul dans la page
				var liste = $('#resultatsProducteurs ul')

				resultats = data.resultats; // on récupère les résultats

				// On boucle sur les résultats pour les afficher
				for (i = 0; i < resultats.length; i++) {
					// On crée la ligne de résultat (c'est un li)
					ligneResultat = '<li><a href="../' + resultats[i].id
							+ '/">' + resultats[i].libelle + '</a>';
					liste.append(ligneResultat);
				}

				// On affiche le nombre de résulat dans #nbResultats
				var nbResultats = resultats.length;
				$('#nbResultatsProducteurs').html(
						nbResultats + ' producteur'
								+ (nbResultats > 1 ? 's' : ''));

				// On affiche le nombre de charte total dans #nbTotal
				$('#nbTotal').html(data.total);
			}

			triListe($('#resultatsProducteurs ul'));

			// On affiche la liste de résultats
			$('#resultatsProducteurs').show();
			// On cache l'image de chargement
			$('#ajaxLoad').hide();
		}, 'json');

}

function triListe(ul) {
	var items = ul.children('li').get();
	items.sort( function(a, b) {
		var keyA = $(a).text();
		var keyB = $(b).text();

		if (keyA < keyB)
			return -1;
		if (keyA > keyB)
			return 1;
		return 0;
	});

	$.each(items, function(i, li) {
		ul.append(li);
	});
}
function rechercheManus(params) {
	$.post('../php/recherchemanus.php', eval(params), function(data) {//alert(data);
				// Les données de retour sont au format "json" (c'est
			// une chaine
			// de texte donc) et vont être interprétés et transformés
			// en objet. On accède aux champs de l'objet "data" avec le
			// point.
			// ex : data.length pour récupérer le champ length créé dans
			// le script

			// Si la longueur des données est null on n'a pas de
			// résultats
			if (data.length == 0) {
				$('#resultatsManuscrits ul').append('Aucun r�sultat');
			} else { // sinon :
				// On récupère la liste ul dans la page
				var liste = $('#resultatsManuscrits ul')

				resultats = data.resultats; // on récupère les résultats

				// On boucle sur les résultats pour les afficher
				for (i = 0; i < resultats.length; i++) {
					// On crée la ligne de résultat (c'est un li)
					ligneResultat = '<li><a href="../codico'
							+ resultats[i].manuscrit_id + '/?para='
							+ resultats[i].entite_id + 't'
							+ resultats[i].typolien + '">'
							+ resultats[i].libelle + '</a>';

					liste.append(ligneResultat);
				}

				// On affiche le nombre de résulat dans #nbResultats
				var nbResultats = resultats.length;
				$('#nbResultatsManuscrits').html(
						nbResultats + ' manuscrit'
								+ (nbResultats > 1 ? 's' : ''));

				// On affiche le nombre de charte total dans #nbTotal
				$('#nbTotal').html(data.total);
			}

			triListe($('#resultatsManuscrits ul'));

			// On affiche la liste de résultats
			$('#resultatsManuscrits').show();
			// On cache l'image de chargement
			$('#ajaxLoad').hide();

		}, 'json');
}

$(window).load( function() {
	$('#COTE_COMPLETE').autocomplete('../php/autocompleteCote.php', {
		minChars : 3,
		cacheLength : 1,
		max : 0,
		width : 500,
		extraParams : {
			cote : function() {
				$('#COTE_COMPLETE').flushCache();
				return $('#COTE_COMPLETE').val();
			}
		}
	});
});

