Merge pull request #469 from rahulshukla-webkul/development

Development
This commit is contained in:
JItendra Singh 2019-01-18 12:10:47 +05:30 committed by GitHub
commit afce42bf0c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
42 changed files with 269 additions and 366 deletions

View File

@ -41,10 +41,21 @@ class DataGridExport implements FromView, ShouldAutoSize
public function view(): View
{
$pagination = false;
$results = [];
$columns = [];
foreach($this->gridData as $key => $data) {
if ($key == 'collection') {
$results = $data['data'];
}
if ($key == 'columns') {
$columns = $data;
}
}
return view('admin::export.export', [
'results' => $this->gridData->render($pagination)->results,
'columns' => $this->gridData->render($pagination)->columns,
'results' => $results,
'columns' => $columns,
]);
}
}

View File

@ -139,7 +139,7 @@ class ConfigurationController extends Controller
Event::fire('core.configuration.save.after');
session()->flash('success', 'Shipping Method is created successfully');
session()->flash('success', trans('admin::app.configuration.save-message'));
return redirect()->back();
}

View File

@ -117,7 +117,7 @@ class CustomerController extends Controller
$this->customer->create($data);
session()->flash('success', trans('admin::app.customers.customers.created'));
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Customer']));
return redirect()->route($this->_config['redirect']);
}
@ -160,7 +160,7 @@ class CustomerController extends Controller
$this->customer->update(request()->all(),$id);
session()->flash('success', trans('admin::app.customers.customers.updated'));
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Customer']));
return redirect()->route($this->_config['redirect']);
}
@ -175,7 +175,7 @@ class CustomerController extends Controller
{
$this->customer->delete($id);
session()->flash('success', trans('admin::app.customers.customers.deleted'));
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Customer']));
return redirect()->back();
}

View File

@ -81,7 +81,7 @@ class CustomerGroupController extends Controller
$this->customerGroup->create($data);
session()->flash('success', trans('admin::app.customers.customers.group-created'));
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Customer Group']));
return redirect()->route($this->_config['redirect']);
}
@ -114,7 +114,7 @@ class CustomerGroupController extends Controller
$this->customerGroup->update(request()->all(),$id);
session()->flash('success', trans('admin::app.customers.customers.group-updated'));
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Customer Group']));
return redirect()->route($this->_config['redirect']);
}
@ -132,7 +132,7 @@ class CustomerGroupController extends Controller
if ($group->is_user_defined == 0) {
session()->flash('warning', trans('admin::app.customers.customers.group-default'));
} else {
session()->flash('success', trans('admin::app.customers.customers.group-deleted'));
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Customer Group']));
$this->customerGroup->delete($id);
}

View File

