COLOR_MODE_TAB = ["N'importe quelles", "L'une des deux", "Les deux"];
COLOR_TAB = ["", "Rouge", "Vert", "Bleu", "Blanc", "Noir", "Gris", "Marron", "Orange", "Jaune", "Rose", "Violet"];

function CHECK_CRITERIA_FORM()
{
	if (!CHECK_DATE_AND_TEXT(74))
		return false;

	if ((document.CRITERIA.COLOR_MODE.value == 1)
	&&  (document.CRITERIA.TEXT_COLOR1.value == "")
	&&  (document.CRITERIA.TEXT_COLOR2.value == ""))
	{
		alert ("Il faut spécifier au moins une couleur pour chercher une des couleurs !");
		document.CRITERIA.TEXT_COLOR1.focus();
		return false;
	}
	
	if ((document.CRITERIA.YEAR.value == "")
	&&  (document.CRITERIA.MONTH.value == 0)
	&&  (document.CRITERIA.DAY.value == "")
	&&  (document.CRITERIA.TEXT1.value == "")
	&&  (document.CRITERIA.TEXT2.value == "")
	&&  (document.CRITERIA.COLOR_MODE.value == 0))
	{
		CRITERIA_FOUND = false;
		for (I = 0; I < FLAG_TAB.length; I++)
			if (eval ("document.CRITERIA."+FLAG_TAB[I][1]+".value"))
				CRITERIA_FOUND = true;
		if (!CRITERIA_FOUND)
		{
			alert ("Il faut définir au moins un critère.");
			return false;
		}
	}

	return true;
}

function ON_CHANGE_COLOR(SELECT)
{
	if ((SELECT.value != "") && (document.CRITERIA.COLOR_MODE.value == 0))
		document.CRITERIA.COLOR_MODE.value = 1;
}

function ON_CHANGE_COLOR_MODE()
{
	if (document.CRITERIA.COLOR_MODE.value == 0)
	{
		document.CRITERIA.TEXT_COLOR1.value = "";
		document.CRITERIA.TEXT_COLOR2.value = "";
	}
}

function WRITE_CRITERIA_SCROLL()
{
	DOC_TEXT += ("<form method='get' action='Filter.php' name='CRITERIA' id='CRITERIA' onSubmit='return CHECK_CRITERIA_FORM()'>");
	TOP_SCROLL (true);
	SET_COLSPAN (2);
	SCROLL_TITLE ("Nouveaux critères de recherche");
	H_LINE();
	SCROLL_HELP ("Cochez les critères qui serviront à rechercher les entrées désirées de la biographie ou définissez le mode de fonctionnement des critères à l'aide de leur liste déroulante ou définissez la valeur du critère. Seules les événements qui vérifieront tous les critères cochés ou définis seront affichés.");
	H_LINE();
	SCROLL_INSTRUCTION("Contenu de la description");
	FORM_INPUT ("Contient le texte", "TEXT1", 40, 20);
	FORM_INPUT ("et le texte", "TEXT2", 40, 20);
	SCROLL_HELP ("Les Majuscules / minuscules sont ignorées mais pas les accents.");
	SCROLL_HELP ("Il est déconseillé d'utiliser plusieurs mots dans une ligne sauf s'ils sont indissociables comme 'Buffy contre les vampires'.");
	H_LINE();
	SCROLL_INSTRUCTION("Date de l'événement");
	FORM_INPUT ("Année : "+SELECT_HTML(BEF_AFT_TAB, "YEAR_BEF_AFT") +" en", "YEAR", 4, 4);
	FORM_DATA  ("Mois : "+SELECT_HTML(BEF_AFT_TAB, "MONTH_BEF_AFT") +" en", SELECT_HTML(MONTH_TAB, "MONTH"), "");
	FORM_INPUT ("Jour : "+SELECT_HTML(BEF_AFT_TAB, "DAY_BEF_AFT") +" le",   "DAY", 2, 2);
	H_LINE();
	SCROLL_INSTRUCTION("Caractéristiques de l'événement");
	TOTAL_FLAG = FLAG_TAB.length;
	for (CUR_FLAG = 0; CUR_FLAG < TOTAL_FLAG; CUR_FLAG++)
		FORM_DATA (FLAG_TAB[CUR_FLAG][0], SELECT_HTML(YES_NO_TAB, FLAG_TAB[CUR_FLAG][1], "", FLAG_TAB[CUR_FLAG][2]), "")
	H_LINE();
	SCROLL_INSTRUCTION("Couleurs des vêtements d'Alyson");
	FORM_DATA  (SELECT_HTML(COLOR_MODE_TAB, "COLOR_MODE", "ON_CHANGE_COLOR_MODE()") +" couleurs", COLOR_SELECT_HTML(1)+" "+COLOR_SELECT_HTML(2), "");
	SCROLL_HELP ("Pour rechercher seulement une couleur, sélectionnez <span class='keyword'>L'une des deux couleurs</span> et laissez l'une des listes déroulantes de couleurs vide.");
	SCROLL_HELP ("Pour rechercher des images où Alyson ne porte qu'une couleur, sélectionnez <span class='keyword'>Les deux couleurs</span> et laissez l'une des listes déroulantes de couleurs vide.");
	SCROLL_HELP ("Pour rechercher des événements sans couleur associée, sélectionnez <span class='keyword'>Les deux couleurs</span> et laissez les listes déroulantes de couleurs vides.");
	H_LINE();
	SCROLL_BUTTON ("Rechercher", "", "BTN");
	SCROLL_CELL ("<input type='reset' value='R&eacute;tablir la s&eacute;lection'> <input type='button' value='Effacer la s&eacute;lection' onClick='CLEAR_CRITERIA_FORM()'>", "");
	BOT_SCROLL ();
	DOC_TEXT += "</form><p class='count'>Cette page a été visitée <img src='/Temple/counter.php?RP=lpdg_Bio%5ESelect'/> fois depuis sa création.</p>";
	PAGE_FOOTER();
}

