diff --git a/packages/Webkul/Admin/src/Http/routes.php b/packages/Webkul/Admin/src/Http/routes.php
index b34b26731..9dfd67ec5 100644
--- a/packages/Webkul/Admin/src/Http/routes.php
+++ b/packages/Webkul/Admin/src/Http/routes.php
@@ -442,28 +442,29 @@ Route::group(['middleware' => ['web']], function () {
Route::put('/account', 'Webkul\User\Http\Controllers\AccountController@update')->name('admin.account.update');
// Admin Store Front Settings Route
+ //slider index
Route::get('/slider','Webkul\Shop\Http\Controllers\SliderController@index')->defaults('_config',[
'view' => 'admin::settings.sliders.index'
])->name('admin.sliders.index');
- // Admin Store Front Settings Route
-
- //slider create
+ //slider create show
Route::get('slider/create','Webkul\Shop\Http\Controllers\SliderController@create')->defaults('_config',[
'view' => 'admin::settings.sliders.create'
])->name('admin.sliders.create');
+ //slider create show
Route::post('slider/create','Webkul\Shop\Http\Controllers\SliderController@store')->defaults('_config',[
'redirect' => 'admin.sliders.index'
])->name('admin.sliders.store');
- //slider edit
+ //slider edit show
Route::get('slider/edit/{id}','Webkul\Shop\Http\Controllers\SliderController@edit')->defaults('_config',[
'view' => 'admin::settings.sliders.edit'
])->name('admin.sliders.edit');
+ //slider edit update
Route::post('slider/edit/{id}','Webkul\Shop\Http\Controllers\SliderController@update')->defaults('_config',[
- 'redirect' => 'admin::sliders.index'
+ 'redirect' => 'admin.sliders.index'
])->name('admin.sliders.update');
//destroy a slider item
diff --git a/packages/Webkul/Admin/src/Resources/lang/en/app.php b/packages/Webkul/Admin/src/Resources/lang/en/app.php
index 99fced6e5..fea688aaf 100644
--- a/packages/Webkul/Admin/src/Resources/lang/en/app.php
+++ b/packages/Webkul/Admin/src/Resources/lang/en/app.php
@@ -423,7 +423,13 @@ return [
'general' => 'General',
'image' => 'Image',
'content' => 'Content',
- 'channels' => 'Channel'
+ 'channels' => 'Channel',
+ 'created-success' => 'Slider Item Created Successfully',
+ 'created-fault' => 'Error In Creating Slider Item',
+ 'update-success' => 'Slider Item Successfully Updated',
+ 'update-fail' => 'Slider Cannot Be Updated',
+ 'delete-success' => 'Cannot Delete The Last Slider Item',
+ 'delete-fail' => 'Slider Item Successfully Deleted'
],
],
'customers' => [
diff --git a/packages/Webkul/Admin/src/Resources/views/settings/sliders/create.blade.php b/packages/Webkul/Admin/src/Resources/views/settings/sliders/create.blade.php
index cf3836da4..7eafcc64f 100644
--- a/packages/Webkul/Admin/src/Resources/views/settings/sliders/create.blade.php
+++ b/packages/Webkul/Admin/src/Resources/views/settings/sliders/create.blade.php
@@ -43,14 +43,6 @@
-
- {{--
-
-
-
- @{{ errors.first('image') }}
-
- --}}
diff --git a/packages/Webkul/Core/src/Repositories/SliderRepository.php b/packages/Webkul/Core/src/Repositories/SliderRepository.php
index 76dc32fb2..f7f31547d 100644
--- a/packages/Webkul/Core/src/Repositories/SliderRepository.php
+++ b/packages/Webkul/Core/src/Repositories/SliderRepository.php
@@ -48,13 +48,16 @@ class SliderRepository extends Repository
$dir = 'slider_images/' . $channelName;
$uploaded = false;
+ $image = false;
- $image = $first = array_first($data['image'], function ($value, $key) {
- if($value)
- return $value;
- else
- return false;
- });
+ if(isset($data['image'])) {
+ $image = $first = array_first($data['image'], function ($value, $key) {
+ if($value)
+ return $value;
+ else
+ return false;
+ });
+ }
if($image != false) {
$uploaded = $image->store($dir);
@@ -82,12 +85,16 @@ class SliderRepository extends Repository
$dir = 'slider_images/' . $channelName;
$uploaded = false;
- $image = $first = array_first($data['image'], function ($value, $key) {
- if($value)
- return $value;
- else
- return false;
- });
+ $image = false;
+
+ if(isset($data['image'])) {
+ $image = $first = array_first($data['image'], function ($value, $key) {
+ if($value)
+ return $value;
+ else
+ return false;
+ });
+ }
if($image != false) {
$uploaded = $image->store($dir);
diff --git a/packages/Webkul/Shop/src/Http/Controllers/CategoryController.php b/packages/Webkul/Shop/src/Http/Controllers/CategoryController.php
index ed8c81a0e..1230004fe 100644
--- a/packages/Webkul/Shop/src/Http/Controllers/CategoryController.php
+++ b/packages/Webkul/Shop/src/Http/Controllers/CategoryController.php
@@ -2,6 +2,8 @@
namespace Webkul\Shop\Http\Controllers;
+use Webkul\Shop\Http\Controllers\Controller;
+
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Webkul\Category\Repositories\CategoryRepository as Category;
diff --git a/packages/Webkul/Shop/src/Http/Controllers/HomeController.php b/packages/Webkul/Shop/src/Http/Controllers/HomeController.php
index e2584d011..db2056bee 100644
--- a/packages/Webkul/Shop/src/Http/Controllers/HomeController.php
+++ b/packages/Webkul/Shop/src/Http/Controllers/HomeController.php
@@ -2,9 +2,9 @@
namespace Webkul\Shop\Http\Controllers;
+use Webkul\Shop\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
-use Illuminate\Routing\Controller;
use Webkul\Core\Repositories\SliderRepository as Sliders;
/**
diff --git a/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php b/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php
index 534f2cda9..c08822b0d 100644
--- a/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php
+++ b/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php
@@ -2,6 +2,7 @@
namespace Webkul\Shop\Http\Controllers;
+use Webkul\Shop\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Auth;
diff --git a/packages/Webkul/Shop/src/Http/Controllers/ReviewController.php b/packages/Webkul/Shop/src/Http/Controllers/ReviewController.php
index 54253c6fb..6b52ca9ae 100644
--- a/packages/Webkul/Shop/src/Http/Controllers/ReviewController.php
+++ b/packages/Webkul/Shop/src/Http/Controllers/ReviewController.php
@@ -94,7 +94,7 @@ class ReviewController extends Controller
'title' => 'required',
]);
- $data=$request->all();
+ $data = request()->all();
$customer_id = auth()->guard('customer')->user()->id;
diff --git a/packages/Webkul/Shop/src/Http/Controllers/SearchController.php b/packages/Webkul/Shop/src/Http/Controllers/SearchController.php
new file mode 100644
index 000000000..0b2fc348e
--- /dev/null
+++ b/packages/Webkul/Shop/src/Http/Controllers/SearchController.php
@@ -0,0 +1,35 @@
+ @prashant-webkul
+ * @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com)
+ */
+
+ class SearchController extends controller
+{
+ protected $_config;
+ protected $sliders;
+ protected $current_channel;
+
+ public function __construct(Sliders $s)
+ {
+ $this->_config = request('_config');
+
+ $this->sliders = $s;
+ }
+
+ /**
+ * Index to handle the view loaded with the search results
+ */
+ public function index($data) {
+ return redirect()->back();
+ }
+}
diff --git a/packages/Webkul/Shop/src/Http/Controllers/SliderController.php b/packages/Webkul/Shop/src/Http/Controllers/SliderController.php
index e238eee1f..6d243afc0 100644
--- a/packages/Webkul/Shop/src/Http/Controllers/SliderController.php
+++ b/packages/Webkul/Shop/src/Http/Controllers/SliderController.php
@@ -2,9 +2,10 @@
namespace Webkul\Shop\Http\Controllers;
+use Webkul\Shop\Http\Controllers\Controller;
+
use Illuminate\Http\Request;
use Illuminate\Http\Response;
-use Illuminate\Routing\Controller;
use Webkul\Core\Repositories\SliderRepository as Slider;
/**
@@ -53,9 +54,18 @@ class SliderController extends controller
* @return response
*/
public function store() {
- $this->slider->save(request()->all());
+ $this->validate(request(), [
+ 'title' => 'string|required',
+ 'channel_id' => 'required',
+ 'image' => 'required',
+ ]);
- session()->flash('success', 'Slider created successfully.');
+ $result = $this->slider->save(request()->all());
+
+ if($result)
+ session()->flash('success', trans('admin::app.settings.sliders.created-success'));
+ else
+ session()->flash('success', trans('admin::app.settings.sliders.created-fail'));
return redirect()->route($this->_config['redirect']);
}
@@ -77,15 +87,20 @@ class SliderController extends controller
* @return response
*/
public function update($id) {
+ $this->validate(request(), [
+ 'title' => 'string|required',
+ 'channel_id' => 'required',
+ ]);
+
$result = $this->slider->updateItem(request()->all(), $id);
if($result) {
- session()->flash('success', 'Slider Item Successfully Updated');
+ session()->flash('success', trans('admin::app.settings.sliders.update-success'));
} else {
- session()->flash('error', 'Slider Cannot Be Updated');
+ session()->flash('error', trans('admin::app.settings.sliders.update-fail'));
}
- return redirect()->back();
+ return redirect()->route($this->_config['redirect']);
}
/**
@@ -95,11 +110,11 @@ class SliderController extends controller
*/
public function destroy($id) {
if($this->slider->findWhere(['channel_id' => core()->getCurrentChannel()->id])->count() == 1) {
- session()->flash('warning', 'Cannot Delete The Last Slider Item');
+ session()->flash('warning', trans('admin::app.settings.sliders.delete-success'));
} else {
$this->slider->destroy($id);
- session()->flash('success', 'Slider Item Successfully Deleted');
+ session()->flash('success', trans('admin::app.settings.sliders.delete-fail'));
}
return redirect()->back();
diff --git a/packages/Webkul/Shop/src/Http/routes.php b/packages/Webkul/Shop/src/Http/routes.php
index a109fbf9e..66db30e76 100644
--- a/packages/Webkul/Shop/src/Http/routes.php
+++ b/packages/Webkul/Shop/src/Http/routes.php
@@ -2,187 +2,224 @@
Route::group(['middleware' => ['web', 'theme', 'locale', 'currency']], function () {
+ //Store front home
Route::get('/', 'Webkul\Shop\Http\Controllers\HomeController@index')->defaults('_config', [
'view' => 'shop::home.index'
])->name('shop.home.index');
+ //Store front header nav-menu fetch
Route::get('/categories/{slug}', 'Webkul\Shop\Http\Controllers\CategoryController@index')->defaults('_config', [
'view' => 'shop::products.index'
]);
//checkout and cart
+ //Cart Items(listing)
Route::get('checkout/cart', 'Webkul\Shop\Http\Controllers\CartController@index')->defaults('_config', [
'view' => 'shop::checkout.cart.index'
])->name('shop.checkout.cart.index');
+ //Cart Items Add
Route::post('checkout/cart/add/{id}', 'Webkul\Shop\Http\Controllers\CartController@add')->name('cart.add');
+ //Cart Items Add Configurable for more
Route::get('checkout/cart/addconfigurable/{slug}', 'Webkul\Shop\Http\Controllers\CartController@addconfigurable')->name('cart.add.configurable');
+ //Cart Items Remove
Route::get('checkout/cart/remove/{id}', 'Webkul\Shop\Http\Controllers\CartController@remove')->name('cart.remove');
+ //Cart Update Before Checkout
Route::post('/checkout/cart', 'Webkul\Shop\Http\Controllers\CartController@updateBeforeCheckout')->defaults('_config',[
'redirect' => 'shop.checkout.cart.index'
])->name('shop.checkout.cart.update');
+ //Cart Items Remove
Route::get('/checkout/cart/remove/{id}', 'Webkul\Shop\Http\Controllers\CartController@remove')->defaults('_config',[
'redirect' => 'shop.checkout.cart.index'
])->name('shop.checkout.cart.remove');
+ //Checkout Index page
Route::get('/checkout/onepage', 'Webkul\Shop\Http\Controllers\OnepageController@index')->defaults('_config', [
'view' => 'shop::checkout.onepage'
])->name('shop.checkout.onepage.index');
+ //Checkout Save Address Form Store
Route::post('/checkout/save-address', 'Webkul\Shop\Http\Controllers\OnepageController@saveAddress')->name('shop.checkout.save-address');
+ //Checkout Save Shipping Address Form Store
Route::post('/checkout/save-shipping', 'Webkul\Shop\Http\Controllers\OnepageController@saveShipping')->name('shop.checkout.save-shipping');
+ //Checkout Save Payment Method Form
Route::post('/checkout/save-payment', 'Webkul\Shop\Http\Controllers\OnepageController@savePayment')->name('shop.checkout.save-payment');
+ //Checkout Save Order
Route::post('/checkout/save-order', 'Webkul\Shop\Http\Controllers\OnepageController@saveOrder')->name('shop.checkout.save-order');
+ //Checkout Order Successfull
Route::get('/checkout/success', 'Webkul\Shop\Http\Controllers\OnepageController@success')->defaults('_config', [
'view' => 'shop::checkout.success'
])->name('shop.checkout.success');
- //buy now
+ //Shop buynow button action
Route::get('buynow/{id}', 'Webkul\Shop\Http\Controllers\CartController@test')->name('shop.product.buynow');
+ //Show Product Details Page(For individually Viewable Product)
Route::get('/products/{slug}', 'Webkul\Shop\Http\Controllers\ProductController@index')->defaults('_config', [
'view' => 'shop::products.view'
])->name('shop.products.index');
-
- // Product Review routes
+ // Show Product Review Form
Route::get('/reviews/{slug}', 'Webkul\Shop\Http\Controllers\ReviewController@show')->defaults('_config', [
'view' => 'shop::products.reviews.index'
])->name('shop.reviews.index');
+ // Show Product Review(listing)
Route::get('/product/{slug}/review', 'Webkul\Shop\Http\Controllers\ReviewController@create')->defaults('_config', [
'view' => 'shop::products.reviews.create'
])->name('shop.reviews.create');
+ // Show Product Review Form Store
Route::post('/product/{slug}/review', 'Webkul\Shop\Http\Controllers\ReviewController@store')->defaults('_config', [
'redirect' => 'customer.reviews.index'
])->name('shop.reviews.store');
-
//customer routes starts here
Route::prefix('customer')->group(function () {
// forgot Password Routes
+ // Forgot Password Form Show
Route::get('/forgot-password', 'Webkul\Customer\Http\Controllers\ForgotPasswordController@create')->defaults('_config', [
'view' => 'shop::customers.signup.forgot-password'
])->name('customer.forgot-password.create');
+ // Forgot Password Form Store
Route::post('/forgot-password', 'Webkul\Customer\Http\Controllers\ForgotPasswordController@store')->name('customer.forgot-password.store');
- //Reset Password create
+ // Reset Password Form Show
Route::get('/reset-password/{token}', 'Webkul\Customer\Http\Controllers\ResetPasswordController@create')->defaults('_config', [
'view' => 'shop::customers.signup.reset-password'
])->name('customer.reset-password.create');
+ // Reset Password Form Store
Route::post('/reset-password', 'Webkul\Customer\Http\Controllers\ResetPasswordController@store')->defaults('_config', [
'redirect' => 'customer.session.index'
])->name('customer.reset-password.store');
// Login Routes
+ // Login form show
Route::get('login', 'Webkul\Customer\Http\Controllers\SessionController@show')->defaults('_config', [
'view' => 'shop::customers.session.index',
])->name('customer.session.index');
+ // Login form store
Route::post('login', 'Webkul\Customer\Http\Controllers\SessionController@create')->defaults('_config', [
'redirect' => 'customer.profile.index'
])->name('customer.session.create');
// Registration Routes
+ //registration form show
Route::get('register', 'Webkul\Customer\Http\Controllers\RegistrationController@show')->defaults('_config', [
- 'view' => 'shop::customers.signup.index' //hint path
+ 'view' => 'shop::customers.signup.index'
])->name('customer.register.index');
+ //registration form store
Route::post('register', 'Webkul\Customer\Http\Controllers\RegistrationController@create')->defaults('_config', [
'redirect' => 'customer.account.index',
- ])->name('customer.register.create'); //redirect attribute will get changed immediately to account.index when account's index page will be made
+ ])->name('customer.register.create');
// Auth Routes
Route::group(['middleware' => ['customer']], function () {
- //route for logout which will be under the auth guard of the customer by default
+ //Customer logout
Route::get('logout', 'Webkul\Customer\Http\Controllers\SessionController@destroy')->defaults('_config', [
'redirect' => 'customer.session.index'
])->name('customer.session.destroy');
- //wishlist
+ //Customer Wishlist add
Route::get('wishlist/add/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@add')->name('customer.wishlist.add');
+ //Customer Wishlist remove
Route::get('wishlist/remove/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@remove')->name('customer.wishlist.remove');
+ //Customer Wishlist move to cart
Route::get('wishlist/move/{id}', 'Webkul\Customer\Http\Controllers\WishlistController@move')->name('customer.wishlist.move');
+ //Customer Wishlist move all to cart
Route::get('wishlist/moveall', 'Webkul\Customer\Http\Controllers\WishlistController@moveAll')->name('customer.wishlist.moveall');
//customer account
Route::prefix('account')->group(function () {
+ //Customer Dashboard Route
Route::get('index', 'Webkul\Customer\Http\Controllers\AccountController@index')->defaults('_config', [
'view' => 'shop::customers.account.index'
])->name('customer.account.index');
- /* Profile Routes Starts Here */
+ //Customer Profile Show
Route::get('profile', 'Webkul\Customer\Http\Controllers\CustomerController@index')->defaults('_config', [
'view' => 'shop::customers.account.profile.index'
])->name('customer.profile.index');
- //profile edit
+ //Customer Profile Edit Form Show
Route::get('profile/edit', 'Webkul\Customer\Http\Controllers\CustomerController@editIndex')->defaults('_config', [
'view' => 'shop::customers.account.profile.edit'
])->name('customer.profile.edit');
+ //Customer Profile Edit Form Store
Route::post('profile/edit', 'Webkul\Customer\Http\Controllers\CustomerController@edit')->defaults('_config', [
'view' => 'shop::customers.account.profile.edit'
])->name('customer.profile.edit');
/* Profile Routes Ends Here */
/* Routes for Addresses */
+ //Customer Address Show
Route::get('address/index', 'Webkul\Customer\Http\Controllers\AddressController@index')->defaults('_config', [
'view' => 'shop::customers.account.address.address'
])->name('customer.address.index');
+ //Customer Address Create Form Show
Route::get('address/create', 'Webkul\Customer\Http\Controllers\AddressController@show')->defaults('_config', [
'view' => 'shop::customers.account.address.create'
])->name('customer.address.create');
+ //Customer Address Create Form Store
Route::post('address/create', 'Webkul\Customer\Http\Controllers\AddressController@create')->defaults('_config', [
'view' => 'shop::customers.account.address.address',
'redirect' => 'customer.address.index'
])->name('customer.address.create');
+ //Customer Address Edit Form Show
Route::get('address/edit/{id}', 'Webkul\Customer\Http\Controllers\AddressController@showEdit')->defaults('_config', [
'view' => 'shop::customers.account.address.edit'
])->name('customer.address.edit');
+ //Customer Address Edit Form Store
Route::post('address/edit/{id}', 'Webkul\Customer\Http\Controllers\AddressController@edit')->defaults('_config', [
'redirect' => 'customer.address.index'
])->name('customer.address.edit');
+ //Customer Address Make Default
Route::get('address/default/{id}', 'Webkul\Customer\Http\Controllers\AddressController@makeDefault')->name('make.default.address');
+ //Customer Address Delete
Route::get('address/delete/{id}', 'Webkul\Customer\Http\Controllers\AddressController@destroy')->name('address.delete');
- /* Routes for Addresses ends here */
/* Wishlist route */
+ //Customer wishlist(listing)
Route::get('wishlist', 'Webkul\Customer\Http\Controllers\WishlistController@index')->defaults('_config', [
'view' => 'shop::customers.account.wishlist.wishlist'
])->name('customer.wishlist.index');
/* Orders route */
+ //Customer orders(listing)
Route::get('orders', 'Webkul\Shop\Http\Controllers\OrderController@index')->defaults('_config', [
'view' => 'shop::customers.account.orders.index'
])->name('customer.orders.index');
+ //Customer orders view summary and status
Route::get('orders/view/{id}', 'Webkul\Shop\Http\Controllers\OrderController@view')->defaults('_config', [
'view' => 'shop::customers.account.orders.view'
])->name('customer.orders.view');
/* Reviews route */
+ //Customer reviews(listing) only approved
Route::get('reviews', 'Webkul\Customer\Http\Controllers\CustomerController@reviews')->defaults('_config', [
'view' => 'shop::customers.account.reviews.index'
])->name('customer.reviews.index');
diff --git a/packages/Webkul/Shop/src/Resources/assets/js/components/image-slider.vue b/packages/Webkul/Shop/src/Resources/assets/js/components/image-slider.vue
index 23786c234..ad9436f3d 100644
--- a/packages/Webkul/Shop/src/Resources/assets/js/components/image-slider.vue
+++ b/packages/Webkul/Shop/src/Resources/assets/js/components/image-slider.vue
@@ -5,7 +5,7 @@
-
-
+