product view, dynamic payment, shipping methods

This commit is contained in:
prateek srivastava 2019-12-31 11:43:17 +05:30
parent 84b1f4102f
commit 11fbe0b0f9
19 changed files with 100 additions and 44 deletions

1
assets Symbolic link
View File

@ -0,0 +1 @@
/home/users/pratik.srivastava/www/html/velocity-1/packages/Webkul/Velocity/publishable/assets/home/users/pratik.srivastava/www/html/velocity-1/public/themes/velocity/assets

View File

@ -21,8 +21,9 @@
"vue": "^2.5.7" "vue": "^2.5.7"
}, },
"dependencies": { "dependencies": {
"opencollective": "^1.0.3",
"opencollective-postinstall": "^2.0.1", "opencollective-postinstall": "^2.0.1",
"opencollective": "^1.0.3" "vue-carousel": "^0.18.0"
}, },
"collective": { "collective": {
"type": "opencollective", "type": "opencollective",

View File

@ -61,10 +61,10 @@ class ProductsCategoriesProxyController extends Controller
public function index(string $slugOrPath) public function index(string $slugOrPath)
{ {
if ($category = $this->categoryRepository->findByPath($slugOrPath)) { // if ($category = $this->categoryRepository->findByPath($slugOrPath)) {
return view($this->_config['category_view'], compact('category')); // return view($this->_config['category_view'], compact('category'));
} // }
if ($product = $this->productRepository->findBySlug($slugOrPath)) { if ($product = $this->productRepository->findBySlug($slugOrPath)) {

View File

@ -1,21 +1,14 @@
{ {
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "npm run development", "dev": "npm run development",
"development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch-poll": "npm run watch -- --watch-poll",
"watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"prod": "npm run production",
"watch-poll": "npm run watch -- --watch-poll", "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"prod": "npm run production",
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
}, },
"devDependencies": { "devDependencies": {
"axios": "^0.18", "axios": "^0.18",
"cross-env": "^5.1.4", "cross-env": "^5.1.4",
@ -24,7 +17,6 @@
"jquery": "^3.2", "jquery": "^3.2",
"vue": "^2.1.10" "vue": "^2.1.10"
}, },
"dependencies": { "dependencies": {
"bootstrap-sass": "^3.4.1", "bootstrap-sass": "^3.4.1",
"font-awesome": "^4.7.0", "font-awesome": "^4.7.0",

View File

@ -0,0 +1 @@
/home/users/pratik.srivastava/www/html/velocity-1/packages/Webkul/Velocity/publishable/assets

View File

@ -1720,6 +1720,10 @@
margin-left: 0px !important; margin-left: 0px !important;
} }
.product-price .price-label {
margin-right: 6px;
}
.product-price .sticker { .product-price .sticker {
top: 0; top: 0;
left: 0; left: 0;
@ -1745,6 +1749,12 @@
text-decoration: line-through; text-decoration: line-through;
} }
.method-sticker {
background-color: grey;
display: block;
color: white;
}
/* @author Shubham Mehrotra */ /* @author Shubham Mehrotra */
body { body {
overflow-x: hidden; overflow-x: hidden;
@ -2709,7 +2719,7 @@ body::after {
} }
.ml15, .advertisement-two-container .ad-2-rt { .ml15, .advertisement-two-container .ad-2-rt {
margin-left: 15px; margin-left: 15px !important;
} }
.body-blur { .body-blur {

View File

@ -4,7 +4,7 @@ use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint; use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Migrations\Migration;
class AddFooterContentInChannels extends Migration class AddSuscriptionBarInVelocity extends Migration
{ {
/** /**
* Run the migrations. * Run the migrations.
@ -13,7 +13,7 @@ class AddFooterContentInChannels extends Migration
*/ */
public function up() public function up()
{ {
Schema::table('channels', function($table) { Schema::table('velocity_meta_data', function($table) {
$table->text('subscription_bar_content')->nullable(); $table->text('subscription_bar_content')->nullable();
}); });
} }
@ -25,7 +25,7 @@ class AddFooterContentInChannels extends Migration
*/ */
public function down() public function down()
{ {
Schema::table('channels', function($table) { Schema::table('velocity_meta_data', function($table) {
$table->dropColumn('subscription_bar_content'); $table->dropColumn('subscription_bar_content');
}); });
} }

View File

@ -21,6 +21,9 @@ class VelocityMetaDataSeeder extends Seeder
'footer_middle_content' => '<div class="col-4 footer-ct-content"><div class="row"><div class="col-6"><ul type="none"><li><a href="">About Us</a></li><li><a href="">Customer Service</a></li><li><a href="">Whats New</a></li><li><a href="">Contact Us </a></li></div><div class="col-6"><ul type="none"><li><a href="">Order and Returns</a></li><li><a href="">Payment Policy</a></li><li><a href="">Shipping Policy</a></li><li><a href="">Privacy and Cookies Policy</a></li></div></div></div>', 'footer_middle_content' => '<div class="col-4 footer-ct-content"><div class="row"><div class="col-6"><ul type="none"><li><a href="">About Us</a></li><li><a href="">Customer Service</a></li><li><a href="">Whats New</a></li><li><a href="">Contact Us </a></li></div><div class="col-6"><ul type="none"><li><a href="">Order and Returns</a></li><li><a href="">Payment Policy</a></li><li><a href="">Shipping Policy</a></li><li><a href="">Privacy and Cookies Policy</a></li></div></div></div>',
'slider' => 1, 'slider' => 1,
'subscription_bar_content' => '<div class="social-icons wk-icon xyz"><i class="within-circle rango-facebook" title="facebook"></i><i class="within-circle rango-twitter" title="twitter"></i><i class="within-circle rango-linked-in" title="linkedin"></i>
<i class="within-circle rango-pintrest" title="Pinterest"></i><i class="within-circle rango-youtube" title="Youtube"></i><i class="within-circle rango-instagram" title="instagram"></i></div>'
]); ]);
} }
} }

View File

@ -40,7 +40,7 @@ class VelocityServiceProvider extends ServiceProvider
$this->publishes([ $this->publishes([
__DIR__ . '/../Resources/views/' => resource_path('themes/velocity/views'), __DIR__ . '/../Resources/views/' => resource_path('themes/velocity/views'),
dirname(__DIR__) . '/Resources/views/admin/settings/channels/edit.blade.php' => base_path('resources/views/vendor/admin/settings/channels/edit.blade.php') // dirname(__DIR__) . '/Resources/views/admin/settings/channels/edit.blade.php' => base_path('resources/views/vendor/admin/settings/channels/edit.blade.php')
]); ]);
$this->loadViewsFrom(__DIR__ . '/../Resources/views', 'velocity'); $this->loadViewsFrom(__DIR__ . '/../Resources/views', 'velocity');

View File

@ -1015,6 +1015,10 @@
} }
.product-price { .product-price {
.price-label {
margin-right: 6px;
}
.sticker { .sticker {
top: 0; top: 0;
left: 0; left: 0;
@ -1039,4 +1043,10 @@
.special-price { .special-price {
text-decoration: line-through; text-decoration: line-through;
} }
}
.method-sticker {
background-color: grey;
display: block;
color: white;
} }

View File

@ -93,6 +93,7 @@ return [
'title' => 'Velocity meta data', 'title' => 'Velocity meta data',
'home-page-content' => 'Home Page Content', 'home-page-content' => 'Home Page Content',
'footer-left-content' => 'Footer Left Content', 'footer-left-content' => 'Footer Left Content',
'subscription-content' => 'Subscription bar Content',
'footer-left-raw-content' => 'We love to craft softwares and solve the real world problems with the binaries. We are highly committed to our goals. We invest our resources to create world class easy to use softwares and applications for the enterprise business with the top notch, on the edge technology expertise.', 'footer-left-raw-content' => 'We love to craft softwares and solve the real world problems with the binaries. We are highly committed to our goals. We invest our resources to create world class easy to use softwares and applications for the enterprise business with the top notch, on the edge technology expertise.',
'footer-middle-content' => 'Footer Middle Content', 'footer-middle-content' => 'Footer Middle Content',
'update-meta-data' => 'Update Meta Data', 'update-meta-data' => 'Update Meta Data',

View File

@ -24,6 +24,19 @@
{{-- @include ($typeView) --}} {{-- @include ($typeView) --}}
<div class="control-group">
<label for="footer_content">
{{ __('velocity::app.admin.meta-data.subscription-content') }}
</label>
<textarea
class="control"
id="subscription-content"
name="subscription-content">
{{ $metaData->subscription_bar_content}}
</textarea>
</div>
<div class="control-group"> <div class="control-group">
<label for="footer_content"> <label for="footer_content">
{{ __('velocity::app.admin.meta-data.home-page-content') }} {{ __('velocity::app.admin.meta-data.home-page-content') }}
@ -81,7 +94,7 @@
width: "100%", width: "100%",
image_advtab: true, image_advtab: true,
valid_elements : '*[*]', valid_elements : '*[*]',
selector: 'textarea#home_page_content,textarea#footer_left_content,textarea#footer_middle_content', selector: 'textarea#home_page_content,textarea#footer_left_content,textarea#subscription-content,textarea#footer_middle_content',
plugins: 'image imagetools media wordcount save fullscreen code', plugins: 'image imagetools media wordcount save fullscreen code',
toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code', toolbar1: 'formatselect | bold italic strikethrough forecolor backcolor | link | alignleft aligncenter alignright alignjustify | numlist bullist outdent indent | removeformat | code',
}); });

View File

@ -1,3 +1,25 @@
@php
$activeShippings = [];
$activePayments = [];
$shippings = core()->getConfigData('sales.carriers');
$payments = core()->getConfigData('sales.paymentmethods');
foreach($shippings as $ship)
{
if ($ship['active'] == "true") {
array_push($activeShippings, $ship['title']);
}
}
foreach($payments as $payment)
{
if ($payment['active'] == "true") {
array_push($activePayments, $payment['title']);
}
}
@endphp
<div class="col-4 footer-rt-content"> <div class="col-4 footer-rt-content">
<div class="row"> <div class="row">
@ -6,12 +28,11 @@
</div> </div>
<div class="payment-methods"> <div class="payment-methods">
<div class="cash bg-image"></div> @foreach($activePayments as $paymentMethod)
<div class="cheque bg-image"></div> <div class="method-sticker">
<div class="visa bg-image"></div> {{ $paymentMethod}}
<div class="master-card bg-image"></div> </div>
<div class="paypal bg-image"></div> @endforeach
<div class="discover bg-image"></div>
</div> </div>
</div> </div>
@ -21,7 +42,11 @@
</div> </div>
<div class="shipping-methods"> <div class="shipping-methods">
<div class="master-card bg-image"></div> @foreach($activeShippings as $shippingMethod)
<div class="method-sticker">
{{ $shippingMethod}}
</div>
@endforeach
</div> </div>
</div> </div>

