]> _ Git - psq.git/commitdiff
ad campaign instant search
authorLouis Jeckel <louis.jeckel@outlook.cm>
Wed, 6 May 2020 15:40:21 +0000 (17:40 +0200)
committerLouis Jeckel <louis.jeckel@outlook.cm>
Wed, 6 May 2020 15:40:21 +0000 (17:40 +0200)
14 files changed:
app/Http/Controllers/AdCampaignController.php [new file with mode: 0644]
app/Models/AdCampaign.php
app/PhpVars.php
config/scout.php
public/admin/js/admin.js
public/css/app.css
public/js/app.js
resources/js/components/AdCampaign/CampaignHit.vue [new file with mode: 0644]
resources/js/components/AdCampaign/CampaignInstantSearch.vue [new file with mode: 0644]
resources/sass/_ais.scss
resources/sass/app.scss
resources/views/ad_campaigns.blade.php [new file with mode: 0644]
resources/views/home/blocks/2_ad_campaigns.blade.php
routes/web.php

diff --git a/app/Http/Controllers/AdCampaignController.php b/app/Http/Controllers/AdCampaignController.php
new file mode 100644 (file)
index 0000000..2aa2e62
--- /dev/null
@@ -0,0 +1,16 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+
+class AdCampaignController extends Controller
+{
+
+    public function index()
+    {
+        return view('ad_campaigns');
+    }
+
+
+}
index ac5ea6550c8d929d528e8cfb1ed4046a0dc21094..2f3f3dc39ae5b602d8dd96c77bb0c925c706c7a2 100644 (file)
@@ -7,10 +7,12 @@ use A17\Twill\Models\Behaviors\HasMedias;
 use A17\Twill\Models\Behaviors\HasPosition;
 use A17\Twill\Models\Behaviors\Sortable;
 use A17\Twill\Models\Model;
+use Laravel\Scout\Searchable;
 
 class AdCampaign extends Model implements Sortable
 {
     use HasSlug, HasMedias, HasPosition;
+    use Searchable;
 
     protected $fillable = [
         'published',
@@ -19,7 +21,8 @@ class AdCampaign extends Model implements Sortable
         'position',
         'url',
         'publish_start_date',
-        'publish_end_date'
+        'publish_end_date',
+        'organization'
     ];
 
     public $slugAttributes = [
@@ -37,4 +40,19 @@ class AdCampaign extends Model implements Sortable
 
         ],
     ];
+
+    /**
+     * @return array
+     */
+    public function toSearchableArray()
+    {
+        return [
+            'title' => $this->title,
+            'description' => $this->description,
+            'url' => $this->url,
+            'published' => $this->published,
+            'image' => $this->image('image', 'preview'),
+            'organization' => $this->organization,
+        ];
+    }
 }
index b86798dc2d7217b056c7e5860d7c4c1ad64f31fb..b79b508f0915ed3e638529c0a08f766b5cbfe047 100644 (file)
@@ -10,9 +10,9 @@ class PhpVars
     protected static function data()
     {
         return [
-            'algolia_app_id' => env('ALGOLIA_APP_ID'),
-            'algolia_search_key' =>  env('ALGOLIA_SEARCH_KEY'),
-            'algolia_prefix' => env('SCOUT_PREFIX'),
+            'algolia_app_id' => config('scout.algolia.id'),
+            'algolia_search_key' =>  config('scout.algolia.search_key'),
+            'algolia_prefix' => config('scout.prefix'),
         ];
     }
 
index 6e47577868ac4b9de3dae876690feea846689740..a5a65d505ed41d915925da9fcb830d210af5cb77 100644 (file)
@@ -86,6 +86,7 @@ return [
     'algolia' => [
         'id' => env('ALGOLIA_APP_ID', '2DN9N2PQBK'),
         'secret' => env('ALGOLIA_SECRET', '8a1916ad1188b1b570cb85a43e5be2fa'),
+        'search_key' => env('ALGOLIA_SEARCH_KEY'),
     ],
 
 ];
index d9d8ae5d9d4cb5b3c9b2570c498315f0f67c1dde..144d3066e0aa57dd753a58ffcf908f771e9cd553 100644 (file)
@@ -2138,6 +2138,111 @@ module.exports = {
 };
 
 
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js& ***!
+  \*********************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+  name: "CampaignHit",
+  props: ['hit']
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&":
+/*!*******************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js& ***!
+  \*******************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _mixins_SearchMixin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../mixins/SearchMixin */ "./resources/js/mixins/SearchMixin.js");
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+  name: "CampaignInstantSearch",
+  mixins: [_mixins_SearchMixin__WEBPACK_IMPORTED_MODULE_0__["default"]],
+  mounted: function mounted() {},
+  computed: {}
+});
+
 /***/ }),
 
 /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/FileSearch/FileHit.vue?vue&type=script&lang=js&":
