// ----------------------------------------------------------------------------
// Lauyan Software Javascript Search Engine 1.0
//
// This file is the JavaScript search engine for a website created by TOWeb
//
// Copyright (C) LAUYAN SOFTWARE
// web: http://www.lauyan.com
// ----------------------------------------------------------------------------

STR_SEARCH_QUERY_MSG = "Résultats de la recherche pour";
STR_NO_RESULT = "Aucun résultat trouvé";
STR_SEARCH_BUTTON = "Rechercher";
STR_SCORE = "Score";
STR_TERMS = "Termes";
STR_SEARCH_SIZE = "40";
MIN_WORD_LEN = 2;
DISPLAY_SRCH_INFO = 1;
USE_UTF8 = 0;
REMOVE_ACCENTS = 1;
BOLD_LINKS = 1;
ONLINE_WEBSITE = 1;

namesArray = new Array(" ufe danmark danemark  ",
" ago ufe representation danemark fevrier 2009 bureau ses membres sont reunis leur assemble generale ordinaire samedi restaurant figaro sur copenhague apres aperitif bienvenue son president pascal badache procede l'ouverture l'ago presente ordre jour bilan activites l'annee 2008 secretaire general financier moral tresorier programme l'ensemble pays aura ete propose vice-president adopte present toast debut d'annee remerciements suivi comme peuvent temoigner quelques photos ci-jointes ",
" trombinoscope l'equipe ufe danemark complet cliquez sur chaque photo obtenir coordonnees role chacun sein l' ",
" ufe avenir danemark  ",
" formulaire contact  ",
" associations francaises danemark vie associative francaise est tres active nombreuses sont ayant objet rassembler francais sur cette page trouverez coordonnees nos principales  ",
" alliances francaises danemark reseau regional tres actives  ",
" autres sites internet d'information apres trouverez quelques liens utiles non exhaustifs permettant d'acceder aux informations complementaires disponibles aupres autorites tutelle francaises danoises  ",
" liste consuls honoraires france danemark role sont premiers relais l'ambassade dans leur circonscription fionie jutland bornholm groenland aux iles feroe ils contact privilegie francais installes region passage ville interlocuteurs privilegies autorites locales organisent enfin visites l'ambassadeur membres son equipe regions consul honoraire peut faire demarches aider cas suivants etablissement d'une carte nationale d'identite securisee prise empreinte digitale remise cartes passeports directement depot d'un dossier legalisation signatures aide assistance difficulte notamment arrestation incarceration judiciaire accident grave maladie deces proches l'animation communaute francaise apres trouverez coordonnees completes presents ",
" implantations  ",
" bonnes raisons devenir membre  ",
" privileges carte ufe sont nombreux comme pourrez voir dans pages suivantes l'on peut citer tarification allegee majorite hotels groupe accor france aussi l'etranger locations voitures chez europcar avis entres autres loisirs spectacles grands magasins parisiens societes service soutien scolaire conseils sejours vacances voyages  ",
" cotisations ufe danemark annee 2008 est association reconnue d'utilite publique ouvrant droit aux deductions fiscales neanmoins l'usage nos services n'est accessible qu'aux membres dont sont jour schema annuel cotisation suivant individuel 400 cd	 couple 500 reduite 300 etudiant sans emploi pouvez cotiser virement bancaire sur compte section lokalbanken nørregade 3300 frederiksvaerk guichet 6301 1639633 transmettre coordonnees completes remplissant formulaire disponible page contacts avec remerciements nom toute l´equipe representation  ",
" frequently asked questions  ",
" activites 2009  ",
" archives bulletins 2007-2009  ",
" voix france decembre 2008  ",
" tournoi petanque gentofte mai 2009 concours decidement petit air cannebiere s'est installe sur copenhague l'ufe ses amis ainsi club sont entres lice plus honorable convivial amical nouveau pas nommer l'ambiance fut agreable effet messire soleil jusque-la avare rayons prodigue avec bonheur belles eclaircies tout dans frais permettant nos esprits echauffes competition rester vifs alertes sans ripailles avons restaurer milieu journee excellent couscous quelques bons vins pays meilleurs elements furent naturellement recompenses comme soulignait juste titre notre national pierre coubertin finalement l'important c'est participer lors attendons impatience prochaine edition pourrons mesurer fois toute amitie… quand tiens… patrice dubois secretaire general ufe representation danemark ",
" impressionants impressionnistes impressionnant… ballade plus membres ufe cette fois-ci dans cadre exceptionnel fascinant glyptotek batiment erige comme l'image son fondateur carl jakobsen 1842-1914 raffine enrichissant fois homme d'affaire avise esthete patente celebre brasseur reunira magnifique collection scupltures etrusques d'objets egyptiens d'œuvres periode danoise dites l'age d'or sans oublier fort belle peintures dont l'evocation leurs noms suffisent evoquer univers pictural hors-du-commun manet monet pissaro sisley encore renoir conduire passionnant vincent terrasson fougeres historien secretaire notre representation fut guide averti precis eloquent sut conter l'histoire mouvement artistique suscitant toujours interet revolution romantique gericault delacroix puis realiste courbet millet naturaliste peintres l'ecole barbizon daubigny rousseau troyon corot explications s'enchainent expliquant qu´une nouvelle peinture prendra nom d'impressionnisme 1874 verra jour france entre 1860 1890 s'appelleront selon contexte annees independants intransigeants groupe batignolles impressionistes meneront combat commence contre poussiere d'un art d'atelier vieilli aux conventions trop solidement etablies faire admettre reconnaitre contemporaine rejetant definitivement recherche chere classiques bel ideal d'une essence eternelle choses sera l'aboutissement serie reflexions d'intentions l'ont precedee celle pre-impressionnistes rencontres saint-simeon honfleur boudin jongkind dubourg jeune frequentait l´academisme pointillisme jusqu´a picasso saura garder haleine apprendre mieux connaitre tout simplement decouvrir dire impressionnant patrice dubois adjoint danemark ",
" tournoi petanque braband septembre 2008 concours dimanche l'union francais l'etranger section jutland organise francophones region partenariat avec club brabrand quarantaine personnes aarhus aalborg encore viborg participer cette journee rencontrer dans ambiance conviviale decontractee presence yann delaunay chef consulaire l'ambassade remis coupe vainqueur meteo d'une fin mois etait convivialite plaisir retrouver tout autant deja d'evoquer prochain jule frokost parties belote tombola l'objectif rassembler population francophone trouver aura ete atteint premier essai contacts ont noues prochaines fois sont programmees grand merci tous d'etre venu tres bientot nom ufe representation danemark ",
" tournoi petanque gentofte mai 2008 concours organisee ufe danemark collaboration avec club seconde edition cette annee ete veritable succes semble l'equipe organisatrice trouver bons ingredients concocter excellente recette d'abord question meteo chaque jour semaine precedent l'annonce temps etait surveillee pres tous outils disposition site web bulletins tele radio scrutation quotidienne ciel ecoute attentive dictons analyse serieuse comportements insectes oiseaux tout parait bonne augure effectivement soleil est reste spectateur assidu tireurs pointeurs ensuite participation premieres inscriptions sont enregistrees 9h30 jusqu'a 11h plus participants prennent leur badge numerote autant danois francais d'hommes femmes debutants passionnes jeunes moins peut alors commencer puis ambiance triplette equipes composent decomposent recomposent chacun l'occasion faire connaissance nouveaux partenaires jeux peuvent mesurer fort faible chanceux strategies jeu developpent s'improvisent points gagnent perdent exclamations joie deception font entendre apres pause dejeuner cours laquelle barbecue aura mal fournir grillades derniers matches jouent enfin vient l'attente resultat calcule compare recompte renseigne cumules uns autres verdict sans appel lots reviennent evidemment aux forts n'ont pas demerite l'essentiel n'est-il participer decemment conclure reussite merci l'ufe ainsi qu'a souhaitons ces soient perdus prochaine ",
" sortie ecologique avril 2008 vachement bien occasion l'arrivee printemps pres couvrent fleurs nouvelles colorees l'air soudainement change quoi plus naturel ufe ses menbres saluer nouvelle saison promenade grand air s'imposait munis d'une solide bonne humeur train voiture nous sommes rendus dans nord sealland nature danoise retour beaux jours ainsi premiere belles vaches rousses elevees maniere pressees ruminer leur herbe tendre rendez-vous n'etait d'ailleurs pas anodin car beaucoup monde s'y pressait ces dames etait tres attendue unique boire lait savoureux sorti circuits traditionnels restaurer la-meme l'abri cette ferme charmante lionnel jean proprietaire bar vin figaro gentillement offert degustation charcuteries fromages francais fut agreable apres-midi permettant retrouver respirer bon avant notre ville activite saine recommencer certainement prochainement comme suggere reportage photos ",
" voix france decembre 2007  ",
" galette rois 2008 bien demarrer l'annee ufe avais invite dimanche janvier l'ensemble ses membres leurs familles feter l'epiphanie tirer feve remi seurre ancien patissier aupres boulangerie marie-france frederiksberg avait mis tout son talent renommee creation danemark celle-ci etait accompagnee non moins traditionnelle bolee cidre dans locaux disposition citroen tenue egalement preambule degustation conseil d'administration assemblee generale ordinaire annuelle  ",
" petanque gentofte amicale juin ",
" activites 2007 sortie peche mer mai copenhague  ",
" archives 2008 2009 ",
"  ",
" use this template start empty web page ",
" http blog ufedanemark home ",
" www facebook com  ",
" recherchez dans site  ",
"  ",
" commentaires ligne remercions suggestions feedbacks propositions participation d'agenda tout souhaiterez voir etremis plac epar ufe danemark aujourd'hui demain ici la ",
" presentation danemark  ",
" http www one com webmail ",
"  ",
"  ",
"  ");
urlsArray = new Array("../accueil/index.html",
"../assembleegeneral/index.html",
"../bureauufe/index.html",
"../ufeavenir/index.html",
"../contactezlufe/index.html",
"../hyperliensassoci/index.html",
"../alliancesfrancai/index.html",
"../topic7/index.html",
"../consulshonoraire/index.html",
"../mapage1/index.html",
"../mapage/index.html",
"../avantagescarte/index.html",
"../cotisation/index.html",
"../topic3/index.html",
"../activites/index.html",
"../catalogue/index.html",
"../articledepresse2/index.html",
"../petanquemai20081/index.html",
"../sortieimpression/index.html",
"../petanquebraband/index.html",
"../petanquemai2008/index.html",
"../kodag/index.html",
"../diplome/index.html",
"../albumphotonb/index.html",
"../activites2007/index.html",
"../sortiepeche/index.html",
"../bulletinufe7jour/index.html",
"../topic1/index.html",
"../communautes/index.html",
"../blogufe/index.html",
"../website/index.html",
"../recherche/index.html",
"../topic4/index.html",
"../inscription/index.html",
"../ledanemarkenbref/index.html",
"../boitemailbureauu/index.html",
"../mapage4/index.html",
"../museedesartsdeco/index.html",
"../visitemairieaarh/index.html");
titlesArray = new Array("Union des Français de l'Etranger - Représentation du Danemark ",
"AGO UFE Représentation du Danemark le 07 Février 2009",
"Trombinoscope",
"UFE Avenir Danemark",
"Formulaire de contact",
"Associations françaises au Danemark",
"Alliances Françaises au Danemark",
"Autres Sites Internet d'Information",
"Liste des Consuls Honoraires de France au Danemark",
"Implantations",
"8 bonnes raisons de devenir membre",
"Privilèges de la carte UFE",
"Cotisations UFE Danemark - Année 2008",
"Frequently Asked Questions",
"Activités 2009",
"Archives Bulletins 2007-2009",
"La Voix de France - Décembre 2008",
"Tournoi de Pétanque de Gentofte  - 23 mai 2009",
"Impressionants Impressionnistes",
"Tournoi de Pétanque de Braband - 28 septembre 2008",
"Tournoi de Pétanque de Gentofte  - 25 mai 2008",
"Sortie écologique Avril 2008",
"La Voix de France - Décembre 2007",
"Galette des Rois 2008",
"Activités 2007",
"Activités 2007",
"Archives 2008 & 2009",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !",
"http://blog.ufedanemark.dk/#home",
"www.facebook.com",
"Recherchez dans le site",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !",
"Commentaires en ligne",
"Présentation du Danemark",
"http://www.one.com/da/webmail",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !",
"Union des Français de l'Etranger Danemark - Aucun Français n'est seul à l'étranger !");
descArray = new Array("Accueil Danemark UFE Jutland expatriés association loi 1901 Épiphanie",
" Le Bureau UFE Représentation du Danemark, et ses membres, se sont réunis pour leur Assemblé Générale Ordinaire le samedi 07 Février 2009 au Restauran...",
"Pascal Badache Laurent Dorey Rémi Seurre Vincent de Fougères Terasson Bernard Jacky Président Secrétaire Trésorier Vice-président Antenne",
"Bénédicte Spies Avenir jeunes  international",
"contact coordonnées formulaire",
"Amicale Dominique Frey  ALLERØD francophones Isabelle Savignac Cecilie Frederiksen ACCUEIL Delphine Laude CHARLOTTENLUND fonctionnaires François-Xavie...",
"Alliances FREDERICIA FREDERIKSHAVN HADERSLEV HELSINGØR KØBENHAVN ODENSE RANDERS ROSKILDE SØNDERBORG VESTJYLLAND VIBORG VORDINGBORG ÅBENRÅ ÅLBORG ÅRHUS",
"autorités MFE Maison  Ministère Affaires Etrangères Femmes France diplomatie Travailler vivre Offres emploi ",
"Rôle des consuls honoraires  - Les consuls honoraires sont les premiers relais de l'ambassade de France au Danemark dans leur circonscription, en Fion...",
"",
"raisons membre information dossiers-pays livret d'accueil consultations réseau Représentations animation convivialité manifestations soirées participa...",
"Privilèges carte hôtels Accor locations Voitures Europcar Avis loisirs spectacles grands magasins  soutien scolaire séjours vacances voyages Solidarit...",
"Virement Bancaire PayPal Cotisations Règlement membres Lokalbanken Guichet  Compte individuelle couple réduite étudiant  sans emploi ",
"adhérer  expériences connaissances rencontrer déduire  impôts loi 1901 association",
"Galette  Rois 13 janvier  Tournoi   pétanque  25 Mai  Århus pêche en mer  ",
"bulletin trimestriel  information  actualités Archives",
"",
"Concours Pétanque Mai 2009 - Gentofte  Décidément un petit air de Cannebière s'est installé sur Copenhague, l'UFE et ses amis, ainsi que le club de Ge...",
"Impressionnant…  Une ballade de plus pour  les membres de l'UFE…   Cette fois-ci dans le cadre exceptionnel et fascinant de la Glyptotek… Bâtiment éri...",
"Concours Pétanque Septembre 2008 - Braband  Dimanche 28 septembre, l'Union des Français de l'étranger, section Jutland, a organisé un tournoi de pétan...",
"Concours Pétanque Mai 2008 - Gentofte  Organisée par l'UFE Danemark en collaboration avec le Pétanque Gentofte Club, la seconde édition du tournoi de ...",
"Økodag Kov Printemps ",
"",
"Galette Citröen Rémi Epiphanie",
"Pétanque Juin  Gentofte Amicale Française  Concours triplette ",
"Sortie pêche en mer Mai 2007 - Copenhague ",
"Lettre  électronique Archives 7 jours",
"",
"Use this template to start an empty web page.",
"",
"",
"",
"",
"Nous vous remercions de vos suggestions, feedbacks, propositions de participation, d'agenda, et de tout ce que vous souhaiterez voir êtremis en plac e...",
"Données géographiques démographiques économiques",
"",
"",
"",
"");
sublinksArray = new Array(39);
var linksCount = 39;