View File

@ -1,7 +1,7 @@
@if (core()->getConfigData('customer.settings.newsletter.subscription')) @if (core()->getConfigData('customer.settings.newsletter.subscription'))
<div class="newsletter-subscription"> <div class="newsletter-subscription">
<div class="newsletter-wrapper"> <div class="newsletter-wrapper">
{!! DbView::make(core()->getCurrentChannel())->field('subscription_bar_content')->render() !!} {!! $velocityMetaData->subscription_bar_content !!}
<div class="subscribe-newsletter"> <div class="subscribe-newsletter">

View File

@ -34,7 +34,7 @@
</div> </div>
</div> </div>
<ul class="bundle-items"> <ul type="none" class="bundle-items">
<li v-for="(option, index) in options"> <li v-for="(option, index) in options">
@{{ option.label }} @{{ option.label }}
@ -71,7 +71,7 @@
{{ __('shop::app.products.none') }} {{ __('shop::app.products.none') }}
</span> </span>
<span class="radio" v-for="(product, index2) in option.products"> <span class="radio col-12 ml5" v-for="(product, index2) in option.products">
<input type="radio" :name="'bundle_options[' + option.id + '][]'" v-model="selected_product" v-validate="option.is_required ? 'required' : ''" :data-vv-as="'&quot;' + option.label + '&quot;'" :value="product.id" :id="'bundle_options[' + option.id + '][]'"> <input type="radio" :name="'bundle_options[' + option.id + '][]'" v-model="selected_product" v-validate="option.is_required ? 'required' : ''" :data-vv-as="'&quot;' + option.label + '&quot;'" :value="product.id" :id="'bundle_options[' + option.id + '][]'">
<label class="radio-view" :for="'bundle_options[' + option.id + '][]'"></label> <label class="radio-view" :for="'bundle_options[' + option.id + '][]'"></label>
@ -181,7 +181,7 @@
data: function() { data: function() {
return { return {
selected_product: (this.option.type == 'checkbox' || this.option.type == 'multiselect') ? [] : null, selected_product: (this.option.type == 'checkbox' || this.option.type == 'multiselect') ? [] : null,
qty_validations: '' qty_validations: ''
} }
}, },

