Skip to content

Commit

Permalink
Merge pull request #393 from xzzy/master
Browse files Browse the repository at this point in the history
Bug Fixes for Mooring
  • Loading branch information
scottp-dpaw committed Aug 29, 2018
2 parents 47ef009 + e0aa74c commit 3db2860
Show file tree
Hide file tree
Showing 25 changed files with 234 additions and 86 deletions.
11 changes: 5 additions & 6 deletions mooring/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -767,7 +767,9 @@ def addPrice(self, request, format='json', pk=None):
except Rate.DoesNotExist as e :
raise serializers.ValidationError('The selected rate does not exist')
else:
rate = Rate.objects.get_or_create(adult=serializer.validated_data['adult'],concession=serializer.validated_data['concession'],child=serializer.validated_data['child'],infant=serializer.validated_data['infant'])[0]
# rate = Rate.objects.get_or_create(mooring=serializer.validated_data['mooring'],adult=serializer.validated_data['adult'],concession=serializer.validated_data['concession'],child=serializer.validated_data['child'],infant=serializer.validated_data['infant'])[0]
# rate = Rate.objects.get_or_create(mooring=serializer.validated_data['mooring'],adult='0.00',concession='0.00',child='0.00',infant='0.00')[0]
rate = Rate.objects.get_or_create(mooring=serializer.validated_data['mooring'])[0]
if rate:
serializer.validated_data['rate']= rate
data = {
Expand Down Expand Up @@ -809,7 +811,8 @@ def updatePrice(self, request, format='json', pk=None):
except Rate.DoesNotExist as e :
raise serializers.ValidationError('The selected rate does not exist')
else:
rate = Rate.objects.get_or_create(adult=serializer.validated_data['adult'],concession=serializer.validated_data['concession'],child=serializer.validated_data['child'],infant=serializer.validated_data['infant'])[0]
#rate = Rate.objects.get_or_create(adult=serializer.validated_data['adult'],concession=serializer.validated_data['concession'],child=serializer.validated_data['child'],infant=serializer.validated_data['infant'])[0]
rate = Rate.objects.get_or_create(mooring=serializer.validated_data['mooring'])[0]
if rate:
serializer.validated_data['rate']= rate
new_data = {
Expand Down Expand Up @@ -1085,7 +1088,6 @@ def retrieve(self, request, pk=None, ratis_id=None, format=None, show_all=False)
for date, info in dates.items()
} for siteid, dates in utils.get_visit_rates(sites_qs, start_date, end_date).items()
}

# fetch availability map
availability = utils.get_campsite_availability(sites_qs, start_date, end_date)
# create our result object, which will be returned as JSON
Expand Down Expand Up @@ -1366,7 +1368,6 @@ def create_booking(request, *args, **kwargs):
@require_http_methods(['GET'])
def get_confirmation(request, *args, **kwargs):
# fetch booking for ID
print "get_confirmation"
booking_id = kwargs.get('booking_id', None)
if (booking_id is None):
return HttpResponse('Booking ID not specified', status=400)
Expand Down Expand Up @@ -1405,8 +1406,6 @@ def list(self, request, *args, **kwargs):
if data is None:
queryset = self.get_queryset()
serializer = self.get_serializer(queryset, many=True)
#print "SERIAL"
#print serializer
data = serializer.data
cache.set('parks',data,3600)
return Response(data)
Expand Down
3 changes: 0 additions & 3 deletions mooring/context_processors.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
from django.conf import settings

