From 1c7c8be8f7e2e3b5840f7ffde44d9fed7ff47ed8 Mon Sep 17 00:00:00 2001 From: Jeremy Quinton Date: Wed, 11 Jul 2018 19:51:11 +0200 Subject: [PATCH] Finalised Charging V.A.T 1) Added Javascript partial so display and hide of the Charge Tax functionality can be shared. 2) Moved @yield head for the the master without menus layout to the correct place. Using jQuery functionality @head anywhere wouldn't work as the library was included afterwards. 3) Moved the question for organisers about Tax and the labels for tax fields to the language file. --- app/Http/Controllers/OrganiserController.php | 6 ++-- .../OrganiserCustomizeController.php | 6 ++++ resources/lang/en/Organiser.php | 6 ++++ resources/lang/en/basic.php | 1 + .../ManageOrganiser/CreateOrganiser.blade.php | 16 +++++---- .../views/ManageOrganiser/Customize.blade.php | 35 +++++-------------- .../OrganiserCreateAndEditJS.blade.php | 17 +++++++++ .../Layouts/MasterWithoutMenus.blade.php | 4 +-- 8 files changed, 54 insertions(+), 37 deletions(-) create mode 100644 resources/views/ManageOrganiser/Partials/OrganiserCreateAndEditJS.blade.php diff --git a/app/Http/Controllers/OrganiserController.php b/app/Http/Controllers/OrganiserController.php index fa64af95..fb5db358 100644 --- a/app/Http/Controllers/OrganiserController.php +++ b/app/Http/Controllers/OrganiserController.php @@ -41,10 +41,10 @@ class OrganiserController extends MyBaseController $organiser = Organiser::createNew(false, false, true); $chargeTax = $request->get('charge_tax'); - - if ($chargeTax == 'Yes') { + if ($chargeTax == 1) { $organiser->addExtraValidationRules(); } + if (!$organiser->validate($request->all())) { return response()->json([ 'status' => 'error', @@ -62,7 +62,7 @@ class OrganiserController extends MyBaseController $organiser->tax_name = $request->get('tax_name'); $organiser->tax_value = round($request->get('tax_value'),2); $organiser->tax_id = $request->get('tax_id'); - $organiser->charge_tax = ($chargeTax == 'Yes') ? 1 : 0; + $organiser->charge_tax = ($chargeTax == 1) ? 1 : 0; if ($request->hasFile('organiser_logo')) { $organiser->setLogo($request->file('organiser_logo')); diff --git a/app/Http/Controllers/OrganiserCustomizeController.php b/app/Http/Controllers/OrganiserCustomizeController.php index d35a16ff..943378f4 100644 --- a/app/Http/Controllers/OrganiserCustomizeController.php +++ b/app/Http/Controllers/OrganiserCustomizeController.php @@ -36,6 +36,11 @@ class OrganiserCustomizeController extends MyBaseController { $organiser = Organiser::scope()->find($organiser_id); + $chargeTax = $request->get('charge_tax'); + if ($chargeTax == 1) { + $organiser->addExtraValidationRules(); + } + if (!$organiser->validate($request->all())) { return response()->json([ 'status' => 'error', @@ -50,6 +55,7 @@ class OrganiserCustomizeController extends MyBaseController $organiser->enable_organiser_page = $request->get('enable_organiser_page'); $organiser->facebook = $request->get('facebook'); $organiser->twitter = $request->get('twitter'); + $organiser->tax_name = $request->get('tax_name'); $organiser->tax_value = $request->get('tax_value'); $organiser->tax_id = $request->get('tax_id'); diff --git a/resources/lang/en/Organiser.php b/resources/lang/en/Organiser.php index 5fed9d54..891056f3 100644 --- a/resources/lang/en/Organiser.php +++ b/resources/lang/en/Organiser.php @@ -58,6 +58,12 @@ return array ( 'organiser_twitter_placeholder' => 'E.g http://www.twitter.com/MyTwitterPage', 'organiser_username_facebook_placeholder' => 'MyFacebookPage', 'organiser_username_twitter_placeholder' => 'MyTwitterPage', + 'organiser_tax_prompt' => 'Do you want to charge tax as your events?', + 'organiser_tax_id' => 'Tax ID', + 'organiser_tax_name' => 'Tax Name', + 'organiser_tax_value' => 'Tax Value', + 'yes' => 'Yes', + 'no' => 'No', 'sales_volume' => 'Sales Volume', 'select_an_organiser' => 'Select An Organiser', 'select_organiser' => 'Select Organiser', diff --git a/resources/lang/en/basic.php b/resources/lang/en/basic.php index be06d576..3c88036e 100644 --- a/resources/lang/en/basic.php +++ b/resources/lang/en/basic.php @@ -47,6 +47,7 @@ return array ( 'total' => 'total', 'whoops' => 'Whoops!', 'yes' => 'Yes', + 'no' => 'No', /* * Lines below will turn obsolete in localization helper, it is declared in app/Helpers/macros. * If you run it, it will break file input fields. diff --git a/resources/views/ManageOrganiser/CreateOrganiser.blade.php b/resources/views/ManageOrganiser/CreateOrganiser.blade.php index a3d1e0c1..21fed83c 100644 --- a/resources/views/ManageOrganiser/CreateOrganiser.blade.php +++ b/resources/views/ManageOrganiser/CreateOrganiser.blade.php @@ -12,6 +12,10 @@ text-shadow: none !important;; } + + @stop @section('content') @@ -62,31 +66,31 @@ )) !!}
-