@@ -9815,6 +9920,24 @@ exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\
 module.exports = exports;
 
 
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \****************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Imports
+var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+exports = ___CSS_LOADER_API_IMPORT___(false);
+// Module
+exports.push([module.i, "\nh4[data-v-39270b32] {\n    font-variant: small-caps;\n}\n\n", ""]);
+// Exports
+module.exports = exports;
+
+
 /***/ }),
 
 /***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=style&index=0&lang=css&":
@@ -48446,6 +48569,37 @@ var exported = content.locals ? content.locals : {};
 
 
 
+module.exports = exported;
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var api = __webpack_require__(/*! ../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+            var content = __webpack_require__(/*! !../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+
+            content = content.__esModule ? content.default : content;
+
+            if (typeof content === 'string') {
+              content = [[module.i, content, '']];
+            }
+
+var options = {};
+
+options.insert = "head";
+options.singleton = false;
+
+var update = api(content, options);
+
+var exported = content.locals ? content.locals : {};
+
+
+
 module.exports = exported;
 
 /***/ }),
@@ -49403,6 +49557,172 @@ render._withStripped = true
 
 
 
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&":
+/*!*************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& ***!
+  \*************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+  return _c("div", { staticClass: "box row" }, [
+    _c("div", { staticClass: "col-sm-4 pl-0" }, [
+      _c("img", {
+        staticClass: "w-100",
+        attrs: { src: _vm.hit.image, alt: "" }
+      })
+    ]),
+    _vm._v(" "),
+    _c("div", { staticClass: "col-sm-8 pt-3" }, [
+      _c(
+        "h3",
+        [
+          _c("ais-highlight", {
+            attrs: { attribute: "organization", hit: _vm.hit }
+          })
+        ],
+        1
+      ),
+      _vm._v(" "),
+      _c(
+        "h4",
+        [_c("ais-highlight", { attrs: { attribute: "title", hit: _vm.hit } })],
+        1
+      ),
+      _vm._v(" "),
+      _c("p", { domProps: { innerHTML: _vm._s(_vm.hit.description) } })
+    ])
+  ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&":
+/*!***********************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& ***!
+  \***********************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+  return _c(
+    "div",
+    [
+      _c(
+        "ais-instant-search",
+        {
+          attrs: {
+            "search-client": _vm.searchClient,
+            "index-name": _vm.prefix + "ad_campaigns"
+          }
+        },
+        [
+          _c("ais-configure", { attrs: { hitsPerPage: 10 } }),
+          _vm._v(" "),
+          _c("div", { staticClass: "row" }, [
+            _c(
+              "div",
+              { staticClass: "col-md-12" },
+              [
+                _c(
+                  "div",
+                  { staticClass: "px-3" },
+                  [
+                    _c("ais-search-box", {
+                      staticClass: "searchbox ",
+                      attrs: { placeholder: "Rechercher..." }
+                    })
+                  ],
+                  1
+                ),
+                _vm._v(" "),
+                _c("ais-stats", { staticClass: "mt-2 ml-3" }),
+                _vm._v(" "),
+                _c(
+                  "div",
+                  { staticClass: "my-4" },
+                  [
+                    _c("ais-infinite-hits", {
+                      attrs: {
+                        "class-names": {
+                          "ais-InfiniteHits-list": "row",
+                          "ais-InfiniteHits-item": "col-sm-12 mb-3"
+                        }
+                      },
+                      scopedSlots: _vm._u([
+                        {
+                          key: "item",
+                          fn: function(ref) {
+                            var item = ref.item
+                            var index = ref.index
+                            return _c("campaign-hit", {
+                              key: index,
+                              attrs: { hit: item }
+                            })
+                          }
+                        },
+                        {
+                          key: "loadMore",
+                          fn: function(ref) {
+                            var page = ref.page
+                            var isLastPage = ref.isLastPage
+                            var refineNext = ref.refineNext
+                            return _c(
+                              "button",
+                              {
+                                staticClass: "ais-InfiniteHits-loadMore",
+                                attrs: { disabled: isLastPage },
+                                on: { click: refineNext }
+                              },
+                              [
+                                _vm._v(
+                                  "\n                      Voir plus\n                  "
+                                )
+                              ]
+                            )
+                          }
+                        }
+                      ])
+                    })
+                  ],
+                  1
+                )
+              ],
+              1
+            )
+          ])
+        ],
+        1
+      )
+    ],
+    1
+  )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
 /***/ }),
 
 /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/FileSearch/FileHit.vue?vue&type=template&id=25439992&scoped=true&":
