示例#1
0
 public function delete($id)
 {
     $id = (int) $id;
     $this->_access->query("START TRANSACTION");
     $manageRateDomain = new RateDomainManager();
     $manageRateQuality = new RateQualityManager();
     $manageRateDomain->deleteByActivityId($id);
     $manageRateQuality->deleteByActivityId($id);
     $manageQuestion = new QuestionManager();
     $questions = $manageQuestion->getQuestionsOfQuiz($id);
     foreach ($questions as $q) {
         $manageQuestion->delete($q->getId());
     }
     $this->deleteResultByQuiz($id);
     $quiz = $this->getById($id);
     if ($quiz->getPostId() !== 0) {
         $this->unpost($quiz);
     }
     $this->_access->delete(StudyPressDB::getTableNameVisite(), array(StudyPressDB::COL_ID_ACTIVITY_VISITE => $id));
     $this->_access->delete(StudyPressDB::getTableNameActivity(), array(StudyPressDB::COL_ID_ACTIVITY => $id));
     if ($this->isError()) {
         $m = $this->getMessageError();
         $this->_access->query("ROLLBACK");
         $this->_access->setMsgError($m);
     } else {
         $this->_access->query("COMMIT");
     }
 }
if (isset($_POST['type']) && $_POST['type'] === "remove-question") {
    if (isset($_POST['id_question']) && isset($_POST['id_quiz'])) {
        $managerQuiz = new QuizManager();
        $managerQuestion = new QuestionManager();
        $v = new validation();
        $v->addSource($_POST);
        $v->AddRules(array('id_question' => array('type' => 'numeric', 'required' => 'true', 'min' => '1', 'max' => '999999', 'trim' => 'true'), 'id_quiz' => array('type' => 'numeric', 'required' => 'true', 'min' => '1', 'max' => '999999', 'trim' => 'true')));
        $v->run();
        if (sizeof($v->errors) > 0) {
            header("HTTP/1.0 400 Bad Request");
        } else {
            $quiz = $managerQuiz->getById($v->sanitized['id_quiz']);
            if ($quiz) {
                foreach ($quiz->getQuestions() as $q) {
                    if ($q->getId() == $v->sanitized['id_question']) {
                        $managerQuestion->delete($v->sanitized['id_question']);
                        echo "true";
                        break;
                    }
                }
            }
        }
    }
    exit;
}
if (isset($_POST['type']) && $_POST['type'] === "get-question") {
    if (isset($_POST['id_question']) && isset($_POST['id_quiz'])) {
        $managerQuestion = new QuestionManager();
        $managerQuiz = new QuizManager();
        $v = new validation();
        $v->addSource($_POST);
示例#3
0
         $questionManager = new QuestionManager($bdd);
         $question = new Question($_POST);
         $questionOld = $questionManager->get($question->id());
         $question->setUserid($questionOld->userid());
         $questionManager->update($question);
         header('Location: ?controler=question&action=list');
     } else {
         header('Location: ?controler=question&action=list');
     }
     break;
 case 'delete':
     $adminLvlThisControler = 3;
     require_once 'lib/checkRights.php';
     if (isset($_GET['id'])) {
         $questionManager = new QuestionManager($bdd);
         $questionManager->delete($_GET['id']);
         header('Location: ?controler=question&action=list');
     } else {
         header('Location: ?controler=question&action=list');
     }
     break;
 case 'csvImport':
     $adminLvlThisControler = 4;
     require_once 'lib/checkRights.php';
     if (isset($_POST['file']) && !empty($_POST['theme'])) {
         if ($file = fopen('web/csv/' . $_POST['file'], 'r')) {
             $questionManager = new QuestionManager($bdd);
             $question = new Question(array());
             while ($ligne = fgetcsv($file, 0, '|', '"')) {
                 $question->setQuestion(stripslashes($ligne[0]));
                 $question->setRep1($ligne[1]);