/** * */ dojo.declare("hireacar._FilteredTimePicker",dijit._TimePicker,{ // extend the default show() method _getFilteredNodes: function(/*number*/ start, /*number*/ maxNum, /*Boolean*/ before){ // summary: // Returns an array of nodes with the filter applied. At most maxNum nodes // will be returned - but fewer may be returned as well. If the // before parameter is set to true, then it will return the elements // before the given index // tags: // private var nodes = [], n, i = start, max = this._maxIncrement + Math.abs(i), chk = before?-1:1, dec = before?1:0, inc = before?0:1; do{ i = i - dec; var date = new Date(this._refDate); var incrementDate = this._clickableIncrementDate; date.setHours(date.getHours() + incrementDate.getHours() * i, date.getMinutes() + incrementDate.getMinutes() * i, date.getSeconds() + incrementDate.getSeconds() * i); if(!this.isDisabledDate(date)) { n = this._createOption(i); if(n){nodes.push(n);} } i = i + inc; }while(nodes.length < maxNum && (i*chk) < max); if(before){ nodes.reverse(); } return nodes; } }); dojo.declare("hireacar.SelectPlainLabels", dijit.form.Select, { _setValueAttr: function(/*anything*/ newValue, /*Boolean?*/ priorityChange){ // summary: // set the value of the widget. // If a string is passed, then we set our value from looking it up. if(this._loadingStore){ // Our store is loading - so save our value, and we'll set it when // we're done this._pendingValue = newValue; return; } var opts = this.getOptions() || []; if(!dojo.isArray(newValue)){ newValue = [newValue]; } dojo.forEach(newValue, function(i, idx){ if(!dojo.isObject(i)){ i = i + ""; } if(typeof i === "string"){ newValue[idx] = dojo.filter(opts, function(node){ return node.value === i; })[0] || {value: "", label: ""}; } }, this); // Make sure some sane default is set newValue = dojo.filter(newValue, function(i){ return i && i.value; }); if(!this.multiple && (!newValue[0] || !newValue[0].value) && opts.length){ newValue[0] = opts[0]; } dojo.forEach(opts, function(i){ i.selected = dojo.some(newValue, function(v){ return v.value === i.value; }); }); var val = dojo.map(newValue, function(i){ return i.value; }), disp = dojo.map(newValue, function(i){ return i.plainLabel; }); this.value = this.multiple ? val : val[0]; this._setDisplay(this.multiple ? disp : disp[0]); this._updateSelection(); this._handleOnChange(this.value, priorityChange); }, _getOptionObjForItem: function(item){ // summary: // Returns an option object based off the given item. The "value" // of the option item will be the identity of the item, the "label" // of the option will be the label of the item. If the item contains // children, the children value of the item will be set var store = this.store, label = store.getLabel(item), value = (label ? store.getIdentity(item) : null); var plainLabel = store.getValue(item, "plainLabel", label); return {value: value, label: label, item:item, plainLabel: plainLabel}; // dijit.form.__SelectOption } }); dojo.require("dojo.fx"); dojo.addOnLoad(function() { dijit.byId("from-time").popupClass = "hireacar._FilteredTimePicker"; dijit.byId("to-time").popupClass = "hireacar._FilteredTimePicker"; }); var usedForm = false; function updateDays() { if (usedForm == false) { _gaq.push(['_trackEvent', 'Enquiry', 'UsedForm']); usedForm = true; } fromDate = dijit.byId("from-date").get('value'); toDate = dijit.byId("to-date").get('value'); dijit.byId("days").set('value', dojo.date.difference(fromDate, toDate, "day") + daysModifier(), false); daysChanged(); } function updateEndDate() { fromDate = dijit.byId("from-date").get('value'); days = dijit.byId("days").get('value'); days = days - daysModifier(); dijit.byId("to-date").set('value', dojo.date.add(fromDate,"day", days), false); daysChanged(); } function checkHalfDay(days) { type = dijit.byId("vehicle-type-select").get('value'); rate = findPriceForType({type: type}); } function daysModifier() { if (hourDifference() >= 4) { return 1; } else { return 0; } } function hourDifference() { fromTime = dijit.byId('from-time').get('value'); // console.log(fromTime); fromTime = new Date(1970,0,2,fromTime.getHours(), fromTime.getMinutes()); // console.log(fromTime); toTime = dijit.byId('to-time').get('value'); toTime = new Date(1970,0,2,toTime.getHours(), toTime.getMinutes()); return dojo.date.difference(fromTime,toTime, "hour"); } function daysChanged() { updateDropDownVehicleTypes(); updateCalculations(); } function updateDropDownVehicleTypes() { vehicleTypesStore.fetch({ query: {}, onComplete: function(items, request) { var i; var days = dijit.byId("days").get('value'); for (i = 0; i < items.length; i++) { var item = items[i]; type = vehicleTypesStore.getValue(item, "name"); rate = findPriceForType({type: type}); dropImage = vehicleTypesStore.getValue(item, "dropImage"); label = "
"; label += "
$" + rate + " a day
"; label += "
$" + rate * days + " Subtotal
"; label += "
"; vehicleTypesStore.setValue(item, "label" , label); } } }); } function changeVehicleClass(vclass) { dijit.byId('vehicle-type-select').set('value', vclass); } function updateCalculations() { type = dijit.byId("vehicle-type-select").get('value'); rate = findPriceForType({type: type}); dijit.byId('daily-price').set('value', rate); var days = dijit.byId("days").get('value'); var subTotal = rate * days; dijit.byId('sub-total').set('value', subTotal); // Add up extras var extrasTotal = 0; if (dijit.byId('gps').get('value') == "on") { extrasTotal += 8 * days; } dijit.byId('total').set('value', subTotal + extrasTotal) } function vehicleTypeChanged() { var type = dijit.byId("vehicle-type-select").get('value'); var node = dojo.byId("selected-vehicle-image"); vehicleTypesStore.fetch({ query: {name: type}, onComplete: function(items, request) { vtype = items[0]; var smallImage = vehicleTypesStore.getValue(vtype, "smallImage", null); if(smallImage != null) { dojo.fadeOut({ node: node, onEnd: function() { node.innerHTML = ""; dojo.fadeIn({ node: node }).play(); } }).play(); } else { dojo.style("selected-vehicle-image", "display", "none"); } // Update transmission var availableTransmissions = vehicleTypesStore.getValue(vtype, "availableTransmissions", null); var transmissionSelect = dijit.byId('transmission'); if(availableTransmissions == "both") { transmissionSelect.set('disabled', false); var transmissionPriority = vehicleTypesStore.getValue(vtype, "transmissionPriority", null); transmissionSelect.set('value', transmissionPriority); } else { transmissionSelect.set('disabled', true); transmissionSelect.set('value', availableTransmissions); } } }); updateCalculations(); } function findPriceForType(arg) { days = dijit.byId("days").get('value'); var rate; fromMonth = dijit.byId("from-date").get('value').getMonth() +1; if (fromMonth >= 4 && fromMonth <=8) { period = "winter"; } else { period = "summer"; } ratesStore.fetch({ query: {itemClass: arg.type, period: period}, onComplete: function(items, request) { var i; for (i = 0; i < items.length; i++) { var item = items[i]; if (ratesStore.hasAttribute(item, "minDays")) { if (ratesStore.getValue(item, "minDays") <= days) { rate = ratesStore.getValue(item,"dailyPrice"); } } } } }); if (rate == 'N') { rate = "By Negotation"; } return rate; } function findHalfDayRate(arg) { var rate = null; console.log("getting half day rate"); ratesStore.fetch({ query: { itemClass: arg.type, halfDay: true }, onItem: function(item, request) { rate = ratesStore.getValue(item, "halfDayPrice"); console.log("got half day price" + rate); } }); return rate; } ratesJSON = { 'items': [ {'period': 'summer', 'itemClass': 'economy', 'halfDay': true, 'halfDayPrice': 35}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 1, 'dailyPrice': 62}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 2, 'dailyPrice': 58}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 3, 'dailyPrice': 50}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 4, 'dailyPrice': 48}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 8, 'dailyPrice': 42}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 15, 'dailyPrice': 38}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 22, 'dailyPrice': 34}, {'period': 'summer', 'itemClass': 'economy', 'minDays': 31, 'dailyPrice': 30}, {'period': 'summer', 'itemClass': 'ecogold', 'halfDay': true, 'halfDayPrice': 45}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 1, 'dailyPrice': 72}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 2, 'dailyPrice': 68}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 3, 'dailyPrice': 60}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 4, 'dailyPrice': 58}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 8, 'dailyPrice': 52}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 15, 'dailyPrice': 48}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 22, 'dailyPrice': 44}, {'period': 'summer', 'itemClass': 'ecogold', 'minDays': 31, 'dailyPrice': 40}, {'period': 'summer', 'itemClass': 'touring', 'halfDay': true, 'halfDayPrice': 40}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 1, 'dailyPrice': 68}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 2, 'dailyPrice': 62}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 3, 'dailyPrice': 56}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 4, 'dailyPrice': 52}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 8, 'dailyPrice': 48}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 15, 'dailyPrice': 42}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 22, 'dailyPrice': 38}, {'period': 'summer', 'itemClass': 'touring', 'minDays': 31, 'dailyPrice': 32}, {'period': 'summer', 'itemClass': 'business', 'halfDay': true, 'halfDayPrice': 50}, {'period': 'summer', 'itemClass': 'business', 'minDays': 1, 'dailyPrice': 78}, {'period': 'summer', 'itemClass': 'business', 'minDays': 2, 'dailyPrice': 72}, {'period': 'summer', 'itemClass': 'business', 'minDays': 3, 'dailyPrice': 68}, {'period': 'summer', 'itemClass': 'business', 'minDays': 4, 'dailyPrice': 60}, {'period': 'summer', 'itemClass': 'business', 'minDays': 8, 'dailyPrice': 55}, {'period': 'summer', 'itemClass': 'business', 'minDays': 15, 'dailyPrice': 48}, {'period': 'summer', 'itemClass': 'business', 'minDays': 22, 'dailyPrice': 42}, {'period': 'summer', 'itemClass': 'business', 'minDays': 31, 'dailyPrice': 38}, {'period': 'summer', 'itemClass': 'executive', 'halfDay': true, 'halfDayPrice': 55}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 1, 'dailyPrice': 82}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 2, 'dailyPrice': 78}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 3, 'dailyPrice': 72}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 4, 'dailyPrice': 66}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 8, 'dailyPrice': 58}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 15, 'dailyPrice': 52}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 22, 'dailyPrice': 44}, {'period': 'summer', 'itemClass': 'executive', 'minDays': 31, 'dailyPrice': 40}, {'period': 'summer', 'itemClass': 'mx5', 'halfDay': true, 'halfDayPrice': 55}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 1, 'dailyPrice': 85}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 2, 'dailyPrice': 80}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 3, 'dailyPrice': 75}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 4, 'dailyPrice': 70}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 8, 'dailyPrice': 66}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 15, 'dailyPrice': 62}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 22, 'dailyPrice': 54}, {'period': 'summer', 'itemClass': 'mx5', 'minDays': 31, 'dailyPrice': 50}, {'period': 'summer', 'itemClass': '8seat', 'halfDay': true, 'halfDayPrice': 60}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 1, 'dailyPrice': 120}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 2, 'dailyPrice': 112}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 3, 'dailyPrice': 108}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 4, 'dailyPrice': 98}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 8, 'dailyPrice': 88}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 15, 'dailyPrice': 76}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 22, 'dailyPrice': 62}, {'period': 'summer', 'itemClass': '8seat', 'minDays': 31, 'dailyPrice': 58}, {'period': 'summer', 'itemClass': '11seat', 'halfDay': true, 'halfDayPrice': 70}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 1, 'dailyPrice': 125}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 2, 'dailyPrice': 118}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 3, 'dailyPrice': 112}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 4, 'dailyPrice': 105}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 8, 'dailyPrice': 92}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 15, 'dailyPrice': 82}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 22, 'dailyPrice': 72}, {'period': 'summer', 'itemClass': '11seat', 'minDays': 31, 'dailyPrice': 62}, {'period': 'winter', 'itemClass': 'economy', 'halfDay': true, 'halfDayPrice': 35}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 1, 'dailyPrice': 58}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 2, 'dailyPrice': 52}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 3, 'dailyPrice': 48}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 4, 'dailyPrice': 40}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 8, 'dailyPrice': 34}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 15, 'dailyPrice': 30}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 22, 'dailyPrice': 22}, {'period': 'winter', 'itemClass': 'economy', 'minDays': 31, 'dailyPrice': 19}, {'period': 'winter', 'itemClass': 'ecogold', 'halfDay': true, 'halfDayPrice': 40}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 1, 'dailyPrice': 65}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 2, 'dailyPrice': 59}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 3, 'dailyPrice': 55}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 4, 'dailyPrice': 47}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 8, 'dailyPrice': 42}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 15, 'dailyPrice': 37}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 22, 'dailyPrice': 31}, {'period': 'winter', 'itemClass': 'ecogold', 'minDays': 31, 'dailyPrice': 28}, {'period': 'winter', 'itemClass': 'touring', 'halfDay': true, 'halfDayPrice': 40}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 1, 'dailyPrice': 62}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 2, 'dailyPrice': 56}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 3, 'dailyPrice': 52}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 4, 'dailyPrice': 44}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 8, 'dailyPrice': 40}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 15, 'dailyPrice': 36}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 22, 'dailyPrice': 28}, {'period': 'winter', 'itemClass': 'touring', 'minDays': 31, 'dailyPrice': 21}, {'period': 'winter', 'itemClass': 'business', 'halfDay': true, 'halfDayPrice': 45}, {'period': 'winter', 'itemClass': 'business', 'minDays': 1, 'dailyPrice': 68}, {'period': 'winter', 'itemClass': 'business', 'minDays': 2, 'dailyPrice': 62}, {'period': 'winter', 'itemClass': 'business', 'minDays': 3, 'dailyPrice': 58}, {'period': 'winter', 'itemClass': 'business', 'minDays': 4, 'dailyPrice': 50}, {'period': 'winter', 'itemClass': 'business', 'minDays': 8, 'dailyPrice': 44}, {'period': 'winter', 'itemClass': 'business', 'minDays': 15, 'dailyPrice': 30}, {'period': 'winter', 'itemClass': 'business', 'minDays': 22, 'dailyPrice': 32}, {'period': 'winter', 'itemClass': 'business', 'minDays': 31, 'dailyPrice': 26}, {'period': 'winter', 'itemClass': 'executive', 'halfDay': true, 'halfDayPrice': 55}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 1, 'dailyPrice': 72}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 2, 'dailyPrice': 66}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 3, 'dailyPrice': 62}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 4, 'dailyPrice': 54}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 8, 'dailyPrice': 48}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 15, 'dailyPrice': 44}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 22, 'dailyPrice': 36}, {'period': 'winter', 'itemClass': 'executive', 'minDays': 31, 'dailyPrice': 30}, {'period': 'winter', 'itemClass': 'mx5', 'halfDay': true, 'halfDayPrice': 55}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 1, 'dailyPrice': 75}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 2, 'dailyPrice': 69}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 3, 'dailyPrice': 65}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 4, 'dailyPrice': 58}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 8, 'dailyPrice': 52}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 15, 'dailyPrice': 49}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 22, 'dailyPrice': 41}, {'period': 'winter', 'itemClass': 'mx5', 'minDays': 31, 'dailyPrice': 32}, {'period': 'winter', 'itemClass': '8seat', 'halfDay': true, 'halfDayPrice': 55}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 1, 'dailyPrice': 95}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 2, 'dailyPrice': 90}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 3, 'dailyPrice': 85}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 4, 'dailyPrice': 76}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 8, 'dailyPrice': 70}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 15, 'dailyPrice': 62}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 22, 'dailyPrice': 56}, {'period': 'winter', 'itemClass': '8seat', 'minDays': 31, 'dailyPrice': 50}, {'period': 'winter', 'itemClass': '11seat', 'halfDay': true, 'halfDayPrice': 65}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 1, 'dailyPrice': 105}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 2, 'dailyPrice': 98}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 3, 'dailyPrice': 92}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 4, 'dailyPrice': 84}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 8, 'dailyPrice': 76}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 15, 'dailyPrice': 67}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 22, 'dailyPrice': 56}, {'period': 'winter', 'itemClass': '11seat', 'minDays': 31, 'dailyPrice': 55} ] }; ratesStore = new dojo.data.ItemFileReadStore({ data: ratesJSON }); vehicleTypesJSON = { 'identifier': 'name', 'label': 'label', 'items': [ {'name': 'economy', 'plainLabel': 'Economy', 'label': "
", 'smallImage': "images/economy_calc_larg.gif", 'dropImage': "images/economy_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic' }, {'name': 'ecogold', 'plainLabel': 'Economy Gold', 'label': "
", 'smallImage': "images/ecogold_calc_larg.gif", 'dropImage': "images/ecogold_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic' }, {'name': 'touring', 'plainLabel': 'Touring', 'label': "
", 'smallImage': "images/touring_calc_larg.gif" , 'dropImage': "images/touring_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic'}, {'name': 'business', 'plainLabel': 'Business', 'label': "
", 'smallImage': "images/business_calc_larg.gif", 'dropImage': "images/business_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic'}, {'name': 'executive', 'plainLabel': 'Executive', 'label': "
", 'smallImage': "images/exec_calc_larg.gif", 'dropImage': "images/exec_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic'}, {'name': 'mx5', 'plainLabel': 'Mazda Mx5', 'label': "
", 'smallImage': "images/mx5_calc_larg.gif", 'dropImage': "images/mx5_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic'}, {'name': '8seat', 'plainLabel': '8-Seater', 'label': "
" , 'smallImage': "images/8seat_calc_larg.gif", 'dropImage': "images/8seat_cars_dropdown.gif", 'availableTransmissions': 'both', 'transmissionPriority': 'automatic'}, {'name': '11seat', 'plainLabel': '11-Seater', 'label': "
" , 'smallImage': "images/11seat_calc_larg.gif", 'dropImage': "images/11seat_cars_dropdown.gif", 'availableTransmissions': 'manual'} ] }; vehicleTypesStore = new dojo.data.ItemFileWriteStore({ data: vehicleTypesJSON }); dojo.addOnLoad(function() { dijit.byId("vehicle-type-select").setStore(vehicleTypesStore); daysChanged(); });