@@ -65581,6 +65901,8 @@ module.exports = function(module) {
 /***/ (function(module, exports, __webpack_require__) {
 
 var map = {
+       "./components/AdCampaign/CampaignHit.vue": "./resources/js/components/AdCampaign/CampaignHit.vue",
+       "./components/AdCampaign/CampaignInstantSearch.vue": "./resources/js/components/AdCampaign/CampaignInstantSearch.vue",
        "./components/FileSearch/FileHit.vue": "./resources/js/components/FileSearch/FileHit.vue",
        "./components/FileSearch/FileInstantSearch.vue": "./resources/js/components/FileSearch/FileInstantSearch.vue",
        "./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
@@ -65740,6 +66062,162 @@ window.Echo = new laravel_echo__WEBPACK_IMPORTED_MODULE_1__["default"]({
   encrypted: true
 });
 
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue":
+/*!************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue ***!
+  \************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&");
+/* harmony import */ var _CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=script&lang=js& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+  _CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  "39270b32",
+  null
+  
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/AdCampaign/CampaignHit.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&":
+/*!*************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js& ***!
+  \*************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!*********************************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \*********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&":
+/*!*******************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& ***!
+  \*******************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue":
+/*!**********************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue ***!
+  \**********************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& */ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&");
+/* harmony import */ var _CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CampaignInstantSearch.vue?vue&type=script&lang=js& */ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+  _CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  null,
+  null
+  
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/AdCampaign/CampaignInstantSearch.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&":
+/*!***********************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js& ***!
+  \***********************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignInstantSearch.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&":
+/*!*****************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& ***!
+  \*****************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
 /***/ }),
 
 /***/ "./resources/js/components/FileSearch/FileHit.vue":
index 86d2fbfad6868320764dcdf82d81c65651cbd0c1..355dbe5290d1868fa5682f5537d2382451ef2a65 100644 (file)
@@ -10984,6 +10984,7 @@ a.text-dark:focus {
 }
 
 mark.ais-Snippet-highlighted,
+mark.ais-Highlight-highlighted,
 mark.mark {
   padding: 0;
   background-color: #fff252;
@@ -10991,3 +10992,7 @@ mark.mark {
 
 /* Temporary */
 
+.box {
+  box-shadow: 0 2px 0 rgba(90, 97, 105, 0.11), 0 4px 8px rgba(90, 97, 105, 0.12), 0 10px 10px rgba(90, 97, 105, 0.06), 0 7px 70px rgba(90, 97, 105, 0.1);
+}
+
index 8b9248eb09e6f7361634200e3026a6ca72f89f79..27ef69083415b4bb377cab7d67237c08965c13c7 100644 (file)
@@ -7333,6 +7333,111 @@ module.exports = {
 };
 
 
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&":
+/*!*********************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js& ***!
+  \*********************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+/* harmony default export */ __webpack_exports__["default"] = ({
+  name: "CampaignHit",
+  props: ['hit']
+});
+
+/***/ }),
+
+/***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&":
+/*!*******************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/babel-loader/lib??ref--4-0!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js& ***!
+  \*******************************************************************************************************************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _mixins_SearchMixin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../mixins/SearchMixin */ "./resources/js/mixins/SearchMixin.js");
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+//
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+  name: "CampaignInstantSearch",
+  mixins: [_mixins_SearchMixin__WEBPACK_IMPORTED_MODULE_0__["default"]],
+  mounted: function mounted() {},
+  computed: {}
+});
+
 /***/ }),
 
 /***/ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/FileSearch/FileHit.vue?vue&type=script&lang=js&":
@@ -15028,6 +15133,24 @@ exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\
 module.exports = exports;
 
 
+/***/ }),
+
+/***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \****************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+// Imports
+var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
+exports = ___CSS_LOADER_API_IMPORT___(false);
+// Module
+exports.push([module.i, "\nh4[data-v-39270b32] {\n    font-variant: small-caps;\n}\n\n", ""]);
+// Exports
+module.exports = exports;
+
+
 /***/ }),
 
 /***/ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/Publish/Step1UploadFile.vue?vue&type=style&index=0&lang=css&":
