예제 #1
0
    if (isset($requestPayload['title'])) {
        $params['newTitle'] = $requestPayload['title'];
    }
    if (isset($params['newTitle'])) {
        $jsonResponse = $Preferences->fetchByUserAndTableAndTitle($currentUser['id'], $table, $params['newTitle']);
        // $Preferences->updateDefaultByName($currentUser['id'], $table, $jsonResponse);
    } else {
        $jsonResponse = $Preferences->fetchByUserAndTableAndTitle($currentUser['id'], $table);
    }
    JsonView::render($jsonResponse);
})->via('GET', 'POST', 'PUT', 'DELETE');
$app->get("/{$v}/preferences/:table", function ($table) use($app, $ZendDb, $acl) {
    $currentUser = Auth::getUserInfo();
    $params['table_name'] = $table;
    $Preferences = new DirectusPreferencesTableGateway($acl, $ZendDb);
    $jsonResponse = $Preferences->fetchSavedPreferencesByUserAndTable($currentUser['id'], $table);
    JsonView::render($jsonResponse);
});
/**
 * BOOKMARKS COLLECTION
 */
$app->map("/{$v}/bookmarks(/:id)/?", function ($id = null) use($params, $app, $ZendDb, $acl, $requestPayload) {
    $currentUser = Auth::getUserInfo();
    $bookmarks = new DirectusBookmarksTableGateway($acl, $ZendDb);
    switch ($app->request()->getMethod()) {
        case "PUT":
            $bookmarks->updateBookmark($requestPayload);
            $id = $requestPayload['id'];
            break;
        case "POST":
            $requestPayload['user'] = $currentUser['id'];