Import du MCC en cours (phase de déploiement)
This commit is contained in:
parent
6cb50fdac6
commit
f9f79e1e49
8
API.php
8
API.php
|
@ -61,6 +61,14 @@ require_once __ROOT__.'/manager/security.php';
|
||||||
case 'modules':
|
case 'modules':
|
||||||
if( isset($request->level_1) ){ require_once __ROOT__.'/manager/modules.php'; modules_switch_level_1($request, $answer); }
|
if( isset($request->level_1) ){ require_once __ROOT__.'/manager/modules.php'; modules_switch_level_1($request, $answer); }
|
||||||
else { $answer->request = 'missing_level_1'; }
|
else { $answer->request = 'missing_level_1'; }
|
||||||
|
break;
|
||||||
|
|
||||||
|
/**********/
|
||||||
|
/* MODULE */
|
||||||
|
/**********/
|
||||||
|
case 'phpExcel':
|
||||||
|
if( isset($request->level_1) ){ require_once __ROOT__.'/manager/phpExcel.php'; xlsx_switch_lvl1($request, $answer); }
|
||||||
|
else { $answer->request = 'missing_level_1'; }
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -279,9 +279,26 @@ td select > option{ padding: 0; }
|
||||||
|
|
||||||
/* extra */
|
/* extra */
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
|
/* scroll */
|
||||||
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.confirm [type=file]{
|
||||||
|
/* position */
|
||||||
|
display: block;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
|
/* extra */
|
||||||
|
opacity: 0;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* @all */
|
/* @all */
|
||||||
|
|
|
@ -197,6 +197,28 @@ require_once __ROOT__.'/manager/database.php';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**********************/
|
||||||
|
/* intégration du MCC */
|
||||||
|
/**********************/
|
||||||
|
case 'setMCC': if( permission('admin') ){
|
||||||
|
|
||||||
|
|
||||||
|
if( isset($request->mcc) && isset($request->semestre) && is_numeric($request->semestre) ){ // si tout les paramètres sont bons
|
||||||
|
DataBase::getInstance()->setMCC($request->semestre, $request->mcc);
|
||||||
|
$answer->request = 'success';
|
||||||
|
}else
|
||||||
|
$answer->request = 'param_error';
|
||||||
|
|
||||||
|
}else
|
||||||
|
$answer->request = 'permission_error';
|
||||||
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***********/
|
/***********/
|
||||||
/* DEFAULT */
|
/* DEFAULT */
|
||||||
/***********/
|
/***********/
|
||||||
|
|
|
@ -123,7 +123,7 @@ class DataBase{
|
||||||
* @mcc<Array> contient toutes les données du MCC
|
* @mcc<Array> contient toutes les données du MCC
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static function setMCC($semestre, $mcc){debug();
|
public static function setMCC($semestre, $mcc){
|
||||||
|
|
||||||
foreach($mcc as $ue){
|
foreach($mcc as $ue){
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
<?php define('__ROOT__', dirname(dirname(__FILE__)) ); require_once __ROOT__.'/manager/security.php';
|
||||||
|
|
||||||
|
if( isset($_FILES['file']) && isset($_POST['filename']) ){
|
||||||
|
|
||||||
|
$path = __ROOT__.'/src/files/';
|
||||||
|
$targetFile = $_SESSION['identifiant'].'_'.$_POST['filename'].'.xlsx';
|
||||||
|
|
||||||
|
if( move_uploaded_file($_FILES["file"]["tmp_name"], $path.$targetFile) )
|
||||||
|
echo "success";
|
||||||
|
else
|
||||||
|
echo "error";
|
||||||
|
|
||||||
|
}else
|
||||||
|
echo 'missing_param';
|
||||||
|
|
||||||
|
?>
|
|
@ -276,13 +276,16 @@ function xlsx_switch_lvl1($request, $answer){
|
||||||
/**********************/
|
/**********************/
|
||||||
case 'import_mcc':
|
case 'import_mcc':
|
||||||
|
|
||||||
if(isset($request->docPath)) {
|
|
||||||
|
|
||||||
// $inputFileType = 'Excel2007';
|
$filePath = __ROOT__.'/src/files/'.$_SESSION['identifiant'].'_import_mcc.xlsx';
|
||||||
$inputFileName = $request->docPath;
|
|
||||||
|
// file_put_contents($filePath, $file['file']);
|
||||||
|
|
||||||
|
// // $inputFileType = 'Excel2007';
|
||||||
|
// $inputFileName = $request->docPath;
|
||||||
|
|
||||||
// Charger le fichier en tant que document Excel
|
// Charger le fichier en tant que document Excel
|
||||||
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
|
$objPHPExcel = PHPExcel_IOFactory::load($filePath);
|
||||||
|
|
||||||
// Get sur la première case
|
// Get sur la première case
|
||||||
$sheet = $objPHPExcel->getSheet(0);
|
$sheet = $objPHPExcel->getSheet(0);
|
||||||
|
@ -366,9 +369,6 @@ function xlsx_switch_lvl1($request, $answer){
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -385,10 +385,6 @@ function xlsx_switch_lvl1($request, $answer){
|
||||||
$answer->mcc = $mcc;
|
$answer->mcc = $mcc;
|
||||||
$answer->request = 'success';
|
$answer->request = 'success';
|
||||||
|
|
||||||
|
|
||||||
}else
|
|
||||||
$answer->request = 'param_error';
|
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -93,4 +93,75 @@ creerSemestre.addEventListener('click', function(e){
|
||||||
|
|
||||||
}, false);
|
}, false);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* GESTION DE L'IMPORT DE MCC */
|
||||||
|
var importMcc = document.getElementById('import_mcc');
|
||||||
|
importMcc.addEventListener('change', function(e){
|
||||||
|
|
||||||
|
addClass( importMcc, 'loading' );
|
||||||
|
|
||||||
|
var file = importMcc.files[0];
|
||||||
|
|
||||||
|
/* IMPORTATION DU FICHIER */
|
||||||
|
var fd = new FormData();
|
||||||
|
fd.append('filename', 'import_mcc');
|
||||||
|
fd.append('file', file, file.name);
|
||||||
|
|
||||||
|
var xhr = new XMLHttpRequest();
|
||||||
|
|
||||||
|
xhr.open('POST', 'manager/import.php', true);
|
||||||
|
|
||||||
|
xhr.onreadystatechange = function(){
|
||||||
|
if( xhr.readyState == 4 )
|
||||||
|
if( [0, 200].indexOf(xhr.status) > -1 )
|
||||||
|
if( xhr.responseText == 'success' ){
|
||||||
|
|
||||||
|
|
||||||
|
var request = {
|
||||||
|
level_0: 'phpExcel',
|
||||||
|
level_1: 'import_mcc'
|
||||||
|
}
|
||||||
|
|
||||||
|
API.send(request, function(e){
|
||||||
|
if( e.request == 'success' ){ // si on a récupéré l'objet MCC, on lance maintenant l'intégration
|
||||||
|
|
||||||
|
requestIntegration = {
|
||||||
|
level_0: 'career',
|
||||||
|
level_1: 'setMCC',
|
||||||
|
semestre: 1,
|
||||||
|
mcc: e.mcc
|
||||||
|
}
|
||||||
|
|
||||||
|
API.send( requestIntegration, function(f){
|
||||||
|
if( f.request == 'success' ){
|
||||||
|
console.log('mcc intégré');
|
||||||
|
reload();
|
||||||
|
}else
|
||||||
|
console.log('Mcc non intégré');
|
||||||
|
});
|
||||||
|
|
||||||
|
}else
|
||||||
|
reload();
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
xhr.send(fd);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}, false);
|
||||||
-->
|
-->
|
|
@ -529,7 +529,6 @@ if( permission('admin') ){
|
||||||
echo "<div class='p center'>";
|
echo "<div class='p center'>";
|
||||||
|
|
||||||
$anneesListe = array();
|
$anneesListe = array();
|
||||||
$semestresListe = array();
|
|
||||||
|
|
||||||
/**********************/
|
/**********************/
|
||||||
/* AFFINAGE PAR ANNEE */
|
/* AFFINAGE PAR ANNEE */
|
||||||
|
@ -554,6 +553,7 @@ if( permission('admin') ){
|
||||||
/*************************/
|
/*************************/
|
||||||
/* AFFINAGE PAR SEMESTRE */
|
/* AFFINAGE PAR SEMESTRE */
|
||||||
/*************************/
|
/*************************/
|
||||||
|
$semestresListe = array();
|
||||||
foreach($answer->yearList as $annee){ if( in_array($annee['annee'], $anneesListe) ){ // on récupère la liste des ids
|
foreach($answer->yearList as $annee){ if( in_array($annee['annee'], $anneesListe) ){ // on récupère la liste des ids
|
||||||
foreach($annee['semestres'] as $semestre){ if( !in_array($semestre['id'], $semestresListe) ){
|
foreach($annee['semestres'] as $semestre){ if( !in_array($semestre['id'], $semestresListe) ){
|
||||||
array_push($semestresListe, $semestre['id']);
|
array_push($semestresListe, $semestre['id']);
|
||||||
|
@ -561,8 +561,7 @@ if( permission('admin') ){
|
||||||
}}
|
}}
|
||||||
|
|
||||||
// si semestreOpt n'est pas cohérent (pas pour cette année)
|
// si semestreOpt n'est pas cohérent (pas pour cette année)
|
||||||
if( !in_array($semestreOpt, $semestresListe) ) $semestreOpt = null;
|
if( $semestreOpt == null || !in_array($semestreOpt, $semestresListe) ) $semestreOpt = $semestresListe[0];
|
||||||
|
|
||||||
|
|
||||||
$count = 0;
|
$count = 0;
|
||||||
echo "<div class='partlist' name='semestre'>";
|
echo "<div class='partlist' name='semestre'>";
|
||||||
|
@ -571,7 +570,6 @@ if( permission('admin') ){
|
||||||
foreach($annee['semestres'] as $semestre){ if( in_array($semestre['id'], $semestresListe) ){
|
foreach($annee['semestres'] as $semestre){ if( in_array($semestre['id'], $semestresListe) ){
|
||||||
$count++;
|
$count++;
|
||||||
|
|
||||||
if( $semestreOpt == null ) $semestreOpt = $semestre['id'];
|
|
||||||
|
|
||||||
if( $semestre['id'] == $semestreOpt ) // si c'est le semestre séléctionné
|
if( $semestre['id'] == $semestreOpt ) // si c'est le semestre séléctionné
|
||||||
echo "<span data-year='".$annee['annee']."' data-stre='".$semestre['id']."' class='active'>".$semestre['formation']." - ".$semestre['nom'].'</span>';
|
echo "<span data-year='".$annee['annee']."' data-stre='".$semestre['id']."' class='active'>".$semestre['formation']." - ".$semestre['nom'].'</span>';
|
||||||
|
@ -632,7 +630,7 @@ if( permission('admin') ){
|
||||||
// if( $answer->request == 'success' ){ // si pas d'erreur
|
// if( $answer->request == 'success' ){ // si pas d'erreur
|
||||||
echo "<div class='p center'>";
|
echo "<div class='p center'>";
|
||||||
echo "Importation des MCC d'un semestre<br>";
|
echo "Importation des MCC d'un semestre<br>";
|
||||||
echo "<span style='font-size:.8em;'>(Fichier .xlsx suivant le modèle : <a href='".__ROOT__."/src/import_mcc.xlsx'>modèle de fichier</a>)</span><br>";
|
echo "<span style='font-size:.8em;'>(Fichier .xlsx suivant le modèle : <a href='/src/import_mcc.xlsx'>modèle de fichier</a>)</span><br>";
|
||||||
|
|
||||||
|
|
||||||
/**********************/
|
/**********************/
|
||||||
|
@ -662,8 +660,6 @@ if( permission('admin') ){
|
||||||
echo "<div class='partlist' name='semestre'>";
|
echo "<div class='partlist' name='semestre'>";
|
||||||
foreach($annee['semestres'] as $semestre){ if( in_array($semestre['id'], $semestresListe) ){
|
foreach($annee['semestres'] as $semestre){ if( in_array($semestre['id'], $semestresListe) ){
|
||||||
|
|
||||||
if( $semestreOpt == null ) $semestreOpt = $semestre['id'];
|
|
||||||
|
|
||||||
if( $semestre['id'] == $semestreOpt ) // si c'est le semestre séléctionné
|
if( $semestre['id'] == $semestreOpt ) // si c'est le semestre séléctionné
|
||||||
echo "<span data-year='".$annee['annee']."' data-stre='".$semestre['id']."' class='active'>".$semestre['formation']." - ".$semestre['nom'].'</span>';
|
echo "<span data-year='".$annee['annee']."' data-stre='".$semestre['id']."' class='active'>".$semestre['formation']." - ".$semestre['nom'].'</span>';
|
||||||
else // sinon on affiche normalement
|
else // sinon on affiche normalement
|
||||||
|
@ -680,7 +676,7 @@ if( permission('admin') ){
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo "<div data-year='".$anneeOpt."' class='confirm active center'>Importer les MCC</div>";
|
echo "<div data-year='".$anneeOpt."' data-stre='".$semestreOpt."' class='confirm active center'>Importer les MCC<input type='file' id='import_mcc'></div>";
|
||||||
|
|
||||||
echo "</div>";
|
echo "</div>";
|
||||||
|
|
||||||
|
@ -742,12 +738,12 @@ if( permission('admin') ){
|
||||||
echo "<option value='".($_SESSION['annee']+$i)."'>".anneeScolaire($_SESSION['annee']+$i)."</option>";
|
echo "<option value='".($_SESSION['annee']+$i)."'>".anneeScolaire($_SESSION['annee']+$i)."</option>";
|
||||||
echo "</select><br>";
|
echo "</select><br>";
|
||||||
|
|
||||||
echo "<input type='text' placeholder='cursur, ex: ITINN1'><br>";
|
echo "<input type='text' placeholder='cursus, ex: ITINN1'><br>";
|
||||||
echo "<input type='text' placeholder='libellé, ex: DUT INFORMATIQUE 1A'><br>";
|
echo "<input type='text' placeholder='libellé, ex: DUT INFORMATIQUE 1A'><br>";
|
||||||
echo "<input type='text' placeholder='semestre, ex: S1'><br>";
|
echo "<input type='text' placeholder='semestre, ex: S1'><br>";
|
||||||
echo "<input type='number' min=0 max=6 step=1 placeholder='rang, ex: 1'><br>";
|
echo "<input type='number' min=0 max=6 step=1 placeholder='rang, ex: 1'><br>";
|
||||||
|
|
||||||
echo "<div class='confirm active center'>Créer le semestre</div>";
|
echo "<div class='confirm active center' id='creer_semestre'>Créer le semestre</div>";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 847 B After Width: | Height: | Size: 847 B |
Loading…
Reference in New Issue