Commit 4fc3e399 authored by Stephane Crozat's avatar Stephane Crozat

Adding subscription enabling/disabling function

parent a1866e4c
# Create user and db
DROP USER apisub;
CREATE USER apisub WITH ENCRYPTED PASSWORD 'password';
DROP DATABASE apisub;
CREATE DATABASE apisub;
GRANT ALL PRIVILEGES ON DATABASE apisub TO apisub;
CREATE DATABASE apisub WITH OWNER apisub;
# Connect
psql -h localhost -U apisub -d apisub
# PHP
On Ubuntu, add XML lib to PHP
......
# Documentation
## Configuration
### `lib/config.php`
Set IS_ACTIVE to `false` to disable subscription (and unsubscription).
......@@ -24,8 +24,9 @@ if (!isset($_SESSION['ticket'])) {
$_SESSION['localcopy'] = true; //call localcopy once per session
}
include $_SERVER['DOCUMENT_ROOT'].'/apisub/lib/db.php';
include 'lib/db.php';
include 'lib/views.php';
include 'lib/config.php';
$db = new DB();
if ($_SESSION['localcopy']) {
......
<?php
const IS_ACTIVE = true;
class Config {
public static function isActive() {
return IS_ACTIVE;
}
}
......@@ -2,26 +2,30 @@
class Views {
public static function isActive() {
return Config::isActive();
}
public static function printHtmlBegin() {
echo '<html>';
echo '<head>';
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>';
echo '<title>Api Sub</title>';
echo '<link href="css/main.css" type="text/css" rel="stylesheet"/>';
echo '</head>';
echo '<body>';
echo '<h1>Inscriptions Api</h1>';
echo '<html>';
echo '<head>';
echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>';
echo '<title>Api Sub</title>';
echo '<link href="css/main.css" type="text/css" rel="stylesheet"/>';
echo '</head>';
echo '<body>';
echo '<h1>Inscriptions Api</h1>';
}
public static function printInstructions() {
echo '<h2>Instructions</h2>';
echo '<p>Les Api sont décrites ici : <b><a href="https://apint.utc.fr/cat">https://apint.utc.fr/cat</a></b></p>';
echo '<p>Veillez à avoir bien lu la fiche avant de vous inscrire (pré-requis, dates...). Vous pouvez vous inscrire et vous désinscrire librement jusqu\'au 10 décembre 2018.</p>';
echo '<p>Veillez à avoir bien lu la fiche avant de vous inscrire (pré-requis, dates...). Vous pouvez vous inscrire et vous désinscrire librement jusqu\'au 10 décembre 2018 (20h).</p>';
echo '<p>Vous ne <b>pouvez pas</b> suivre deux Api qui se chevauchent (sauf pour le cas particulier de l\'Api <i>Animer une Api</i>). Si vous choisissez deux Api qui se chevauchent, indiquez vos préférences dans la zone de commentaire.</p>';
}
public static function printUser($utclogin, $surname, $firstname) {
echo '<p><i>'.$firstname.' '. $surname.'</i> (<b>'.$utclogin.'</b>)</p>';
echo '<p><i>'.$firstname.' '. $surname.'</i> (<b>'.$utclogin.'</b>)</p>';
}
private static function printApi($row) {
......@@ -29,43 +33,53 @@ class Views {
}
public static function printSubList($list, $utclogin) {
if ($list) {
echo '<h2>Vos inscriptions</h2>';
foreach ($list as $row) {
echo '<p>';
echo ' <a href="index.php?action=unsub&api='.$row['code'].'&utclogin='.$utclogin.'">[désinscription]</a> ';
echo Views::printApi($row);
echo ' ['.$row['semester'].$row['year'].', inscrit le '.$row['subdate'].']';
echo '</p>';
}
}
else {
echo '<h2>Aucune inscription</h2>';
}
}
if ($list) {
echo '<h2>Vos inscriptions</h2>';
foreach ($list as $row) {
echo '<p>';
if (Views::isActive()) {
echo ' <a href="index.php?action=unsub&api='.$row['code'].'&utclogin='.$utclogin.'">[désinscription]</a> ';
}
echo Views::printApi($row);
echo ' ['.$row['semester'].$row['year'].', inscrit le '.$row['subdate'].']';
echo '</p>';
}
}
else {
echo '<h2>Aucune inscription</h2>';
}
}
public static function printExplanation($comment, $utclogin) {
echo '<h2>Commentaire</h2>';
echo '<form method="get" action="index.php">';
echo '<textarea name="explanation" cols="100" rows="5">'.$comment.'</textarea>';
echo '<br/>';
echo '<input type="submit" value="Enregistrer le commentaire"/>';
echo '</form>';
if (Views::isActive()) {
echo '<h2>Commentaire</h2>';
echo '<form method="get" action="index.php">';
echo '<textarea name="explanation" cols="100" rows="5">'.$comment.'</textarea>';
echo '<br/>';
echo '<input type="submit" value="Enregistrer le commentaire"/>';
echo '</form>';
}
else {
echo '<h2>Commentaire</h2>';
echo '<p>'.$comment.'</p>';
}
}
public static function printApiList($list, $utclogin) {
if ($list) {
echo '<h2>Liste des Api</h2>';
foreach ($list as $row) {
echo '<p>';
echo '<a href="index.php?action=sub&api='.$row['code'].'&utclogin='.$utclogin.'">[inscription]</a> ';
echo Views::printApi($row);
echo '</p>';
}
}
else {
echo '<h2>Aucune Api</h2>';
}
}
public static function printApiList($list, $utclogin) {
if ($list) {
echo '<h2>Liste des Api</h2>';
foreach ($list as $row) {
echo '<p>';
if (Views::isActive()) {
echo '<a href="index.php?action=sub&api='.$row['code'].'&utclogin='.$utclogin.'">[inscription]</a> ';
}
echo Views::printApi($row);
echo '</p>';
}
}
else {
echo '<h2>Aucune Api</h2>';
}
}
}
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