/**
 * Created by PhpStorm.
 * User: shannon
 * Date: 12/14/15
 * Time: 5:45 PM
 */
use Psr\Http\Message\ServerRequestInterface as Request;
use Psr\Http\Message\ResponseInterface as Response;
use Syndicate\Repositories\UserRepository;
use Syndicate\Utils\RequestParser;
use Syndicate\Entities\User;
use Syndicate\Entities\Session;
use Syndicate\Repositories\TimezoneRepository;
$app->get('/user/list', function (Request $request, Response $response) use($app) {
    $user_collection = UserRepository::getAllUsers();
    if (empty($user_collection)) {
        $new_response = $response->withStatus(404);
        $new_response->getBody()->write("No users found");
        return $new_response;
    }
    $response->getBody()->write(json_encode($user_collection));
    return $response;
});
$save_user = function (Request $request, Response $response) {
    $parser = new RequestParser($request);
    $data = $parser->getData();
    $user = new User();
    $user->hydrate($data);
    if (!empty($data['password'])) {
        $user->setPassword($data['password']);