Merge pull request #5714 from devansh-webkul/unkown-message
Video Upload Fixed #5709
This commit is contained in:
commit
fd3639135c
|
|
@ -73,10 +73,10 @@ class ProductForm extends FormRequest
|
|||
$this->rules = array_merge($product->getTypeInstance()->getTypeValidationRules(), [
|
||||
'sku' => ['required', 'unique:products,sku,' . $this->id, new Slug],
|
||||
'url_key' => ['required', new ProductCategoryUniqueSlug('product_flat', $this->id)],
|
||||
'images.*' => 'nullable|mimes:bmp,jpeg,jpg,png,webp',
|
||||
'videos.*' => "nullable|mimes:mov,mp4|max:$maxVideoFileSize",
|
||||
'special_price_from' => 'nullable|date',
|
||||
'special_price_to' => 'nullable|date|after_or_equal:special_price_from',
|
||||
'images.*' => ['nullable', 'mimes:bmp,jpeg,jpg,png,webp'],
|
||||
'videos.*' => ['nullable', 'mimetypes:application/octet-stream,video/mp4,video/webm,video/quicktime', 'max:' . $maxVideoFileSize],
|
||||
'special_price_from' => ['nullable', 'date'],
|
||||
'special_price_to' => ['nullable', 'date', 'after_or_equal:special_price_from'],
|
||||
'special_price' => ['nullable', new Decimal, 'lt:price'],
|
||||
]);
|
||||
|
||||
|
|
@ -110,7 +110,7 @@ class ProductForm extends FormRequest
|
|||
$column = ProductAttributeValue::$attributeTypeFields[$attribute->type];
|
||||
|
||||
if (! $this->productAttributeValueRepository->isValueUnique($this->id, $attribute->id, $column, request($attribute->code))) {
|
||||
$fail('The :attribute has already been taken.');
|
||||
$fail(__('admin::app.response.already-taken', ['name' => ':attribute']));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -129,7 +129,19 @@ class ProductForm extends FormRequest
|
|||
public function messages()
|
||||
{
|
||||
return [
|
||||
'variants.*.sku.unique' => 'The sku has already been taken.',
|
||||
'variants.*.sku.unique' => __('admin::app.response.already-taken', ['name' => ':attribute']),
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Attributes.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function attributes()
|
||||
{
|
||||
return [
|
||||
'variants.*.sku' => 'sku',
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,37 +1,32 @@
|
|||
@inject ('wishListHelper', 'Webkul\Customer\Helpers\Wishlist')
|
||||
|
||||
<?php
|
||||
@php
|
||||
$images = productimage()->getGalleryImages($product);
|
||||
|
||||
$videos = productvideo()->getVideos($product);
|
||||
|
||||
$images = array_merge($images, $videos);
|
||||
?>
|
||||
|
||||
@endphp
|
||||
|
||||
{!! view_render_event('bagisto.shop.products.view.gallery.before', ['product' => $product]) !!}
|
||||
|
||||
<div class="product-image-group">
|
||||
|
||||
<div class="cp-spinner cp-round" id="loader">
|
||||
</div>
|
||||
<div class="cp-spinner cp-round" id="loader"></div>
|
||||
|
||||
<product-gallery></product-gallery>
|
||||
|
||||
@include ('shop::products.view.product-add')
|
||||
|
||||
</div>
|
||||
|
||||
{!! view_render_event('bagisto.shop.products.view.gallery.after', ['product' => $product]) !!}
|
||||
|
||||
@push('scripts')
|
||||
|
||||
<script type="text/x-template" id="product-gallery-template">
|
||||
<div>
|
||||
|
||||
<ul class="thumb-list">
|
||||
<li class="gallery-control top" @click="moveThumbs('top')" v-if="(thumbs.length > 4) && this.is_move.up">
|
||||
<span class="overlay"></span>
|
||||
|
||||
<i class="icon arrow-up-white-icon"></i>
|
||||
</li>
|
||||
|
||||
|
|
@ -46,14 +41,16 @@
|
|||
|
||||
<li class="gallery-control bottom" @click="moveThumbs('bottom')" v-if="(thumbs.length > 4) && this.is_move.down">
|
||||
<span class="overlay"></span>
|
||||
|
||||
<i class="icon arrow-down-white-icon"></i>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<div class="product-hero-image" id="product-hero-image">
|
||||
<video :key="currentVideoUrl" v-if="currentType == 'video'" width="100%" height="100%" controls>
|
||||
<video :key="currentVideoUrl" v-if="currentType == 'video'" width="100%" height="420" controls>
|
||||
<source :src="currentVideoUrl" :data-image="currentOriginalImageUrl" type="video/mp4">
|
||||
{{ __('admin::app.catalog.products.not-support-video') }}
|
||||
|
||||
{{ __('admin::app.catalog.products.not-support-video') }}
|
||||
</video>
|
||||
|
||||
<img v-else :src="currentLargeImageUrl" id="pro-img" :data-image="currentOriginalImageUrl" alt=""/>
|
||||
|
|
@ -80,7 +77,6 @@
|
|||
@endif
|
||||
@endauth
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</script>
|
||||
|
||||
|
|
@ -119,16 +115,16 @@
|
|||
|
||||
watch: {
|
||||
'images': function(newVal, oldVal) {
|
||||
this.changeImage(this.images[0])
|
||||
this.changeImage(this.images[0]);
|
||||
|
||||
this.prepareThumbs()
|
||||
this.prepareThumbs();
|
||||
}
|
||||
},
|
||||
|
||||
created: function() {
|
||||
this.changeImage(this.images[0])
|
||||
this.changeImage(this.images[0]);
|
||||
|
||||
this.prepareThumbs()
|
||||
this.prepareThumbs();
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
|
@ -196,7 +192,6 @@
|
|||
},
|
||||
}
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
<script>
|
||||
|
|
@ -206,7 +201,6 @@
|
|||
}
|
||||
|
||||
@if (auth()->guard('customer')->user())
|
||||
|
||||
let wishlist = "{{ $wishListHelper->getWishlistProduct($product) ? 'true' : 'false' }}";
|
||||
|
||||
$(document).mousemove(function(event) {
|
||||
|
|
@ -226,9 +220,7 @@
|
|||
$(".zoomWindow").removeClass("zoom-image-direction");
|
||||
}
|
||||
});
|
||||
|
||||
@endif
|
||||
})
|
||||
});
|
||||
</script>
|
||||
|
||||
@endpush
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1 +1 @@
|
|||
(()=>{"use strict";var e,r,t,o={},n={};function i(e){var r=n[e];if(void 0!==r)return r.exports;var t=n[e]={id:e,exports:{}};return o[e].call(t.exports,t,t.exports,i),t.exports}i.m=o,e=[],i.O=(r,t,o,n)=>{if(!t){var f=1/0;for(c=0;c<e.length;c++){for(var[t,o,n]=e[c],l=!0,u=0;u<t.length;u++)(!1&n||f>=n)&&Object.keys(i.O).every((e=>i.O[e](t[u])))?t.splice(u--,1):(l=!1,n<f&&(f=n));if(l){e.splice(c--,1);var a=o();void 0!==a&&(r=a)}}return r}n=n||0;for(var c=e.length;c>0&&e[c-1][2]>n;c--)e[c]=e[c-1];e[c]=[t,o,n]},i.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return i.d(r,{a:r}),r},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,o){if(1&o&&(e=this(e)),8&o)return e;if("object"==typeof e&&e){if(4&o&&e.__esModule)return e;if(16&o&&"function"==typeof e.then)return e}var n=Object.create(null);i.r(n);var f={};r=r||[null,t({}),t([]),t(t)];for(var l=2&o&&e;"object"==typeof l&&!~r.indexOf(l);l=t(l))Object.getOwnPropertyNames(l).forEach((r=>f[r]=()=>e[r]));return f.default=()=>e,i.d(n,f),n},i.d=(e,r)=>{for(var t in r)i.o(r,t)&&!i.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},i.e=()=>Promise.resolve(),i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{var e={929:0,166:0,362:0};i.O.j=r=>0===e[r];var r=(r,t)=>{var o,n,[f,l,u]=t,a=0;if(f.some((r=>0!==e[r]))){for(o in l)i.o(l,o)&&(i.m[o]=l[o]);if(u)var c=u(i)}for(r&&r(t);a<f.length;a++)n=f[a],i.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return i.O(c)},t=self.webpackChunk=self.webpackChunk||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})()})();
|
||||
(()=>{"use strict";var e,r,t,o,n={},i={};function a(e){var r=i[e];if(void 0!==r)return r.exports;var t=i[e]={id:e,exports:{}};return n[e].call(t.exports,t,t.exports,a),t.exports}a.m=n,e=[],a.O=(r,t,o,n)=>{if(!t){var i=1/0;for(f=0;f<e.length;f++){for(var[t,o,n]=e[f],l=!0,u=0;u<t.length;u++)(!1&n||i>=n)&&Object.keys(a.O).every((e=>a.O[e](t[u])))?t.splice(u--,1):(l=!1,n<i&&(i=n));if(l){e.splice(f--,1);var s=o();void 0!==s&&(r=s)}}return r}n=n||0;for(var f=e.length;f>0&&e[f-1][2]>n;f--)e[f]=e[f-1];e[f]=[t,o,n]},a.n=e=>{var r=e&&e.__esModule?()=>e.default:()=>e;return a.d(r,{a:r}),r},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,a.t=function(e,o){if(1&o&&(e=this(e)),8&o)return e;if("object"==typeof e&&e){if(4&o&&e.__esModule)return e;if(16&o&&"function"==typeof e.then)return e}var n=Object.create(null);a.r(n);var i={};r=r||[null,t({}),t([]),t(t)];for(var l=2&o&&e;"object"==typeof l&&!~r.indexOf(l);l=t(l))Object.getOwnPropertyNames(l).forEach((r=>i[r]=()=>e[r]));return i.default=()=>e,a.d(n,i),n},a.d=(e,r)=>{for(var t in r)a.o(r,t)&&!a.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:r[t]})},a.f={},a.e=e=>Promise.all(Object.keys(a.f).reduce(((r,t)=>(a.f[t](e,r),r)),[])),a.u=e=>"js/components.js",a.miniCssF=e=>({166:"css/velocity",362:"css/velocity-admin"}[e]+".css"),a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),a.o=(e,r)=>Object.prototype.hasOwnProperty.call(e,r),o={},a.l=(e,r,t,n)=>{if(o[e])o[e].push(r);else{var i,l;if(void 0!==t)for(var u=document.getElementsByTagName("script"),s=0;s<u.length;s++){var f=u[s];if(f.getAttribute("src")==e){i=f;break}}i||(l=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,a.nc&&i.setAttribute("nonce",a.nc),i.src=e),o[e]=[r];var c=(r,t)=>{i.onerror=i.onload=null,clearTimeout(d);var n=o[e];if(delete o[e],i.parentNode&&i.parentNode.removeChild(i),n&&n.forEach((e=>e(t))),r)return r(t)},d=setTimeout(c.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=c.bind(null,i.onerror),i.onload=c.bind(null,i.onload),l&&document.head.appendChild(i)}},a.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.p="/",(()=>{var e={929:0,166:0,362:0};a.f.j=(r,t)=>{var o=a.o(e,r)?e[r]:void 0;if(0!==o)if(o)t.push(o[2]);else if(/^(166|362|929)$/.test(r))e[r]=0;else{var n=new Promise(((t,n)=>o=e[r]=[t,n]));t.push(o[2]=n);var i=a.p+a.u(r),l=new Error;a.l(i,(t=>{if(a.o(e,r)&&(0!==(o=e[r])&&(e[r]=void 0),o)){var n=t&&("load"===t.type?"missing":t.type),i=t&&t.target&&t.target.src;l.message="Loading chunk "+r+" failed.\n("+n+": "+i+")",l.name="ChunkLoadError",l.type=n,l.request=i,o[1](l)}}),"chunk-"+r,r)}},a.O.j=r=>0===e[r];var r=(r,t)=>{var o,n,[i,l,u]=t,s=0;if(i.some((r=>0!==e[r]))){for(o in l)a.o(l,o)&&(a.m[o]=l[o]);if(u)var f=u(a)}for(r&&r(t);s<i.length;s++)n=i[s],a.o(e,n)&&e[n]&&e[n][0](),e[i[s]]=0;return a.O(f)},t=self.webpackChunk=self.webpackChunk||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})()})();
|
||||
|
|
@ -1 +1 @@
|
|||
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[847],{4047:(e,t,n)=>{var o=n(538),i=n(9669),a=n.n(i);function c(){return document.querySelector('meta[name="base-url"]').content}function r(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i|/mobi/i.test(navigator.userAgent)}function s(e,t){var n=document.createElement("script");n.setAttribute("src",e),document.body.appendChild(n),n.addEventListener("load",t,!1)}function d(e){return e.replace(/\/$/,"")}o.default.prototype.$http=a(),window.Vue=o.default,window.eventBus=new o.default,window.axios=a(),window.jQuery=window.$=n(9755),window.BootstrapSass=n(3002),window.lazySize=n(7090),window.getBaseUrl=c,window.isMobile=r,window.loadDynamicScript=s,window.showAlert=function(e,t,n){if(e&&""!==n){var o=Math.floor(1e3*Math.random()),i='<div class="alert '.concat(e,' alert-dismissible" id="').concat(o,'">\n <a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>\n <strong>').concat(t?t+"!":""," </strong> ").concat(n,".\n </div>");$("#alert-container").append(i).ready((function(){window.setTimeout((function(){$("#alert-container #".concat(o)).remove()}),5e3)}))}},$((function(){var e=c(),t="themes/velocity/assets/js/velocity.js";r()&&d(e)===d(window.location.href)?document.addEventListener("touchstart",(function n(){var o=this;window.scrollTo(0,0),document.body.style.overflow="hidden",s("".concat(e,"/").concat(t),(function(){window.scrollTo(0,0),document.body.style.overflow="",o.removeEventListener("touchstart",n)}))}),!1):s("".concat(e,"/").concat(t),(function(){}))}))},2892:()=>{},1142:()=>{}},e=>{var t=t=>e(e.s=t);e.O(0,[339,166,362],(()=>(t(4047),t(2892),t(1142))));e.O()}]);
|
||||
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[847],{4047:(e,t,n)=>{var o=n(538),i=n(9669),a=n.n(i);function r(){return document.querySelector('meta[name="base-url"]').content}function c(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i|/mobi/i.test(navigator.userAgent)}function s(e,t){var n=document.createElement("script");n.setAttribute("src",e),document.body.appendChild(n),n.addEventListener("load",t,!1)}function d(e){return e.replace(/\/$/,"")}o.default.prototype.$http=a(),window.Vue=o.default,window.eventBus=new o.default,window.axios=a(),window.jQuery=window.$=n(9755),window.BootstrapSass=n(3002),window.lazySize=n(7090),window.getBaseUrl=r,window.isMobile=c,window.loadDynamicScript=s,window.showAlert=function(e,t,n){if(e&&""!==n){var o=Math.floor(1e3*Math.random()),i='<div class="alert '.concat(e,' alert-dismissible" id="').concat(o,'">\n <a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>\n <strong>').concat(t?t+"!":""," </strong> ").concat(n,".\n </div>");$("#alert-container").append(i).ready((function(){window.setTimeout((function(){$("#alert-container #".concat(o)).remove()}),5e3)}))}},$((function(){var e=r(),t="themes/velocity/assets/js/velocity.js";c()&&d(e)===d(window.location.href)?document.addEventListener("touchstart",(function n(){var o=this;window.scrollTo(0,0),document.body.style.overflow="hidden",s("".concat(e,"/").concat(t),(function(){window.scrollTo(0,0),document.body.style.overflow="",o.removeEventListener("touchstart",n)}))}),!1):s("".concat(e,"/").concat(t),(function(){}))}))}},e=>{e.O(0,[339],(()=>{return t=4047,e(e.s=t);var t}));e.O()}]);
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -1,10 +1,11 @@
|
|||
{
|
||||
"/js/velocity-core.js": "/js/velocity-core.js?id=03a0210d750dd5a7a25a",
|
||||
"/js/velocity.js": "/js/velocity.js?id=6f3038cbf7349644c857",
|
||||
"/js/manifest.js": "/js/manifest.js?id=49cba5d7f2bde965afa8",
|
||||
"/js/components.js": "/js/components.js?id=8f1ecae83b7eb193e1c5",
|
||||
"/css/velocity.css": "/css/velocity.css?id=dd5a8199e031ae58e1ec",
|
||||
"/css/velocity-admin.css": "/css/velocity-admin.css?id=da7de48a51829d6c06dd",
|
||||
"/js/jquery-ez-plus.js": "/js/jquery-ez-plus.js?id=ba3c7cada62de152fd8f",
|
||||
"/js/velocity-core.js": "/js/velocity-core.js?id=8010dfb021a49555afa7",
|
||||
"/js/velocity.js": "/js/velocity.js?id=ac05caeb5e4b0566a4ab",
|
||||
"/js/manifest.js": "/js/manifest.js?id=f801c7b774900481b564",
|
||||
"/js/components.js": "/js/components.js?id=d16d70d3905f32644901",
|
||||
"/css/velocity.css": "/css/velocity.css?id=075770f6dc71cf821f6c",
|
||||
"/css/velocity-admin.css": "/css/velocity-admin.css?id=f492100e7b8496e7b32d",
|
||||
"/images/Camera.svg": "/images/Camera.svg?id=b2fd2f9e17e1ccee96e2",
|
||||
"/images/Icon-Calendar.svg": "/images/Icon-Calendar.svg?id=870d0f733a5837742276",
|
||||
"/images/Icon-Crossed.svg": "/images/Icon-Crossed.svg?id=c72c3c1ef790bd4fd993",
|
||||
|
|
|
|||
|
|
@ -2,85 +2,88 @@
|
|||
<div class="outer-assets-container">
|
||||
<div class="video-container" v-if="currentType == 'video'">
|
||||
<video :key="activeImageVideoURL" width="100%" controls>
|
||||
<source :src="activeImageVideoURL" type="video/mp4">
|
||||
<source :src="activeImageVideoURL" type="video/mp4" />
|
||||
</video>
|
||||
</div>
|
||||
|
||||
<div class="image-container" v-else>
|
||||
<div class="magnifier">
|
||||
<img :src="activeImageVideoURL" :data-zoom-image="activeImageVideoURL"
|
||||
:class="[!isMobile() ? 'main-product-image' : 'vc-small-product-image']">
|
||||
<img
|
||||
:src="activeImageVideoURL"
|
||||
:data-zoom-image="activeImageVideoURL"
|
||||
:class="[
|
||||
! isMobile()
|
||||
? 'main-product-image'
|
||||
: 'vc-small-product-image',
|
||||
]"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
.outer-assets-container {
|
||||
height: 420px;
|
||||
.outer-assets-container {
|
||||
height: 420px;
|
||||
|
||||
.image-container {
|
||||
.magnifier {
|
||||
> img {
|
||||
max-width: 100%;
|
||||
max-height: 420px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 992px) {
|
||||
.image-container {
|
||||
margin: 0 auto;
|
||||
|
||||
.magnifier {
|
||||
> img {
|
||||
width: 100%;
|
||||
max-height: 300px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.video-container {
|
||||
top: 50%;
|
||||
position: relative;
|
||||
min-height: 420px;
|
||||
max-height: 420px;
|
||||
|
||||
video {
|
||||
transform: translateY(-50%);
|
||||
.image-container {
|
||||
.magnifier {
|
||||
> img {
|
||||
max-width: 100%;
|
||||
max-height: 420px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 992px) {
|
||||
.outer-assets-container {
|
||||
height: 300px;
|
||||
.image-container {
|
||||
margin: 0 auto;
|
||||
|
||||
.magnifier {
|
||||
> img {
|
||||
width: 100%;
|
||||
max-height: 300px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.video-container {
|
||||
position: relative;
|
||||
min-height: 420px;
|
||||
max-height: 420px;
|
||||
|
||||
video {
|
||||
max-height: 420px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
export default {
|
||||
props: ['src', 'type'],
|
||||
export default {
|
||||
props: ['src', 'type'],
|
||||
|
||||
data: function () {
|
||||
return {
|
||||
activeImage: null,
|
||||
activeImageVideoURL: this.src,
|
||||
currentType: this.type,
|
||||
}
|
||||
},
|
||||
data: function () {
|
||||
return {
|
||||
activeImage: null,
|
||||
activeImageVideoURL: this.src,
|
||||
currentType: this.type,
|
||||
};
|
||||
},
|
||||
|
||||
mounted: function () {
|
||||
/* binding should be with class as ezplus is having bug of creating multiple containers */
|
||||
this.activeImage = $('.main-product-image');
|
||||
this.activeImage.attr('src', this.activeImageVideoURL);
|
||||
this.activeImage.data('zoom-image', this.activeImageVideoURL);
|
||||
mounted: function () {
|
||||
/* binding should be with class as ezplus is having bug of creating multiple containers */
|
||||
this.activeImage = $('.main-product-image');
|
||||
this.activeImage.attr('src', this.activeImageVideoURL);
|
||||
this.activeImage.data('zoom-image', this.activeImageVideoURL);
|
||||
|
||||
/* initialise zoom */
|
||||
this.elevateZoom();
|
||||
/* initialise zoom */
|
||||
this.elevateZoom();
|
||||
|
||||
this.$root.$on('changeMagnifiedImage', ({smallImageUrl, largeImageUrl, currentType}) => {
|
||||
this.$root.$on(
|
||||
'changeMagnifiedImage',
|
||||
({ smallImageUrl, largeImageUrl, currentType }) => {
|
||||
/* removed old instance */
|
||||
$('.zoomContainer').remove();
|
||||
this.activeImage.removeData('elevateZoom');
|
||||
|
|
@ -101,29 +104,30 @@
|
|||
/* reinitialize zoom */
|
||||
this.elevateZoom();
|
||||
});
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
methods: {
|
||||
elevateZoom: function () {
|
||||
this.activeImage.ezPlus({
|
||||
zoomLevel: 0.5,
|
||||
cursor: 'pointer',
|
||||
scrollZoom: true,
|
||||
zoomWindowWidth: 250,
|
||||
zoomWindowHeight: 250,
|
||||
});
|
||||
},
|
||||
|
||||
methods: {
|
||||
elevateZoom: function () {
|
||||
this.activeImage.ezPlus({
|
||||
zoomLevel: 0.5,
|
||||
cursor: 'pointer',
|
||||
scrollZoom: true,
|
||||
zoomWindowWidth: 250,
|
||||
zoomWindowHeight: 250,
|
||||
});
|
||||
},
|
||||
|
||||
waitForElement: function (selector, callback) {
|
||||
if (jQuery(selector).length) {
|
||||
callback();
|
||||
} else {
|
||||
setTimeout(() => {
|
||||
this.waitForElement(selector, callback);
|
||||
}, 100);
|
||||
}
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
waitForElement: function (selector, callback) {
|
||||
if (jQuery(selector).length) {
|
||||
callback();
|
||||
} else {
|
||||
setTimeout(() => {
|
||||
this.waitForElement(selector, callback);
|
||||
}, 100);
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,67 +1,78 @@
|
|||
const path = require('path');
|
||||
const mix = require('laravel-mix');
|
||||
const path = require('path');
|
||||
const mix = require('laravel-mix');
|
||||
const colors = require('colors');
|
||||
|
||||
require('laravel-mix-merge-manifest');
|
||||
require('laravel-mix-clean');
|
||||
|
||||
const prodPublicPath = path.join('publishable', 'assets');
|
||||
const devPublicPath = path.join('..', '..', '..', 'public', 'themes', 'velocity', 'assets');
|
||||
const publicPath = mix.inProduction() ? prodPublicPath : devPublicPath;
|
||||
const devPublicPath = path.join(
|
||||
'..',
|
||||
'..',
|
||||
'..',
|
||||
'public',
|
||||
'themes',
|
||||
'velocity',
|
||||
'assets'
|
||||
);
|
||||
const publicPath = mix.inProduction() ? prodPublicPath : devPublicPath;
|
||||
|
||||
console.log(colors.bold.blue(`Assets will be published in: ${publicPath}`));
|
||||
|
||||
const assetsPath = path.join(__dirname, 'src', 'Resources', 'assets');
|
||||
const jsPath = path.join(assetsPath, 'js');
|
||||
const jsPath = path.join(assetsPath, 'js');
|
||||
const imagesPath = path.join(assetsPath, 'images');
|
||||
|
||||
mix
|
||||
.setPublicPath(publicPath)
|
||||
mix.setPublicPath(publicPath)
|
||||
|
||||
.js(path.join(jsPath, 'jquery-ez-plus.js'), 'js/jquery-ez-plus.js')
|
||||
.js(path.join(jsPath, 'app-core.js'), 'js/velocity-core.js')
|
||||
.js(path.join(jsPath, 'app.js'), 'js/velocity.js')
|
||||
.vue()
|
||||
|
||||
.alias({
|
||||
'@Components': path.join(jsPath, 'UI', 'components')
|
||||
})
|
||||
'@Components': path.join(jsPath, 'UI', 'components'),
|
||||
})
|
||||
.extract({
|
||||
to: `/js/components.js`,
|
||||
test(mod){ return /(component|style|loader|node)/.test(mod.nameForCondition()) }
|
||||
}
|
||||
)
|
||||
to: `/js/components.js`,
|
||||
test(mod) {
|
||||
return /(component|style|loader|node)/.test(mod.nameForCondition());
|
||||
},
|
||||
})
|
||||
|
||||
.copy(imagesPath, path.join(publicPath, 'images'))
|
||||
|
||||
.sass(
|
||||
path.join(assetsPath, 'sass', 'admin.scss'),
|
||||
path.join(__dirname, publicPath, 'css', 'velocity-admin.css'),
|
||||
path.join(__dirname, publicPath, 'css', 'velocity-admin.css')
|
||||
)
|
||||
.sass(
|
||||
path.join(assetsPath, 'sass', 'app.scss'),
|
||||
path.join(__dirname, publicPath, 'css', 'velocity.css'),
|
||||
{
|
||||
sassOptions : {
|
||||
includePaths: [ 'node_modules/bootstrap-sass/assets/stylesheets/' ]
|
||||
}
|
||||
sassOptions: {
|
||||
includePaths: [
|
||||
'node_modules/bootstrap-sass/assets/stylesheets/',
|
||||
],
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
.clean({
|
||||
// enable `dry` before adding new paths:
|
||||
// dry: true,
|
||||
cleanOnceBeforeBuildPatterns: [
|
||||
'js/**/*',
|
||||
'css/velocity.css',
|
||||
'css/velocity-admin.css',
|
||||
'mix-manifest.json',
|
||||
]
|
||||
})
|
||||
// enable `dry` before adding new paths:
|
||||
// dry: true,
|
||||
cleanOnceBeforeBuildPatterns: [
|
||||
'js/**/*',
|
||||
'css/velocity.css',
|
||||
'css/velocity-admin.css',
|
||||
'mix-manifest.json',
|
||||
],
|
||||
})
|
||||
|
||||
.options({
|
||||
processCssUrls: false,
|
||||
clearConsole : mix.inProduction()
|
||||
})
|
||||
processCssUrls: false,
|
||||
clearConsole: mix.inProduction(),
|
||||
})
|
||||
|
||||
.disableNotifications()
|
||||
.mergeManifest();
|
||||
|
|
|
|||
Loading…
Reference in New Issue