Bookmarks #11
|
@ -178,7 +178,7 @@ class BoardController extends Controller {
|
|||
->get();
|
||||
}
|
||||
|
||||
public function getBookmarks($uid, Request $request) { // /api/rpc/board/forum/getbookmarks/uid
|
||||
public function getBookmarks(Request $request) { // /api/rpc/board/forum/getbookmarks
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
|
@ -188,10 +188,43 @@ class BoardController extends Controller {
|
|||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_canview'] == 1) {
|
||||
return DB::table('for_bookmarks')
|
||||
->select('*')
|
||||
->where('user_id', $uid)
|
||||
->get();
|
||||
$for = DB::table('for_bookmarks')
|
||||
->join('for_forums', 'for_forums.id', 'for_bookmarks.for_id')
|
||||
->join('for_category', 'for_forums.cat_id', 'for_category.id')
|
||||
->where('for_bookmarks.user_id', $check)
|
||||
->get(array(
|
||||
'for_forums.id as fid',
|
||||
'for_forums.title as ftitle',
|
||||
'for_category.title as fctitle'
|
||||
));
|
||||
|
||||
$top = DB::table('for_bookmarks')
|
||||
->join('for_threads', 'for_threads.id', 'for_bookmarks.top_id')
|
||||
->where('for_bookmarks.user_id', $check)
|
||||
->get(array(
|
||||
'for_threads.id as tid',
|
||||
'for_threads.title as ttitle'
|
||||
));
|
||||
|
||||
$forS = array();
|
||||
|
||||
foreach($for as $f) {
|
||||
$forS[] = array(
|
||||
'id' => $f->fid,
|
||||
'type' => 'forum',
|
||||
'title' => $f->fctitle.'/'.$f->ftitle
|
||||
);
|
||||
}
|
||||
|
||||
foreach($top as $t) {
|
||||
$forS[] = array(
|
||||
'id' => $t->tid,
|
||||
'type' => 'topic',
|
||||
'title' => $t->ttitle
|
||||
);
|
||||
}
|
||||
|
||||
return $forS;
|
||||
}
|
||||
else {
|
||||
return 'Permission denied!';
|
||||
|
@ -199,7 +232,7 @@ class BoardController extends Controller {
|
|||
}
|
||||
}
|
||||
|
||||
public function addBookmarks(Request $request) { // /api/rpc/board/forum/addbookmarks
|
||||
public function addBookmark(Request $request) { // /api/rpc/board/forum/addbookmark
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
|
@ -209,14 +242,14 @@ class BoardController extends Controller {
|
|||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_editown'] == 1) {
|
||||
$add = DB::table('for_bookmarks')
|
||||
DB::table('for_bookmarks')
|
||||
->insert([
|
||||
'user_id' => $request->user_id,
|
||||
'user_id' => $check,
|
||||
'for_id' => $request->for_id,
|
||||
'top_id' => $request->top_id
|
||||
]);
|
||||
|
||||
return $add;
|
||||
return 'Success!';
|
||||
}
|
||||
else {
|
||||
return 'Permission denied!';
|
||||
|
@ -224,7 +257,7 @@ class BoardController extends Controller {
|
|||
}
|
||||
}
|
||||
|
||||
public function delBookmarks(Request $request) { // /api/rpc/board/forum/delbookmarks
|
||||
public function delBookmark(Request $request) { // /api/rpc/board/forum/delbookmark
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
|
@ -234,17 +267,24 @@ class BoardController extends Controller {
|
|||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_editown'] == 1) {
|
||||
if ($request->for_id === 0) {
|
||||
return DB::table('for_bookmarks')
|
||||
->where('user_id', $request->user_id)
|
||||
->where('top_id', $request->top_id)
|
||||
->delete();
|
||||
}
|
||||
else {
|
||||
return DB::table('for_bookmarks')
|
||||
->where('user_id', $request->user_id)
|
||||
if ($request->for_id !== 0) {
|
||||
DB::table('for_bookmarks')
|
||||
->where('user_id', $check)
|
||||
->where('for_id', $request->for_id)
|
||||
->delete();
|
||||
|
||||
return 'Success!';
|
||||
}
|
||||
else if ($request->top_id !== 0) {
|
||||
DB::table('for_bookmarks')
|
||||
->where('user_id', $check)
|
||||
->where('top_id', $request->top_id)
|
||||
->delete();
|
||||
|
||||
return 'Success!';
|
||||
}
|
||||
else {
|
||||
return 'Cannot do that.';
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -25,7 +25,7 @@ Route::get('/api/rpc/board/forum/getforum/{id}', 'BoardController@getForum');
|
|||
Route::get('/api/rpc/board/forum/getforumname/{id}', 'BoardController@getForumName');
|
||||
Route::get('/api/rpc/board/forum/getpostcountfreeze/{id}', 'BoardController@getPostCountFreeze');
|
||||
Route::get('/api/rpc/board/forum/getreadonly/{id}', 'BoardController@getReadOnly');
|
||||
Route::get('/api/rpc/board/forum/getbookmarks/{id}', 'BoardController@getBookmarks');
|
||||
Route::get('/api/rpc/board/forum/getbookmarks', 'BoardController@getBookmarks');
|
||||
|
||||
Route::post('/api/rpc/board/forum/add', 'BoardController@addForum');
|
||||
Route::post('/api/rpc/board/forum/edit', 'BoardController@editForum');
|
||||
|
|
新しいイシューから参照