17,8 → 17,10 |
*/ |
Class ApplicationExterneControleur extends Controleur { |
|
private $applications = null; |
private $applications_resume = null; |
private $applications_gestion = null; |
private $repertoire_applications = null; |
private $mode_reponse = 'json'; |
|
public function ApplicationExterneControleur() { |
|
25,18 → 27,21 |
$this->__construct(); |
|
// on charge les variables de classes à partir du fichier de configuration |
if(Config::get('applications_externes') != null) { |
if(Config::get('url_services_applications_resume') != null) { |
|
$application_str = Config::get('applications_externes'); |
$this->applications = explode(';;',$application_str); |
$application_str = Config::get('url_services_applications_resume'); |
$this->applications_resume = explode('##',$application_str); |
} else { |
$this->applications = array(); |
$this->applications_resume = array(); |
} |
|
if(Config::get('repertoire_applications_externes') != null) { |
$this->repertoire_applications = Config::get('repertoire_applications_externes'); |
// on charge les variables de classes à partir du fichier de configuration |
if(Config::get('url_services_applications_gestion') != null) { |
|
$application_str = Config::get('url_services_applications_gestion'); |
$this->applications_gestion = explode('##',$application_str); |
} else { |
$this->repertoire_applications = ''; |
$this->applications_gestion = array(); |
} |
} |
|
48,28 → 53,6 |
*/ |
public function ajouterInscription($id_utilisateur, $mail) { |
|
$d = dir($this->repertoire_applications); |
|
$msg = ''; |
|
// parcours du répertoire des appli |
while (false !== ($repertoire = $d->read())) { |
if ($repertoire != '.' || $repertoire != '..') { |
// on recherche un fichier de la forme nom_appli_inscription.inc.php |
if (file_exists($this->repertoire_applications.$repertoire.DS.$repertoire.'.inscription.inc.php')) { |
include_once $this->repertoire_applications.$repertoire.DS.$repertoire.'.inscription.inc.php' ; |
} |
} |
if ($msg != '') $res .= $msg; |
} |
|
if($msg != '') { |
$msg = 'Attention certaines erreurs se son produites lors de l\'inscription '.$msg; |
trigger_error($msg, E_USER_WARNING); |
} |
|
$d->close(); |
|
return true; |
} |
|
81,25 → 64,7 |
* @param le mail de l'utilisateur |
*/ |
public function modifierInscription($id_utilisateur, $mail) { |
$d = dir($this->repertoire_applications); |
|
$msg = ''; |
|
while (false !== ($repertoire = $d->read())) { |
if ($repertoire != '.' || $repertoire != '..') { |
if (file_exists($this->repertoire_applications.$repertoire.DS.$repertoire.'.modification.inc.php')) { |
include_once $this->repertoire_applications.$repertoire.DS.$repertoire.'.modification.inc.php' ; |
} |
} |
if ($msg != '') $res .= $msg; |
} |
|
if($msg != '') { |
$msg = 'Attention certaines erreurs se sont produites lors de la modification de l\'inscription '.$msg; |
trigger_error($msg, E_USER_WARNING); |
} |
|
$d->close(); |
return true; |
} |
|
/** |
109,30 → 74,42 |
* @param le mail de l'utilisateur |
*/ |
public function supprimerInscription($id_utilisateur, $mail) { |
return true; |
} |
|
$d = dir($this->repertoire_applications); |
/** |
* Parcourt le repertoire racine des applications et appelle un web service contenant la méthode |
* Resume qui renvoie les informations associées à l'utilisateur qui seront affichées dans la fiche |
* de profil |
* @param l'identifiant de l'utilisateur |
* @param le mail de l'utilisateur |
* @return array un tableau associatif dont les clés sont les noms des applis et les valeurs sont le html qui sera |
* inclus dans la fiche profil |
*/ |
public function obtenirResume($id_utilisateur, $mail) { |
|
$msg = ''; |
$resumes = array(); |
|
while (false !== ($repertoire = $d->read())) { |
if ($repertoire != '.' || $repertoire != '..') { |
if (file_exists($this->repertoire_applications.$repertoire.DS.$repertoire.'.desinscription.inc.php')) { |
include_once $this->repertoire_applications.$repertoire.DS.$repertoire.'.desinscription.inc.php' ; |
if(count($this->applications_resume) > 0) { |
foreach($this->applications_resume as $application) { |
|
$resume = @file_get_contents($application.'Resume'.DS.$id_utilisateur.DS.$mail); |
|
|
if($resume) { |
$resume = json_decode($resume, true); |
//print_r($resume); |
$resumes[] = $resume; |
} else { |
echo $application.'Resume'.DS.$id_utilisateur.DS.$mail; |
} |
} |
if ($msg != '') $res .= $msg; |
} |
|
if($msg != '') { |
$msg = 'Attention certaines erreurs se sont produites lors de la desinscription '.$msg; |
trigger_error($msg, E_USER_WARNING); |
} |
|
$d->close(); |
return $resumes; |
} |
|
/** |
* Parcourt le repertoire racine des applications et cherche un fichier spécifique contenant la méthode |
/** Parcourt le repertoire racine des applications et cherche un fichier spécifique contenant la méthode |
* obtenirResume qui renvoie les informations associées à l'utilisateur qui seront affichées dans la fiche |
* de profil |
* @param l'identifiant de l'utilisateur |
140,29 → 117,25 |
* @return array un tableau associatif dont les clés sont les noms des applis et les valeurs sont le html qui sera |
* inclus dans la fiche profil |
*/ |
public function obtenirResume($id_utilisateur, $mail) { |
public function gererInscription($id_utilisateur, $mail) { |
|
$d = dir($this->repertoire_applications); |
$gestions = array(); |
|
$resumes = array(); |
if(count($this->applications_gestion) > 0) { |
foreach($this->applications_gestion as $application) { |
|
while (false !== ($repertoire = $d->read())) { |
if ($repertoire != '.' || $repertoire != '..') { |
if (file_exists($this->repertoire_applications.$repertoire.DS.$repertoire.'.resume.inc.php')) { |
include_once $this->repertoire_applications.$repertoire.DS.$repertoire.'.resume.inc.php' ; |
$gestion = file_get_contents($application.'Gestion'.DS.$id_utilisateur.DS.$mail); |
|
if(class_exists($repertoire.'Resume')) { |
|
$classe = $repertoire.'Resume'; |
$resume_appli = new $classe(); |
$resumes[$repertoire] = $resume_appli->obtenirResume($id_utilisateur, $mail); |
} |
if($gestion) { |
$gestion = json_decode($gestion, true); |
$gestions[] = $gestion; |
} else { |
echo $application.'Gestion'.DS.$id_utilisateur.DS.$mail; |
} |
} |
} |
$d->close(); |
|
return $resumes; |
return $gestions; |
} |
} |
|