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

Foire aux Api

'; } public function printInstructions($row) { 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)

"; if ($isResp) { echo '[Gérer ses Api] '; } if ($isAdmin) { echo '[Super-pouvoirs] '; } if ($isResp || $isAdmin) { echo '[Accueil]'; } } 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) { #KNOWN_BUB #TODO Il est possible de ses déinscrire en utilisant directement l'URL if ($list) { echo '

Vos inscriptions

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

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

"; } echo '

'; if ($this->isActive()) { if ($row['validation']) { echo "[validé] "; } else { echo "[désinscription] "; } } echo $this->printApi($row); echo ' ['.$row['semester'].$row['year'].', inscrit le '.$row['subdate'].']'; echo '

'; } } else { echo '

Aucune inscription

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

Liste des Api

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

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

"; } echo '

'; if ($this->isActive()) { if ($row['open'] && $row['is_available']) { echo "[inscription] "; } elseif (! $row['is_available']) { echo "[indisponible] "; } else { echo '[complet] '; } } echo $this->printApi($row); 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

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

'.$this->printWeek($sub).'

'; 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]%

"; } 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 adminFunction ($utclogin) { echo "

Je dois vérifier que $utclogin a vraiment des super-pouvoirs...

"; } }