このリポジトリは2023-09-09にアーカイブされています。 ファイルの閲覧とクローンは可能ですが、プッシュ、イシューの作成、プルリクエストはできません。
076server/app/Http/Controllers/SiteController.php

766 行
25 KiB
PHP
Raw 通常表示 履歴

2018-03-13 22:28:14 +09:00
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
use Illuminate\Http\Request;
use Illuminate\Contracts\Routing\ResponseFactory;
use Illuminate\Support\Facades\Log;
use App\Http\Controllers\AuthController;
use App\Http\Controllers\UserController;
use App\Http\Controllers\PermissionController;
class SiteController extends Controller {
private $objAuth;
private $objUser;
private $objPermission;
public function __construct() {
2018-03-13 22:28:14 +09:00
$this->objAuth = new AuthController();
$this->objUser = new UserController();
$this->objPermission = new PermissionController();
}
2018-03-13 23:23:59 +09:00
// Posts
2018-12-14 17:27:08 +09:00
public function getPosts(Request $request) { // /api/rpc/site/post/getposts
$check = $this->objAuth->checkLegit($request->username, $request->password);
2018-12-14 17:27:08 +09:00
if ($check == 0) {
return 'Guests can\'t read';
}
else {
$valid = $this->objAuth->getPermissions($request->username, $request->password);
if ($valid['for_canview']) {
// Load group colours.
$ucol = $this->objUser->getGroupColours();
// Load content.
$get = DB::table('blg_content')
->join('users', 'blg_content.user_id', '=', 'users.id')
->join('usr_details', 'usr_details.user_id', '=', 'blg_content.user_id')
->join('usr_profile', 'usr_profile.user_id', '=', 'blg_content.user_id')
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'blg_content.user_id')
->where('public_status', 0)
->where('isPost', 1)
->orderBy('publish_date', 'desc')
->get(array(
'blg_content.id',
'blg_content.user_id',
'title',
'slug',
'post_date',
'publish_date',
'public_status',
'message',
'username',
'perm_id',
'gender',
'avatar',
'name_style',
'display_name'
));
$res = array();
$key = 0;
setlocale(LC_ALL, 'ja_JP.utf8');
foreach ($get as $i) {
$showName = '';
$showCol = '';
$showGroupName = '';
// Display name or username?
if (!empty($i->display_name)) {
$showName = $i->display_name;
}
else {
$showName = $i->username;
}
2018-12-14 17:27:08 +09:00
// Custom name styling or default?
if (!empty($i->name_style)) {
$showCol = $i->name_style;
}
else {
foreach ($ucol as $j) {
if ($j->id == $i->perm_id) {
if ($i->gender == 1) $showCol = $j->colour_m;
else if ($i->gender == 2) $showCol = $j->colour_f;
else $showCol = $j->colour_u;
}
}
}
2018-12-14 17:27:08 +09:00
// Group names.
$gname = $this->objUser->getGroupName($i->user_id);
$showGroupName = $gname[0]->name;
array_push($res, [
'key' => $key,
'id' => $i->id,
'user_id' => $i->user_id,
'title' => $i->title,
'slug' => $i->slug,
'post_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->post_date),
'publish_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->publish_date),
'public_status' => $i->public_status,
'message' => $i->message,
'avatar' => $i->avatar,
'showcol' => $showCol,
'showname' => $showName
]);
$key++;
}
}
2018-03-13 22:28:14 +09:00
}
return $res;
}
2018-03-14 20:57:26 +09:00
public function getUserPosts($id) { // /api/rpc/site/post/getuserposts/id
$get = DB::table('blg_content')
2018-03-14 23:23:09 +09:00
->select('id', 'title', 'slug', 'post_date', 'publish_date', 'public_status', 'message')
->where('public_status', 0)
2018-03-14 20:57:26 +09:00
->where('isPost', 1)
->where('user_id', $id)
->orderBy('publish_date', 'desc')
->get();
$res = array();
$key = 0;
setlocale(LC_ALL, 'ja_JP.utf8');
foreach ($get as $i) {
array_push($res, [
'key' => $key,
'id' => $i->id,
'title' => $i->title,
'slug' => $i->slug,
'post_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->post_date),
'publish_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->publish_date),
2018-03-14 23:23:09 +09:00
'public_status' => $i->public_status,
2018-03-14 20:57:26 +09:00
'message' => $i->message
]);
$key++;
}
return $res;
}
2018-03-14 00:36:45 +09:00
public function getPostSlug($id) { // /api/rpc/site/post/getpostslug/id
$get = DB::table('blg_content')
->select('slug')
2018-03-14 23:23:09 +09:00
->where('public_status', 0)
2018-03-14 00:36:45 +09:00
->where('isPost', 1)
->where('id', $id)
->get();
$res = array();
foreach ($get as $i) {
array_push($res, [
'slug' => $i->slug
]);
}
return $res;
}
2018-12-14 17:27:08 +09:00
public function getPost($slug, Request $request) { // /api/rpc/site/post/getpost/slug
$check = $this->objAuth->checkLegit($request->username, $request->password);
2018-03-13 22:28:14 +09:00
2018-12-14 17:27:08 +09:00
if ($check == 0) {
return 'Guests can\'t read';
}
else {
$valid = $this->objAuth->getPermissions($request->username, $request->password);
if ($valid['for_canview']) {
// Load group colours.
$ucol = $this->objUser->getGroupColours();
// Load content.
$get = DB::table('blg_content')
->join('users', 'blg_content.user_id', '=', 'users.id')
->join('usr_details', 'usr_details.user_id', '=', 'blg_content.user_id')
->join('usr_profile', 'usr_profile.user_id', '=', 'blg_content.user_id')
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'blg_content.user_id')
->where('public_status', 0)
->where('isPost', 1)
->where('slug', $slug)
->get(array(
'blg_content.id',
'blg_content.user_id',
'title',
'slug',
'post_date',
'publish_date',
'public_status',
'message',
'username',
'perm_id',
'gender',
'avatar',
'name_style',
'display_name'
));
$res = array();
setlocale(LC_ALL, 'ja_JP.utf8');
foreach ($get as $i) {
$showName = '';
$showCol = '';
$showGroupName = '';
// Display name or username?
if (!empty($i->display_name)) {
$showName = $i->display_name;
}
else {
$showName = $i->username;
}
2018-12-14 17:27:08 +09:00
// Custom name styling or default?
if (!empty($i->name_style)) {
$showCol = $i->name_style;
}
else {
foreach ($ucol as $j) {
if ($j->id == $i->perm_id) {
if ($i->gender == 1) $showCol = $j->colour_m;
else if ($i->gender == 2) $showCol = $j->colour_f;
else $showCol = $j->colour_u;
}
}
}
2018-12-14 17:27:08 +09:00
// Group names.
$gname = $this->objUser->getGroupName($i->user_id);
$showGroupName = $gname[0]->name;
array_push($res, [
'id' => $i->id,
'user_id' => $i->user_id,
'title' => $i->title,
'slug' => $i->slug,
'post_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->post_date),
'publish_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->publish_date),
'public_status' => $i->public_status,
'message' => $i->message,
'gender' => $i->gender,
'avatar' => $i->avatar,
'showcol' => $showCol,
'showname' => $showName
]);
}
}
else {
2018-12-14 17:27:08 +09:00
return 'Permission denied.';
}
2018-03-13 22:28:14 +09:00
}
return $res;
}
2018-03-14 23:23:09 +09:00
public function newPost(Request $request) { // /api/rpc/site/post/new
$pubdate = 0;
2018-03-15 21:43:18 +09:00
if ($request->public_status == 1) {
if ($request->publish_date <= time()) {
return \Response::json(array('error' => 'Publish date can\'t be older than post date.'));
}
}
2018-03-14 23:23:09 +09:00
if ($request->public_status == 1) $pubdate = $request->publish_date;
2018-03-15 21:43:18 +09:00
else $pubdate = time();
2018-03-14 23:23:09 +09:00
$add = DB::table('blg_content')
->insert([
'user_id' => $request->user_id,
'isPost' => 1,
'title' => $request->title,
'slug' => $request->slug,
2018-03-15 21:43:18 +09:00
'post_date' => time(),
2018-03-14 23:23:09 +09:00
'publish_date' => $pubdate,
'sortorder' => 0,
'public_status' => $request->public_status,
'isMenu' => 0,
'message' => $request->message
]);
2018-03-13 23:23:59 +09:00
2018-03-14 23:23:09 +09:00
return \Response::json($add);
2018-03-13 23:23:59 +09:00
}
2018-03-14 23:23:09 +09:00
public function editPost(Request $request) { // /api/rpc/site/post/edit
return DB::table('blg_content')
->where('id', $request->id)
->update([
'title' => $request->title,
'slug' => $request->slug,
'public_status' => $request->public_status,
'message' => $request->message
]);
2018-03-13 23:23:59 +09:00
}
2018-03-14 23:23:09 +09:00
public function deletePost(Request $request) { // /api/rpc/site/post/delete
2018-03-15 17:31:19 +09:00
return DB::table('blg_content')->where('id', $request->id)->delete();
2018-03-13 23:23:59 +09:00
}
// Comments
public function getComments($id) { // /api/rpc/site/post/getcomments/id
// Load group colours.
$ucol = $this->objUser->getGroupColours();
// Load content.
2018-03-13 23:23:59 +09:00
$get = DB::table('blg_comments')
->join('users', 'blg_comments.user_id', '=', 'users.id')
->join('usr_details', 'usr_details.user_id', '=', 'blg_comments.user_id')
->join('usr_profile', 'usr_profile.user_id', '=', 'blg_comments.user_id')
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'blg_comments.user_id')
2018-03-13 23:23:59 +09:00
->where('content_id', $id)
->orderBy('post_date', 'asc')
->get(array(
'blg_comments.id',
'blg_comments.user_id',
'votes',
'post_date',
'last_date',
'isDeleted',
'message',
2018-03-14 21:51:11 +09:00
'blg_comments.ip_address',
'username',
'perm_id',
'gender',
'avatar',
'name_style',
'display_name'
));
2018-03-13 23:23:59 +09:00
$res = array();
2018-03-14 00:36:45 +09:00
$key = 1;
setlocale(LC_ALL, 'ja_JP.utf8');
2018-03-13 23:23:59 +09:00
foreach ($get as $i) {
$showName = '';
$showCol = '';
$showGroupName = '';
// Display name or username?
if (!empty($i->display_name)) {
$showName = $i->display_name;
}
else {
$showName = $i->username;
}
// Custom name styling or default?
if (!empty($i->name_style)) {
$showCol = $i->name_style;
}
else {
foreach ($ucol as $j) {
if ($j->id == $i->perm_id) {
if ($i->gender == 1) $showCol = $j->colour_m;
else if ($i->gender == 2) $showCol = $j->colour_f;
else $showCol = $j->colour_u;
}
}
}
// Group names.
$gname = $this->objUser->getGroupName($i->user_id);
$showGroupName = $gname[0]->name;
2018-03-13 23:23:59 +09:00
array_push($res, [
'key' => $key,
'id' => $i->id,
'user_id' => $i->user_id,
'votes' => $i->votes,
'post_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->post_date),
'last_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->last_date),
2018-03-14 00:36:45 +09:00
'last_unix' => $i->last_date,
2018-03-13 23:23:59 +09:00
'isDeleted' => $i->isDeleted,
'message' => $i->message,
'ip_address' => $i->ip_address,
'avatar' => $i->avatar,
'showcol' => $showCol,
'showname' => $showName
2018-03-13 23:23:59 +09:00
]);
$key++;
}
return $res;
}
public function getComment($id) { // /api/rpc/site/post/getcomment/id
// Load group colours.
$ucol = $this->objUser->getGroupColours();
// Load content.
2018-03-13 23:23:59 +09:00
$get = DB::table('blg_comments')
->join('users', 'blg_comments.user_id', '=', 'users.id')
->join('usr_details', 'usr_details.user_id', '=', 'blg_comments.user_id')
->join('usr_profile', 'usr_profile.user_id', '=', 'blg_comments.user_id')
->join('usr_perm_id', 'usr_perm_id.user_id', '=', 'blg_comments.user_id')
2018-03-14 21:51:11 +09:00
->where('blg_comments.id', $id)
->orderBy('post_date', 'asc')
->get(array(
'blg_comments.user_id',
'content_id',
'votes',
'post_date',
'last_date',
'isDeleted',
'message',
2018-03-14 21:51:11 +09:00
'blg_comments.ip_address',
'username',
'perm_id',
'gender',
'avatar',
'name_style',
'display_name'
));
2018-03-13 23:23:59 +09:00
$res = array();
2018-03-14 00:36:45 +09:00
setlocale(LC_ALL, 'ja_JP.utf8');
2018-03-13 23:23:59 +09:00
foreach ($get as $i) {
$showName = '';
$showCol = '';
$showGroupName = '';
// Display name or username?
if (!empty($i->display_name)) {
$showName = $i->display_name;
}
else {
$showName = $i->username;
}
// Custom name styling or default?
if (!empty($i->name_style)) {
$showCol = $i->name_style;
}
else {
foreach ($ucol as $j) {
if ($j->id == $i->perm_id) {
if ($i->gender == 1) $showCol = $j->colour_m;
else if ($i->gender == 2) $showCol = $j->colour_f;
else $showCol = $j->colour_u;
}
}
}
// Group names.
$gname = $this->objUser->getGroupName($i->user_id);
$showGroupName = $gname[0]->name;
2018-03-13 23:23:59 +09:00
array_push($res, [
'user_id' => $i->user_id,
'content_id' => $i->content_id,
'votes' => $i->votes,
'post_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->post_date),
'last_date' => strftime('%Y/%m/%d(%a) %H:%M:%S %Z', $i->last_date),
2018-03-14 00:36:45 +09:00
'last_unix' => $i->last_date,
2018-03-13 23:23:59 +09:00
'isDeleted' => $i->isDeleted,
'message' => $i->message,
'ip_address' => $i->ip_address,
'avatar' => $i->avatar,
'showcol' => $showCol,
'showname' => $showName
2018-03-13 23:23:59 +09:00
]);
}
return $res;
}
2018-03-15 00:21:17 +09:00
public function newComment(Request $request) { // /api/rpc/site/comment/new
2018-03-15 21:43:18 +09:00
$add = DB::table('blg_comments')
->insert([
'user_id' => $request->user_id,
'content_id' => $request->content_id,
'votes' => 0,
'post_date' => time(),
'last_date' => 0,
'isDeleted' => 0,
'message' => $request->message,
'ip_address' => $request->ip_address
]);
return \Response::json($add);
2018-03-13 23:23:59 +09:00
}
2018-03-15 00:21:17 +09:00
public function editComment(Request $request) { // /api/rpc/site/comment/edit
2018-03-15 18:56:21 +09:00
return DB::table('blg_comments')
->where('id', $request->id)
->update([
2018-03-15 21:43:18 +09:00
'last_date' => time(),
2018-03-15 18:56:21 +09:00
'message' => $request->message
]);
2018-03-13 23:23:59 +09:00
}
2018-03-15 00:21:17 +09:00
public function removeComment(Request $request) { // /api/rpc/site/comment/remove
2018-03-15 18:56:21 +09:00
$get = DB::table('blg_comments')
->select('isDeleted')
->where('id', $request->id)
2018-03-15 19:11:44 +09:00
->get();
2018-03-13 23:23:59 +09:00
2018-03-15 18:56:21 +09:00
$mod = 0;
foreach ($get as $i) {
if ($i->isDeleted == 1) $mod = 0;
else $mod = 1;
}
return DB::table('blg_comments')
->where('id', $request->id)
->update([
'isDeleted' => $mod
]);
2018-03-13 23:23:59 +09:00
}
2018-03-15 19:11:44 +09:00
public function voteComment(Request $request) { // /api/rpc/site/comment/vote
$get = DB::table('blg_comments')
->select('votes')
->where('id', $request->id)
->get();
$mod = 0;
foreach ($get as $i) {
$mod = $i->votes;
}
return DB::table('blg_comments')
->where('id', $request->id)
->update([
'votes' => $request->votemod
]);
}
2018-03-13 23:23:59 +09:00
// Pages
2018-03-13 23:36:01 +09:00
public function getPagesInMenu() { // /api/rpc/site/page/getpagesinmenu
$get = DB::table('blg_content')
->select('title', 'slug')
2018-03-14 23:23:09 +09:00
->where('public_status', 0)
2018-03-13 23:36:01 +09:00
->where('isPost', 0)
->where('isMenu', 1)
->orderBy('sortorder', 'asc')
->get();
$res = array();
$key = 0;
foreach ($get as $i) {
array_push($res, [
'key' => $key,
'title' => $i->title,
'slug' => $i->slug
]);
$key++;
}
return $res;
}
2018-03-13 22:28:14 +09:00
public function getPages() { // /api/rpc/site/page/getpages
$get = DB::table('blg_content')
2018-03-15 18:32:27 +09:00
->select('id', 'title', 'slug', 'public_status', 'isMenu', 'message')
2018-03-14 23:23:09 +09:00
->where('public_status', 0)
2018-03-13 22:28:14 +09:00
->where('isPost', 0)
->orderBy('sortorder', 'asc')
->get();
$res = array();
$key = 0;
foreach ($get as $i) {
array_push($res, [
'key' => $key,
'id' => $i->id,
'title' => $i->title,
'slug' => $i->slug,
2018-03-15 18:32:27 +09:00
'public_status' => $i->public_status,
'isMenu' => $i->isMenu,
2018-03-13 22:28:14 +09:00
'message' => $i->message
]);
$key++;
}
return $res;
}
2018-03-15 18:32:27 +09:00
public function getPageSlug($id) { // /api/rpc/site/page/getpageslug/id
$get = DB::table('blg_content')
->select('slug')
->where('public_status', 0)
->where('isPost', 0)
->where('id', $id)
->get();
$res = array();
foreach ($get as $i) {
array_push($res, [
'slug' => $i->slug
]);
}
return $res;
}
2018-03-13 22:28:14 +09:00
public function getPage($slug) { // /api/rpc/site/page/getpage/slug
$get = DB::table('blg_content')
2018-03-15 18:32:27 +09:00
->select('id', 'title', 'slug', 'public_status', 'isMenu', 'message')
2018-03-14 23:23:09 +09:00
->where('public_status', 0)
2018-03-13 22:28:14 +09:00
->where('isPost', 0)
->where('slug', $slug)
->orderBy('sortorder', 'asc')
->get();
$res = array();
foreach ($get as $i) {
array_push($res, [
'id' => $i->id,
'title' => $i->title,
'slug' => $i->slug,
2018-03-15 18:32:27 +09:00
'public_status' => $i->public_status,
'isMenu' => $i->isMenu,
2018-03-13 22:28:14 +09:00
'message' => $i->message
]);
}
return $res;
}
2018-03-15 00:21:17 +09:00
public function newPage(Request $request) { // /api/rpc/site/page/new
2018-03-15 21:43:18 +09:00
$pubdate = 0;
if ($request->public_status == 1) {
if ($request->publish_date <= time()) {
return \Response::json(array('error' => 'Publish date can\'t be older than post date.'));
}
}
if ($request->public_status == 1) $pubdate = $request->publish_date;
else $pubdate = time();
$add = DB::table('blg_content')
->insert([
'user_id' => 0,
'isPost' => 0,
'title' => $request->title,
'slug' => $request->slug,
'post_date' => 0,
'publish_date' => $pubdate,
'sortorder' => $request->sortorder,
'public_status' => $request->public_status,
'isMenu' => $request->isMenu,
'message' => $request->message
]);
return \Response::json($add);
2018-03-13 23:23:59 +09:00
}
2018-03-13 22:28:14 +09:00
2018-03-15 00:21:17 +09:00
public function editPage(Request $request) { // /api/rpc/site/page/edit
2018-03-15 18:32:27 +09:00
return DB::table('blg_content')
->where('id', $request->id)
->update([
'title' => $request->title,
'slug' => $request->slug,
'public_status' => $request->public_status,
'isMenu' => $request->isMenu,
'message' => $request->message
]);
2018-03-13 23:23:59 +09:00
}
2018-03-13 22:28:14 +09:00
2018-03-15 00:21:17 +09:00
public function deletePage(Request $request) { // /api/rpc/site/page/delete
return DB::table('blg_content')->where('id', $request->id)->delete();
2018-03-13 22:28:14 +09:00
}
2018-03-13 23:23:59 +09:00
// Contact Fields
public function getContactFields() { // /api/rpc/site/contact/getcontactfields
return false;
2018-03-13 22:28:14 +09:00
}
2018-03-13 22:51:42 +09:00
2018-03-13 23:23:59 +09:00
public function getContactField($id) { // /api/rpc/site/contact/getcontactfield/id
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-13 23:23:59 +09:00
// Portfolio Categories
public function getPortfolioCategories() { // /api/rpc/site/portfolio/getportfoliocategories
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-13 23:23:59 +09:00
public function getPortfolioCategory($id) { // /api/rpc/site/portfolio/getportfoliocategory/id
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function newPortfolioCategory(Request $request) { // /api/rpc/site/portfolio/newcategory
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function editPortfolioCategory(Request $request) { // /api/rpc/site/portfolio/editcategory
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function removePortfolioCategory(Request $request) { // /api/rpc/site/portfolio/removecategory
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function deletePortfolioCategory(Request $request) { // /api/rpc/site/portfolio/deletecategory
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-13 23:23:59 +09:00
// Portfolio Items
public function getPortfolioItems($id) { // /api/rpc/site/portfolio/getportfolioitems/id
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-13 23:23:59 +09:00
public function getPortfolioItem($id) { // /api/rpc/site/portfolio/getportfolioitems/id
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function newPortfolioItem(Request $request) { // /api/rpc/site/portfolio/newitem
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function editPortfolioItem(Request $request) { // /api/rpc/site/portfolio/edititem
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function removePortfolioItem(Request $request) { // /api/rpc/site/portfolio/removeitem
2018-03-13 23:23:59 +09:00
return false;
}
2018-03-15 00:21:17 +09:00
public function deletePortfolioItem(Request $request) { // /api/rpc/site/portfolio/deleteitem
2018-03-13 22:51:42 +09:00
return false;
}
2018-03-13 23:23:59 +09:00
// Admin
public function getSettings() { // /api/rpc/site/admin/getsettings
return DB::table('blg_settings')
2018-03-14 20:57:26 +09:00
->select('sitename', 'description', 'tags', 'blog_status', 'homepage', 'announcement', 'theme', 'locale')
2018-03-13 23:23:59 +09:00
->get();
}
2018-03-13 22:51:42 +09:00
public function setSettings(Request $request) { // /api/rpc/site/admin/setsettings
2018-03-15 18:32:27 +09:00
return DB::table('blg_settings')
->update([
'sitename' => $request->sitename,
'description' => $request->description,
'tags' => $request->tags,
'blog_status' => $request->blog_status,
'homepage' => $request->homepage,
'announcement' => $request->announcement,
'theme' => $request->theme,
'locale' => $request->locale
]);
2018-03-13 22:51:42 +09:00
}
2018-03-13 22:28:14 +09:00
}