sid/manager/modules.php

103 lines
4.7 KiB
PHP
Raw Normal View History

<?php
require_once __ROOT__.'/manager/security.php';
require_once __ROOT__.'/manager/database.php';
/***********************************************************
* *
* MANAGER DES MODULES *
* *
************************************************************
* *
* [0] Constantes *
* [1] ROUTAGE de niveau 1 *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
***********************************************************/
/* [1] ROUTAGE DE NIVEAU 1
============================================================*/
function modules_switch_level_1($request, $answer){
switch( $request->level_1 ){
/***********************************/
/* liste des modules d'un ETUDIANT */
/***********************************/
// case 'getByEtudiant':
// $areSetParam = isset($request->etudiant) && isset($request->semestre) && isset($request->annee); // les arguments existent
// $typeOkParam = $areSetParam && is_string($request->etudiant) && is_string($request->semestre) && is_string($request->annee); // si c'est des strings
// $nEmptyParam = $typeOkParam && strlen($request->etudiant) > 0 && is_numeric($request->semestre) && is_numeric($request->annee); // des bon types
// $etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{6,100}$/i', $request->etudiant); // nom bon format
// $semestreCheck = $etudiantCheck && preg_match('/^[1-4]{1}$/i', $request->semestre); // semestre (semestre) bon format
// $anneeCheck = $semestreCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format
// if( $anneeCheck ){ // si tout les paramètres sont bons
// $modules = DataBase::getInstance()->getModulesEtudiant($request->etudiant, $request->semestre, $request->annee);
// // STRUCTURE
// // tableau d'UES contenant un tableau de MODULES
// if( is_array($modules) ){ // si on a bien un tableau
// $answer->modules = $modules; // on renvoie dans answer->modules
// $answer->request = 'success'; // et on renvoie success
// }else // sinon si c'est pas un tableau
// $answer->request = $modules; // on retourne l'erreur
// }else
// $answer->request = 'param_error';
// break;
/*******************************/
/* liste des UES d'un ETUDIANT */
/*******************************/
case 'getByEtudiant':
$areSetParam = isset($request->etudiant) && isset($request->semestre) && isset($request->annee); // les arguments existent
$typeOkParam = $areSetParam && is_string($request->etudiant) && is_string($request->semestre) && is_string($request->annee); // si c'est des strings
$nEmptyParam = $typeOkParam && strlen($request->etudiant) > 0 && is_numeric($request->semestre) && is_numeric($request->annee); // des bon types
$etudiantCheck = $nEmptyParam && preg_match('/^[\w -]{6,100}$/i', $request->etudiant); // nom bon format
$semestreCheck = $etudiantCheck && preg_match('/^[1-4]{1}$/i', $request->semestre); // semestre (semestre) bon format
$anneeCheck = $semestreCheck && preg_match('/^[0-9]{4}$/i', $request->annee); // semestre (annee) bon format
if( $anneeCheck ){ // si tout les paramètres sont bons
$UEList = DataBase::getInstance()->getModulesByUEByEtudiant($request->etudiant, $request->semestre, $request->annee);
// STRUCTURE
// tableau d'UES contenant un tableau de MODULES
if( is_array($UEList) ){ // si on a bien un tableau
$answer->UEs = $UEList; // on renvoie dans answer->ues
$answer->request = 'success'; // et on renvoie success
}else // sinon si c'est pas un tableau
$answer->request = $UEList; // on retourne l'erreur
}else
$answer->request = 'param_error';
break;
/***********/
/* DEFAULT */
/***********/
default:
$answer->request = 'unknown_level_1';
break;
}
}
?>