2018-02-06 06:08:19 +09:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
|
|
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
use Illuminate\Support\Facades\Log;
|
|
|
|
|
|
|
|
class BoardController extends Controller {
|
|
|
|
public function getCategories() { // /api/rpc/board/category/getcategories
|
|
|
|
return DB::table('for_category')
|
|
|
|
->select('*')
|
|
|
|
->orderBy('order', 'asc')
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getCategory($id) { // /api/rpc/board/category/getcategory/id
|
|
|
|
return DB::table('for_category')
|
|
|
|
->select('*')
|
|
|
|
->where('id', $id)
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
2018-02-06 17:24:16 +09:00
|
|
|
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
|
2018-02-06 06:08:19 +09:00
|
|
|
return DB::table('for_forums')
|
|
|
|
->select('*')
|
|
|
|
->orderBy('order', 'asc')
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
2018-02-06 17:24:16 +09:00
|
|
|
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();
|
|
|
|
}
|
|
|
|
|
2018-02-06 16:12:00 +09:00
|
|
|
public function getForumsInCategory($cat_id) { // /api/rpc/board/forum/getforumsincategory/cat_id
|
2018-02-06 06:08:19 +09:00
|
|
|
return DB::table('for_forums')
|
|
|
|
->select('*')
|
|
|
|
->where('cat_id', $cat_id)
|
|
|
|
->get();
|
|
|
|
}
|
2018-02-06 17:24:16 +09:00
|
|
|
|
|
|
|
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();
|
|
|
|
}
|
|
|
|
|
2018-02-06 19:51:43 +09:00
|
|
|
public function getTopic($id, $from, $to) { // /api/rpc/board/topic/gettopic/id/from/to
|
2018-02-06 17:24:16 +09:00
|
|
|
return DB::table('for_threads')
|
|
|
|
->select('*')
|
|
|
|
->where('id', $id)
|
|
|
|
->offset($from)
|
|
|
|
->limit($to)
|
|
|
|
->orderBy('last_date', 'desc')
|
|
|
|
->get();
|
|
|
|
}
|
2018-02-06 19:51:43 +09:00
|
|
|
|
|
|
|
public function getTopicLock($id) { // /api/rpc/board/topic/gettopiclock/id
|
|
|
|
return DB::table('for_threads')
|
|
|
|
->select('lock')
|
|
|
|
->where('id', $id)
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getTopicName($id) { // /api/rpc/board/topic/gettopicname/id
|
|
|
|
return DB::table('for_threads')
|
|
|
|
->select('for_id', 'title')
|
|
|
|
->where('id', $id)
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getPostsInTopic($top_id, $from, $to) { // /api/rpc/board/post/getpostsintopic/top_id/from/to
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->select('*')
|
|
|
|
->where('top_id', $top_id)
|
|
|
|
->offset($from)
|
|
|
|
->limit($to)
|
|
|
|
->orderBy('post_date', 'asc')
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function countPostsInTopic($top_id) { // /api/rpc/board/post/countpostsintopic/top_id
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->where('top_id', $top_id)
|
|
|
|
->count();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getPost($id) { // /api/rpc/board/post/getpost/id
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->select('*')
|
|
|
|
->where('id', $id)
|
|
|
|
->get();
|
|
|
|
}
|
|
|
|
|
2018-02-15 20:39:26 +09:00
|
|
|
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();
|
|
|
|
}
|
|
|
|
|
2018-02-06 19:51:43 +09:00
|
|
|
public function getUserPosts($top_id, $from, $to) { // /api/rpc/board/post/getuserposts/top/from/to
|
|
|
|
return DB::table('for_posts')
|
2018-02-07 22:24:41 +09:00
|
|
|
->join('users', 'for_posts.user_id', '=', 'users.id')
|
2018-02-07 21:38:42 +09:00
|
|
|
->join('usr_details', 'usr_details.user_id', '=', 'for_posts.user_id')
|
|
|
|
->join('usr_profile', 'usr_profile.user_id', '=', 'for_posts.user_id')
|
|
|
|
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'for_posts.user_id')
|
2018-02-06 19:51:43 +09:00
|
|
|
->where('for_posts.top_id', $top_id)
|
|
|
|
->offset($from)
|
|
|
|
->limit($to)
|
|
|
|
->orderBy('for_posts.post_date', 'asc')
|
|
|
|
->get(array(
|
|
|
|
"for_posts.id",
|
|
|
|
"top_id",
|
2018-02-14 18:21:15 +09:00
|
|
|
"for_posts.user_id",
|
2018-02-06 19:51:43 +09:00
|
|
|
"post_date",
|
|
|
|
"message",
|
|
|
|
"delete",
|
|
|
|
"lastedit",
|
|
|
|
"ipaddress",
|
|
|
|
"delreason",
|
|
|
|
"nolayout",
|
|
|
|
"postcount",
|
|
|
|
"username",
|
|
|
|
"perm_id",
|
|
|
|
"total_posts",
|
|
|
|
"header",
|
|
|
|
"footer",
|
|
|
|
"member_title",
|
|
|
|
"gender",
|
|
|
|
"avatar",
|
2018-02-07 21:38:42 +09:00
|
|
|
"name_style",
|
2018-02-06 19:51:43 +09:00
|
|
|
"display_name",
|
|
|
|
"country"
|
|
|
|
));
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getUserPost($id) { // /api/rpc/board/post/getuserpost/id
|
|
|
|
return DB::table('for_posts')
|
2018-02-07 22:24:41 +09:00
|
|
|
->join('users', 'for_posts.user_id', '=', 'users.id')
|
2018-02-07 21:38:42 +09:00
|
|
|
->join('usr_details', 'usr_details.user_id', '=', 'for_posts.user_id')
|
|
|
|
->join('usr_profile', 'usr_profile.user_id', '=', 'for_posts.user_id')
|
|
|
|
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'for_posts.user_id')
|
2018-02-06 19:51:43 +09:00
|
|
|
->where('for_posts.id', $id)
|
|
|
|
->orderBy('for_posts.post_date', 'asc')
|
|
|
|
->get(array(
|
|
|
|
"for_posts.id",
|
|
|
|
"top_id",
|
2018-02-14 18:21:15 +09:00
|
|
|
"for_posts.user_id",
|
2018-02-06 19:51:43 +09:00
|
|
|
"post_date",
|
|
|
|
"message",
|
|
|
|
"delete",
|
|
|
|
"lastedit",
|
|
|
|
"ipaddress",
|
|
|
|
"delreason",
|
|
|
|
"nolayout",
|
|
|
|
"postcount",
|
|
|
|
"username",
|
|
|
|
"perm_id",
|
|
|
|
"total_posts",
|
|
|
|
"header",
|
|
|
|
"footer",
|
|
|
|
"member_title",
|
|
|
|
"gender",
|
|
|
|
"avatar",
|
2018-02-07 21:38:42 +09:00
|
|
|
"name_style",
|
2018-02-06 19:51:43 +09:00
|
|
|
"display_name",
|
|
|
|
"country"
|
|
|
|
));
|
|
|
|
}
|
2018-02-15 06:39:26 +09:00
|
|
|
|
|
|
|
public function addPost(Request $request) { // /api/rpc/board/post/addpost
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->insert([
|
|
|
|
'top_id' => $request->top_id,
|
|
|
|
'user_id' => $request->user_id,
|
|
|
|
'post_date' => $request->post_date,
|
|
|
|
'message' => $request->message,
|
|
|
|
'ipaddress' => $request->ipaddress,
|
|
|
|
'nolayout' => $request->nolayout,
|
|
|
|
'postcount' => $request->postcount
|
|
|
|
]);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function editPost(Request $request) { // /api/rpc/board/post/editpost
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->where('id', $request->id)
|
|
|
|
->update([
|
|
|
|
'lastedit' => $request->lastedit,
|
|
|
|
'message' => $request->message,
|
|
|
|
'nolayout' => $request->nolayout
|
|
|
|
]);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function deletePost(Request $request) { // /api/rpc/board/post/deletepost
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->where('id', $request->id)
|
|
|
|
->update([
|
|
|
|
'delete' => 1,
|
|
|
|
'delreason' => $request->delreason
|
|
|
|
]);
|
|
|
|
}
|
|
|
|
|
|
|
|
public function undeletePost(Request $request) { // /api/rpc/board/post/undeletepost
|
|
|
|
return DB::table('for_posts')
|
|
|
|
->where('id', $request->id)
|
|
|
|
->update([
|
|
|
|
'delete' => 0,
|
|
|
|
'delreason' => ''
|
|
|
|
]);
|
|
|
|
}
|
2018-02-06 06:08:19 +09:00
|
|
|
}
|