@ -32,9 +32,13 @@ class ExportController extends Controller
*/
public function export()
{
$results = unserialize(request()->all()['gridData']);
$results = request()->all()['gridData'];
$file_name = class_basename($results);
$data = json_decode($results, true);
$results = (object) $data;
$file_name = request()->all()['file_name'];
if (request()->all()['format'] == 'csv') {
return Excel::download(new DataGridExport($results), $file_name.'.csv');

View File

@ -214,7 +214,7 @@ return [
'confirm-delete-title' => 'Confirm password before delete',
'delete-last' => 'At least one admin is required.',
'delete-success' => 'Success! User deleted',
'incorrect-password' => 'The password you entered is incorrect'
'incorrect-password' => 'The password you entered is incorrect',
],
'sessions' => [
@ -445,6 +445,7 @@ return [
'configuration' => [
'title' => 'Configuration',
'save-btn-title' => 'Save',
'save-message' => 'Configuration saved successfully',
'tax-categories' => [
'title' => 'Tax Categories',
@ -685,12 +686,6 @@ return [
'male' => 'Male',
'female' => 'Female',
'phone' => 'Phone',
'created' => 'Customer created successfully.',
'updated' => 'Customer updated successfully.',
'deleted' => 'Customer deleted successfully.',
'group-created' => 'Customer Group created successfully.',
'group-updated' => 'Customer Group updated successfully.',
'group-deleted' => 'Customer Group deleted successfully.',
'group-default' => 'Cannot delete the default group.',
],
'reviews' => [
@ -751,5 +746,15 @@ return [
'download' => 'Download',
'csv' => 'CSV',
'xls' => 'XLS'
]
],
'response' => [
'create-success' => ':name created successfully.',
'update-success' => ':name updated successfully.',
'delete-success' => ':name deleted successfully.',
'last-delete-error' => 'At least one :name is required.',
'user-define-error' => 'Can not delete system :name',
'attribute-error' => ':name is used in configurable products.',
'attribute-product-error' => ':name is used in products.'
],
];

View File

@ -21,20 +21,20 @@
</div>
<div class="page-content">
<div class="form-container">
@csrf()
<input name="_method" type="hidden" value="PUT">
<accordian :title="'{{ __('admin::app.catalog.families.general') }}'" :active="true">
<div slot="body">
<div class="control-group" :class="[errors.has('code') ? 'has-error' : '']">
<input type="text" v-validate="'required'" name="code" class="control" id="code" value="{{ $attributeFamily->code }}" disabled="disabled" data-vv-as="&quot;{{ __('admin::app.catalog.families.code') }}&quot;" v-code/>
<input type="hidden" name="code" value="{{ $attributeFamily->code }}"/>
<span class="control-error" v-if="errors.has('code')">@{{ errors.first('code') }}</span>
</div>
<div class="control-group" :class="[errors.has('name') ? 'has-error' : '']">
<label for="name" class="required">{{ __('admin::app.catalog.families.name') }}</label>
<input type="text" v-validate="'required'" class="control" id="name" name="name" value="{{ old('name') ?: $attributeFamily->name }}" data-vv-as="&quot;{{ __('admin::app.catalog.families.name') }}&quot;"/>
@ -173,7 +173,7 @@
</div>
</accordian>
</script>
<script>
var groups = @json($attributeFamily->attribute_groups);
var custom_attributes = @json($custom_attributes);
@ -215,7 +215,7 @@
groups.push(this.group);
groups = this.sortGroups();
this.group = {'groupName': '', 'position': '', 'custom_attributes': []};
this.$parent.closeModal();
@ -272,7 +272,7 @@
addAttributes (groupIndex, attributeIds) {
attributeIds.forEach(function(attributeId) {
var attribute = this.custom_attributes.filter(attribute => attribute.id == attributeId)
this.groups[groupIndex].custom_attributes.push(attribute[0]);
let index = this.custom_attributes.indexOf(attribute[0])
@ -323,7 +323,7 @@
$(e.target).prev().find('li input').each(function() {
var attributeId = $(this).val();
if ($(this).is(':checked')) {
attributeIds.push(attributeId);
@ -342,4 +342,4 @@
}
});
</script>
@endpush
@endpush

View File

@ -21,7 +21,6 @@
$class = app(current($temp));
$method = end($temp);
$value = $class->$method();
$selectedOption = core()->getConfigData($name) ?? '';
}
$channel_locale = [];
@ -60,11 +59,17 @@
<select v-validate="'{{ $validations }}'" class="control" id="{{ $firstField }}[{{ $secondField }}][{{ $thirdField }}][{{ $field['name'] }}]" name="{{ $firstField }}[{{ $secondField }}][{{ $thirdField }}][{{ $field['name'] }}]" data-vv-as="&quot;{{ $field['name'] }}&quot;" >
<?php
$selectedOption = core()->getConfigData($name) ?? '';
?>
@if (isset($field['repository']))
@foreach ($value as $option)
<option value="{{ $option['name'] }}" {{ $option['name'] == $selectedOption ? 'selected' : ''}}
{{ trans($option['name']) }}
@foreach ($value as $key => $option)
<option value="{{ $value[$key] }}" {{ $value[$key] == $selectedOption ? 'selected' : ''}}>
{{ trans($value[$key]) }}
</option>
@endforeach
@else
@foreach ($field['options'] as $option)
@ -74,8 +79,6 @@
} else {
$value = $option['value'];
}
$selectedOption = core()->getConfigData($name) ?? '';
?>
<option value="{{ $value }}" {{ $value == $selectedOption ? 'selected' : ''}}>
@ -90,23 +93,33 @@
<select v-validate="'{{ $validations }}'" class="control" id="{{ $firstField }}[{{ $secondField }}][{{ $thirdField }}][{{ $field['name'] }}]" name="{{ $firstField }}[{{ $secondField }}][{{ $thirdField }}][{{ $field['name'] }}][]" data-vv-as="&quot;{{ $field['name'] }}&quot;" multiple>
@foreach ($field['options'] as $option)
<?php
$selectedOption = core()->getConfigData($name) ?? '';
?>
<?php
if ($option['value'] == false) {
$value = 0;
} else {
$value = $option['value'];
}
@if (isset($field['repository']))
@foreach ($value as $key => $option)
$selectedOption = core()->getConfigData($name) ?? '';
?>
<option value="{{ $value[$key] }}" {{ in_array($value[$key], explode(',', $selectedOption)) ? 'selected' : ''}}>
{{ trans($value[$key]) }}
</option>
<option value="{{ $value }}" {{ in_array($option['value'], explode(',', $selectedOption)) ? 'selected' : ''}}>
{{ $option['title'] }}
</option>
@endforeach
@else
@foreach ($field['options'] as $option)
<?php
if ($option['value'] == false) {
$value = 0;
} else {
$value = $option['value'];
}
?>
@endforeach
<option value="{{ $value }}" {{ in_array($option['value'], explode(',', $selectedOption)) ? 'selected' : ''}}>
{{ $option['title'] }}
</option>
@endforeach
@endif
</select>

View File

@ -12,12 +12,12 @@
<h1>{{ __('admin::app.customers.customers.title') }}</h1>
</div>
<div class="page-action">
{{-- <div class="export" @click="showModal('downloadDataGrid')">
<div class="export" @click="showModal('downloadDataGrid')">
<i class="export-icon"></i>
<span >
{{ __('admin::app.export.export') }}
</span>
</div> --}}
</div>
<a href="{{ route('admin.customer.create') }}" class="btn btn-lg btn-primary">
{{ __('admin::app.customers.customers.add-title') }}
@ -25,32 +25,36 @@
</div>
</div>
<div class="page-content">
@inject('customer','Webkul\Admin\DataGrids\CustomerDataGrid')
{!! $customer->render() !!}
</div>
</div>
{{-- <modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<h3 slot="header">{{ __('admin::app.export.download') }}</h3>
<div slot="body">
<export-form></export-form>
</div>
</modal> --}}
</modal>
@stop
@push('scripts')
{{-- <script type="text/x-template" id="export-form-template">
<script type="text/x-template" id="export-form-template">
<form method="POST" action="{{ route('admin.datagrid.export') }}">
<div class="page-content">
<div class="form-container">
@csrf()
<input type="hidden" name="gridData" value="{{serialize($customer)}}">
<?php
$data = json_encode((array) $customer);
?>
<input type="hidden" name="gridData" value="{{ $data }}">
<input type="hidden" name="file_name" value="Customer">
<div class="control-group">
<label for="format" class="required">
@ -81,7 +85,7 @@
}
}
});
</script> --}}
</script>
@endpush

View File

@ -2,7 +2,7 @@
<thead>
<tr>
@foreach ($columns as $column)
<th>{{ $column->label }}</th>
<th>{{ $column['label'] }}</th>
@endforeach
</tr>
</thead>
@ -10,7 +10,7 @@
@foreach ($results as $result)
<tr>
@foreach ($columns as $column)
<td class="">{!! $column->render($result) !!}</td>
<td class="">{{ $result[$column['index']] }} </td>
@endforeach
</tr>
@endforeach

View File

@ -11,14 +11,14 @@
<h1>{{ __('admin::app.sales.invoices.title') }}</h1>
</div>
{{-- <div class="page-action">
<div class="page-action">
<div class="export" @click="showModal('downloadDataGrid')">
<i class="export-icon"></i>
<span>
{{ __('admin::app.export.export') }}
</span>
</div>
</div> --}}
</div>
</div>
<div class="page-content">
@ -27,25 +27,30 @@
</div>
</div>
{{-- <modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<h3 slot="header">{{ __('admin::app.export.download') }}</h3>
<div slot="body">
<export-form></export-form>
</div>
</modal> --}}
</modal>
@stop
@push('scripts')
{{-- <script type="text/x-template" id="export-form-template">
<script type="text/x-template" id="export-form-template">
<form method="POST" action="{{ route('admin.datagrid.export') }}">
<div class="page-content">
<div class="form-container">
@csrf()
<input type="hidden" name="gridData" value="{{serialize($orderInvoicesGrid)}}">
<?php
$data = json_encode((array) $orderInvoicesGrid);
?>
<input type="hidden" name="gridData" value="{{ $data }}">
<input type="hidden" name="file_name" value="Invoice">
<div class="control-group">
<label for="format" class="required">
@ -76,6 +81,6 @@
}
}
});
</script> --}}
</script>
@endpush

