diff --git a/app/Http/Controllers/BoardController.php b/app/Http/Controllers/BoardController.php index 82abc6f..9eedc61 100644 --- a/app/Http/Controllers/BoardController.php +++ b/app/Http/Controllers/BoardController.php @@ -21,17 +21,87 @@ class BoardController extends Controller { ->get(); } - public function getForums() { // /api/rpc/board/forum/getforums/ + public function getCategoryName($id) { // /api/rpc/board/category/getcategoryname/id + return DB::table('for_category') + ->select('title') + ->where('id', $id) + ->get(); + } + + public function getForums() { // /api/rpc/board/forum/getforums return DB::table('for_forums') ->select('*') ->orderBy('order', 'asc') ->get(); } + public function getForum($id) { // /api/rpc/board/forum/getforum/id + return DB::table('for_forums') + ->select('*') + ->where('id', $id) + ->orderBy('order', 'asc') + ->get(); + } + + public function getForumName($id) { // /api/rpc/board/forum/getforumname/id + return DB::table('for_forums') + ->select('cat_id', 'title') + ->where('id', $id) + ->orderBy('order', 'asc') + ->get(); + } + public function getForumsInCategory($cat_id) { // /api/rpc/board/forum/getforumsincategory/cat_id return DB::table('for_forums') ->select('*') ->where('cat_id', $cat_id) ->get(); } + + public function getTopics($for, $from, $to) { // /api/rpc/board/topic/gettopics/for/from/to + return DB::table('for_threads') + ->select('*') + ->where('for_id', $id) + ->offset($from) + ->limit($to) + ->orderBy('last_date', 'desc') + ->get(); + } + + public function getTopicsUnpinned($for_id, $from, $to) { // /api/rpc/board/topic/gettopicsunpinned/for_id + return DB::table('for_threads') + ->select('*') + ->where('for_id', $for_id) + ->where('sticky', 0) + ->offset($from) + ->limit($to) + ->orderBy('last_date', 'desc') + ->get(); + } + + public function getTopicsPinned($for_id) { // /api/rpc/board/topic/gettopicspinned/for_id + return DB::table('for_threads') + ->select('*') + ->where('for_id', $for_id) + ->where('sticky', 1) + ->orderBy('last_date', 'desc') + ->get(); + } + + public function countUnpinnedTopicsInForum($for_id) { // /api/rpc/board/topic/countunpinnedtopicsinforum/for_id + return DB::table('for_threads') + ->where('for_id', $for_id) + ->where('sticky', 0) + ->count(); + } + + public function getTopic($id, $from, $to) { // /api/rpc/board/forum/gettopics/id/from/to + return DB::table('for_threads') + ->select('*') + ->where('id', $id) + ->offset($from) + ->limit($to) + ->orderBy('last_date', 'desc') + ->get(); + } } diff --git a/routes/class/board.php b/routes/class/board.php index a86a41f..ec75afa 100644 --- a/routes/class/board.php +++ b/routes/class/board.php @@ -12,7 +12,17 @@ // Category Route::get('/api/rpc/board/category/getcategories', 'BoardController@getCategories'); Route::get('/api/rpc/board/category/getcategory/{id}', 'BoardController@getCategory'); +Route::get('/api/rpc/board/category/getcategoryname/{id}', 'BoardController@getCategoryName'); // Forum Route::get('/api/rpc/board/forum/getforumsincategory/{cat_id}', 'BoardController@getForumsInCategory'); Route::get('/api/rpc/board/forum/getforums', 'BoardController@getForums'); +Route::get('/api/rpc/board/forum/getforum/{id}', 'BoardController@getForum'); +Route::get('/api/rpc/board/forum/getforumname/{id}', 'BoardController@getForumName'); + +// Topic +Route::get('/api/rpc/board/topic/gettopics/{cat}/{from}/{to}', 'BoardController@getTopics'); +Route::get('/api/rpc/board/topic/gettopicsunpinned/{cat}/{from}/{to}', 'BoardController@getTopicsUnpinned'); +Route::get('/api/rpc/board/topic/gettopicspinned/{cat}', 'BoardController@getTopicsPinned'); +Route::get('/api/rpc/board/topic/countunpinnedtopicsinforum/{for_id}', 'BoardController@countUnpinnedTopicsInForum'); +Route::get('/api/rpc/board/topic/gettopic/{cat}/{from}/{to}', 'BoardController@getTopic'); \ No newline at end of file