Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 415 → Rev 416

/trunk/jrest/services/LocationSearch.php
New file
0,0 → 1,137
<?php
 
/**
 
David Delon david.delon@clapas.net 2007
 
Ce logiciel est r�gi par la licence CeCILL soumise au droit fran�ais et
respectant les principes de diffusion des logiciels libres. Vous pouvez
utiliser, modifier et/ou redistribuer ce programme sous les conditions
de la licence CeCILL telle que diffus�e par le CEA, le CNRS et l'INRIA
sur le site "http://www.cecill.info".
En contrepartie de l'accessibilit� au code source et des droits de copie,
de modification et de redistribution accord�s par cette licence, il n'est
offert aux utilisateurs qu'une garantie limit�e. Pour les m�mes raisons,
seule une responsabilit� restreinte p�se sur l'auteur du programme, le
titulaire des droits patrimoniaux et les conc�dants successifs.
 
A cet �gard l'attention de l'utilisateur est attir�e sur les risques
associ�s au chargement, � l'utilisation, � la modification et/ou au
d�veloppement et � la reproduction du logiciel par l'utilisateur �tant
donn� sa sp�cificit� de logiciel libre, qui peut le rendre complexe �
manipuler et qui le r�serve donc � des d�veloppeurs et des professionnels
avertis poss�dant des connaissances informatiques approfondies. Les
utilisateurs sont donc invit�s � charger et tester l'ad�quation du
logiciel � leurs besoins dans des conditions permettant d'assurer la
s�curit� de leurs syst�mes et ou de leurs donn�es et, plus g�n�ralement,
� l'utiliser et l'exploiter dans les m�mes conditions de s�curit�.
 
Le fait que vous puissiez acc�der � cet en-t�te signifie que vous avez
pris connaissance de la licence CeCILL, et que vous en avez accept� les
termes.
 
*/
 
 
// in : utf8
// out : utf8
 
/*
*
*
 
/*
* LocationSearch.php
*
* Cas d'utilisation :
* Service completion nom de commune
*
* 1 : L'application recoit un debut de nom de commune
* 2 : Si la longueur du prefix est >2, l'application retourne les 50 premieres communes commencant par ce prefix
*/
 
 
Class LocationSearch extends DBAccessor {
 
 
var $config;
 
function LocationSearch($config) {
 
$this->config=$config;
}
 
 
function getElement($uid){
 
$value=array();
 
if (isset($uid[0])) {
 
foreach ($uid as $element) {
$lieu=$lieu." ".$element;
}
$lieu=ltrim($lieu);
 
 
$lieu=ereg_replace('\*+','%',$lieu);
if ((strlen($lieu) > 0) && ($lieu != '%')) {
$DB=$this->connectDB($this->config,'database_cel');
$query="SELECT DISTINCT name, code FROM locations WHERE " .
"maj_name LIKE '".$DB->escapeSimple($lieu)."%' OR name LIKE '".$DB->escapeSimple($lieu)."%' ORDER BY name LIMIT 50";
}
else {
print "[]";
return ;
}
}
else {
print "[]";
return ;
}
 
 
$res =& $DB->query($query);
 
 
if (DB::isError($res)) {
die($res->getMessage());
}
 
while ($row =& $res->fetchrow(DB_FETCHMODE_ASSOC)) {
// $value[]=array($row['name']." (".sprintf("%02s",$row['code']).")",$row['code']);
$value[]=array($row['name']." (".sprintf("%02s",$row['code']).")",$row['code']);
}
 
 
$json = new Services_JSON();
$output = $json->encode($value);
print($output);
 
 
 
}
 
function getRessource(){
 
print "[]";
return;
}
 
 
}
 
/* +--Fin du code ---------------------------------------------------------------------------------------+
* $Log$
* Revision 1.4 2008-01-30 08:57:28 ddelon
* fin mise en place mygwt
*
* Revision 1.3 2007-05-21 18:13:03 ddelon
* Correction bug recherche commune du type "la canourgue"
*
*
*/
 
 
 
?>