View File

@ -11,14 +11,14 @@
<h1>{{ __('admin::app.sales.orders.title') }}</h1>
</div>
{{-- <div class="page-action">
<div class="page-action">
<div class="export" @click="showModal('downloadDataGrid')">
<i class="export-icon"></i>
<span>
{{ __('admin::app.export.export') }}
</span>
</div>
</div> --}}
</div>
</div>
<div class="page-content">
@ -27,25 +27,30 @@
</div>
</div>
{{-- <modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<h3 slot="header">{{ __('admin::app.export.download') }}</h3>
<div slot="body">
<export-form></export-form>
</div>
</modal> --}}
</modal>
@stop
@push('scripts')
{{-- <script type="text/x-template" id="export-form-template">
<script type="text/x-template" id="export-form-template">
<form method="POST" action="{{ route('admin.datagrid.export') }}">
<div class="page-content">
<div class="form-container">
@csrf()
<input type="hidden" name="gridData" value="{{serialize($orderGrid)}}">
<?php
$data = json_encode((array) $orderGrid);
?>
<input type="hidden" name="gridData" value="{{ $data }}">
<input type="hidden" name="file_name" value="Order">
<div class="control-group">
<label for="format" class="required">
@ -65,7 +70,7 @@
</button>
</form>
</script> --}}
</script>
<script>
Vue.component('export-form', {

View File

@ -11,14 +11,14 @@
<h1>{{ __('admin::app.sales.shipments.title') }}</h1>
</div>
{{-- <div class="page-action">
<div class="page-action">
<div class="export" @click="showModal('downloadDataGrid')">
<i class="export-icon"></i>
<span>
{{ __('admin::app.export.export') }}
</span>
</div>
</div> --}}
</div>
</div>
<div class="page-content">
@ -27,25 +27,30 @@
</div>
</div>
{{-- <modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<modal id="downloadDataGrid" :is-open="modalIds.downloadDataGrid">
<h3 slot="header">{{ __('admin::app.export.download') }}</h3>
<div slot="body">
<export-form></export-form>
</div>
</modal> --}}
</modal>
@stop
@push('scripts')
{{-- <script type="text/x-template" id="export-form-template">
<script type="text/x-template" id="export-form-template">
<form method="POST" action="{{ route('admin.datagrid.export') }}">
<div class="page-content">
<div class="form-container">
@csrf()
<input type="hidden" name="gridData" value="{{serialize($orderShipmentsGrid)}}">
<?php
$data = json_encode((array) $orderShipmentsGrid);
?>
<input type="hidden" name="gridData" value="{{ $data }}">
<input type="hidden" name="file_name" value="Shipment">
<div class="control-group">
<label for="format" class="required">
@ -76,6 +81,6 @@
}
}
});
</script> --}}
</script>
@endpush

View File

