New API calls for user and board.
このコミットが含まれているのは:
コミット
ba8fc4831a
|
@ -4,6 +4,7 @@ namespace App\Http\Controllers;
|
|||
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Contracts\Routing\ResponseFactory;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
|
||||
class BoardController extends Controller {
|
||||
|
@ -43,6 +44,26 @@ class BoardController extends Controller {
|
|||
->get();
|
||||
}
|
||||
|
||||
public function getForumIdFromTopic($id) { // /api/rpc/board/topic/getforumidfromtopic/id
|
||||
return DB::table('for_threads')
|
||||
->select('for_id')
|
||||
->where('id', $id)
|
||||
->first()->for_id;
|
||||
}
|
||||
|
||||
public function getTopicIdFromPost($id) { // /api/rpc/board/post/gettopicidfrompost/id
|
||||
return DB::table('for_posts')
|
||||
->select('top_id')
|
||||
->where('id', $id)
|
||||
->first()->top_id;
|
||||
}
|
||||
|
||||
public function getForumIdFromPost($id) { // /api/rpc/board/post/getforumidfrompost/id
|
||||
$top_id = $this->getTopicIdFromPost($id);
|
||||
|
||||
return $this->getForumIdFromTopic($top_id);
|
||||
}
|
||||
|
||||
public function getForumName($id) { // /api/rpc/board/forum/getforumname/id
|
||||
return DB::table('for_forums')
|
||||
->select('cat_id', 'title')
|
||||
|
@ -51,6 +72,20 @@ class BoardController extends Controller {
|
|||
->get();
|
||||
}
|
||||
|
||||
public function getPostCountFreeze($id) { // /api/rpc/board/forum/getpostcountfreeze/id
|
||||
return DB::table('for_forums')
|
||||
->select('post_count_freeze')
|
||||
->where('id', $id)
|
||||
->first()->post_count_freeze;
|
||||
}
|
||||
|
||||
public function getReadOnly($id) { // /api/rpc/board/forum/getreadonly/id
|
||||
return DB::table('for_forums')
|
||||
->select('readonly')
|
||||
->where('id', $id)
|
||||
->first()->readonly;
|
||||
}
|
||||
|
||||
public function getForumsInCategory($cat_id) { // /api/rpc/board/forum/getforumsincategory/cat_id
|
||||
return DB::table('for_forums')
|
||||
->select('*')
|
||||
|
@ -142,13 +177,6 @@ class BoardController extends Controller {
|
|||
->get();
|
||||
}
|
||||
|
||||
public function getTopicId($post_id) { // /api/rpc/board/topic/gettopicid/post_id
|
||||
return DB::table('for_posts')
|
||||
->select('top_id')
|
||||
->where('id', $post_id)
|
||||
->get();
|
||||
}
|
||||
|
||||
public function getCurrentPostCount($user_id) { // /api/rpc/board/post/getcurrentpostcount/user_id
|
||||
return DB::table('for_posts')->where('user_id', $user_id)->max('postcount');
|
||||
}
|
||||
|
@ -171,28 +199,28 @@ class BoardController extends Controller {
|
|||
->limit($to)
|
||||
->orderBy('for_posts.post_date', 'asc')
|
||||
->get(array(
|
||||
"for_posts.id",
|
||||
"top_id",
|
||||
"for_posts.user_id",
|
||||
"post_date",
|
||||
"message",
|
||||
"delete",
|
||||
"lastedit",
|
||||
"ipaddress",
|
||||
"delreason",
|
||||
"nolayout",
|
||||
"postcount",
|
||||
"username",
|
||||
"perm_id",
|
||||
"total_posts",
|
||||
"header",
|
||||
"footer",
|
||||
"member_title",
|
||||
"gender",
|
||||
"avatar",
|
||||
"name_style",
|
||||
"display_name",
|
||||
"country"
|
||||
'for_posts.id',
|
||||
'top_id',
|
||||
'for_posts.user_id',
|
||||
'post_date',
|
||||
'message',
|
||||
'delete',
|
||||
'lastedit',
|
||||
'ipaddress',
|
||||
'delreason',
|
||||
'nolayout',
|
||||
'postcount',
|
||||
'username',
|
||||
'perm_id',
|
||||
'total_posts',
|
||||
'header',
|
||||
'footer',
|
||||
'member_title',
|
||||
'gender',
|
||||
'avatar',
|
||||
'name_style',
|
||||
'display_name',
|
||||
'country'
|
||||
));
|
||||
}
|
||||
|
||||
|
@ -205,42 +233,51 @@ class BoardController extends Controller {
|
|||
->where('for_posts.id', $id)
|
||||
->orderBy('for_posts.post_date', 'asc')
|
||||
->get(array(
|
||||
"for_posts.id",
|
||||
"top_id",
|
||||
"for_posts.user_id",
|
||||
"post_date",
|
||||
"message",
|
||||
"delete",
|
||||
"lastedit",
|
||||
"ipaddress",
|
||||
"delreason",
|
||||
"nolayout",
|
||||
"postcount",
|
||||
"username",
|
||||
"perm_id",
|
||||
"total_posts",
|
||||
"header",
|
||||
"footer",
|
||||
"member_title",
|
||||
"gender",
|
||||
"avatar",
|
||||
"name_style",
|
||||
"display_name",
|
||||
"country"
|
||||
'for_posts.id',
|
||||
'top_id',
|
||||
'for_posts.user_id',
|
||||
'post_date',
|
||||
'message',
|
||||
'delete',
|
||||
'lastedit',
|
||||
'ipaddress',
|
||||
'delreason',
|
||||
'nolayout',
|
||||
'postcount',
|
||||
'username',
|
||||
'perm_id',
|
||||
'total_posts',
|
||||
'header',
|
||||
'footer',
|
||||
'member_title',
|
||||
'gender',
|
||||
'avatar',
|
||||
'name_style',
|
||||
'display_name',
|
||||
'country'
|
||||
));
|
||||
}
|
||||
|
||||
public function addPost(Request $request) { // /api/rpc/board/post/addpost
|
||||
return DB::table('for_posts')
|
||||
$add = DB::table('for_posts')
|
||||
->insert([
|
||||
'top_id' => $request->top_id,
|
||||
'user_id' => $request->user_id,
|
||||
'post_date' => $request->post_date,
|
||||
'message' => $request->message,
|
||||
'delete' => 0,
|
||||
'lastedit' => 0,
|
||||
'ipaddress' => $request->ipaddress,
|
||||
'delreason' => '',
|
||||
'nolayout' => $request->nolayout,
|
||||
'postcount' => $request->postcount
|
||||
'postcount' => $request->postcount,
|
||||
// Deprecated: remove like and read stuff after full release!
|
||||
'likes' => 0,
|
||||
'likers' => '',
|
||||
'read' => ''
|
||||
]);
|
||||
|
||||
return \Response::json($add);
|
||||
}
|
||||
|
||||
public function editPost(Request $request) { // /api/rpc/board/post/editpost
|
||||
|
|
|
@ -118,19 +118,19 @@ class UserController extends Controller {
|
|||
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'str_owners.user_id')
|
||||
->where('file_id', $file_id)
|
||||
->get(array(
|
||||
"users.id",
|
||||
"title",
|
||||
"version",
|
||||
"views",
|
||||
"downloads",
|
||||
"submit_date",
|
||||
"last_date",
|
||||
"username",
|
||||
"avatar",
|
||||
"perm_id",
|
||||
"gender",
|
||||
"display_name",
|
||||
"name_style",
|
||||
'users.id',
|
||||
'title',
|
||||
'version',
|
||||
'views',
|
||||
'downloads',
|
||||
'submit_date',
|
||||
'last_date',
|
||||
'username',
|
||||
'avatar',
|
||||
'perm_id',
|
||||
'gender',
|
||||
'display_name',
|
||||
'name_style',
|
||||
));
|
||||
}
|
||||
|
||||
|
@ -150,19 +150,58 @@ class UserController extends Controller {
|
|||
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'str_owners.user_id')
|
||||
->where('user_id', $user_id)
|
||||
->get(array(
|
||||
"users.id",
|
||||
"title",
|
||||
"version",
|
||||
"views",
|
||||
"downloads",
|
||||
"submit_date",
|
||||
"last_date",
|
||||
"username",
|
||||
"avatar",
|
||||
"perm_id",
|
||||
"gender",
|
||||
"display_name",
|
||||
"name_style",
|
||||
'users.id',
|
||||
'title',
|
||||
'version',
|
||||
'views',
|
||||
'downloads',
|
||||
'submit_date',
|
||||
'last_date',
|
||||
'username',
|
||||
'avatar',
|
||||
'perm_id',
|
||||
'gender',
|
||||
'display_name',
|
||||
'name_style',
|
||||
));
|
||||
}
|
||||
|
||||
public function getTotalPostCount($id) { // /api/rpc/user/user/gettotalpostcount/id
|
||||
return DB::table('usr_details')
|
||||
->select('total_posts')
|
||||
->where('user_id', $id)
|
||||
->first()->total_posts;
|
||||
}
|
||||
|
||||
public function getTotalTopicCount($id) { // /api/rpc/user/user/gettotaltopiccount/id
|
||||
return DB::table('usr_details')
|
||||
->select('total_threads')
|
||||
->where('user_id', $id)
|
||||
->first()->total_threads;
|
||||
}
|
||||
|
||||
public function updateTotalPostCount(Request $request) { // /api/rpc/user/user/updatetotalpostcount
|
||||
$getPC = $this->getTotalPostCount($request->user_id);
|
||||
$getPC++;
|
||||
|
||||
return DB::table('usr_details')
|
||||
->where('user_id', $request->user_id)
|
||||
->update([
|
||||
'total_posts' => $getPC
|
||||
]);
|
||||
}
|
||||
|
||||
public function updateTotalTopicCount(Request $request) { // /api/rpc/user/user/updatetotaltopiccount
|
||||
$getPC = $this->getTotalPostCount($request->user_id);
|
||||
$getTC = $this->getTotalTopicCount($request->user_id);
|
||||
$getPC++;
|
||||
$getTC++;
|
||||
|
||||
return DB::table('usr_details')
|
||||
->where('user_id', $request->user_id)
|
||||
->update([
|
||||
'total_posts' => $getPC,
|
||||
'total_threads' => $getTC
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,6 +19,8 @@ Route::get('/api/rpc/board/forum/getforumsincategory/{cat_id}', 'BoardController
|
|||
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');
|
||||
Route::get('/api/rpc/board/forum/getpostcountfreeze/{id}', 'BoardController@getPostCountFreeze');
|
||||
Route::get('/api/rpc/board/forum/getreadonly/{id}', 'BoardController@getReadOnly');
|
||||
|
||||
// Topic
|
||||
Route::get('/api/rpc/board/topic/gettopics/{cat}/{from}/{to}', 'BoardController@getTopics');
|
||||
|
@ -27,13 +29,15 @@ Route::get('/api/rpc/board/topic/gettopicspinned/{cat}', 'BoardController@getTop
|
|||
Route::get('/api/rpc/board/topic/countunpinnedtopicsinforum/{for_id}', 'BoardController@countUnpinnedTopicsInForum');
|
||||
Route::get('/api/rpc/board/topic/gettopic/{cat}/{from}/{to}', 'BoardController@getTopic');
|
||||
Route::get('/api/rpc/board/topic/gettopiclock/{id}', 'BoardController@getTopicLock');
|
||||
Route::get('/api/rpc/board/topic/gettopicid/{top_id}', 'BoardController@getTopicId');
|
||||
Route::get('/api/rpc/board/topic/getforumidfromtopic/{top_id}', 'BoardController@getForumIdFromTopic');
|
||||
Route::get('/api/rpc/board/topic/gettopicname/{id}', 'BoardController@getTopicName');
|
||||
|
||||
// Post
|
||||
Route::get('/api/rpc/board/post/getpostsintopic/{top}/{from}/{to}', 'BoardController@getPostsInTopic');
|
||||
Route::get('/api/rpc/board/post/countpostsintopic/{top}', 'BoardController@countPostsInTopic');
|
||||
Route::get('/api/rpc/board/post/getpost/{id}', 'BoardController@getPost');
|
||||
Route::get('/api/rpc/board/post/getforumidfrompost/{id}', 'BoardController@getForumIdFromPost');
|
||||
Route::get('/api/rpc/board/post/gettopicidfrompost/{id}', 'BoardController@getTopicIdFromPost');
|
||||
Route::get('/api/rpc/board/post/getcurrentpostcount/{user_id}', 'BoardController@getCurrentPostCount');
|
||||
Route::get('/api/rpc/board/post/getnextpostcount/{user_id}', 'BoardController@getNextPostCount');
|
||||
Route::get('/api/rpc/board/post/getuserposts/{top}/{from}/{to}', 'BoardController@getuserPosts');
|
||||
|
|
|
@ -22,3 +22,7 @@ Route::get('/api/rpc/user/user/getexist/{username}/{email}', 'UserController@get
|
|||
Route::get('/api/rpc/user/user/getpoststyle/{id}', 'UserController@getPostStyle');
|
||||
Route::get('/api/rpc/user/user/getgroupname/{id}', 'UserController@getGroupName');
|
||||
Route::get('/api/rpc/user/user/getgroupcolours', 'UserController@getGroupColours');
|
||||
Route::get('/api/rpc/user/user/gettotalpostcount/{id}', 'UserController@getTotalPostCount');
|
||||
Route::get('/api/rpc/user/user/gettotaltopiccount/{id}', 'UserController@getTotalTopicCount');
|
||||
Route::post('/api/rpc/user/user/updatetotalpostcount', 'UserController@updateTotalPostCount');
|
||||
Route::post('/api/rpc/user/user/updatetotaltopiccount', 'UserController@updateTotalTopicCount');
|
||||
|
|
新しいイシューから参照