120 lines
2.8 KiB
PHP
Executable File
120 lines
2.8 KiB
PHP
Executable File
<!DOCTYPE html>
|
|
|
|
<?php
|
|
|
|
//error_reporting(E_ALL);
|
|
define("FILENAME", "questions_file.nemubot");
|
|
|
|
|
|
include("Question.class.php");
|
|
include("QuestionsFile.class.php");
|
|
|
|
|
|
// Change this variable depending on the server
|
|
$confirmationAddress = "confirmation.php?id=";
|
|
|
|
if (isset ($_POST['send']))
|
|
{
|
|
//Gets parameters: course, question and answers
|
|
$course = "";
|
|
$answers = array();
|
|
foreach ($_POST as $key => $value)
|
|
{
|
|
if ($key == "question")
|
|
$question = $value;
|
|
else if ($key == "course")
|
|
$course = $value;
|
|
else if (preg_match("#^answer#", $key))
|
|
$answers[] = $value;
|
|
}
|
|
|
|
//Check we have at least a question and an answer
|
|
if (empty($question))
|
|
die("Veuillez indiquer une question !");
|
|
else if (count($answers) <= 0)
|
|
die("Veuillez indiquer au moins une réponse correcte !");
|
|
else if (count($_POST['email']) <= 0)
|
|
die("Veuillez indiquer une adresse mail valide");
|
|
else
|
|
{
|
|
$quest = Question::new_Question($question, $answers, $course);
|
|
$quest->set_validator($_POST['email']);
|
|
|
|
// @TODO: Create/Load a QuestionFile and add the question (it must be unique)
|
|
$file = new QuestionsFile('questions.xml');
|
|
$file->add_question($quest);
|
|
$file->save();
|
|
|
|
// @TODO: Find a validator (from the list of previous senders for example?)
|
|
|
|
// @TODO: Update the question and save the file
|
|
|
|
// @TODO: Send mail to the selected validator
|
|
|
|
// Get an email from the list
|
|
|
|
echo 'Mail of user : ' . $_POST['email'] . "<br/>";
|
|
|
|
/* This code works, perhaps should be placed in a method in Question class?
|
|
$to = $_POST['email'];
|
|
$subject = "[Nemubot] Confirmation de question";
|
|
$headers = "From: Nemubot <bot@nemunai.re>";
|
|
$message = "Bonjour,\n" .
|
|
"Êtes vous la personne qui a posté une nouvelle question ?\n" .
|
|
"Adresse de validation:
|
|
$confirmationAddress . $quest->getId()";
|
|
|
|
if (mail($to, $subject, $message, $headers))
|
|
{
|
|
echo ("Email sent");
|
|
}
|
|
else
|
|
echo ("Error with the email");
|
|
//*/
|
|
}
|
|
|
|
}
|
|
else
|
|
header("Location: ./");
|
|
|
|
?>
|
|
|
|
<html>
|
|
<head>
|
|
<meta charset="utf8" />
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<article id="validate">
|
|
<h2>Merci de votre participation!</h2>
|
|
<p>
|
|
Votre question a bien été ajoutée à la liste.<br/>
|
|
Elle doit maintenant être confirmée. Un email a été envoyé
|
|
à l'un des membres du chan pour qu'il valide votre question.
|
|
</p>
|
|
|
|
<p>
|
|
Vous pouvez proposer de nouvelles questions en cliquant
|
|
sur le lien ci-dessous.<br/>
|
|
<a href="index.html">Proposer une nouvelle question</a>
|
|
</p>
|
|
</article>
|
|
|
|
<p>
|
|
<h3>La partie ci dessous est uniquement réservée au debug</h3>
|
|
Merci de ne pas en tenir compte
|
|
</p>
|
|
<p>
|
|
Rappels de la questions<br/>
|
|
<?php $quest->print_test() ?>
|
|
</p>
|
|
<p>
|
|
URL de validation:<br/>
|
|
<a href=<?php echo
|
|
$confirmationAddress . $quest->getId() ?>>Valider la question</a>
|
|
</p>
|
|
|
|
</body>
|
|
</html>
|