@ -77,7 +77,7 @@ class AttributeController extends Controller
$attribute = $this->attribute->create(request()->all());
session()->flash('success', 'Attribute created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Attribute']));
return redirect()->route($this->_config['redirect']);
}
@ -112,9 +112,7 @@ class AttributeController extends Controller
$attribute = $this->attribute->update(request()->all(), $id);
// Event::fire('after.attribute.update', $attribute);
session()->flash('success', 'Attribute updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Attribute']));
return redirect()->route($this->_config['redirect']);
}
@ -129,15 +127,15 @@ class AttributeController extends Controller
{
$attribute = $this->attribute->findOrFail($id);
if (!$attribute->is_user_defined) {
session()->flash('error', 'Can not delete system attribute.');
if(!$attribute->is_user_defined) {
session()->flash('error', trans('admin::app.response.user-define-error', ['name' => 'attribute']));
} else {
try {
$this->attribute->delete($id);
session()->flash('success', 'Attribute deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Attribute']));
} catch(\Exception $e) {
session()->flash('error', 'Attribute is used in configurable products.');
session()->flash('error', trans('admin::app.response.attribute-error', ['name' => 'Attribute']));
}
}

View File

@ -82,7 +82,7 @@ class AttributeFamilyController extends Controller
$attributeFamily = $this->attributeFamily->create(request()->all());
session()->flash('success', 'Family created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Family']));
return redirect()->route($this->_config['redirect']);
}
@ -119,7 +119,7 @@ class AttributeFamilyController extends Controller
$attributeFamily = $this->attributeFamily->update(request()->all(), $id);
session()->flash('success', 'Family updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Family']));
return redirect()->route($this->_config['redirect']);
}
@ -135,13 +135,13 @@ class AttributeFamilyController extends Controller
$attributeFamily = $this->attributeFamily->find($id);
if ($this->attributeFamily->count() == 1) {
session()->flash('error', 'At least one family is required.');
session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Family']));
} else if ($attributeFamily->products()->count()) {
session()->flash('error', 'Attribute family is used in products.');
session()->flash('error', trans('admin::app.response.attribute-product-error', ['name' => 'Attribute family']));
} else {
$this->attributeFamily->delete($id);
session()->flash('success', 'Family deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Family']));
}
return redirect()->back();

View File

@ -78,7 +78,7 @@ class CategoryController extends Controller
$category = $this->category->create(request()->all());
session()->flash('success', 'Category created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Category']));
return redirect()->route($this->_config['redirect']);
}
@ -121,7 +121,7 @@ class CategoryController extends Controller
$this->category->update(request()->all(), $id);
session()->flash('success', 'Category updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Category']));
return redirect()->route($this->_config['redirect']);
}
@ -140,7 +140,7 @@ class CategoryController extends Controller
Event::fire('catalog.category.delete.after', $id);
session()->flash('success', 'Category deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Category']));
return redirect()->back();
}

View File

@ -88,7 +88,7 @@ class ChannelController extends Controller
Event::fire('core.channel.create.after', $channel);
session()->flash('success', 'Channel created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Channel']));
return redirect()->route($this->_config['redirect']);
}
@ -134,7 +134,7 @@ class ChannelController extends Controller
Event::fire('core.channel.update.after', $channel);
session()->flash('success', 'Channel updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Channel']));
return redirect()->route($this->_config['redirect']);
}
@ -156,7 +156,7 @@ class ChannelController extends Controller
Event::fire('core.channel.delete.after', $id);
session()->flash('success', 'Channel deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Channel']));
}
return redirect()->back();

View File

@ -81,7 +81,7 @@ class CurrencyController extends Controller
Event::fire('core.currency.create.after', $currency);
session()->flash('success', 'Currency created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Currency']));
return redirect()->route($this->_config['redirect']);
}
@ -119,7 +119,7 @@ class CurrencyController extends Controller
Event::fire('core.currency.update.after', $currency);
session()->flash('success', 'Currency updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Currency']));
return redirect()->route($this->_config['redirect']);
}
@ -139,10 +139,10 @@ class CurrencyController extends Controller
Event::fire('core.currency.delete.after', $id);
if ($result)
session()->flash('success', 'Currency deleted successfully.');
if($result)
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Currency']));
else
session()->flash('error', 'At least one currency is required.');
session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Currency']));
} catch (\Exception $e) {
session()->flash('error', $e->getMessage());
}

View File

@ -94,7 +94,7 @@ class ExchangeRateController extends Controller
Event::fire('core.exchange_rate.create.after', $exchangeRate);
session()->flash('success', 'Exchange rate created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Exchange rate']));
return redirect()->route($this->_config['redirect']);
}
@ -134,7 +134,7 @@ class ExchangeRateController extends Controller
Event::fire('core.exchange_rate.update.after', $exchangeRate);
session()->flash('success', 'Exchange rate updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Exchange rate']));
return redirect()->route($this->_config['redirect']);
}
@ -147,8 +147,8 @@ class ExchangeRateController extends Controller
*/
public function destroy($id)
{
if ($this->exchangeRate->count() == 1) {
session()->flash('error', 'At least one Exchange rate is required.');
if($this->exchangeRate->count() == 1) {
session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Exchange rate']));
} else {
Event::fire('core.exchange_rate.delete.before', $id);
@ -156,7 +156,7 @@ class ExchangeRateController extends Controller
Event::fire('core.exchange_rate.delete.after', $id);
session()->flash('success', 'Exchange rate deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Exchange rate']));
}
return redirect()->back();

