datagrid routes are dynamic for all the action types and mass actions also only two type of mass actions are used as of now single button type and select box type for updating boolean columns or may be incement or decrement in the numeric type columns, while there had a new icon for the orders, invoices and shipments datagrid and minor style bug fix on sales index screens, confirm text is not mandatory when clicking on actions now it can be disabled by commenting on the confirm_text in datagrid configurations, mass actions are also route dependent and can be enabled or disabled on specific grids also.
This commit is contained in:
parent
552bf4b1f9
commit
48bece3531
|
|
@ -4,6 +4,14 @@
|
|||
|
||||
## **v0.1.2(30th of November, 2018)** - *Release*
|
||||
|
||||
* [feature] Paypal integration for online payments
|
||||
|
||||
* [feature] Newsletter subscription
|
||||
|
||||
* [feature] Email Verification for customers
|
||||
|
||||
* [feature] News letter grid for Admin
|
||||
|
||||
* #185 - [fixed] Search not working in responsive mode
|
||||
|
||||
* #187 - [fixed] We can add column "Group Name" instead of Group Id and also add this column in filter in Customers Grid
|
||||
|
|
@ -126,14 +134,6 @@
|
|||
|
||||
* [fixes] More ACL added.
|
||||
|
||||
* [feature] Paypal integration.
|
||||
|
||||
* [feature] Newsletter subscription.
|
||||
|
||||
* [feature] Email Verification for customers.
|
||||
|
||||
* [feature] News letter grid for Admin.
|
||||
|
||||
|
||||
## **v0.1.1(13th of November, 2018)** - *Release*
|
||||
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"/js/admin.js": "/js/admin.js?id=463fcd59d49e91caa65c",
|
||||
"/css/admin.css": "/css/admin.css?id=201f91bc553baa11139f"
|
||||
"/css/admin.css": "/css/admin.css?id=affdaf4eec255546f6e6"
|
||||
}
|
||||
|
|
@ -48,7 +48,7 @@ class AttributeDataGrid
|
|||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => 'admin.catalog.attributes.edit',
|
||||
'route' => 'admin.catalog.attributes.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -44,12 +44,12 @@ class AttributeFamilyDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.families.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.families.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -44,12 +44,12 @@ class CategoryDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.categories.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.categories.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -44,12 +44,12 @@ class ChannelDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.channels.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.channels.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -43,12 +43,12 @@ class CurrencyDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'route' => 'admin.currencies.edit',
|
||||
// 'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.currencies.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -42,12 +42,12 @@ class CustomerDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.customer.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.customer.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -53,13 +53,13 @@ class CustomerGroupDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.groups.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
],
|
||||
[
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.groups.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -7,13 +7,13 @@ use Webkul\Ui\DataGrid\Facades\DataGrid;
|
|||
|
||||
|
||||
/**
|
||||
* Review DataGrid
|
||||
* CustomerReview DataGrid
|
||||
*
|
||||
* @author Rahul Shukla <rahulshukla.symfony517@webkul.com> @rahul-webkul
|
||||
* @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
|
||||
*/
|
||||
|
||||
class ProductReviewDataGrid
|
||||
class CustomerReviewDataGrid
|
||||
{
|
||||
/**
|
||||
* The ProductReviewDataGrid
|
||||
|
|
@ -23,7 +23,7 @@ class ProductReviewDataGrid
|
|||
* for Reviews
|
||||
*/
|
||||
|
||||
public function createProductReviewDataGrid()
|
||||
public function createCustomerReviewDataGrid()
|
||||
{
|
||||
|
||||
return DataGrid::make([
|
||||
|
|
@ -45,12 +45,12 @@ class ProductReviewDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.customer.review.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.customer.review.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
@ -176,6 +176,6 @@ class ProductReviewDataGrid
|
|||
|
||||
public function render()
|
||||
{
|
||||
return $this->createProductReviewDataGrid()->render();
|
||||
return $this->createCustomerReviewDataGrid()->render();
|
||||
}
|
||||
}
|
||||
|
|
@ -44,12 +44,12 @@ class ExchangeRatesDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.exchange_rates.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.exchange_rates.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -42,12 +42,12 @@ class InventorySourcesDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.edit'),
|
||||
'route' => 'admin.inventory_sources.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.inventory_sources.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -43,12 +43,12 @@ class LocalesDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'route' => 'admin.locales.edit',
|
||||
// 'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.locales.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -42,8 +42,13 @@ class NewsLetterDataGrid
|
|||
|
||||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => 'admin.customers.subscribers.edit',
|
||||
// 'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.customers.subscribers.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -43,9 +43,10 @@ class OrderDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'View',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
'route' => 'admin.sales.orders.view',
|
||||
// 'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon eye-icon',
|
||||
'icon-alt' => 'View'
|
||||
],
|
||||
// [
|
||||
// 'type' => 'Delete',
|
||||
|
|
|
|||
|
|
@ -42,16 +42,11 @@ class OrderInvoicesDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'View',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
'route' => 'admin.sales.invoices.view',
|
||||
// 'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon eye-icon',
|
||||
'icon-alt' => 'View'
|
||||
],
|
||||
// [
|
||||
// 'type' => 'Delete',
|
||||
// 'route' => route('admin.datagrid.delete'),
|
||||
// 'confirm_text' => 'Do you really want to do this?',
|
||||
// 'icon' => 'icon trash-icon',
|
||||
// ]
|
||||
],
|
||||
|
||||
'join' => [
|
||||
|
|
|
|||
|
|
@ -42,9 +42,10 @@ class OrderShipmentsDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'View',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
'route' => 'admin.sales.shipments.view',
|
||||
// 'confirm_text' => 'Do you really want to view this record?',
|
||||
'icon' => 'icon eye-icon',
|
||||
'icon-alt' => 'View'
|
||||
],
|
||||
],
|
||||
|
||||
|
|
|
|||
|
|
@ -36,12 +36,12 @@ class ProductDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.products.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.catalog.products.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -44,15 +44,10 @@ class RolesDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.roles.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
]
|
||||
],
|
||||
|
||||
'join' => [
|
||||
|
|
|
|||
|
|
@ -43,12 +43,12 @@ class SliderDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.sliders.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
], [
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.sliders.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -53,13 +53,13 @@ class TaxCategoryDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.tax-categories.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
],
|
||||
[
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.tax-categories.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -52,13 +52,13 @@ class TaxRateDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.tax-rates.store',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
],
|
||||
[
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.tax-rates.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -55,13 +55,13 @@ class UserDataGrid
|
|||
'actions' => [
|
||||
[
|
||||
'type' => 'Edit',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.users.edit',
|
||||
'confirm_text' => 'Do you really want to edit this record?',
|
||||
'icon' => 'icon pencil-lg-icon',
|
||||
],
|
||||
[
|
||||
'type' => 'Delete',
|
||||
'route' => route('admin.datagrid.delete'),
|
||||
'route' => 'admin.users.delete',
|
||||
'confirm_text' => 'Do you really want to delete this record?',
|
||||
'icon' => 'icon trash-icon',
|
||||
],
|
||||
|
|
|
|||
|
|
@ -245,7 +245,7 @@ Route::group(['middleware' => ['web']], function () {
|
|||
'redirect' => 'admin.catalog.attributes.index'
|
||||
])->name('admin.catalog.attributes.update');
|
||||
|
||||
Route::get('/attributes/delete/{id}', 'Webkul\Attribute\Http\Controllers\AttributeController@destroy')->name('admin.catalog.attributes.edit');
|
||||
Route::get('/attributes/delete/{id}', 'Webkul\Attribute\Http\Controllers\AttributeController@destroy')->name('admin.catalog.attributes.delete');
|
||||
|
||||
Route::delete('/attributes/massdelete', 'Webkul\Attribute\Http\Controllers\AttributeController@massDestroy')->name('admin.catalog.attributes.massdelete');
|
||||
|
||||
|
|
@ -273,17 +273,6 @@ Route::group(['middleware' => ['web']], function () {
|
|||
Route::get('/families/delete/{id}', 'Webkul\Attribute\Http\Controllers\AttributeFamilyController@destroy')->name('admin.catalog.families.delete');
|
||||
});
|
||||
|
||||
|
||||
// Datagrid Routes
|
||||
|
||||
//for datagrid and its loading, filtering, sorting and queries
|
||||
Route::get('datagrid', 'Webkul\Admin\Http\Controllers\DataGridController@index')->name('admin.datagrid.index');
|
||||
|
||||
Route::any('datagrid/massaction/delete', 'Webkul\Admin\Http\Controllers\DataGridController@massDelete')->name('admin.datagrid.delete');
|
||||
|
||||
Route::any('datagrid/massaction/update','Webkul\Admin\Http\Controllers\DataGridController@massUpdate')->name('admin.datagrid.update');
|
||||
|
||||
|
||||
// User Routes
|
||||
Route::get('/users', 'Webkul\User\Http\Controllers\UserController@index')->defaults('_config', [
|
||||
'view' => 'admin::users.users.index'
|
||||
|
|
@ -476,11 +465,19 @@ Route::group(['middleware' => ['web']], function () {
|
|||
|
||||
// Admin Store Front Settings Route
|
||||
Route::get('/subscribers','Webkul\Core\Http\Controllers\SubscriptionController@index')->defaults('_config',[
|
||||
'view' => 'admin::settings.subscribers.index'
|
||||
])->name('admin.subscribers.index');
|
||||
'view' => 'admin::customers.subscribers.index'
|
||||
])->name('admin.customers.subscribers.index');
|
||||
|
||||
//destroy a newsletter subscription item
|
||||
Route::get('subscribers/delete/{id}', 'Webkul\Core\Http\Controllers\SubscriptionController@destroy');
|
||||
Route::get('subscribers/delete/{id}', 'Webkul\Core\Http\Controllers\SubscriptionController@destroy')->name('admin.customers.subscribers.delete');
|
||||
|
||||
Route::get('subscribers/edit/{id}', 'Webkul\Core\Http\Controllers\SubscriptionController@edit')->defaults('_config', [
|
||||
'view' => 'admin::customers.subscribers.edit'
|
||||
])->name('admin.customers.subscribers.edit');
|
||||
|
||||
Route::put('subscribers/update/{id}', 'Webkul\Core\Http\Controllers\SubscriptionController@update')->defaults('_config', [
|
||||
'redirect' => 'admin.customers.subscribers.index'
|
||||
])->name('admin.customers.subscribers.update');
|
||||
|
||||
//slider index
|
||||
Route::get('/slider','Webkul\Shop\Http\Controllers\SliderController@index')->defaults('_config',[
|
||||
|
|
@ -508,7 +505,7 @@ Route::group(['middleware' => ['web']], function () {
|
|||
])->name('admin.sliders.update');
|
||||
|
||||
//destroy a slider item
|
||||
Route::get('slider/delete/{id}', 'Webkul\Shop\Http\Controllers\SliderController@destroy');
|
||||
Route::get('slider/delete/{id}', 'Webkul\Shop\Http\Controllers\SliderController@destroy')->name('admin.sliders.delete');
|
||||
|
||||
//tax routes
|
||||
Route::get('/tax-categories', 'Webkul\Tax\Http\Controllers\TaxController@index')->defaults('_config', [
|
||||
|
|
|
|||
|
|
@ -96,6 +96,12 @@ class EventServiceProvider extends ServiceProvider
|
|||
'route' => 'admin.customer.review.index',
|
||||
'sort' => 3,
|
||||
'icon-class' => '',
|
||||
], [
|
||||
'key' => 'customers.subscribers',
|
||||
'name' => 'Newsletter Subscription',
|
||||
'route' => 'admin.customers.subscribers.index',
|
||||
'sort' => 4,
|
||||
'icon-class' => '',
|
||||
], [
|
||||
'key' => 'configuration',
|
||||
'name' => 'Configure',
|
||||
|
|
@ -200,13 +206,7 @@ class EventServiceProvider extends ServiceProvider
|
|||
'route' => 'admin.tax-rates.index',
|
||||
'sort' => 2,
|
||||
'icon-class' => '',
|
||||
], [
|
||||
'key' => 'settings.subscribers',
|
||||
'name' => 'Newsletter Subscription',
|
||||
'route' => 'admin.subscribers.index',
|
||||
'sort' => 9,
|
||||
'icon-class' => '',
|
||||
],
|
||||
]
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -4,7 +4,9 @@ return [
|
|||
'common' => [
|
||||
'no-result-found' => 'We could not find any records.',
|
||||
'country' => 'Country',
|
||||
'state' => 'State'
|
||||
'state' => 'State',
|
||||
'true' => 'True',
|
||||
'false' => 'False'
|
||||
],
|
||||
'dashboard' => [
|
||||
'title' => 'Dashboard',
|
||||
|
|
@ -507,10 +509,6 @@ return [
|
|||
'update-error' => 'Error! Tax Rate Cannot Be Updated',
|
||||
'delete' => 'Tax Rate Deleted Successfully',
|
||||
'atleast-one' => 'Cannot Delete Last Tax Rate'
|
||||
],
|
||||
|
||||
'subscribers' => [
|
||||
'title' => 'News Letter Subscribers'
|
||||
]
|
||||
],
|
||||
|
||||
|
|
@ -549,6 +547,15 @@ return [
|
|||
'rating' => 'Rating',
|
||||
'status' => 'Status',
|
||||
'comment' => 'Comment'
|
||||
],
|
||||
'subscribers' => [
|
||||
'title' => 'News Letter Subscribers',
|
||||
'title-edit' => 'Edit News Letter Subscriber',
|
||||
'email' => 'Email',
|
||||
'is_subscribed' => 'Subscribed',
|
||||
'edit-btn-title' => 'Update Subscriber',
|
||||
'update-success' => 'You updated subscriber',
|
||||
'update-failed' => 'Error! You cannot unsubscribed the subscriber'
|
||||
]
|
||||
],
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
</div>
|
||||
|
||||
<div class="page-content">
|
||||
@inject('review','Webkul\Admin\DataGrids\ProductReviewDataGrid')
|
||||
@inject('review','Webkul\Admin\DataGrids\CustomerReviewDataGrid')
|
||||
{!! $review->render() !!}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,43 @@
|
|||
@extends('admin::layouts.content')
|
||||
|
||||
@section('page_title')
|
||||
{{ __('admin::app.customers.subscribers.title-edit') }}
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
|
||||
<div class="content">
|
||||
<form method="POST" action="{{ route('admin.customers.subscribers.update', $subscriber->id) }}" @submit.prevent="onSubmit" enctype="multipart/form-data">
|
||||
<div class="page-header">
|
||||
<div class="page-title">
|
||||
<h1>{{ __('admin::app.customers.subscribers.title-edit') }}</h1>
|
||||
</div>
|
||||
|
||||
<div class="page-action">
|
||||
<button type="submit" class="btn btn-lg btn-primary">
|
||||
{{ __('admin::app.customers.subscribers.edit-btn-title') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@csrf
|
||||
@method('PUT')
|
||||
|
||||
<div class="control-group" :class="[errors.has('email') ? 'has-error' : '']">
|
||||
<label for="title">{{ __('admin::app.customers.subscribers.email') }}</label>
|
||||
<input type="text" class="control" name="email" v-validate="'required'" data-vv-as=""{{ __('admin::app.customers.subscribers.email') }}"" value="{{ $subscriber->email ?: old('email') }}" disabled>
|
||||
<span class="control-error" v-if="errors.has('email')">@{{ errors.first('email') }}</span>
|
||||
</div>
|
||||
|
||||
<div class="control-group" :class="[errors.has('is_subscribed') ? 'has-error' : '']">
|
||||
<label for="title">{{ __('admin::app.customers.subscribers.is_subscribed') }}</label>
|
||||
|
||||
<select class="control" name="is_subscribed" v-validate="'required'" data-vv-as=""{{ __('admin::app.customers.subscribers.is_subscribed') }}"">
|
||||
<option value="1" @if($subscriber->is_subscribed == 1) selected @endif>{{ __('admin::app.common.true') }}</option>
|
||||
<option value="0" @if($subscriber->is_subscribed == 0) selected @endif>{{ __('admin::app.common.false') }}</option>
|
||||
</select>
|
||||
|
||||
<span class="control-error" v-if="errors.has('is_subscribed')">@{{ errors.first('is_subscribed') }}</span>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
@extends('admin::layouts.content')
|
||||
|
||||
@section('page_title')
|
||||
{{ __('admin::app.settings.subscribers.title') }}
|
||||
{{ __('admin::app.customers.subscribers.title') }}
|
||||
@stop
|
||||
|
||||
@section('content')
|
||||
|
|
@ -10,12 +10,12 @@
|
|||
<div class="content">
|
||||
<div class="page-header">
|
||||
<div class="page-title">
|
||||
<h1>{{ __('admin::app.settings.subscribers.title') }}</h1>
|
||||
<h1>{{ __('admin::app.customers.subscribers.title') }}</h1>
|
||||
</div>
|
||||
|
||||
{{-- <div class="page-action">
|
||||
<a href="{{ route('admin.subscribers.store') }}" class="btn btn-lg btn-primary">
|
||||
{{ __('admin::app.settings.subscribers.add-title') }}
|
||||
{{ __('admin::app.customers.subscribers.add-title') }}
|
||||
</a>
|
||||
</div> --}}
|
||||
</div>
|
||||
|
|
@ -5,7 +5,7 @@
|
|||
@stop
|
||||
|
||||
@section('content')
|
||||
<div class="content full-page">
|
||||
<div class="content">
|
||||
<div class="page-header">
|
||||
<div class="page-title">
|
||||
<h1>{{ __('admin::app.sales.invoices.title') }}</h1>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
@stop
|
||||
|
||||
@section('content')
|
||||
<div class="content full-page">
|
||||
<div class="content">
|
||||
<div class="page-header">
|
||||
<div class="page-title">
|
||||
<h1>{{ __('admin::app.sales.orders.title') }}</h1>
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
@stop
|
||||
|
||||
@section('content')
|
||||
<div class="content full-page">
|
||||
<div class="content">
|
||||
<div class="page-header">
|
||||
<div class="page-title">
|
||||
<h1>{{ __('admin::app.sales.shipments.title') }}</h1>
|
||||
|
|
|
|||
|
|
@ -46,6 +46,41 @@ class SubscriptionController extends Controller
|
|||
return view($this->_config['view']);
|
||||
}
|
||||
|
||||
/**
|
||||
* To unsubscribe the user without deleting the resource of the subscribed user
|
||||
*
|
||||
* @param integer $id
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function edit($id) {
|
||||
$subscriber = $this->subscribers->findOneByField('id', $id);
|
||||
|
||||
return view($this->_config['view'])->with('subscriber', $subscriber);
|
||||
}
|
||||
|
||||
/**
|
||||
* To unsubscribe the user without deleting the resource of the subscribed user
|
||||
*
|
||||
* @param integer $id
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function update($id) {
|
||||
$data = request()->all();
|
||||
|
||||
$subscriber = $this->subscribers->findOneByField('id', $id);
|
||||
|
||||
$result = $subscriber->update($data);
|
||||
|
||||
if($result)
|
||||
session()->flash('success', trans('admin::app.settings.subscribers.update-success'));
|
||||
else
|
||||
session()->flash('error', trans('admin::app.settings.subscribers.update-failed'));
|
||||
|
||||
return redirect()->route($this->_config['redirect']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove the specified resource from storage.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -26,7 +26,12 @@ class CurrencyRepository extends Repository
|
|||
if($this->model->count() == 1) {
|
||||
return false;
|
||||
} else {
|
||||
$this->currency->delete($id);
|
||||
if($this->model->destroy($id)) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 51.1 (57501) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>Icon-Delete</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs></defs>
|
||||
<g id="Icon-Delete" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M12.5,18 C15.9978034,18 19.1644701,16 22,12 C19.1644701,8 15.9978034,6 12.5,6 C9.00219658,6 5.83552992,8 3,12 C5.83552992,16 9.00219658,18 12.5,18 Z" id="Oval" stroke="#979797" stroke-width="2"></path>
|
||||
<circle id="Oval-13" stroke="#979797" stroke-width="2" cx="12.1389974" cy="12.1389974" r="2.1389974"></circle>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 842 B |
File diff suppressed because one or more lines are too long
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"/js/ui.js": "/js/ui.js",
|
||||
"/css/ui.css": "/css/ui.css"
|
||||
"/js/ui.js": "/js/ui.js?id=b25a07d206dd0b89048f",
|
||||
"/css/ui.css": "/css/ui.css?id=8d70cfd8a1966fa0e9f8"
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<!-- Generator: Sketch 51.1 (57501) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>Icon-Delete</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs></defs>
|
||||
<g id="Icon-Delete" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round">
|
||||
<path d="M12.5,18 C15.9978034,18 19.1644701,16 22,12 C19.1644701,8 15.9978034,6 12.5,6 C9.00219658,6 5.83552992,8 3,12 C5.83552992,16 9.00219658,18 12.5,18 Z" id="Oval" stroke="#979797" stroke-width="2"></path>
|
||||
<circle id="Oval-13" stroke="#979797" stroke-width="2" cx="12.1389974" cy="12.1389974" r="2.1389974"></circle>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 842 B |
|
|
@ -99,6 +99,12 @@
|
|||
height: 24px;
|
||||
}
|
||||
|
||||
.eye-icon {
|
||||
background-image: url("../images/Icon-eye.svg");
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
}
|
||||
|
||||
.search-icon {
|
||||
background-image: url("../images/icon-search.svg");
|
||||
width: 24px;
|
||||
|
|
|
|||
|
|
@ -8,26 +8,39 @@
|
|||
@endif
|
||||
@foreach ($results as $result)
|
||||
<tr>
|
||||
<td class="">
|
||||
@if(count($massoperations))
|
||||
<td>
|
||||
<span class="checkbox">
|
||||
<input type="checkbox" class="indexers" id="{{ $result->id }}" name="checkbox[]">
|
||||
<label class="checkbox-view" for="checkbox1"></label>
|
||||
</span>
|
||||
</td>
|
||||
@endif
|
||||
@foreach ($columns as $column)
|
||||
@if(isset($column->closure))
|
||||
@if($column->closure == true)
|
||||
<td class="">{!! $column->render($result) !!}</td>
|
||||
<td>{!! $column->render($result) !!}</td>
|
||||
@endif
|
||||
@else
|
||||
<td class="">{{ $column->render($result) }}</td>
|
||||
<td>{{ $column->render($result) }}</td>
|
||||
@endif
|
||||
@endforeach
|
||||
@if(count($actions))
|
||||
<td class="action">
|
||||
@foreach($actions as $action)
|
||||
<a @if($action['type'] == "Edit") href="{{ url()->current().'/edit/'.$result->id }}" @elseif($action['type'] == "View") href="{{ url()->current().'/view/'.$result->id }}" @elseif($action['type']=="Delete") href="{{ url()->current().'/delete/'.$result->id }}" @endif class="Action-{{ $action['type'] }}" id="{{ $result->id }}" onclick="return confirm_click('{{ $action['confirm_text'] }}');">
|
||||
<i class="{{ $action['icon'] }}"></i>
|
||||
<a
|
||||
href="{{ route($action['route'], $result->id) }}"
|
||||
class="Action-{{ $action['type'] }}"
|
||||
id="{{ $result->id }}"
|
||||
@if(isset($action['confirm_text']))
|
||||
onclick="return confirm_click('{{ $action['confirm_text'] }}');"
|
||||
@endif
|
||||
>
|
||||
<i
|
||||
@if(isset($action['icon-alt']))
|
||||
title="{{ $action['icon-alt'] }}"
|
||||
@endif
|
||||
class="{{ $action['icon'] }}"></i>
|
||||
</a>
|
||||
@endforeach
|
||||
</td>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
<thead>
|
||||
@if(count($massoperations))
|
||||
<tr class="mass-action" style="display: none; height:63px;">
|
||||
<th colspan="{{ count($columns)+1 }}" style="width: 100%;">
|
||||
<div class="mass-action-wrapper">
|
||||
|
|
@ -70,13 +71,16 @@
|
|||
</div>
|
||||
</th>
|
||||
</tr>
|
||||
@endif
|
||||
<tr class="table-grid-header">
|
||||
@if(count($massoperations))
|
||||
<th>
|
||||
<span class="checkbox">
|
||||
<input type="checkbox" id="mastercheckbox">
|
||||
<label class="checkbox-view" for="checkbox"></label>
|
||||
</span>
|
||||
</th>
|
||||
@endif
|
||||
@foreach ($columns as $column)
|
||||
@if($column->sortable == "true")
|
||||
<th class="grid_head sortable"
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
const { mix } = require("laravel-mix");
|
||||
require("laravel-mix-merge-manifest");
|
||||
|
||||
// var publicPath = 'publishable/assets';
|
||||
var publicPath = "../../../public/vendor/webkul/ui/assets";
|
||||
var publicPath = 'publishable/assets';
|
||||
// var publicPath = "../../../public/vendor/webkul/ui/assets";
|
||||
|
||||
mix.setPublicPath(publicPath).mergeManifest();
|
||||
mix.disableNotifications();
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace Webkul\User\Http\Middleware;
|
|||
|
||||
use Closure;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Route;
|
||||
|
||||
class Bouncer
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue