$erreur = checkService($value, $erreur); } } else { if ($key == 'dateDebut' || $key == 'dateFin') { // On convertit les dates si elle sont valides $temp = explode('/', $value); if (isset($value) && count($temp) > 3 && checkdate($temp[1], $temp[0], $temp[2])) { $convertedDate = DatetimeToTimestamp(FrenchdateToDatetime($value)); // Date au format timestamp $validDate = TRUE; // Si dateDebut : on refuse le cas où la date est supérieure à la marge sup if ($key == 'dateDebut' && (isset($_POST['dateFin']) && $convertedDate >= DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateFin'])) || $action2 == 'edit' && $convertedDate >= $affectationData['service']['date']['fin'])) { $erreur[13] = TRUE; $validDate = FALSE; } else { if ($key == 'dateFin' && (isset($_POST['dateDebut']) && $convertedDate <= DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateDebut'])) || $action2 == 'edit' && $convertedDate <= $affectationData['service']['date']['debut'])) { $erreur[13] = TRUE; $validDate = FALSE; } } if ($validDate) { $sqlData[$key] = TimestampToDatetime($convertedDate); } } } } } } /* On enregistre les données dans la BDD */
$erreur[17] = true; } } else { if ($key == 'dateDebut' || $key == 'dateFin') { // On convertit les dates si elle sont valides $temp = explode('/', $value); if (isset($value) && count($temp) >= 3 && checkdate($temp[1], $temp[0], $temp[2])) { $convertedDate = DatetimeToTimestamp(FrenchdateToDatetime($value)) + 86399; // Date au format timestamp $validDate = TRUE; // Si dateDebut : on refuse le cas où la date est supérieure à la marge sup if ($key == 'dateDebut' && (isset($_POST['dateFin']) && $convertedDate >= DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateFin'])) || $action == 'edit' && $convertedDate >= $evaluation['date']['fin'])) { $erreur[18] = TRUE; $validDate = FALSE; } else { if ($key == 'dateFin' && (isset($_POST['dateDebut']) && $convertedDate <= DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateDebut'])) || $action == 'edit' && $convertedDate <= $evaluation['date']['debut'])) { $erreur[18] = TRUE; $validDate = FALSE; } } if ($validDate) { $sqlData[$key] = TimestampToDatetime($convertedDate); } } } else { if ($key == 'type') { if (count(checkEvaluationType($value, array())) == 0) { $sqlData[$key] = $value; } else { $erreur = checkEvaluationType($value, $erreur); }
// Fonctions propres à l'affichage des formulaires d'évaluation /* 0. Initialisation des variables */ $erreur = array(); /* 1. Récupération des données */ $evaluationSettingsData = eval_ccpc_getSettings($evaluationData['id']); /* 2. Traitement du formulaire */ if (isset($_POST) && count($_POST) > 0) { if (isset($_POST['dateDebut']) && isset($_POST['dateFin'])) { $TimeStampDateDebut = DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateDebut'])); $TimeStampDateFin = DatetimeToTimestamp(FrenchdateToDatetime($_POST['dateFin'])); if ($TimeStampDateDebut <= $TimeStampDateFin) { // On convertit les dates $evaluationSettingsData['dateDebut'] = $TimeStampDateDebut; $evaluationSettingsData['dateFin'] = $TimeStampDateFin; // On essaie d'enregistrer les réglages if (eval_ccpc_setSettings($evaluationSettingsData)) { // On valide le réglage validateEvaluationSettings(); } else { $erreur['LANG_ERROR_CCPC_UNKNOWN'] = TRUE; } } else { $erreur['LANG_ERROR_CCPC_INVALIDDATE'] = TRUE; } } else {
/** * checkAffectation - Vérifie la validité des données d'affectation d'un étudiant et leurs concordance avant de les ajouter dans la base de donnée * * @category : checkFunction * @param int $etudiant Identifiant de l'étudiant * @param int $service Identifiant du service * @param frenchdate $dateDebut Date du début de l'affectation * @param frenchdate $dateFin Date de fin de l'affectation * @param array $erreur Array contenant la liste des erreurs rencontrées avant execution de la fonction * @return array Array contenant la liste des erreurs rencontrées après execution de la fonction * * @Author Ali Bellamine */ function checkAffectationInsertData($etudiant, $service, $dateDebut, $dateFin, $erreur) { $serviceCheck = FALSE; // On récupère les données sur l'étudiant si il existe if (count(checkUser($etudiant, array())) == 0) { $userData = getUserData($etudiant); } else { $erreur = checkUser($etudiant, $erreur); } // On récupère les infos sur le service if (count(checkService($service, array())) == 0) { $serviceCheck = TRUE; } else { $erreur = checkService($service, $erreur); } // Si le service et l'étudiant sont disponibles, on vérifie que l'étudiant n'est pas déjà inscrit dans le service if (isset($userData) && $serviceCheck) { if (isset($userData['service'])) { foreach ($userData['service'] as $affectationId => $affectationData) { if (isset($affectationData['id']) && DatetimeToTimestamp(FrenchdateToDatetime($dateDebut)) == $affectationData['dateDebut'] && DatetimeToTimestamp(FrenchdateToDatetime($dateFin)) == $affectationData['dateFin']) { $erreur[10] = TRUE; } } } } // On vérifie les dates if (isset($dateDebut) && (preg_match('#^([0-9]{2})([/-])([0-9]{2})\\2([0-9]{4})$#', $dateDebut, $m) == 1 && checkdate($m[3], $m[1], $m[4]))) { $dateDebutTimestamp = DatetimeToTimestamp($m[4] . '-' . $m[3] . '-' . $m[1]); } else { $erreur[11] = TRUE; } if (isset($dateFin) && (preg_match('#^([0-9]{2})([/-])([0-9]{2})\\2([0-9]{4})$#', $dateFin, $m) == 1 && checkdate($m[3], $m[1], $m[4]))) { $dateFinTimestamp = DatetimeToTimestamp($m[4] . '-' . $m[3] . '-' . $m[1]); } else { $erreur[12] = TRUE; } if (isset($dateDebutTimestamp) && isset($dateFinTimestamp) && $dateDebutTimestamp > $dateFinTimestamp) { $erreur[13] = TRUE; } return $erreur; }