View File

@ -81,7 +81,7 @@ class LocaleController extends Controller
Event::fire('core.locale.create.after', $locale);
session()->flash('success', 'Locale created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Locale']));
return redirect()->route($this->_config['redirect']);
}
@ -119,7 +119,7 @@ class LocaleController extends Controller
Event::fire('core.locale.update.after', $locale);
session()->flash('success', 'Locale updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Locale']));
return redirect()->route($this->_config['redirect']);
}
@ -132,8 +132,8 @@ class LocaleController extends Controller
*/
public function destroy($id)
{
if ($this->locale->count() == 1) {
session()->flash('error', 'At least one locale is required.');
if($this->locale->count() == 1) {
session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Locale']));
} else {
Event::fire('core.locale.delete.before', $id);
@ -141,7 +141,7 @@ class LocaleController extends Controller
Event::fire('core.locale.delete.after', $id);
session()->flash('success', 'Locale deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Locale']));
}
return redirect()->back();

View File

@ -88,12 +88,12 @@ class AddressController extends Controller
$data['default_address'] = 1;
}
if ($this->address->create($data)) {
session()->flash('success', 'Address have been successfully added.');
if($this->address->create($data)) {
session()->flash('success', trans('shop::app.customer.account.address.create.success'));
return redirect()->route($this->_config['redirect']);
} else {
session()->flash('error', 'Address cannot be added.');
session()->flash('error', trans('shop::app.customer.account.address.create.error'));
return redirect()->back();
}
@ -131,7 +131,7 @@ class AddressController extends Controller
$this->address->update($data, $id);
Session()->flash('success','Address Updated Successfully.');
session()->flash('success', trans('shop::app.customer.account.address.edit.success'));
return redirect()->route('customer.address.index');
}
@ -150,7 +150,7 @@ class AddressController extends Controller
if ($address = $this->address->find($id)) {
$address->update(['default_address' => 1]);
} else {
session()->flash('success', 'Default Cannot Be Address Changed');
session()->flash('success', trans('shop::app.customer.account.address.index.default-delete'));
}
return redirect()->back();
@ -167,7 +167,7 @@ class AddressController extends Controller
{
$this->address->delete($id);
session()->flash('success', trans('shop::app.address.delete.success'));
session()->flash('success', trans('shop::app.customer.account.address.delete.success'));
return redirect()->back();
}

View File

@ -21,7 +21,7 @@ class InventorySourceController extends Controller
* @var array
*/
protected $_config;
/**
* InventorySourceRepository object
*
@ -92,7 +92,7 @@ class InventorySourceController extends Controller
Event::fire('inventory.inventory_source.create.after', $inventorySource);
session()->flash('success', 'Inventory source created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Inventory source']));
return redirect()->route($this->_config['redirect']);
}
@ -142,7 +142,7 @@ class InventorySourceController extends Controller
Event::fire('inventory.inventory_source.update.after', $inventorySource);
session()->flash('success', 'Inventory source updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Inventory source']));
return redirect()->route($this->_config['redirect']);
}
@ -155,8 +155,8 @@ class InventorySourceController extends Controller
*/
public function destroy($id)
{
if ($this->inventorySource->count() == 1) {
session()->flash('error', 'At least one inventory source is required.');
if($this->inventorySource->count() == 1) {
session()->flash('error', trans('admin::app.response.last-delete-error', ['name' => 'Inventory source']));
} else {
Event::fire('inventory.inventory_source.delete.before', $id);
@ -164,7 +164,7 @@ class InventorySourceController extends Controller
Event::fire('inventory.inventory_source.delete.after', $id);
session()->flash('success', 'Inventory source deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Inventory source']));
}
return redirect()->back();

View File

@ -145,7 +145,7 @@ class ProductController extends Controller
$product = $this->product->create(request()->all());
session()->flash('success', 'Product created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Product']));
return redirect()->route($this->_config['redirect'], ['id' => $product->id]);
}
@ -178,7 +178,7 @@ class ProductController extends Controller
{
$product = $this->product->update(request()->all(), $id);
session()->flash('success', 'Product updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Product']));
return redirect()->route($this->_config['redirect']);
}
@ -193,7 +193,7 @@ class ProductController extends Controller
{
$this->product->delete($id);
session()->flash('success', 'Product deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Product']));
return redirect()->back();
}

View File

@ -92,7 +92,7 @@ class ReviewController extends Controller
$this->productReview->create($data);
session()->flash('success', 'Review submitted successfully.');
session()->flash('success', trans('shop::app.response.submit-success', ['name' => 'Product Review']));
return redirect()->route($this->_config['redirect']);
}
@ -119,7 +119,7 @@ class ReviewController extends Controller
{
$this->productReview->delete($id);
session()->flash('success', 'Product Review Successfully Deleted');
session()->flash('success', trans('shop::app.response.delete-success', ['name' => 'Product Review']));
return redirect()->back();
}

View File

