www/js/prod_edit.js

changeset 286
124af734af68
parent 283
879b81864e4e
child 288
06dd071a429d
equal deleted inserted replaced
285:0ea9dfb3fce9 286:124af734af68
2999 } 2999 }
3000 }; 3000 };
3001 var fermentableAdapter = new $.jqx.dataAdapter(fermentableSource); 3001 var fermentableAdapter = new $.jqx.dataAdapter(fermentableSource);
3002 $("#fermentableGrid").jqxGrid({ 3002 $("#fermentableGrid").jqxGrid({
3003 width: 1240, 3003 width: 1240,
3004 height: 450, 3004 height: 500,
3005 source: fermentableAdapter, 3005 source: fermentableAdapter,
3006 theme: theme, 3006 theme: theme,
3007 selectionmode: 'singlerow', 3007 selectionmode: 'singlerow',
3008 localization: getLocalization(),
3009 showtoolbar: true, 3008 showtoolbar: true,
3010 rendertoolbar: function (toolbar) { 3009 rendertoolbar: function (toolbar) {
3011 var me = this; 3010 var me = this;
3012 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 3011 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
3013 toolbar.append(container); 3012 toolbar.append(container);
3127 calcFermentables(); 3126 calcFermentables();
3128 $('#jqxTabs').jqxTabs('next'); 3127 $('#jqxTabs').jqxTabs('next');
3129 }, 3128 },
3130 columns: [ 3129 columns: [
3131 { text: 'Vergistbaar ingredi&euml;nt', datafield: 'f_name', 3130 { text: 'Vergistbaar ingredi&euml;nt', datafield: 'f_name',
3132 cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties) { 3131 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3133 var rowData = $("#fermentableGrid").jqxGrid('getrowdata', row); 3132 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" +
3134 return "<span style='margin: 3px; margin-top: 6px; float: "+ 3133 rowdata.f_supplier+" / "+rowdata.f_name+" ("+rowdata.f_color+" EBC)</span>";
3135 columnproperties.cellsalign+"'>" +rowData.f_supplier+" / "+rowData.f_name+" ("+rowData.f_color+" EBC)</span>";
3136 } 3134 }
3137 }, 3135 },
3138 { text: 'Type', width: 100, datafield: 'f_type', 3136 { text: 'Type', width: 100, datafield: 'f_type',
3139 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3137 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3140 return "<div style='margin: 4px;'>" + FermentableTypeData[value].nl + "</div>"; 3138 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" + FermentableTypeData[value].nl + "</span>";
3141 } 3139 }
3142 }, 3140 },
3143 { text: 'Moment', width: 110, datafield: 'f_added', 3141 { text: 'Moment', width: 110, datafield: 'f_added',
3144 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3142 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3145 return "<div style='margin: 4px;'>" + AddedData[value].nl + "</div>"; 3143 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" + AddedData[value].nl + "</span>";
3146 } 3144 }
3147 }, 3145 },
3148 { text: 'Opbrengst', datafield: 'f_yield', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'p1' }, 3146 { text: 'Opbrengst', datafield: 'f_yield', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'p1' },
3149 { text: 'Gewicht Kg', datafield: 'f_amount', width: 120, align: 'right', cellsalign: 'right', cellsformat: 'f3' }, 3147 { text: 'Gewicht Kg', datafield: 'f_amount', width: 120, align: 'right', cellsalign: 'right', cellsformat: 'f3' },
3150 { text: 'Voorr. Kg', datafield: 'f_inventory', width: 120, align: 'right', cellsalign: 'right', cellsformat: 'f3' }, 3148 { text: 'Voorraad Kg', datafield: 'f_inventory', width: 120, align: 'right',
3151 { text: 'Percent', datafield: 'f_percentage', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'p1' }, 3149 cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties, rowdata) {
3150 var color = '#ffffff';
3151 if (value < rowdata.f_amount)
3152 color = '#ff4040';
3153 return '<span style="margin: 4px; margin-top: 6px; float: right; color: ' +
3154 color + ';">' +fermentableAdapter.formatNumber(value, "f3") + '</span>';
3155 }
3156 },
3157 { text: 'Procent', datafield: 'f_percentage', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'p1' },
3152 { text: '100%', align: 'center', datafield: 'f_adjust_to_total_100', columntype: 'checkbox', width: 70 }, 3158 { text: '100%', align: 'center', datafield: 'f_adjust_to_total_100', columntype: 'checkbox', width: 70 },
3153 { text: 'Wijzig', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () { 3159 { text: '', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () {
3154 return "Wijzig"; 3160 return "Wijzig";
3155 }, buttonclick: function (row) { 3161 }, buttonclick: function (row) {
3156 if (dataRecord.stage <= 3) { 3162 if (dataRecord.stage <= 3) {
3157 fermentableRow = row; 3163 fermentableRow = row;
3158 fermentableData = $("#fermentableGrid").jqxGrid('getrowdata', fermentableRow); 3164 fermentableData = $("#fermentableGrid").jqxGrid('getrowdata', fermentableRow);
3205 } 3211 }
3206 }; 3212 };
3207 var hopAdapter = new $.jqx.dataAdapter(hopSource); 3213 var hopAdapter = new $.jqx.dataAdapter(hopSource);
3208 $("#hopGrid").jqxGrid({ 3214 $("#hopGrid").jqxGrid({
3209 width: 1240, 3215 width: 1240,
3210 height: 510, 3216 height: 560,
3211 source: hopAdapter, 3217 source: hopAdapter,
3212 theme: theme, 3218 theme: theme,
3213 selectionmode: 'singlerow', 3219 selectionmode: 'singlerow',
3214 localization: getLocalization(),
3215 showtoolbar: true, 3220 showtoolbar: true,
3216 rendertoolbar: function (toolbar) { 3221 rendertoolbar: function (toolbar) {
3217 var me = this; 3222 var me = this;
3218 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 3223 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
3219 toolbar.append(container); 3224 toolbar.append(container);
3287 calcIBUs(); 3292 calcIBUs();
3288 $('#jqxTabs').jqxTabs('next'); 3293 $('#jqxTabs').jqxTabs('next');
3289 }, 3294 },
3290 columns: [ 3295 columns: [
3291 { text: 'Hop', datafield: 'h_name', 3296 { text: 'Hop', datafield: 'h_name',
3292 cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties) { 3297 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3293 var rowData = $("#hopGrid").jqxGrid('getrowdata', row); 3298 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" +rowdata.h_origin+" / "+rowdata.h_name+"</span>";
3294 return "<span style='margin: 3px; margin-top: 6px; float: "+
3295 columnproperties.cellsalign+"'>" +rowData.h_origin+" / "+rowData.h_name+"</span>";
3296 }, 3299 },
3297 }, 3300 },
3298 { text: 'Type', width: 90, datafield: 'h_type', 3301 { text: 'Type', width: 90, datafield: 'h_type',
3299 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3302 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3300 return "<div style='margin: 4px;'>" + HopTypeData[value].nl + "</div>"; 3303 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + HopTypeData[value].nl + '</span>';
3301 } 3304 }
3302 }, 3305 },
3303 { text: 'Vorm', width: 90, datafield: 'h_form', 3306 { text: 'Vorm', width: 90, datafield: 'h_form',
3304 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3307 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3305 return "<div style='margin: 4px;'>" + HopFormData[value].nl + "</div>"; 3308 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + HopFormData[value].nl + '</span>';
3306 } 3309 }
3307 }, 3310 },
3308 { text: 'Alpha', datafield: 'h_alpha', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'p1' }, 3311 { text: 'Alpha', datafield: 'h_alpha', width: 80, align: 'right', cellsalign: 'right', cellsformat: 'p1' },
3309 { text: 'Gebruik', width: 110, datafield: 'h_useat', 3312 { text: 'Gebruik', width: 110, datafield: 'h_useat',
3310 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3313 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3311 return "<div style='margin: 4px;'>" + HopUseData[value].nl + "</div>"; 3314 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + HopUseData[value].nl + '</span>';
3312 } 3315 }
3313 }, 3316 },
3314 { text: 'Tijdsduur', datafield: 'h_time', width: 90, align: 'right', 3317 { text: 'Tijdsduur', datafield: 'h_time', width: 90, align: 'right',
3315 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3318 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3319 var duration = '';
3316 if ((rowdata.h_useat == 2) || (rowdata.h_useat == 4)) // Boil, Whirlpool 3320 if ((rowdata.h_useat == 2) || (rowdata.h_useat == 4)) // Boil, Whirlpool
3317 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f0")+" min.</div>"; 3321 duration = dataAdapter.formatNumber(value, "f0")+" min.";
3318 if (rowdata.h_useat == 5) // Dry hop 3322 else if (rowdata.h_useat == 5) // Dry hop
3319 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value/1440, "f0")+" dagen</div>"; 3323 duration = dataAdapter.formatNumber(value/1440, "f0")+" dagen";
3320 else 3324 return '<span style="margin: 4px; margin-top: 6px; float: right;">' + duration + '</span>';
3321 return "<div style='margin: 4px;'></div>";
3322 } 3325 }
3323 }, 3326 },
3324 { text: 'IBU', datafield: 'ibu', width: 80, align: 'right', 3327 { text: 'IBU', datafield: 'ibu', width: 80, align: 'right',
3325 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3328 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3326 var ibu = toIBU(rowdata.h_useat, 3329 var ibu = toIBU(rowdata.h_useat, rowdata.h_form, preboil_sg, parseFloat($("#batch_size").jqxNumberInput('decimal')),
3327 rowdata.h_form, 3330 parseFloat(rowdata.h_amount), parseFloat(rowdata.h_time),
3328 preboil_sg, 3331 parseFloat(rowdata.h_alpha), $("#ibu_method").val());
3329 parseFloat($("#batch_size").jqxNumberInput('decimal')), 3332 return '<span style="margin: 4px; margin-top: 6px; float: right;">' + dataAdapter.formatNumber(ibu, "f1") + '</span>';
3330 parseFloat(rowdata.h_amount),
3331 parseFloat(rowdata.h_time),
3332 parseFloat(rowdata.h_alpha),
3333 $("#ibu_method").val()
3334 );
3335 return "<div style='margin: 4px;' class='jqx-right-align'>" + dataAdapter.formatNumber(ibu, "f1") + "</div>";
3336 } 3333 }
3337 }, 3334 },
3338 { text: 'Gewicht', datafield: 'h_amount', width: 110, align: 'right', cellsalign: 'right', 3335 { text: 'Gewicht', datafield: 'h_amount', width: 110, align: 'right',
3339 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3336 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3337 var amount = dataAdapter.formatNumber(value, "f1") + ' kg';
3340 if (value < 1) 3338 if (value < 1)
3341 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value * 1000, "f1")+" gr</div>"; 3339 amount = dataAdapter.formatNumber(value * 1000, "f1") + ' gr';
3342 else 3340 return '<span style="margin: 4px; margin-top: 6px; float: right;">' + amount + '</span>';
3343 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f1")+" kg</div>";
3344 } 3341 }
3345 }, 3342 },
3346 { text: 'Voorraad', datafield: 'h_inventory', width: 110, align: 'right', cellsalign: 'right', 3343 { text: 'Voorraad', datafield: 'h_inventory', width: 110, align: 'right',
3347 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3344 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3345 var color = '#ffffff';
3346 if (value < rowdata.h_amount)
3347 color = '#ff4040';
3348 var amount = dataAdapter.formatNumber(value, "f1") + ' kg';
3348 if (value < 1) 3349 if (value < 1)
3349 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value * 1000, "f1")+" gr</div>"; 3350 amount = dataAdapter.formatNumber(value * 1000, "f1") + ' gr';
3350 else 3351 return '<span style="margin: 4px; margin-top: 6px; float: right; color: ' + color + ';">' + amount + '</span>';
3351 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f1")+" kg</div>";
3352 } 3352 }
3353 }, 3353 },
3354 { text: 'Wijzig', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () { 3354 { text: '', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () {
3355 return "Wijzig"; 3355 return "Wijzig";
3356 }, buttonclick: function (row) { 3356 }, buttonclick: function (row) {
3357 if (dataRecord.stage <= 3) { 3357 if (dataRecord.stage <= 3) {
3358 hopRow = row; 3358 hopRow = row;
3359 hopData = $("#hopGrid").jqxGrid('getrowdata', hopRow); 3359 hopData = $("#hopGrid").jqxGrid('getrowdata', hopRow);
3464 $('#err').text(status + ' ' + error); 3464 $('#err').text(status + ' ' + error);
3465 }, 3465 },
3466 }); 3466 });
3467 $("#miscGrid").jqxGrid({ 3467 $("#miscGrid").jqxGrid({
3468 width: 1240, 3468 width: 1240,
3469 height: 525, 3469 height: 575,
3470 source: miscAdapter, 3470 source: miscAdapter,
3471 theme: theme, 3471 theme: theme,
3472 selectionmode: 'singlerow', 3472 selectionmode: 'singlerow',
3473 localization: getLocalization(),
3474 showtoolbar: true, 3473 showtoolbar: true,
3475 rendertoolbar: function (toolbar) { 3474 rendertoolbar: function (toolbar) {
3476 var me = this; 3475 var me = this;
3477 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 3476 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
3478 toolbar.append(container); 3477 toolbar.append(container);
3531 }, 3530 },
3532 columns: [ 3531 columns: [
3533 { text: 'Ingredient', datafield: 'm_name' }, 3532 { text: 'Ingredient', datafield: 'm_name' },
3534 { text: 'Type', width: 140, datafield: 'm_type', 3533 { text: 'Type', width: 140, datafield: 'm_type',
3535 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3534 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3536 return "<div style='margin: 4px;'>" + MiscTypeData[value].nl + "</div>"; 3535 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" + MiscTypeData[value].nl + "</span>";
3537 } 3536 }
3538 }, 3537 },
3539 { text: 'Gebruik', width: 140, datafield: 'm_use_use', 3538 { text: 'Gebruik', width: 140, datafield: 'm_use_use',
3540 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3539 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3541 return "<div style='margin: 4px;'>" + MiscUseData[value].nl + "</div>"; 3540 return "<span style='margin: 3px; margin-top: 6px; float: left;'>" + MiscUseData[value].nl + "</span>";
3542 } 3541 }
3543 }, 3542 },
3544 { text: 'Tijd', datafield: 'm_time', width: 90, align: 'right', 3543 { text: 'Tijd', datafield: 'm_time', width: 90, align: 'right',
3545 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3544 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3546 if (rowdata.m_use_use == 2) { // Boil 3545 var duration = '';
3547 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f0")+" min.</div>"; 3546 if (rowdata.m_use_use == 2) // Boil
3548 } else if ((rowdata.m_use_use == 3) || (rowdata.m_use_use == 4)) { // Primary or Secondary 3547 duration = dataAdapter.formatNumber(value, "f0")+" min.";
3549 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value/1440, "f0")+" dagen</div>"; 3548 else if ((rowdata.m_use_use == 3) || (rowdata.m_use_use == 4)) // Primary or Secondary
3550 } else { 3549 duration = dataAdapter.formatNumber(value/1440, "f0")+" dagen";
3551 var tijd = 0; 3550 return '<span style="margin: 4px; margin-top: 6px; float: right;">' + duration + '</span>';
3552 return "<div style='margin: 4px;'> </div>";
3553 }
3554 }, 3551 },
3555 }, 3552 },
3556 { text: 'Hoeveel', datafield: 'm_amount', width: 110, align: 'right', 3553 { text: 'Hoeveel', datafield: 'm_amount', width: 110, align: 'right',
3557 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3554 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3558 var vstr = rowdata.m_amount_is_weight ? "gr":"ml"; 3555 var vstr = rowdata.m_amount_is_weight ? "gr":"ml";
3559 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value * 1000,"f2")+" "+vstr+"</div>"; 3556 return '<span style="margin: 4px; margin-top: 6px; float: right;">' +
3557 dataAdapter.formatNumber(value * 1000,"f2")+" "+vstr + '</span>';
3560 } 3558 }
3561 }, 3559 },
3562 { text: 'Voorraad', datafield: 'm_inventory', width: 110, align: 'right', 3560 { text: 'Voorraad', datafield: 'm_inventory', width: 110, align: 'right',
3563 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3561 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3564 var vstr = rowdata.m_amount_is_weight ? "gr":"ml"; 3562 var vstr = rowdata.m_amount_is_weight ? "gr":"ml";
3565 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value * 1000,"f2")+" "+vstr+"</div>"; 3563 var color = '#ffffff';
3564 if (value < rowdata.m_amount)
3565 color = '#ff4040';
3566 var amount = dataAdapter.formatNumber(value * 1000,"f2")+" "+vstr;
3567 return '<span style="margin: 4px; margin-top: 6px; float: right; color: ' + color + ';">' + amount + '</span>';
3566 } 3568 }
3567 }, 3569 },
3568 { text: 'Wijzig', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () { 3570 { text: '', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () {
3569 return "Wijzig"; 3571 return "Wijzig";
3570 }, buttonclick: function (row) { 3572 }, buttonclick: function (row) {
3571 if (dataRecord.stage <= 3) { 3573 if (dataRecord.stage <= 3) {
3572 miscRow = row; 3574 miscRow = row;
3573 miscData = $("#miscGrid").jqxGrid('getrowdata', miscRow); 3575 miscData = $("#miscGrid").jqxGrid('getrowdata', miscRow);
3628 width: 1240, 3630 width: 1240,
3629 height: 350, 3631 height: 350,
3630 source: yeastAdapter, 3632 source: yeastAdapter,
3631 theme: theme, 3633 theme: theme,
3632 selectionmode: 'singlerow', 3634 selectionmode: 'singlerow',
3633 localization: getLocalization(),
3634 showtoolbar: true, 3635 showtoolbar: true,
3635 rendertoolbar: function (toolbar) { 3636 rendertoolbar: function (toolbar) {
3636 var me = this; 3637 var me = this;
3637 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 3638 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
3638 toolbar.append(container); 3639 toolbar.append(container);
3708 { text: 'Gist', datafield: 'y_name' }, 3709 { text: 'Gist', datafield: 'y_name' },
3709 { text: 'Laboratorium', width: 150, datafield: 'y_laboratory' }, 3710 { text: 'Laboratorium', width: 150, datafield: 'y_laboratory' },
3710 { text: 'Code', width: 90, datafield: 'y_product_id' }, 3711 { text: 'Code', width: 90, datafield: 'y_product_id' },
3711 { text: 'Soort', width: 100, datafield: 'y_form', 3712 { text: 'Soort', width: 100, datafield: 'y_form',
3712 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3713 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3713 return "<div style='margin: 4px;'>" + YeastFormData[value].nl + "</div>"; 3714 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + YeastFormData[value].nl + '</span>';
3714 } 3715 }
3715 }, 3716 },
3716 { text: 'Min. &deg;C', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_min_temperature' }, 3717 { text: 'Min. &deg;C', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_min_temperature' },
3717 { text: 'Max. &deg;C', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_max_temperature' }, 3718 { text: 'Max. &deg;C', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_max_temperature' },
3718 { text: 'Attn. %', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_attenuation', cellsformat: 'f1' }, 3719 { text: 'Attn. %', width: 70, align: 'right', cellsalign: 'right', datafield: 'y_attenuation', cellsformat: 'f1' },
3719 { text: 'Voor', width: 120, datafield: 'y_use', 3720 { text: 'Voor', width: 120, datafield: 'y_use',
3720 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3721 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3721 return "<div style='margin: 4px;'>" + YeastUseData[value].nl + "</div>"; 3722 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + YeastUseData[value].nl + '</span>';
3722 } 3723 }
3723 }, 3724 },
3724 { text: 'Hoeveel', datafield: 'y_amount', width: 100, align: 'right', 3725 { text: 'Hoeveel', datafield: 'y_amount', width: 100, align: 'right',
3725 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3726 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3726 if (rowdata.y_form == 0) { // Liquid 3727 var amount = dataAdapter.formatNumber(value*1000, "f0")+" ml";
3727 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f0")+" pk</div>"; 3728 if (rowdata.y_form == 0) // Liquid
3728 } else if (rowdata.y_form == 1) { // Dry 3729 amount = dataAdapter.formatNumber(value, "f0")+" pk";
3729 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value*1000, "f1")+" gr</div>"; 3730 else if (rowdata.y_form == 1) // Dry
3730 } else { 3731 amount = dataAdapter.formatNumber(value*1000, "f1")+" gr";
3731 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value*1000, "f0")+" ml</div>"; 3732 return '<span style="margin: 4px; margin-top: 6px; float: right;">' + amount + '</span>';
3732 }
3733 } 3733 }
3734 }, 3734 },
3735 { text: 'Voorraad', datafield: 'y_inventory', width: 100, align: 'right', 3735 { text: 'Voorraad', datafield: 'y_inventory', width: 100, align: 'right',
3736 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3736 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3737 if (rowdata.y_form == 0) { // Liquid 3737 var color = '#ffffff';
3738 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value, "f0")+" pk</div>"; 3738 if (value < rowdata.y_amount)
3739 } else if (rowdata.y_form == 1) { // Dry 3739 color = '#ff4040';
3740 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value*1000, "f1")+" gr</div>"; 3740 var amount = dataAdapter.formatNumber(value*1000, "f0")+" ml";
3741 } else { 3741 if (rowdata.y_form == 0) // Liquid
3742 return "<div style='margin: 4px;' class='jqx-right-align'>"+dataAdapter.formatNumber(value*1000, "f0")+" ml</div>"; 3742 amount = dataAdapter.formatNumber(value, "f0")+" pk";
3743 } 3743 else if (rowdata.y_form == 1) // Dry
3744 amount = dataAdapter.formatNumber(value*1000, "f1")+" gr";
3745 return '<span style="margin: 4px; margin-top: 6px; float: right; color: ' + color + ';">' + amount + '</span>';
3744 } 3746 }
3745 }, 3747 },
3746 { text: 'Wijzig', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () { 3748 { text: '', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () {
3747 return "Wijzig"; 3749 return "Wijzig";
3748 }, buttonclick: function (row) { 3750 }, buttonclick: function (row) {
3749 if (dataRecord.stage <= 3) { 3751 if (dataRecord.stage <= 3) {
3750 yeastRow = row; 3752 yeastRow = row;
3751 yeastData = $("#yeastGrid").jqxGrid('getrowdata', yeastRow); 3753 yeastData = $("#yeastGrid").jqxGrid('getrowdata', yeastRow);
3824 width: 1240, 3826 width: 1240,
3825 height: 400, 3827 height: 400,
3826 source: mashAdapter, 3828 source: mashAdapter,
3827 theme: theme, 3829 theme: theme,
3828 selectionmode: 'singlerow', 3830 selectionmode: 'singlerow',
3829 localization: getLocalization(),
3830 showtoolbar: true, 3831 showtoolbar: true,
3831 rendertoolbar: function (toolbar) { 3832 rendertoolbar: function (toolbar) {
3832 var me = this; 3833 var me = this;
3833 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>"); 3834 var container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
3834 toolbar.append(container); 3835 toolbar.append(container);
3857 }, 3858 },
3858 columns: [ 3859 columns: [
3859 { text: 'Stap naam', datafield: 'step_name' }, 3860 { text: 'Stap naam', datafield: 'step_name' },
3860 { text: 'Stap type', datafield: 'step_type', width: 175, 3861 { text: 'Stap type', datafield: 'step_type', width: 175,
3861 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) { 3862 cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
3862 return "<div style='margin: 4px;'>" + MashStepTypeData[value].nl + "</div>"; 3863 return '<span style="margin: 4px; margin-top: 6px; float: left;">' + MashStepTypeData[value].nl + '</span>';
3863 } 3864 }
3864 }, 3865 },
3865 { text: 'Start &deg;C', datafield: 'step_temp', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'f1' }, 3866 { text: 'Start &deg;C', datafield: 'step_temp', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
3866 { text: 'Eind &deg;C', datafield: 'end_temp', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'f1' }, 3867 { text: 'Eind &deg;C', datafield: 'end_temp', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
3867 { text: 'Tijd', datafield: 'step_time', width: 90, align: 'right', cellsalign: 'right' }, 3868 { text: 'Rust min.', datafield: 'step_time', width: 90, align: 'right', cellsalign: 'right' },
3868 { text: 'Stap', datafield: 'ramp_time', width: 90, align: 'right', cellsalign: 'right' }, 3869 { text: 'Stap min.', datafield: 'ramp_time', width: 90, align: 'right', cellsalign: 'right' },
3869 { text: 'Infuse', datafield: 'step_infuse_amount', width: 90, align: 'right', cellsalign: 'right' }, 3870 { text: 'Infuse L.', datafield: 'step_infuse_amount', width: 90, align: 'right', cellsalign: 'right', cellsformat: 'f1' },
3870 { text: 'Wijzig', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () { 3871 { text: '', datafield: 'Edit', columntype: 'button', width: 100, align: 'center', cellsrenderer: function () {
3871 return "Wijzig"; 3872 return "Wijzig";
3872 }, buttonclick: function (row) { 3873 }, buttonclick: function (row) {
3873 if (dataRecord.stage <= 3) { 3874 if (dataRecord.stage <= 3) {
3874 mashRow = row; 3875 mashRow = row;
3875 mashData = $("#mashGrid").jqxGrid('getrowdata', mashRow); 3876 mashData = $("#mashGrid").jqxGrid('getrowdata', mashRow);

mercurial