91 lines
2.3 KiB
PHP
91 lines
2.3 KiB
PHP
<?php
|
|
|
|
|
|
class FaqController extends DefaultController
|
|
{
|
|
public function indexAction()
|
|
{
|
|
$view = new Template( 'faq' );
|
|
$FAQModel = new FaqModel();
|
|
$room = $FAQModel->getRoom();
|
|
|
|
$view->set_placeholder( 'room_name', $room['name'] );
|
|
$view->set_placeholder( 'room_code', $room['code'] );
|
|
$view->set_placeholder( 'wasted_time', WASTED_TIME );
|
|
|
|
return $view->getHtml();
|
|
}
|
|
|
|
public function getQuestionsAction()
|
|
{
|
|
$view = new Apitemplate();
|
|
$FAQModel = new FaqModel();
|
|
$room = $FAQModel->getRoom();
|
|
|
|
$questions = $FAQModel->getQuestions( $room['id'] );
|
|
|
|
$view->setResponse( array( 'questions' => $questions ) );
|
|
|
|
return $view->getResponse();
|
|
}
|
|
|
|
public function addQuestionAction()
|
|
{
|
|
$view = new Apitemplate();
|
|
$FAQModel = new FaqModel();
|
|
$room = $FAQModel->getRoom();
|
|
$question = Api::getVar( 'question' );
|
|
|
|
if( empty( $question ) || strlen( $question ) > 500 || strlen( $question ) < 10 )
|
|
{
|
|
$view->setSuccess( false );
|
|
$view->setHeaderCode( 903 );
|
|
return $view->getResponse();
|
|
}
|
|
|
|
try {
|
|
$FAQModel->addQuestion( $room['id'], $question );
|
|
} catch( Exception $e )
|
|
{
|
|
$view->setSuccess( false );
|
|
$view->setHeaderCode( 901 );
|
|
$view->setResponse( array( $e->getMessage() ));
|
|
return $view->getResponse();
|
|
}
|
|
|
|
$view->setSuccess( true );
|
|
|
|
return $view->getResponse();
|
|
}
|
|
|
|
public function addAnswerAction()
|
|
{
|
|
$view = new Apitemplate();
|
|
$FAQModel = new FaqModel();
|
|
$room = $FAQModel->getRoom();
|
|
$question_id = Api::getVar( 'question_id' );
|
|
$answer = Api::getVar( 'answer' );
|
|
|
|
if( !$FAQModel->checkUserIsRoomOwner( $room ) )
|
|
{
|
|
$view->setSuccess( false );
|
|
$view->setHeaderCode( 905 );
|
|
return $view->getResponse();
|
|
}
|
|
|
|
try {
|
|
$FAQModel->addAnswer( $question_id, $answer );
|
|
} catch( Exception $e )
|
|
{
|
|
$view->setSuccess( false );
|
|
$view->setHeaderCode( 902 );
|
|
return $view->getResponse();
|
|
}
|
|
|
|
$view->setSuccess( true );
|
|
|
|
return $view->getResponse();
|
|
}
|
|
|
|
|
|
} |