diff --git a/app/Http/Controllers/VideoController.php b/app/Http/Controllers/VideoController.php index a5c5c51..1d7adc1 100644 --- a/app/Http/Controllers/VideoController.php +++ b/app/Http/Controllers/VideoController.php @@ -69,6 +69,10 @@ class VideoController extends Controller { if ($res->gametitle == '') $res->gametitle = '初代'; $comments = DB::table('blg_comments')->where('video_id', $res->slug)->orderBy('id', 'asc')->get()->toArray(); + $ytslug = explode('?v=', $res->youtube); + $res->ytcomment = $this->getYouTubeCome($ytslug[1]); + $res->nicocomment = array(); + $res->bccomment = array(); foreach ($comments as $k => $c) { if ($c->isShadow == 0) { @@ -86,4 +90,34 @@ class VideoController extends Controller { return view('pages.site.video.prayer', ['res' => $res, 'menu' => $this->menu, 'user' => $this->user]); } + + function getYouTubeCome ($slug) { + $ch = curl_init(); + $url = 'https://www.googleapis.com/youtube/v3/commentThreads?part=snippet%2Creplies&moderationStatus=published&videoId='.$slug.'&key='.env('YOUTUBE_API'); + + curl_setopt($ch, CURLOPT_URL, $url); + curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json')); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + + $get = curl_exec($ch); + curl_close($ch); + + $come = array(); + $get = json_decode($get, false); + if (isset($get->error)) return array(); + + foreach ($get->items as $g) { + $g->comment = new \stdClass(); + $g->comment->id = $g->id; + $g->comment->name = $g->snippet->topLevelComment->snippet->authorDisplayName; + $g->comment->channel = $g->snippet->topLevelComment->snippet->authorChannelUrl; + $g->comment->icon = $g->snippet->topLevelComment->snippet->authorProfileImageUrl; + $g->comment->created = date('Y年m月d日 H:i:s', strtotime($g->snippet->topLevelComment->snippet->publishedAt)); + $g->comment->message = $g->snippet->topLevelComment->snippet->textDisplay; + + $come[] = $g->comment; + } + + return $come; + } } diff --git a/resources/js/components/comments.vue b/resources/js/components/comments.vue index 8046f08..c9758e5 100644 --- a/resources/js/components/comments.vue +++ b/resources/js/components/comments.vue @@ -8,7 +8,13 @@
{{ c.message }}
@@ -17,31 +23,33 @@ -