Stunden ende, einiges fertig, fehlt nicht mehr viel

Took 2 hours 31 minutes
This commit is contained in:
2020-10-02 10:41:09 +02:00
parent 1fd648bc4a
commit c37ad92dbc
51 changed files with 26430 additions and 17 deletions

66
controller/DefaultController.class.inc.php Normal file → Executable file
View File

@ -13,17 +13,71 @@ class DefaultController
*/
public function indexAction()
{
$view = new Template( 'test' );
$DefaultModel = new DefaultModel();
$value = $DefaultModel->getTestMessage();
$view->set_placeholder( 'test', $value );
$view = new Template( 'start' );
// Return the HTML Code to the index.php
return $view->getHtml();
} # function indexAction()
/**
* @return string
* @throws Exception
*/
public function joinFAQAction()
{
$view = new Template( 'start' );
$DefaultModel = new DefaultModel();
$Request = new Request();
$room_code = $Request->getVar( 'code', null, 'GET' );
if( empty( $room_code ) && !isset( $room_code ) )
{
$view->set_placeholder( 'error', 'Room-Code is invalid!' );
return $view->getHtml();
}
if( ( $room_id = $DefaultModel->checkCode( $room_code ) ) === false )
{
$view->set_placeholder( 'error', 'Room-Code is invalid!' );
return $view->getHtml();
}
if( !$DefaultModel->joinRoom( $room_id ) )
{
$view->set_placeholder( 'error', 'An error occured, please try again later!' );
return $view->getHtml();
}
return $view->getHtml();
}
/**
* @return string
* @throws Exception
*/
public function createFAQAction()
{
$view = new Template( 'start' );
$DefaultModel = new DefaultModel();
$Request = new Request();
$room_name = $Request->getVar( 'room-name' );
if( !$DefaultModel->createRoom( $room_name ) )
{
$view->set_placeholder( 'error', 'An error occured, please try again later!' );
return $view->getHtml();
}
return $view->getHtml();
}
} # class

View File

@ -0,0 +1,81 @@
<?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'] );
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' );
try {
$FAQModel->addQuestion( $room, $question );
} catch( Exception $e )
{
$view->setSuccess( false );
$view->setHeaderCode( 901 );
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();
}
}