@ -3068,36 +3068,9 @@ section.review {
.account-items-list , .edit-form {
margin-top: 20px;
.table {
display: none;
}
.responsive-empty {
display: block;
}
.responsive-table {
border: 1px solid $border-color;
margin-top: 5px;
width: 100%;
display: block;
tbody td {
padding: 8px 5px;
&:first-child {
width: 25%;
}
&:last-child {
padding-left: 10px;
}
}
}
}
.account-items-list.table {
display: none;
}
.control-group .control {
@ -3217,29 +3190,6 @@ section.review {
}
}
.table{
display: none;
}
.responsive-table {
border: 1px solid $border-color;
margin-top: 5px;
width: 100%;
display: block;
tbody td {
padding: 8px 5px;
&:first-child {
width: 35%;
}
&:last-child {
padding-left: 10px;
}
}
}
.totals {
.sale-summary {
width: 100%;

View File

@ -191,7 +191,8 @@ return [
'make-default' => 'Make Default',
'default' => 'Default',
'contact' => 'Contact',
'confirm-delete' => 'Do you really want to delete this address?'
'confirm-delete' => 'Do you really want to delete this address?',
'default-delete' => 'Default Address Cannot Be Changed'
],
'create' => [
@ -205,13 +206,16 @@ return [
'city' => 'City',
'postcode' => 'Postal Code',
'phone' => 'Phone',
'submit' => 'Save Address'
'submit' => 'Save Address',
'success' => 'Address have been successfully added.',
'error' => 'Address cannot be added.'
],
'edit' => [
'page-title' => 'Customer - Edit Address',
'title' => 'Edit Address',
'submit' => 'Save Address'
'submit' => 'Save Address',
'success' => 'Address Updated Successfully.'
],
'delete' => [
'success' => 'Address Successfully Deleted',
@ -480,5 +484,12 @@ return [
'webkul' => [
'copy-right' => '© Copyright 2018 Webkul Software, All rights reserved'
]
],
'response' => [
'create-success' => ':name created successfully.',
'update-success' => ':name updated successfully.',
'delete-success' => ':name deleted successfully.',
'submit-success' => ':name submitted successfully.'
],
];

View File

@ -39,20 +39,20 @@
@foreach ($orders as $order)
<tr>
<td>
<td data-value="{{ __('shop::app.customer.account.order.index.order_id') }}">
<a href="{{ route('customer.orders.view', $order->id) }}">
#{{ $order->id }}
</a>
</td>
<td>{{ core()->formatDate($order->created_at, 'd M Y') }}</td>
<td data-value="{{ __('shop::app.customer.account.order.index.date') }}">{{ core()->formatDate($order->created_at, 'd M Y') }}</td>
<td>
<td data-value="{{ __('shop::app.customer.account.order.index.total') }}">
{{ core()->formatPrice($order->grand_total, $order->order_currency_code) }}
</td>
<td>
@if ($order->status == 'processing')
<td data-value="{{ __('shop::app.customer.account.order.index.status') }}">
@if($order->status == 'processing')
<span class="badge badge-md badge-success">Processing</span>
@elseif ($order->status == 'completed')
<span class="badge badge-md badge-success">Completed</span>
@ -81,46 +81,7 @@
</table>
</div>
@foreach ($orders as $order)
<table class="responsive-table">
<tbody>
<tr>
<td>
{{ __('shop::app.customer.account.order.index.order_id') }}
</td>
<td>
<a href="{{ route('customer.orders.view', $order->id) }}">
#{{ $order->id }}
</a>
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.index.date') }}
</td>
<td>{{ core()->formatDate($order->created_at, 'd M Y') }}</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.index.total') }}
</td>
<td>
{{ core()->formatPrice($order->grand_total, $order->order_currency_code) }}
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.index.status') }}
</td>
<td>
<span class="order-status {{ $order->status }}">{{ $order->status_label }}</span>
</td>
</tr>
</tbody>
</table>
@endforeach
@if (! $orders->count())
@if (!$orders->count())
<div class="responsive-empty">{{ __('admin::app.common.no-result-found') }}</div>
@endif

View File

@ -65,12 +65,12 @@
@foreach ($order->items as $item)
<tr>
<td>
<td data-value="{{ __('shop::app.customer.account.order.view.SKU') }}">
{{ $item->type == 'configurable' ? $item->child->sku : $item->sku }}
</td>
<td>{{ $item->name }}</td>
<td>{{ core()->formatPrice($item->price, $order->order_currency_code) }}</td>
<td>
<td data-value="{{ __('shop::app.customer.account.order.view.product-name') }}">{{ $item->name }}</td>
<td data-value="{{ __('shop::app.customer.account.order.view.price') }}">{{ core()->formatPrice($item->price, $order->order_currency_code) }}</td>
<td data-value="{{ __('shop::app.customer.account.order.view.item-status') }}">
<span class="qty-row">
{{ __('shop::app.customer.account.order.view.item-ordered', ['qty_ordered' => $item->qty_ordered]) }}
</span>
@ -87,10 +87,10 @@
{{ $item->qty_canceled ? __('shop::app.customer.account.order.view.item-canceled', ['qty_canceled' => $item->qty_canceled]) : '' }}
</span>
</td>
<td>{{ core()->formatPrice($item->total, $order->order_currency_code) }}</td>
<td>{{ number_format($item->tax_percent, 2) }}%</td>
<td>{{ core()->formatPrice($item->tax_amount, $order->order_currency_code) }}</td>
<td>{{ core()->formatPrice($item->total + $item->tax_amount, $order->order_currency_code) }}</td>
<td data-value="{{ __('shop::app.customer.account.order.view.subtotal') }}">{{ core()->formatPrice($item->total, $order->order_currency_code) }}</td>
<td data-value="{{ __('shop::app.customer.account.order.view.tax-percent') }}">{{ number_format($item->tax_percent, 2) }}%</td>
<td data-value="{{ __('shop::app.customer.account.order.view.tax-amount') }}">{{ core()->formatPrice($item->tax_amount, $order->order_currency_code) }}</td>
<td data-value="{{ __('shop::app.customer.account.order.view.grand-total') }}">{{ core()->formatPrice($item->total + $item->tax_amount, $order->order_currency_code) }}</td>
</tr>
@endforeach
</tbody>
@ -98,89 +98,6 @@
</table>
</div>
@foreach ($order->items as $item)
<table class="responsive-table">
<tbody>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.SKU') }}
</td>
<td>
{{ $item->type == 'configurable' ? $item->child->sku : $item->sku }}
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.product-name') }}
</td>
<td>{{ $item->name }}</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.price') }}
</td>
<td>
{{ core()->formatPrice($item->price, $order->order_currency_code) }}
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.item-status') }}
</td>
<td>
<span class="qty-row">
{{ __('shop::app.customer.account.order.view.item-ordered', ['qty_ordered' => $item->qty_ordered]) }}
</span>
<span class="qty-row">
{{ $item->qty_invoiced ? __('shop::app.customer.account.order.view.item-invoice', ['qty_invoiced' => $item->qty_invoiced]) : '' }}
</span>
<span class="qty-row">
{{ $item->qty_shipped ? __('shop::app.customer.account.order.view.item-shipped', ['qty_shipped' => $item->qty_shipped]) : '' }}
</span>
<span class="qty-row">
{{ $item->qty_canceled ? __('shop::app.customer.account.order.view.item-canceled', ['qty_canceled' => $item->qty_canceled]) : '' }}
</span>
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.subtotal') }}
</td>
<td>
{{ core()->formatPrice($item->total, $order->order_currency_code) }}
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.tax-percent') }}
</td>
<td>
{{ number_format($item->tax_percent, 2) }}%
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.tax-amount') }}
</td>
<td>
{{ core()->formatPrice($item->tax_amount, $order->order_currency_code) }}
</td>
</tr>
<tr>
<td>
{{ __('shop::app.customer.account.order.view.grand-total') }}
</td>
<td>
{{ core()->formatPrice($item->total + $item->tax_amount, $order->order_currency_code) }}
</td>
</tr>
</tbody>
</table>
@endforeach
<div class="totals">
<table class="sale-summary">
<tbody>

View File

@ -1,8 +1,8 @@
const { mix } = require("laravel-mix");
require("laravel-mix-merge-manifest");
var publicPath = 'publishable/assets';
// var publicPath = "../../../public/themes/default/assets";
// var publicPath = 'publishable/assets';
var publicPath = "../../../public/themes/default/assets";
mix.setPublicPath(publicPath).mergeManifest();
mix.disableNotifications();

View File

@ -17,7 +17,7 @@
data () {
return {
datepicker: null
datepicker: null
}
},

View File

@ -294,6 +294,32 @@ h2 {
}
}
@media only screen and (max-width: 770px) {
.table {
table thead {
display: none;
}
table tbody {
tr td:before {
content: attr(data-value);
font-size: 15px;
font-weight: 600;
margin-right: 20px;
}
td {
border-bottom: none;
display: block;
}
tr {
border: 1px solid #C7C7C7;
}
}
}
}
.dropdown-btn {
min-width: 150px;
text-align: left;

View File

@ -83,7 +83,7 @@ class RoleController extends Controller
Event::fire('user.role.create.after', $role);
session()->flash('success', 'Role created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'Role']));
return redirect()->route($this->_config['redirect']);
}
@ -121,7 +121,7 @@ class RoleController extends Controller
Event::fire('user.role.update.after', $role);
session()->flash('success', 'Role updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Role']));
return redirect()->route($this->_config['redirect']);
}
@ -143,7 +143,7 @@ class RoleController extends Controller
Event::fire('user.role.delete.after', $id);
session()->flash('success', 'Role source deleted successfully.');
session()->flash('success', trans('admin::app.response.delete-success', ['name' => 'Role']));
}
return redirect()->back();

