Пример #1
0
 $ucategory = PMF_Filter::filterInput(INPUT_POST, 'category', FILTER_VALIDATE_INT);
 $question = PMF_Filter::filterInput(INPUT_POST, 'question', FILTER_SANITIZE_STRIPPED);
 $save = PMF_Filter::filterInput(INPUT_POST, 'save', FILTER_VALIDATE_INT, 0);
 // If e-mail address is set to optional
 if (!$faqConfig->get('main.optionalMailAddress') && is_null($email)) {
     $email = $faqConfig->get('main.administrationMail');
 }
 if (!is_null($name) && !empty($name) && !is_null($email) && !empty($email) && !is_null($question) && !empty($question) && $stopwords->checkBannedWord(PMF_String::htmlspecialchars($question))) {
     if ($faqConfig->get('records.enableVisibilityQuestions')) {
         $visibility = 'N';
     } else {
         $visibility = 'Y';
     }
     $questionData = array('username' => $name, 'email' => $email, 'category_id' => $ucategory, 'question' => $question, 'is_visible' => $visibility);
     if (1 != $save) {
         $cleanQuestion = $stopwords->clean($question);
         $user = new PMF_User_CurrentUser($faqConfig);
         $faqSearch = new PMF_Search($faqConfig);
         $faqSearchResult = new PMF_Search_Resultset($user, $faq, $faqConfig);
         $searchResult = [];
         $mergedResult = [];
         foreach ($cleanQuestion as $word) {
             $searchResult[] = $faqSearch->search($word);
         }
         foreach ($searchResult as $resultSet) {
             foreach ($resultSet as $result) {
                 $mergedResult[] = $result;
             }
         }
         $faqSearchResult->reviewResultset($mergedResult);
         if (0 < $faqSearchResult->getNumberOfResults()) {