Commit 9432edbd authored by Stephane Crozat's avatar Stephane Crozat

Nouvelle IHM

parent bf1bf423
.user .name {
font-weight:bold;
}
.user .login {
font-style:italic;
}
.menu {
margin-top:5pt;
}
.menu a {
text-decoration:none;
color:#1d007a;
font-weight:bold;
}
a {
text-decoration:none;
color:#393939;
}
hr {
border-top: 1.5px solid black;
}
.sub {
text-decoration:none;
font-weight:bold;
color:#00612b;
}
.unsub {
text-decoration:none;
font-weight:bold;
color:#8e3c00;
}
.valid {
text-decoration:none;
font-weight:bold;
color:#790600;
}
......@@ -36,7 +36,7 @@ $db = new DB();
$admin = new Admin($db);
$view = new Views($admin, $_SESSION['utclogin'], $_SESSION['surname'], $_SESSION['firstname']);
$view->printHtmlBegin();
$view->printHtmlBegin($admin);
$view->printUser($db->isResp($_SESSION['utclogin']), $db->isAdmin($_SESSION['utclogin']));
if (isset($_GET['mode'])) {
......
......@@ -18,7 +18,7 @@ class Views {
return $this->admin->isActive();
}
public function printHtmlBegin() {
public function printHtmlBegin($admin) {
echo '<html>';
echo '<head>';
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>';
......@@ -26,23 +26,25 @@ class Views {
echo '<link href="css/main.css" type="text/css" rel="stylesheet"/>';
echo '</head>';
echo '<body>';
echo '<h1>Foire aux Api</h1>';
echo '<h1>Foire aux Api '.$admin->activeSemester().$admin->activeYear().'</h1>';
}
public function printInstructions($row) {
echo '<hr/>';
echo '<h2>Catalogue</h2>';
echo '<p>Les Api sont décrites ici : <b><a href="https://apint.utc.fr/cat">https://apint.utc.fr/cat</a></b>. Veillez à avoir bien lu la fiche avant de vous inscrire (pré-requis, dates...).</p>';
echo '<h2>Instructions</h2>';
echo '<ul>';
echo '<li>Les Api sont ajoutées au fil du semestre par les responsables des Api. Dès qu\'une Api est ouverte, les étudiants peuvent commencer à s\'inscrire.';
echo '<li><b>Règle d\'or : dès qu\'un responsable d\'Api a validé une inscription, celle-ci est irréversible (ni l\'enseignant ni l\'étudiant ne peuvent l\'annuler).</b> Si un étudiant était inscrit à d\'autres Api la même semaine, ces inscriptions sont annulées.</li>';
echo '<li>Un étudiant peut s\'inscrire à plusieurs Api la même semaine, mais il ne pourra en suivre qu\'une seule. Il peut librement se déinscrire tant que l\'inscription n\'est pas validée.</li>';
echo '<li>Si un reponsable d\'Api commence à valider des inscriptions, alors l\'Api sera nécessairement ouverte</li>';
echo '<li>Un étudiant peut s\'inscrire à plusieurs Api la même semaine, mais il ne pourra en suivre qu\'une seule. Il peut librement se désinscrire tant que l\'inscription n\'est pas validée.</li>';
echo '<li>Si un reponsable d\'Api commence à valider des inscriptions, alors l\'Api sera nécessairement ouverte.</li>';
echo '</ul>';
}
public function printUser($isResp, $isAdmin) {
echo "<p><i>$this->firstname $this->surname</i> (<b>$this->utclogin</b>)</p>";
echo "<div class='user'><span class='name'>$this->firstname $this->surname</span> (<span class='login'>$this->utclogin</span>)</div>";
echo "<div class='menu'>";
if ($isResp) {
echo '<a href="index.php?mode=resp">[Gérer ses Api]</a> ';
}
......@@ -52,6 +54,7 @@ class Views {
if ($isResp || $isAdmin) {
echo '<a href="index.php">[Accueil]</a>';
}
echo "</div>";
}
private function printApi($row) {
......@@ -74,6 +77,7 @@ class Views {
public function printSubList($list) {
#KNOWN_BUB #TODO Il est possible de ses déinscrire en utilisant directement l'URL
if ($list) {
echo '<hr/>';
echo '<h2>Vos inscriptions</h2>';
$week = '';
foreach ($list as $row) {
......@@ -87,11 +91,10 @@ class Views {
echo "<span class='validation'>[validé]</span> ";
}
else {
echo "<a href='index.php?action=unsub&api=$row[id]'>[désinscription]</a> ";
echo "<a href='index.php?action=unsub&api=$row[id]' class='unsub'>[désinscription]</a> ";
}
}
echo $this->printApi($row);
echo ' ['.$row['semester'].$row['year'].', inscrit le '.$row['subdate'].']';
echo '</p>';
}
}
......@@ -102,6 +105,7 @@ class Views {
public function printApiList($list) {
if ($list) {
echo '<hr/>';
echo '<h2>Liste des Api</h2>';
$week = '';
foreach ($list as $row) {
......@@ -112,7 +116,7 @@ class Views {
echo '<p>';
if ($this->isActive()) {
if ($row['open'] && $row['is_available']) {
echo "<a href='index.php?action=sub&api=$row[id]'>[inscription]</a> ";
echo "<a href='index.php?action=sub&api=$row[id]' class='sub'>[inscription]</a> ";
}
elseif (! $row['is_available']) {
echo "[indisponible] ";
......@@ -132,14 +136,21 @@ class Views {
public function respValidation ($listsub) {
// #KNOWN_BUG Si un resp a plusieurs Api, il peut changer un inscrit entre ses deux Api en modifiant l'URL (pas via l'interface)
echo '<h1>Interface Responsable d\'Api</h2>';
echo '<h1>Interface Responsable d\'Api</h1>';
echo '<hr/>';
echo '<h2>Rappel</h2>';
echo '<ul>';
echo '<li>La validation d\'une inscription entraîne la confirmation de l\'ouverture de l\'Api.</li>';
echo '<li>Toute inscription validée est irréversible.</li>';
echo '</ul>';
if ($listsub) {
$api = '';
foreach ($listsub as $sub) {
if ($api != $sub['id']) {
$api = $sub['id'];
echo '<h2>'.$this->printWeek($sub).'</h2>';
echo '<h3>'.$this->printApi($sub).'</h3>';
echo '<hr/>';
echo '<h2>'.$this->printApi($sub).'</h2>';
}
if ($sub['utclogin']) {
if ($sub['validation']) {
......@@ -148,7 +159,7 @@ class Views {
}
else if (is_null($sub['validation'])) {
// At least one waiting subscription
echo "<p> <a href='index.php?action=validate&api=$sub[id]&login=$sub[utclogin]&mode=resp'>[valider]</a> ".$this->printStudent($sub)." <span>Exclusivité : $sub[indicator]%</span></p>";
echo "<p> <a href='index.php?action=validate&api=$sub[id]&login=$sub[utclogin]&mode=resp' class='valid'>[valider]</a> ".$this->printStudent($sub)." <span>Exclusivité : $sub[indicator]%</span></p>";
}
else {
// validation = FALSE lignes ignored
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment