/**
  * 一覧初期表示
  *
  * @return Response
  */
 public function index($parentTitle)
 {
     /*
       パラメータから詳細データを取得
     */
     $parentTitle = str_replace(constant('SLA_ESCAPE'), '/', $parentTitle);
     $results = DB::select("select detail from m_parent_title where parent_title = ?", [$parentTitle]);
     if (!count($results) == 1) {
         echo 'error(not found)';
         return;
     } else {
         $results = $results[0];
     }
     $result = json_decode($results->detail, true);
     /*
       同一タイトルの重複を省いて、カウントする。
       同一タイトルチェックは、とりあえずtitleにする。
       最終的には、ex_url_firest(リクエストは削除)が使われるのが好ましい。
     */
     // 初期化
     $returns = array();
     $uniques = array();
     $uniqueKeys = 'title';
     // 最新のデータを使いたいので、一旦idで降順ソートさせる
     array_multisort(array_column($result, 'id'), SORT_DESC, SORT_NUMERIC, $result);
     foreach ($result as $key => $value) {
         if (!in_array($value[$uniqueKeys], $uniques)) {
             $value['cnt'] = 1;
             array_push($returns, $value);
             array_push($uniques, $value[$uniqueKeys]);
             // $url_firstのキー
             // $uniques[count($returns) - 1 ] = $values['url_first'];
         } else {
             // カウンタを増やす
             $returns[array_search($value[$uniqueKeys], $uniques)]['cnt']++;
         }
     }
     /*
       表示用ソート
     */
     $sortKey = Input::get('sort') == 'date' ? 'tweet_date' : 'cnt';
     array_multisort(array_column($returns, $sortKey), SORT_DESC, $returns);
     /*
       スマホ判定
     */
     if (requestScopeUtils::requestCheckIsSmartPhone()) {
         $blade = 'sp_detail';
     } else {
         $blade = 'detail';
     }
     /*
       検索引数の初期化
     */
     $inputs = $array = array("word" => '', "period" => '', "sort" => Input::get('sort'));
     /*
       return
     */
     return view($blade, ['inputs' => $inputs, 'results' => $returns, 'parentTitle' => $parentTitle]);
 }
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     if (isset($_SERVER['HTTP_USER_AGENT']) && amtUtils::isSmartPhone($_SERVER['HTTP_USER_AGENT']) || $request->has(requestScopeUtils::SMART_PHONE_KEY)) {
         requestScopeUtils::set(requestScopeUtils::SMART_PHONE_KEY, 't');
     } else {
         requestScopeUtils::set(requestScopeUtils::SMART_PHONE_KEY, 'f');
     }
     return $next($request);
 }
 /**
  * @see App\Common\requestScopeUtils::requestCheckIsSmartPhone
  */
 public function testRequestCheckIsSmartPhone()
 {
     $key = self::key;
     $val = self::val;
     // no smartPhone
     $this->assertFalse(requestScopeUtils::requestCheckIsSmartPhone());
     // smartPhone
     $_GET[requestScopeUtils::REQUEST_SCOPE][requestScopeUtils::SMART_PHONE_KEY] = "t";
     $this->assertTrue(requestScopeUtils::requestCheckIsSmartPhone());
 }
 /**
  * 一覧初期表示
  *
  * @return Response
  */
 public function index(Request $request)
 {
     /*
       データ抽出
     */
     $results = DB::select("select parent_title,count from m_parent_title where parent_title not ilike '%apple music%' order by count desc limit 20");
     $results2 = DB::select("select parent_title,count from m_parent_title where parent_title  ilike '%apple music%' order by count desc limit 20");
     $results_weekly = DB::select("select parent_title,count from m_parent_title_weekly where parent_title not ilike '%apple music%' order by count desc limit 10");
     $results_weekly2 = DB::select("select parent_title,count from m_parent_title_weekly where parent_title  ilike '%apple music%' order by count desc limit 10");
     // 初期表示フォーム
     $inputs = $array = array("word" => '', "period" => '');
     if (requestScopeUtils::requestCheckIsSmartPhone()) {
         $blade = 'sp_top';
     } else {
         $blade = 'top';
     }
     return view($blade, ['inputs' => $inputs, 'results' => $results, 'results2' => $results2, 'results_weekly' => $results_weekly, 'results_weekly2' => $results_weekly2]);
 }
 /**
  * 全件検索
  *
  * @return Response
  */
 public function random()
 {
     $results = DB::select("select parent_title,count from m_parent_title  order by RANDOM()  limit 50");
     $inputs = $array = array("word" => "", "period" => "", "is_random" => "true");
     if (requestScopeUtils::requestCheckIsSmartPhone()) {
         $blade = 'sp_list';
     } else {
         $blade = 'list';
     }
     return view($blade, ['inputs' => $inputs, 'results' => $results]);
 }