Merge branch 'master' of https://github.com/bagisto/bagisto into sarga-v1

This commit is contained in:
merdan 2022-03-29 17:06:50 +05:00
commit 5de0c82f74
106 changed files with 509 additions and 185 deletions

View File

@ -31,7 +31,8 @@
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/pl.svg" alt="Polish" width="24" height="24">
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/pt.svg" alt="Portuguese" width="24" height="24">
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/tr.svg" alt="Turkish" width="24" height="24">
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/eg.svg" alt="Egyptian" width="24" height="24">
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/eg.svg" alt="Egyptian" width="24" height="24">
<img class="flag-img" src="https://flagicons.lipis.dev/flags/4x3/cn.svg" alt="Chinese" width="24" height="24">
</p>
## Topics

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
{
"/js/admin.js": "/js/admin.js?id=cd52020d82033197d2a5",
"/css/admin.css": "/css/admin.css?id=15d0ab8d01403f912469"
"/js/admin.js": "/js/admin.js?id=68621909141b010f749f",
"/css/admin.css": "/css/admin.css?id=0597ed69210c620608a4"
}

View File

@ -0,0 +1,199 @@
<?php
namespace Webkul\Admin\DataGrids;
use Illuminate\Support\Facades\DB;
use Webkul\Core\Models\Channel;
use Webkul\Core\Models\Locale;
use Webkul\Ui\DataGrid\DataGrid;
class CategoryProductDataGrid extends DataGrid
{
/**
* Default sort order of datagrid.
*
* @var string
*/
protected $sortOrder = 'desc';
/**
* Set index columns, ex: id.
*
* @var string
*/
protected $index = 'product_id';
/**
* If paginated then value of pagination.
*
* @var int
*/
protected $itemsPerPage = 10;
/**
* Locale.
*
* @var string
*/
protected $locale;
/**
* Channel.
*
* @var string
*/
protected $channel;
/**
* Create datagrid instance.
*
* @return void
*/
public function __construct()
{
/* locale */
$this->locale = core()->getRequestedLocaleCode();
/* channel */
$this->channel = core()->getRequestedChannelCode();
/* parent constructor */
parent::__construct();
}
/**
* Prepare query builder.
*
* @return void
*/
public function prepareQueryBuilder()
{
/* query builder */
$queryBuilder = DB::table('product_flat')
->leftJoin('products', 'product_flat.product_id', '=', 'products.id')
->leftJoin('product_categories', 'products.id', '=', 'product_categories.product_id')
->leftJoin('product_inventories', 'product_flat.product_id', '=', 'product_inventories.product_id')
->select(
'product_flat.locale',
'product_flat.channel',
'product_flat.product_id',
'products.sku as product_sku',
'product_flat.product_number',
'product_flat.name as product_name',
'products.type as product_type',
'product_flat.status',
'product_flat.price',
);
$queryBuilder->groupBy('product_flat.product_id', 'product_flat.locale', 'product_flat.channel');
$queryBuilder->where('product_categories.category_id', request('id'));
$queryBuilder->whereIn('product_flat.locale', [$this->locale]);
$queryBuilder->whereIn('product_flat.channel', [$this->channel]);
$this->addFilter('product_id', 'product_flat.product_id');
$this->addFilter('product_name', 'product_flat.name');
$this->addFilter('product_sku', 'products.sku');
$this->addFilter('product_number', 'product_flat.product_number');
$this->addFilter('status', 'product_flat.status');
$this->addFilter('product_type', 'products.type');
$this->setQueryBuilder($queryBuilder);
}
/**
* Add columns.
*
* @return void
*/
public function addColumns()
{
$this->addColumn([
'index' => 'product_id',
'label' => trans('admin::app.datagrid.id'),
'type' => 'number',
'searchable' => false,
'sortable' => true,
'filterable' => true,
]);
$this->addColumn([
'index' => 'product_sku',
'label' => trans('admin::app.datagrid.sku'),
'type' => 'string',
'searchable' => true,
'sortable' => true,
'filterable' => true,
]);
$this->addColumn([
'index' => 'product_number',
'label' => trans('admin::app.datagrid.product-number'),
'type' => 'string',
'searchable' => true,
'sortable' => true,
'filterable' => true,
]);
$this->addColumn([
'index' => 'product_name',
'label' => trans('admin::app.datagrid.name'),
'type' => 'string',
'searchable' => true,
'sortable' => true,
'filterable' => true,
]);
$this->addColumn([
'index' => 'product_type',
'label' => trans('admin::app.datagrid.type'),
'type' => 'string',
'sortable' => true,
'searchable' => true,
'filterable' => true,
]);
$this->addColumn([
'index' => 'status',
'label' => trans('admin::app.datagrid.status'),
'type' => 'boolean',
'sortable' => true,
'searchable' => false,
'filterable' => true,
'closure' => function ($value) {
if ($value->status == 1) {
return trans('admin::app.datagrid.active');
} else {
return trans('admin::app.datagrid.inactive');
}
},
]);
$this->addColumn([
'index' => 'price',
'label' => trans('admin::app.datagrid.price'),
'type' => 'price',
'sortable' => true,
'searchable' => false,
'filterable' => true,
]);
}
/**
* Prepare actions.
*
* @return void
*/
public function prepareActions()
{
$this->addAction([
'title' => trans('admin::app.datagrid.edit'),
'method' => 'GET',
'route' => 'admin.catalog.products.edit',
'icon' => 'icon pencil-lg-icon',
'condition' => function () {
return true;
},
]);
}
}

View File

