function supprimer_user() { global $page; global $message; global $url; global $administration; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($administration['supprimer_user'], $_SESSION['role_user'])) { $page['vue'] = "utilisateurs/user.vue.php"; $id = ""; if (isset($_GET['id'])) { $id = $_GET['id']; } elseif (isset($_POST['id_user'])) { $id = $_POST['id_user']; } $page['lieux'] = liste_lieux(); $page['armee'] = liste_armee(); $page['role'] = liste_role(); $page['user'] = detail_user($id); $page['user'] = $page['user'][0]; $page['user']['roles'] = detail_affectation($id); if (isset($_POST['suppr_user']) && !isset($_GET['id'])) { if ($_POST['id_user'] != $_SESSION['id_user']) { if (count_admin() > 1 || count_admin() == 1 && !is_admin($_POST['id_user'])) { suppression_user($_POST['id_user']); lister_user(); } else { $page['message'] = $message['1_seul_admin']; } } else { $page['message'] = $message['auto_suppression']; } } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function session_rapide() { global $page; global $session; global $url; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($session['creer_session'], $_SESSION['role_user'])) { $page['vue'] = "sessions/session_rapide.vue.php"; $page['colonne'] = "sessions/sidebar_session.vue.php"; $page['sessions'] = liste_session(); $page['genre'] = liste_genre(); $page['diplome'] = liste_diplome(); $page['lieux'] = liste_lieux(); $page['cirfa'] = liste_cirfa(); $motif_json = liste_motif_json(0); $page['motif_json'] = json_encode($motif_json); if (isset($_POST['cre_session'])) { if (!isset($_POST['motif']) || $_POST['date_session'] == '' || $_POST['duree_session'] == "" | !is_numeric($_POST['duree_session']) || !is_numeric($_POST['nb_candidats_max']) || $_POST['nid_candidat'] == '' && $_POST['nid_temp_candidat'] == '' || $_POST['date_naissance_candidat'] == "" || $_POST['nom_candidat'] == "" || $_POST['prenom_candidat'] == "") { $page['message'] = $message['champs_obligatoire']; } elseif ($_POST['nid_candidat'] != '' && strlen($_POST['nid_candidat']) != 10) { $page['message'] = $message['NID_incorrect']; } elseif (!valide_date($_POST['date_session']) || !valide_date($_POST['date_naissance_candidat'])) { $page['message'] = $message['date_incorrect']; } else { if (isset($_POST['fictif_candidat'])) { $fictif = "on"; } else { $fictif = "off"; } $destination = ''; if ($_POST['nid_candidat'] == '') { $nid_temp = get_nid_temp($_POST['nid_temp_candidat']); $valeur = $nid_temp[0]['valeur']; $num = (int) $valeur; $taille = strlen($num); $concat = ""; for ($taille; $taille < 7; $taille++) { $concat = $concat . "0"; } $nid_tempo = $nid_temp[0]['code_organisme'] . $concat . ($num + 1); $destination = "./photo_candidat/" . $nid_tempo; } else { $nid_tempo = ''; $destination = "./photo_candidat/" . $_POST['nid_candidat']; } if (isset($_FILES['photo_candidat']['name']) && ($_FILES['photo_candidat']['name'] != null || $_FILES['photo_candidat']['name'] != "")) { $ext = pathinfo($_FILES['photo_candidat']['name']); $ext = "." . $ext['extension']; /*upload de l'image*/ move_uploaded_file($_FILES['photo_candidat']['tmp_name'], $destination . $ext); } else { $destination = ""; $ext = ""; } $id_candidat = creation_candidat2($_POST['nid_candidat'], $nid_tempo, date_fr_to_en($_POST['date_naissance_candidat']), $_POST['nom_candidat'], $_POST['nom_2_candidat'], $_POST['prenom_candidat'], $_POST['prenom_2_candidat'], $_POST['lieu_naissance_candidat'], $_POST['secu_candidat'], $_POST['genre_candidat'], $_POST['dernier_diplome_candidat'], $fictif, $destination . $ext, $_POST['cp_lieu_naissance_candidat'], $_POST['adresse_candidat'], $_POST['complement_adresse_candidat'], $_POST['ville_candidat'], $_POST['cp_candidat'], $_POST['mail_candidat'], $_POST['cirfa'], $_POST['francophone']); $id_session = creation_session(date_fr_to_en($_POST['date_session']), $_POST['id_lieu'], $_POST['duree_session'], $_POST['nb_candidats_max']); /****/ if ($id_candidat == 'a') { $page['message'] = $message['candidat_existe2']; } elseif ($id_candidat == 'b') { $page['message'] = $message['candidat_existe']; } else { $candidature = creation_candidature($id_candidat, 0); foreach ($_POST['motif'] as $m) { creation_motif_candidature($candidature, $m); } creation_inscription($candidature, $id_session); header("Location: index.php?controleur=session&tache=visualiser_session&id=" . $id_session); } } } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function visualiser_item() { global $page; global $item; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($item['visualiser_item'], $_SESSION['role_user'])) { if (is_proprietaire($_GET['id']) || is_partage_organisme($_SESSION['id_lieu'], $_GET['id'])) { $page['vue'] = "items/item.vue.php"; $page['colonne'] = "items/sidebar_item.vue.php"; $page['etat'] = liste_etat(); $page['categorie'] = liste_categorie(); $page['lieu'] = liste_lieux(); $page['items'] = liste_item(); $page['sphere'] = liste_sphere(); $page['facteur'] = liste_facteur(); $page['etat'] = liste_etat(); $page['item'] = get_item($_GET['id']); $page['item'] = $page['item'][0]; $page['item']['id_sphere'] = get_id_sphere($page['item']['id_categorie']); $page['item']['tests'] = get_test_from_item($_GET['id']); } else { $page['vue'] = "erreur_droit.vue.php"; $page['message'] = $message['non_proprietaire']; } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function retirer_partage_batterie() { global $page; global $batterie; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($batterie['partage_batterie'], $_SESSION['role_user'])) { $page['vue'] = "batteries/retrait_partage.vue.php"; $page['colonne'] = "batteries/sidebar_batterie_test.vue.php"; //*recuperation de la liste des motifs, et des tests pour la sidebar batterie $page['motif'] = liste_motif(); $page['etat'] = liste_etat(); // $page['tests'] = liste_des_tests(); $page['lieu'] = liste_lieux_auteur(); //organismes auteurs $page['lieu2'] = liste_lieux(); $page['projet'] = liste_projet(); //chargement de la liste des batteries $page['batteries'] = liste_batteries(); if (isset($_POST['rech_bat'])) { $page['tests'] = liste_des_tests($_POST['projet_batterie']); $page['batteries_recherche'] = json_encode(rechercher_partage2_batterie_json(1, 0, $_POST['code_batterie'], $_POST['id_etat'], $_POST['id_motif'], $_POST['version'], date_fr_to_en($_POST['date_mise_en_prod']), date_fr_to_en($_POST['date_retrait']), $_POST['id_lieu'], $_POST['projet_batterie'])); //$error =json_last_error(); var_dump($page['batteries_recherche'] ,$error ==JSON_ERROR_UTF8); } elseif (isset($_POST['retirer'])) { if (isset($_POST['droits'])) { foreach ($_POST['droits'] as $droit) { retirer_droit_test($droit); } //redirection sur la page d'accueil du controleur header("Location: index.php?controleur=batterie_test&tache=base"); } else { $page['message'] = $message['batterie_obligatoire']; } } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function creer_candidat() { global $page; global $administration; global $url; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($administration['creer_candidat'], $_SESSION['role_user'])) { //chargement des vues $page['vue'] = "participants/candidat.vue.php"; $page['colonne'] = "participants/sidebar_candidat.vue.php"; //chargement des listes $page['candidats'] = liste_candidat(); $page['genre'] = liste_genre(); $page['diplome'] = liste_diplome(); $page['lieux'] = liste_lieux(); $page['cirfa'] = liste_cirfa(); if (isset($_POST['cre_candidat'])) { /*test sur champs obligatoire*/ if ($_POST['nid_candidat'] == '' && $_POST['nid_temp_candidat'] == '' || $_POST['date_naissance_candidat'] == "" || $_POST['nom_candidat'] == "" || $_POST['prenom_candidat'] == "") { $page['message'] = $message['champs_obligatoire']; } elseif ($_POST['nid_candidat'] != '' && strlen($_POST['nid_candidat']) != 10) { $page['message'] = $message['NID_incorrect']; } elseif (!valide_date($_POST['date_naissance_candidat'])) { $page['message'] = $message['date_incorrect']; } else { if (isset($_POST['fictif_candidat'])) { $fictif = "on"; } else { $fictif = "off"; } $destination = ''; if ($_POST['nid_candidat'] == '') { $nid_temp = get_nid_temp($_POST['nid_temp_candidat']); $valeur = $nid_temp[0]['valeur']; $num = (int) $valeur; $taille = strlen($num); $concat = ""; for ($taille; $taille < 7; $taille++) { $concat = $concat . "0"; } $nid_tempo = $nid_temp[0]['code_organisme'] . $concat . ($num + 1); $destination = "./photo_candidat/" . $nid_tempo; } else { $nid_tempo = ''; $destination = "./photo_candidat/" . $_POST['nid_candidat']; } if (isset($_FILES['photo_candidat']['name']) && ($_FILES['photo_candidat']['name'] != null || $_FILES['photo_candidat']['name'] != "")) { $ext = pathinfo($_FILES['photo_candidat']['name']); $ext = "." . $ext['extension']; /*upload de l'image*/ move_uploaded_file($_FILES['photo_candidat']['tmp_name'], $destination . $ext); } else { $destination = ""; $ext = ""; } /*creation du candidat en base*/ $res = creation_candidat2($_POST['nid_candidat'], $nid_tempo, date_fr_to_en($_POST['date_naissance_candidat']), $_POST['nom_candidat'], $_POST['nom_2_candidat'], $_POST['prenom_candidat'], $_POST['prenom_2_candidat'], $_POST['lieu_naissance_candidat'], $_POST['secu_candidat'], $_POST['genre_candidat'], $_POST['dernier_diplome_candidat'], $fictif, $destination . $ext, $_POST['cp_lieu_naissance_candidat'], $_POST['adresse_candidat'], $_POST['complement_adresse_candidat'], $_POST['ville_candidat'], $_POST['cp_candidat'], $_POST['mail_candidat'], $_POST['cirfa'], $_POST['francophone']); if ($res == 'a') { $page['message'] = $message['candidat_existe2']; } elseif ($res == 'b') { $page['message'] = $message['candidat_existe']; } else { home_candidat(); } } } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function exporter_test() { global $page; global $resultat; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($resultat['exporter_test'], $_SESSION['role_user'])) { $page['vue'] = "resultats/exporter_test.vue.php"; $page['colonne'] = "tests/sidebar_test.vue.php"; $page['tests'] = liste_test(); $page['motifs'] = liste_motif(); $page['lieux'] = liste_lieux(); if (isset($_GET['id'])) { $id = $_GET['id']; } if (isset($_POST['id_test'])) { $id = $_POST['id_test']; } $page['id_test'] = $id; $page['test'] = get_test($id); $page['test'] = $page['test'][0]; if (isset($_POST['exporter'])) { if (isset($_POST['type_export'])) { $test = get_contenu_test_actif($id); $i = 0; foreach ($test as $key => $content) { if ($content['type'] == 'item') { $item = get_item($content['id_element']); $test[$i] = $item[0]; $i++; } else { $items = get_item_by_section($content['id_element']); foreach ($items as $it) { $test[$i] = $it; $i++; } } } if ($_POST['type_export'] == 'valeur') { $column = array(); foreach ($_POST["critere"] as $c) { if ($c == 'distinct(candidat.nid_candidat)') { $c = 'nid_candidat'; } $column[] = $c; } foreach ($test as $item) { $column[] = $item['libelle_item']; $column[] = $item['libelle_item'] . ' position'; } // output headers so that the file is downloaded rather than displayed // create a file pointer connected to the output stream $output = fopen('php://output', 'w'); // output the column headings fputcsv($output, $column, ';'); // fetch the data $candidats = get_candidats_filtre_reponse($_POST['id_test'], $_POST['crea1'], $_POST['crea1'], $_POST['id_motif'], $_POST['id_organisme'], $_POST['critere']); // loop over the rows, outputting them foreach ($candidats as $c) { foreach ($test as $item) { $rep = get_reponse_item_candidat($item['id_item'], $c['nid_candidat'], $id); $reponse = ""; $reponsep = ""; foreach ($rep as $r) { $reponse .= $r['libelle_reponse'] . '|'; } $c[] = $reponse; foreach ($rep as $r) { $reponsep .= $r['position_reponse'] . '|'; } $c[] = $reponsep; } fputcsv($output, $c, ';'); } fclose($output); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header('Content-Description: File Transfer'); header("Content-type: text/csv"); header("Content-Disposition: attachment; filename=data.csv"); header("Expires: 0"); header("Pragma: public"); exit; } if ($_POST['type_export'] == 'score') { // output headers so that the file is downloaded rather than displayed header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header('Content-Description: File Transfer'); header("Content-type: text/csv"); header("Content-Disposition: attachment; filename=data.csv"); header("Expires: 0"); header("Pragma: public"); // create a file pointer connected to the output stream $output = fopen('php://output', 'w'); $column = array(); foreach ($_POST["critere"] as $c) { $column[] = $c; } foreach ($test as $item) { $dims = get_dim_item($item['id_item']); foreach ($dims as $dim) { $column[] = $item['libelle_item'] . "_" . $dim['libelle_court_dimension']; } } // output the column headings fputcsv($output, $column, ';'); // fetch the data $candidats = get_candidats_filtre_reponse($_POST['id_test'], $_POST['crea1'], $_POST['crea1'], $_POST['id_motif'], $_POST['id_organisme'], $_POST['critere']); foreach ($candidats as $c) { foreach ($test as $item) { $dims = get_dim_item($item['id_item']); foreach ($dims as $dim) { $rep = get_score_dim_item_candidat($item['id_item'], $c['nid_candidat'], $id, $dim['id_dimension']); $reponse = ""; foreach ($rep as $r) { $reponse .= $r['score_brut'] . ' | '; } $c[] = $reponse; } } fputcsv($output, $c, ';'); } fclose($output); exit; } } else { $page['message'] = $message['champs_obligatoire_2']; } } } else { $page['vue'] = "erreur_droit.vue.php"; } }
function partager_test() { global $page; global $test; global $message; $page['gabarit'] = "administration"; if (isset($_SESSION['role_user']) && droit_acces($test['partage_test'], $_SESSION['role_user'])) { $page['vue'] = "tests/partage_test.vue.php"; $page['colonne'] = "tests/sidebar_test.vue.php"; $page['tests'] = liste_test(); $page['etat'] = liste_etat(); $page['sphere'] = liste_sphere(); $page['facteur'] = liste_facteur(); $page['lieu'] = liste_lieux_auteur(); $page['lieu2'] = liste_lieux(); $page['projet'] = liste_projet(); if (isset($_POST['rech_test'])) { if (!isset($_POST['aleatoire'])) { $_POST['aleatoire'] = 'off'; } if (!isset($_POST['retour_arriere'])) { $_POST['retour_arriere'] = 'off'; } $page['tests_recherche'] = json_encode(rechercher_partage_test_json(1, 0, $_POST['code_test'], $_POST['libelle_long_test'], $_POST['id_etat'], $_SESSION['id_lieu'], $_POST['duree_test'], $_POST['version_test'], date_fr_to_en($_POST['date_mise_en_prod']), date_fr_to_en($_POST['date_retrait']), $_POST['id_facteur'], $_POST['id_sphere'], $_POST['retour_arriere'], $_POST['aleatoire'], $_POST['projet_test'])); } elseif (isset($_POST['partager'])) { if (isset($_POST['tests'])) { if ($_POST['organisme']) { foreach ($_POST['tests'] as $t) { ajout_droit_test($t, $_POST['organisme']); } header("Location : index.php?controleur=test&tache=base"); } else { $page['message'] = $message['champs_obligatoire_2']; } } else { $page['message'] = $message['test_obligatoire']; } } } else { $page['vue'] = "erreur_droit.vue.php"; } }