diff --git a/app/Http/Controllers/Search/Index.php b/app/Http/Controllers/Search/Index.php new file mode 100644 index 0000000..600cd04 --- /dev/null +++ b/app/Http/Controllers/Search/Index.php @@ -0,0 +1,18 @@ +engine = new Engine; + } + + public function run () { + return view('pages.search.index'); + } +} diff --git a/app/Http/Controllers/Search/Result.php b/app/Http/Controllers/Search/Result.php new file mode 100644 index 0000000..6c4b01e --- /dev/null +++ b/app/Http/Controllers/Search/Result.php @@ -0,0 +1,47 @@ +engine = new Engine; + } + + public function run (Request $r) { + $res = $r->all(); + if (!isset($res['query'])) return redirect('/search'); + + $can_category = ['general', 'files', 'images', 'it', 'map', 'music', 'videos']; + $can_timerange = ['None', 'day', 'week', 'month', 'year']; + + if (!isset($res['pageno']) || $res['pageno'] < 1) $res['pageno'] = 1; + if (!isset($res['timerange']) || !in_array($res['timerange'], $can_timerange)) $res['timerange'] = 'None'; + if (!isset($res['category']) || !in_array($res['category'], $can_category)) $res['category'] = 'general'; + // dd($res); + + $ch = curl_init(); + curl_setopt($ch, CURLOPT_URL, 'https://search.076.ne.jp/searx/search?category_'.$res['category'].'=1&q='.$res['query'].'&pageno='.$res['pageno'].'&time_range='.$res['timerange'].'$language=ja-JP&format=json'); + curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + + $get = curl_exec($ch); + dd($get); + $err = curl_error($ch); + curl_close($ch); + + if (!$get) return $err; + $get = json_decode($get); + + return $get; + // https://search.076.ne.jp/searx/search?q=searx%20api&categories=general&language=ja-JP + // https://search.076.ne.jp/searx/search?category_general=1&q=searx+api&pageno=1&time_range=None&language=ja-JP&format=json + // category_general=1& + return view('pages.search.index'); + } +} diff --git a/resources/views/pages/search/index.blade.php b/resources/views/pages/search/index.blade.php new file mode 100644 index 0000000..3fd9555 --- /dev/null +++ b/resources/views/pages/search/index.blade.php @@ -0,0 +1,23 @@ +@extends('theme.'.env('THEME').'.search') + +@section('content') + +
+
ウェブ検索
+
+
+
+
検索の結果は076検索と同じです。
+
+
+
+
+
+
+
+
+
+
+ + +@endsection diff --git a/resources/views/pages/search/result.blade.php b/resources/views/pages/search/result.blade.php new file mode 100644 index 0000000..7e0901d --- /dev/null +++ b/resources/views/pages/search/result.blade.php @@ -0,0 +1,17 @@ +@extends('theme.'.env('THEME').'.search') + +@section('content') +
+
ウェブ検索
+
+
+
+
+
+
+
+ ささ +
+
+ +@endsection diff --git a/resources/views/theme/techsuwa/search.blade.php b/resources/views/theme/techsuwa/search.blade.php new file mode 100644 index 0000000..50d0bcb --- /dev/null +++ b/resources/views/theme/techsuwa/search.blade.php @@ -0,0 +1,52 @@ + + + + + + + + + + + テクニカル諏訪子 + + @include('theme.'.env('THEME').'.component.favicon') + @include('theme.'.env('THEME').'.component.colors') + + + + @include('theme.'.env('THEME').'.component.navbar') +
+
+
+ +
+
+ @include('theme.'.env('THEME').'.component.contentedit') + @yield('content') +
+
+ @include('theme.'.env('THEME').'.component.footer') +
+
+
+ + diff --git a/routes/view/search.php b/routes/view/search.php new file mode 100644 index 0000000..003d43b --- /dev/null +++ b/routes/view/search.php @@ -0,0 +1,6 @@ + 'search'], function () { + Route::get('/', 'Search\Index@run'); + Route::get('/result', 'Search\Result@run'); +}); diff --git a/routes/web.php b/routes/web.php index 0090c7e..4d011d5 100644 --- a/routes/web.php +++ b/routes/web.php @@ -25,4 +25,5 @@ require(__DIR__.'/api/user.php'); Route::get('/logout', 'User\Logout@index'); require(__DIR__.'/view/bash.php'); +require(__DIR__.'/view/search.php'); require(__DIR__.'/view/site.php');