//=============================================================================//
//                              FONCTIONS AJAX                                 //
//=============================================================================//
//Pour rcuprer une liste de sous catgorie en fonction d'un Id d'une catgorie
//pass en paramtre (ici Cat_Parent_Id)
//La variable Cible est l'id du conteneur qui doit recevoir la liste
function Ajax_Get_Rubriques_By_Ville(Cat_Parent_Id, Cible) {

		var url = '/Ajax_Get_Rubriques_By_Ville.php';
		var parametres = "CAT_PARENT_ID="+Cat_Parent_Id;
		
		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			parameters: parametres
  			}
		);

}


//Pour ajouter une nouvelle ville
//passe en paramtre (ici NewVille)
//La variable Cible est l'id du conteneur qui doit recevoir la nouvelle ville
function Ajax_Add_New_Ville(LibNewVille, Cible){

		var url = '/Ajax_Add_New_Ville.php';
		var parametres = "LIB_NEW_VILLE="+LibNewVille;

		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			parameters: parametres
  			}
		);
} 

//Pour ajouter une nouvelle rubrique
//passe en paramtre (ici NewRubrique)
//La variable Cible est l'id du conteneur qui doit recevoir la nouvelle rubrique
function Ajax_Add_New_Rubrique(LibNewRubrique, CatParentId, Cible){
		var url = '/Ajax_Add_New_Rubrique.php';
		var parametres = "LIB_NEW_RUBRIQUE="+LibNewRubrique+"&CAT_PARENT_ID="+CatParentId;

		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			parameters: parametres
  			}
		);
} 


//Pour rcuprer une liste de sous catgorie en fonction d'un Id d'une catgorie
//pass en paramtre (ici Cat_Parent_Id)
//La variable Cible est l'id du conteneur qui doit recevoir la liste
//Fonction spciale pour l'annuaire
function Ajax_Get_Rubriques_By_Ville_Annuaire(Cat_Parent_Id, Cible) {

		var url = '/Ajax_Get_Rubriques_By_Ville_Annuaire.php';
		var parametres = "CAT_PARENT_ID="+Cat_Parent_Id;
		
		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			evalScripts: true,
  			parameters: parametres
  			}
		);

}

//Pour afficher la liste des item d'une rubrique d'une ville passe en paramtre (id de la ville)
//et la cible pour afficher le lien
//fonction spciale pour l'annuaire
function Ajax_GoTo_Rubrique(Rub_Id,Cible){
  var url = '/Ajax_GoTo_Rubrique.php';
		var parametres = "RUB_ID="+Rub_Id;

		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			evalScripts: true,
  			parameters: parametres
  			}
		);
		
}

//Pour afficher la liste des item d'une ville qui n'a pas de sous catgorie passe en paramtre (id de la ville)
//et la cible pour afficher le lien
//fonction spciale pour l'annuaire
function Ajax_GoTo_Ville(Ville_Id,Cible){
  var url = '/Ajax_GoTo_Ville.php';
		var parametres = "VILLE_ID="+Ville_Id;

		new Ajax.Updater(
			  Cible,
  			url,
  			{
  			method: 'post',
  			evalScripts: true,
  			parameters: parametres
  			}
		);
		
}

