| Line 332... |
Line 332... |
| 332 |
$url = Config::get('url_service_base').Config::get('nom_projet').'/'.$service.'/'.$val.'?version.projet='.ltrim($this->version_projet, 'v');
|
332 |
$url = Config::get('url_service_base').Config::get('nom_projet').'/'.$service.'/'.$val.'?version.projet='.ltrim($this->version_projet, 'v');
|
| 333 |
}
|
333 |
}
|
| 334 |
return $url;
|
334 |
return $url;
|
| 335 |
}
|
335 |
}
|
| Line -... |
Line 336... |
| - |
|
336 |
|
| - |
|
337 |
static function s_ajouterHref($service, $val, $version_projet = '') {
|
| - |
|
338 |
// http://tela-botanica.org/service:eflore:0.1/[projet]/[version_projet]/[service]/[ressource]:[valeur]
|
| - |
|
339 |
return Config::get('url_service_base').Config::get('nom_projet').'/'.$service.'/'.$val . ($version_projet != '+') ? ('?version.projet='.ltrim($version_projet, 'v')) : '';
|
| - |
|
340 |
}
|
| 336 |
|
341 |
|
| 337 |
public function ajouterHrefAutreProjet($service, $ressource, $valeur, $projet = null, $param = null) {
|
342 |
public function ajouterHrefAutreProjet($service, $ressource, $valeur, $projet = null, $param = null) {
|
| 338 |
//on enleve les GA et Co, les meta ou les "_"
|
343 |
//on enleve les GA et Co, les meta ou les "_"
|
| 339 |
$this->transliterer($service, $valeur);
|
344 |
$this->transliterer($service, $valeur);
|
| 340 |
//on définit les nom des projets, des services et des ressources de l'url (dans les méta-donnees)
|
345 |
//on définit les nom des projets, des services et des ressources de l'url (dans les méta-donnees)
|
| Line 356... |
Line 361... |
| 356 |
$param = ($param) ? "?".$param : "";
|
361 |
$param = ($param) ? "?".$param : "";
|
| 357 |
$url = Config::get('url_service_base').$projet.'/'.$service.'/'.$ressource.$valeur.$param;
|
362 |
$url = Config::get('url_service_base').$projet.'/'.$service.'/'.$ressource.$valeur.$param;
|
| 358 |
return $url;
|
363 |
return $url;
|
| 359 |
}
|
364 |
}
|
| Line -... |
Line 365... |
| - |
|
365 |
|
| - |
|
366 |
static function s_ajouterHrefAutreProjet($service, $ressource, $valeur, $projet = null, $param = null) {
|
| - |
|
367 |
//on enleve les GA et Co, les meta ou les "_"
|
| - |
|
368 |
self::s_transliterer($service, $valeur);
|
| - |
|
369 |
//on définit les nom des projets, des services et des ressources de l'url (dans les méta-donnees)
|
| - |
|
370 |
$tab = array(
|
| - |
|
371 |
'langue' => array('service' => 'langues', 'projet' => 'iso-639-1', 'ressource' => ''),
|
| - |
|
372 |
'couverture_spatiale' => array('service' => 'zone-geo', 'projet' => 'iso-3166-1', 'ressource' => ''),
|
| - |
|
373 |
'type' => array('service' => 'ontologies', 'projet' => 'eflore', 'ressource' => 'contactType:'),
|
| - |
|
374 |
'datum' => array('service' => 'ontologies', 'projet' => 'eflore', 'ressource' => 'datum:')
|
| - |
|
375 |
);
|
| - |
|
376 |
if (array_key_exists($service, $tab)) {
|
| - |
|
377 |
extract($tab[$service]);
|
| - |
|
378 |
} else {
|
| - |
|
379 |
if (strpos(Config::get('nom_projet'), 'bd') === 0 && $projet == null) {
|
| - |
|
380 |
$projet = 'bdnt';
|
| - |
|
381 |
$service = 'ontologies';
|
| - |
|
382 |
$ressource = '';
|
| - |
|
383 |
}
|
| - |
|
384 |
}
|
| - |
|
385 |
$param = ($param) ? "?".$param : "";
|
| - |
|
386 |
$url = Config::get('url_service_base').$projet.'/'.$service.'/'.$ressource.$valeur.$param;
|
| - |
|
387 |
return $url;
|
| - |
|
388 |
}
|
| 360 |
|
389 |
|
| 361 |
/**Permet de consulter une url et retourne le résultat ou une erreur
|
390 |
/**Permet de consulter une url et retourne le résultat ou une erreur
|
| 362 |
* @param $url */
|
391 |
* @param $url */
|
| 363 |
public function consulterHref($url) {
|
392 |
public function consulterHref($url) {
|
| 364 |
$res = $this->getRestClient()->consulter($url);
|
393 |
$res = $this->getRestClient()->consulter($url);
|
| Line 385... |
Line 414... |
| 385 |
} elseif (strrpos($service, 'datum') !== false) {
|
414 |
} elseif (strrpos($service, 'datum') !== false) {
|
| 386 |
$service = 'datum';
|
415 |
$service = 'datum';
|
| 387 |
}
|
416 |
}
|
| 388 |
}
|
417 |
}
|
| Line -... |
Line 418... |
| - |
|
418 |
|
| - |
|
419 |
static function s_transliterer(&$service, &$val) {
|
| - |
|
420 |
if (preg_match('/^.+:(.+)$/', $val, $match)) {
|
| - |
|
421 |
$val = $match[1];
|
| - |
|
422 |
}
|
| - |
|
423 |
$service = str_replace(array('_Ga','_Co','_meta'), '', $service);
|
| - |
|
424 |
if ($service == 'rang') {
|
| - |
|
425 |
$ressource = 'rangTaxo';
|
| - |
|
426 |
} elseif (preg_match('/^(statut)(?:_|-)([^_-]+)$/', $service, $match)) {
|
| - |
|
427 |
$service = $match[1].ucfirst($match[2]);
|
| - |
|
428 |
} elseif (strrpos($service, 'datum') !== false) {
|
| - |
|
429 |
$service = 'datum';
|
| - |
|
430 |
}
|
| - |
|
431 |
}
|
| 389 |
|
432 |
|
| 390 |
// prend en arguments la valeur de la recherche, les résultats approchés, le paramétre recherche
|
433 |
// prend en arguments la valeur de la recherche, les résultats approchés, le paramétre recherche
|
| 391 |
// retourne le tableau trié en fonction de la ressemblance entre le résultat approché et la valeur recherchée
|
434 |
// retourne le tableau trié en fonction de la ressemblance entre le résultat approché et la valeur recherchée
|
| 392 |
public function trierRechercheFloue($nom_demande, $tab_approchee, $nom) {
|
435 |
public function trierRechercheFloue($nom_demande, $tab_approchee, $nom) {
|
| 393 |
$trie = '';
|
436 |
$trie = '';
|
| Line 422... |
Line 465... |
| 422 |
foreach ($tableauPartiel as $champ) {
|
465 |
foreach ($tableauPartiel as $champ) {
|
| 423 |
if (strpos($champ, '=') === false) {
|
466 |
if (strpos($champ, '=') === false) {
|
| 424 |
$tableau[] = $champ;
|
467 |
$tableau[] = $champ;
|
| 425 |
} else {
|
468 |
} else {
|
| 426 |
list($cle, $val) = explode('=', $champ);
|
469 |
list($cle, $val) = explode('=', $champ);
|
| - |
|
470 |
$tableau[$cle] = $val;
|
| - |
|
471 |
}
|
| - |
|
472 |
}
|
| - |
|
473 |
return $tableau;
|
| - |
|
474 |
}
|
| - |
|
475 |
|
| - |
|
476 |
static function s_recupererTableauConfig($param) {
|
| - |
|
477 |
$tableau = array();
|
| - |
|
478 |
$tableauPartiel = array_map('trim', explode(',', Config::get($param)));
|
| - |
|
479 |
foreach ($tableauPartiel as $champ) {
|
| - |
|
480 |
if (strpos($champ, '=') === false) {
|
| - |
|
481 |
$tableau[] = $champ;
|
| - |
|
482 |
} else {
|
| - |
|
483 |
list($cle, $val) = explode('=', $champ);
|
| 427 |
$tableau[$cle] = $val;
|
484 |
$tableau[$cle] = $val;
|
| 428 |
}
|
485 |
}
|
| 429 |
}
|
486 |
}
|
| 430 |
return $tableau;
|
487 |
return $tableau;
|
| 431 |
}
|
488 |
}
|