/** * Executes createChat action * */ public function executeCreateChat() { $request = $this->getRequest(); if ($request->isMethod('post')) { // get params $askerId = $request->getPostParameter('askerId'); $expertId = $request->getPostParameter('expertId'); $question = urldecode($request->getPostParameter('question')); $askerNick = $request->getPostParameter('askerNick'); $expertNick = $request->getPostParameter('expertNick'); $chatSessionId = $request->getPostParameter('chatSessionId'); // create new whiteboard chat $chat = new WhiteboardChat(); $chat->setIsPublic(false); $chat->setAskerId($askerId); $chat->setExpertId($expertId); $chat->setAskerNickname($askerNick); $chat->setExpertNickname($expertNick); $chat->setQuestion($question); $chat->save(); // chat directory $chat->setDirectory($chat->getId() . '_' . $chatSessionId); $chat->save(); // json response $this->getResponse()->setContentType('application/json'); $data_array = array("chat_id" => $chat->getId()); $data_json = json_encode($data_array); return $this->renderText($data_json); } }