@@ -77890,6 +78013,37 @@ var exported = content.locals ? content.locals : {};
 
 
 
+module.exports = exported;
+
+/***/ }),
+
+/***/ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js??ref--7-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--7-2!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+var api = __webpack_require__(/*! ../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
+            var content = __webpack_require__(/*! !../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+
+            content = content.__esModule ? content.default : content;
+
+            if (typeof content === 'string') {
+              content = [[module.i, content, '']];
+            }
+
+var options = {};
+
+options.insert = "head";
+options.singleton = false;
+
+var update = api(content, options);
+
+var exported = content.locals ? content.locals : {};
+
+
+
 module.exports = exported;
 
 /***/ }),
@@ -78901,6 +79055,172 @@ render._withStripped = true
 
 
 
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&":
+/*!*************************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& ***!
+  \*************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+  return _c("div", { staticClass: "box row" }, [
+    _c("div", { staticClass: "col-sm-4 pl-0" }, [
+      _c("img", {
+        staticClass: "w-100",
+        attrs: { src: _vm.hit.image, alt: "" }
+      })
+    ]),
+    _vm._v(" "),
+    _c("div", { staticClass: "col-sm-8 pt-3" }, [
+      _c(
+        "h3",
+        [
+          _c("ais-highlight", {
+            attrs: { attribute: "organization", hit: _vm.hit }
+          })
+        ],
+        1
+      ),
+      _vm._v(" "),
+      _c(
+        "h4",
+        [_c("ais-highlight", { attrs: { attribute: "title", hit: _vm.hit } })],
+        1
+      ),
+      _vm._v(" "),
+      _c("p", { domProps: { innerHTML: _vm._s(_vm.hit.description) } })
+    ])
+  ])
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&":
+/*!***********************************************************************************************************************************************************************************************************************************!*\
+  !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& ***!
+  \***********************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
+/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
+var render = function() {
+  var _vm = this
+  var _h = _vm.$createElement
+  var _c = _vm._self._c || _h
+  return _c(
+    "div",
+    [
+      _c(
+        "ais-instant-search",
+        {
+          attrs: {
+            "search-client": _vm.searchClient,
+            "index-name": _vm.prefix + "ad_campaigns"
+          }
+        },
+        [
+          _c("ais-configure", { attrs: { hitsPerPage: 10 } }),
+          _vm._v(" "),
+          _c("div", { staticClass: "row" }, [
+            _c(
+              "div",
+              { staticClass: "col-md-12" },
+              [
+                _c(
+                  "div",
+                  { staticClass: "px-3" },
+                  [
+                    _c("ais-search-box", {
+                      staticClass: "searchbox ",
+                      attrs: { placeholder: "Rechercher..." }
+                    })
+                  ],
+                  1
+                ),
+                _vm._v(" "),
+                _c("ais-stats", { staticClass: "mt-2 ml-3" }),
+                _vm._v(" "),
+                _c(
+                  "div",
+                  { staticClass: "my-4" },
+                  [
+                    _c("ais-infinite-hits", {
+                      attrs: {
+                        "class-names": {
+                          "ais-InfiniteHits-list": "row",
+                          "ais-InfiniteHits-item": "col-sm-12 mb-3"
+                        }
+                      },
+                      scopedSlots: _vm._u([
+                        {
+                          key: "item",
+                          fn: function(ref) {
+                            var item = ref.item
+                            var index = ref.index
+                            return _c("campaign-hit", {
+                              key: index,
+                              attrs: { hit: item }
+                            })
+                          }
+                        },
+                        {
+                          key: "loadMore",
+                          fn: function(ref) {
+                            var page = ref.page
+                            var isLastPage = ref.isLastPage
+                            var refineNext = ref.refineNext
+                            return _c(
+                              "button",
+                              {
+                                staticClass: "ais-InfiniteHits-loadMore",
+                                attrs: { disabled: isLastPage },
+                                on: { click: refineNext }
+                              },
+                              [
+                                _vm._v(
+                                  "\n                      Voir plus\n                  "
+                                )
+                              ]
+                            )
+                          }
+                        }
+                      ])
+                    })
+                  ],
+                  1
+                )
+              ],
+              1
+            )
+          ])
+        ],
+        1
+      )
+    ],
+    1
+  )
+}
+var staticRenderFns = []
+render._withStripped = true
+
+
+
 /***/ }),
 
 /***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/FileSearch/FileHit.vue?vue&type=template&id=25439992&scoped=true&":
@@ -95079,6 +95399,8 @@ module.exports = function(module) {
 /***/ (function(module, exports, __webpack_require__) {
 
 var map = {
+       "./components/AdCampaign/CampaignHit.vue": "./resources/js/components/AdCampaign/CampaignHit.vue",
+       "./components/AdCampaign/CampaignInstantSearch.vue": "./resources/js/components/AdCampaign/CampaignInstantSearch.vue",
        "./components/FileSearch/FileHit.vue": "./resources/js/components/FileSearch/FileHit.vue",
        "./components/FileSearch/FileInstantSearch.vue": "./resources/js/components/FileSearch/FileInstantSearch.vue",
        "./components/Home/cover.vue": "./resources/js/components/Home/cover.vue",
@@ -95244,6 +95566,162 @@ window.Echo = new laravel_echo__WEBPACK_IMPORTED_MODULE_1__["default"]({
   encrypted: true
 });
 
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue":
+/*!************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue ***!
+  \************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&");
+/* harmony import */ var _CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=script&lang=js& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
+  _CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  "39270b32",
+  null
+  
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/AdCampaign/CampaignHit.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&":
+/*!*************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js& ***!
+  \*************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&":
+/*!*********************************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& ***!
+  \*********************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/style-loader/dist/cjs.js!../../../../node_modules/css-loader/dist/cjs.js??ref--7-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src??ref--7-2!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css& */ "./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js?!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=style&index=0&id=39270b32&scoped=true&lang=css&");
+/* harmony import */ var _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
+ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_style_loader_dist_cjs_js_node_modules_css_loader_dist_cjs_js_ref_7_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_2_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_style_index_0_id_39270b32_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default.a); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&":
+/*!*******************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& ***!
+  \*******************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignHit.vue?vue&type=template&id=39270b32&scoped=true& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignHit.vue?vue&type=template&id=39270b32&scoped=true&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignHit_vue_vue_type_template_id_39270b32_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue":
+/*!**********************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue ***!
+  \**********************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& */ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&");
+/* harmony import */ var _CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CampaignInstantSearch.vue?vue&type=script&lang=js& */ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport *//* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ "./node_modules/vue-loader/lib/runtime/componentNormalizer.js");
+
+
+
+
+
+/* normalize component */
+
+var component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__["default"])(
+  _CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
+  _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["render"],
+  _CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
+  false,
+  null,
+  null,
+  null
+  
+)
+
+/* hot reload */
+if (false) { var api; }
+component.options.__file = "resources/js/components/AdCampaign/CampaignInstantSearch.vue"
+/* harmony default export */ __webpack_exports__["default"] = (component.exports);
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&":
+/*!***********************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js& ***!
+  \***********************************************************************************************/
+/*! exports provided: default */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/babel-loader/lib??ref--4-0!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignInstantSearch.vue?vue&type=script&lang=js& */ "./node_modules/babel-loader/lib/index.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=script&lang=js&");
+/* empty/unused harmony star reexport */ /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_ref_4_0_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__["default"]); 
+
+/***/ }),
+
+/***/ "./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&":
+/*!*****************************************************************************************************!*\
+  !*** ./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& ***!
+  \*****************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../node_modules/vue-loader/lib??vue-loader-options!./CampaignInstantSearch.vue?vue&type=template&id=7d406ac8& */ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./resources/js/components/AdCampaign/CampaignInstantSearch.vue?vue&type=template&id=7d406ac8&");
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["render"]; });
+
+/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_CampaignInstantSearch_vue_vue_type_template_id_7d406ac8___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
+
+
+
 /***/ }),
 
 /***/ "./resources/js/components/FileSearch/FileHit.vue":
