diff --git a/index.html b/index.html index e69de29..067d27a 100644 --- a/index.html +++ b/index.html @@ -0,0 +1,38 @@ + + + + + Cash Register + + +
+


+ + + + +

+ + + + +

+ + + + +

+ + + + +

+
+ +
+ +
+ + + + \ No newline at end of file diff --git a/js/calculator.js b/js/calculator.js index e69de29..d9d5c9e 100644 --- a/js/calculator.js +++ b/js/calculator.js @@ -0,0 +1,50 @@ + +var calculatorModule = (function () { + //total is private + var total = 0; + var calculator = { + + + clear: function (){ + total = 0; + return total; + }, + + add: function (num){ + total += num; + console.log(total); + return total; + }, + + subtract: function (num){ + total -= num; + return total; + }, + + divide: function (num){ + total /= num; + return total; + }, + + multiply: function (num){ + total *= num; + return total; + }, + + equals: function (){ + return total; + }, + + total: function (num) { + return total = num; + + } + + }; +//anything after the return is a public variable +return calculator; + +})(); + + + diff --git a/js/cash_register.js b/js/cash_register.js index e69de29..1fc6c31 100644 --- a/js/cash_register.js +++ b/js/cash_register.js @@ -0,0 +1,126 @@ +console.log("test"); + + + +window.register = (function () { + var calc = calculatorModule; + //var saved; + var op = null; + var balance = 0; + var display = document.getElementById("displayBox"); + + + document.getElementById("b7").addEventListener('click', function(){ + concatDisplayNumbers(7); + + }); + document.getElementById("b8").addEventListener('click', function(){ + validateInput(); + concatDisplayNumbers(8); + }); + document.getElementById("b9").addEventListener('click', function(){ + validateInput(); + concatDisplayNumbers(9); + }); + document.getElementById("b4").addEventListener('click', function(){ + concatDisplayNumbers(4); + }); + document.getElementById("b5").addEventListener('click', function(){ + concatDisplayNumbers(5); + }); + document.getElementById("b6").addEventListener('click', function(){ + concatDisplayNumbers(6); + }); + document.getElementById("b1").addEventListener('click', function(){ + concatDisplayNumbers(1); + }); + document.getElementById("b2").addEventListener('click', function(){ + concatDisplayNumbers(2); + }); + document.getElementById("b3").addEventListener('click', function(){ + concatDisplayNumbers(3); + }); + document.getElementById("b0").addEventListener('click', function(){ + concatDisplayNumbers(0); + }); + document.getElementById("b00").addEventListener('click', function(){ + concatDisplayNumbers('00'); + }); + document.getElementById("decimal").addEventListener('click', function(){ + concatDisplayNumbers('.'); + }); + document.getElementById("depositCash").addEventListener('click', function(){ + + }); + + //addition + document.getElementById("plus").addEventListener('click', function(){ + var displayVal = validateInput(display.innerHTML); + calc.add(displayVal); + op = "add"; + display.innerHTML = ""; + }); + + //subtraction + document.getElementById("minus").addEventListener('click', function(){ + var displayVal = validateInput(display.innerHTML); + calc.subtract(displayVal); + op = "subtract"; + display.innerHTML = ""; + + }); + + document.getElementById("b=").addEventListener('click', function(){ + var displayVal = validateInput(display.innerHTML); + if (op == "add") { + calc.add(displayVal); + } + display.innerHTML = calc.equals(); + calc.clear(); + + + }); + + document.getElementById("clear").addEventListener('click', function(){ + clearFunc(); + }); + + + + +function concatDisplayNumbers (number) { + if (display.innerHTML !== " ") { + display.innerHTML += number; + } else { + console.log("Display is empty"); + display.innerHTML = number; + } +} + + +function clearFunc () { + console.log("clearrrr"); + display.innerHTML = ""; +} + + +function validateInput (numberString) { + var number = parseFloat(numberString); + if (isNaN(number)) { + return 0; + } else { + return number; + } + + +} + + +})(); + + + + + + + \ No newline at end of file diff --git a/npm-debug.log b/npm-debug.log new file mode 100644 index 0000000..4356289 --- /dev/null +++ b/npm-debug.log @@ -0,0 +1,20 @@ +0 info it worked if it ends with ok +1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'test' ] +2 info using npm@2.14.2 +3 info using node@v4.0.0 +4 verbose config Skipping project config: /Users/theotran/.npmrc. (matches userconfig) +5 verbose stack Error: ENOENT: no such file or directory, open '/Users/theotran/package.json' +5 verbose stack at Error (native) +6 verbose cwd /Users/theotran/Devleague/Cash-Register +7 error Darwin 12.2.1 +8 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "test" +9 error node v4.0.0 +10 error npm v2.14.2 +11 error path /Users/theotran/package.json +12 error code ENOENT +13 error errno -2 +14 error syscall open +15 error enoent ENOENT: no such file or directory, open '/Users/theotran/package.json' +15 error enoent This is most likely not a problem with npm itself +15 error enoent and is related to npm not being able to find a file. +16 verbose exit [ -2, true ]