From: Stephen Cameron Date: Mon, 26 Aug 2019 17:44:55 +0000 (+0200) Subject: Search functionality and other improvements. WIP #2771 @8 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=5cc57acb1a1b6a6ef0ed32674f62c2f8c6260cc3;p=pmi.git Search functionality and other improvements. WIP #2771 @8 --- diff --git a/app/Http/Controllers/ApplicationController.php b/app/Http/Controllers/ApplicationController.php index 0c506d7..005c9e9 100644 --- a/app/Http/Controllers/ApplicationController.php +++ b/app/Http/Controllers/ApplicationController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use Illuminate\Http\Request; use App\Models\Application; use App\Models\Product; use Cubist\Backpack\app\Http\Controllers\CubistFrontController; @@ -9,7 +10,7 @@ use Cubist\Backpack\app\Magic\PageData; class ApplicationController extends CubistFrontController { - public function view($id) + public function view(Request $request, $id) { $application = Application::find($id); diff --git a/app/Http/Controllers/NewsController.php b/app/Http/Controllers/NewsController.php index 99d2750..1ff882c 100644 --- a/app/Http/Controllers/NewsController.php +++ b/app/Http/Controllers/NewsController.php @@ -2,13 +2,14 @@ namespace App\Http\Controllers; +use Illuminate\Http\Request; use App\Models\News; use Cubist\Backpack\app\Http\Controllers\CubistFrontController; use Cubist\Backpack\app\Magic\PageData; class NewsController extends CubistFrontController { - public function view($id) + public function view(Request $request, $id) { $newsItem = News::find($id); diff --git a/app/Http/Controllers/ProductController.php b/app/Http/Controllers/ProductController.php index 3c1a691..de13e73 100644 --- a/app/Http/Controllers/ProductController.php +++ b/app/Http/Controllers/ProductController.php @@ -6,10 +6,11 @@ namespace App\Http\Controllers; use App\Models\Product; use App\Models\ProductType; use Cubist\Backpack\app\Http\Controllers\CubistFrontController; +use Illuminate\Http\Request; class ProductController extends CubistFrontController { - public function productList($id) + public function productList(Request $request, $id) { $productType = ProductType::find($id); if (!$productType) { @@ -33,7 +34,7 @@ class ProductController extends CubistFrontController return view('pages.products', $this->data); } - public function productDetails($id) + public function productDetails(Request $request, $id) { $product = Product::find($id); diff --git a/app/Templates/Search.php b/app/Templates/Search.php index f867591..6c29386 100644 --- a/app/Templates/Search.php +++ b/app/Templates/Search.php @@ -3,6 +3,7 @@ namespace App\Templates; +use Cubist\Backpack\app\Magic\Search as SearchEngine; class Search extends Base { @@ -10,4 +11,29 @@ class Search extends Base { return 'Moteur de recherche'; } + + public function init() + { + parent::init(); + + $this->removeField('intro'); + + $this->addField(['name' => 'page_heading', + 'type' => 'Text', + 'label' => 'Titre de la page', + 'tab' => 'Contenus']); + + // Enable form + $this->addForm(); + } + + public function setData(&$data) { + + $request = $data['request']; + + $data['results'] = SearchEngine::query($request->q, $request->type ?? null, $request->limit ?? null); + + } + + } diff --git a/resources/js/components/Search.vue b/resources/js/components/Search.vue index 91227c2..2271264 100644 --- a/resources/js/components/Search.vue +++ b/resources/js/components/Search.vue @@ -10,10 +10,10 @@