GIF89a;
Direktori : /home/serb/public_html/livechat/php/controller/ |
Current File : /home/serb/public_html/livechat/php/controller/CannedMessageController.php |
<?php class CannedMessageController extends Controller { // Constants const DATA_TYPE = 'canned_message'; // Get all canned messages public function listAction() { $messages = DataModel::repo(self::DATA_TYPE)->findAll(); $result = array(); foreach($messages as $message) { $result[] = array('id' => $message->id, 'name' => $message->key, 'body' => $message->value); } return $this->json(array( 'success' => true, 'messages' => $result )); } // Get given canned message public function getAction() { $request = $this->get('request'); // Get the input $id = $request->postVar('id'); // Get the user $message = DataModel::repo(self::DATA_TYPE)->find($id); if($message) { // Return a successful response $message = array('id' => $message->id, 'name' => $message->key, 'body' => $message->value); return $this->json(array('success' => true, 'user' => $message)); } // Return an error response return $this->json(array('success' => false)); } // Update canned message public function updateAction() { $request = $this->get('request'); // Get the input $id = $request->postVar('id'); $name = $request->postVar('name'); $body = $request->postVar('body'); // Get the message $message = DataModel::repo(self::DATA_TYPE)->find($id); if($message) { // Set new properties $message->setRawData(array('key' => $name, 'value' => $body)); // Update the message $message->save(); // Return a successful response return $this->json(array('success' => true)); } else { return $this->createAction(); } } // Create canned message public function createAction() { $request = $this->get('request'); // Get the input $name = $request->postVar('name'); $body = $request->postVar('body'); $message = new DataModel(self::DATA_TYPE, array('key' => $name, 'value' => $body)); // Create the message if($message->save()) { // Return a successful response return $this->json(array('success' => true, 'id' => $message->id)); } $errors = array('Couldn\'t save the message'); // Return an error response return $this->json(array('success' => false, 'errors' => $errors)); } // Delete canned message public function deleteAction() { $request = $this->get('request'); // Get the input $id = $request->postVar('id'); // Get the message $message = DataModel::repo(self::DATA_TYPE)->find($id); if($message) { // Remove the message $message->remove(); // Return a successful response return $this->json(array('success' => true)); } // Return an error response return $this->json(array('success' => false)); } } ?>