View File

@ -98,7 +98,7 @@ class UserController extends Controller
Event::fire('user.admin.delete.after', $admin);
session()->flash('success', 'User created successfully.');
session()->flash('success', trans('admin::app.response.create-success', ['name' => 'User']));
return redirect()->route($this->_config['redirect']);
}
@ -146,7 +146,7 @@ class UserController extends Controller
Event::fire('user.admin.update.after', $admin);
session()->flash('success', 'User updated successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'User']));
return redirect()->route($this->_config['redirect']);
}
@ -172,7 +172,7 @@ class UserController extends Controller
Event::fire('user.admin.delete.after', $id);
session()->flash('success', 'Admin source deleted successfully.');
session()->flash('success', trans('admin::app.response.update-success', ['name' => 'Admin source']));
}
return redirect()->back();

View File

@ -30,7 +30,8 @@ $data = array(); // array to pass back data
$data['errors'] = $errors;
} else {
$currentLocation = explode("/", getcwd());
$location = str_replace('\\', '/', getcwd());
$currentLocation = explode("/", $location);
array_pop($currentLocation);
array_pop($currentLocation);
$desiredLocation = implode("/", $currentLocation);
@ -66,7 +67,7 @@ $data = array(); // array to pass back data
if ($connection == 'mysql' ) {
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
@$conn = new mysqli($servername, $username, $password, $dbname);
// check connection
if ($conn->connect_error) {

View File

@ -57,13 +57,11 @@ class Permission {
*/
private function getPermission($folder)
{
$currentLocation = explode("/", getcwd());
$location = str_replace('\\', '/', getcwd());
$currentLocation = explode("/", $location);
array_pop($currentLocation);
array_pop($currentLocation);
$desiredLocation = implode("/", $currentLocation);
$fileLocation = $desiredLocation . '/' .$folder;
return substr(sprintf('%o', fileperms($fileLocation)), -4);

View File

@ -124,23 +124,23 @@ class Requirement {
private static function composerInstall()
{
putenv('COMPOSER_HOME=' . __DIR__ . '/vendor/bin/composer');
$command = 'composer -v 2>&1';
$command = 'composer --version 2>&1';
exec($command, $data['composer'], $data['composer_install']);
return $data['composer_install'];
}
/**
* check installation for composer
* @return boolean
*/
private static function nodeInstall()
{
$command = 'npm -v 2>&1';
exec($command, $data['npm'], $data['npm_install']);
// /**
// * check installation for composer
// * @return boolean
// */
// private static function nodeInstall()
// {
// $command = 'npm -v 2>&1';
// exec($command, $data['npm'], $data['npm_install']);
return $data['npm_install'];
}
// return $data['npm_install'];
// }
/**
* Render view for class.
@ -154,7 +154,7 @@ class Requirement {
$composerInstall = $this->composerInstall();
$nodeInstall = $this->nodeInstall();
// $nodeInstall = $this->nodeInstall();
ob_start();

View File

@ -1 +0,0 @@
Deny from all

View File

@ -1 +0,0 @@
Deny from all

View File

@ -61,7 +61,8 @@ $data = array(); // array to pass back data
// if there are no errors process our form, then return a message
// getting env file location
$currentLocation = explode("/", getcwd());
$location = str_replace('\\', '/', getcwd());
$currentLocation = explode("/", $location);
array_pop($currentLocation);
array_pop($currentLocation);
$desiredLocation = implode("/", $currentLocation);
@ -119,7 +120,7 @@ $data = array(); // array to pass back data
// checking database connection(mysql only)
if ($_POST["database_connection"] == 'mysql') {
// Create connection
$conn = new mysqli($_POST["host_name"], $_POST["user_name"], $_POST["user_password"], $_POST["database_name"]);
@$conn = new mysqli($_POST["host_name"], $_POST["user_name"], $_POST["user_password"], $_POST["database_name"]);
// check connection
if ($conn->connect_error) {

View File

@ -47,7 +47,7 @@
<img src="<?php echo $src ?>">
<?php endif; ?>
<span style="margin-left: 10px"><b>Composer</b></span>
<span>(1.6.5 or higher)</span>
</div>
<div style="margin-left: 30%;">
@ -56,18 +56,6 @@
<?php endif; ?>
</div>
<div class="check" style="margin-left: 25%;">
<?php if(($nodeInstall == 0) ? $src = 'Images/green-check.svg' : $src = 'Images/red-check.svg' ): ?>
<img src="<?php echo $src ?>">
<?php endif; ?>
<span style="margin-left: 10px"><b>Node</b></span>
<span>(8.11.3 LTS or higher)</span>
</div>
<div style="margin-left: 30%;">
<?php if(!($nodeInstall == 0)): ?>
<a href="https://nodejs.org/en/" style="color: #0041FF; font-size: 16px">https://nodejs.org/en/</a>
<?php endif; ?>
</div>
</div>
<?php if(!isset($requirements['errors']) && $phpVersion['supported'] && ($nodeInstall == 0) && ($composerInstall == 0) ): ?>

View File

@ -1,6 +1,7 @@
<?php
// getting env file
$currentLocation = explode("/", getcwd());
$location = str_replace('\\', '/', getcwd());
$currentLocation = explode("/", $location);
array_pop($currentLocation);
array_pop($currentLocation);
$desiredLocation = implode("/", $currentLocation);
@ -39,7 +40,7 @@
$connection = $databaseData['DB_CONNECTION'];
if ($connection == 'mysql') {
$conn = new mysqli($servername, $username, $password, $dbname);
@$conn = new mysqli($servername, $username, $password, $dbname);
if (!$conn->connect_error) {
// retrieving admin entry

View File

@ -1,6 +1,7 @@
<?php
// getting env file
$currentLocation = explode("/", getcwd());
$location = str_replace('\\', '/', getcwd());
$currentLocation = explode("/", $location);
array_pop($currentLocation);
$desiredLocation = implode("/", $currentLocation);
$envFile = $desiredLocation . '/' . '.env';
@ -38,7 +39,7 @@
$connection = $databaseData['DB_CONNECTION'];
if ($connection == 'mysql') {
$conn = new mysqli($servername, $username, $password, $dbname);
@$conn = new mysqli($servername, $username, $password, $dbname);
if (!$conn->connect_error) {
// retrieving admin entry