www/js/inv_fermentables.js

changeset 528
202272a28052
parent 514
3c680d1dea35
child 563
acdd54144838
--- a/www/js/inv_fermentables.js	Sat Oct 19 13:54:38 2019 +0200
+++ b/www/js/inv_fermentables.js	Sat Oct 19 21:23:06 2019 +0200
@@ -22,398 +22,397 @@
 
 
 function createDelElements() {
-	$('#eventWindow').jqxWindow({
-		theme: theme,
-		position: { x: 490, y: 210 },
-		width: 300,
-		height: 175,
-		resizable: false,
-		isModal: true,
-		modalOpacity: 0.4,
-		okButton: $('#delOk'),
-		cancelButton: $('#delCancel'),
-		initContent: function () {
-			$('#delOk').jqxButton({ template: "danger", width: '65px', theme: theme });
-			$('#delCancel').jqxButton({ template: "success", width: '65px', theme: theme });
-			$('#delCancel').focus();
-		}
-	});
-	$('#eventWindow').jqxWindow('hide');
+ $('#eventWindow').jqxWindow({
+  theme: theme,
+  position: { x: 490, y: 210 },
+  width: 300,
+  height: 175,
+  resizable: false,
+  isModal: true,
+  modalOpacity: 0.4,
+  okButton: $('#delOk'),
+  cancelButton: $('#delCancel'),
+  initContent: function() {
+   $('#delOk').jqxButton({ template: 'danger', width: '65px', theme: theme });
+   $('#delCancel').jqxButton({ template: 'success', width: '65px', theme: theme });
+   $('#delCancel').focus();
+  }
+ });
+ $('#eventWindow').jqxWindow('hide');
 }
 
 
-$(document).ready(function () {
+$(document).ready(function() {
 
-	function calcTotal(cost, inventory) {
-
-		$('#totval').val(cost * inventory);
-	}
+ function calcTotal(cost, inventory) {
+  $('#totval').val(cost * inventory);
+ }
 
-	var dataRecord = {},
-	url = 'includes/db_inventory_fermentables.php',
-	// prepare the data
-	source = {
-		datatype: "json",
-		cache: false,
-		datafields: [
-			{ name: 'record', type: 'number' },
-			{ name: 'name', type: 'string' },
-			{ name: 'type', type: 'string' },
-			{ name: 'yield', type: 'float' },
-			{ name: 'color', type: 'float' },
-			{ name: 'add_after_boil', type: 'int' },
-			{ name: 'origin', type: 'string' },
-			{ name: 'supplier', type: 'string' },
-			{ name: 'notes', type: 'string' },
-			{ name: 'coarse_fine_diff', type: 'float' },
-			{ name: 'moisture', type: 'float' },
-			{ name: 'diastatic_power', type: 'float' },
-			{ name: 'protein', type: 'float' },
-			{ name: 'dissolved_protein', type: 'float' },
-			{ name: 'max_in_batch', type: 'float' },
-			{ name: 'recommend_mash', type: 'int' },
-			{ name: 'added', type: 'string' },
-			{ name: 'always_on_stock', type: 'int' },
-			{ name: 'di_ph', type: 'float' },
-			{ name: 'acid_to_ph_57', type: 'float' },
-			{ name: 'graintype', type: 'string' },
-			{ name: 'inventory', type: 'float' },
-			{ name: 'cost', type: 'float' },
-			{ name: 'production_date', type: 'string' },
-			{ name: 'tht_date', type: 'string' }
-		],
-		id: 'record',
-		url: url,
-		deleterow: function (rowid, commit) {
-			// synchronize with the server - send delete command
-			var data = "delete=true&" + $.param({ record: rowid });
-			$.ajax({
-				dataType: 'json',
-				url: url,
-				cache: false,
-				data: data,
-				type: "POST",
-				success: function (data, status, xhr) {
-					commit(true);
-					location.reload( true );
-				},
-				error: function (jqXHR, textStatus, errorThrown) {
-					commit(false);
-				}
-			});
-		},
-               	addrow: function (rowid, rowdata, position, commit) {
-                       	var data = "insert=true&" + $.param(rowdata);
-                       	$.ajax({
-                               	dataType: 'json',
-                               	url: url,
-                               	cache: false,
-                               	data: data,
-				type: "POST",
-                               	success: function (data, status, xhr) {
-                                       	commit(true);
-					location.reload( true );
-                               	},
-                               	error: function(jqXHR, textStatus, errorThrown) {
-                                        commit(false);
-                                }
-                        });
-                },
-		updaterow: function (rowid, rowdata, commit) {
-			var data = "update=true&" + $.param(rowdata);
-			$.ajax({
-				dataType: 'json',
-				url: url,
-				cache: false,
-				data: data,
-				type: "POST",
-				success: function (data, status, xhr) {
-					commit(true);
-					location.reload( true );
-				},
-				error: function(jqXHR, textStatus, errorThrown) {
-					commit(false);
-				}
-			});
-		}
-	},
-	dataAdapter = new $.jqx.dataAdapter(source),
-        editrow = -1;
+ var dataRecord = {},
+ url = 'includes/db_inventory_fermentables.php',
+ source = {
+  datatype: 'json',
+  cache: false,
+  datafields: [
+   { name: 'record', type: 'number' },
+   { name: 'name', type: 'string' },
+   { name: 'type', type: 'string' },
+   { name: 'yield', type: 'float' },
+   { name: 'color', type: 'float' },
+   { name: 'add_after_boil', type: 'int' },
+   { name: 'origin', type: 'string' },
+   { name: 'supplier', type: 'string' },
+   { name: 'notes', type: 'string' },
+   { name: 'coarse_fine_diff', type: 'float' },
+   { name: 'moisture', type: 'float' },
+   { name: 'diastatic_power', type: 'float' },
+   { name: 'protein', type: 'float' },
+   { name: 'dissolved_protein', type: 'float' },
+   { name: 'max_in_batch', type: 'float' },
+   { name: 'recommend_mash', type: 'int' },
+   { name: 'added', type: 'string' },
+   { name: 'always_on_stock', type: 'int' },
+   { name: 'di_ph', type: 'float' },
+   { name: 'acid_to_ph_57', type: 'float' },
+   { name: 'graintype', type: 'string' },
+   { name: 'inventory', type: 'float' },
+   { name: 'cost', type: 'float' },
+   { name: 'production_date', type: 'string' },
+   { name: 'tht_date', type: 'string' }
+  ],
+  id: 'record',
+  url: url,
+  deleterow: function(rowid, commit) {
+   var data = 'delete=true&' + $.param({ record: rowid });
+   $.ajax({
+    dataType: 'json',
+    url: url,
+    cache: false,
+    data: data,
+    type: 'POST',
+    success: function(data, status, xhr) {
+     commit(true);
+     location.reload(true);
+    },
+    error: function(jqXHR, textStatus, errorThrown) {
+     commit(false);
+    }
+   });
+  },
+  addrow: function(rowid, rowdata, position, commit) {
+   var data = 'insert=true&' + $.param(rowdata);
+   $.ajax({
+    dataType: 'json',
+    url: url,
+    cache: false,
+    data: data,
+    type: 'POST',
+    success: function(data, status, xhr) {
+     commit(true);
+     location.reload(true);
+    },
+    error: function(jqXHR, textStatus, errorThrown) {
+     commit(false);
+    }
+   });
+  },
+  updaterow: function(rowid, rowdata, commit) {
+   var data = 'update=true&' + $.param(rowdata);
+   $.ajax({
+    dataType: 'json',
+    url: url,
+    cache: false,
+    data: data,
+    type: 'POST',
+    success: function(data, status, xhr) {
+     commit(true);
+     location.reload(true);
+    },
+    error: function(jqXHR, textStatus, errorThrown) {
+     commit(false);
+    }
+   });
+  }
+ },
+ dataAdapter = new $.jqx.dataAdapter(source),
+ editrow = -1;
 
-	// initialize the input fields.
-	$("#name").jqxInput({ theme: theme, width: 640, height: 23 });
-	$("#type").jqxDropDownList({
-		theme: theme,
-		source: FermentableTypeAdapter,
-		valueMember: 'nl',
-		displayMember: 'nl',
-		width: 180,
-		height: 23,
-		autoDropDownHeight: true
-	});
-	$("#yield").jqxNumberInput( Spin1dec );
-	$("#color").jqxNumberInput( Spin1dec );
-	$("#add_after_boil").jqxCheckBox({ theme: theme, width: 120, height: 23 });
-	$("#origin").jqxInput({ theme: theme, width: 250, height: 23 });
-	$("#supplier").jqxInput({ theme: theme, width: 250, height: 23 });
-	$("#notes").jqxInput({ theme: theme, width: 640, height: 100 });
-	$("#coarse_fine_diff").jqxNumberInput( Spin1dec );
-	$("#moisture").jqxNumberInput( Spin1dec );
-	$("#diastatic_power").jqxNumberInput( PosInt );
-	$("#protein").jqxNumberInput( Spin1dec );
-	$("#dissolved_protein").jqxNumberInput( Spin1dec );
-	$("#max_in_batch").jqxNumberInput( Perc1dec );
-	$("#recommend_mash").jqxCheckBox({ theme: theme, width: 120, height: 23 });
-	$("#added").jqxDropDownList({
-		theme: theme,
-		source: AddedAdapter,
-		valueMember: 'nl',
-		displayMember: 'nl',
-		width: 180,
-		height: 23,
-		autoDropDownHeight: true
-	});
-	$("#always_on_stock").jqxCheckBox({ theme: theme, width: 120, height: 23 });
-	$("#di_ph").jqxNumberInput( Spin2pH );
-	$("#acid_to_ph_57").jqxNumberInput({ inputMode: 'simple', theme: theme, width: 110, height: 23, min: -1000, max: 1000, decimalDigits: 4, spinButtons: true });
-	$("#graintype").jqxDropDownList({
-		theme: theme,
-		source: GrainTypeAdapter,
-		valueMember: 'nl',
-		displayMember: 'nl',
-		width: 180,
-		height: 23,
-		autoDropDownHeight: true
-	});
-	$("#inventory").jqxNumberInput( Spin3dec );
-	$("#production_date").jqxDateTimeInput( Dateopts );
-	$("#cost").jqxNumberInput( Spin2dec );
-	$("#tht_date").jqxDateTimeInput( Dateopts );
-	$("#totval").jqxNumberInput( Show2dec );
+ // initialize the input fields.
+ $('#name').jqxInput({ theme: theme, width: 640, height: 23 });
+ $('#type').jqxDropDownList({
+  theme: theme,
+  source: FermentableTypeAdapter,
+  valueMember: 'nl',
+  displayMember: 'nl',
+  width: 180,
+  height: 23,
+  autoDropDownHeight: true
+ });
+ $('#yield').jqxNumberInput(Spin1dec);
+ $('#color').jqxNumberInput(Spin1dec);
+ $('#add_after_boil').jqxCheckBox({ theme: theme, width: 120, height: 23 });
+ $('#origin').jqxInput({ theme: theme, width: 250, height: 23 });
+ $('#supplier').jqxInput({ theme: theme, width: 250, height: 23 });
+ $('#notes').jqxInput({ theme: theme, width: 640, height: 100 });
+ $('#coarse_fine_diff').jqxNumberInput(Spin1dec);
+ $('#moisture').jqxNumberInput(Spin1dec);
+ $('#diastatic_power').jqxNumberInput(PosInt);
+ $('#protein').jqxNumberInput(Spin1dec);
+ $('#dissolved_protein').jqxNumberInput(Spin1dec);
+ $('#max_in_batch').jqxNumberInput(Perc1dec);
+ $('#recommend_mash').jqxCheckBox({ theme: theme, width: 120, height: 23 });
+ $('#added').jqxDropDownList({
+  theme: theme,
+  source: AddedAdapter,
+  valueMember: 'nl',
+  displayMember: 'nl',
+  width: 180,
+  height: 23,
+  autoDropDownHeight: true
+ });
+ $('#always_on_stock').jqxCheckBox({ theme: theme, width: 120, height: 23 });
+ $('#di_ph').jqxNumberInput(Spin2pH);
+ $('#acid_to_ph_57').jqxNumberInput({ inputMode: 'simple', theme: theme, width: 110, height: 23, min: -1000, max: 1000, decimalDigits: 4, spinButtons: true });
+ $('#graintype').jqxDropDownList({
+  theme: theme,
+  source: GrainTypeAdapter,
+  valueMember: 'nl',
+  displayMember: 'nl',
+  width: 180,
+  height: 23,
+  autoDropDownHeight: true
+ });
+ $('#inventory').jqxNumberInput(Spin3dec);
+ $('#production_date').jqxDateTimeInput(Dateopts);
+ $('#cost').jqxNumberInput(Spin2dec);
+ $('#tht_date').jqxDateTimeInput(Dateopts);
+ $('#totval').jqxNumberInput(Show2dec);
 
-	// initialize jqxGrid
-	$("#jqxgrid").jqxGrid({
-		width: 1280,
-		height: 630,
-		source: dataAdapter,
-		theme: theme,
-		showstatusbar: true,
-		renderstatusbar: function (statusbar) {
-			var container, addButton, impButton;
-			container = $("<div style='overflow: hidden; position: relative; margin: 5px;'></div>");
-			addButton = $("<div style='float: right; margin-right: 15px;'><img style='position: relative; margin-top: 2px;' src='images/add.png'/><span style='margin-left: 4px; position: relative; top: -3px;'>Nieuw</span></div>");
-			impButton = $("<div style='float: right; margin-right: 50px;'><img style='position: relative; margin-top: 2px;' src='images/add.png'/><span style='margin-left: 4px; position: relative; top: -3px;'>Import</span></div>");
-			container.append(addButton);
-			container.append(impButton);
-			statusbar.append(container);
-			addButton.jqxButton({ theme: theme, width: 90, height: 20 });
-			impButton.jqxButton({ theme: theme, width: 90, height: 20 });
-			// add new row.
-			addButton.click(function (event) {
-				editrow = -1;
-				$("#popupWindow").jqxWindow({ position: { x: 110, y: 30 } });
-				$("#name").val('Nieuw product');
-				$("#type").val('Mout');
-				$("#origin").val('');
-				$("#supplier").val('');
-				$("#notes").val('');
-				$("#yield").val(80);
-				$("#color").val(3);
-				$("#coarse_fine_diff").val(3);
-				$("#moisture").val(4);
-				$("#diastatic_power").val(0);
-				$("#protein").val(0);
-				$("#dissolved_protein").val(0);
-				$("#max_in_batch").val(100);
-				$("#recommend_mash").val(1);
-				$("#always_on_stock").val(0);
-				$("#di_ph").val(0);
-				$("#acid_to_ph_57").val(0);
-				$("#graintype").val('Basismout');
-				$("#add_after_boil").val(0);
-				$("#added").val('Maischen');
-				$("#inventory").val(0);
-				$("#cost").val(0);
-				$("#production_date").val('');
-				$("#tht_date").val('');
-				$("#popupWindow").jqxWindow('open');
-			});
-			impButton.click(function (event) {
-				window.location.href = 'import_ingredients.php?select=fermentables';
-			});
-		},
-		filterable: true,
-		filtermode: 'excel',
-		columns: [
-			{ text: 'Herkomst', datafield: 'origin', width: 150 },
-			{ text: 'Producent', datafield: 'supplier', width: 140 },
-			{ text: 'Vergistbaar product', datafield: 'name', menu: false },
-			{ text: 'Soort', width: 135, filtertype: 'list', datafield: 'type' },
-			{ text: 'Graan type', datafield: 'graintype', align: 'center', cellsalign: 'center', width: 125 },
-			{ text: 'EBC', datafield: 'color', width: 60, align: 'right', menu: false, cellsalign: 'right' },
-			{ text: 'Opbrengst', datafield: 'yield', width: 70, align: 'right', menu: false, cellsalign: 'right', cellsformat: 'p1' },
-			{ text: 'Voorraad', datafield: 'inventory', width: 100, align: 'right', menu: false,
-			  cellsrenderer: function (index, datafield, value, defaultvalue, column, rowdata) {
-				var amount = "";
-				if (value > 0) {
-					if (value < 1.000)
-						amount = dataAdapter.formatNumber(value * 1000,"f0")+" gr";
-					else
-						amount = dataAdapter.formatNumber(value,"f1")+" kg";
-				}
-				return "<span style='margin: 3px; margin-top: 6px; float: right;'>" + amount + "</span>";
-			  }
-			},
-			{ text: '', datafield: 'Edit', width: 100, align: 'center', menu: false, columntype: 'button',
-				cellsrenderer: function () {
-					return "Wijzig";
-				}, buttonclick: function (row) {
-					// open the popup window when the user clicks a button.
-					editrow = row;
-					$("#popupWindow").jqxWindow({ position: { x: 110, y: 30 } });
-					// get the clicked row's data and initialize the input fields.
-					dataRecord = $("#jqxgrid").jqxGrid('getrowdata', editrow);
-					$("#name").val(dataRecord.name);
-					$("#type").val(dataRecord.type);
-					$("#yield").val(dataRecord.yield);
-					$("#color").val(dataRecord.color);
-					$("#add_after_boil").val(dataRecord.add_after_boil);
-					$("#origin").val(dataRecord.origin);
-					$("#supplier").val(dataRecord.supplier);
-					$("#notes").val(dataRecord.notes);
-					$("#coarse_fine_diff").val(dataRecord.coarse_fine_diff);
-					$("#moisture").val(dataRecord.moisture);
-					$("#diastatic_power").val(lintner_to_kolbach(dataRecord.diastatic_power));
-					$("#protein").val(dataRecord.protein);
-					$("#dissolved_protein").val(dataRecord.dissolved_protein);
-					$("#max_in_batch").val(dataRecord.max_in_batch);
-					$("#recommend_mash").val(dataRecord.recommend_mash);
-					$("#added").val(dataRecord.added);
-					$("#always_on_stock").val(dataRecord.always_on_stock);
-					$("#di_ph").val(dataRecord.di_ph);
-					$("#acid_to_ph_57").val(dataRecord.acid_to_ph_57);
-					$("#graintype").val(dataRecord.graintype);
-					$("#inventory").val(dataRecord.inventory);
-					$("#cost").val(dataRecord.cost);
-					$("#production_date").val(dataRecord.production_date);
-					$("#tht_date").val(dataRecord.tht_date);
-					calcTotal(dataRecord.cost, dataRecord.inventory);
-					// show the popup window.
-					$("#popupWindow").jqxWindow('open');
-				}
-			}
-		]
-	});
+ // initialize jqxGrid
+ $('#jqxgrid').jqxGrid({
+  width: 1280,
+  height: 630,
+  source: dataAdapter,
+  theme: theme,
+  showstatusbar: true,
+  renderstatusbar: function(statusbar) {
+   var container, addButton, impButton;
+   container = $('<div style="overflow: hidden; position: relative; margin: 5px;"></div>');
+   addButton = $('<div style="float: right; margin-right: 15px;"><img style="position: relative; margin-top: 2px;" ' +
+     'src="images/add.png"/><span style="margin-left: 4px; position: relative; top: -3px;">Nieuw</span></div>');
+   impButton = $('<div style="float: right; margin-right: 50px;"><img style="position: relative; margin-top: 2px;" ' +
+     'src="images/add.png"/><span style="margin-left: 4px; position: relative; top: -3px;">Import</span></div>');
+   container.append(addButton);
+   container.append(impButton);
+   statusbar.append(container);
+   addButton.jqxButton({ theme: theme, width: 90, height: 20 });
+   impButton.jqxButton({ theme: theme, width: 90, height: 20 });
+   // add new row.
+   addButton.click(function(event) {
+    editrow = -1;
+    $('#popupWindow').jqxWindow({ position: { x: 110, y: 30 } });
+    $('#name').val('Nieuw product');
+    $('#type').val('Mout');
+    $('#origin').val('');
+    $('#supplier').val('');
+    $('#notes').val('');
+    $('#yield').val(80);
+    $('#color').val(3);
+    $('#coarse_fine_diff').val(3);
+    $('#moisture').val(4);
+    $('#diastatic_power').val(0);
+    $('#protein').val(0);
+    $('#dissolved_protein').val(0);
+    $('#max_in_batch').val(100);
+    $('#recommend_mash').val(1);
+    $('#always_on_stock').val(0);
+    $('#di_ph').val(0);
+    $('#acid_to_ph_57').val(0);
+    $('#graintype').val('Basismout');
+    $('#add_after_boil').val(0);
+    $('#added').val('Maischen');
+    $('#inventory').val(0);
+    $('#cost').val(0);
+    $('#production_date').val('');
+    $('#tht_date').val('');
+    $('#popupWindow').jqxWindow('open');
+   });
+   impButton.click(function(event) {
+    window.location.href = 'import_ingredients.php?select=fermentables';
+   });
+  },
+  filterable: true,
+  filtermode: 'excel',
+  columns: [
+   { text: 'Herkomst', datafield: 'origin', width: 150 },
+   { text: 'Producent', datafield: 'supplier', width: 140 },
+   { text: 'Vergistbaar product', datafield: 'name', menu: false },
+   { text: 'Soort', width: 135, filtertype: 'list', datafield: 'type' },
+   { text: 'Graan type', datafield: 'graintype', align: 'center', cellsalign: 'center', width: 125 },
+   { text: 'EBC', datafield: 'color', width: 60, align: 'right', menu: false, cellsalign: 'right' },
+   { text: 'Opbrengst', datafield: 'yield', width: 70, align: 'right', menu: false, cellsalign: 'right', cellsformat: 'p1' },
+   { text: 'Voorraad', datafield: 'inventory', width: 100, align: 'right', menu: false,
+    cellsrenderer: function(index, datafield, value, defaultvalue, column, rowdata) {
+     var amount = '';
+     if (value > 0) {
+      if (value < 1.000)
+       amount = dataAdapter.formatNumber(value * 1000, 'f0') + ' gr';
+      else
+       amount = dataAdapter.formatNumber(value, 'f1') + ' kg';
+     }
+     return '<span style="margin: 3px; margin-top: 6px; float: right;">' + amount + '</span>';
+    }
+   },
+   { text: '', datafield: 'Edit', width: 100, align: 'center', menu: false, columntype: 'button',
+    cellsrenderer: function() {
+     return 'Wijzig';
+    }, buttonclick: function(row) {
+     // open the popup window when the user clicks a button.
+     editrow = row;
+     $('#popupWindow').jqxWindow({ position: { x: 110, y: 30 } });
+     // get the clicked row's data and initialize the input fields.
+     dataRecord = $('#jqxgrid').jqxGrid('getrowdata', editrow);
+     $('#name').val(dataRecord.name);
+     $('#type').val(dataRecord.type);
+     $('#yield').val(dataRecord.yield);
+     $('#color').val(dataRecord.color);
+     $('#add_after_boil').val(dataRecord.add_after_boil);
+     $('#origin').val(dataRecord.origin);
+     $('#supplier').val(dataRecord.supplier);
+     $('#notes').val(dataRecord.notes);
+     $('#coarse_fine_diff').val(dataRecord.coarse_fine_diff);
+     $('#moisture').val(dataRecord.moisture);
+     $('#diastatic_power').val(lintner_to_kolbach(dataRecord.diastatic_power));
+     $('#protein').val(dataRecord.protein);
+     $('#dissolved_protein').val(dataRecord.dissolved_protein);
+     $('#max_in_batch').val(dataRecord.max_in_batch);
+     $('#recommend_mash').val(dataRecord.recommend_mash);
+     $('#added').val(dataRecord.added);
+     $('#always_on_stock').val(dataRecord.always_on_stock);
+     $('#di_ph').val(dataRecord.di_ph);
+     $('#acid_to_ph_57').val(dataRecord.acid_to_ph_57);
+     $('#graintype').val(dataRecord.graintype);
+     $('#inventory').val(dataRecord.inventory);
+     $('#cost').val(dataRecord.cost);
+     $('#production_date').val(dataRecord.production_date);
+     $('#tht_date').val(dataRecord.tht_date);
+     calcTotal(dataRecord.cost, dataRecord.inventory);
+     // show the popup window.
+     $('#popupWindow').jqxWindow('open');
+    }
+   }
+  ]
+ });
 
-	$("#cost").on('change', function (event) {
-		dataRecord.cost = parseFloat(event.args.value);
-		calcTotal(dataRecord.cost, dataRecord.inventory);
-	});
-	$("#inventory").on('change', function (event) {
-		dataRecord.inventory = parseFloat(event.args.value);
-		calcTotal(dataRecord.cost, dataRecord.inventory);
-	});
+ $('#cost').on('change', function(event) {
+  dataRecord.cost = parseFloat(event.args.value);
+  calcTotal(dataRecord.cost, dataRecord.inventory);
+ });
+ $('#inventory').on('change', function(event) {
+  dataRecord.inventory = parseFloat(event.args.value);
+  calcTotal(dataRecord.cost, dataRecord.inventory);
+ });
 
-	// initialize the popup window and buttons.
-	$("#popupWindow").jqxWindow({
-		width: 1050,
-		height: 550,
-		resizable: false,
-		theme: theme,
-		isModal: true,
-		autoOpen: false,
-		cancelButton: $("#Cancel"),
-		modalOpacity: 0.40
-	});
-	$("#popupWindow").on('open', function () {
-		$("#name").jqxInput('selectAll');
-	});
-	$("#Delete").jqxButton({ template: "danger", width: '90px', theme: theme });
-	$("#Delete").click(function() {
-		if (editrow >= 0) {
-			// Open a popup to confirm this action.
-			$('#eventWindow').jqxWindow('open');
-			$("#delOk").click(function () {
-				var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
-				$("#jqxgrid").jqxGrid('deleterow', rowID);
-			});
-		}
-		$("#popupWindow").jqxWindow('hide');
-	});
-	$('#Cancel').jqxButton({ template: 'primary', width: '90px', theme: theme });
-        $('#Clone').jqxButton({ template: 'warning', width: '90px', theme: theme });
-        $('#Clone').click(function() {
-                var row = {
-                        record: -1,
-                        name: $('#name').val() + ' kopie',
-                        type: $('#type').val(),
-                        yield: parseFloat($('#yield').jqxNumberInput('decimal')),
-                        color: parseFloat($('#color').jqxNumberInput('decimal')),
-                        add_after_boil: $('#add_after_boil').val(),
-                        origin: $('#origin').val(),
-                        supplier: $('#supplier').val(),
-                        notes: $('#notes').val(),
-                        coarse_fine_diff: parseFloat($('#coarse_fine_diff').jqxNumberInput('decimal')),
-                        moisture: parseFloat($('#moisture').jqxNumberInput('decimal')),
-                        diastatic_power: kolbach_to_lintner(parseFloat($('#diastatic_power').jqxNumberInput('decimal'))),
-                        protein: parseFloat($('#protein').jqxNumberInput('decimal')),
-                        dissolved_protein: parseFloat($('#dissolved_protein').jqxNumberInput('decimal')),
-                        max_in_batch: parseFloat($('#max_in_batch').jqxNumberInput('decimal')),
-                        recommend_mash: $('#recommend_mash').val(),
-                        added: $('#added').val(),
-                        always_on_stock: $('#always_on_stock').val(),
-                        di_ph: parseFloat($('#di_ph').jqxNumberInput('decimal')),
-                        acid_to_ph_57: parseFloat($('#acid_to_ph_57').jqxNumberInput('decimal')),
-                        graintype: $('#graintype').val(),
-                        inventory: 0,
-                        cost: parseFloat($('#cost').jqxNumberInput('decimal')),
-                        production_date: '',
-                        tht_date: ''
-                };
-                $('#jqxgrid').jqxGrid('addrow', null, row);
-                $('#popupWindow').jqxWindow('hide');
-        });
-	$("#Save").jqxButton({ template: "success", width: '90px', theme: theme });
-	// update the edited row when the user clicks the 'Save' button.
-	$("#Save").click(function() {
-		var row, rowID = -1;
-		if (editrow >= 0) {
-			rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
-		}
-		row = {
-			record: rowID,
-			name: $("#name").val(),
-			type: $("#type").val(),
-			yield: parseFloat($("#yield").jqxNumberInput('decimal')),
-			color: parseFloat($("#color").jqxNumberInput('decimal')),
-			add_after_boil: $("#add_after_boil").val(),
-			origin: $("#origin").val(),
-			supplier: $("#supplier").val(),
-			notes: $("#notes").val(),
-			coarse_fine_diff: parseFloat($("#coarse_fine_diff").jqxNumberInput('decimal')),
-			moisture: parseFloat($("#moisture").jqxNumberInput('decimal')),
-			diastatic_power: kolbach_to_lintner(parseFloat($("#diastatic_power").jqxNumberInput('decimal'))),
-			protein: parseFloat($("#protein").jqxNumberInput('decimal')),
-			dissolved_protein: parseFloat($("#dissolved_protein").jqxNumberInput('decimal')),
-			max_in_batch: parseFloat($("#max_in_batch").jqxNumberInput('decimal')),
-			recommend_mash: $("#recommend_mash").val(),
-			added: $("#added").val(),
-			always_on_stock: $("#always_on_stock").val(),
-			di_ph: parseFloat($("#di_ph").jqxNumberInput('decimal')),
-			acid_to_ph_57: parseFloat($("#acid_to_ph_57").jqxNumberInput('decimal')),
-			graintype: $("#graintype").val(),
-			inventory: parseFloat($("#inventory").jqxNumberInput('decimal')),
-			cost: parseFloat($("#cost").jqxNumberInput('decimal')),
-			production_date: $("#production_date").val(),
-			tht_date: $("#tht_date").val(),
-		};
-		if (editrow >= 0) {
-			$('#jqxgrid').jqxGrid('updaterow', rowID, row);
-		} else {
-			$('#jqxgrid').jqxGrid('addrow', null, row);
-		}
-		$("#popupWindow").jqxWindow('hide');
-	});
-	createDelElements();
+ // initialize the popup window and buttons.
+ $('#popupWindow').jqxWindow({
+  width: 1050,
+  height: 550,
+  resizable: false,
+  theme: theme,
+  isModal: true,
+  autoOpen: false,
+  cancelButton: $('#Cancel'),
+  modalOpacity: 0.40
+ });
+ $('#popupWindow').on('open', function() {
+  $('#name').jqxInput('selectAll');
+ });
+ $('#Delete').jqxButton({ template: 'danger', width: '90px', theme: theme });
+ $('#Delete').click(function() {
+  if (editrow >= 0) {
+   // Open a popup to confirm this action.
+   $('#eventWindow').jqxWindow('open');
+   $('#delOk').click(function() {
+    var rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
+    $('#jqxgrid').jqxGrid('deleterow', rowID);
+   });
+  }
+  $('#popupWindow').jqxWindow('hide');
+ });
+ $('#Cancel').jqxButton({ template: 'primary', width: '90px', theme: theme });
+ $('#Clone').jqxButton({ template: 'warning', width: '90px', theme: theme });
+ $('#Clone').click(function() {
+  var row = {
+   record: -1,
+   name: $('#name').val() + ' kopie',
+   type: $('#type').val(),
+   yield: parseFloat($('#yield').jqxNumberInput('decimal')),
+   color: parseFloat($('#color').jqxNumberInput('decimal')),
+   add_after_boil: $('#add_after_boil').val(),
+   origin: $('#origin').val(),
+   supplier: $('#supplier').val(),
+   notes: $('#notes').val(),
+   coarse_fine_diff: parseFloat($('#coarse_fine_diff').jqxNumberInput('decimal')),
+   moisture: parseFloat($('#moisture').jqxNumberInput('decimal')),
+   diastatic_power: kolbach_to_lintner(parseFloat($('#diastatic_power').jqxNumberInput('decimal'))),
+   protein: parseFloat($('#protein').jqxNumberInput('decimal')),
+   dissolved_protein: parseFloat($('#dissolved_protein').jqxNumberInput('decimal')),
+   max_in_batch: parseFloat($('#max_in_batch').jqxNumberInput('decimal')),
+   recommend_mash: $('#recommend_mash').val(),
+   added: $('#added').val(),
+   always_on_stock: $('#always_on_stock').val(),
+   di_ph: parseFloat($('#di_ph').jqxNumberInput('decimal')),
+   acid_to_ph_57: parseFloat($('#acid_to_ph_57').jqxNumberInput('decimal')),
+   graintype: $('#graintype').val(),
+   inventory: 0,
+   cost: parseFloat($('#cost').jqxNumberInput('decimal')),
+   production_date: '',
+   tht_date: ''
+  };
+  $('#jqxgrid').jqxGrid('addrow', null, row);
+  $('#popupWindow').jqxWindow('hide');
+ });
+ $('#Save').jqxButton({ template: 'success', width: '90px', theme: theme });
+ // update the edited row when the user clicks the 'Save' button.
+ $('#Save').click(function() {
+  var row, rowID = -1;
+  if (editrow >= 0) {
+   rowID = $('#jqxgrid').jqxGrid('getrowid', editrow);
+  }
+  row = {
+   record: rowID,
+   name: $('#name').val(),
+   type: $('#type').val(),
+   yield: parseFloat($('#yield').jqxNumberInput('decimal')),
+   color: parseFloat($('#color').jqxNumberInput('decimal')),
+   add_after_boil: $('#add_after_boil').val(),
+   origin: $('#origin').val(),
+   supplier: $('#supplier').val(),
+   notes: $('#notes').val(),
+   coarse_fine_diff: parseFloat($('#coarse_fine_diff').jqxNumberInput('decimal')),
+   moisture: parseFloat($('#moisture').jqxNumberInput('decimal')),
+   diastatic_power: kolbach_to_lintner(parseFloat($('#diastatic_power').jqxNumberInput('decimal'))),
+   protein: parseFloat($('#protein').jqxNumberInput('decimal')),
+   dissolved_protein: parseFloat($('#dissolved_protein').jqxNumberInput('decimal')),
+   max_in_batch: parseFloat($('#max_in_batch').jqxNumberInput('decimal')),
+   recommend_mash: $('#recommend_mash').val(),
+   added: $('#added').val(),
+   always_on_stock: $('#always_on_stock').val(),
+   di_ph: parseFloat($('#di_ph').jqxNumberInput('decimal')),
+   acid_to_ph_57: parseFloat($('#acid_to_ph_57').jqxNumberInput('decimal')),
+   graintype: $('#graintype').val(),
+   inventory: parseFloat($('#inventory').jqxNumberInput('decimal')),
+   cost: parseFloat($('#cost').jqxNumberInput('decimal')),
+   production_date: $('#production_date').val(),
+   tht_date: $('#tht_date').val(),
+  };
+  if (editrow >= 0) {
+   $('#jqxgrid').jqxGrid('updaterow', rowID, row);
+  } else {
+   $('#jqxgrid').jqxGrid('addrow', null, row);
+  }
+  $('#popupWindow').jqxWindow('hide');
+ });
+ createDelElements();
 });
 

mercurial