Sun, 26 May 2019 21:59:18 +0200
Version 0.3.3 start new development.
/***************************************************************************** * Copyright (C) 2018-2019 * * Michiel Broek <mbroek at mbse dot eu> * * This file is part of BMS * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the * Free Software Foundation; either version 2, or (at your option) any * later version. * * BrewCloud is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * * You should have received a copy of the GNU General Public License * along with ThermFerm; see the file COPYING. If not, write to the Free * Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *****************************************************************************/ $(document).ready(function () { var recipe_type = 2; var style_type = 0; var tun_material = 0; // Tab 1, base $("#name").jqxTooltip({ content: 'De naam voor dit brouw project.' }); $("#name").jqxInput({ theme: theme, width: 640, height: 23 }); $("#code").jqxTooltip({ content: 'Het unieke code nummer van dit brouw project.' }); $("#code").jqxInput({ theme: theme, width: 100, height: 23 }); $("#notes").jqxTooltip({ content: 'De uitgebreide opmerkingen over dit project.' }); $("#notes").jqxInput({ theme: theme, width: 960, height: 200 }); $("#type").jqxDropDownList({ theme: theme, source: RecipeTypeAdapter, valueMember: 'id', displayMember: 'nl', width: 180, height: 23, autoDropDownHeight: true }); $("#type").jqxDropDownList('selectItem', 2); $("#type").on('select', function (event) { if (event.args) { recipe_type = event.args.index; } }); // Tab 2, style $("#st_name").jqxTooltip({ content: 'De bierstijl naam voor dit recept.'}); $("#st_name").jqxInput({ theme: theme, width: 250, height: 23 }); $("#st_category").jqxTooltip({ content: 'De Amerikaanse bierstijl categorie.'}); $("#st_category").jqxInput({ theme: theme, width: 250, height: 23 }); $("#st_category_number").jqxTooltip({ content: 'De Amerikaanse bierstijl categorie sub nummer.'}); $("#st_category_number").jqxInput({ theme: theme, width: 70, height: 23 }); $("#st_letter").jqxTooltip({ content: 'De bierstijl letter voor dit recept.'}); $("#st_letter").jqxInput({ theme: theme, width: 250, height: 23 }); $("#st_guide").jqxTooltip({ content: 'De bierstijl gids voor dit recept.'}); $("#st_guide").jqxInput({ theme: theme, width: 250, height: 23 }); $("#st_notes").jqxInput({ theme: theme, width: 800, height: 100 }); $("#st_type").jqxTooltip({ content: 'Het bierstijl type.'}); $("#st_type").jqxInput({ theme: theme, width: 250, height: 23 }); $("#st_og_min").jqxTooltip({ content: 'Het minimum begin SG voor deze bierstijl.'}); $("#st_og_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 3, readOnly: true }); $("#st_og_max").jqxTooltip({ content: 'Het maximum begin SG voor deze bierstijl.'}); $("#st_og_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 3, readOnly: true }); $("#st_fg_min").jqxTooltip({ content: 'Het minimum eind SG voor deze bierstijl.'}); $("#st_fg_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 3, readOnly: true }); $("#st_fg_max").jqxTooltip({ content: 'Het maximum eind SG voor deze bierstijl.'}); $("#st_fg_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 3, readOnly: true }); $("#st_ibu_min").jqxTooltip({ content: 'De minimum bitterheid voor deze bierstijl.'}); $("#st_ibu_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 0, readOnly: true }); $("#st_ibu_max").jqxTooltip({ content: 'De maximum bitterheid voor deze bierstijl.'}); $("#st_ibu_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 0, readOnly: true }); $("#st_color_min").jqxTooltip({ content: 'De minimum kleur voor deze bierstijl.'}); $("#st_color_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 0, readOnly: true }); $("#st_color_max").jqxTooltip({ content: 'De maximum kleur voor deze bierstijl.'}); $("#st_color_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 0, readOnly: true }); $("#st_carb_min").jqxTooltip({ content: 'Het minimum koolzuur volume voor deze bierstijl.'}); $("#st_carb_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 1, readOnly: true }); $("#st_carb_max").jqxTooltip({ content: 'Het maximum koolzuur volume voor deze bierstijl.'}); $("#st_carb_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 1, readOnly: true }); $("#st_abv_min").jqxTooltip({ content: 'Het minimum alcohol volume % voor deze bierstijl.'}); $("#st_abv_min").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 1, readOnly: true }); $("#st_abv_max").jqxTooltip({ content: 'Het maximum alcohol volume % voor deze bierstijl.'}); $("#st_abv_max").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 90, height: 23, decimalDigits: 1, readOnly: true }); $("#st_profile").jqxInput({ theme: theme, width: 800, height: 48 }); $("#st_ingredients").jqxInput({ theme: theme, width: 800, height: 23 }); $("#st_examples").jqxInput({ theme: theme, width: 800, height: 48 }); $("#styleSelect").jqxDropDownList({ placeHolder: "Kies bierstijl:", theme: theme, source: styleslist, displayMember: "name", width: 250, height: 27, dropDownWidth: 500, dropDownHeight: 500, renderer: function (index, label, value) { var datarecord = styleslist.records[index]; return datarecord.style_guide + " " + datarecord.style_letter+ " " + datarecord.name; } }); $("#styleSelect").on('select', function (event) { if (event.args) { var index = event.args.index; var datarecord = styleslist.records[index]; $("#st_name").val(datarecord.name); $("#st_category").val(datarecord.category); $("#st_category_number").val(datarecord.category_number); $("#st_letter").val(datarecord.style_letter); $("#st_guide").val(datarecord.style_guide); style_type = datarecord.type; $("#st_type").val(StyleTypeData[datarecord.type].nl); $("#st_og_min").val(datarecord.og_min); $("#st_og_max").val(datarecord.og_max); $("#st_fg_min").val(datarecord.fg_min); $("#st_fg_max").val(datarecord.fg_max); $("#st_ibu_min").val(datarecord.ibu_min); $("#st_ibu_max").val(datarecord.ibu_max); $("#st_color_min").val(datarecord.color_min); $("#st_color_max").val(datarecord.color_max); $("#st_carb_min").val(datarecord.carb_min); $("#st_carb_max").val(datarecord.carb_max); $("#st_abv_min").val(datarecord.abv_min); $("#st_abv_max").val(datarecord.abv_max); $("#st_notes").val(datarecord.notes); $("#st_profile").val(datarecord.profile); $("#st_ingredients").val(datarecord.ingredients); $("#st_examples").val(datarecord.examples); } }); // Tab 3, equipment $("#eq_name").jqxTooltip({ content: 'De naam van deze brouw apparatuur.' }); $("#eq_name").jqxInput({ theme: theme, width: 250, height: 23 }); $("#eq_calc_boil_volume").jqxCheckBox({ theme: theme, width: 120, height: 23, disabled: true }); $("#eq_boil_size").jqxTooltip({ content: 'Normaal kook volume in liters' }); $("#eq_boil_size").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_batch_size").jqxTooltip({ content: 'Berekende batch grootte in liters aan het eind van de kook.' }); $("#eq_batch_size").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_tun_volume").jqxTooltip({ content: 'Maisch ketel volume.' }); $("#eq_tun_volume").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_tun_weight").jqxTooltip({ content: 'Maisch ketel gewicht.' }); $("#eq_tun_weight").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_tun_height").jqxTooltip({ content: 'Maisch ketel hoogte.' }); $("#eq_tun_height").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_tun_material").jqxTooltip({ content: 'Maisch ketel materiaal.' }); $("#eq_tun_material").jqxInput({ theme: theme, width: 180, height: 23 }); $("#eq_tun_specific_heat").jqxTooltip({ content: 'Maisch ketel warmte geleiding.' }); $("#eq_tun_specific_heat").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 3 }); $("#eq_top_up_water").jqxTooltip({ content: 'Extra water in het gistvat.' }); $("#eq_top_up_water").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_trub_chiller_loss").jqxTooltip({ content: 'Standaard verlies bij het overbrengen naar het gistvat.' }); $("#eq_trub_chiller_loss").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_evap_rate").jqxTooltip({ content: 'Verdamping in liters per uur.' }); $("#eq_evap_rate").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 2, }); $("#eq_boil_time").jqxTooltip({ content: 'Normale kooktijd in minuten.' }); $("#eq_boil_time").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 0 }); $("#eq_top_up_kettle").jqxTooltip({ content: 'Extra water toevoegen tijdens de kook.' }); $("#eq_top_up_kettle").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_hop_utilization").jqxTooltip({ content: '100% voor kleine installaties, hoger voor grote brouwerijen.' }); $("#eq_hop_utilization").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 0 }); $("#eq_notes").jqxTooltip({ content: 'Opmerkingen over deze apparatuur.' }); $("#eq_notes").jqxInput({ theme: theme, width: 960, height: 100 }); $("#eq_lauter_volume").jqxTooltip({ content: 'Filterkuip volume.' }); $("#eq_lauter_volume").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_lauter_height").jqxTooltip({ content: 'Filterkuip hoogte.' }); $("#eq_lauter_height").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_lauter_deadspace").jqxTooltip({ content: 'Filterkuip verlies in liters.' }); $("#eq_lauter_deadspace").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_kettle_volume").jqxTooltip({ content: 'Kook ketel volume in liters.' }); $("#eq_kettle_volume").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_kettle_height").jqxTooltip({ content: 'Kook ketel hoogte in cm.' }); $("#eq_kettle_height").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_mash_volume").jqxTooltip({ content: 'Maisch water voor de eerste stap.' }); $("#eq_mash_volume").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_mash_max").jqxTooltip({ content: 'De maximale moutstort in Kg.' }); $("#eq_mash_max").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#eq_efficiency").jqxTooltip({ content: 'Gemiddeld brouwzaal rendement.' }); $("#eq_efficiency").jqxNumberInput({ inputMode: 'simple', readOnly: true, theme: theme, width: 90, height: 23, decimalDigits: 1 }); $("#equipmentSelect").jqxDropDownList({ placeHolder: "Kies apparatuur:", theme: theme, source: equipmentlist, displayMember: "name", width: 250, height: 27, dropDownWidth: 300, renderer: function (index, label, value) { var datarecord = equipmentlist.records[index]; return datarecord.batch_size + " liter " + datarecord.name; } }); $("#equipmentSelect").on('select', function (event) { if (event.args) { var index = event.args.index; var datarecord = equipmentlist.records[index]; $("#eq_name").val(datarecord.name); $("#eq_boil_size").val(datarecord.boil_size); $("#eq_batch_size").val(datarecord.batch_size); $("#eq_tun_volume").val(datarecord.tun_volume); $("#eq_tun_weight").val(datarecord.tun_weight); $("#eq_tun_specific_heat").val(datarecord.tun_specific_heat); tun_material = datarecord.tun_material; $("#eq_tun_material").val(MaterialData[datarecord.tun_material].nl); $("#eq_tun_height").val(datarecord.tun_height); $("#eq_top_up_water").val(datarecord.top_up_water); $("#eq_trub_chiller_loss").val(datarecord.trub_chiller_loss); $("#eq_evap_rate").val(datarecord.evap_rate); $("#eq_boil_time").val(datarecord.boil_time); $("#eq_calc_boil_volume").val(datarecord.calc_boil_volume); $("#eq_top_up_kettle").val(datarecord.top_up_kettle); $("#eq_hop_utilization").val(datarecord.hop_utilization); $("#eq_notes").val(datarecord.notes); $("#eq_lauter_volume").val(datarecord.lauter_volume); $("#eq_lauter_height").val(datarecord.lauter_height); $("#eq_lauter_deadspace").val(datarecord.lauter_deadspace); $("#eq_kettle_volume").val(datarecord.kettle_volume); $("#eq_kettle_height").val(datarecord.kettle_height); $("#eq_mash_volume").val(datarecord.mash_volume); $("#eq_mash_max").val(datarecord.mash_max); $("#eq_efficiency").val(datarecord.efficiency); } }); //Creating wizard module var wizard = (function () { //Adding event listeners var _addHandlers = function () { $('#name').on('change', function (event) { wizard.validate(true); }); $('#code').on('change', function (event) { wizard.validate(true); }); $('#type').on('change', function (event) { wizard.validate(true); }); $('#styleSelect').on('change', function (event) { wizard.validate(true); }); $('#equipmentSelect').on('change', function (event) { wizard.validate(true); }); $('#nextButtonCompleted').click(function () { var d = new Date(); var m = d.getMonth() + 1; var b = d.getFullYear() + '-'; if (m < 10) b = b + '0'; b = b + m + '-'; if (d.getDate() < 10) b = b + '0'; b = b + d.getDate(); var newrow = { record: -1, name: $("#name").val(), code: $("#code").val(), birth: b, stage: 0, notes: $("#notes").val(), log_brew: false, log_fermentation: false, inventory_reduced: false, locked: false, eq_name: $("#eq_name").val(), eq_boil_size: parseFloat($("#eq_boil_size").jqxNumberInput('decimal')), eq_batch_size: parseFloat($("#eq_batch_size").jqxNumberInput('decimal')), eq_tun_volume: parseFloat($("#eq_tun_volume").jqxNumberInput('decimal')), eq_tun_weight: parseFloat($("#eq_tun_weight").jqxNumberInput('decimal')), eq_tun_specific_heat: parseFloat($("#eq_tun_specific_heat").jqxNumberInput('decimal')), eq_tun_material: tun_material, eq_tun_height: parseFloat($("#eq_tun_height").jqxNumberInput('decimal')) / 100, eq_top_up_water: parseFloat($("#eq_top_up_water").jqxNumberInput('decimal')), eq_trub_chiller_loss: parseFloat($("#eq_trub_chiller_loss").jqxNumberInput('decimal')), eq_evap_rate: parseFloat($("#eq_evap_rate").jqxNumberInput('decimal')), eq_boil_time: parseFloat($("#eq_boil_time").jqxNumberInput('decimal')), eq_calc_boil_volume: $("#eq_calc_boil_volume").val(), eq_top_up_kettle: parseFloat($("#eq_top_up_kettle").jqxNumberInput('decimal')), eq_hop_utilization: parseFloat($("#eq_hop_utilization").jqxNumberInput('decimal')), eq_notes: $("#eq_notes").val(), eq_lauter_volume: parseFloat($("#eq_lauter_volume").jqxNumberInput('decimal')), eq_lauter_height: parseFloat($("#eq_lauter_height").jqxNumberInput('decimal')) / 100, eq_lauter_deadspace: parseFloat($("#eq_lauter_deadspace").jqxNumberInput('decimal')), eq_kettle_volume: parseFloat($("#eq_kettle_volume").jqxNumberInput('decimal')), eq_kettle_height: parseFloat($("#eq_kettle_height").jqxNumberInput('decimal')) / 100, eq_mash_volume: parseFloat($("#eq_mash_volume").jqxNumberInput('decimal')), eq_mash_max: parseFloat($("#eq_mash_max").jqxNumberInput('decimal')), eq_efficiency: parseFloat($("#eq_efficiency").jqxNumberInput('decimal')), brew_date_start: '', brew_mash_ph: 0.0, brew_mash_sg: 1.000, brew_sparge_temperature: 0, brew_sparge_volume: 0, brew_sparge_ph: 0.0, brew_preboil_volume: 0, brew_preboil_sg: 0, brew_preboil_ph: 0.0, brew_aboil_volume: 0, brew_aboil_sg: 0, brew_aboil_ph: 0.0, brew_aboil_efficiency: 0, brew_cooling_method: 0, brew_cooling_time: 0, brew_cooling_to: 20, brew_whirlpool9: 0, brew_whirlpool7: 0, brew_whirlpool6: 0, brew_whirlpool2: 0, brew_fermenter_volume: parseFloat($("#eq_batch_size").jqxNumberInput('decimal')) - parseFloat($("#eq_trub_chiller_loss").jqxNumberInput('decimal')) + parseFloat($("#eq_top_up_water").jqxNumberInput('decimal')), brew_fermenter_extrawater: parseFloat($("#eq_top_up_water").jqxNumberInput('decimal')), brew_fermenter_tcloss: parseFloat($("#eq_trub_chiller_loss").jqxNumberInput('decimal')), brew_aeration_time: 0, brew_aeration_speed: 0, brew_aeration_type: 0, brew_fermenter_sg: 0, brew_fermenter_ibu: 0, brew_fermenter_color: 0, brew_date_end: '', og: 0, fg: 0, primary_start_temp: 0, primary_max_temp: 0, primary_end_temp: 0, primary_end_sg: 0, primary_end_date: '', secondary_temp: 0, secondary_end_date: '', tertiary_temp: 0, package_date: '', bottle_amount: 0, bottle_carbonation: 0, bottle_priming_sugar: 0, bottle_priming_amount: 0, bottle_carbonation_temp: 23, keg_amount: 0, keg_carbonation: 0, keg_priming_sugar: 0, keg_priming_amount: 0, keg_carbonation_temp: 23, keg_forced_carb: false, keg_pressure: 0, taste_notes: '', taste_rate: 0, taste_date: '', taste_color: '', taste_transparency: '', taste_head: '', taste_aroma: '', taste_taste: '', taste_mouthfeel: '', taste_aftertaste: '', st_name: $('#st_name').val(), st_letter: $('#st_letter').val(), st_guide: $('#st_guide').val(), st_type: style_type, st_category: $('#st_category').val(), st_category_number: parseFloat($("#st_category_number").jqxNumberInput('decimal')), st_og_min: parseFloat($("#st_og_min").jqxNumberInput('decimal')), st_og_max: parseFloat($("#st_og_max").jqxNumberInput('decimal')), st_fg_min: parseFloat($("#st_fg_min").jqxNumberInput('decimal')), st_fg_max: parseFloat($("#st_fg_max").jqxNumberInput('decimal')), st_ibu_min: parseFloat($("#st_ibu_min").jqxNumberInput('decimal')), st_ibu_max: parseFloat($("#st_ibu_max").jqxNumberInput('decimal')), st_color_min: parseFloat($("#st_color_min").jqxNumberInput('decimal')), st_color_max: parseFloat($("#st_color_max").jqxNumberInput('decimal')), st_carb_min: parseFloat($("#st_carb_min").jqxNumberInput('decimal')), st_carb_max: parseFloat($("#st_carb_max").jqxNumberInput('decimal')), st_abv_min: parseFloat($("#st_abv_min").jqxNumberInput('decimal')), st_abv_max: parseFloat($("#st_abv_max").jqxNumberInput('decimal')), type: recipe_type, batch_size: parseFloat($("#eq_batch_size").jqxNumberInput('decimal')), boil_size: parseFloat($("#eq_boil_size").jqxNumberInput('decimal')), boil_time: parseFloat($("#eq_boil_time").jqxNumberInput('decimal')), efficiency: parseFloat($("#eq_efficiency").jqxNumberInput('decimal')), est_og: 0.000, est_fg: 0.000, est_color: 0, est_abv: 0.0, est_carb: 0.0, color_method: 0, est_ibu: 0, ibu_method: 0, mash_name: "", mash_ph: 5.4, sparge_temp: 85.0, sparge_volume: parseFloat($("#eq_boil_size").jqxNumberInput('decimal')) / 2, sparge_ph: 5.8, sparge_source: 0, sparge_acid_type: 0, sparge_acid_perc: 80, sparge_acid_amount: 0, calc_acid: true, w1_name: 'Tap water', w1_amount: parseFloat($("#eq_mash_volume").jqxNumberInput('decimal')), w1_calcium: 0, w1_sulfate: 0, w1_chloride: 0, w1_sodium: 0, w1_magnesium: 0, w1_total_alkalinity: 0, w1_ph: 7.0, w1_cost: 0.0, wa_acid_name: 0, // Lactic acid wa_acid_perc: 80, wa_base_name: 0 }; var data = "insert=true&return=" + my_return + "&" + $.param(newrow); $.ajax({ dataType: 'json', url: "includes/db_product.php", cache: false, data: data, type: "POST", success: function (data, status, xhr) { // update command is executed. window.location.href = my_return; }, error: function(jqXHR, textStatus, errorThrown) { } }); }); $('.nextButton').click(function () { wizard.validate(true); $('#jqxTabs').jqxTabs('next'); }); $('.backButton').click(function () { wizard.validate(true); $('#jqxTabs').jqxTabs('previous'); }); }; return { //Initializing the wizzard - creating all elements, adding event handlers and starting the validation init: function () { $('#jqxTabs').jqxTabs({ theme: theme, height: 630, width: 1280, autoHeight: false, position: 'top', keyboardNavigation: false }); $('#nextButtonBase').jqxButton({ theme: theme, width: 150 }); $('#nextButtonStyle').jqxButton({ theme: theme, width: 150}); $('#backButtonStyle').jqxButton({ theme: theme, width: 150}); $('#nextButtonEq').jqxButton({ theme: theme, width: 150}); $('#backButtonEq').jqxButton({ theme: theme, width: 150}); $('#nextButtonCompleted').jqxButton({ theme: theme, width: 150}); $('#backButtonCompleted').jqxButton({ theme: theme, width: 150}); _addHandlers(); this.validate(); this.showHint('Validation hints.'); }, //Validating all wizard tabs validate: function (notify) { if (!this.firstTab(notify)) { $('#jqxTabs').jqxTabs('disableAt', 1); $('#jqxTabs').jqxTabs('disableAt', 2); $('#jqxTabs').jqxTabs('disableAt', 3); return; } else { $('#jqxTabs').jqxTabs('enableAt', 1); } if (!this.secondTab(notify)) { $('#jqxTabs').jqxTabs('disableAt', 2); $('#jqxTabs').jqxTabs('disableAt', 3); return; } else { $('#jqxTabs').jqxTabs('enableAt', 2); } if (!this.thirdTab(notify)) { $('#jqxTabs').jqxTabs('disableAt', 3); return; } else { $('#jqxTabs').jqxTabs('enableAt', 3); } }, //Displaying message to the user showHint: function (message, selector) { if (typeof selector === 'undefined') { selector = '.hint'; } if (message === '') { message = 'Ok, je mag doorgaan.'; } $(selector).html('<strong>' + message + '</strong>'); }, //Validating the first tab firstTab: function (notify) { var name = $('#name').val(), code = $('#code').val(), message = ''; if (name.length < 3) { message += 'Je moet een brouw project naam invullen. <br />'; } if (code.length < 3) { message += 'Je moet een brouw project code invullen. <br />'; } // Check if code already exists. if (message !== '') { if (notify) { this.showHint(message, '#hintBase'); } return false; } this.showHint('Ok, je mag doorgaan.', '#hintBase'); return true; }, //Validating the second tab secondTab: function (notify) { var stylesel = $('#styleSelect').val(), message = ''; if (stylesel.length < 3) { message += 'Je moet een bierstijl kiezen. <br />'; } if (message !== '') { if (notify) { this.showHint(message, '#hintStyle'); } return false; } this.showHint('Ok, je mag doorgaan.', '#hintStyle'); return true; }, //Validating the third tab thirdTab: function (notify) { var equipsel = $('#equipmentSelect').val(), message = ''; if (equipsel.length < 3) { message += 'Je moet een brouw installatie kiezen. <br />'; } if (message !== '') { if (notify) { this.showHint(message, '#hintEq'); } return false; } this.showHint('Ok, je mag doorgaan.', '#hintEq'); return true; } } } ()); //Initializing the wizard wizard.init(); });