コード例 #1
0
ファイル: SubmitController.php プロジェクト: ivandaum/m2m
 public function submit()
 {
     if (!isset($_POST['question'])) {
         $this->submitError();
         return false;
     }
     $question = $_POST['question'];
     $wordCount = preg_split('/[.,\\/ -]/', $question);
     $wordCount = count($wordCount);
     if (empty($question) || $wordCount <= 3) {
         $this->submitError("Votre question doit faire au moins 3 mots");
         return false;
     }
     $QuoteModel = new QuoteModel();
     $questionExist = $QuoteModel->getByText($question);
     if (count($questionExist) > 0) {
         $this->submitError("Cette question à deja été posée.");
         return false;
     }
     $QuoteChecker = new QuoteChecker();
     if (!$QuoteChecker->canUserCreateQuote()) {
         $this->submitError("Vous devez attendre 3 minutes entre chaque soumission de question.");
         return false;
     }
     $success = $QuoteModel->create($question);
     if ($success) {
         $_POST['question'] = "";
         $this->submitSuccess();
     } else {
         $this->submitError();
     }
 }
コード例 #2
0
ファイル: QuoteChecker.php プロジェクト: ivandaum/m2m
 public function canUserCreateQuote()
 {
     $limitTime = 3;
     $QuoteModel = new QuoteModel();
     $userQuotes = $QuoteModel->getByUserIp();
     if (empty($userQuotes)) {
         return true;
     }
     $lastQuoteCreation = $userQuotes[0]['created_at'];
     $diffInMinutes = round((time() - $lastQuoteCreation) / 60);
     if ($diffInMinutes >= $limitTime) {
         return true;
     }
     return false;
 }