function createUser() { $app = Slim\Slim::getInstance(); $json = decodeJsonOrFail($app->request->getBody()); $user = new User($json); $user->save(); echo $user->toJson(); }
function updateGroup($id) { $app = Slim\Slim::getInstance(); $json = decodeJsonOrFail($app->request->getBody()); $group = Group::findOrFail($id); $group->update($json); echo $group->toJson(); }
function sendGoogleCloudMessage($collapseKey, array $recipientIds) { $apiKey = decodeJsonOrFail(file_get_contents('../app/gcm.json'))['apiKey']; $url = 'https://android.googleapis.com/gcm/send'; $post = array('registration_ids' => $recipientIds, 'collapse_key' => $collapseKey); $headers = array('Authorization: key=' . $apiKey, 'Content-Type: application/json'); $options = array('http' => array('header' => $headers, 'method' => 'POST', 'content' => json_encode($post))); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); //echo json_encode($post); //echo $result; }
function sendMessageToGroup($id) { $app = Slim\Slim::getInstance(); $group = Group::findOrFail($id); $json = decodeJsonOrFail($app->request->getBody()); if (!isset($json['from'])) { $json['from'] = null; } if (!isset($json['from_user_id'])) { $json['from_user_id'] = null; } $message = new Message($json); $message->group()->associate($group); $message->save(); echo $message->toJson(); }
<?php require 'require.php'; // load db settings $settings = decodeJsonOrFail(file_get_contents('../app/db.json')); // set up eloquent use Illuminate\Database\Capsule\Manager as Capsule; $capsule = new Capsule(); $capsule->addConnection($settings); $capsule->setAsGlobal(); $capsule->bootEloquent(); // set up slim $app = new Slim\Slim(array('debug' => true)); $app->response->headers->set('Content-Type', 'application/json'); $app->get('/users', 'listUsers'); $app->get('/users/:id', 'getUser'); $app->put('/users/:id/:password', 'updateUser'); $app->put('/users/:id/status/:password', 'updateStatus'); //$app->post('/users', 'createUser'); $app->post('/login', 'login'); $app->get('/groups', 'listGroups'); $app->get('/groups/:id', 'getGroup'); $app->put('/groups/:id', 'updateGroup'); $app->get('/users/:id/messages', 'listMessagesForUser'); $app->get('/users/:id/messages/:password', 'listMessagesForUser'); $app->post('/users/:id/messages', 'sendMessageToUser'); //$app->get('/groups/:id/messages', 'listMessagesForGroup'); //$app->post('/groups/:id/messages', 'sendMessageToGroup'); $app->get('/statuses', 'listStatuses'); $app->get('/urgencies', 'listUrgencies'); $app->notFound('showNotFound');