diff --git a/resources/js/components/AdCampaign/CampaignHit.vue b/resources/js/components/AdCampaign/CampaignHit.vue
new file mode 100644 (file)
index 0000000..b0b98c7
--- /dev/null
@@ -0,0 +1,30 @@
+<template>
+    <div class="box row">
+        <div class="col-sm-4 pl-0">
+            <img class="w-100" :src="hit.image" alt="">
+        </div>
+        <div class="col-sm-8 pt-3">
+
+            <h3><ais-highlight attribute="organization" :hit="hit" /></h3>
+            <h4><ais-highlight attribute="title" :hit="hit" /></h4>
+            <p v-html="hit.description"></p>
+
+        </div>
+
+    </div>
+
+</template>
+
+<script>
+    export default {
+        name: "CampaignHit",
+        props: ['hit'],
+    }
+</script>
+
+<style scoped>
+    h4 {
+        font-variant: small-caps;
+    }
+
+</style>
diff --git a/resources/js/components/AdCampaign/CampaignInstantSearch.vue b/resources/js/components/AdCampaign/CampaignInstantSearch.vue
new file mode 100644 (file)
index 0000000..60dbe11
--- /dev/null
@@ -0,0 +1,68 @@
+<template>
+  <div>
+
+      <ais-instant-search
+        :search-client="searchClient"
+        :index-name="prefix+'ad_campaigns'"
+      >
+       <ais-configure
+          :hits-per-page.camel="10"
+        />
+        <div class="row">
+
+
+        <div class="col-md-12">
+            <div class="px-3">
+                <ais-search-box placeholder="Rechercher..." class="searchbox " />
+
+            </div>
+            <ais-stats class="mt-2 ml-3"></ais-stats>
+
+              <div class="my-4">
+                <ais-infinite-hits :class-names="{
+                    'ais-InfiniteHits-list': 'row',
+                    'ais-InfiniteHits-item' : 'col-sm-12 mb-3'
+                }">
+
+                    <campaign-hit
+                        slot="item"
+                        slot-scope="{item, index}"
+                        :key="index"
+                        :hit="item"
+                    >
+                    </campaign-hit>
+
+                    <button
+                        slot="loadMore"
+                        slot-scope="{ page, isLastPage, refineNext }"
+                        :disabled="isLastPage"
+                        @click="refineNext"
+                        class="ais-InfiniteHits-loadMore"
+                    >
+                        Voir plus
+                    </button>
+                </ais-infinite-hits>
+              </div>
+        </div>
+      </div>
+      </ais-instant-search>
+    </div>
+
+</template>
+
+<script>
+import Search from '../../mixins/SearchMixin';
+
+export default {
+  name: "CampaignInstantSearch",
+  mixins: [Search],
+  mounted(){
+  },
+  computed: {
+
+  }
+
+
+};
+</script>
+
index 20c12f1399b8aec55f42d65593e177e42b95e1d5..8cfb523fe63943b1f6b5e574efa6f1197bddf771 100644 (file)
@@ -4,7 +4,7 @@
     display: inline-block;
 }
 