def mooring_url(request):
# print "TEST"
# print request.META['HTTP_HOST']
web_url = request.META['HTTP_HOST']
if web_url in settings.ROTTNEST_ISLAND_URL:
#@['mooring-rottnest.austwa.com']:
template_group = 'rottnest'
else:
template_group = 'pvs'
Expand Down
3 changes: 2 additions & 1 deletion mooring/frontend/availability/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,8 @@
"webpack-bundle-analyzer": "^2.2.1",
"webpack-dev-middleware": "^1.10.0",
"webpack-hot-middleware": "^2.16.1",
"webpack-merge": "^2.6.1"
"webpack-merge": "^2.6.1",
"sweetalert2": "^6.6.9"
},
"engines": {
"node": ">= 4.0.0",
Expand Down
21 changes: 19 additions & 2 deletions mooring/frontend/availability/src/availability.vue
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@
</div>
<div class="columns small-6 medium-6 large-3">
<label>Vessel Size
<input id="vesselSize" type="text" placeholder="0" v-on:change="update" v-model="vesselSize"/>
<input id="vesselSize" type="number" placeholder="0" v-on:change="update" v-model="vesselSize"/>
</label>
</div>

Expand Down Expand Up @@ -283,7 +283,8 @@ import 'foundation-sites';
import 'foundation-datepicker/js/foundation-datepicker';
import debounce from 'debounce';
import moment from 'moment';
import swal from 'sweetalert2';
import 'sweetalert2/dist/sweetalert2.css';
var nowTemp = new Date();
var now = moment.utc({year: nowTemp.getFullYear(), month: nowTemp.getMonth(), day: nowTemp.getDate(), hour: 0, minute: 0, second: 0}).toDate();
Expand Down Expand Up @@ -406,6 +407,22 @@ export default {
},
submitBooking: function (site) {
var vm = this;
if (vm.vesselSize > 0 ) {
} else {
swal({
title: 'Missing Vessel Size',
text: "Please enter vessel size:",
type: 'warning',
showCancelButton: false,
confirmButtonText: 'OK',
showLoaderOnConfirm: true,
allowOutsideClick: false
})
return;
}
var submitData = {
arrival: vm.arrivalDateString,
departure: vm.departureDateString,
Expand Down
6 changes: 4 additions & 2 deletions mooring/frontend/exploreparks/src/parkfinder.vue
Original file line number Diff line number Diff line change
Expand Up @@ -1974,8 +1974,10 @@ export default {
var vessel_size = $('#vesselSize').val();
if (vessel_size > 0 ) {
$("#mapPopupBook").attr('href', vm.parkstayUrl+'/availability/?site_id='+properties.marker_id+'&'+vm.bookingParam);
$("#mapPopupBook").attr('target','_blank');
} else {
$("#mapPopupBook").attr('href','javascript:void();');
$("#mapPopupBook").attr('href','javascript:void(0);');
$("#mapPopupBook").attr('target','');
}
} else {
$("#vessel_size_popup").html(properties.props.vessel_size_limit);
Expand All @@ -2002,7 +2004,7 @@ export default {
if (vessel_size > 0 ) {
$("#mapPopupBook").attr('href', vm.parkstayUrl+'/availability/?site_id='+properties.marker_id+'&'+vm.bookingParam);
} else {
$("#mapPopupBook").attr('href','javascript:void();');
$("#mapPopupBook").attr('href','javascript:void;');
}
} else {
$('#mapPopupBook').hide();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -153,11 +153,11 @@ export default {
}
}, {
data: 'adult'
}, {
data: 'concession'
}, {
data: 'child'
data: 'mooring'
// }, {
// data: 'concession'
// }, {
// data: 'child'
}, {
data: 'details',
mRender: function(data, type, full) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -135,8 +135,10 @@ module.exports = {
}, {
"mRender": function(data, type, full) {
var id = full.id;
var addBooking = "<br/><a href='#' class='addBooking' data-campground=\"__ID__\" >Add Booking</a>";
var availability_admin = "<br/><a target='_blank' href='/availability_admin/?site_id=__ID__' >Availability</a>";
// var addBooking = "<br/><a href='#' class='addBooking' data-campground=\"__ID__\" >Add Booking</a>";
var addBooking = "";
// var availability_admin = "<br/><a target='_blank' href='/availability_admin/?site_id=__ID__' >Availability</a>";
var availability_admin = "<br/><a target='_blank' href='/availability/?site_id=__ID__&vessel_size=0' >Availability</a>";
var column = "";
if (full.active) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -169,11 +169,7 @@ export default {
}
}, {
data: 'adult'
}, {
data: 'concession'
}, {
data: 'child'
data: 'mooring'
}, {
data: 'details',
mRender: function(data, type, full) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ module.exports = {
this.stay.reason = id;
},
addMaxStay: function() {
if ($(this.form).valid()){
if ($(this.form).valid()) {
if (!this.stay.id){
this.$emit('addStayHistory');
}else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,8 @@ export default {
dt_headers:{
type:Array,
default:function () {
return ['Period Start', 'Period End', 'Adult Price', 'Concession Price', 'Child Price', 'Comment', 'Action'];
// return ['Period Start', 'Period End', 'Adult Price', 'Concession Price', 'Child Price', 'Comment', 'Action'];
return ['Period Start', 'Period End', 'Mooring Price', 'Comment', 'Action'];
}
}
},
Expand Down Expand Up @@ -119,11 +120,11 @@ export default {
getTitle: function() {
if (this.price.id || this.price.original){
return 'Update Price History';
}else{
} else {
return 'Add Price History';
}
},
showHistory: function(){
showHistory: function() {
this.$refs.historyModal.title = this.getTitle();
this.$refs.historyModal.isOpen = true;
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -160,12 +160,13 @@ module.exports = {
}
});
}
else{
else {
delete vm.priceHistory.rate;
vm.priceHistory.adult = '';
vm.priceHistory.concession = '';
vm.priceHistory.child = '';
vm.priceHistory.infant = '';
vm.priceHistory.mooring = '0.00';
vm.priceHistory.adult = '0.00';
vm.priceHistory.concession = '0.00';
vm.priceHistory.child = '0.00';
vm.priceHistory.infant = '0.00';
}
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ import alert from '../../utils/alert.vue'
module.exports = {
name: 'addMaxStayCS',
props: {
campground: {
mooringarea: {
type: Object,
required: true
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<template id="stayHistory">
<div class="row">
<StayHistoryDetail :stay="stay" :campground="campground" ref="addMaxStayModal" @addCgStayHistory="addStayHistory()" @updateStayHistory="updateStayHistory()"></StayHistoryDetail>
<StayHistoryDetail :stay="stay" :mooringarea="mooringarea" ref="addMaxStayModal" @addCgStayHistory="addStayHistory()" @updateStayHistory="updateStayHistory()"></StayHistoryDetail>
<div class="well">
<alert ref="retrieveStayAlert" :show.sync="retrieve_stay.error" type="danger" :duration="retrieve_stay.timeout">{{retrieve_stay.errorString}}</alert>
<div class="col-sm-8">
Expand Down Expand Up @@ -50,7 +50,7 @@ export default {
data: function() {
let vm = this;
return {
campground: {},
mooringarea: {},
stay: {
reason:''
},
Expand Down Expand Up @@ -167,7 +167,7 @@ export default {
let vm = this;
var data = this.stay;
if (method == 'POST'){
data.campground = vm.object_id;
data.mooringarea = vm.object_id;
}
$.ajax({
url: url,
Expand Down
7 changes: 0 additions & 7 deletions mooring/invoice_pdf.py
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,6 @@ def _create_header(canvas, doc, draw_page_number=True):
canvas.setFont(BOLD_FONTNAME, LARGE_FONTSIZE)

current_y = PAGE_HEIGHT - HEADER_MARGIN
print "HEADER LOGO"
print DPAW_HEADER_LOGO

dpaw_header_logo = ImageReader(DPAW_HEADER_LOGO)
dpaw_header_logo_size = dpaw_header_logo.getSize()
Expand Down Expand Up @@ -237,8 +235,6 @@ def _create_invoice(invoice_buffer, invoice, request,mooring_var):
if mooring_var["TEMPLATE_GROUP"] == 'rottnest':
DPAW_HEADER_LOGO = os.path.join(settings.BASE_DIR, 'mooring', 'static', 'mooring', 'img','logo-rottnest-island-sm.png')

# print DPAW_HEADER_LOGO
print DPAW_HEADER_LOGO
every_page_frame = Frame(PAGE_MARGIN, PAGE_MARGIN + 250, PAGE_WIDTH - 2 * PAGE_MARGIN,
PAGE_HEIGHT -450 , id='EveryPagesFrame',showBoundary=0)
remit_frame = Frame(PAGE_MARGIN, PAGE_MARGIN, PAGE_WIDTH - 2 * PAGE_MARGIN,
Expand Down Expand Up @@ -340,9 +336,6 @@ def _create_invoice(invoice_buffer, invoice, request,mooring_var):

def create_invoice_pdf_bytes(filename, invoice,request,mooring_var):
invoice_buffer = BytesIO()
print "MOORING URL"
print mooring_var

_create_invoice(invoice_buffer, invoice, request,mooring_var)

# Get the value of the BytesIO buffer
Expand Down
35 changes: 35 additions & 0 deletions mooring/migrations/0038_auto_20180827_1341.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.8 on 2018-08-27 05:41
from __future__ import unicode_literals

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('mooring', '0037_auto_20180814_1433'),
]

operations = [
migrations.AlterField(
model_name='rate',
name='adult',
field=models.DecimalField(decimal_places=2, default='10.00', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='child',
field=models.DecimalField(decimal_places=2, default='2.20', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='concession',
field=models.DecimalField(decimal_places=2, default='6.60', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='infant',
field=models.DecimalField(decimal_places=2, default='0', max_digits=8, null=True),
),
]
39 changes: 39 additions & 0 deletions mooring/migrations/0039_auto_20180827_1422.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.10.8 on 2018-08-27 06:22
from __future__ import unicode_literals

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('mooring', '0038_auto_20180827_1341'),
]

operations = [
migrations.AlterField(
model_name='rate',
name='adult',
field=models.DecimalField(blank=True, decimal_places=2, default='10.00', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='child',
field=models.DecimalField(blank=True, decimal_places=2, default='2.20', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='concession',
field=models.DecimalField(blank=True, decimal_places=2, default='6.60', max_digits=8, null=True),
),
migrations.AlterField(
model_name='rate',
name='infant',
field=models.DecimalField(blank=True, decimal_places=2, default='0', max_digits=8, null=True),
),
migrations.AlterUniqueTogether(
name='rate',
unique_together=set([]),
),
]
Loading

0 comments on commit 3db2860

Please sign in to comment.