ALLWORDSONLY = false;

// getParam returns the value of the specified GET parameter
function getParam(paramName)
{
    paramStr = document.location.search;
    if( paramStr == "" )
        return "";
    if( paramStr.charAt(0) == "?" )
        paramStr = paramStr.substr(1);
    arg = (paramStr.split("&"));
    for( i=0; i<arg.length; i++ ) 
    {
      arg_values = arg[i].split("=")
      if( unescape(arg_values[0]) == paramName ) 
      {
         if( USE_UTF8 == 1 && self.decodeURIComponent ) // check if decodeURIComponent() is defined
            ret = decodeURIComponent(arg_values[1]);
         else
            ret = unescape(arg_values[1]);  // IE 5.0 and older does not have decodeURI
         return ret;
      }
    }
    return "";
}

function replaceAll(str,from,to) 
{
    var idx = str.indexOf(from);
    while( idx > -1 ) {
        str = str.replace(from, to); 
        idx = str.indexOf(from);
    }
    return str;
}

// lowercase, remove quotes and accents
function formatChars(str) 
{
    str = str.toLowerCase();
    if( REMOVE_ACCENTS ) 
    {
      var a = "àáâãäåòóôõöèéêëçìíîïùúûüÿñ";
      var b = "aaaaaaoooooeeeeciiiiuuuuyn";
      for( i=0; i<a.length; i++ )
        str = replaceAll( str, a.charAt(i), b.charAt(i) );
    }
    str = replaceAll( str, "'", " " );
    return str;
}