-mark.ais-Snippet-highlighted, mark.mark {
+mark.ais-Snippet-highlighted, mark.ais-Highlight-highlighted, mark.mark {
     padding: 0;
     background-color: #fff252;
 }
index 3ab0dce6fd32b3ea71c4f87b79bf6fd280b58dfb..37c2df3508f7c29d2f1f8aeb58479b6b30e3ce80 100644 (file)
 //    border: 1px solid black;
 //}
 
-
-
-
-
-.card-container {
-
-  //box-sizing: initial;
-  //  *, *::before, *::after {
-  //      box-sizing: initial !important;
-  //  }
+.box {
+    box-shadow: 0 2px 0 rgba(90, 97, 105, 0.11),
+    0 4px 8px rgba(90, 97, 105, 0.12),
+    0 10px 10px rgba(90, 97, 105, 0.06),
+    0 7px 70px rgba(90, 97, 105, 0.1);
 }
-
-
diff --git a/resources/views/ad_campaigns.blade.php b/resources/views/ad_campaigns.blade.php
new file mode 100644 (file)
index 0000000..e0862b1
--- /dev/null
@@ -0,0 +1,7 @@
+@extends('layouts.app')
+
+@section('content')
+<div class="container">
+    <campaign-instant-search></campaign-instant-search>
+</div>
+@endsection
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..559f3635929260713d48485cb2de70e4b9c69c67 100644 (file)
@@ -0,0 +1,3 @@
+<div class="row">
+
+</div>
index 173fc56191a002cd17312bb996c441ff7eccc839..4dee87fcc842fb3bb3789fbd8bab5959f02940cd 100644 (file)
@@ -50,6 +50,7 @@ Route::domain(env('CLIENT_DOMAIN_NAME'))->group(function() {
 
 
     Route::get('/search', 'FileController@search');
+    Route::get('/campaigns', 'AdCampaignController@index');
 
     /** Metadata */
     Route::prefix('/files/{file:slug}')->group(function () {