Merge branch 'bookmarks' into 'master'
Bookmarks See merge request 076/community/076Server!11
このコミットが含まれているのは:
コミット
f2fa0bd346
|
@ -178,6 +178,121 @@ class BoardController extends Controller {
|
|||
->get();
|
||||
}
|
||||
|
||||
public function getBookmarks(Request $request) { // /api/rpc/board/forum/getbookmarks
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
return '';
|
||||
}
|
||||
else {
|
||||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_canview'] == 1) {
|
||||
$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!';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function addBookmark(Request $request) { // /api/rpc/board/forum/addbookmark
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
return '';
|
||||
}
|
||||
else {
|
||||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_editown'] == 1) {
|
||||
DB::table('for_bookmarks')
|
||||
->insert([
|
||||
'user_id' => $check,
|
||||
'for_id' => $request->for_id,
|
||||
'top_id' => $request->top_id
|
||||
]);
|
||||
|
||||
return 'Success!';
|
||||
}
|
||||
else {
|
||||
return 'Permission denied!';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function delBookmark(Request $request) { // /api/rpc/board/forum/delbookmark
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
if ($check == 0) {
|
||||
return '';
|
||||
}
|
||||
else {
|
||||
$valid = $this->objAuth->getPermissions($request->username, $request->password);
|
||||
|
||||
if ($valid['for_editown'] == 1) {
|
||||
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 {
|
||||
return 'Permission denied!';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function addForum(Request $request) { // /api/rpc/board/forum/add
|
||||
$check = $this->objAuth->checkLegit($request->username, $request->password);
|
||||
|
||||
|
|
|
@ -25,11 +25,13 @@ 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', 'BoardController@getBookmarks');
|
||||
|
||||
Route::post('/api/rpc/board/forum/add', 'BoardController@addForum');
|
||||
Route::post('/api/rpc/board/forum/edit', 'BoardController@editForum');
|
||||
Route::post('/api/rpc/board/forum/delete', 'BoardController@deleteForum');
|
||||
Route::post('/api/rpc/board/forum/bookmark', 'BoardController@bookmarkForum');
|
||||
Route::post('/api/rpc/board/forum/addbookmark', 'BoardController@addBookmark');
|
||||
Route::post('/api/rpc/board/forum/delbookmark', 'BoardController@delBookmark');
|
||||
|
||||
// Topic
|
||||
Route::get('/api/rpc/board/topic/gettopics/{for}/{from}/{to}', 'BoardController@getTopics');
|
||||
|
|
新しいイシューから参照