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();
}
Example #3
0
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');