This commit is contained in:
rahul shukla 2018-09-15 15:31:16 +05:30
commit 4f42f6d4d3
20 changed files with 401 additions and 27 deletions

View File

@ -180,7 +180,7 @@ return [
Webkul\User\Providers\UserServiceProvider::class,
Webkul\Admin\Providers\AdminServiceProvider::class,
Webkul\Ui\Providers\UiServiceProvider::class,
// Webkul\Category\Providers\CategoryServiceProvider::class,
Webkul\Category\Providers\CategoryServiceProvider::class,
Webkul\Attribute\Providers\AttributeServiceProvider::class,
Webkul\Core\Providers\CoreServiceProvider::class,
Webkul\Shop\Providers\ShopServiceProvider::class,

View File

@ -23,7 +23,7 @@ class ProductAttributeValue extends Model
'boolean' => 'boolean_value',
'select' => 'integer_value',
'multiselect' => 'text_value',
'datetime' => 'datetime_time',
'datetime' => 'datetime_value',
'date' => 'date_value',
];

View File

@ -37,7 +37,7 @@ Route::group(['middleware' => ['web']], function () {
// Product Review routes
Route::get('/reviews/{slug}/{id}', 'Webkul\Shop\Http\Controllers\ReviewController@show')->defaults('_config', [
Route::get('/reviews/{slug}', 'Webkul\Shop\Http\Controllers\ReviewController@show')->defaults('_config', [
'view' => 'shop::products.reviews.index'
])->name('shop.reviews.index');

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="32px" height="32px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50 (54983) - http://www.bohemiancoding.com/sketch -->
<title>icon-filter</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="icon-filter" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M7.49822126,6.5 L7.49822126,9.98513267 L15.5,16.270847 L15.5,23.4152305 L16.5,22.8438019 L16.5,16.2644683 L24.5100795,10.0607155 L24.5100795,6.5 L7.49822126,6.5 Z" id="Path-2" stroke="#242424" stroke-width="3"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 690 B

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="32px" height="32px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50 (54983) - http://www.bohemiancoding.com/sketch -->
<title>icon-sort</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="icon-sort" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Group" transform="translate(5.000000, 6.000000)" fill="#242424">
<polygon id="Path-8" points="13 0 16 0 16 13 19.689148 9.24692068 21.3605633 11.9273017 13 20.3403711"></polygon>
<polygon id="Path-8-Copy" points="9 20 6 20 6 7.34037112 2.67141528 11.0934504 0.660888672 9.02355957 9 0"></polygon>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 800 B

View File

@ -1639,13 +1639,13 @@ section.product-detail {
margin-top: 10px;
.addtocart {
width: 295px;
width: 293px;
background: black;
}
.buynow {
width: 295px;
float: right;
width: 293px;
float:right;
}
}
}

View File

@ -23,14 +23,24 @@
height: 24px;
}
<<<<<<< HEAD
.whishlist-icon {
background-image:URL('../images/wishlist.svg');
=======
.sort-icon {
background-image:URL('../images/icon-sort.svg');
>>>>>>> master
width: 24px;
height: 24px;
}
<<<<<<< HEAD
.share-icon {
background-image:URL('../images/icon-share.svg');
=======
.filter-icon {
background-image:URL('../images/icon-filter.svg');
>>>>>>> master
width: 24px;
height: 24px;
}

View File

@ -11,9 +11,9 @@
</div>
<div class="product-information">
<div class="product-name">
{{ $product->id }}
<a href="" title="{{ $product->name }}">
@ -24,13 +24,13 @@
<div class="product-description">
{{ $product->short_description }}
</div>
@include ('shop::products.price', ['product' => $product])
@include ('shop::products.review', ['product' => $product])
@include ('shop::products.add-to', ['product' => $product])
</div>
</div>

View File

@ -3,11 +3,15 @@
<div class="top-toolbar">
<div class="page-info">
{{ __('shop::app.products.pager-info', ['showing' => $products->firstItem() . '-' . $products->lastItem(), 'total' => $products->total()]) }}
<span>
{{ __('shop::app.products.pager-info', ['showing' => $products->firstItem() . '-' . $products->lastItem(), 'total' => $products->total()]) }}
</span>
<span>Men</span>
</div>
<div class="pager">
<div class="view-mode">
@if ($toolbarHelper->isModeActive('grid'))
<span class="grid-view">
@ -28,6 +32,15 @@
<i class="icon list-view-icon"></i>
</a>
@endif
<div class="sort-filter">
<i class="icon sort-icon"></i>
<i class="icon filter-icon"></i>
</div>
</div>
<div class="sorter">
@ -61,7 +74,7 @@
</select>
</div>
</div>
</div>

View File

@ -3,10 +3,10 @@
@inject ('priceHelper', 'Webkul\Product\Product\Price')
@if ($product->type == 'configurable')
<span class="price-label">{{ __('shop::app.products.price-label') }}</span>
<span class="final-price">{{ core()->currency($priceHelper->getMinimalPrice($product)) }}</span>
<span class="final-price">{{ core()->currency($priceHelper->getMinimalPrice($product)) }}</span>
@else
@ -18,7 +18,7 @@
@else
<span>{{ core()->currency($product->price) }}</span>
<span>{{ core()->currency($product->price) }}</span>
@endif

View File

@ -22,7 +22,7 @@
<span>{{ $product->name }}</span>
</div>
@include ('shop::products.review', ['product' => $product])
{{-- @include ('shop::products.review', ['product' => $product]) --}}
@include ('shop::products.price', ['product' => $product])

View File

@ -17,7 +17,7 @@
<select v-validate="'required'" class="control" :name="['super_attribute[' + attribute.id + ']']" :disabled="attribute.disabled" @change="configure(attribute, $event.target.value)" :id="['attribute_' + attribute.id]">
<option v-for='(option, index) in attribute.options' :value="option.id">@{{ option.label }}</option>
</select>
<span class="control-error" v-if="errors.has('super_attribute[' + attribute.id + ']')">
@ -28,17 +28,17 @@
</div>
</script>
<?php $config = $configurableOptionHelper->getConfigurationConfig($product) ?>
{{-- <?php $config = $configurableOptionHelper->getConfigurationConfig($product) ?> --}}
<script>
Vue.component('product-options', {
template: '#product-options-template',
data: () => ({
config: @json($config),
childAttributes: [],
selectedProductId: '',
@ -194,7 +194,7 @@
element.selectedIndex = "0";
}
},
getAttributeOptions (attributeId) {
var this_this = this,
options;
@ -202,7 +202,7 @@
this.config.attributes.forEach(function(attribute, index) {
if (attribute.id == attributeId) {
options = attribute.options;
}
}
})
return options;

View File

@ -17,7 +17,7 @@
@for ($i = 1; $i <= round($reviewHelper->getAverageRating($product)); $i++)
<span class="icon star-icon"></span>
@endfor
</span>
@ -45,7 +45,7 @@
@for ($i = 1; $i <= $review->rating; $i++)
<span class="icon star-icon"></span>
@endfor
</span>
@ -55,7 +55,7 @@
<div class="reviewer-details">
<span class="by">
{{ __('shop::app.products.by', ['name' => $review->customer->name]) }},
{{ __('shop::app.products.by', ['name' => $review->customer->name]) }},
</span>
<span class="when">

View File

@ -23,14 +23,24 @@
height: 24px;
}
<<<<<<< HEAD
.whishlist-icon {
background-image: URL("../images/wishlist.svg");
=======
.sort-icon {
background-image: URL("../images/icon-sort.svg");
>>>>>>> master
width: 24px;
height: 24px;
}
<<<<<<< HEAD
.share-icon {
background-image: URL("../images/icon-share.svg");
=======
.filter-icon {
background-image: URL("../images/icon-filter.svg");
>>>>>>> master
width: 24px;
height: 24px;
}
@ -947,6 +957,10 @@ section.slider-block div.slider-content div.slider-control .light-right-icon {
line-height: 45px;
}
.main-container-wrapper .top-toolbar .page-info span:last-child {
display: none;
}
.main-container-wrapper .top-toolbar .pager {
float: right;
}
@ -979,6 +993,10 @@ section.slider-block div.slider-content div.slider-control .light-right-icon {
margin-right: 10px;
}
.main-container-wrapper .top-toolbar .pager .view-mode .sort-filter {
display: none;
}
.main-container-wrapper .top-toolbar .pager .sorter {
display: inline-block;
margin-right: 10px;
@ -1746,6 +1764,7 @@ section.product-detail div.layouter form .details .full-description {
display: inline;
}
section.product-detail div.layouter {
<<<<<<< HEAD
display: block;
margin-top: 20px;
margin-bottom: 20px;
@ -1767,6 +1786,51 @@ section.product-detail div.layouter form .details .full-description {
margin-right: 36px;
}
section.product-detail div.layouter form div.product-image-group div {
=======
margin-top: 20px;
margin-bottom: 20px;
display: inline-block;
width: 100%;
}
section.product-detail div.layouter .mixed-group .single-image {
padding: 2px;
}
section.product-detail div.layouter .mixed-group .single-image img {
height: 280px;
width: 280px;
}
section.product-detail div.layouter .mixed-group .details .product-name {
margin-top: 20px;
font-size: 24px;
margin-bottom: 20px;
}
section.product-detail div.layouter .mixed-group .details .product-price {
margin-bottom: 14px;
}
section.product-detail div.layouter .rating-reviews {
margin-top: 0px;
width: 50%;
margin-left: 20px;
}
section.product-detail div.layouter .rating-reviews .title-inline {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 20px;
width: 100%;
}
section.product-detail div.layouter .rating-reviews .title-inline button {
float: right;
border-radius: 0px !important;
}
section.product-detail div.layouter .rating-reviews .overall {
>>>>>>> master
display: -webkit-box;
display: -ms-flexbox;
display: flex;
@ -1774,8 +1838,79 @@ section.product-detail div.layouter form .details .full-description {
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
<<<<<<< HEAD
}
section.product-detail div.layouter form div.product-image-group div .thumb-list {
=======
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
height: 150px;
}
section.product-detail div.layouter .rating-reviews .overall .left-side {
margin-bottom: 20px;
}
section.product-detail div.layouter .rating-reviews .overall .left-side .number {
font-size: 34px;
}
section.product-detail div.layouter .rating-reviews .overall .right-side {
display: block;
}
section.product-detail div.layouter .rating-reviews .overall .right-side .rater {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
section.product-detail div.layouter .rating-reviews .overall .right-side .rater .star {
width: 50px;
height: 20px;
padding: 1px;
margin-right: 8px;
}
section.product-detail div.layouter .rating-reviews .overall .right-side .rater .line-bar {
height: 4px;
width: 158px;
margin-right: 12px;
background: #D8D8D8;
}
section.product-detail div.layouter .rating-reviews .overall .right-side .rater .line-bar .line-value {
background-color: #0031F0;
}
section.product-detail div.layouter .rating-reviews .reviews {
margin-top: 34px;
margin-bottom: 90px;
}
section.product-detail div.layouter .rating-reviews .reviews .review {
margin-bottom: 25px;
}
section.product-detail div.layouter .rating-reviews .reviews .review .title {
margin-bottom: 5px;
}
section.product-detail div.layouter .rating-reviews .reviews .review .stars {
margin-bottom: 15px;
}
section.product-detail div.layouter .rating-reviews .reviews .review .message {
margin-bottom: 10px;
}
section.product-detail div.layouter .rating-reviews .reviews .view-all {
margin-top: 15px;
color: #0031f0;
margin-bottom: 15px;
}
section.product-detail div.layouter div.product-image-group {
width: 43%;
float: left;
min-height: 1px;
position: relative;
}
section.product-detail div.layouter div.product-image-group .thumb-list {
>>>>>>> master
display: -webkit-box;
display: -ms-flexbox;
display: flex;
@ -1785,6 +1920,7 @@ section.product-detail div.layouter form .details .full-description {
flex-direction: column;
margin-right: 4px;
height: 480px;
<<<<<<< HEAD
width: 120px;
overflow: hidden;
position: relative;
@ -1807,13 +1943,37 @@ section.product-detail div.layouter form .details .full-description {
height: 100%;
}
section.product-detail div.layouter form div.product-image-group div .thumb-list .gallery-control {
=======
overflow: hidden;
position: relative;
float: left;
}
section.product-detail div.layouter div.product-image-group .thumb-list .thumb-frame {
border: 2px solid transparent;
background: #F2F2F2;
width: 120px;
height: 120px;
}
section.product-detail div.layouter div.product-image-group .thumb-list .thumb-frame.active {
border-color: #979797;
}
section.product-detail div.layouter div.product-image-group .thumb-list .thumb-frame img {
width: 100%;
height: 100%;
}
section.product-detail div.layouter div.product-image-group .thumb-list .gallery-control {
>>>>>>> master
width: 100%;
position: absolute;
text-align: center;
cursor: pointer;
z-index: 1;
}
<<<<<<< HEAD
section.product-detail div.layouter form div.product-image-group div .thumb-list .gallery-control .overlay {
=======
section.product-detail div.layouter div.product-image-group .thumb-list .gallery-control .overlay {
>>>>>>> master
opacity: 0.3;
background: #000000;
width: 100%;
@ -1822,6 +1982,7 @@ section.product-detail div.layouter form .details .full-description {
left: 0;
z-index: -1;
}
<<<<<<< HEAD
section.product-detail div.layouter form div.product-image-group div .thumb-list .gallery-control .icon {
z-index: 2;
}
@ -1839,15 +2000,37 @@ section.product-detail div.layouter form .details .full-description {
max-height: 480px;
}
section.product-detail div.layouter form div.product-image-group div .product-hero-image .wishlist {
=======
section.product-detail div.layouter div.product-image-group .thumb-list .gallery-control .icon {
z-index: 2;
}
section.product-detail div.layouter div.product-image-group .thumb-list .gallery-control.top {
top: 0;
}
section.product-detail div.layouter div.product-image-group .thumb-list .gallery-control.bottom {
bottom: 0;
}
section.product-detail div.layouter div.product-image-group .product-hero-image {
position: absolute;
/* background: #F2F2F2; */
width: 380px;
}
section.product-detail div.layouter div.product-image-group .product-hero-image .wishlist {
>>>>>>> master
position: absolute;
top: 10px;
right: 12px;
}
<<<<<<< HEAD
section.product-detail div.layouter form div.product-image-group div .product-hero-image .share {
=======
section.product-detail div.layouter div.product-image-group .product-hero-image .share {
>>>>>>> master
position: absolute;
top: 10px;
right: 45px;
}
<<<<<<< HEAD
section.product-detail div.layouter form div.product-image-group .cart-fav-seg {
display: block;
float: right;
@ -1870,10 +2053,32 @@ section.product-detail div.layouter form .details .full-description {
margin-left: 15px;
}
section.product-detail div.layouter form .details .product-heading {
=======
section.product-detail div.layouter .details {
width: 57%;
float: left;
}
section.product-detail div.layouter .details .product-price {
margin-bottom: 14px;
}
section.product-detail div.layouter .details .product-ratings {
margin-bottom: 20px;
}
section.product-detail div.layouter .details .product-ratings .icon {
width: 16px;
height: 16px;
}
section.product-detail div.layouter .details .product-ratings .total-reviews {
display: inline-block;
margin-left: 15px;
}
section.product-detail div.layouter .details .product-heading {
>>>>>>> master
font-size: 24px;
color: #242424;
margin-bottom: 15px;
}
<<<<<<< HEAD
section.product-detail div.layouter form .details .product-price {
margin-bottom: 15px;
font-size: 24px;
@ -1885,10 +2090,24 @@ section.product-detail div.layouter form .details .full-description {
margin-bottom: 15px;
}
section.product-detail div.layouter form .details .description {
=======
section.product-detail div.layouter .details .product-price {
margin-bottom: 15px;
font-size: 24px;
}
section.product-detail div.layouter .details .product-price .special-price {
font-size: 24px;
}
section.product-detail div.layouter .details .stock-status {
margin-bottom: 15px;
}
section.product-detail div.layouter .details .description {
>>>>>>> master
margin-bottom: 15px;
padding-bottom: 15px;
border-bottom: solid 1px rgba(162, 162, 162, 0.2);
}
<<<<<<< HEAD
section.product-detail div.layouter form .details .full-specifications td {
padding: 10px 0;
color: #5E5E5E;
@ -1897,18 +2116,104 @@ section.product-detail div.layouter form .details .full-description {
padding-right: 40px;
}
section.product-detail div.layouter form .details .accordian .accordian-header {
=======
section.product-detail div.layouter .details .full-specifications td {
padding: 10px 0;
color: #5E5E5E;
}
section.product-detail div.layouter .details .full-specifications td:first-child {
padding-right: 40px;
}
section.product-detail div.layouter .details .accordian .accordian-header {
>>>>>>> master
font-size: 16px;
padding-left: 0;
font-weight: 600;
}
<<<<<<< HEAD
section.product-detail div.layouter form .details .attributes {
=======
section.product-detail div.layouter .details .attributes {
>>>>>>> master
display: block;
width: 100%;
border-bottom: solid 1px rgba(162, 162, 162, 0.2);
}
<<<<<<< HEAD
section.product-detail div.layouter form .details .full-description {
font-size: 16px;
}
=======
section.product-detail div.layouter .details .full-description {
font-size: 16px;
}
}
.rating-reviews .rating-header {
font-weight: 600;
padding: 20px 0;
}
.rating-reviews .stars .icon {
width: 16px;
height: 16px;
}
.rating-reviews .overall {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.rating-reviews .overall .review-info .number {
font-size: 34px;
}
.rating-reviews .overall .review-info .total-reviews {
margin-top: 10px;
}
.rating-reviews .reviews {
margin-top: 40px;
margin-bottom: 40px;
}
.rating-reviews .reviews .review {
margin-bottom: 25px;
}
.rating-reviews .reviews .review .title {
margin-bottom: 5px;
}
.rating-reviews .reviews .review .stars {
margin-bottom: 15px;
display: inline-block;
}
.rating-reviews .reviews .review .message {
margin-bottom: 10px;
}
.rating-reviews .reviews .review .reviewer-details {
color: #5E5E5E;
}
.rating-reviews .reviews .view-all {
margin-top: 15px;
color: #0031f0;
margin-bottom: 15px;
>>>>>>> master
}
/* cart pages and elements css begins here */

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="32px" height="32px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50 (54983) - http://www.bohemiancoding.com/sketch -->
<title>icon-filter</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="icon-filter" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M7.49822126,6.5 L7.49822126,9.98513267 L15.5,16.270847 L15.5,23.4152305 L16.5,22.8438019 L16.5,16.2644683 L24.5100795,10.0607155 L24.5100795,6.5 L7.49822126,6.5 Z" id="Path-2" stroke="#242424" stroke-width="3"></path>
</g>
</svg>

After

Width:  |  Height:  |  Size: 690 B

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="32px" height="32px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 50 (54983) - http://www.bohemiancoding.com/sketch -->
<title>icon-sort</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="icon-sort" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Group" transform="translate(5.000000, 6.000000)" fill="#242424">
<polygon id="Path-8" points="13 0 16 0 16 13 19.689148 9.24692068 21.3605633 11.9273017 13 20.3403711"></polygon>
<polygon id="Path-8-Copy" points="9 20 6 20 6 7.34037112 2.67141528 11.0934504 0.660888672 9.02355957 9 0"></polygon>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 800 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

View File

@ -29918,7 +29918,7 @@ if (false) {
/* 25 */
/***/ (function(module, exports) {
// removed by extract-text-webpack-plugin
throw new Error("Module build failed: ModuleBuildError: Module build failed: \n}\n^\n Invalid CSS after \"}\": expected 1 selector or at-rule, was \"<<<<<<< HEAD\"\n in /home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/src/Resources/assets/sass/icons.scss (line 24, column 2)\n at runLoaders (/home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/webpack/lib/NormalModule.js:195:19)\n at /home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/loader-runner/lib/LoaderRunner.js:364:11\n at /home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/loader-runner/lib/LoaderRunner.js:230:18\n at context.callback (/home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/loader-runner/lib/LoaderRunner.js:111:13)\n at Object.asyncSassJobQueue.push [as callback] (/home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/sass-loader/lib/loader.js:55:13)\n at Object.done [as callback] (/home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/neo-async/async.js:7974:18)\n at options.error (/home/users/rahul.shukla/www/html/bagisto/packages/Webkul/Shop/node_modules/node-sass/lib/index.js:294:32)");
/***/ })
/******/ ]);