customer fixes

This commit is contained in:
rahul shukla 2018-10-15 10:22:00 +05:30
parent c857dde9f4
commit ba2ad4bd28
11 changed files with 298 additions and 329 deletions

View File

@ -49,10 +49,6 @@ Route::group(['middleware' => ['web']], function () {
'view' => 'admin::customers.orders.index'
])->name('admin.customer.orders.index');
Route::get('customer/reviews', 'Webkul\Product\Http\Controllers\ReviewController@index')->defaults('_config',[
'view' => 'admin::customers.review.index'
])->name('admin.customer.review.index');
Route::get('customer/create', 'Webkul\Core\Http\Controllers\CustomerController@create')->defaults('_config',[
'view' => 'admin::customers.create'
])->name('admin.customer.create');
@ -61,14 +57,6 @@ Route::group(['middleware' => ['web']], function () {
'redirect' => 'admin.customer.index'
])->name('admin.customer.store');
Route::get('customer/reviews/edit/{id}', 'Webkul\Product\Http\Controllers\ReviewController@edit')->defaults('_config',[
'view' => 'admin::customers.review.edit'
])->name('admin.customer.review.edit');
Route::put('customer/reviews/edit/{id}', 'Webkul\Product\Http\Controllers\ReviewController@update')->defaults('_config', [
'redirect' => 'admin.customer.review.index'
])->name('admin.customer.review.update');
Route::get('customer/edit/{id}', 'Webkul\Core\Http\Controllers\CustomerController@edit')->defaults('_config',[
'view' => 'admin::customers.edit'
])->name('admin.customer.edit');
@ -77,6 +65,18 @@ Route::group(['middleware' => ['web']], function () {
'redirect' => 'admin.customer.index'
])->name('admin.customer.update');
Route::get('reviews', 'Webkul\Product\Http\Controllers\ReviewController@index')->defaults('_config',[
'view' => 'admin::customers.review.index'
])->name('admin.customer.review.index');
Route::get('reviews/edit/{id}', 'Webkul\Product\Http\Controllers\ReviewController@edit')->defaults('_config',[
'view' => 'admin::customers.review.edit'
])->name('admin.customer.review.edit');
Route::put('reviews/edit/{id}', 'Webkul\Product\Http\Controllers\ReviewController@update')->defaults('_config', [
'redirect' => 'admin.customer.review.index'
])->name('admin.customer.review.update');
// Sales Routes
Route::prefix('sales')->group(function () {
// Sales Order Routes

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch -->
<title>Expand-Light-On</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Expand-Light-On" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g transform="translate(2.000000, 6.000000)" fill="#8E8E8E" id="Path-2">
<polygon points="0 0 13.3424655 0 6.67123275 7.3125"></polygon>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 635 B

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="18px" height="18px" viewBox="0 0 18 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50.2 (55047) - http://www.bohemiancoding.com/sketch -->
<title>Expand-Light</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Expand-Light" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g transform="translate(9.000000, 9.000000) rotate(-90.000000) translate(-9.000000, -9.000000) translate(2.000000, 5.000000)" fill="#3A3A3A" id="Path-2">
<polygon points="0 0 13.3424655 0 6.67123275 7.3125"></polygon>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 710 B

View File

@ -1,9 +1,10 @@
<template>
<li>
<a :href="url+'/categories/'+this.item['translations'][0].slug">{{ this.item['translations'][0].name }}&emsp;<i class="icon dropdown-right-icon"
v-if="haveChildren && item.parent_id != null"></i></a>
<i :class="[show ? 'icon expand-icon mt-15' : 'icon expand-on-icon mt-15']"
<i :class="[show ? 'icon arrow-down-icon mt-15' : 'icon dropdown-right-icon mt-15']"
v-if="haveChildren || item.parent_id == null" @click="showOrHide"></i>
<ul v-if="haveChildren && show">
@ -12,8 +13,6 @@
:key="index"
:url="url"
:item="child">
{{ child }}
</category-item>
</ul>
</li>
@ -31,21 +30,19 @@ export default {
show: false,
};
},
mounted: function() {
if(window.innerWidth > 770){
this.show = true;
}
},
computed: {
haveChildren() {
return this.item.children.length ? true : false;
}
},
methods: {
showOrHide: function() {
alert('gfgf');
this.show = !this.show;
}
}

View File

@ -501,7 +501,6 @@ section.slider-block {
.nav > li {
float: left;
margin-right: 1px;
}
.nav > li > a {
@ -664,15 +663,11 @@ section.slider-block {
display: none;
}
.nav > li {
.nav > li {
border-bottom: 1px solid $border-color;
}
.nav li {
padding-left: 20px;
}
.nav li:first-child {
.nav li:first-child {
border-top: 1px solid $border-color;
}
@ -1098,7 +1093,7 @@ section.slider-block {
.side-menu-title {
height: 48px;
padding-top: 13px;
border: 1px solid;
border: 1px solid $border-color;
font-size: 18px;
display: inline-block;
@ -1164,9 +1159,12 @@ section.slider-block {
.edit-form-content {
margin-left: 0px;
.control-group .control {
width:100%;
}
}
}
}
//account responsive layout end here

View File

@ -95,4 +95,16 @@
background-image: url('../images/arrow-down.svg');
width: 16px;
height: 16px;
}
.expand-icon {
background-image: url("../images/Expand-Light.svg");
width: 18px;
height: 18px;
}
.expand-on-icon {
background-image: url("../images/Expand-Light-On.svg");
width: 18px;
height: 18px;
}

View File

@ -1,68 +1,204 @@
<div class="header" id="header">
<div class="header-top">
<div class="left-content">
<ul class="logo-container">
<li>
<a href="{{ route('shop.home.index') }}">
<img class="logo" src="{{ asset('vendor/webkul/shop/assets/images/logo.svg') }}" />
</a>
</li>
</ul>
<div class="header-top">
<div class="left-content">
<ul class="logo-container">
<li>
<a href="{{ route('shop.home.index') }}">
<img class="logo" src="{{ asset('vendor/webkul/shop/assets/images/logo.svg') }}" />
</a>
</li>
</ul>
<ul class="search-container">
<li class="search-group">
<input type="search" class="search-field" placeholder="Search for products">
<div class="search-icon-wrapper">
<span class="icon search-icon"></span>
<ul class="search-container">
<li class="search-group">
<input type="search" class="search-field" placeholder="Search for products">
<div class="search-icon-wrapper">
<span class="icon search-icon"></span>
</div>
</li>
</ul>
</div>
<div class="right-content">
<ul class="account-dropdown-container">
<li class="account-dropdown">
<div class="dropdown-toggle">
<div style="display: inline-flex; align-items: center; cursor: pointer;">
<span class="icon account-icon" style="margin-top: 5px;"></span>
<i class="icon arrow-down-icon active"></i>
</div>
</li>
</ul>
</div>
@guest('customer')
<div class="dropdown-list bottom-right" style="display: none;">
<div class="dropdown-container">
<label>Account</label><br/>
<span style="font-size: 12px;">Manage Cart, Orders & Wishlist.</span>
<ul class="account-dropdown-list">
<li><a class="btn btn-primary btn-sm" href="{{ route('customer.session.index') }}">Sign In</a></li>
</div>
<li><a class="btn btn-primary btn-sm" href="{{ route('customer.register.index') }}">Sign Up</a></li>
</ul>
<div class="right-content">
@guest('customer')
<ul class="register-link" style="border-right: 2px solid #E8E8E8; ">
<span class="icon account-icon"></span>
<li><a href="{{ route('customer.register.index') }}">Sign Up</a></li>
</ul>
@endguest
<ul class="account-dropdown-container">
<li class="account-dropdown">
</div>
<span class="icon account-icon"></span>
</div>
@endguest
@auth('customer')
<div class="dropdown-list bottom-right" style="display: none; max-width: 230px;">
<div class="dropdown-container">
<label>Account</label>
<ul>
<li><a href="{{ route('customer.account.index') }}">Account</a></li>
<li><a href="{{ route('customer.profile.index') }}">Profile</a></li>
<li><a href="{{ route('customer.address.index') }}">Address</a></li>
<li><a href="{{ route('customer.wishlist.index') }}">Wishlist</a></li>
<li><a href="{{ route('shop.checkout.cart.index') }}">Cart</a></li>
<li><a href="{{ route('customer.orders.index') }}">Orders</a></li>
<li><a href="{{ route('customer.session.destroy') }}">Logout</a></li>
</ul>
</div>
</div>
@endauth
</li>
</ul>
<ul class="cart-dropdown-container">
<?php $cart = cart()->getCart(); ?>
@inject ('productImageHelper', 'Webkul\Product\Product\ProductImage')
<li class="cart-dropdown">
<span class="icon cart-icon"></span>
@if($cart)
@php
$items = $cart->items;
@endphp
<div class="dropdown-toggle">
<div style="display: inline-block; cursor: pointer;">
@if($cart->items_qty - intval($cart->items_qty) > 0)
<span class="name">
Cart
<span class="count"> ({{ $cart->items_qty }})</span>
</span>
@else
<span class="name">
Cart
<span class="count"> ({{ intval($cart->items_qty) }})</span>
</span>
@endif
</div>
<i class="icon arrow-down-icon active"></i>
</div>
<div class="dropdown-list" style="display: none; top: 50px; right: 0px">
<div class="dropdown-container">
<div class="dropdown-cart">
<div class="dropdown-header">
<p class="heading">Cart Subtotal - {{ $cart->sub_total }}</p>
</div>
<div class="dropdown-content">
@foreach($items as $item)
@if($item->type == "configurable")
<div class="item">
<div class="item-image" >
@php
$images = $productImageHelper->getProductBaseImage($item->child->product);
@endphp
<img src="{{ $images['small_image_url'] }}" />
</div>
<div class="item-details">
<div class="item-name">{{ $item->child->name }}</div>
<div class="item-price">{{ $item->total }}</div>
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
</div>
</div>
@else
<div class="item">
<div class="item-image" >
@php
$images = $productImageHelper->getProductBaseImage($item->product);
@endphp
<img src="{{ $images['small_image_url'] }}" />
</div>
<div class="item-details">
<div class="item-name">{{ $item->name }}</div>
<div class="item-price">{{ $item->total }}</div>
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
</div>
</div>
@endif
@endforeach
</div>
<div class="dropdown-footer">
<a href="{{ route('shop.checkout.cart.index') }}">View Shopping Cart</a>
<a class="btn btn-primary btn-lg" style="color: white;" href="{{ route('shop.checkout.onepage.index') }}">CHECKOUT</a>
</div>
</div>
</div>
</div>
@else
<div class="dropdown-toggle">
<div style="display: inline-block; cursor: pointer;">
@guest('customer')
<span class="name">Sign In</span>
@endguest
@auth('customer')
<span class="name">Account</span>
@endauth
<span class="name">Cart<span class="count"> (0) </span></span>
</div>
<i class="icon arrow-down-icon active"></i>
</div>
@endif
</li>
</ul>
<ul class="right-responsive">
<li class="search-box"><span class="icon search-icon" id="search"></span></li>
<ul class="resp-account-dropdown-container">
<li class="account-dropdown">
<div class="dropdown-toggle">
<span class="icon account-icon"></span>
</div>
@guest
<div class="dropdown-list bottom-right" style="display: none;">
<div class="dropdown-container">
<label>Account</label>
<ul>
<li><a href="{{ route('customer.session.index') }}">Sign In</a></li>
<li><a href="{{ route('customer.register.index') }}">Sign Up</a></li>
</ul>
</div>
</div>
@endguest
@auth('customer')
<div class="dropdown-list bottom-right" style="display: none;">
<div class="dropdown-container">
<label>Account</label>
<ul>
<li><a href="{{ route('customer.account.index') }}">Account</a></li>
@ -85,235 +221,47 @@
@endauth
</li>
</ul>
<ul class="cart-dropdown-container">
<?php $cart = cart()->getCart(); ?>
@inject ('productImageHelper', 'Webkul\Product\Product\ProductImage')
<ul class="resp-cart-dropdown-container">
<li class="cart-dropdown">
<span class="icon cart-icon"></span>
@if($cart)
@php
$items = $cart->items;
@endphp
<div class="dropdown-toggle">
<div style="display: inline-block; cursor: pointer;">
@if($cart->items_qty - intval($cart->items_qty) > 0)
<span class="name">
Cart
<span class="count"> ({{ $cart->items_qty }})</span>
</span>
@else
<span class="name">
Cart
<span class="count"> ({{ intval($cart->items_qty) }})</span>
</span>
@endif
</div>
<i class="icon arrow-down-icon active"></i>
</div>
<div class="dropdown-list" style="display: none; top: 50px; right: 0px">
<div class="dropdown-container">
<div class="dropdown-cart">
<div class="dropdown-header">
<p class="heading">Cart Subtotal - {{ $cart->sub_total }}</p>
</div>
<div class="dropdown-content">
@foreach($items as $item)
@if($item->type == "configurable")
<div class="item">
<div class="item-image" >
@php
$images = $productImageHelper->getProductBaseImage($item->child->product);
@endphp
<img src="{{ $images['small_image_url'] }}" />
</div>
<div class="item-details">
<div class="item-name">{{ $item->child->name }}</div>
<div class="item-price">{{ $item->total }}</div>
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
</div>
</div>
@else
<div class="item">
<div class="item-image" >
@php
$images = $productImageHelper->getProductBaseImage($item->product);
@endphp
<img src="{{ $images['small_image_url'] }}" />
</div>
<div class="item-details">
<div class="item-name">{{ $item->name }}</div>
<div class="item-price">{{ $item->total }}</div>
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
</div>
</div>
@endif
@endforeach
</div>
<div class="dropdown-footer">
<a href="{{ route('shop.checkout.cart.index') }}">View Shopping Cart</a>
<button class="btn btn-primary btn-lg">CHECKOUT</button>
</div>
</div>
</div>
</div>
@if(isset($cart))
<div>
<a href="{{ route('shop.checkout.cart.index') }}"><span class="icon cart-icon"></span></a>
</div>
@else
<div class="dropdown-toggle">
<div style="display: inline-block; cursor: pointer;">
<span class="name">Cart<span class="count"> (0) </span></span>
</div>
</div>
<div style="display: inline-block; cursor: pointer;">
<span class="icon cart-icon"></span>
</div>
@endif
</li>
</ul>
<ul class="right-responsive">
<li class="search-box"><span class="icon search-icon" id="search"></span></li>
<ul class="resp-account-dropdown-container">
<li class="account-dropdown">
<div class="dropdown-toggle">
<span class="icon account-icon"></span>
</div>
@guest
<div class="dropdown-list bottom-right" style="display: none;">
<div class="dropdown-container">
<label>Account</label>
<ul>
<li><a href="{{ route('customer.session.index') }}">Sign In</a></li>
<li><a href="{{ route('customer.register.index') }}">Sign Up</a></li>
</ul>
</div>
</div>
@endguest
@auth('customer')
<div class="dropdown-list bottom-right" style="display: none;">
<div class="dropdown-container">
<label>Account</label>
<ul>
<li><a href="{{ route('customer.account.index') }}">Account</a></li>
<li><a href="{{ route('customer.profile.index') }}">Profile</a></li>
<li><a href="{{ route('customer.address.index') }}">Address</a></li>
<li><a href="{{ route('customer.wishlist.index') }}">Wishlist</a></li>
<li><a href="{{ route('shop.checkout.cart.index') }}">Cart</a></li>
<li><a href="{{ route('customer.orders.index') }}">Orders</a></li>
<li><a href="{{ route('customer.session.destroy') }}">Logout</a></li>
</ul>
</div>
</div>
@endauth
</li>
</ul>
<ul class="resp-cart-dropdown-container">
<li class="cart-dropdown">
@if(isset($cart) && session()->has('cart'))
@php
$cart = session()->get('cart');
@endphp
<div class="dropdown-toggle">
<span class="icon cart-icon"></span>
</div>
<div class="dropdown-list" style="display: none; top: 50px; right: 0px">
<div class="dropdown-container">
<div class="dropdown-cart">
<div class="dropdown-header">
<p class="heading">Cart Subtotal - {{ $cart->sub_total }}</p>
</div>
<div class="dropdown-content">
@foreach($cart as $product)
<div class="item" >
<div class="item-image" >
<img src="{{$product['2']}}" />
</div>
<div class="item-details">
<div class="item-name">{{$product['0']}}</div>
<div class="item-price">{{$product['1']}}</div>
<div class="item-qty">Quantity - {{$product['3']}}</div>
</div>
</div>
@endforeach
</div>
<div class="dropdown-footer">
<a href="/">View Shopping Cart</a>
<button class="btn btn-primary btn-lg">CHECKOUT</button>
</div>
</div>
</div>
</div>
@else
<div class="dropdown-toggle">
<div style="display: inline-block; cursor: pointer;">
<span class="icon cart-icon"></span>
</div>
</div>
@endif
</li>
</ul>
<li class="menu-box" ><span class="icon sortable-icon" id="hammenu"></span></li>
</ul>
</div>
<li class="menu-box" ><span class="icon sortable-icon" id="hammenu"></span></li>
</ul>
</div>
<div class="header-bottom" id="header-bottom">
@include('shop::layouts.header.nav-menu.navmenu')
</div>
<div class="search-responsive">
<div class="search-content">
<i class="icon search-icon mt-10"></i>
<input class="search mt-5">
<i class="icon icon-menu-back right mt-10"></i>
</div>
<div class="search-content">
<i class="icon search-icon mt-10"></i>
<span class="suggestion mt-15">Designer sarees</span>
</div>
</div>
<div class="responsive-nav">
<category-nav categories='@json($categories)' url="{{url()->to('/')}}"></category-nav>
</div>
</div>
<div class="header-bottom" id="header-bottom">
@include('shop::layouts.header.nav-menu.navmenu')
</div>
<div class="search-responsive">
<div class="search-content">
<i class="icon search-icon mt-10"></i>
<input class="search mt-5">
<i class="icon icon-menu-back right mt-10"></i>
</div>
<div class="search-content">
<i class="icon search-icon mt-10"></i>
<span class="suggestion mt-15">Designer sarees</span>
</div>
</div>
<div class="responsive-nav">
<category-nav categories='@json($categories)' url="{{url()->to('/')}}"></category-nav>
</div>
</div>
@push('scripts')

View File

@ -82,6 +82,8 @@
var state = document.readyState
var galleryTemplate = document.getElementById('product-gallery-template');
var addTOButton = document.getElementsByClassName('add-to-buttons')[0];
var productHeroImage = document.getElementsByClassName('product-hero-image')[0];
if(galleryTemplate){
if (state == 'interactive') {
galleryTemplate.style.display="none";

View File

@ -16,36 +16,5 @@ class TaxServiceProvider extends ServiceProvider
{
$this->loadMigrationsFrom(__DIR__ . '/../Database/Migrations');
$this->loadTranslationsFrom(__DIR__ . '/../Resources/lang', 'core');
$router->aliasMiddleware('locale', Locale::class);
$router->aliasMiddleware('admin', RedirectIfNotAdmin::class);
$router->aliasMiddleware('customer', RedirectIfNotCustomer::class);
}
/**
* Register services.
*
* @return void
*/
public function register()
{
}
/**
* Register Bouncer as a singleton.
*
* @return void
*/
protected function registerFacades()
{
// $loader = AliasLoader::getInstance();
// $loader->alias('core', CoreFacade::class);
// $this->app->singleton('core', function () {
// return app()->make(Core::class);
// });
}
}

View File

@ -97,6 +97,18 @@
height: 16px;
}
.expand-icon {
background-image: url("../images/Expand-Light.svg");
width: 18px;
height: 18px;
}
.expand-on-icon {
background-image: url("../images/Expand-Light-On.svg");
width: 18px;
height: 18px;
}
.product-grid-4 {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
@ -1283,9 +1295,6 @@ section.slider-block div.slider-content div.slider-control .light-right-icon {
.responsive-nav .nav > li {
border-bottom: 1px solid #E8E8E8;
}
.responsive-nav .nav li {
padding-left: 20px;
}
.responsive-nav .nav li:first-child {
border-top: 1px solid #E8E8E8;
}
@ -1717,7 +1726,7 @@ section.slider-block div.slider-content div.slider-control .light-right-icon {
.account-content .side-menu-title {
height: 48px;
padding-top: 13px;
border: 1px solid;
border: 1px solid #E8E8E8;
font-size: 18px;
display: inline-block;
}
@ -1771,6 +1780,9 @@ section.slider-block div.slider-content div.slider-control .light-right-icon {
.account-content .edit-form-content {
margin-left: 0px;
}
.account-content .edit-form-content .control-group .control {
width: 100%;
}
}
section.product-detail {

View File

@ -30845,8 +30845,6 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
//
//
//
//
//
// define the item component
/* harmony default export */ __webpack_exports__["default"] = ({
@ -30857,7 +30855,8 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
data: function data() {
return {
items_count: 0,
show: false
show: false,
margin: 0
};
},
@ -30870,6 +30869,14 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
computed: {
haveChildren: function haveChildren() {
console.log(this.margin++);
if (this.item.children.length) {
console.log(this.margin++);
}
return this.item.children.length ? true : false;
}
},
@ -30914,15 +30921,15 @@ var render = function() {
})
: _vm._e(),
_vm._v(" "),
_vm.haveChildren && _vm.show
_vm.haveChildren
? _c(
"ul",
_vm._l(_vm.item.children, function(child, index) {
return _c(
"category-item",
{ key: index, attrs: { url: _vm.url, item: child } },
[_vm._v("\n\n " + _vm._s(child) + "\n ")]
)
return _c("category-item", {
key: index,
style: "margin-left: " + 20 + "px",
attrs: { url: _vm.url, item: child }
})
})
)
: _vm._e()