--- /dev/null
+<?php
+
+namespace App\Templates;
+
+class Documentation extends Search
+{
+ protected $_hasIntro = true;
+
+ public function getName()
+ {
+ return 'Documentation';
+ }
+
+}
class Search extends Base
{
+ protected $_hasIntro = false;
+
public function getName()
{
return 'Moteur de recherche';
{
parent::init();
- $this->removeField('intro');
+ if (!$this->_hasIntro) {
+
+ $this->removeField('intro');
- $this->addField(['name' => 'page_heading',
- 'type' => 'Text',
- 'label' => 'Titre de la page',
- 'tab' => 'Contenus']);
+ $this->addField(['name' => 'page_heading',
+ 'type' => 'Text',
+ 'label' => 'Titre de la page',
+ 'tab' => 'Contenus']);
+ }
// Enable form
$this->addForm();
+++ /dev/null
-<?php
-
-
-namespace App\Templates;
-
-
-class Support extends Base
-{
- public function getName()
- {
- return 'Support';
- }
-}
<template>
- <autocomplete
- class="flex-grow"
- name="q"
- :default-value="value"
- ref="autocomplete"
- :search="getSuggestions"
- :get-result-value="getResultValue"
- :placeholder="placeholder"
- :aria-placeholder="placeholder"
- @submit="handleSubmit"
- :autofocus="autofocus"
- >
- </autocomplete>
+ <div class="flex-grow">
+ <autocomplete
+ name="q"
+ :default-value="value"
+ ref="autocomplete"
+ :search="getSuggestions"
+ :get-result-value="getResultValue"
+ :placeholder="placeholder"
+ :aria-placeholder="placeholder"
+ @submit="handleSubmit"
+ :autofocus="autofocus"
+ >
+ </autocomplete>
+ <input type="hidden" name="type" :value="searchType" v-if="searchType !== ''">
+ </div>
</template>
<script>
placeholder: {
type: String,
},
+ searchType: {
+ type: String,
+ default: ''
+ },
value: {
type: String,
},
return resolve([])
}
- axios.post(this.ajaxURL, { q: input, limit: this.suggestionsLimit })
+ let data = {
+ q: input,
+ type: this.searchType,
+ limit: this.suggestionsLimit
+ };
+
+ axios.post(this.ajaxURL, data)
.then(function(response) {
- if (response.data.length > 0) {
- resolve(response.data);
- }
+ resolve(response.data);
})
.catch(function(error) {
console.error('Error fetching search suggestions', error);
--- /dev/null
+@extends('layouts/app')
+
+@section('content')
+
+ @intro(['padding' => 'pb-1v'])
+
+ <content class="pb-3v">
+
+ <div id="results" class="pt-1v">
+ @include('partials.search-results', ['search_type' => 'product', 'result_url_suffix' => '#documents'])
+ </div>
+
+ </content>
+
+@endsection
data-ga-options='{"search_term":"{{ request()->get('q') }}"}'>
<text-block :title="$page->page_heading"/>
- <div class="search-results-layout">
-
- <div class="search-results-main">
-
- <div class="bg-grey-100 p-1v">
- <form action="{{ $nav->getHrefByName('recherche') }}" method="get"
- class="flex justify-between items-center sm:block">
-
- <search-field placeholder="{{ __('Saisissez votre recherche') }}"
- value="{{ request()->get('q') }}"
- :autofocus="{{ empty(request()->get('q')) ? 'true' : 'false' }}">
- </search-field>
-
- <button
- class="btn flex items-center py-3 px-8 font-display text-lg rounded ml-4 sm:mt-4 sm:mx-auto">
- @svg('search', 'fill-current mr-2')
- {{ __('Rechercher') }}
- </button>
- </form>
- </div>
-
- <div class="search-results mt-6">
- <div class="text-navy mb-2">{{ count($results) }}
- @if(count($results) == 1)
- {{ __('résultat') }}
- @else
- {{ __('résultats') }}
- @endif
- </div>
-
- @foreach ($results as $result)
- <div class="search-result py-5 @if(!$loop->last) border-b-2 border-grey-100 @endif">
-
- <div class="breadcrumbs sm:text-sm">
- @foreach ($result['breadcrumbs'] as $breadcrumb)
- <div @if(!$loop->last) class="breadcrumbs-item" @endif>
- <a class="breadcrumbs-link"
- @if ($breadcrumb->url)href="{{ $breadcrumb->url }}" @endif>
- {{ $breadcrumb->title }}
- </a>
- </div>
- @endforeach
- </div>
-
- <a class="text-2xl sm:text-xl xs:text-lg font-display mt-1 inline-block animated-underline"
- href="{{ $result['url'] }}">{{ $result['title'] }}</a>
- </div>
- @endforeach
- </div>
-
- </div>
-
- <div class="search-results-sidebar">
- <div class="bg-grey-100 p-1v">
- @form
- </div>
- </div>
-
- </div>
-
+ @include('partials.search-results')
</content>
@extends('layouts.app')
@section('content')
- @intro(['padding' => 'pb-4v'])
+ @intro(['padding' => 'pb-2v'])
- <full-width padding="pb-4v">
+ <full-width padding="pb-3v">
<content>
<columns>
<column class="pr-1v sm:pr-0">
+++ /dev/null
-@extends('layouts/app')
-
-@section('content')
-
- @intro(['padding' => 'pb-4v'])
-
-@endsection
<div id="contact-form">
<div class="ajax-form flex flex-col max-w-half">
@if($page->get('form_intro'))
- <div class="form-info text-navy">@markdown($page->get('form_intro'))</div>
+ <div class="form-info text-navy mb-6">@markdown($page->get('form_intro'))</div>
@endif
<form {!! $gaattrs !!} class="text-navy mailform" action="{{ $action ?? '/ajax/mailform' }}" method="post"
data-confirmation="{{$page->get('form_confirmation')??__('Votre message a bien été envoyé')}}"
--- /dev/null
+<div class="search-results-layout">
+
+ <div class="search-results-main">
+
+ <div class="bg-grey-100 p-1v">
+ <form action="{{ $nav->getHrefById($page->id) }}#results" method="get"
+ class="flex justify-between items-center sm:block">
+
+ <search-field placeholder="{{ __('Saisissez votre recherche') }}"
+ value="{{ request()->get('q') }}"
+ search-type="{{ $search_type ?? '' }}"
+ :autofocus="{{ empty(request()->get('q')) ? 'true' : 'false' }}">
+ </search-field>
+
+ <button
+ class="btn flex items-center py-3 px-8 font-display text-lg rounded ml-4 sm:mt-4 sm:mx-auto">
+ @svg('search', 'fill-current mr-2')
+ {{ __('Rechercher') }}
+ </button>
+ </form>
+ </div>
+
+ <div class="search-results mt-6">
+ <div class="text-navy mb-2">{{ count($results) }}
+ @if(count($results) == 1)
+ {{ __('résultat') }}
+ @else
+ {{ __('résultats') }}
+ @endif
+ </div>
+
+ @foreach ($results as $result)
+ <div class="search-result py-5 @if(!$loop->last) border-b-2 border-grey-100 @endif">
+
+ <div class="breadcrumbs sm:text-sm">
+ @foreach ($result['breadcrumbs'] as $breadcrumb)
+ <div @if(!$loop->last) class="breadcrumbs-item" @endif>
+ <a class="breadcrumbs-link"
+ @if ($breadcrumb->url)href="{{ $breadcrumb->url }}" @endif>
+ {{ $breadcrumb->title }}
+ </a>
+ </div>
+ @endforeach
+ </div>
+
+ <a class="text-2xl sm:text-xl xs:text-lg font-display mt-1 inline-block animated-underline"
+ href="{{ $result['url'] }}{{ $result_url_suffix ?? '' }}">{{ $result['title'] }}</a>
+ </div>
+ @endforeach
+ </div>
+
+ </div>
+
+ <div class="search-results-sidebar">
+ <div class="bg-grey-100 p-1v">
+ @form
+ </div>
+ </div>
+
+</div>