Add classes to abstract Users and Courses
Can refuse a question (email the author) Can modify question before validation
This commit is contained in:
parent
6e9554e2f2
commit
42fec70edf
14 changed files with 667 additions and 401 deletions
|
|
@ -3,63 +3,53 @@
|
|||
include("Question.class.php");
|
||||
include("QuestionsFile.class.php");
|
||||
|
||||
$id = $_GET['id'];
|
||||
@$id = $_POST['id'];
|
||||
|
||||
$fileQ = new QuestionsFile("questions.xml");
|
||||
$question = $fileQ->get_question($id);
|
||||
|
||||
if (!empty($question))
|
||||
{
|
||||
$dest_mail = $question->get_validator();
|
||||
$src_mail = $question->get_validator()->getEmail();
|
||||
|
||||
// Uncomment the following part for random email
|
||||
//Build email list
|
||||
$users = User::getValidatedUsers();
|
||||
$nbUsers = count($users);
|
||||
|
||||
//Pick a random email
|
||||
do
|
||||
{
|
||||
$file = fopen('email.txt', 'r');
|
||||
$number = fgets($file);
|
||||
|
||||
$random = rand(1, intval($number));
|
||||
|
||||
for ($i = 0; $i < $random; $i++)
|
||||
{
|
||||
$dest_mail = fgets($file);
|
||||
}
|
||||
fclose($file);
|
||||
$random = rand(1, $nbUsers)-1;
|
||||
}
|
||||
while ($dest_mail == $question->get_validator());
|
||||
while ($src_mail == $users[$random]->getEmail());
|
||||
|
||||
$question->set_validator($dest_mail);
|
||||
echo $dest_mail;
|
||||
$validationAddress = "/validation.php?id=".$question->getId();
|
||||
$random = 3;
|
||||
|
||||
$question->set_validator($users[$random]);
|
||||
|
||||
/* This code works, perhaps should be placed in a method in Question class?*/
|
||||
$to = $dest_mail;
|
||||
$subject = "[Nemubot] Validation d'une question";
|
||||
$headers = "From: Nemubot <bot@nemunai.re>\n";
|
||||
$message = "Bonjour,\n"
|
||||
."Une nouvelle question a été proposée à Nemubot.\n\n"
|
||||
|
||||
."Vous avez été sélectionné pour valider la question.\n\n"
|
||||
|
||||
."Rappels de la questions:\n"
|
||||
.'Cours concerné : ' . $question->getCourse() . "\n"
|
||||
.'La question est : ' . $question->getQuestion() . "\n"
|
||||
.'Les réponses sont : ' . print_r($question->getAnswer(), true) . "\n"
|
||||
."Voici la question :\n"
|
||||
.' - Cours concerné : ' . $question->getCourse()->getName() . "\n"
|
||||
.' - Question posée : ' . $question->getQuestion() . "\n"
|
||||
." - Les réponses valides sont :\n" . $question->getAnswersMail() . "\n"
|
||||
|
||||
|
||||
."Adresse de confirmation de la question:\n"
|
||||
. "http://".$_SERVER["SERVER_NAME"]
|
||||
. dirname($_SERVER["REQUEST_URI"]) . $validationAddress
|
||||
."Adresse de confirmation de la question :\n"
|
||||
."http://".$_SERVER["SERVER_NAME"].dirname($_SERVER["REQUEST_URI"])
|
||||
."validation.php?id=".$question->getValidatorId()
|
||||
|
||||
. "\n\n Merci beaucoup de votre participation\n"
|
||||
."\n\nMerci beaucoup de votre participation\n"
|
||||
."Cordialement,\n"
|
||||
|
||||
."Cordialement,\n\n"
|
||||
|
||||
."-- \nNemubot.";
|
||||
."-- \nNemubot\nQCM accessible sur le réseau IRC rezosup, cannal #epita-qcm";
|
||||
|
||||
|
||||
if ($question->mail_utf8($to, $subject, $message, $headers))
|
||||
if ($question->mail_utf8($users[$random]->getEmail(), $subject, $message, $headers))
|
||||
{
|
||||
$fileQ->save();
|
||||
header("Location: ./thanksConfirmation.php");
|
||||
|
|
@ -67,9 +57,6 @@ if (!empty($question))
|
|||
else
|
||||
die("Une erreur s'est produite lors de l'envoie du mail");
|
||||
}
|
||||
//*/
|
||||
else
|
||||
{
|
||||
die("ID de question invalide ou déjà validé.");
|
||||
}
|
||||
?>
|
||||
|
|
|
|||
Reference in a new issue