//Encode une chane
function htmlentities(texte) {
	texte = texte.replace(/"/g,'&quot;'); // 34 22
	texte = texte.replace(/&/g,'&amp;'); // 38 26
	texte = texte.replace(/\'/g,'&#39;'); // 39 27
	texte = texte.replace(/</g,'&lt;'); // 60 3C
	texte = texte.replace(/>/g,'&gt;'); // 62 3E
	texte = texte.replace(/\^/g,'&circ;'); // 94 5E
	texte = texte.replace(//g,'&lsquo;'); // 145 91
	texte = texte.replace(//g,'&rsquo;'); // 146 92
	texte = texte.replace(//g,'&ldquo;'); // 147 93
	texte = texte.replace(//g,'&rdquo;'); // 148 94
	texte = texte.replace(//g,'&bull;'); // 149 95
	texte = texte.replace(//g,'&ndash;'); // 150 96
	texte = texte.replace(//g,'&mdash;'); // 151 97
	texte = texte.replace(//g,'&tilde;'); // 152 98
	texte = texte.replace(//g,'&trade;'); // 153 99
	texte = texte.replace(//g,'&scaron;'); // 154 9A
	texte = texte.replace(//g,'&rsaquo;'); // 155 9B
	texte = texte.replace(//g,'&oelig;'); // 156 9C
	texte = texte.replace(//g,'&#357;'); // 157 9D
	texte = texte.replace(//g,'&#382;'); // 158 9E
	texte = texte.replace(//g,'&Yuml;'); // 159 9F
	texte = texte.replace(/ /g,'&nbsp;'); // 160 A0
	texte = texte.replace(//g,'&iexcl;'); // 161 A1
	texte = texte.replace(//g,'&cent;'); // 162 A2
	texte = texte.replace(//g,'&pound;'); // 163 A3
	texte = texte.replace(/ /g,'&curren;'); // 164 A4
	texte = texte.replace(//g,'&yen;'); // 165 A5
	texte = texte.replace(//g,'&brvbar;'); // 166 A6
	texte = texte.replace(//g,'&sect;'); // 167 A7
	texte = texte.replace(//g,'&uml;'); // 168 A8
	texte = texte.replace(//g,'&copy;'); // 169 A9
	texte = texte.replace(//g,'&ordf;'); // 170 AA
	texte = texte.replace(//g,'&laquo;'); // 171 AB
	texte = texte.replace(//g,'&not;'); // 172 AC
	texte = texte.replace(//g,'&shy;'); // 173 AD
	texte = texte.replace(//g,'&reg;'); // 174 AE
	texte = texte.replace(//g,'&macr;'); // 175 AF
	texte = texte.replace(//g,'&deg;'); // 176 B0
	texte = texte.replace(//g,'&plusmn;'); // 177 B1
	texte = texte.replace(//g,'&sup2;'); // 178 B2
	texte = texte.replace(//g,'&sup3;'); // 179 B3
	texte = texte.replace(//g,'&acute;'); // 180 B4
	texte = texte.replace(//g,'&micro;'); // 181 B5
	texte = texte.replace(//g,'&para'); // 182 B6
	texte = texte.replace(//g,'&middot;'); // 183 B7
	texte = texte.replace(//g,'&cedil;'); // 184 B8
	texte = texte.replace(//g,'&sup1;'); // 185 B9
	texte = texte.replace(//g,'&ordm;'); // 186 BA
	texte = texte.replace(//g,'&raquo;'); // 187 BB
	texte = texte.replace(//g,'&frac14;'); // 188 BC
	texte = texte.replace(//g,'&frac12;'); // 189 BD
	texte = texte.replace(//g,'&frac34;'); // 190 BE
	texte = texte.replace(//g,'&iquest;'); // 191 BF
	texte = texte.replace(//g,'&Agrave;'); // 192 C0
	texte = texte.replace(//g,'&Aacute;'); // 193 C1
	texte = texte.replace(//g,'&Acirc;'); // 194 C2
	texte = texte.replace(//g,'&Atilde;'); // 195 C3
	texte = texte.replace(//g,'&Auml;'); // 196 C4
	texte = texte.replace(//g,'&Aring;'); // 197 C5
	texte = texte.replace(//g,'&AElig;'); // 198 C6
	texte = texte.replace(//g,'&Ccedil;'); // 199 C7
	texte = texte.replace(//g,'&Egrave;'); // 200 C8
	texte = texte.replace(//g,'&Eacute;'); // 201 C9
	texte = texte.replace(//g,'&Ecirc;'); // 202 CA
	texte = texte.replace(//g,'&Euml;'); // 203 CB
	texte = texte.replace(//g,'&Igrave;'); // 204 CC
	texte = texte.replace(//g,'&Iacute;'); // 205 CD
	texte = texte.replace(//g,'&Icirc;'); // 206 CE
	texte = texte.replace(//g,'&Iuml;'); // 207 CF
	texte = texte.replace(//g,'&ETH;'); // 208 D0
	texte = texte.replace(//g,'&Ntilde;'); // 209 D1
	texte = texte.replace(//g,'&Ograve;'); // 210 D2
	texte = texte.replace(//g,'&Oacute;'); // 211 D3
	texte = texte.replace(//g,'&Ocirc;'); // 212 D4
	texte = texte.replace(//g,'&Otilde;'); // 213 D5
	texte = texte.replace(//g,'&Ouml;'); // 214 D6
	texte = texte.replace(//g,'&times;'); // 215 D7
	texte = texte.replace(//g,'&Oslash;'); // 216 D8
	texte = texte.replace(//g,'&Ugrave;'); // 217 D9
	texte = texte.replace(//g,'&Uacute;'); // 218 DA
	texte = texte.replace(//g,'&Ucirc;'); // 219 DB
	texte = texte.replace(//g,'&Uuml;'); // 220 DC
	texte = texte.replace(//g,'&Yacute;'); // 221 DD
	texte = texte.replace(//g,'&THORN;'); // 222 DE
	texte = texte.replace(//g,'&szlig;'); // 223 DF
	texte = texte.replace(//g,'&agrave;'); // 224 E0
	texte = texte.replace(//g,'&aacute;'); // 225 E1
	texte = texte.replace(//g,'&acirc;'); // 226 E2
	texte = texte.replace(//g,'&atilde;'); // 227 E3
	texte = texte.replace(//g,'&auml;'); // 228 E4
	texte = texte.replace(//g,'&aring;'); // 229 E5
	texte = texte.replace(//g,'&aelig;'); // 230 E6
	texte = texte.replace(//g,'&ccedil;'); // 231 E7
	texte = texte.replace(//g,'&egrave;'); // 232 E8
	texte = texte.replace(//g,'&eacute;'); // 233 E9
	texte = texte.replace(//g,'&ecirc;'); // 234 EA
	texte = texte.replace(//g,'&euml;'); // 235 EB
	texte = texte.replace(//g,'&igrave;'); // 236 EC
	texte = texte.replace(//g,'&iacute;'); // 237 ED
	texte = texte.replace(//g,'&icirc;'); // 238 EE
	texte = texte.replace(//g,'&iuml;'); // 239 EF
	texte = texte.replace(//g,'&eth;'); // 240 F0
	texte = texte.replace(//g,'&ntilde;'); // 241 F1
	texte = texte.replace(//g,'&ograve;'); // 242 F2
	texte = texte.replace(//g,'&oacute;'); // 243 F3
	texte = texte.replace(//g,'&ocirc;'); // 244 F4
	texte = texte.replace(//g,'&otilde;'); // 245 F5
	texte = texte.replace(//g,'&ouml;'); // 246 F6
	texte = texte.replace(//g,'&divide;'); // 247 F7
	texte = texte.replace(//g,'&oslash;'); // 248 F8
	texte = texte.replace(//g,'&ugrave;'); // 249 F9
	texte = texte.replace(//g,'&uacute;'); // 250 FA
	texte = texte.replace(//g,'&ucirc;'); // 251 FB
	texte = texte.replace(//g,'&uuml;'); // 252 FC
	texte = texte.replace(//g,'&yacute;'); // 253 FD
	texte = texte.replace(//g,'&thorn;'); // 254 FE
	texte = texte.replace(//g,'&yuml;'); // 255 FF
	return texte;
}

//emulation de html entities decode pour javascript
//Dcode une chane
function html_entity_decode(texte) {
	texte = texte.replace(/&quot;/g,'"'); // 34 22
	texte = texte.replace(/&amp;/g,'&'); // 38 26	
	texte = texte.replace(/&#39;/g,"'"); // 39 27
	texte = texte.replace(/&lt;/g,'<'); // 60 3C
	texte = texte.replace(/&gt;/g,'>'); // 62 3E
	texte = texte.replace(/&circ;/g,'^'); // 94 5E
	texte = texte.replace(/&lsquo;/g,''); // 145 91
	texte = texte.replace(/&rsquo;/g,''); // 146 92
	texte = texte.replace(/&ldquo;/g,''); // 147 93
	texte = texte.replace(/&rdquo;/g,''); // 148 94
	texte = texte.replace(/&bull;/g,''); // 149 95
	texte = texte.replace(/&ndash;/g,''); // 150 96
	texte = texte.replace(/&mdash;/g,''); // 151 97
	texte = texte.replace(/&tilde;/g,''); // 152 98
	texte = texte.replace(/&trade;/g,''); // 153 99
	texte = texte.replace(/&scaron;/g,''); // 154 9A
	texte = texte.replace(/&rsaquo;/g,''); // 155 9B
	texte = texte.replace(/&oelig;/g,''); // 156 9C
	texte = texte.replace(/&#357;/g,''); // 157 9D
	texte = texte.replace(/&#382;/g,''); // 158 9E
	texte = texte.replace(/&Yuml;/g,''); // 159 9F
	texte = texte.replace(/&nbsp;/g,' '); // 160 A0
	texte = texte.replace(/&iexcl;/g,''); // 161 A1
	texte = texte.replace(/&cent;/g,''); // 162 A2
	texte = texte.replace(/&pound;/g,''); // 163 A3
	texte = texte.replace(/&curren;/g,' '); // 164 A4
	texte = texte.replace(/&yen;/g,''); // 165 A5
	texte = texte.replace(/&brvbar;/g,''); // 166 A6
	texte = texte.replace(/&sect;/g,''); // 167 A7
	texte = texte.replace(/&uml;/g,''); // 168 A8
	texte = texte.replace(/&copy;/g,''); // 169 A9
	texte = texte.replace(/&ordf;/g,''); // 170 AA
	texte = texte.replace(/&laquo;/g,''); // 171 AB
	texte = texte.replace(/&not;/g,''); // 172 AC
	texte = texte.replace(/&shy;/g,''); // 173 AD
	texte = texte.replace(/&reg;/g,''); // 174 AE
	texte = texte.replace(/&macr;/g,''); // 175 AF
	texte = texte.replace(/&deg;/g,''); // 176 B0
	texte = texte.replace(/&plusmn;/g,''); // 177 B1
	texte = texte.replace(/&sup2;/g,''); // 178 B2
	texte = texte.replace(/&sup3;/g,''); // 179 B3
	texte = texte.replace(/&acute;/g,''); // 180 B4
	texte = texte.replace(/&micro;/g,''); // 181 B5
	texte = texte.replace(/&para/g,''); // 182 B6
	texte = texte.replace(/&middot;/g,''); // 183 B7
	texte = texte.replace(/&cedil;/g,''); // 184 B8
	texte = texte.replace(/&sup1;/g,''); // 185 B9
	texte = texte.replace(/&ordm;/g,''); // 186 BA
	texte = texte.replace(/&raquo;/g,''); // 187 BB
	texte = texte.replace(/&frac14;/g,''); // 188 BC
	texte = texte.replace(/&frac12;/g,''); // 189 BD
	texte = texte.replace(/&frac34;/g,''); // 190 BE
	texte = texte.replace(/&iquest;/g,''); // 191 BF
	texte = texte.replace(/&Agrave;/g,''); // 192 C0
	texte = texte.replace(/&Aacute;/g,''); // 193 C1
	texte = texte.replace(/&Acirc;/g,''); // 194 C2
	texte = texte.replace(/&Atilde;/g,''); // 195 C3
	texte = texte.replace(/&Auml;/g,''); // 196 C4
	texte = texte.replace(/&Aring;/g,''); // 197 C5
	texte = texte.replace(/&AElig;/g,''); // 198 C6
	texte = texte.replace(/&Ccedil;/g,''); // 199 C7
	texte = texte.replace(/&Egrave;/g,''); // 200 C8
	texte = texte.replace(/&Eacute;/g,''); // 201 C9
	texte = texte.replace(/&Ecirc;/g,''); // 202 CA
	texte = texte.replace(/&Euml;/g,''); // 203 CB
	texte = texte.replace(/&Igrave;/g,''); // 204 CC
	texte = texte.replace(/&Iacute;/g,''); // 205 CD
	texte = texte.replace(/&Icirc;/g,''); // 206 CE
	texte = texte.replace(/&Iuml;/g,''); // 207 CF
	texte = texte.replace(/&ETH;/g,''); // 208 D0
	texte = texte.replace(/&Ntilde;/g,''); // 209 D1
	texte = texte.replace(/&Ograve;/g,''); // 210 D2
	texte = texte.replace(/&Oacute;/g,''); // 211 D3
	texte = texte.replace(/&Ocirc;/g,''); // 212 D4
	texte = texte.replace(/&Otilde;/g,''); // 213 D5
	texte = texte.replace(/&Ouml;/g,''); // 214 D6
	texte = texte.replace(/&times;/g,''); // 215 D7
	texte = texte.replace(/&Oslash;/g,''); // 216 D8
	texte = texte.replace(/&Ugrave;/g,''); // 217 D9
	texte = texte.replace(/&Uacute;/g,''); // 218 DA
	texte = texte.replace(/&Ucirc;/g,''); // 219 DB
	texte = texte.replace(/&Uuml;/g,''); // 220 DC
	texte = texte.replace(/&Yacute;/g,''); // 221 DD
	texte = texte.replace(/&THORN;/g,''); // 222 DE
	texte = texte.replace(/&szlig;/g,''); // 223 DF
	texte = texte.replace(/&agrave;/g,''); // 224 E0
	texte = texte.replace(/&aacute;/g,''); // 225 E1
	texte = texte.replace(/&acirc;/g,''); // 226 E2
	texte = texte.replace(/&atilde;/g,''); // 227 E3
	texte = texte.replace(/&auml;/g,''); // 228 E4
	texte = texte.replace(/&aring;/g,''); // 229 E5
	texte = texte.replace(/&aelig;/g,''); // 230 E6
	texte = texte.replace(/&ccedil;/g,''); // 231 E7
	texte = texte.replace(/&egrave;/g,''); // 232 E8
	texte = texte.replace(/&eacute;/g,''); // 233 E9
	texte = texte.replace(/&ecirc;/g,''); // 234 EA
	texte = texte.replace(/&euml;/g,''); // 235 EB
	texte = texte.replace(/&igrave;/g,''); // 236 EC
	texte = texte.replace(/&iacute;/g,''); // 237 ED
	texte = texte.replace(/&icirc;/g,''); // 238 EE
	texte = texte.replace(/&iuml;/g,''); // 239 EF
	texte = texte.replace(/&eth;/g,''); // 240 F0
	texte = texte.replace(/&ntilde;/g,''); // 241 F1
	texte = texte.replace(/&ograve;/g,''); // 242 F2
	texte = texte.replace(/&oacute;/g,''); // 243 F3
	texte = texte.replace(/&ocirc;/g,''); // 244 F4
	texte = texte.replace(/&otilde;/g,''); // 245 F5
	texte = texte.replace(/&ouml;/g,''); // 246 F6
	texte = texte.replace(/&divide;/g,''); // 247 F7
	texte = texte.replace(/&oslash;/g,''); // 248 F8
	texte = texte.replace(/&ugrave;/g,''); // 249 F9
	texte = texte.replace(/&uacute;/g,''); // 250 FA
	texte = texte.replace(/&ucirc;/g,''); // 251 FB
	texte = texte.replace(/&uuml;/g,''); // 252 FC
	texte = texte.replace(/&yacute;/g,''); // 253 FD
	texte = texte.replace(/&thorn;/g,''); // 254 FE
	texte = texte.replace(/&yuml;/g,''); // 255 FF
	return texte;
}

