Add a page to manage (add and delete) courses

This commit is contained in:
Némunaire 2012-06-18 22:18:55 +02:00
parent b2be4613f2
commit 0d084a69e3
3 changed files with 99 additions and 8 deletions

View File

@ -25,6 +25,8 @@ class Course
public static function new_Course($name, $code, $branch = "") public static function new_Course($name, $code, $branch = "")
{ {
$code = strtoupper($code);
$c = new Course(); $c = new Course();
$c->id = sha1($code); $c->id = sha1($code);
$c->registerdate = time(); $c->registerdate = time();
@ -85,10 +87,10 @@ class Course
$qnode->setAttribute("xml:id", $this->id); $qnode->setAttribute("xml:id", $this->id);
$qnode->setAttribute("name", $this->name); $qnode->setAttribute("name", $this->name);
$qnode->setAttribute("code", intval($this->code)); $qnode->setAttribute("code", $this->code);
$qnode->setAttribute("branch", $this->branch); $qnode->setAttribute("branch", $this->branch);
$qnode->setAttribute("registerdate", $this->registerdate); $qnode->setAttribute("registerdate", $this->registerdate);
$qnode->setAttribute("validated", $this->validated); $qnode->setAttribute("validated", intval($this->validated));
return $qnode; return $qnode;
} }
@ -108,6 +110,16 @@ class Course
return $this->name; return $this->name;
} }
public function getCode()
{
return $this->code;
}
public function getBranch()
{
return $this->branch;
}
public function isValidated() public function isValidated()
{ {
return $this->validated; return $this->validated;

80
addCourse.php Normal file
View File

@ -0,0 +1,80 @@
<?php
include ("header.html");
require_once("Course.class.php");
//if (empty($_SESSION["connected"]))
// die("<h2>Vous devez être connecté pour accédé à cette partie</h2>");
if (isset($_POST["send"]))
{
if (empty($_POST["fullname"]))
echo "<h2>Le nom complet n'est pas optionnel !</h2>";
else if (empty($_POST["code"]))
echo "<h2>Le code du cours n'est pas optionnel !</h2>";
else
{
$cs = Course::getCourses();
$c = Course::new_Course($_POST["fullname"], $_POST["code"], $_POST["branch"]);
if (array_key_exists($c->getId(), $cs))
echo "<h2>Ce cours est déjà enregistré !</h2>";
else
{
$cs[] = $c;
Course::setCourses($cs);
echo "<h2>Cours ajouté avec succès !</h2>";
}
}
}
else if (isset($_GET["del"]))
{
$cs = Course::getCourses();
if (array_key_exists($_GET["del"], $cs))
{
unset($cs[$_GET["del"]]);
Course::setCourses($cs);
echo "<h2>Cours supprimé avec succès !</h2>";
}
else
echo "<h2>Le cours n'a pas été trouvé</h2><meta http-equiv=\"refresh\" content=\"2;URL=./addCourse.php\">";
}
else
{
?>
<section id="introduction">
<article id="ajoutCours">
<h2>Ajouter un cours</h2>
<form method="post" action="addCourse.php">
<label for="fullname">Nom complet :</label> <input type="text" name="fullname" id="fullname" maxlength="32"><br><br>
<label for="code">Code :</label> <input type="text" name="code" id="code" maxlength="10"><br>
Par exemple : CODO pour Compression de données<br><br>
<label for="branch">Branche d'électifs :</label> <input type="text" name="branch" id="branch" maxlength="100"><br>
Précisez s'il s'agit d'un cours réservé aux MTM, TDA ou SRC (par exemple). Si plusieurs sont concernés, séparez par des ;. Si tous son concernés, laissez vide.<br><br>
<input type="submit" name="send" value="Ajouter">
</form>
</article>
<article id="delCours">
<h2>Supprimer un cours</h2>
<?php
$cs = Course::getCourses();
foreach($cs as $c)
{
echo $c->getName()." (".$c->getCode()." dans ".$c->getBranch().") <a href=\"addCourse.php?del=".$c->getId()."\">Supprimer</a><br>";
}
?>
</article>
</section>
<?php
}
include ("footer.html");
?>
</body>
</html>

View File

@ -97,7 +97,7 @@ foreach($cs as $c)
</article> </article>
<aside id="quest"> <aside id="quest">
<img src="left_triangle2.gif" id="arrow2" alt=""/> <img src="left_triangle2.gif" id="arrow2" alt="">
<h3>La question</h3> <h3>La question</h3>
<p> <p>
La question sera afficher sur 1 ligne. Donc pas la peine de La question sera afficher sur 1 ligne. Donc pas la peine de
@ -108,20 +108,19 @@ foreach($cs as $c)
<article> <article>
<p id="questionPart"> <p id="questionPart">
<label id="q" for="question"> <label id="q" for="question">
Quelle est votre question ? </label><br/> Quelle est votre question ? </label><br>
<textarea id="question" name="question" <textarea id="question" name="question"
rows="3" cols="70" rows="3" cols="70"
placeholder="Entrez votre question ici"></textarea> placeholder="Entrez votre question ici"></textarea>
</p> </p>
<p id="answerList"> <p id="answerList">
<label for="answer">Quelle est la réponse ? </label><br/> <label for="answer">Quelle est la réponse ? </label><br/>
<input id="answer" name="answer0" type="text" /> <input id="answer" name="answer0" type="text">
</p> </p>
<p> <p>
<script type="text/javascript">var nbAnswer = 1;</script> <script type="text/javascript">var nbAnswer = 1; document.write('<input type="button" value="Ajouter une réponse supplémentaire" onclick="add()">');</script>
<input type="button" value="Ajouter une réponse supplémentaire" <noscript>Vous devez activer JavaScript pour ajouter des réponses</noscript>
onclick="add()"/>
</p> </p>
<p> <p>
<label for="email">Merci d'indiquer votre adresse &eacute;lectronique :</label><br/> <label for="email">Merci d'indiquer votre adresse &eacute;lectronique :</label><br/>