@ -17,6 +17,8 @@ import fa from 'vee-validate/dist/locale/fa';
import fr from 'vee-validate/dist/locale/fr';
import nl from 'vee-validate/dist/locale/nl';
import tr from 'vee-validate/dist/locale/tr';
import hi_IN from 'vee-validate/dist/locale/hi';
import zh_CN from 'vee-validate/dist/locale/zh_CN';
/**
* Vue plugins.
@ -28,7 +30,9 @@ Vue.use(VeeValidate, {
fa: fa,
fr: fr,
nl: nl,
tr: tr
tr: tr,
hi_IN: hi_IN,
zh_CN: zh_CN
},
events: 'input|change|blur'
});

View File

@ -212,7 +212,7 @@ body {
left: 0;
bottom: 0;
top: 60px;
z-index: 6;
z-index: 1000;
width: 56px;
height: 100vh !important;
position: fixed;
@ -266,6 +266,7 @@ body {
position: absolute;
top: 0;
left: 56px;
z-index: 1000;
background-color: $white;
box-shadow: 2px 1px 3px $submenu-shadow-color;
border: 1px solid $submenu-border-color;

View File

@ -699,6 +699,7 @@ return [
'description' => 'الوصف',
'parent-category' => 'الفئة الأم',
'seo' => 'محرك البحث الأمثل',
'products' => 'المنتجات',
'slug' => 'Slug',
'meta_title' => 'عنوان الفوقية',
'meta_description' => 'ميتا الوصف',

View File

@ -691,6 +691,7 @@ return [
'description' => 'Beschreibung',
'parent-category' => 'Übergeordnete Kategorie',
'seo' => 'Suchmaschinen-Optimierung',
'products' => 'Produkte',
'slug' => 'Slug',
'meta_title' => 'Meta Titel',
'meta_description' => 'Meta-Beschreibung',

View File

@ -709,6 +709,7 @@ return [
'description' => 'Description',
'parent-category' => 'Parent Category',
'seo' => 'Search Engine Optimization',
'products' => 'Products',
'slug' => 'Slug',
'meta_title' => 'Meta Title',
'meta_description' => 'Meta Description',

View File

@ -710,6 +710,7 @@ return [
'description' => 'Descripción',
'parent-category' => 'Categoría padre',
'seo' => 'SEO',
'products' => 'Productos',
'slug' => 'Slug',
'meta_title' => 'Meta Title',
'meta_description' => 'Meta Description',

View File

@ -687,6 +687,7 @@ return [
'description' => 'توضیحات',
'parent-category' => 'دسته بندی پدر',
'seo' => 'بهینه سازی موتور جستجو',
'products' => 'محصولات',
'slug' => 'نامک',
'meta_title' => 'عنوان متا',
'meta_description' => 'توضیحات متا',

View File

@ -711,6 +711,7 @@ return [
'description' => 'La description',
'parent-category' => 'Catégorie Parentale',
'seo' => 'optimisation du moteur de recherche',
'products' => 'Des produits',
'slug' => 'Limace',
'meta_title' => 'Titre du méta',
'meta_description' => 'Meta Description',

View File

@ -709,6 +709,7 @@ return [
'description' => 'विवरण',
'parent-category' => 'अभिभावक श्रेणी',
'seo' => 'खोज इंजिन अनुकूलन',
'products' => 'उत्पाद',
'slug' => 'स्लग',
'meta_title' => 'मेटा शीर्षक',
'meta_description' => 'मेटा विवरण',

View File

@ -690,6 +690,7 @@ return [
'parent-category' => 'Categoria Padre',
'seo' => 'Search Engine Optimization',
'slug' => 'Slug',
'products' => 'Prodotti',
'meta_title' => 'Meta Title',
'meta_description' => 'Meta Description',
'meta_keywords' => 'Meta Keywords',

View File

@ -686,6 +686,7 @@ return [
'description' => 'Beschrijving',
'parent-category' => 'Bovenliggende categorie',
'seo' => 'zoek machine optimalisatie',
'products' => 'Producten',
'slug' => 'Slug',
'meta_title' => 'Metatitel',
'meta_description' => 'Meta omschrijving',

View File

@ -686,6 +686,7 @@ return [
'description' => 'Opis',
'parent-category' => 'Kategoria nadrzędna',
'seo' => 'Optymalizacja SEO strony dla wyszukiwarek',
'products' => 'Produkty',
'slug' => 'Wzór',
'meta_title' => 'Meta tutuł',
'meta_description' => 'Meta opis',

View File

@ -685,6 +685,7 @@ return [
'description' => 'Descrição',
'parent-category' => 'Categoria Pai',
'seo' => 'Search Engine Optimization',
'products' => 'Produtos',
'slug' => 'Slug',
'meta_title' => 'Meta Título',
'meta_description' => 'Meta Descrição',

View File

@ -692,6 +692,7 @@ return [
'description' => 'Açıklama',
'parent-category' => 'Üst Kategori',
'seo' => 'Arama Motoru Optimizasyonu',
'products' => 'Ürünler',
'slug' => 'URL',
'meta_title' => 'Meta Başlığı',
'meta_description' => 'Meta Açıklaması',

View File

@ -694,6 +694,7 @@ return [
'description' => '描述',
'parent-category' => '父分类',
'seo' => '搜索引擎优化',
'products' => '产品列表',
'slug' => 'Slug',
'meta_title' => 'Meta标题',
'meta_description' => 'Meta描述',

View File

@ -28,7 +28,7 @@
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.account.general') }}'" :active="true">
<accordian title="{{ __('admin::app.account.general') }}" :active="true">
<div slot="body">
<upload-profile-image></upload-profile-image>
@ -46,7 +46,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.account.change-password') }}'" :active="true">
<accordian title="{{ __('admin::app.account.change-password') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('password') ? 'has-error' : '']">
<label for="password">{{ __('admin::app.account.password') }}</label>
@ -62,7 +62,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.account.current-password') }}'" :active="true">
<accordian title="{{ __('admin::app.account.current-password') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('current_password') ? 'has-error' : '']">
<label for="current_password" class="required">{{ __('admin::app.account.current-password') }}</label>

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.general.before') !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.general.controls.before') !!}
@ -77,7 +77,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.label.before') !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.label') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.label') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.label.controls.before') !!}
@ -109,7 +109,7 @@
<div class="hide">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.options.before') !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.options') }}'" :active="true" :id="'options'">
<accordian title="{{ __('admin::app.catalog.attributes.options') }}" :active="true" :id="'options'">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.options.controls.before') !!}
@ -127,7 +127,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.validations.before') !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.validations') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.validations') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.options.controls.before') !!}
@ -169,7 +169,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.configuration.before') !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.configuration') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.configuration') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.create_form_accordian.configuration.controls.before') !!}

View File

@ -36,7 +36,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.general.before', ['attribute' => $attribute]) !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.general.controls.before', ['attribute' => $attribute]) !!}
@ -113,7 +113,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.attributes.before', ['attribute' => $attribute]) !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.label') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.label') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.attributes.controls.before', ['attribute' => $attribute]) !!}
@ -139,7 +139,7 @@
<div class="{{ in_array($attribute->type, ['select', 'multiselect', 'checkbox']) ?: 'hide' }}">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.options.before', ['attribute' => $attribute]) !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.options') }}'" :active="true" :id="'options'">
<accordian title="{{ __('admin::app.catalog.attributes.options') }}" :active="true" :id="'options'">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.options.controls.before', ['attribute' => $attribute]) !!}
@ -159,7 +159,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.validations.before', ['attribute' => $attribute]) !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.validations') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.validations') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.validations.controls.before', ['attribute' => $attribute]) !!}
@ -212,7 +212,7 @@
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.configuration.before', ['attribute' => $attribute]) !!}
<accordian :title="'{{ __('admin::app.catalog.attributes.configuration') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.attributes.configuration') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.attribute.edit_form_accordian.configuration.controls.before', ['attribute' => $attribute]) !!}

View File

@ -31,7 +31,7 @@
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.general.before') !!}
<accordian :title="'{{ __('admin::app.catalog.categories.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.general.controls.before') !!}
@ -68,7 +68,7 @@
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.description_images.before') !!}
<accordian :title="'{{ __('admin::app.catalog.categories.description-and-images') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.description-and-images') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.description_images.controls.before') !!}
@ -93,7 +93,7 @@
<div class="control-group {!! $errors->has('image.*') ? 'has-error' : '' !!}">
<label>{{ __('admin::app.catalog.categories.image') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="image" :multiple="false"></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="image" :multiple="false"></image-wrapper>
<span class="control-error" v-if="{!! $errors->has('image.*') !!}">
@foreach ($errors->get('image.*') as $key => $message)
@ -113,7 +113,7 @@
@if ($categories->count())
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.parent_category.before') !!}
<accordian :title="'{{ __('admin::app.catalog.categories.parent-category') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.parent-category') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.parent_category.controls.before') !!}
@ -128,7 +128,7 @@
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.parent_category.after') !!}
@endif
<accordian :title="'{{ __('admin::app.catalog.categories.filterable-attributes') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.filterable-attributes') }}" :active="true">
<div slot="body">
<?php $selectedaAtributes = old('attributes') ? old('attributes') : ['11'] ?>
@ -152,7 +152,7 @@
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.seo.before') !!}
<accordian :title="'{{ __('admin::app.catalog.categories.seo') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.seo') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.create_form_accordian.seo.controls.before') !!}

View File

@ -58,7 +58,7 @@
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.general.before', ['category' => $category]) !!}
<accordian :title="'{{ __('admin::app.catalog.categories.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.general.controls.before', ['category' => $category]) !!}
@ -97,7 +97,7 @@
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.description_images.before', ['category' => $category]) !!}
<accordian :title="'{{ __('admin::app.catalog.categories.description-and-images') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.description-and-images') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.description_images.controls.before', ['category' => $category]) !!}
@ -122,7 +122,7 @@
<div class="control-group {!! $errors->has('image.*') ? 'has-error' : '' !!}">
<label>{{ __('admin::app.catalog.categories.image') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="image" :multiple="false" :images='"{{ $category->image_url }}"'></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="image" :multiple="false" :images='"{{ $category->image_url }}"'></image-wrapper>
<span class="control-error" v-if="{!! $errors->has('image.*') !!}">
@foreach ($errors->get('image.*') as $key => $message)
@ -140,7 +140,7 @@
@if ($categories->count())
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.parent_category.before', ['category' => $category]) !!}
<accordian :title="'{{ __('admin::app.catalog.categories.parent-category') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.parent-category') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.parent_category.controls.before', ['category' => $category]) !!}
@ -155,7 +155,7 @@
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.parent_category.after', ['category' => $category]) !!}
@endif
<accordian :title="'{{ __('admin::app.catalog.categories.filterable-attributes') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.filterable-attributes') }}" :active="true">
<div slot="body">
<?php $selectedaAtributes = old('attributes') ?? $category->filterableAttributes->pluck('id')->toArray() ?>
@ -179,7 +179,7 @@
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.seo.before', ['category' => $category]) !!}
<accordian :title="'{{ __('admin::app.catalog.categories.seo') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.categories.seo') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.seo.controls.before', ['category' => $category]) !!}
@ -216,6 +216,16 @@
</div>
</accordian>
<accordian title="{{ __('admin::app.catalog.categories.products') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.products.controls.before', ['category' => $category]) !!}
<datagrid-plus src="{{ route('admin.catalog.categories.products', $category->id) }}"></datagrid-plus>
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.products.controls.before', ['category' => $category]) !!}
</div>
</accordian>
{!! view_render_event('bagisto.admin.catalog.category.edit_form_accordian.seo.after', ['category' => $category]) !!}
</div>
</div>

View File

@ -31,7 +31,7 @@
{!! view_render_event('bagisto.admin.catalog.family.create_form_accordian.general.before') !!}
<accordian :title="'{{ __('admin::app.catalog.families.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.families.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.family.create_form_accordian.general.controls.before') !!}
@ -58,7 +58,7 @@
{!! view_render_event('bagisto.admin.catalog.family.create_form_accordian.groups.before') !!}
<accordian :title="'{{ __('admin::app.catalog.families.groups') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.families.groups') }}" :active="true">
<div slot="body">
<button type="button" style="margin-bottom : 20px" class="btn btn-md btn-primary" @click="showModal('addGroup')">

View File

@ -32,7 +32,7 @@
{!! view_render_event('bagisto.admin.catalog.family.edit_form_accordian.general.before', ['attributeFamily' => $attributeFamily]) !!}
<accordian :title="'{{ __('admin::app.catalog.families.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.families.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.family.edit_form_accordian.general.controls.before', ['attributeFamily' => $attributeFamily]) !!}
@ -59,7 +59,7 @@
{!! view_render_event('bagisto.admin.catalog.family.edit_form_accordian.groups.before', ['attributeFamily' => $attributeFamily]) !!}
<accordian :title="'{{ __('admin::app.catalog.families.groups') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.families.groups') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.family.edit_form_accordian.groups.controls.before', ['attributeFamily' => $attributeFamily]) !!}

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.bundle.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.bundle-items') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.bundle-items') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.bundle.controls.before', ['product' => $product]) !!}

View File

@ -2,7 +2,7 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.categories.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.categories') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.categories') }}" :active="false">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.categories.controls.before', ['product' => $product]) !!}

View File

@ -6,7 +6,7 @@
])->pluck('channel')->unique()->toArray();
?>
<accordian :title="'{{ __('admin::app.catalog.products.channel') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.channel') }}" :active="false">
<div slot="body">
<div class="control-group multi-select" :class="[errors.has('channels[]') ? 'has-error' : '']">
<label for="channels" class="required">{{ __('admin::app.catalog.products.channel') }}</label>

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.downloadable.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.downloadable') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.downloadable') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.downloadable.links.controls.before', ['product' => $product]) !!}

View File

@ -17,7 +17,7 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.grouped_products.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.grouped-products') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.grouped-products') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.grouped_products.controls.before', ['product' => $product]) !!}

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.images.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.images') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.images') }}" :active="false">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.images.controls.before', ['product' => $product]) !!}

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.inventories.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.inventories') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.inventories') }}" :active="false">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.inventories.controls.before', ['product' => $product]) !!}

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.product_links.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.product-link') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.product-link') }}" :active="false">
<div slot="body">
<linked-products></linked-products>

View File

@ -26,7 +26,7 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.variations.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.variations') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.variations') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.variations.controls.before', ['product' => $product]) !!}

View File

@ -1,6 +1,6 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.videos.before', ['product' => $product]) !!}
<accordian :title="'{{ __('admin::app.catalog.products.videos') }}'" :active="false">
<accordian title="{{ __('admin::app.catalog.products.videos') }}" :active="false">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.videos.controls.before', ['product' => $product]) !!}

View File

@ -47,7 +47,7 @@
{!! view_render_event('bagisto.admin.catalog.product.create_form_accordian.general.before') !!}
<accordian :title="'{{ __('admin::app.catalog.products.general') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.general') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.create_form_accordian.general.controls.before') !!}
@ -103,7 +103,7 @@
@if ($familyId)
{!! view_render_event('bagisto.admin.catalog.product.create_form_accordian.configurable_attributes.before') !!}
<accordian :title="'{{ __('admin::app.catalog.products.configurable-attributes') }}'" :active="true">
<accordian title="{{ __('admin::app.catalog.products.configurable-attributes') }}" :active="true">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.create_form_accordian.configurable_attributes.controls.before') !!}

View File

@ -93,7 +93,7 @@
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.' . $attributeGroup->name . '.before', ['product' => $product]) !!}
<accordian :title="'{{ __($attributeGroup->name) }}'"
<accordian title="{{ __($attributeGroup->name) }}"
:active="{{$index == 0 ? 'true' : 'false'}}">
<div slot="body">
{!! view_render_event('bagisto.admin.catalog.product.edit_form_accordian.' . $attributeGroup->name . '.controls.before', ['product' => $product]) !!}

View File

@ -31,7 +31,7 @@
{!! view_render_event('bagisto.admin.cms.pages.create_form_accordian.general.before') !!}
<accordian :title="'{{ __('admin::app.cms.pages.general') }}'" :active="true">
<accordian title="{{ __('admin::app.cms.pages.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('page_title') ? 'has-error' : '']">
<label for="page_title" class="required">{{ __('admin::app.cms.pages.page-title') }}</label>
@ -70,7 +70,7 @@
{!! view_render_event('bagisto.admin.cms.pages.create_form_accordian.seo.before') !!}
<accordian :title="'{{ __('admin::app.cms.pages.seo') }}'" :active="true">
<accordian title="{{ __('admin::app.cms.pages.seo') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="meta_title">{{ __('admin::app.cms.pages.meta_title') }}</label>

View File

@ -68,7 +68,7 @@
<div class="form-container">
@csrf()
<accordian :title="'{{ __('admin::app.cms.pages.general') }}'" :active="true">
<accordian :title="{{ __('admin::app.cms.pages.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('{{$locale}}[page_title]') ? 'has-error' : '']">
<label for="page_title" class="required">{{ __('admin::app.cms.pages.page-title') }}</label>
@ -104,7 +104,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.cms.pages.seo') }}'" :active="true">
<accordian title="{{ __('admin::app.cms.pages.seo') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="meta_title">{{ __('admin::app.cms.pages.meta_title') }}</label>

View File

@ -13,8 +13,8 @@
@if (strpos($field['validation'], 'required_if') !== false)
<required-if
:name = "'{{ $name }}'"
:label = "'{{ trans($field['title']) }}'"
name = "{{ $name }}"
label = "{{ trans($field['title']) }}"
:info = "'{{ trans(isset($field['info']) ? $field['info'] : '') }}'"
:options = '@json($field['options'])'
:result = "'{{ $selectedOption }}'"
@ -26,7 +26,7 @@
@else
<depends
:options = '@json($field['options'])'
:name = "'{{ $name }}'"
name = "{{ $name }}"
:validations = "'{{ $validations }}'"
:depend = "'{{ $dependName }}'"
:value = "'{{ $dependValue }}'"

View File

@ -33,7 +33,7 @@
<input type="hidden" name="customer_id" value="{{ $customer->id }}">
<accordian :title="'{{ __('admin::app.customers.addresses.general') }}'" :active="true">
<accordian title="{{ __('admin::app.customers.addresses.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('company_name') ? 'has-error' : '']">

View File

@ -34,7 +34,7 @@
<input type="hidden" name="customer_id" value="{{ $address->customer_id }}">
<accordian :title="'{{ __('admin::app.customers.addresses.general') }}'" :active="true">
<accordian title="{{ __('admin::app.customers.addresses.general') }}" :active="true">
<div slot="body">
<?php $addresses = explode(PHP_EOL, $address->address1); ?>

View File

@ -31,7 +31,7 @@
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.account.general') }}'" :active="true">
<accordian title="{{ __('admin::app.account.general') }}" :active="true">
<div slot="body">
<div class="control-group">

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.templates.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.campaigns.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.campaigns.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
@ -85,7 +85,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.marketing.campaigns.audience') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.campaigns.audience') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('channel_id') ? 'has-error' : '']">

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.templates.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.campaigns.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.campaigns.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
@ -88,7 +88,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.marketing.campaigns.audience') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.campaigns.audience') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('channel_id') ? 'has-error' : '']">

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.events.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.events.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.events.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.marketing.events.name') }}</label>

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.events.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.events.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.events.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.templates.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.templates.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.templates.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.marketing.templates.name') }}</label>

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.marketing.templates.create.before') !!}
<accordian :title="'{{ __('admin::app.marketing.templates.general') }}'" :active="true">
<accordian title="{{ __('admin::app.marketing.templates.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.marketing.templates.name') }}</label>

View File

@ -37,7 +37,7 @@
{!! view_render_event('bagisto.admin.promotions.cart-rules.create.before') !!}
<accordian :title="'{{ __('admin::app.promotions.cart-rules.rule-information') }}'" :active="true">
<accordian title="{{ __('admin::app.promotions.cart-rules.rule-information') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
@ -157,7 +157,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.cart-rules.conditions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.cart-rules.conditions') }}" :active="false">
<div slot="body">
<div class="control-group">
@ -184,7 +184,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.cart-rules.actions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.cart-rules.actions') }}" :active="false">
<div slot="body">
<div class="control-group" :class="[errors.has('action_type') ? 'has-error' : '']">

View File

@ -37,7 +37,7 @@
{!! view_render_event('bagisto.admin.promotions.cart-rules.create.before') !!}
<accordian :title="'{{ __('admin::app.promotions.cart-rules.rule-information') }}'" :active="true">
<accordian title="{{ __('admin::app.promotions.cart-rules.rule-information') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.promotions.cart-rules.name') }}</label>
@ -174,7 +174,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.cart-rules.conditions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.cart-rules.conditions') }}" :active="false">
<div slot="body">
<div class="control-group">
<label for="condition_type">{{ __('admin::app.promotions.cart-rules.condition-type') }}</label>
@ -199,7 +199,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.cart-rules.actions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.cart-rules.actions') }}" :active="false">
<div slot="body">
<div class="control-group" :class="[errors.has('action_type') ? 'has-error' : '']">
<label for="action_type" class="required">{{ __('admin::app.promotions.cart-rules.action-type') }}</label>
@ -307,7 +307,7 @@
{!! view_render_event('bagisto.admin.promotions.cart-rules.create.after') !!}
<accordian :title="'{{ __('admin::app.promotions.cart-rules.coupon-codes') }}'" :active="false" v-if="coupon_type && use_auto_generation">
<accordian title="{{ __('admin::app.promotions.cart-rules.coupon-codes') }}" :active="false" v-if="coupon_type && use_auto_generation">
<div slot="body">
<create-coupon-form></create-coupon-form>
</div>

View File

@ -37,7 +37,7 @@
{!! view_render_event('bagisto.admin.promotions.catalog-rules.create.before') !!}
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.rule-information') }}'" :active="true">
<accordian title="{{ __('admin::app.promotions.catalog-rules.rule-information') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.promotions.catalog-rules.name') }}</label>
@ -113,7 +113,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.conditions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.catalog-rules.conditions') }}" :active="false">
<div slot="body">
<div class="control-group">
<label for="condition_type">{{ __('admin::app.promotions.catalog-rules.condition-type') }}</label>
@ -138,7 +138,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.actions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.catalog-rules.actions') }}" :active="false">
<div slot="body">
<div class="control-group" :class="[errors.has('action_type') ? 'has-error' : '']">
<label for="action_type" class="required">{{ __('admin::app.promotions.catalog-rules.action-type') }}</label>

View File

@ -37,7 +37,7 @@
{!! view_render_event('bagisto.admin.promotions.catalog-rules.create.before') !!}
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.rule-information') }}'" :active="true">
<accordian title="{{ __('admin::app.promotions.catalog-rules.rule-information') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.promotions.catalog-rules.name') }}</label>
@ -120,7 +120,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.conditions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.catalog-rules.conditions') }}" :active="false">
<div slot="body">
<div class="control-group">
<label for="condition_type">{{ __('admin::app.promotions.catalog-rules.condition-type') }}</label>
@ -145,7 +145,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.promotions.catalog-rules.actions') }}'" :active="false">
<accordian title="{{ __('admin::app.promotions.catalog-rules.actions') }}" :active="false">
<div slot="body">
<div class="control-group" :class="[errors.has('action_type') ? 'has-error' : '']">
<label for="action_type" class="required">{{ __('admin::app.promotions.catalog-rules.action-type') }}</label>

View File

@ -28,7 +28,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
@ -111,7 +111,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -143,7 +143,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -221,7 +221,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<div class="table">

View File

@ -45,7 +45,7 @@
<tabs>
<tab name="{{ __('admin::app.sales.orders.info') }}" :selected="true">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -140,7 +140,7 @@
</accordian>
@if ($order->billing_address || $order->shipping_address)
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
@if ($order->billing_address)
@ -175,7 +175,7 @@
</accordian>
@endif
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<div class="table">
<div class="table-responsive">

View File

@ -61,7 +61,7 @@
<tab name="{{ __('admin::app.sales.orders.info') }}" :selected="true">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
@ -160,7 +160,7 @@
</accordian>
@if ($order->billing_address || $order->shipping_address)
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
@if($order->billing_address)
@ -195,7 +195,7 @@
</accordian>
@endif
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
@ -278,7 +278,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<div class="table">
<div class="table-responsive">

View File

@ -28,7 +28,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -111,7 +111,7 @@
</accordian>
@if ($order->billing_address || $order->shipping_address)
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
@ -147,7 +147,7 @@
</accordian>
@endif
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -209,7 +209,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<refund-items></refund-items>

View File

@ -25,7 +25,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -108,7 +108,7 @@
</accordian>
@if ($order->billing_address || $order->shipping_address)
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
@if ($order->billing_address)
@ -143,7 +143,7 @@
</accordian>
@endif
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -205,7 +205,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<div class="table">

View File

@ -28,7 +28,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -110,7 +110,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -142,7 +142,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -214,7 +214,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<order-item-list></order-item-list>

View File

@ -24,7 +24,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.orders.order-and-account') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.order-and-account') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -107,7 +107,7 @@
</accordian>
@if ($order->billing_address || $order->shipping_address)
<accordian :title="'{{ __('admin::app.sales.orders.address') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.address') }}" :active="true">
<div slot="body">
<div class="sale">
@if ($order->billing_address)
@ -142,7 +142,7 @@
</accordian>
@endif
<accordian :title="'{{ __('admin::app.sales.orders.payment-and-shipping') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.payment-and-shipping') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section">
@ -236,7 +236,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.orders.products-ordered') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.orders.products-ordered') }}" :active="true">
<div slot="body">
<div class="table">

View File

@ -22,7 +22,7 @@
<div class="page-content">
<div class="sale-container">
<accordian :title="'{{ __('admin::app.sales.transactions.transaction-data') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.transactions.transaction-data') }}" :active="true">
<div slot="body">
<div class="sale">
<div class="sale-section" style="width:100%">
@ -104,7 +104,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.sales.transactions.transaction-details') }}'" :active="true">
<accordian title="{{ __('admin::app.sales.transactions.transaction-details') }}" :active="true">
<div slot="body">
@php
$transData = json_decode(json_encode(json_decode($transaction['data'])), true);

View File

@ -31,7 +31,7 @@
{!! view_render_event('bagisto.admin.settings.channel.create.before') !!}
{{-- general --}}
<accordian :title="'{{ __('admin::app.settings.channels.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
@ -86,7 +86,7 @@
</accordian>
{{-- currencies and locales --}}
<accordian :title="'{{ __('admin::app.settings.channels.currencies-and-locales') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.currencies-and-locales') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('locales[]') ? 'has-error' : '']">
@ -141,7 +141,7 @@
</accordian>
{{-- design --}}
<accordian :title="'{{ __('admin::app.settings.channels.design') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.design') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="theme">{{ __('admin::app.settings.channels.theme') }}</label>
@ -167,7 +167,7 @@
<div class="control-group">
<label>{{ __('admin::app.settings.channels.logo') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="logo" :multiple="false"></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="logo" :multiple="false"></image-wrapper>
<span class="control-info mt-10">{{ __('admin::app.settings.channels.logo-size') }}</span>
</div>
@ -175,7 +175,7 @@
<div class="control-group">
<label>{{ __('admin::app.settings.channels.favicon') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="logo" :multiple="false"></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="logo" :multiple="false"></image-wrapper>
<span class="control-info mt-10">{{ __('admin::app.settings.channels.favicon-size') }}</span>
</div>

View File

@ -46,7 +46,7 @@
{!! view_render_event('bagisto.admin.settings.channel.edit.before') !!}
{{-- general --}}
<accordian :title="'{{ __('admin::app.settings.channels.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
@ -110,7 +110,7 @@
</accordian>
{{-- currencies and locales --}}
<accordian :title="'{{ __('admin::app.settings.channels.currencies-and-locales') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.currencies-and-locales') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('locales[]') ? 'has-error' : '']">
@ -169,7 +169,7 @@
</accordian>
{{-- design --}}
<accordian :title="'{{ __('admin::app.settings.channels.design') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.channels.design') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="theme">{{ __('admin::app.settings.channels.theme') }}</label>
@ -204,7 +204,7 @@
<div class="control-group">
<label>{{ __('admin::app.settings.channels.logo') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="logo" :multiple="false" :images='"{{ $channel->logo_url }}"'></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="logo" :multiple="false" :images='"{{ $channel->logo_url }}"'></image-wrapper>
<span class="control-info mt-10">{{ __('admin::app.settings.channels.logo-size') }}</span>
</div>
@ -212,7 +212,7 @@
<div class="control-group">
<label>{{ __('admin::app.settings.channels.favicon') }}</label>
<image-wrapper :button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'" input-name="favicon" :multiple="false" :images='"{{ $channel->favicon_url }}"'></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}" input-name="favicon" :multiple="false" :images='"{{ $channel->favicon_url }}"'></image-wrapper>
<span class="control-info mt-10">{{ __('admin::app.settings.channels.favicon-size') }}</span>
</div>

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.settings.currencies.create.before') !!}
<accordian :title="'{{ __('admin::app.settings.currencies.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.currencies.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">

View File

@ -31,7 +31,7 @@
{!! view_render_event('bagisto.admin.settings.currencies.edit.before') !!}
<accordian :title="'{{ __('admin::app.settings.currencies.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.currencies.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">

View File

@ -30,7 +30,7 @@
{!! view_render_event('bagisto.admin.settings.inventory.create.before') !!}
<accordian :title="'{{ __('admin::app.settings.inventory_sources.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
@ -80,7 +80,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.settings.inventory_sources.contact-info') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.contact-info') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('contact_name') ? 'has-error' : '']">
@ -109,7 +109,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.settings.inventory_sources.address') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.address') }}" :active="true">
<div slot="body">
@include ('admin::customers.country-state', ['countryCode' => old('country'), 'stateCode' => old('state')])

View File

@ -32,7 +32,7 @@
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.settings.inventory_sources.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
@ -82,7 +82,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.settings.inventory_sources.contact-info') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.contact-info') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('contact_name') ? 'has-error' : '']">
@ -111,7 +111,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.settings.inventory_sources.address') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.inventory_sources.address') }}" :active="true">
<div slot="body">
@include ('admin::customers.country-state', ['countryCode' => old('country') ?? $inventorySource->country, 'stateCode' => old('state') ?? $inventorySource->state])

View File

@ -29,7 +29,7 @@
{!! view_render_event('bagisto.admin.settings.locale.create.before') !!}
<accordian :title="'{{ __('admin::app.settings.locales.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.locales.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
<label for="code" class="required">{{ __('admin::app.settings.locales.code') }}</label>
@ -58,7 +58,7 @@
<image-wrapper
input-name="locale_image"
:multiple="false"
:button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'">
button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}">
</image-wrapper>
<span class="control-info mt-10">{{ __('velocity::app.admin.meta-data.image-locale-resolution') }}</span>

View File

@ -31,7 +31,7 @@
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.settings.locales.general') }}'" :active="true">
<accordian title="{{ __('admin::app.settings.locales.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
@ -71,13 +71,13 @@
input-name="locale_image"
:multiple="false"
:images='"{{ Storage:: url($locale->locale_image) }}"'
:button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'">
button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}">
</image-wrapper>
@else
<image-wrapper
input-name="locale_image"
:multiple="false"
:button-label="'{{ __('admin::app.catalog.products.add-image-btn-title') }}'">
button-label="{{ __('admin::app.catalog.products.add-image-btn-title') }}">
</image-wrapper>
@endif

View File

@ -85,7 +85,7 @@
<label class="required">{{ __('admin::app.catalog.categories.image') }}</label>
<span class="control-info mt-10">{{ __('admin::app.settings.sliders.image-size') }}</span>
<image-wrapper :button-label="'{{ __('admin::app.settings.sliders.image') }}'" input-name="image" :multiple="false"></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.settings.sliders.image') }}" input-name="image" :multiple="false"></image-wrapper>
<span class="control-error" v-if="{!! $errors->has('image.*') !!}">
@foreach ($errors->get('image.*') as $key => $message)

View File

@ -88,7 +88,7 @@
<label class="required">{{ __('admin::app.catalog.categories.image') }}</label>
<span class="control-info mt-10">{{ __('admin::app.settings.sliders.image-size') }}</span>
<image-wrapper :button-label="'{{ __('admin::app.settings.sliders.image') }}'" input-name="image" :multiple="false" :images='"{{ Storage::url($slider->path) }}"'></image-wrapper>
<image-wrapper button-label="{{ __('admin::app.settings.sliders.image') }}" input-name="image" :multiple="false" :images='"{{ Storage::url($slider->path) }}"'></image-wrapper>
<span class="control-error" v-if="{!! $errors->has('image.*') !!}">
@foreach ($errors->get('image.*') as $key => $message)

View File

@ -28,7 +28,7 @@
<div class="form-container">
@csrf()
<accordian :title="'{{ __('admin::app.users.roles.general') }}'" :active="true">
<accordian title="{{ __('admin::app.users.roles.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.users.roles.name') }}</label>
@ -43,7 +43,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.users.roles.access-control') }}'" :active="true">
<accordian title="{{ __('admin::app.users.roles.access-control') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="permission_type">{{ __('admin::app.users.roles.permissions') }}</label>

View File

@ -30,7 +30,7 @@
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.users.roles.general') }}'" :active="true">
<accordian title="{{ __('admin::app.users.roles.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.users.roles.name') }}</label>
@ -45,7 +45,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.users.roles.access-control') }}'" :active="true">
<accordian title="{{ __('admin::app.users.roles.access-control') }}" :active="true">
<div slot="body">
<div class="control-group">
<label for="permission_type">{{ __('admin::app.users.roles.permissions') }}</label>

View File

@ -27,7 +27,7 @@
<div class="form-container">
@csrf()
<accordian :title="'{{ __('admin::app.users.users.general') }}'" :active="true">
<accordian title="{{ __('admin::app.users.users.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.users.users.name') }}</label>
@ -43,7 +43,7 @@
</div>
</accordian>
<accordian :title="'{{ __('Password') }}'" :active="true">
<accordian title="{{ __('Password') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('password') ? 'has-error' : '']">
<label for="password">{{ __('admin::app.users.users.password') }}</label>
@ -59,7 +59,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.users.users.status-and-role') }}'" :active="true">
<accordian title="{{ __('admin::app.users.users.status-and-role') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('role_id') ? 'has-error' : '']">
<label for="role" class="required">{{ __('admin::app.users.users.role') }}</label>

View File

@ -28,7 +28,7 @@
@csrf()
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.users.users.general') }}'" :active="true">
<accordian title="{{ __('admin::app.users.users.general') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.users.users.name') }}</label>
@ -44,7 +44,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.users.users.password') }}'" :active="true">
<accordian title="{{ __('admin::app.users.users.password') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('password') ? 'has-error' : '']">
<label for="password">{{ __('admin::app.users.users.password') }}</label>
@ -60,7 +60,7 @@
</div>
</accordian>
<accordian :title="'{{ __('admin::app.users.users.status-and-role') }}'" :active="true">
<accordian title="{{ __('admin::app.users.users.status-and-role') }}" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('role_id') ? 'has-error' : '']">
<label for="role" class="required">{{ __('admin::app.users.users.role') }}</label>

View File

@ -96,6 +96,8 @@ Route::group(['middleware' => ['web', 'admin', 'admin_locale'], 'prefix' => conf
'redirect' => 'admin.catalog.categories.index',
])->name('admin.catalog.categories.update');
Route::get('/categories/products/{id}', [CategoryController::class, 'products'])->name('admin.catalog.categories.products');
Route::post('/categories/delete/{id}', [CategoryController::class, 'destroy'])->name('admin.catalog.categories.delete');
Route::post('categories/massdelete', [CategoryController::class, 'massDestroy'])->defaults('_config', [

View File

@ -3,6 +3,7 @@
namespace Webkul\Category\Http\Controllers;
use Webkul\Admin\DataGrids\CategoryDataGrid;
use Webkul\Admin\DataGrids\CategoryProductDataGrid;
use Webkul\Attribute\Repositories\AttributeRepository;
use Webkul\Category\Http\Requests\CategoryRequest;
use Webkul\Category\Repositories\CategoryRepository;
@ -109,6 +110,19 @@ class CategoryController extends Controller
return view($this->_config['view'], compact('category', 'categories', 'attributes'));
}
/**
* Show the products of specified resource.
*
* @param int $id
* @return \Illuminate\View\View
*/
public function products($id)
{
if (request()->ajax()) {
return app(CategoryProductDataGrid::class)->toJson();
}
}
/**
* Update the specified resource in storage.
*

View File

@ -136,17 +136,18 @@ class Cart
/**
* Get cart item by product.
*
* @param array $data
* @param array|null $data
* @param array $parentData
* @return \Webkul\Checkout\Contracts\CartItem|void
*/
public function getItemByProduct($data)
public function getItemByProduct($data, $parentData = null)
{
$items = $this->getCart()->all_items;
foreach ($items as $item) {
if ($item->product->getTypeInstance()->compareOptions($item->additional, $data['additional'])) {
if (isset($data['additional']['parent_id'])) {
if ($item->parent->product->getTypeInstance()->compareOptions($item->parent->additional, $data['additional'])) {
if ($item->parent->product->getTypeInstance()->compareOptions($item->parent->additional, $parentData ?: request()->all())) {
return $item;
}
} else {
@ -194,7 +195,7 @@ class Cart
$parentCartItem = null;
foreach ($cartProducts as $cartProduct) {
$cartItem = $this->getItemByProduct($cartProduct);
$cartItem = $this->getItemByProduct($cartProduct, $data);
if (isset($cartProduct['parent_id'])) {
$cartProduct['parent_id'] = $parentCartItem->id;

View File

@ -57,7 +57,11 @@ trait CartTools
}
foreach ($guestCart->items as $guestCartItem) {
$this->addProduct($guestCartItem->product_id, $guestCartItem->additional);
try {
$this->addProduct($guestCartItem->product_id, $guestCartItem->additional);
} catch (\Exception $e) {
//Ignore exception
}
}
$this->collectTotals();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
{
"/js/shop.js": "/js/shop.js?id=2540ab945983d7183d89",
"/css/shop.css": "/css/shop.css?id=0198b96b5e7871291a68"
"/js/shop.js": "/js/shop.js?id=60b6b9cbe8e20c7ab585",
"/css/shop.css": "/css/shop.css?id=1c6f9a98eb7c9d2aa0c4"
}

View File

@ -4,6 +4,7 @@ namespace Webkul\Shop\Http\Controllers;
use Illuminate\Support\Facades\Storage;
use Webkul\Sales\Repositories\DownloadableLinkPurchasedRepository;
use Webkul\Shop\DataGrids\DownloadableProductDataGrid;
class DownloadableProductController extends Controller
{
@ -38,6 +39,10 @@ class DownloadableProductController extends Controller
*/
public function index()
{
if (request()->ajax()) {
return app(DownloadableProductDataGrid::class)->toJson();
}
return view($this->_config['view']);
}

View File

@ -5,6 +5,7 @@ namespace Webkul\Shop\Http\Controllers;
use Webkul\Core\Traits\PDFHandler;
use Webkul\Sales\Repositories\InvoiceRepository;
use Webkul\Sales\Repositories\OrderRepository;
use Webkul\Shop\DataGrids\OrderDataGrid;
class OrderController extends Controller
{
@ -60,6 +61,10 @@ class OrderController extends Controller
*/
public function index()
{
if (request()->ajax()) {
return app(OrderDataGrid::class)->toJson();
}
return view($this->_config['view']);
}

View File

@ -7,6 +7,8 @@ import fa from 'vee-validate/dist/locale/fa';
import fr from 'vee-validate/dist/locale/fr';
import nl from 'vee-validate/dist/locale/nl';
import tr from 'vee-validate/dist/locale/tr';
import hi_IN from 'vee-validate/dist/locale/hi';
import zh_CN from 'vee-validate/dist/locale/zh_CN';
import axios from 'axios';
import VueSlider from 'vue-slider-component';
import accounting from 'accounting';
@ -30,6 +32,8 @@ Vue.use(VeeValidate, {
fr: fr,
nl: nl,
tr: tr,
hi_IN: hi_IN,
zh_CN: zh_CN
},
events: 'input|change|blur',
});

View File

@ -431,6 +431,7 @@ input {
.content-container {
display: block;
margin-bottom: 40px;
clear: both;
}
/**
@ -2078,6 +2079,13 @@ section.product-detail {
h3 {
font-size: 16px;
margin-top: 0;
&.required:after {
content: "*";
color: #fc6868;
font-weight: 700;
display: inline-block;
}
}
ul {

View File

@ -20,7 +20,9 @@
<div class="account-items-list">
<div class="account-table-content">
{!! app('Webkul\Shop\DataGrids\DownloadableProductDataGrid')->render() !!}
<datagrid-plus src="{{ route('customer.downloadable_products.index') }}"></datagrid-plus>
</div>
</div>

View File

@ -20,7 +20,9 @@
<div class="account-items-list">
<div class="account-table-content">
{!! app('Webkul\Shop\DataGrids\OrderDataGrid')->render() !!}
<datagrid-plus src="{{ route('customer.orders.index') }}"></datagrid-plus>
</div>
</div>

View File

@ -21,7 +21,7 @@
@if ($product->downloadable_links->count())
<div class="link-list control-group" :class="[errors.has('links[]') ? 'has-error' : '']">
<h3>{{ __('shop::app.products.links') }}</h3>
<h3 class="required">{{ __('shop::app.products.links') }}</h3>
<ul>
@foreach ($product->downloadable_links as $link)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -82,3 +82,12 @@
* (c) 2015-present Evan You
* @license MIT
*/
/**
* @license
* Lodash <https://lodash.com/>
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
* Released under MIT license <https://lodash.com/license>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
*/

View File

@ -1 +1 @@
(()=>{"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[n]=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))})()})();
(()=>{"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,loaded:!1,exports:{}};return n[e].call(t.exports,t,t.exports,a),t.loaded=!0,t.exports}a.m=n,e=[],a.O=(r,t,o,n)=>{if(!t){var i=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||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(c--,1);var s=o();void 0!==s&&(r=s)}}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]},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 c=u[s];if(c.getAttribute("src")==e){i=c;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 f=(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(f.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=f.bind(null,i.onerror),i.onload=f.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.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),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 c=u(a)}for(r&&r(t);s<i.length;s++)n=i[s],a.o(e,n)&&e[n]&&e[n][0](),e[n]=0;return a.O(c)},t=self.webpackChunk=self.webpackChunk||[];t.forEach(r.bind(null,0)),t.push=r.bind(null,t.push.bind(t))})()})();

File diff suppressed because one or more lines are too long

View File

@ -1,10 +1,10 @@
{
"/js/jquery-ez-plus.js": "/js/jquery-ez-plus.js?id=ba3c7cada62de152fd8fce211d0b1b70",
"/js/velocity-core.js": "/js/velocity-core.js?id=73cc7c3501570ebe9151c72d954bd97d",
"/js/velocity.js": "/js/velocity.js?id=14d409d2fc1782a75785be7b45d541c5",
"/js/manifest.js": "/js/manifest.js?id=3cded37ef514b0fb89b10e7109801248",
"/js/components.js": "/js/components.js?id=485d1d81b3d7e15da2863b9c76b71d49",
"/css/velocity.css": "/css/velocity.css?id=36c883fb6f824367684224817cd70c89",
"/js/velocity.js": "/js/velocity.js?id=f655ac65cbd1aa549cba57f77b9a4344",
"/js/manifest.js": "/js/manifest.js?id=e069a8f952a02ea0f290bcca8fab930e",
"/js/components.js": "/js/components.js?id=13ebf112e40292178d2386143e9d75cd",
"/css/velocity.css": "/css/velocity.css?id=bba65352574a5ae54c4a83a2cc04e3ee",
"/css/velocity-admin.css": "/css/velocity-admin.css?id=b67a82956e53163b5e3ff45a44f9778f",
"/images/icon-calendar.svg": "/images/icon-calendar.svg?id=870d0f733a58377422766f3152e15486",
"/images/icon-camera.svg": "/images/icon-camera.svg?id=b2fd2f9e17e1ccee96e29f6c6cec91e8",

View File

@ -6,6 +6,7 @@ import Vue from 'vue';
import VeeValidate from 'vee-validate';
import VueCarousel from 'vue-carousel';
import translate from '@components/trans';
import './bootstrap';
/**
* Lang imports.
@ -16,6 +17,8 @@ import fa from 'vee-validate/dist/locale/fa';
import fr from 'vee-validate/dist/locale/fr';
import nl from 'vee-validate/dist/locale/nl';
import tr from 'vee-validate/dist/locale/tr';
import hi_IN from 'vee-validate/dist/locale/hi';
import zh_CN from 'vee-validate/dist/locale/zh_CN';
/**
* Vue plugins.
@ -29,7 +32,9 @@ Vue.use(VeeValidate, {
fa: fa,
fr: fr,
nl: nl,
tr: tr
tr: tr,
hi_IN: hi_IN,
zh_CN: zh_CN
},
events: 'input|change|blur'
});

View File

@ -0,0 +1,21 @@
window._ = require('lodash');
window.axios = require("axios");
window.$ = window.jQuery = require('jquery');
if (window.axios) {
window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
/**
* Next we will register the CSRF Token as a common header with Axios so that
* all outgoing HTTP requests automatically have it attached. This is just
* a simple convenience so we don't have to attach every token manually.
*/
let token = document.head.querySelector('meta[name="csrf-token"]');
if (token) {
window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
}

View File

@ -410,6 +410,7 @@
padding: 7px;
background: transparent;
text-align: center;
height: 38px;
&.decrease {
border-right: 0;
@ -2014,6 +2015,13 @@
h3 {
font-size: 16px;
margin-top: 0;
&.required:after {
content: "*";
font-size: 16px;
margin-left: -1px;
color: #F05153;
}
}
ul {
@ -2028,7 +2036,7 @@
input[type='checkbox'] {
width: 15px !important;
height: 15px !important;
margin-left: -24px;
margin-left: -10px;
}
}

Some files were not shown because too many files have changed in this diff Show More