admin=$admin; $this->utclogin=$utclogin; $this->surname=$surname; $this->firstname=$firstname; } public function isActive() { return $this->admin->isActive(); } public function printHtmlBegin($admin) { echo ''; echo ''; echo ''; echo 'Api Sub'; echo ''; echo ''; echo ''; echo ''; echo '

Foire aux Api '.$admin->activeSemester().$admin->activeYear().'

'; } public function printInstructions($admin) { echo '
'; echo '

Planning

'; echo '

Inscriptions ouvertes du '.$admin->openbegin().' au '.$admin->openend().'.

'; echo '

Catalogue

'; echo '

Les Api sont décrites ici : https://apint.utc.fr/cat. Veillez à avoir bien lu la fiche avant de vous inscrire (pré-requis, dates...).

'; echo '

Instructions

'; echo ''; } public function printUser($isResp, $isAdmin) { echo "
$this->firstname $this->surname ($this->utclogin)
"; echo ""; } private function printApi($row) { return "$row[normcode] - $row[name] (du $row[normdbegin] au $row[normdend]) [Demandes $row[nbask] | Inscriptions $row[nbval]/$row[size]]"; } private function printWeek($row) { return "$row[year] Semaine $row[week]"; } private function printStudent($row) { if (!$row['surname']) { return "$row[utclogin] $row[level] [mail] [photo]"; } else { return "$row[firstname] $row[surname] $row[level] [mail] [photo]"; } } public function printSubList($list) { echo '
'; if ($list) { echo '

Vos inscriptions

'; $week = ''; foreach ($list as $row) { if ($row['week'] != $week) { $week = $row['week']; echo "

".$this->printWeek($row)."

"; } echo '

'; // If student has been validated if ($row['validation']) { echo "[validé] "; } else { // If it has not been validated and subscription are still opened if ($this->isActive()) { $msg = 'désinscription'; } // If it has not been validated and subscription are closed else { echo "[liste d'attente] "; $msg = 'annulation'; } echo "[$msg] "; } echo $this->printApi($row); echo '

'; } } else { echo '

Aucune inscription

'; } } public function printApiList($list) { echo '
'; if ($list) { echo '

Liste des Api

'; $week = ''; foreach ($list as $api) { if ($api['week'] != $week) { $week = $api['week']; echo "

".$this->printWeek($api)."

"; } echo '

'; if ($this->isActive()) { if ($api['validation'] == 1) { echo "[validé] "; } elseif ($api['validation'] == 0.5) { echo "[en attente] "; } elseif ($api['validation'] == -1 || ! $api['is_available']) { echo "[indisponible] "; } elseif (! $api['open']) { echo "[complet] "; } else { echo "[inscription] "; } } echo $this->printApi($api); echo '

'; } } else { echo '

Aucune Api

'; } } 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 '

Interface Responsable d\'Api

'; echo '
'; echo '

Rappel

'; echo ''; if ($listsub) { $api = ''; foreach ($listsub as $sub) { if ($api != $sub['id']) { $api = $sub['id']; echo '
'; echo "

".$this->printApi($sub).' 📷

'; } if ($sub['utclogin']) { if ($sub['validation']) { // Subscription already validated echo '

[validé] '.$this->printStudent($sub).'

'; } else if (is_null($sub['validation'])) { // At least one waiting subscription echo "

[valider] " .$this->printStudent($sub). " Exclusivité : $sub[indicator]% [décliner]

"; } else { // validation = FALSE lignes ignored } } else { // Not yet any subscription for this Api (LEFT JOIN might have add null student line) echo "

Aucune inscription à gérer

"; } } } else { echo "

Aucune Api à gérer

"; } } public function apiStudents($students) { echo "
"; if (isset($students[0])) { // Api Title echo '

'.$this->printApi($students[0]).'

'; // Api mailing list $mailinglist='mailto:'; foreach ($students as $s) { $mailinglist = $mailinglist."$s[email],"; } // Api CSV data (for JavaScript function) echo ""; // Api Menu echo ""; echo "
"; } else { echo '

Aucun inscrit validé

'; } foreach ($students as $s) { echo "
$s[surname] $s[firstname] | $s[level] | $s[email] ($s[utclogin])
"; } } public function apiStudentsCsv($students) { //TODO foreach ($students as $s) { echo "$s[surname];$s[firstname];$s[level];$s[email];$s[utclogin]\n"; } } private function prepare ($value, $comma=true) { $v = '"'.addslashes($value).'"'; if ($comma) $v = $v.','; return $v; } public function adminFunction ($utclogin, $mailresp, $students) { echo '

Super-pouvoirs

'; // Resp Emails echo '

Mails aux reponsables d\'Api

'; echo '
'; $all = ''; foreach ($mailresp as $m) { echo "$m[email] |"; $all = "$all,$m[email]"; } echo "[all]"; echo '
'; // Student list echo '

Liste des inscrits

'; echo ''; echo '"; // Api Menu echo "
[Fichier CSV]
"; } }