diff --git a/andreas/index.html b/andreas/index.html new file mode 100644 index 0000000..0ee0d1d --- /dev/null +++ b/andreas/index.html @@ -0,0 +1,34 @@ + + + + + Mettcalc – calc all you need + + + + +
+
+
+ +
+ +
+
+
+ +
+ +
+
+
+
+ +
+
+
+
+
+ + + diff --git a/andreas/mett.js b/andreas/mett.js new file mode 100644 index 0000000..c1d7357 --- /dev/null +++ b/andreas/mett.js @@ -0,0 +1,61 @@ +!!(function() { + var aUnits = { + 'wenig': 30, + 'normal': 40, + 'viel': 50, + 'sehr viel': 60 + } + var iHunger = 40; + var iRolls = 1; + var $oRolls = $('#halfRolls'); + var $oSelect = $('#hunger'); + var aMeasures = ['G', 'KG', 'T']; + + var inf = function(iIn) { + var sIn = String(Math.round(iIn)); + var rGx = /(\d+)(\d{3})/; + while(rGx.test(sIn)) sIn = sIn.replace(rGx, '$1.$2'); + return sIn; + } + var nf = function(fIn) { + var aIn = String(parseFloat(fIn).toFixed(2)).split('.'); + var rGx = /(\d+)(\d{3})/; + while(rGx.test(aIn[0])) aIn[0] = aIn[0].replace(rGx, '$1.$2'); + return aIn.join(','); + } + var calc = function() { + var fHack = iRolls * iHunger; + var sMeas = ''; + var bDiv = false; + for(var i in aMeasures) { + sMeas = aMeasures[i]; + if(fHack < 1000) break; + fHack /= 1000; + bDiv = true; + } + document.location.hash = 'r'+iRolls+'-m'+iHunger; + $('#out').text('Bestell '+(bDiv ? nf(fHack) : inf(fHack))+' '+sMeas+' Mett beim Metzger, bro.'); + } + + var aMatch = document.location.hash.match(/r(\d+)-m(\d+)/); + if(aMatch) { + iRolls = parseInt(aMatch[1]); + iHunger = parseInt(aMatch[2]); + calc(); + } + + $oRolls.val(iRolls).on('change', function() { + iRolls = parseInt($oRolls.val()); + }); + + $.each(aUnits, function(name, e) { + $oSelect.append($('