function SortCompare(a, b)
{
  if( a[2] == b[2] )
  {  
    if (a[1] < b[1]) return 1;
    else if (a[1] > b[1]) return -1;
    else return 0;
  }
  else if (a[2] < b[2]) return 1;
    else return -1;
}

function jseSearch( internal )
{
  // get params
  var rootURL = '';
	var SelfURL = document.location.href;
  var paramIndex = SelfURL.indexOf("?");    
  if (paramIndex > -1)
     SelfURL = SelfURL.substr(0, paramIndex);
  paramIndex = SelfURL.indexOf("#");
  if (paramIndex > -1)
    SelfURL = SelfURL.substr(0, paramIndex);        
	if (ONLINE_WEBSITE) 
	{
		paramIndex = SelfURL.lastIndexOf('/');
		if (paramIndex > -1) 
		{
			rootURL = SelfURL.substr(0, paramIndex);
			paramIndex = rootURL.lastIndexOf('/');
			if (paramIndex > -1) {
				rootURL = SelfURL.substr(0, paramIndex+1);
			} else
			  rootURL = '';
		}
	}	
  SelfURL = SelfURL.replace(/\</g, "&lt;");
  SelfURL = SelfURL.replace(/\"/g, "&quot;");

  var query = getParam("jse_query");
  query = query.replace(/[\++]/g, " ");  // replace any '+' with spaces
  query = query.replace(/\</g, "&lt;");
  query = query.replace(/[\"+]/g, " ");

  // display the search form
  var lnktarget = "";
	if( internal == null || internal != 1 )
	{
    document.writeln("<form method=\"get\" action=\"" + SelfURL + "\">");
    document.writeln("<input type=\"text\" name=\"jse_query\" size=\"" + STR_SEARCH_SIZE + "\" value=\"" + query + "\" />");
    document.writeln("<input type=\"submit\" value=\"" + STR_SEARCH_BUTTON + "\" />");
    document.writeln("</form>");
  }	
	else
	{
	 lnktarget = "\" target=\"_blank";
  }
	query = formatChars(query);
  if( query.length == 0 ) return;
  
  var found=0, t=0, k=0, score=0, subscore=0, i=0;
  var keyword = "", tmp = "";
  var searchWords = new Array();

  // split search query by spaces
  searchWords = query.split(" ");
	if( internal == null || internal != 1 ) {
		document.writeln( "" + STR_SEARCH_QUERY_MSG + " : <strong>" +query+"</strong><br>");
  }
  // init result table information
  res_table = new Array(linksCount);
  for( t=0; t<linksCount; t++ )
  {
    res_table[t] = new Array(3);
    res_table[t][0] = 0;  // index
    res_table[t][1] = 0;  // score
    res_table[t][2] = 0;  // words found
    res_table[t][3] = ""; // sublinks (output string)
  }
  var significantwords = 0;
  
  // begin search ...
  for( i=0; i<searchWords.length; i++ )
  {
    keyword = searchWords[i];
    if( keyword.length > MIN_WORD_LEN ) // skip "small" words
	{
	  significantwords++;
	  for(var q=0; q<linksCount; q++ )
	  {
	    t = q;
	    score = 0;
	
	    // search for keywords (an exact word doubles the score)
		  tmp = formatChars(descArray[t]);
	    if( tmp.indexOf(keyword) != -1 ) score++;
	    if( tmp.indexOf(' '+keyword+' ') != -1 ) score+=2;
		  tmp = formatChars(titlesArray[t]);
	  	if( tmp.indexOf(keyword) != -1 ) score++;
		  if( tmp.indexOf(' '+keyword+' ') != -1 ) score+=2;
	    if( namesArray[t].indexOf(keyword) != -1 ) score++;
	    if( namesArray[t].indexOf(' '+keyword+' ') != -1 ) score+=2;
	
		// search for keywords in sublinks (i.e. bookmarks)
	    k = q+1;
		while( k <= linksCount )
		{
			tmp = descArray[k];
			if( tmp == null || tmp.charAt(0) != '&' ) break;
			subscore = 0;
			tmp = formatChars(descArray[k]);
			if( tmp.indexOf(keyword) != -1 ) subscore++;
			if( tmp.indexOf(' '+keyword+' ') != -1 ) subscore+=2;
			tmp = formatChars(titlesArray[k]);
			if( tmp.indexOf(keyword) != -1 ) subscore++;
			if( tmp.indexOf(' '+keyword+' ') != -1 ) subscore+=2;
			if( namesArray[k].indexOf(keyword) != -1 ) subscore++;
			if( namesArray[k].indexOf(' '+keyword+' ') != -1 ) subscore+=2;
			
			if( subscore > 0 )
			{
				if( res_table[t][3].indexOf( "\"" + urlsArray[k] + "\"" ) == -1 )
					res_table[t][3] += "<tr><td width='35'>&nbsp;</td><td><a href=\"" + urlsArray[k] + lnktarget + "\">" + titlesArray[k] + "</a></td></tr>";
//	           		if( B OLD_LINKS )  res_table[t][3] += "<tr><td width='50'>&nbsp</td><td><b><a href='" + urlsArray[k] +"'>" + titlesArray[k] + "</a></b></td></tr>";
				score += subscore;
			}	
			k++;
		}
		q = k-1;
		
	    if( score > 0 )
	    {
	      res_table[t][0] = t;
	      res_table[t][1] += score;
	      res_table[t][2]++;
	      found++;
	    }
	  }
	}
  }
  if( found == 0 ) 
  {
    document.write("<p><b>" + STR_NO_RESULT + "</b></p>");
  } 
  else 
  {
	 // sort by words found and scores
    res_table.sort(SortCompare);	
	
    // display the results
    for( q=0; q<found; q++ )
      if( res_table[q][1] > 0 ) // display only results with a positive score
	  if( !ALLWORDSONLY || (ALLWORDSONLY && res_table[q][2] == significantwords) )
	    {
        t = res_table[q][0];    // get page index
        if( BOLD_LINKS ) {
          document.writeln("<br><b>" + (q+1) + ". <a href=\"" + urlsArray[t] + lnktarget + "\">" + titlesArray[t] + "</a></b>" );
        } else
          document.writeln("<br><b>" + (q+1) + ".</b> <a href=\"" + urlsArray[t] + lnktarget + "\">" + titlesArray[t] + "</a>" );
        if( descArray[t].length > 2 )
          document.writeln("<br>" + descArray[t]);
        if( DISPLAY_SRCH_INFO ) 
		{
			document.write("<br><span style='font-size: 80%; font-style: italic;'>");
			if( !ALLWORDSONLY )
				document.write("" + STR_TERMS + ": " + res_table[q][2] + " - " );
			document.write("" + STR_SCORE + ": " + res_table[q][1] );
			if (ONLINE_WEBSITE) {
			  document.writeln(" - URL: " + rootURL + urlsArray[t].substr(3) + "</span>");
			}	else
			  document.writeln(" - URL: " + urlsArray[t] + "</span>");
      	}
				if( res_table[q][3].length > 0 ) { 
      	  document.writeln( '<table>' + res_table[q][3] + '</table>' );
      	} else document.writeln("<br>");
      }
  }
  document.writeln("<br>");
}

