search in particular category
This commit is contained in:
parent
ff3f0cf780
commit
d23d3b4f8c
|
|
@ -242,7 +242,6 @@ return [
|
|||
Tymon\JWTAuth\Providers\LaravelServiceProvider::class,
|
||||
|
||||
//Webkul packages
|
||||
Webkul\Velocity\Providers\VelocityServiceProvider::class,
|
||||
Webkul\Theme\Providers\ThemeServiceProvider::class,
|
||||
Webkul\User\Providers\UserServiceProvider::class,
|
||||
Webkul\Admin\Providers\AdminServiceProvider::class,
|
||||
|
|
@ -264,7 +263,8 @@ return [
|
|||
Webkul\CatalogRule\Providers\CatalogRuleServiceProvider::class,
|
||||
Webkul\CartRule\Providers\CartRuleServiceProvider::class,
|
||||
Webkul\Rule\Providers\RuleServiceProvider::class,
|
||||
Webkul\CMS\Providers\CMSServiceProvider::class
|
||||
Webkul\CMS\Providers\CMSServiceProvider::class,
|
||||
Webkul\Velocity\Providers\VelocityServiceProvider::class,
|
||||
],
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -2503,8 +2503,8 @@
|
|||
}
|
||||
|
||||
.full-content-wrapper > .container-fluid {
|
||||
margin-bottom: 60px;
|
||||
padding: 0 !important;
|
||||
margin-bottom: 60px !important;
|
||||
}
|
||||
|
||||
.full-content-wrapper > .container-fluid > .row {
|
||||
|
|
|
|||
|
|
@ -1069,8 +1069,8 @@ module.exports = Cancel;
|
|||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
__webpack_require__(12);
|
||||
__webpack_require__(76);
|
||||
module.exports = __webpack_require__(77);
|
||||
__webpack_require__(79);
|
||||
module.exports = __webpack_require__(80);
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
|
@ -1118,14 +1118,14 @@ __WEBPACK_IMPORTED_MODULE_0_vue___default.a.component("vue-slider", __webpack_re
|
|||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('modal-component', __webpack_require__(46));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('quantity-btn', __webpack_require__(49));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('sidebar-component', __webpack_require__(52));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component("product-card", __webpack_require__(80));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component("wishlist-component", __webpack_require__(55));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('carousel-component', __webpack_require__(58));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('child-sidebar', __webpack_require__(61));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('card-list-content', __webpack_require__(64));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('card-list-header', __webpack_require__(67));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('magnify-image', __webpack_require__(70));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('responsive-sidebar', __webpack_require__(73));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component("product-card", __webpack_require__(55));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component("wishlist-component", __webpack_require__(58));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('carousel-component', __webpack_require__(61));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('child-sidebar', __webpack_require__(64));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('card-list-content', __webpack_require__(67));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('card-list-header', __webpack_require__(70));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('magnify-image', __webpack_require__(73));
|
||||
__WEBPACK_IMPORTED_MODULE_0_vue___default.a.component('responsive-sidebar', __webpack_require__(76));
|
||||
|
||||
window.eventBus = new __WEBPACK_IMPORTED_MODULE_0_vue___default.a();
|
||||
|
||||
|
|
@ -36223,7 +36223,7 @@ var Component = normalizeComponent(
|
|||
__vue_scopeId__,
|
||||
__vue_module_identifier__
|
||||
)
|
||||
Component.options.__file = "src/Resources/assets/js/UI/components/wishlist.vue"
|
||||
Component.options.__file = "src/Resources/assets/js/UI/components/product-card.vue"
|
||||
|
||||
/* hot reload */
|
||||
if (false) {(function () {
|
||||
|
|
@ -36232,9 +36232,9 @@ if (false) {(function () {
|
|||
if (!hotAPI.compatible) return
|
||||
module.hot.accept()
|
||||
if (!module.hot.data) {
|
||||
hotAPI.createRecord("data-v-ac965700", Component.options)
|
||||
hotAPI.createRecord("data-v-3d78742e", Component.options)
|
||||
} else {
|
||||
hotAPI.reload("data-v-ac965700", Component.options)
|
||||
hotAPI.reload("data-v-3d78742e", Component.options)
|
||||
}
|
||||
module.hot.dispose(function (data) {
|
||||
disposed = true
|
||||
|
|
@ -36248,6 +36248,288 @@ module.exports = Component.exports
|
|||
/* 56 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
|
||||
// compile add to cart html (it contains wishlist component)
|
||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||
props: ['list', 'productImg', 'productUrl', 'priceHtml', 'addToCartHtml', 'productName', 'totalReviews', 'avgRating', 'firstReviewText'],
|
||||
|
||||
data: function data() {
|
||||
return {};
|
||||
}
|
||||
});
|
||||
|
||||
/***/ }),
|
||||
/* 57 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
var _vm = this
|
||||
var _h = _vm.$createElement
|
||||
var _c = _vm._self._c || _h
|
||||
return _vm.list
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "col-12 lg-card-container list-card product-card row" },
|
||||
[
|
||||
_c("div", { staticClass: "product-image" }, [
|
||||
_c(
|
||||
"a",
|
||||
{ attrs: { title: _vm.productName, href: _vm.productUrl } },
|
||||
[_c("img", { attrs: { src: _vm.productImg } })]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", { staticClass: "product-information" }, [
|
||||
_c("div", [
|
||||
_c("div", { staticClass: "product-name" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "unset",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("span", { staticClass: "fs16" }, [
|
||||
_vm._v(_vm._s(_vm.productName))
|
||||
])
|
||||
]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "product-price",
|
||||
domProps: { innerHTML: _vm._s(_vm.priceHtml) }
|
||||
}),
|
||||
_vm._v(" "),
|
||||
_vm.totalReviews && _vm.totalReviews > 0
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "product-rating" },
|
||||
[
|
||||
_c("star-ratings", { attrs: { ratings: _vm.avgRating } }),
|
||||
_vm._v(" "),
|
||||
_c("span", [
|
||||
_vm._v(_vm._s(_vm.totalReviews) + " Ratings")
|
||||
])
|
||||
],
|
||||
1
|
||||
)
|
||||
: _c("div", { staticClass: "product-rating" }, [
|
||||
_c("span", {
|
||||
staticClass: "fs14",
|
||||
domProps: { textContent: _vm._s(_vm.firstReviewText) }
|
||||
})
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "cart-wish-wrap row mt5",
|
||||
domProps: { innerHTML: _vm._s(_vm.addToCartHtml) }
|
||||
})
|
||||
])
|
||||
])
|
||||
]
|
||||
)
|
||||
: _c("div", { staticClass: "card grid-card product-card-new" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "product-image-container",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("img", {
|
||||
staticClass: "card-img-top",
|
||||
attrs: {
|
||||
loading: "lazy",
|
||||
src: _vm.productImg,
|
||||
alt: _vm.productName
|
||||
}
|
||||
})
|
||||
]
|
||||
),
|
||||
_vm._v(" "),
|
||||
_c("div", { staticClass: "card-body" }, [
|
||||
_c("div", { staticClass: "product-name col-12 no-padding" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "unset",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("span", { staticClass: "fs16" }, [
|
||||
_vm._v(_vm._s(_vm.productName))
|
||||
])
|
||||
]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "product-price fs16",
|
||||
domProps: { innerHTML: _vm._s(_vm.priceHtml) }
|
||||
}),
|
||||
_vm._v(" "),
|
||||
_vm.totalReviews && _vm.totalReviews > 0
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "product-rating col-12 no-padding" },
|
||||
[
|
||||
_c("star-ratings", { attrs: { ratings: _vm.avgRating } }),
|
||||
_vm._v(" "),
|
||||
_c("span", { staticClass: "align-top" }, [
|
||||
_vm._v(_vm._s(_vm.totalReviews) + " Ratings")
|
||||
])
|
||||
],
|
||||
1
|
||||
)
|
||||
: _c("div", { staticClass: "product-rating col-12 no-padding" }, [
|
||||
_c("span", {
|
||||
staticClass: "fs14",
|
||||
domProps: { textContent: _vm._s(_vm.firstReviewText) }
|
||||
})
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "cart-wish-wrap row col-12 no-padding ml0",
|
||||
domProps: { innerHTML: _vm._s(_vm.addToCartHtml) }
|
||||
})
|
||||
])
|
||||
])
|
||||
}
|
||||
var staticRenderFns = []
|
||||
render._withStripped = true
|
||||
module.exports = { render: render, staticRenderFns: staticRenderFns }
|
||||
if (false) {
|
||||
module.hot.accept()
|
||||
if (module.hot.data) {
|
||||
require("vue-hot-reload-api") .rerender("data-v-3d78742e", module.exports)
|
||||
}
|
||||
}
|
||||
|
||||
/***/ }),
|
||||
/* 58 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(59)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(60)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
var __vue_styles__ = null
|
||||
/* scopeId */
|
||||
var __vue_scopeId__ = null
|
||||
/* moduleIdentifier (server only) */
|
||||
var __vue_module_identifier__ = null
|
||||
var Component = normalizeComponent(
|
||||
__vue_script__,
|
||||
__vue_template__,
|
||||
__vue_template_functional__,
|
||||
__vue_styles__,
|
||||
__vue_scopeId__,
|
||||
__vue_module_identifier__
|
||||
)
|
||||
Component.options.__file = "src/Resources/assets/js/UI/components/wishlist.vue"
|
||||
|
||||
/* hot reload */
|
||||
if (false) {(function () {
|
||||
var hotAPI = require("vue-hot-reload-api")
|
||||
hotAPI.install(require("vue"), false)
|
||||
if (!hotAPI.compatible) return
|
||||
module.hot.accept()
|
||||
if (!module.hot.data) {
|
||||
hotAPI.createRecord("data-v-ac965700", Component.options)
|
||||
} else {
|
||||
hotAPI.reload("data-v-ac965700", Component.options)
|
||||
}
|
||||
module.hot.dispose(function (data) {
|
||||
disposed = true
|
||||
})
|
||||
})()}
|
||||
|
||||
module.exports = Component.exports
|
||||
|
||||
|
||||
/***/ }),
|
||||
/* 59 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
||||
//
|
||||
|
|
@ -36271,7 +36553,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 57 */
|
||||
/* 60 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -36313,15 +36595,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 58 */
|
||||
/* 61 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(59)
|
||||
var __vue_script__ = __webpack_require__(62)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(60)
|
||||
var __vue_template__ = __webpack_require__(63)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -36360,7 +36642,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 59 */
|
||||
/* 62 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -36402,7 +36684,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 60 */
|
||||
/* 63 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -36445,15 +36727,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 61 */
|
||||
/* 64 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(62)
|
||||
var __vue_script__ = __webpack_require__(65)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(63)
|
||||
var __vue_template__ = __webpack_require__(66)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -36492,7 +36774,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 62 */
|
||||
/* 65 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -36522,7 +36804,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 63 */
|
||||
/* 66 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -36568,15 +36850,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 64 */
|
||||
/* 67 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(65)
|
||||
var __vue_script__ = __webpack_require__(68)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(66)
|
||||
var __vue_template__ = __webpack_require__(69)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -36615,7 +36897,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 65 */
|
||||
/* 68 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -36737,7 +37019,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 66 */
|
||||
/* 69 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -36926,15 +37208,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 67 */
|
||||
/* 70 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(68)
|
||||
var __vue_script__ = __webpack_require__(71)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(69)
|
||||
var __vue_template__ = __webpack_require__(72)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -36973,7 +37255,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 68 */
|
||||
/* 71 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -37078,7 +37360,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 69 */
|
||||
/* 72 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -37195,15 +37477,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 70 */
|
||||
/* 73 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(71)
|
||||
var __vue_script__ = __webpack_require__(74)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(72)
|
||||
var __vue_template__ = __webpack_require__(75)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -37242,7 +37524,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 71 */
|
||||
/* 74 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -37307,7 +37589,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 72 */
|
||||
/* 75 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -37337,15 +37619,15 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 73 */
|
||||
/* 76 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(74)
|
||||
var __vue_script__ = __webpack_require__(77)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(75)
|
||||
var __vue_template__ = __webpack_require__(78)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
|
|
@ -37384,7 +37666,7 @@ module.exports = Component.exports
|
|||
|
||||
|
||||
/***/ }),
|
||||
/* 74 */
|
||||
/* 77 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -37425,7 +37707,7 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
});
|
||||
|
||||
/***/ }),
|
||||
/* 75 */
|
||||
/* 78 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
|
|
@ -37452,300 +37734,16 @@ if (false) {
|
|||
}
|
||||
|
||||
/***/ }),
|
||||
/* 76 */
|
||||
/* 79 */
|
||||
/***/ (function(module, exports) {
|
||||
|
||||
// removed by extract-text-webpack-plugin
|
||||
|
||||
/***/ }),
|
||||
/* 77 */
|
||||
/***/ (function(module, exports) {
|
||||
|
||||
// removed by extract-text-webpack-plugin
|
||||
|
||||
/***/ }),
|
||||
/* 78 */,
|
||||
/* 79 */,
|
||||
/* 80 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
/***/ (function(module, exports) {
|
||||
|
||||
var disposed = false
|
||||
var normalizeComponent = __webpack_require__(1)
|
||||
/* script */
|
||||
var __vue_script__ = __webpack_require__(81)
|
||||
/* template */
|
||||
var __vue_template__ = __webpack_require__(82)
|
||||
/* template functional */
|
||||
var __vue_template_functional__ = false
|
||||
/* styles */
|
||||
var __vue_styles__ = null
|
||||
/* scopeId */
|
||||
var __vue_scopeId__ = null
|
||||
/* moduleIdentifier (server only) */
|
||||
var __vue_module_identifier__ = null
|
||||
var Component = normalizeComponent(
|
||||
__vue_script__,
|
||||
__vue_template__,
|
||||
__vue_template_functional__,
|
||||
__vue_styles__,
|
||||
__vue_scopeId__,
|
||||
__vue_module_identifier__
|
||||
)
|
||||
Component.options.__file = "src/Resources/assets/js/UI/components/product-card.vue"
|
||||
|
||||
/* hot reload */
|
||||
if (false) {(function () {
|
||||
var hotAPI = require("vue-hot-reload-api")
|
||||
hotAPI.install(require("vue"), false)
|
||||
if (!hotAPI.compatible) return
|
||||
module.hot.accept()
|
||||
if (!module.hot.data) {
|
||||
hotAPI.createRecord("data-v-3d78742e", Component.options)
|
||||
} else {
|
||||
hotAPI.reload("data-v-3d78742e", Component.options)
|
||||
}
|
||||
module.hot.dispose(function (data) {
|
||||
disposed = true
|
||||
})
|
||||
})()}
|
||||
|
||||
module.exports = Component.exports
|
||||
|
||||
|
||||
/***/ }),
|
||||
/* 81 */
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
|
||||
// compile add to cart html (it contains wishlist component)
|
||||
/* harmony default export */ __webpack_exports__["default"] = ({
|
||||
props: ['list', 'productImg', 'productUrl', 'priceHtml', 'addToCartHtml', 'productName', 'totalReviews', 'avgRating', 'firstReviewText'],
|
||||
|
||||
data: function data() {
|
||||
return {};
|
||||
}
|
||||
});
|
||||
|
||||
/***/ }),
|
||||
/* 82 */
|
||||
/***/ (function(module, exports, __webpack_require__) {
|
||||
|
||||
var render = function() {
|
||||
var _vm = this
|
||||
var _h = _vm.$createElement
|
||||
var _c = _vm._self._c || _h
|
||||
return _vm.list
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "col-12 lg-card-container list-card product-card row" },
|
||||
[
|
||||
_c("div", { staticClass: "product-image" }, [
|
||||
_c(
|
||||
"a",
|
||||
{ attrs: { title: _vm.productName, href: _vm.productUrl } },
|
||||
[_c("img", { attrs: { src: _vm.productImg } })]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", { staticClass: "product-information" }, [
|
||||
_c("div", [
|
||||
_c("div", { staticClass: "product-name" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "unset",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("span", { staticClass: "fs16" }, [
|
||||
_vm._v(_vm._s(_vm.productName))
|
||||
])
|
||||
]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "product-price",
|
||||
domProps: { innerHTML: _vm._s(_vm.priceHtml) }
|
||||
}),
|
||||
_vm._v(" "),
|
||||
_vm.totalReviews && _vm.totalReviews > 0
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "product-rating" },
|
||||
[
|
||||
_c("star-ratings", { attrs: { ratings: _vm.avgRating } }),
|
||||
_vm._v(" "),
|
||||
_c("span", [
|
||||
_vm._v(_vm._s(_vm.totalReviews) + " Ratings")
|
||||
])
|
||||
],
|
||||
1
|
||||
)
|
||||
: _c("div", { staticClass: "product-rating" }, [
|
||||
_c("span", {
|
||||
staticClass: "fs14",
|
||||
domProps: { textContent: _vm._s(_vm.firstReviewText) }
|
||||
})
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "cart-wish-wrap row mt5",
|
||||
domProps: { innerHTML: _vm._s(_vm.addToCartHtml) }
|
||||
})
|
||||
])
|
||||
])
|
||||
]
|
||||
)
|
||||
: _c("div", { staticClass: "card grid-card product-card-new" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "product-image-container",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("img", {
|
||||
staticClass: "card-img-top",
|
||||
attrs: {
|
||||
loading: "lazy",
|
||||
src: _vm.productImg,
|
||||
alt: _vm.productName
|
||||
}
|
||||
})
|
||||
]
|
||||
),
|
||||
_vm._v(" "),
|
||||
_c("div", { staticClass: "card-body" }, [
|
||||
_c("div", { staticClass: "product-name col-12 no-padding" }, [
|
||||
_c(
|
||||
"a",
|
||||
{
|
||||
staticClass: "unset",
|
||||
attrs: { href: _vm.productUrl, title: _vm.productName }
|
||||
},
|
||||
[
|
||||
_c("span", { staticClass: "fs16" }, [
|
||||
_vm._v(_vm._s(_vm.productName))
|
||||
])
|
||||
]
|
||||
)
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "product-price fs16",
|
||||
domProps: { innerHTML: _vm._s(_vm.priceHtml) }
|
||||
}),
|
||||
_vm._v(" "),
|
||||
_vm.totalReviews && _vm.totalReviews > 0
|
||||
? _c(
|
||||
"div",
|
||||
{ staticClass: "product-rating col-12 no-padding" },
|
||||
[
|
||||
_c("star-ratings", { attrs: { ratings: _vm.avgRating } }),
|
||||
_vm._v(" "),
|
||||
_c("span", { staticClass: "align-top" }, [
|
||||
_vm._v(_vm._s(_vm.totalReviews) + " Ratings")
|
||||
])
|
||||
],
|
||||
1
|
||||
)
|
||||
: _c("div", { staticClass: "product-rating col-12 no-padding" }, [
|
||||
_c("span", {
|
||||
staticClass: "fs14",
|
||||
domProps: { textContent: _vm._s(_vm.firstReviewText) }
|
||||
})
|
||||
]),
|
||||
_vm._v(" "),
|
||||
_c("div", {
|
||||
staticClass: "cart-wish-wrap row col-12 no-padding ml0",
|
||||
domProps: { innerHTML: _vm._s(_vm.addToCartHtml) }
|
||||
})
|
||||
])
|
||||
])
|
||||
}
|
||||
var staticRenderFns = []
|
||||
render._withStripped = true
|
||||
module.exports = { render: render, staticRenderFns: staticRenderFns }
|
||||
if (false) {
|
||||
module.hot.accept()
|
||||
if (module.hot.data) {
|
||||
require("vue-hot-reload-api") .rerender("data-v-3d78742e", module.exports)
|
||||
}
|
||||
}
|
||||
// removed by extract-text-webpack-plugin
|
||||
|
||||
/***/ })
|
||||
/******/ ]);
|
||||
|
|
@ -5,7 +5,7 @@ namespace Webkul\Velocity\Http\Controllers\Shop;
|
|||
use Webkul\Velocity\Helpers\Helper;
|
||||
use Webkul\Velocity\Http\Shop\Controllers;
|
||||
use Webkul\Product\Repositories\SearchRepository;
|
||||
use Webkul\Product\Repositories\ProductRepository;
|
||||
use Webkul\Velocity\Repositories\Product\ProductRepository;
|
||||
|
||||
/**
|
||||
* Search controller
|
||||
|
|
@ -60,7 +60,7 @@ use Webkul\Product\Repositories\ProductRepository;
|
|||
*/
|
||||
public function search()
|
||||
{
|
||||
$results = $this->searchRepository->search(request()->all());
|
||||
$results = $this->productRepository->searchProductsFromCategory(request()->all());
|
||||
|
||||
return view($this->_config['view'])->with('results', $results ? $results : null);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,7 @@
|
|||
<?php
|
||||
|
||||
Route::group(['middleware' => ['web']], function () {
|
||||
Route::group(['middleware' => ['theme']], function () {
|
||||
Route::namespace('Webkul\Velocity\Http\Controllers\Shop')->group(function () {
|
||||
// Content Pages Route
|
||||
Route::get('/product-details/{slug}', 'ShopController@fetchProductDetails')->name('velocity.shop.product');
|
||||
});
|
||||
|
||||
Route::get('/search', 'ShopController@search')->defaults('_config', [
|
||||
'view' => 'velocity::search.search'
|
||||
])->name('shop.search.index');
|
||||
});
|
||||
Route::group(['middleware' => ['web', 'locale', 'theme', 'currency']], function () {
|
||||
Route::get('/search', 'Webkul\Velocity\Http\Controllers\Shop\ShopController@search')->defaults('_config', [
|
||||
'view' => 'shop::search.search'
|
||||
])->name('velocity.search.index');
|
||||
});
|
||||
|
|
@ -67,4 +67,42 @@ class ProductRepository extends Repository
|
|||
return $results;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Search Product by Attribute
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
public function searchProductsFromCategory($params)
|
||||
{
|
||||
$term = $params['term'];
|
||||
$categoryId = $params['category'];
|
||||
|
||||
$results = app(ProductFlatRepository::class)->scopeQuery(function($query) use($term, $categoryId) {
|
||||
$channel = request()->get('channel') ?: (core()->getCurrentChannelCode() ?: core()->getDefaultChannelCode());
|
||||
|
||||
$locale = request()->get('locale') ?: app()->getLocale();
|
||||
|
||||
$query = $query->distinct()
|
||||
->addSelect('product_flat.*')
|
||||
->where('product_flat.status', 1)
|
||||
->where('product_flat.visible_individually', 1)
|
||||
->where('product_flat.channel', $channel)
|
||||
->where('product_flat.locale', $locale)
|
||||
->whereNotNull('product_flat.url_key')
|
||||
->where('product_flat.name', 'like', '%' . urldecode($term) . '%')
|
||||
->orderBy('product_id', 'desc');
|
||||
|
||||
if ($categoryId && $categoryId !== "") {
|
||||
$query = $query
|
||||
->leftJoin('products', 'product_flat.product_id', '=', 'products.id')
|
||||
->leftJoin('product_categories', 'products.id', '=', 'product_categories.product_id')
|
||||
->where('product_categories.category_id', $categoryId);
|
||||
}
|
||||
|
||||
return $query;
|
||||
})->paginate(16);
|
||||
|
||||
return $results;
|
||||
}
|
||||
}
|
||||
|
|
@ -1895,8 +1895,8 @@
|
|||
|
||||
.full-content-wrapper {
|
||||
> .container-fluid {
|
||||
margin-bottom: 60px;
|
||||
padding: 0 !important;
|
||||
margin-bottom: 60px !important;
|
||||
|
||||
> .row {
|
||||
padding: 0 15px !important;
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@
|
|||
method="GET"
|
||||
role="search"
|
||||
id="search-form"
|
||||
action="{{ route('shop.search.index') }}">
|
||||
action="{{ route('velocity.search.index') }}">
|
||||
|
||||
<div
|
||||
class="btn-toolbar full-width"
|
||||
|
|
@ -654,7 +654,7 @@
|
|||
});
|
||||
|
||||
this.searchedQuery = updatedSearchedCollection;
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
Vue.component('content-header', {
|
||||
|
|
|
|||
|
|
@ -10,12 +10,49 @@
|
|||
@endphp
|
||||
|
||||
@if ($products->count())
|
||||
<category-products></category-products>
|
||||
<div class="container-fluid remove-padding-margin">
|
||||
<card-list-header
|
||||
view-all="{{ route('shop.productOrCategory.index', $categoryDetails->slug) }}"
|
||||
heading="{{ $categoryDetails->name }}">
|
||||
</card-list-header>
|
||||
|
||||
<div class="carousel-products vc-full-screen">
|
||||
<carousel-component
|
||||
slides-per-page="6"
|
||||
navigation-enabled="hide"
|
||||
pagination-enabled="hide"
|
||||
:slides-count="{{ sizeof($products) }}"
|
||||
id="{{ $categoryDetails->name }}-carousel">
|
||||
|
||||
@foreach ($products as $index => $product)
|
||||
<slide slot="slide-{{ $index }}">
|
||||
@include ('shop::products.list.card', ['product' => $product])
|
||||
</slide>
|
||||
@endforeach
|
||||
</carousel-component>
|
||||
</div>
|
||||
|
||||
<div class="carousel-products vc-small-screen">
|
||||
<carousel-component
|
||||
slides-per-page="2"
|
||||
navigation-enabled="hide"
|
||||
pagination-enabled="hide"
|
||||
:slides-count="{{ sizeof($products) }}"
|
||||
id="{{ $categoryDetails->name }}-carousel">
|
||||
|
||||
@foreach ($products as $index => $product)
|
||||
<slide slot="slide-{{ $index }}">
|
||||
@include ('shop::products.list.card', ['product' => $product])
|
||||
</slide>
|
||||
@endforeach
|
||||
</carousel-component>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
|
||||
@push('scripts')
|
||||
<script type="text/x-template" id="category-products-template">
|
||||
{{-- <script type="text/x-template" id="category-products-template">
|
||||
<div class="container-fluid remove-padding-margin">
|
||||
<card-list-header
|
||||
view-all="{{ route('shop.productOrCategory.index', $categoryDetails->slug) }}"
|
||||
|
|
@ -58,9 +95,11 @@
|
|||
|
||||
<script type="text/javascript">
|
||||
(() => {
|
||||
debugger
|
||||
"{{ $categoryDetails->name }}"
|
||||
Vue.component('category-products', {
|
||||
template: '#category-products-template',
|
||||
})
|
||||
})()
|
||||
</script>
|
||||
</script> --}}
|
||||
@endpush
|
||||
|
|
@ -88,7 +88,7 @@
|
|||
{{-- <span class="pull-right link-color" @click="toggleLayeredNavigation">Done</span> --}}
|
||||
</div>
|
||||
|
||||
@include ('shop::products.list.layered-navigation')
|
||||
{{-- @include ('shop::products.list.layered-navigation') --}}
|
||||
</div>
|
||||
|
||||
<div class="col-4" @click="toggleLayeredNavigation({event: $event, actionType: 'open'})">
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
@section('content-wrapper')
|
||||
<div class="container">
|
||||
<section class="search-container cart-details row">
|
||||
<section class="search-container row">
|
||||
@if ($results && $results->count())
|
||||
<div class="filters-container col-12">
|
||||
@include ('shop::products.list.toolbar')
|
||||
|
|
@ -20,7 +20,7 @@
|
|||
@else
|
||||
@if ($results->isEmpty())
|
||||
<h1 class="fw6 col-12">{{ __('shop::app.products.whoops') }}</h1>
|
||||
<span>{{ __('shop::app.search.no-results') }}</span>
|
||||
<span class="col-12">{{ __('shop::app.search.no-results') }}</span>
|
||||
@else
|
||||
@if ($results->total() == 1)
|
||||
<h2 class="fw6 col-12 mb20">
|
||||
|
|
|
|||
Loading…
Reference in New Issue