View File

@ -4,8 +4,6 @@
{!! view_render_event('bagisto.shop.products.view.configurable-options.before', ['product' => $product]) !!} {!! view_render_event('bagisto.shop.products.view.configurable-options.before', ['product' => $product]) !!}
<h1>xcvxcf</h1>
<product-options></product-options> <product-options></product-options>
{!! view_render_event('bagisto.shop.products.view.configurable-options.after', ['product' => $product]) !!} {!! view_render_event('bagisto.shop.products.view.configurable-options.after', ['product' => $product]) !!}
@ -20,7 +18,7 @@
<div v-for='(attribute, index) in childAttributes' class="attribute control-group" :class="[errors.has('super_attribute[' + attribute.id + ']') ? 'has-error' : '']"> <div v-for='(attribute, index) in childAttributes' class="attribute control-group" :class="[errors.has('super_attribute[' + attribute.id + ']') ? 'has-error' : '']">
<label class="required">@{{ attribute.label }}</label> <label class="required">@{{ attribute.label }}</label>
<span v-if="! attribute.swatch_type || attribute.swatch_type == '' || attribute.swatch_type == 'dropdown'"> <span class="custom-form" v-if="! attribute.swatch_type || attribute.swatch_type == '' || attribute.swatch_type == 'dropdown'">
<select <select
class="control" class="control"
v-validate="'required'" v-validate="'required'"
@ -96,7 +94,7 @@
}, },
created: function() { created: function() {
this.galleryImages = galleryImages.slice(0) // this.galleryImages = galleryImages.slice(0)
var config = @json($config); var config = @json($config);

View File

@ -20,13 +20,13 @@
@endif @endif
@if ($product->downloadable_links->count()) @if ($product->downloadable_links->count())
<div class="link-list control-group" :class="[errors.has('links[]') ? 'has-error' : '']"> <div class=" link-list control-group" :class="[errors.has('links[]') ? 'has-error' : '']">
<h3>{{ __('shop::app.products.links') }}</h3> <h3>{{ __('shop::app.products.links') }}</h3>
<ul> <ul type="none">
@foreach ($product->downloadable_links as $link) @foreach ($product->downloadable_links as $link)
<li> <li>
<span class="checkbox"> <span class="checkbox col-12 ml5">
<input type="checkbox" name="links[]" v-validate="'required'" value="{{ $link->id }}" id="{{ $link->id }}" data-vv-as="&quot;{{ __('shop::app.products.links') }}&quot;"/> <input type="checkbox" name="links[]" v-validate="'required'" value="{{ $link->id }}" id="{{ $link->id }}" data-vv-as="&quot;{{ __('shop::app.products.links') }}&quot;"/>
<label class="checkbox-view" for="{{ $link->id }}"></label> <label class="checkbox-view" for="{{ $link->id }}"></label>
{{ $link->title . ' + ' . core()->currency($link->price) }} {{ $link->title . ' + ' . core()->currency($link->price) }}

View File

@ -4,7 +4,7 @@
<div class="grouped-product-container"> <div class="grouped-product-container">
@if ($product->grouped_products->count()) @if ($product->grouped_products->count())
<div class="grouped-product-list"> <div class="grouped-product-list">
<ul> <ul type="none">
<li> <li>
<span>{{ __('shop::app.products.name') }}</span> <span>{{ __('shop::app.products.name') }}</span>
<span>{{ __('shop::app.products.qty') }}</span> <span>{{ __('shop::app.products.qty') }}</span>

1
velocity Symbolic link
View File

@ -0,0 +1 @@
/home/users/pratik.srivastava/www/html/velocity-1/packages/Webkul/Velocity/src/Resources/views/home/users/pratik.srivastava/www/html/velocity-1/resources/themes/velocity