function COLOR_SELECT_HTML (NUMBER)
{
	INIT_COLOR = (eval ("typeof(TEXT_COLOR"+NUMBER+")") != "undefined") ?
			eval ("TEXT_COLOR"+NUMBER) : "";
	RESULT = "<select name='TEXT_COLOR"+NUMBER+"' onChange='ON_CHANGE_COLOR(this)'>";
	for (I = 0; I < COLOR_TAB.length; I++)
		RESULT += OPTION_HTML (COLOR_TAB[I], COLOR_TAB[I], (COLOR_TAB[I]==INIT_COLOR));
	return RESULT + "</select>";
}

function BEGIN_RESULT (RESULT_COUNT)
{
	INIT_BIO();
	PAGE_HEADER_BASE ("Résultat de la recherche", "BIO_CHF()", "bio", "RMAWARDS");
	TOP_SCROLL (false);
	SCROLL_TITLE ("Critères de la recherche")
	TEXT_SEARCH ("La description contient");

	if ((DAY != "")
	||  ((MONTH != "") && (MONTH != "0"))
	||  (YEAR != ""))
	{
		SCROLL_SUBTITLE ("Date");
		DATE_FILTER = "";
		if ((DAY_BEF_AFT == 0) && (DAY != ""))
			DATE_FILTER = "Le " + DAY + " ";
		if ((MONTH_BEF_AFT == 0) && (MONTH != "0") && (MONTH != ""))
		{
			if (DATE_FILTER == "")
				DATE_FILTER += "En ";
			DATE_FILTER += MONTH_TAB[MONTH] + " ";
		}
		if ((YEAR_BEF_AFT == 0) && (YEAR != ""))
		{
			if (DATE_FILTER == "")
				DATE_FILTER += "En ";
			DATE_FILTER += YEAR;
		}
		if ((YEAR_BEF_AFT > 0) && (YEAR != ""))
			DATE_FILTER += BEF_AFT_TAB [YEAR_BEF_AFT] + " en " + YEAR + " ";
		if ((MONTH_BEF_AFT > 0) && (MONTH != "0") && (MONTH != ""))
			DATE_FILTER += BEF_AFT_TAB [MONTH_BEF_AFT] + " en " + MONTH_TAB[MONTH] + " ";
		if ((DAY_BEF_AFT > 0) && (DAY != ""))
			DATE_FILTER += BEF_AFT_TAB [DAY_BEF_AFT] + " le " + DAY;
		SCROLL_INSTRUCTION (DATE_FILTER);
	}

	FIRST = true;
	FLAG_TEXT = "";
	TOTAL_FLAG = FLAG_TAB.length;
	for (I = 0; I < TOTAL_FLAG; I++)
		if ((eval("typeof("+FLAG_TAB [I][1]+")") != "undefined")
		&&  (eval (FLAG_TAB [I][1]) > 0))
		{
			if (FIRST)
				FIRST = false;
			else
				FLAG_TEXT += ", ";
			if (eval (FLAG_TAB [I][1]) == 1)
				FLAG_TEXT += FLAG_TAB [I][0];
			else
			{
				FLAG_FIRST = FLAG_TAB [I][0].substring(0,1);
				FLAG_FIRST = FLAG_FIRST.toLowerCase();
				switch (FLAG_FIRST)
				{
				case "a": case "e": case "i": case "o": case "u": case "y": case "h":
					NEGATION = "Pas d'";
					break;
				default:
					NEGATION = "Pas de ";
				}
				FLAG_TEXT += NEGATION + FLAG_FIRST + FLAG_TAB [I][0].substring(1);
			}
		}
	if (!FIRST)
	{
		SCROLL_SUBTITLE ("Caractéristiques requises");
		SCROLL_INSTRUCTION (FLAG_TEXT);
	}

	if (COLOR_MODE != 0)
	{
		SCROLL_SUBTITLE ("Couleur des vêtements d'Alyson");
		COLOR_TEXT = "";
		if (TEXT_COLOR1 != "")
			COLOR_TEXT = TEXT_COLOR1;
		if ((TEXT_COLOR1 != "") && (TEXT_COLOR2 != ""))
			COLOR_TEXT += (COLOR_MODE == 1) ? " ou " : " et ";
		if (TEXT_COLOR2 != "")
			COLOR_TEXT += TEXT_COLOR2;
		if ((TEXT_COLOR1 == "")
		  && (TEXT_COLOR2 == ""))
			COLOR_TEXT = "Sans couleur associée";
		else if ((COLOR_MODE == 2)
		&&  ((TEXT_COLOR1 == "")
		  || (TEXT_COLOR2 == ""))
		)
		  	COLOR_TEXT += " uniquement";
		SCROLL_INSTRUCTION (COLOR_TEXT);		
	}

	H_LINE();
	PLURAL = (RESULT_COUNT>1) ? "s" : "";
	SCROLL_SUBTITLE (RESULT_COUNT.toString()+" entrée"+PLURAL+" trouvée"+PLURAL);

	if (PT > 1)
	{
		H_LINE();
		PAGE_TABLE (P, PT, PREF);
	}
	BOT_SCROLL();
	TOP_MARBRE ("Résultat de la recherche");
}

