www/js/rec_edit.js

changeset 809
8b30068497a9
parent 808
f6dcde592a7b
child 810
1f2ca835fe9d
equal deleted inserted replaced
808:f6dcde592a7b 809:8b30068497a9
92 result = 1; 92 result = 1;
93 } else if (use == 3) { // Aroma 93 } else if (use == 3) { // Aroma
94 result = 1.2; 94 result = 1.2;
95 } 95 }
96 return (result * amount * 1000) / vol; 96 return (result * amount * 1000) / vol;
97 }
98
99
100 function setReadonly(ro) {
101 var rw = ! ro, w100 = 110, w80 = 80;
102 if (ro) { // jqxNumberInput width -20 for no spinbuttons
103 w100 = 90;
104 w80 = 60;
105 }
106 $('#w1_name').jqxDropDownList({ disabled: ro });
107 $('#w2_name').jqxDropDownList({ disabled: ro });
108 $('#pr_name').jqxDropDownList({ disabled: ro });
109 $('#wa_cacl2').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
110 $('#wa_caso4').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
111 $('#wa_mgso4').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
112 $('#wa_nacl').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
113 $('#mash_ph').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
114 $('#calc_acid').jqxCheckBox({ disabled: ro });
115 $('#wa_acid_name').jqxDropDownList({ disabled: ro });
116 $('#wa_acid').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
117 $('#wa_acid_perc').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w80 });
118 $('#sparge_temp').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
119 $('#sparge_volume').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
120 $('#sparge_ph').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
121 $('#sparge_source').jqxDropDownList({ disabled: ro });
122 $('#sparge_acid_type').jqxDropDownList({ disabled: ro });
123 $('#sparge_acid_perc').jqxNumberInput({ spinButtons: rw, readOnly: ro, width: w100 });
124 } 97 }
125 98
126 99
127 function calcPercentages() { 100 function calcPercentages() {
128 101
395 dataRecord.est_ibu = total_ibus; 368 dataRecord.est_ibu = total_ibus;
396 $('#est_ibu').val(total_ibus); 369 $('#est_ibu').val(total_ibus);
397 $('#est_ibu2').val(total_ibus); 370 $('#est_ibu2').val(total_ibus);
398 $('#hop_flavour').jqxProgressBar('val', hop_flavour); 371 $('#hop_flavour').jqxProgressBar('val', hop_flavour);
399 $('#hop_aroma').jqxProgressBar('val', hop_aroma); 372 $('#hop_aroma').jqxProgressBar('val', hop_aroma);
400 }
401
402 /*
403 function adjustHops(factor) {
404
405 var i, row, amount, rowscount = $('#hopGrid').jqxGrid('getdatainformation').rowscount;
406 if (rowscount == 0)
407 return;
408
409 for (i = 0; i < rowscount; i++) {
410 row = $('#hopGrid').jqxGrid('getrowdata', i);
411 amount = row.h_amount * factor;
412 $('#hopGrid').jqxGrid('setcellvalue', i, 'h_amount', amount);
413 }
414 }
415 */
416
417 function adjustMiscs(factor) {
418
419 var i, row, amount, rowscount = $('#miscGrid').jqxGrid('getdatainformation').rowscount;
420 if (rowscount == 0)
421 return;
422
423 for (i = 0; i < rowscount; i++) {
424 row = $('#miscGrid').jqxGrid('getrowdata', i);
425 amount = row.m_amount * factor;
426 $('#miscGrid').jqxGrid('setcellvalue', i, 'm_amount', amount);
427 switch (row.m_name) {
428 case 'CaCl2': $('#wa_cacl2').val(row.m_amount * 1000); break;
429 case 'CaSO4': $('#wa_caso4').val(row.m_amount * 1000); break;
430 case 'MgSO4': $('#wa_mgso4').val(row.m_amount * 1000); break;
431 case 'NaCl': $('#wa_nacl').val(row.m_amount * 1000); break;
432 case 'MgCl2': $('#wa_mgcl2').val(row.m_amount * 1000); break;
433 case 'NaHCO3': $('#wa_nahco3').val(row.m_amount * 1000); break;
434 case 'CaCO3': $('#wa_caco3').val(row.m_amount * 1000); break;
435 case 'Melkzuur':
436 case 'Zoutzuur':
437 case 'Fosforzuur':
438 case 'Zwavelzuur': $('#wa_acid').val(row.m_amount * 1000); break;
439 }
440 }
441 } 373 }
442 374
443 375
444 function adjustYeasts(factor) { 376 function adjustYeasts(factor) {
445 377
750 var records = dataAdapter.records; 682 var records = dataAdapter.records;
751 dataRecord = records[0]; 683 dataRecord = records[0];
752 // Hidden record uuid 684 // Hidden record uuid
753 $('#name').val(dataRecord.name); 685 $('#name').val(dataRecord.name);
754 $('#notes').val(dataRecord.notes); 686 $('#notes').val(dataRecord.notes);
755 $('#locked').val(dataRecord.locked); 687 // Hidden record locked
756 $('#st_name').val(dataRecord.st_name); 688 $('#st_name').val(dataRecord.st_name);
757 $('#st_letter').val(dataRecord.st_letter); 689 $('#st_letter').val(dataRecord.st_letter);
758 $('#st_guide').val(dataRecord.st_guide); 690 $('#st_guide').val(dataRecord.st_guide);
759 $('#st_category').val(dataRecord.st_category); 691 $('#st_category').val(dataRecord.st_category);
760 $('#st_category_number').val(dataRecord.st_category_number); 692 $('#st_category_number').val(dataRecord.st_category_number);
793 $('#est_carb').val(dataRecord.est_carb); 725 $('#est_carb').val(dataRecord.est_carb);
794 $('#st_carb_min').val(dataRecord.st_carb_min); 726 $('#st_carb_min').val(dataRecord.st_carb_min);
795 $('#st_carb_max').val(dataRecord.st_carb_max); 727 $('#st_carb_max').val(dataRecord.st_carb_max);
796 $('#mash_name').val(dataRecord.mash_name); 728 $('#mash_name').val(dataRecord.mash_name);
797 $('#mash_ph').val(dataRecord.mash_ph); 729 $('#mash_ph').val(dataRecord.mash_ph);
798 $('#sparge_temp').val(dataRecord.sparge_temp); 730 // $('#sparge_temp').val(dataRecord.sparge_temp);
799 $('#sparge_ph').val(dataRecord.sparge_ph); 731 $('#sparge_ph').val(dataRecord.sparge_ph);
800 $('#sparge_volume').val(dataRecord.sparge_volume); 732 // $('#sparge_volume').val(dataRecord.sparge_volume);
801 $('#sparge_source').val(dataRecord.sparge_source); 733 $('#sparge_source').val(dataRecord.sparge_source);
802 $('#sparge_acid_type').val(dataRecord.sparge_acid_type); 734 $('#sparge_acid_type').val(AcidTypeData[dataRecord.sparge_acid_type].nl);
803 $('#sparge_acid_perc').val(dataRecord.sparge_acid_perc); 735 $('#sparge_acid_perc').val(dataRecord.sparge_acid_perc);
804 $('#sparge_acid_amount').val(dataRecord.sparge_acid_amount * 1000); 736 $('#sparge_acid_amount').val(dataRecord.sparge_acid_amount * 1000);
805 $('#calc_acid').val(dataRecord.calc_acid); 737 $('#calc_acid').val(dataRecord.calc_acid);
806 $('#w1_name').val(dataRecord.w1_name); 738 $('#w1_name').val(dataRecord.w1_name);
807 $('#w1_amount').val(dataRecord.w1_amount); 739 $('#w1_amount').val(dataRecord.w1_amount);
836 $('#wb_chloride').val(dataRecord.wb_chloride); 768 $('#wb_chloride').val(dataRecord.wb_chloride);
837 $('#wb_sodium').val(dataRecord.wb_sodium); 769 $('#wb_sodium').val(dataRecord.wb_sodium);
838 $('#wb_magnesium').val(dataRecord.wb_magnesium); 770 $('#wb_magnesium').val(dataRecord.wb_magnesium);
839 $('#wb_total_alkalinity').val(dataRecord.wb_total_alkalinity); 771 $('#wb_total_alkalinity').val(dataRecord.wb_total_alkalinity);
840 $('#wb_ph').val(dataRecord.wb_ph); 772 $('#wb_ph').val(dataRecord.wb_ph);
841 $('#wa_acid_name').val(dataRecord.wa_acid_name); 773 $('#wa_acid_name').val(AcidTypeData[dataRecord.wa_acid_name].nl);
842 $('#wa_acid_perc').val(dataRecord.wa_acid_perc); 774 $('#wa_acid_perc').val(dataRecord.wa_acid_perc);
843 editFermentable(dataRecord); 775 editFermentable(dataRecord);
844 editHop(dataRecord); 776 editHop(dataRecord);
845 editMisc(dataRecord); 777 editMisc(dataRecord);
846 editYeast(dataRecord); 778 editYeast(dataRecord);
1061 break; 993 break;
1062 case 'CaCO3': 994 case 'CaCO3':
1063 $('#wa_caco3').val(row.m_amount * 1000); 995 $('#wa_caco3').val(row.m_amount * 1000);
1064 break; 996 break;
1065 case 'Melkzuur': 997 case 'Melkzuur':
1066 $('#wa_acid_name').val(0); 998 $('#wa_acid_name').val(AcidTypeData[0].nl);
1067 $('#wa_acid').val(row.m_amount * 1000); 999 $('#wa_acid').val(row.m_amount * 1000);
1068 $('#wa_acid_perc').val(AcidTypeData[0].AcidPrc); 1000 $('#wa_acid_perc').val(AcidTypeData[0].AcidPrc);
1069 last_acid = 'Melkzuur'; 1001 last_acid = 'Melkzuur';
1070 break; 1002 break;
1071 case 'Zoutzuur': 1003 case 'Zoutzuur':
1072 $('#wa_acid_name').val(1); 1004 $('#wa_acid_name').val(AcidTypeData[1].nl);
1073 $('#wa_acid').val(row.m_amount * 1000); 1005 $('#wa_acid').val(row.m_amount * 1000);
1074 $('#wa_acid_perc').val(AcidTypeData[1].AcidPrc); 1006 $('#wa_acid_perc').val(AcidTypeData[1].AcidPrc);
1075 last_acid = 'Zoutzuur'; 1007 last_acid = 'Zoutzuur';
1076 break; 1008 break;
1077 case 'Fosforzuur': 1009 case 'Fosforzuur':
1078 $('#wa_acid_name').val(2); 1010 $('#wa_acid_name').val(AcidTypeData[2].nl);
1079 $('#wa_acid').val(row.m_amount * 1000); 1011 $('#wa_acid').val(row.m_amount * 1000);
1080 $('#wa_acid_perc').val(AcidTypeData[2].AcidPrc); 1012 $('#wa_acid_perc').val(AcidTypeData[2].AcidPrc);
1081 last_acid = 'Fosforzuur'; 1013 last_acid = 'Fosforzuur';
1082 break; 1014 break;
1083 case 'Zwavelzuur': 1015 case 'Zwavelzuur':
1084 $('#wa_acid_name').val(3); 1016 $('#wa_acid_name').val(AcidTypeData[3].nl);
1085 $('#wa_acid').val(row.m_amount * 1000); 1017 $('#wa_acid').val(row.m_amount * 1000);
1086 $('#wa_acid_perc').val(AcidTypeData[3].AcidPrc); 1018 $('#wa_acid_perc').val(AcidTypeData[3].AcidPrc);
1087 last_acid = 'Zwavelzuur'; 1019 last_acid = 'Zwavelzuur';
1088 break; 1020 break;
1089 } 1021 }
1090 } 1022 }
1091 if (row.m_use_use == 6) { // Sparge 1023 if (row.m_use_use == 6) { // Sparge
1092 /*switch (row.m_name) { 1024 switch (row.m_name) {
1093 case 'CaCl2': 1025 case 'CaCl2':
1094 $('#wa_cacl2').val(row.m_amount * 1000); 1026 $('#ss_cacl2').val(row.m_amount * 1000);
1095 break; 1027 break;
1096 case 'CaSO4': 1028 case 'CaSO4':
1097 $('#wa_caso4').val(row.m_amount * 1000); 1029 $('#ss_caso4').val(row.m_amount * 1000);
1098 break; 1030 break;
1099 case 'MgSO4': 1031 case 'MgSO4':
1100 $('#wa_mgso4').val(row.m_amount * 1000); 1032 $('#ss_mgso4').val(row.m_amount * 1000);
1101 break; 1033 break;
1102 case 'NaCl': 1034 case 'NaCl':
1103 $('#wa_nacl').val(row.m_amount * 1000); 1035 $('#ss_nacl').val(row.m_amount * 1000);
1104 break; 1036 break;
1105 case 'MgCl2': 1037 case 'MgCl2':
1106 $('#wa_mgcl2').val(row.m_amount * 1000); 1038 $('#ss_mgcl2').val(row.m_amount * 1000);
1107 break; 1039 break;
1108 case 'NaHCO3': 1040 case 'Melkzuur':
1109 $('#wa_nahco3').val(row.m_amount * 1000); 1041 // $('#wa_acid_name').val(0);
1110 break; 1042 // $('#wa_acid').val(row.m_amount * 1000);
1111 case 'CaCO3': 1043 // $('#wa_acid_perc').val(AcidTypeData[0].AcidPrc); // TODO: this ignores changed percentages.
1112 $('#wa_caco3').val(row.m_amount * 1000); 1044 // last_acid = 'Melkzuur';
1113 break; 1045 break;
1114 case 'Melkzuur': 1046 case 'Zoutzuur':
1115 $('#wa_acid_name').val(0); 1047 // $('#wa_acid_name').val(1);
1116 $('#wa_acid').val(row.m_amount * 1000); 1048 // $('#wa_acid').val(row.m_amount * 1000);
1117 $('#wa_acid_perc').val(AcidTypeData[0].AcidPrc); // TODO: this ignores changed percentages. 1049 // $('#wa_acid_perc').val(AcidTypeData[1].AcidPrc);
1118 last_acid = 'Melkzuur'; 1050 // last_acid = 'Zoutzuur';
1119 break; 1051 break;
1120 case 'Zoutzuur': 1052 case 'Fosforzuur':
1121 $('#wa_acid_name').val(1); 1053 // $('#wa_acid_name').val(2);
1122 $('#wa_acid').val(row.m_amount * 1000); 1054 // $('#wa_acid').val(row.m_amount * 1000);
1123 $('#wa_acid_perc').val(AcidTypeData[1].AcidPrc); 1055 // $('#wa_acid_perc').val(AcidTypeData[2].AcidPrc);
1124 last_acid = 'Zoutzuur'; 1056 // last_acid = 'Fosforzuur';
1125 break; 1057 break;
1126 case 'Fosforzuur': 1058 case 'Zwavelzuur':
1127 $('#wa_acid_name').val(2); 1059 // $('#wa_acid_name').val(3);
1128 $('#wa_acid').val(row.m_amount * 1000); 1060 // $('#wa_acid').val(row.m_amount * 1000);
1129 $('#wa_acid_perc').val(AcidTypeData[2].AcidPrc); 1061 // $('#wa_acid_perc').val(AcidTypeData[3].AcidPrc);
1130 last_acid = 'Fosforzuur'; 1062 // last_acid = 'Zwavelzuur';
1131 break; 1063 break;
1132 case 'Zwavelzuur': 1064 }
1133 $('#wa_acid_name').val(3);
1134 $('#wa_acid').val(row.m_amount * 1000);
1135 $('#wa_acid_perc').val(AcidTypeData[3].AcidPrc);
1136 last_acid = 'Zwavelzuur';
1137 break;
1138 } */
1139 } 1065 }
1140 } 1066 }
1141 return data; 1067 return data;
1142 }, 1068 },
1143 loadError: function(jqXHR, status, error) {} 1069 loadError: function(jqXHR, status, error) {}
1771 //Step 8. Get the acid data. 1697 //Step 8. Get the acid data.
1772 AT = dataRecord.sparge_acid_type; 1698 AT = dataRecord.sparge_acid_type;
1773 if (AT < 0 || AT >= AcidTypeData.length) { 1699 if (AT < 0 || AT >= AcidTypeData.length) {
1774 AT = 0; 1700 AT = 0;
1775 dataRecord.sparge_acid_type = 0; 1701 dataRecord.sparge_acid_type = 0;
1776 $('#sparge_acid_type').val(0); 1702 $('#sparge_acid_type').val(AcidTypeData[0].nl);
1777 dataRecord.sparge_acid_perc = AcidTypeData[0].AcidPrc; 1703 dataRecord.sparge_acid_perc = AcidTypeData[0].AcidPrc;
1778 $('#sparge_acid_perc').val(dataRecord.sparge_acid_perc); 1704 $('#sparge_acid_perc').val(dataRecord.sparge_acid_perc);
1779 } 1705 }
1780 var fract = CalcFrac(TargetpH, AcidTypeData[AT].pK1, AcidTypeData[AT].pK2, AcidTypeData[AT].pK3); 1706 var fract = CalcFrac(TargetpH, AcidTypeData[AT].pK1, AcidTypeData[AT].pK2, AcidTypeData[AT].pK3);
1781 1707
1794 } 1720 }
1795 1721
1796 function calcInit() { 1722 function calcInit() {
1797 console.log('calc.init()'); 1723 console.log('calc.init()');
1798 1724
1799 $('#calc_acid').on('checked', function(event) { 1725 calcWater();
1800 dataRecord.calc_acid = 1;
1801 calcWater();
1802 });
1803 $('#calc_acid').on('unchecked', function(event) {
1804 dataRecord.calc_acid = 0;
1805 calcWater();
1806 });
1807 $('#w1_name').jqxDropDownList('selectItem', dataRecord.w1_name); 1726 $('#w1_name').jqxDropDownList('selectItem', dataRecord.w1_name);
1808 $('#w2_name').jqxDropDownList('selectItem', dataRecord.w2_name); 1727 $('#w2_name').jqxDropDownList('selectItem', dataRecord.w2_name);
1809 // Fix tap water if zero using mash infuse amount. 1728 // Fix tap water if zero using mash infuse amount.
1810 if (parseFloat($('#w1_amount').jqxNumberInput('decimal')) == 0 && mash_infuse > 0) { 1729 if (parseFloat($('#w1_amount').jqxNumberInput('decimal')) == 0 && mash_infuse > 0) {
1811 $('#w1_amount').val(mash_infuse); 1730 $('#w1_amount').val(mash_infuse);
1813 $('#wg_amount').val(mash_infuse); 1732 $('#wg_amount').val(mash_infuse);
1814 $('#w2_amount').val(0); 1733 $('#w2_amount').val(0);
1815 dataRecord.w2_amount = 0; 1734 dataRecord.w2_amount = 0;
1816 } 1735 }
1817 calcWater(); 1736 calcWater();
1818 $('#w2_amount').on('change', function(event) { 1737
1819 var newval = parseFloat(event.args.value);
1820
1821 if (newval > mash_infuse) {
1822 $('#w2_amount').val(dataRecord.w2_amount);
1823 return;
1824 }
1825 dataRecord.w1_amount = parseFloat($('#wg_amount').jqxNumberInput('decimal')) - newval;
1826 $('#w1_amount').val(dataRecord.w1_amount);
1827 dataRecord.w2_amount = newval;
1828 console.log('new: ' + event.args.value + ' w1: ' + dataRecord.w1_amount + ' w2: ' + dataRecord.w2_amount);
1829 calcWater();
1830 });
1831 $('#wa_cacl2').on('change', function(event) {
1832 if (event.args) {
1833 setWaterAgent('CaCl2', 0); // This can prevent double entries.
1834 setWaterAgent('CaCl2', event.args.value);
1835 calcWater();
1836 }
1837 });
1838 $('#wa_caso4').on('change', function(event) {
1839 if (event.args) {
1840 setWaterAgent('CaSO4', 0);
1841 setWaterAgent('CaSO4', event.args.value);
1842 calcWater();
1843 }
1844 });
1845 $('#wa_mgso4').on('change', function(event) {
1846 if (event.args) {
1847 setWaterAgent('MgSO4', 0);
1848 setWaterAgent('MgSO4', event.args.value);
1849 calcWater();
1850 }
1851 });
1852 $('#wa_nacl').on('change', function(event) {
1853 if (event.args) {
1854 setWaterAgent('NaCl', 0);
1855 setWaterAgent('NaCl', event.args.value);
1856 calcWater();
1857 }
1858 });
1859 $('#wa_mgcl2').on('change', function(event) {
1860 if (event.args) {
1861 setWaterAgent('MgCl2', 0);
1862 setWaterAgent('MgCl2', event.args.value);
1863 calcWater();
1864 }
1865 });
1866 $('#wa_nahco3').on('change', function(event) {
1867 if (event.args) {
1868 setWaterAgent('NaHCO3', 0);
1869 setWaterAgent('NaHCO3', event.args.value);
1870 calcWater();
1871 }
1872 });
1873 $('#wa_caco3').on('change', function(event) {
1874 if (event.args) {
1875 setWaterAgent('CaCO3', 0);
1876 setWaterAgent('CaCO3', event.args.value);
1877 calcWater();
1878 }
1879 });
1880 $('#wa_acid_name').on('select', function(event) {
1881 if (event.args) {
1882 var index = event.args.index;
1883 setWaterAgent(last_acid, 0);
1884 last_acid = AcidTypeData[index].nl;
1885 dataRecord.wa_acid_name = index;
1886 dataRecord.wa_acid_perc = AcidTypeData[index].AcidPrc;
1887 $('#wa_acid_perc').val(dataRecord.wa_acid_perc);
1888 calcWater();
1889 setWaterAgent(last_acid, parseFloat($('#wa_acid').jqxNumberInput('decimal')));
1890 }
1891 });
1892 $('#wa_acid').on('change', function(event) {
1893 var name = AcidTypeData[$('#wa_acid_name').val()].nl;
1894 setWaterAgent(name, parseFloat(event.args.value));
1895 calcWater();
1896 });
1897 $('#wa_acid_perc').on('change', function(event) {
1898 dataRecord.wa_acid_perc = parseFloat(event.args.value);
1899 calcWater();
1900 });
1901
1902 $('#mash_ph').on('change', function(event) {
1903 dataRecord.mash_ph = parseFloat(event.args.value);
1904 calcWater();
1905 });
1906
1907 $('#sparge_ph').on('change', function(event) {
1908 dataRecord.sparge_ph = parseFloat(event.args.value);
1909 calcSparge();
1910 });
1911 $('#sparge_volume').on('change', function(event) {
1912 dataRecord.sparge_volume = parseFloat(event.args.value);
1913 calcSparge();
1914 });
1915 $('#sparge_source').on('select', function(event) {
1916 if (event.args) {
1917 var index = event.args.index;
1918 dataRecord.sparge_source = index;
1919 calcSparge();
1920 }
1921 });
1922 $('#sparge_acid_type').on('select', function(event) {
1923 if (event.args) {
1924 var index = event.args.index;
1925 dataRecord.sparge_acid_type = index;
1926 console.log('new sparge_acid_type: ' + dataRecord.sparge_acid_type);
1927 calcSparge();
1928 }
1929 });
1930 $('#sparge_acid_perc').on('change', function(event) {
1931 dataRecord.sparge_acid_perc = parseFloat(event.args.value);
1932 calcSparge();
1933 });
1934 $('#locked').on('checked', function(event) {
1935 dataRecord.locked = 1;
1936 setReadonly(true);
1937 });
1938 $('#locked').on('unchecked', function(event) {
1939 dataRecord.locked = 0;
1940 setReadonly(true);
1941 });
1942 }; 1738 };
1943 1739
1944 function saveRecord(goback) { 1740 function saveRecord(goback) {
1945 var row = { 1741 window.location.href = my_return;
1946 record: my_record,
1947 uuid: dataRecord.uuid,
1948 name: $('#name').val(),
1949 locked: dataRecord.locked,
1950 notes: $('#notes').val(),
1951 st_name: $('#st_name').val(),
1952 st_letter: $('#st_letter').val(),
1953 st_guide: $('#st_guide').val(),
1954 st_type: dataRecord.st_type,
1955 st_category: $('#st_category').val(),
1956 st_category_number: $('#st_category_number').val(),
1957 st_og_min: parseFloat($('#st_og_min').jqxNumberInput('decimal')),
1958 st_og_max: parseFloat($('#st_og_max').jqxNumberInput('decimal')),
1959 st_fg_min: parseFloat($('#st_fg_min').jqxNumberInput('decimal')),
1960 st_fg_max: parseFloat($('#st_fg_max').jqxNumberInput('decimal')),
1961 st_ibu_min: parseFloat($('#st_ibu_min').jqxNumberInput('decimal')),
1962 st_ibu_max: parseFloat($('#st_ibu_max').jqxNumberInput('decimal')),
1963 st_color_min: parseFloat($('#st_color_min').jqxNumberInput('decimal')),
1964 st_color_max: parseFloat($('#st_color_max').jqxNumberInput('decimal')),
1965 st_carb_min: parseFloat($('#st_carb_min').jqxNumberInput('decimal')),
1966 st_carb_max: parseFloat($('#st_carb_max').jqxNumberInput('decimal')),
1967 st_abv_min: parseFloat($('#st_abv_min').jqxNumberInput('decimal')),
1968 st_abv_max: parseFloat($('#st_abv_max').jqxNumberInput('decimal')),
1969 type: $('#type').val(),
1970 batch_size: parseFloat($('#batch_size').jqxNumberInput('decimal')),
1971 boil_size: parseFloat($('#boil_size').jqxNumberInput('decimal')),
1972 boil_time: parseFloat($('#boil_time').jqxNumberInput('decimal')),
1973 efficiency: parseFloat($('#efficiency').jqxNumberInput('decimal')),
1974 est_og: parseFloat($('#est_og').jqxNumberInput('decimal')),
1975 est_fg: parseFloat($('#est_fg').jqxNumberInput('decimal')),
1976 est_abv: parseFloat($('#est_abv').jqxNumberInput('decimal')),
1977 est_color: parseFloat($('#est_color').jqxNumberInput('decimal')),
1978 color_method: $('#color_method').val(),
1979 est_ibu: parseFloat($('#est_ibu').jqxNumberInput('decimal')),
1980 ibu_method: $('#ibu_method').val(),
1981 est_carb: parseFloat($('#est_carb').jqxNumberInput('decimal')),
1982 mash_name: $('#mash_name').val(),
1983 mash_ph: parseFloat($('#mash_ph').jqxNumberInput('decimal')),
1984 sparge_temp: parseFloat($('#sparge_temp').jqxNumberInput('decimal')),
1985 sparge_ph: parseFloat($('#sparge_ph').jqxNumberInput('decimal')),
1986 sparge_volume: parseFloat($('#sparge_volume').jqxNumberInput('decimal')),
1987 sparge_source: $('#sparge_source').val(),
1988 sparge_acid_type: $('#sparge_acid_type').val(),
1989 sparge_acid_perc: parseFloat($('#sparge_acid_perc').jqxNumberInput('decimal')),
1990 sparge_acid_amount: dataRecord.sparge_acid_amount,
1991 calc_acid: dataRecord.calc_acid,
1992 w1_name: $('#w1_name').val(),
1993 w1_amount: parseFloat($('#w1_amount').jqxNumberInput('decimal')),
1994 w1_calcium: parseFloat($('#w1_calcium').jqxNumberInput('decimal')),
1995 w1_sulfate: parseFloat($('#w1_sulfate').jqxNumberInput('decimal')),
1996 w1_chloride: parseFloat($('#w1_chloride').jqxNumberInput('decimal')),
1997 w1_sodium: parseFloat($('#w1_sodium').jqxNumberInput('decimal')),
1998 w1_magnesium: parseFloat($('#w1_magnesium').jqxNumberInput('decimal')),
1999 w1_total_alkalinity: parseFloat($('#w1_total_alkalinity').jqxNumberInput('decimal')),
2000 w1_ph: parseFloat($('#w1_ph').jqxNumberInput('decimal')),
2001 w1_cost: dataRecord.w1_cost,
2002 w2_name: $('#w2_name').val(),
2003 w2_amount: parseFloat($('#w2_amount').jqxNumberInput('decimal')),
2004 w2_calcium: parseFloat($('#w2_calcium').jqxNumberInput('decimal')),
2005 w2_sulfate: parseFloat($('#w2_sulfate').jqxNumberInput('decimal')),
2006 w2_chloride: parseFloat($('#w2_chloride').jqxNumberInput('decimal')),
2007 w2_sodium: parseFloat($('#w2_sodium').jqxNumberInput('decimal')),
2008 w2_magnesium: parseFloat($('#w2_magnesium').jqxNumberInput('decimal')),
2009 w2_total_alkalinity: parseFloat($('#w2_total_alkalinity').jqxNumberInput('decimal')),
2010 w2_ph: parseFloat($('#w2_ph').jqxNumberInput('decimal')),
2011 w2_cost: dataRecord.w2_cost,
2012 wg_amount: parseFloat($('#wg_amount').jqxNumberInput('decimal')),
2013 wg_calcium: parseFloat($('#wg_calcium').jqxNumberInput('decimal')),
2014 wg_sulfate: parseFloat($('#wg_sulfate').jqxNumberInput('decimal')),
2015 wg_chloride: parseFloat($('#wg_chloride').jqxNumberInput('decimal')),
2016 wg_sodium: parseFloat($('#wg_sodium').jqxNumberInput('decimal')),
2017 wg_magnesium: parseFloat($('#wg_magnesium').jqxNumberInput('decimal')),
2018 wg_total_alkalinity: parseFloat($('#wg_total_alkalinity').jqxNumberInput('decimal')),
2019 wg_ph: parseFloat($('#wg_ph').jqxNumberInput('decimal')),
2020 wb_calcium: parseFloat($('#wb_calcium').jqxNumberInput('decimal')),
2021 wb_sulfate: parseFloat($('#wb_sulfate').jqxNumberInput('decimal')),
2022 wb_chloride: parseFloat($('#wb_chloride').jqxNumberInput('decimal')),
2023 wb_sodium: parseFloat($('#wb_sodium').jqxNumberInput('decimal')),
2024 wb_magnesium: parseFloat($('#wb_magnesium').jqxNumberInput('decimal')),
2025 wb_total_alkalinity: parseFloat($('#wb_total_alkalinity').jqxNumberInput('decimal')),
2026 wb_ph: parseFloat($('#wb_ph').jqxNumberInput('decimal')),
2027 wa_acid_name: parseInt($('#wa_acid_name').val()),
2028 wa_acid_perc: parseFloat($('#wa_acid_perc').jqxNumberInput('decimal')),
2029 wa_base_name: 0,
2030 fermentables: $('#fermentableGrid').jqxGrid('getrows'),
2031 hops: $('#hopGrid').jqxGrid('getrows'),
2032 miscs: $('#miscGrid').jqxGrid('getrows'),
2033 yeasts: $('#yeastGrid').jqxGrid('getrows'),
2034 mashs: $('#mashGrid').jqxGrid('getrows')
2035 },
2036 data = 'update=true&' + $.param(row);
2037 $.ajax({
2038 dataType: 'json',
2039 url: url,
2040 cache: false,
2041 async: false,
2042 data: data,
2043 type: 'POST',
2044 success: function(data) {
2045 if (data.error) {
2046 console.log('saveRecord(' + goback + ') error ' + data.msg);
2047 alert('SQL fout: ' + data.msg);
2048 } else {
2049 console.log('saveRecord(' + goback + ') success');
2050 }
2051 // if (goback)
2052 window.location.href = my_return;
2053 // else
2054 // window.location.href = 'rec_export.php?record=' + my_record + '&return=' + my_return + '&name=' + dataRecord.name;
2055 },
2056 error: function(jqXHR, textStatus, errorThrown) {
2057 console.log('saveRecord() ' + textStatus);
2058 }
2059 });
2060 }; 1742 };
2061 1743
2062 dataAdapter.dataBind(); 1744 dataAdapter.dataBind();
2063 1745
2064 // initialize the input fields. 1746 // initialize the input fields.
2065 // Tab 1, Algemeen 1747 // Tab 1, Algemeen
2066 $('#name').jqxTooltip({ content: 'De naam voor dit recept.' }); 1748 $('#name').jqxTooltip({ content: 'De naam voor dit recept.' });
2067 $('#name').jqxInput({ theme: theme, width: 640, height: 23 }); 1749 $('#name').jqxInput({ theme: theme, width: 640, height: 23 });
2068 $('#locked').jqxCheckBox({ theme: theme, width: 120, height: 23 });
2069 $('#notes').jqxTooltip({ content: 'De uitgebreide opmerkingen over dit recept.' }); 1750 $('#notes').jqxTooltip({ content: 'De uitgebreide opmerkingen over dit recept.' });
2070 $('#notes').jqxInput({ theme: theme, width: 960, height: 200 }); 1751 $('#notes').jqxInput({ theme: theme, width: 960, height: 200 });
2071 $('#type').jqxTooltip({ content: 'Het brouw type van dit recept.' }); 1752 $('#type').jqxTooltip({ content: 'Het brouw type van dit recept.' });
2072 $('#type').jqxInput({ theme: theme, width: 180, height: 23 }); 1753 $('#type').jqxInput({ theme: theme, width: 180, height: 23 });
2073 $('#efficiency').jqxTooltip({ content: 'Het rendement van maischen en koken.' }); 1754 $('#efficiency').jqxTooltip({ content: 'Het rendement van maischen en koken.' });
2356 dataRecord.w2_total_alkalinity = datarecord.total_alkalinity; 2037 dataRecord.w2_total_alkalinity = datarecord.total_alkalinity;
2357 $('#w2_ph').val(datarecord.ph); 2038 $('#w2_ph').val(datarecord.ph);
2358 dataRecord.w2_ph = datarecord.ph; 2039 dataRecord.w2_ph = datarecord.ph;
2359 $('#w2_cost').val(datarecord.cost); 2040 $('#w2_cost').val(datarecord.cost);
2360 dataRecord.w2_cost = datarecord.cost; 2041 dataRecord.w2_cost = datarecord.cost;
2361 $('#w2_amount').jqxNumberInput({ max: 100000, readOnly: false }); // Set high max to enable the spinbuttons.
2362 calcWater(); 2042 calcWater();
2363 } 2043 }
2364 }); 2044 });
2365 $('#w2_amount').jqxTooltip({ content: 'De verdeling van het hoofd en meng water. Het totale maisch water volume blijft gelijk.'}); 2045 $('#w2_amount').jqxNumberInput(Show1wat);
2366 $('#w2_amount').jqxNumberInput({ inputMode: 'simple', theme: theme, width: 94, height: 23, min: 0, decimalDigits: 1, spinButtons: true, readOnly: true });
2367 $('#w2_calcium').jqxNumberInput(Show1wat); 2046 $('#w2_calcium').jqxNumberInput(Show1wat);
2368 $('#w2_magnesium').jqxNumberInput(Show1wat); 2047 $('#w2_magnesium').jqxNumberInput(Show1wat);
2369 $('#w2_sodium').jqxNumberInput(Show1wat); 2048 $('#w2_sodium').jqxNumberInput(Show1wat);
2370 $('#w2_bicarbonate').jqxNumberInput(Show1wat); 2049 $('#w2_bicarbonate').jqxNumberInput(Show1wat);
2371 $('#w2_total_alkalinity').jqxNumberInput(Show1wat); 2050 $('#w2_total_alkalinity').jqxNumberInput(Show1wat);
2430 $('#pr_chloride').jqxNumberInput(Show1wat); 2109 $('#pr_chloride').jqxNumberInput(Show1wat);
2431 $('#pr_sulfate').jqxNumberInput(Show1wat); 2110 $('#pr_sulfate').jqxNumberInput(Show1wat);
2432 2111
2433 // Water agents 2112 // Water agents
2434 $('#wa_cacl2').jqxTooltip({ content: 'Voor het maken van een ander waterprofiel. Voegt calcium en chloride toe. Voor het verbeteren van zoetere bieren.'}); 2113 $('#wa_cacl2').jqxTooltip({ content: 'Voor het maken van een ander waterprofiel. Voegt calcium en chloride toe. Voor het verbeteren van zoetere bieren.'});
2435 $('#wa_cacl2').jqxNumberInput(Spin1dec); 2114 $('#wa_cacl2').jqxNumberInput(Show1wat);
2115 $('#ss_cacl2').jqxNumberInput(Show1wat);
2116
2436 $('#wa_caso4').jqxTooltip({ 2117 $('#wa_caso4').jqxTooltip({
2437 content: 'Gips. Voor het maken van een ander waterprofiel. Voegt calcium en sulfaat toe. Voor het verbeteren van bittere bieren.' 2118 content: 'Gips. Voor het maken van een ander waterprofiel. Voegt calcium en sulfaat toe. Voor het verbeteren van bittere bieren.'
2438 }); 2119 });
2439 $('#wa_caso4').jqxNumberInput(Spin1dec); 2120 $('#wa_caso4').jqxNumberInput(Show1wat);
2121 $('#ss_caso4').jqxNumberInput(Show1wat);
2122
2440 $('#wa_mgso4').jqxTooltip({ content: 'Epsom zout. Voor het maken van een ander waterprofiel. Voegt magnesium en sulfaat toe. Gebruik spaarzaam!'}); 2123 $('#wa_mgso4').jqxTooltip({ content: 'Epsom zout. Voor het maken van een ander waterprofiel. Voegt magnesium en sulfaat toe. Gebruik spaarzaam!'});
2441 $('#wa_mgso4').jqxNumberInput(Spin1dec); 2124 $('#wa_mgso4').jqxNumberInput(Show1wat);
2125 $('#ss_mgso4').jqxNumberInput(Show1wat);
2126
2442 $('#wa_nacl').jqxTooltip({ 2127 $('#wa_nacl').jqxTooltip({
2443 content: 'Keukenzout. Voor het maken van een ander waterprofiel. Voegt natrium en chloride toe. ' + 2128 content: 'Keukenzout. Voor het maken van een ander waterprofiel. Voegt natrium en chloride toe. ' +
2444 'Voor het accentueren van zoetheid. Bij hoge dosering wordt het bier ziltig.' 2129 'Voor het accentueren van zoetheid. Bij hoge dosering wordt het bier ziltig.'
2445 }); 2130 });
2446 $('#wa_nacl').jqxNumberInput(Spin1dec); 2131 $('#wa_nacl').jqxNumberInput(Show1wat);
2447 $('#mash_ph').jqxTooltip({ content: 'Maisch pH tussen 5.2 en 5.6. Gebruik 5.2 voor lichte en 5.5 voor donkere bieren.'}); 2132 $('#ss_nacl').jqxNumberInput(Show1wat);
2448 $('#mash_ph').jqxNumberInput(SpinpH); 2133
2449 $('#wa_mgcl2').jqxTooltip({ content: 'Magnesiumchloride'}); 2134 $('#wa_mgcl2').jqxTooltip({ content: 'Magnesiumchloride'});
2135 $('#wa_mgcl2').jqxNumberInput(Show1wat);
2136 $('#ss_mgcl2').jqxNumberInput(Show1wat);
2137
2450 $('#wa_nahco3').jqxTooltip({ content: 'Baksoda'}); 2138 $('#wa_nahco3').jqxTooltip({ content: 'Baksoda'});
2451 $('#wa_caco3').jqxTooltip({ content: 'Kalk'}); 2139 $('#wa_caco3').jqxTooltip({ content: 'Kalk'});
2452 $('#wa_mgcl2,#wa_nahco3,#wa_caco3').jqxNumberInput(Spin1dec); 2140 $('#wa_nahco3,#wa_caco3').jqxNumberInput(Show1wat);
2453 $('#calc_acid').jqxCheckBox({ theme: theme, width: 120, height: 23 }); 2141
2454 $('#wa_acid_name').jqxDropDownList({ 2142 $('#mash_ph').jqxTooltip({ content: 'Maisch pH tussen 5.2 en 5.6. Gebruik 5.2 voor lichte en 5.5 voor donkere bieren.'});
2455 theme: theme, 2143 $('#mash_ph').jqxNumberInput(Show2dec);
2456 source: AcidTypeAdapter, 2144
2457 valueMember: 'id', 2145 $('#calc_acid').jqxCheckBox({ theme: theme, width: 120, height: 23, disabled: true });
2458 displayMember: 'nl', 2146
2459 width: 130, 2147 $('#wa_acid_name').jqxInput({ theme: theme, width: 130, height: 23 });
2460 height: 23, 2148 $('#wa_acid').jqxNumberInput(Show2dec);
2461 autoDropDownHeight: true
2462 });
2463 $('#wa_acid').jqxNumberInput(Spin2dec);
2464 $('#wa_acid').jqxNumberInput({ symbol: ' ml', symbolPosition: 'right' }); 2149 $('#wa_acid').jqxNumberInput({ symbol: ' ml', symbolPosition: 'right' });
2465 $('#wa_acid_perc').jqxNumberInput(Perc0); 2150 $('#wa_acid_perc').jqxNumberInput(Show0dec);
2466 $('#wa_acid_perc').jqxNumberInput({ width: 70, symbol: '%', symbolPosition: 'right' }); 2151 $('#wa_acid_perc').jqxNumberInput({ symbol: '%', symbolPosition: 'right' });
2152
2467 // Sparge water 2153 // Sparge water
2468 $('#sparge_temp').jqxNumberInput(Spin1dec); 2154 // $('#sparge_volume').jqxNumberInput(Spin1dec);
2469 $('#sparge_volume').jqxNumberInput(Spin1dec); 2155 $('#sparge_ph').jqxNumberInput(Show2dec);
2470 $('#sparge_ph').jqxNumberInput(SpinpH);
2471 $('#sparge_source').jqxDropDownList({ 2156 $('#sparge_source').jqxDropDownList({
2472 theme: theme, 2157 theme: theme,
2473 source: SpargeSourceAdapter, 2158 source: SpargeSourceAdapter,
2474 valueMember: 'id', 2159 valueMember: 'id',
2475 displayMember: 'nl', 2160 displayMember: 'nl',
2476 width: 110, 2161 width: 110,
2477 height: 23, 2162 height: 23,
2478 autoDropDownHeight: true 2163 autoDropDownHeight: true
2479 }); 2164 });
2480 $('#sparge_acid_amount').jqxNumberInput(Spin2dec); 2165 $('#sparge_acid_amount').jqxNumberInput(Show2dec);
2481 $('#sparge_acid_amount').jqxNumberInput({ spinButtons: false, readOnly: true, symbol: ' ml', symbolPosition: 'right' }); 2166 $('#sparge_acid_amount').jqxNumberInput({ symbol: ' ml', symbolPosition: 'right' });
2482 $('#sparge_acid_type').jqxDropDownList({ 2167 $('#sparge_acid_type').jqxInput({ theme: theme, width: 130, height: 23 });
2483 theme: theme, 2168 $('#sparge_acid_perc').jqxNumberInput(Show0dec);
2484 source: AcidTypeAdapter,
2485 valueMember: 'id',
2486 displayMember: 'nl',
2487 width: 110,
2488 height: 23,
2489 autoDropDownHeight: true
2490 });
2491 $('#sparge_acid_perc').jqxNumberInput(Perc0);
2492 $('#sparge_acid_perc').jqxNumberInput({ symbol: '%', symbolPosition: 'right' }); 2169 $('#sparge_acid_perc').jqxNumberInput({ symbol: '%', symbolPosition: 'right' });
2493 2170
2494 // Tabs inside the popup window. 2171 // Tabs inside the popup window.
2495 $('#jqxTabs').jqxTabs({ 2172 $('#jqxTabs').jqxTabs({
2496 theme: theme, 2173 theme: theme,

mercurial