Do you want to Charge Tax at your Events?

+

{!! trans("Organiser.organiser_tax_prompt") !!}

{!! Form::label('Yes', 'Yes', array('class'=>'control-label', 'id' => 'charge_yes')) !!} - {{ Form::radio('charge_tax', 'Yes' , false) }} + {{ Form::radio('charge_tax', '1' , false) }} {!! Form::label('No', 'No', array('class'=>'control-label','id' => 'charge_no')) !!} - {{ Form::radio('charge_tax', 'No' , true) }} + {{ Form::radio('charge_tax', '0' , true) }}
- {!! Form::label('tax_id', 'Tax ID', array('class'=>'control-label required')) !!} + {!! Form::label('tax_id', trans("Organiser.organiser_tax_id"), array('class'=>'control-label required')) !!} {!! Form::text('tax_id', Input::old('tax_id'), array('class'=>'form-control', 'placeholder'=>'Tax ID')) !!}
- {!! Form::label('tax_name', 'Tax name', array('class'=>'control-label required')) !!} + {!! Form::label('tax_name', trans("Organiser.organiser_tax_name"), array('class'=>'control-label required')) !!} {!! Form::text('tax_name', Input::old('tax_name'), array('class'=>'form-control', 'placeholder'=>'Tax name')) !!}
- {!! Form::label('tax_value', 'Tax value', array('class'=>'control-label required')) !!} + {!! Form::label('tax_value', trans("Organiser.organiser_tax_value"), array('class'=>'control-label required')) !!} {!! Form::text('tax_value', Input::old('tax_value'), array('class'=>'form-control', 'placeholder'=>'Tax Value')) !!}
diff --git a/resources/views/ManageOrganiser/Customize.blade.php b/resources/views/ManageOrganiser/Customize.blade.php index 90c52f94..2ec56abe 100644 --- a/resources/views/ManageOrganiser/Customize.blade.php +++ b/resources/views/ManageOrganiser/Customize.blade.php @@ -31,24 +31,7 @@ }); - $(document).ready(function(){ - var charge_tax = $("input[type=radio][name='charge_tax']:checked").val(); - if (charge_tax == 1) { - $('#tax_fields').show(); - } else { - $('#tax_fields').hide(); - } - - $('input[type=radio][name=charge_tax]').change(function() { - if (this.value == 1) { - $('#tax_fields').show(); - } - else { - $('#tax_fields').hide(); - } - }); - }); - + @include('ManageOrganiser.Partials.OrganiserCreateAndEditJS') @stop @@ -115,31 +98,31 @@
-

Do you want to Charge Tax at your Events?

- - charge_tax == 1 ? 'checked' : '' }}> - - charge_tax == 0 ? 'checked' : '' }}> +

{!! trans("Organiser.organiser_tax_prompt") !!}

+ + charge_tax == 1 ? 'checked' : '' }}> + + charge_tax == 0 ? 'checked' : '' }}>
- {!! Form::label('tax_id', 'Tax ID', array('class'=>'control-label required')) !!} + {!! Form::label('tax_id', trans("Organiser.organiser_tax_id"), array('class'=>'control-label required')) !!} {!! Form::text('tax_id', Input::old('tax_id'), array('class'=>'form-control', 'placeholder'=>'Tax ID')) !!}
- {!! Form::label('tax_name', 'Tax name', array('class'=>'control-label required')) !!} + {!! Form::label('tax_name', trans("Organiser.organiser_tax_name"), array('class'=>'control-label required')) !!} {!! Form::text('tax_name', Input::old('tax_name'), array('class'=>'form-control', 'placeholder'=>'Tax name')) !!}
- {!! Form::label('tax_value', 'Tax value', array('class'=>'control-label required')) !!} + {!! Form::label('tax_value', trans("Organiser.organiser_tax_value"), array('class'=>'control-label required')) !!} {!! Form::text('tax_value', Input::old('tax_value'), array('class'=>'form-control', 'placeholder'=>'Tax Value')) !!}
diff --git a/resources/views/ManageOrganiser/Partials/OrganiserCreateAndEditJS.blade.php b/resources/views/ManageOrganiser/Partials/OrganiserCreateAndEditJS.blade.php new file mode 100644 index 00000000..01737a17 --- /dev/null +++ b/resources/views/ManageOrganiser/Partials/OrganiserCreateAndEditJS.blade.php @@ -0,0 +1,17 @@ +$(document).ready(function(){ + var charge_tax = $("input[type=radio][name='charge_tax']:checked").val(); + if (charge_tax == 1) { + $('#tax_fields').show(); + } else { + $('#tax_fields').hide(); + } + + $('input[type=radio][name=charge_tax]').change(function() { + if (this.value == 1) { + $('#tax_fields').show(); + } + else { + $('#tax_fields').hide(); + } + }); +}); \ No newline at end of file diff --git a/resources/views/Shared/Layouts/MasterWithoutMenus.blade.php b/resources/views/Shared/Layouts/MasterWithoutMenus.blade.php index 48ba8c5a..9bd98d6b 100644 --- a/resources/views/Shared/Layouts/MasterWithoutMenus.blade.php +++ b/resources/views/Shared/Layouts/MasterWithoutMenus.blade.php @@ -7,8 +7,6 @@ @include('Shared.Partials.GlobalMeta') - @yield('head') - {!! HTML::script('vendor/jquery/dist/jquery.min.js') !!} @@ -17,6 +15,8 @@ {!!HTML::style('assets/stylesheet/application.css')!!} + @yield('head') +