Subversion Repositories Applications.projet

Compare Revisions

Regard whitespace Rev 431 → Rev 437

/trunk/jrest/jrest.ini.php
1,6 → 1,6
;<?/*
[settings]
baseURL = "/client/projet/jrest/"
baseURL = "/reseau/projet/jrest/"
 
; Default
[appli]
35,7 → 35,7
 
; LOGS
[log]
cheminlog = "/client/projet/jrest/logs/"
cheminlog = "/reseau/projet/jrest/logs/"
timezone = "Europe/Paris"
taillemax = 100000
 
/trunk/jrest/JRest.php
29,7 → 29,6
* @param str iniFile Configuration file to use
*/
public function JRest($iniFile = 'jrest.ini.php') {
 
$this->config = parse_ini_file($iniFile, TRUE);
if (isset($_SERVER['REQUEST_URI']) && isset($_SERVER['REQUEST_METHOD']) && isset($_SERVER['QUERY_STRING'])) {
if (isset($_SERVER['CONTENT_LENGTH']) && $_SERVER['CONTENT_LENGTH'] > 0) {
45,7 → 44,13
} else {
$len = -(strlen($_SERVER['QUERY_STRING']) + 1);
}
$urlString = '';
if (substr_count($_SERVER['REQUEST_URI'], $this->config['settings']['baseURL']) > 0) {
$urlString = substr($_SERVER['REQUEST_URI'], strlen($this->config['settings']['baseURL']), $len);
} else if (substr_count($_SERVER['REQUEST_URI'], $this->config['settings']['baseAlternativeURL']) > 0) {
$urlString = substr($_SERVER['REQUEST_URI'], strlen($this->config['settings']['baseAlternativeURL']), $len);
}
 
$urlParts = explode('/', $urlString);
 
69,7 → 74,6
* Execute the request.
*/
function exec() {
 
switch ($this->method) {
case 'GET':
$this->get();
128,7 → 132,7
 
// Ne pas effacer cette ligne ! Elle est indispensable pour les services du Carnet en ligne
// qui n'utilisent que le tableau pairs dans les posts
$pairs = array_merge($pairs, $_POST);
$pairs = array_merge($_POST, $pairs);
}
 
// gestion du contenu du post
136,7 → 140,7
{
// Safari ne sait pas envoyer des DELETE avec gwt...
// Nous utilisons le parametre "action" passé dans le POST qui doit contenir DELETE pour lancer la supression
if ($pairs['action'] == 'DELETE') {
if (isset($pairs['action']) && $pairs['action'] == 'DELETE') {
$this->delete();
return;
}
150,9 → 154,14
if (class_exists($resource_class)) {
$service = new $resource_class($this->config);
if (method_exists($service,'updateElement')) { // Update element
$ret_value = false;
try {
// TODO : a voir le retour ...
if ($service->updateElement($this->uid, $pairs)) {
$this->created();
$ret_value = $service->updateElement($this->uid, $pairs);
if($ret_value) $this->created();
else $this->badRequest();
} catch (Exception $e) {
$this->badRequest($e);
}
}
}
202,8 → 211,13
if (class_exists($resource_class)) {
$service = new $resource_class($this->config);
if (method_exists($service,'createElement')) { // Create a new element
if ($service->createElement($pairs)) {
$this->created();
$ret_value = false;
try {
$ret_value = $service->createElement($pairs);
if($ret_value) $this->created();
else $this->badRequest();
} catch (Exception $e) {
$this->badRequest($e);
}
}
}
250,8 → 264,9
/**
* Send a HTTP 400 response header.
*/
private function badRequest() {
private function badRequest(Exception $e = NULL) {
header('HTTP/1.0 400 Bad Request');
if($e) echo $e->getMessage();
}
 
/**
/trunk/jrest/services/Gestion.php
39,7 → 39,7
} else {
foreach($projets as $projet) {
 
$cible_lien_desinscrire = 'http://www.tela-botanica.org/client/projet/jrest/DesinscriptionProjet/?id_projet='.$projet['p_id'].'&id_utilisateur='.$id_utilisateur.'&mail='.$mail_utilisateur;
$cible_lien_desinscrire = 'http://www.tela-botanica.org/' . PROJET_CHEMIN_APPLI . 'jrest/DesinscriptionProjet/?id_projet='.$projet['p_id'].'&id_utilisateur='.$id_utilisateur.'&mail='.$mail_utilisateur;
$cible_lien = 'http://www.tela-botanica.org/page:liste_projets?id_projet='.$projet['p_id'];
$resume_item = array('element' => $projet['p_titre'], 'lien_desinscrire' => $cible_lien_desinscrire, 'lien' => $cible_lien, 'intitule_lien' => 'Se d&eacute;sinscrire');
$resume['elements'][] = $resume_item;