YEAR_INDEX = 0;
function SPAN_YEAR (YEAR)
{
	DOC_TEXT += "<tr><td class='date'";
	SPAN = YEAR_SPAN_TAB[YEAR_INDEX];
	if (SPAN > 1)
		DOC_TEXT += " rowspan="+SPAN;
	DOC_TEXT += ">"
	if (YEAR.length == 4)
		DOC_TEXT += "<div>"+YEAR.charAt(0)+"<br/>"+YEAR.charAt(1)+"<br/>"+YEAR.charAt(2)+"<br/>"+YEAR.charAt(3)+"</div>";
	else
		DOC_TEXT += " ";
	DOC_TEXT += "</td>";

	YEAR_INDEX ++;
	FIRST_YEAR_ROW = true;
}

function BIO_ROW (NAME, FILENAME, TEXT, PUB, IMAGE, SPAN, DATE, FLAGS, COLORS, MOVIES)
{
	if (FIRST_YEAR_ROW)
		FIRST_YEAR_ROW = false;
	else
		DOC_TEXT += "<tr>";
	if (PUB.length > 0)
		PUB = "<div class='pub'>"+PUB+"</div>";
	FLAG_TEXT = "";
	TOTAL_FLAG = FLAGS.length;
	for (I = 0; I < TOTAL_FLAG; I++)
		FLAG_TEXT += FLAGS[I] + "/";

	LEADING = "<object height='0' width='0'><param name='DATE' value='";
	LEADING += DATE + "'/><param name='FLAGS' value='" + FLAG_TEXT + "'/><param name='COLOR' value='" + COLORS;
	LEADING += "' /></object><a title='Lien vers cette entr&eacute;e dans la biographie d\'Alyson Hannigan' href='" + FILENAME;
	LEADING += "#" + NAME + "' target='_top' class='self'><span>(ici) </span></a>"
	for (I = 0; I < MOVIES.length; I++)
	{
		LEADING += "<a target='_top' href='http://crypte.temple-alyson.net/Video-divx/";
		LEADING += MOVIES[I][2] + "/index.html#" + MOVIES[I][1] + "-" + MOVIES[I][0];
		LEADING += "' class='movie' title='Vidéo liée à cet événement'><span>(la vidéo) </span></a>";
	}
	DOC_TEXT += "<td class='info' rowspan='" + SPAN + "'>";
	DOC_TEXT += TEXT.replace(/^(<p>)?(.*)$/, "$1"+LEADING+"$2") + PUB + '</td><td class="img"><a id="' + NAME + '" name="' + NAME + '"></a>'
			    + (IMAGE.replace(/<\|>/g,"</td></tr><tr><td class='img'>")) + "</td></tr>";
}

function EMPTY_ROW()
{
	DOC_TEXT += ("<tr><td>Aucune entrée trouvée</td></tr>");
}

