?
Current Path : /home1/savoy/www/savoyglobal.net/cocorico/assets/scripts/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : /home1/savoy/www/savoyglobal.net/cocorico/assets/scripts/autonumeric.js |
/** * autoNumeric.js * @author: Bob Knothe * @version: 1.6.2 * * Created by Robert J. Knothe on 2010-10-25. Please report any bug at http://www.decorplanit.com/plugin/ * * Copyright (c) 2010 Robert J. Knothe http://www.decorplanit.com/plugin/ * * The MIT License (http://www.opensource.org/licenses/mit-license.php) * * Permission is hereby granted, free of charge, to any person * obtaining a copy of this software and associated documentation * files (the "Software"), to deal in the Software without * restriction, including without limitation the rights to use, * copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following * conditions: * * The above copyright notice and this permission notice shall be * included in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. */ (function($) { $.fn.autoNumeric = function(options) { var opts = $.extend({}, $.fn.autoNumeric.defaults, options);/* build main options before element iteration */ return this.each(function() {/* iterate and reformat each matched element */ var iv = $(this);/* check input value iv */ var ii = this.id;/* input ID */ var io = $.metadata ? $.extend({}, opts, iv.metadata()) : opts;/* build element specific options io = input options */ io.mDec = isNaN(io.mDec * 1) ? $('#' + io.mDec).val() * 1 : io.mDec * 1;/* sets decimal places */ var kdCode = '';/* Key down Code */ var selectLength = 0;/* length of input selected */ var caretPos = 0;/* caret poistion */ var inLength = 0;/* length prior to keypress event */ var charLeft = 0;/* number of characters to the left of the decimal point */ var numLeft = 0;/* number of numeric characters to the left of the decimal point */ var numRight = 0;/* number of numeric characters to the right of the decimal point */ var cmdKey = false;/* MAC command ket pressed */ $(this).keydown(function(e){/* start keyDown event */ io = $.metadata ? $.extend({}, opts, iv.metadata()) : opts;/* build element specific options io = input options */ io.mDec = isNaN(io.mDec * 1) ? $('#' + io.mDec).val() * 1 : io.mDec * 1;/* sets decimal places */ cmdKey = false; if (!e){/* routine for key codes on key down */ e = window.event; } if (e.keyCode){/* IE support */ kdCode = e.keyCode; } else if (e.which){/* FF & O support */ kdCode = e.which; } if(e.metaKey){/* tests for Mac command key being pressed down thanks Bart B. for bring to my attention */ cmdKey = true; } if (document.selection){/* IE Support to find the caret position */ this.focus(); var select = document.selection.createRange(); selectLength = document.selection.createRange().text.length; select.moveStart('character', -this.value.length); caretPos = (select.text.length - selectLength) * 1; } else if (this.selectionStart || this.selectionStart == '0'){/* Firefox support to find the caret position */ selectLength = this.selectionEnd * 1 - this.selectionStart * 1; caretPos = this.selectionStart * 1; }/* end caret position routine */ inLength = this.value.length;/* pass string length to keypress event for value left & right of the decimal position & keyUp event to set caret position */ }).keypress(function(e){/* start keypress event*/ var allowed = io.aNum + io.aNeg + io.aDec;/* sets allowed input, number, negitive sign and decimal seperator */ charLeft = (this.value.lastIndexOf(io.aDec) == -1) ? inLength : inLength - (inLength - this.value.lastIndexOf(io.aDec));/* characters to the left of the decimal point */ numLeft = autoCount(this.value, 0, charLeft);/* the number of intergers to the left of the decimal point */ if (this.value.lastIndexOf(io.aDec) != -1){ numRight = autoCount(this.value, charLeft, inLength);/* the number of intergers to the right of the decimal point */ } if ((e.ctrlKey || cmdKey) && (kdCode == 65 || kdCode == 67 || kdCode == 86 || kdCode == 88)){/* allows controll key & select all (v=65) Thanks Jonas Johansson, copy(c=67), past (v=86), cut (v=88) */ return true; } if (kdCode == 8 || kdCode == 9 || kdCode == 13 || kdCode == 35 || kdCode == 36 || kdCode == 37 || kdCode == 39 || kdCode == 46){/* allows the backspace (8), tab (9), enter 13, end (35), home(36), left(37) and right(39) arrows key delete key (46) to function in some browsers (FF & O) - Thanks to Bart Bons on the return key */ return true; } var kpCode = '';/* Key Press Code */ if (!e){/* routine for key codes on key down */ e = window.event; } if (e.keyCode){/* IE */ kpCode = e.keyCode; } else if (e.which){/* FF & O */ kpCode = e.which; } var cCode = String.fromCharCode(kpCode);/* Character code*/ if (allowed.indexOf(cCode) == -1){/* checks for allowed characters */ e.preventDefault(); } if (cCode == io.aDec){/* start rules when the decimal charactor key is pressed */ if (selectLength == inLength && selectLength > 0){/* allows the selected input to be replaced with a number - Thanks Bart V. */ return; } if(caretPos <= this.value.lastIndexOf('-') || this.value.indexOf(io.aDec) != -1 || io.mDec === 0){/* prevents the decimal decimal character from being enetered left of the negitive symbol */ e.preventDefault(); } if(caretPos <= this.value.lastIndexOf(io.aSep) && this.value.lastIndexOf(io.aSep) != -1 && io.aSep !== ''){/* prevents the decimal charactor from being entered to the left of a thousand separator */ if(io.pSign == 's' && io.aSign.indexOf(' ') >= 0){/* rules when the curency symbol has a space character and is placed as a suffix and the thousand separator is also a space */ var subStr = this.value.substring(0, this.value.length - io.aSign.length); var subStrPos = subStr.lastIndexOf(' '); if(caretPos > subStrPos && caretPos >= subStr.length - io.mDec){ return; } else { e.preventDefault(); } } else { e.preventDefault(); } } if(io.aSign === '' && caretPos < this.value.length - io.mDec){/* decimal placement & accuracy with no currency symbol */ e.preventDefault(); } if(io.aSign !== '' && io.pSign == 'p' && (this.value.length - caretPos > io.mDec || caretPos < io.aSign.length)){/* decimal placement & accuracy with with currency symbol as prefix */ e.preventDefault(); } if(io.aSign !== '' && io.pSign == 's' && (caretPos > this.value.length - io.aSign.length || caretPos < this.value.length - (io.aSign.length + io.mDec))){/* decimal placement & accuracy with with currency symbol as suffix */ e.preventDefault(); } }/* end rules when the decimal charactor key is pressed */ if (kpCode == 45 && (caretPos > 0 || this.value.indexOf('-') != -1 || io.aNeg === '')){/* start rules when the negative key pressed */ if (selectLength >= 1 && caretPos === 0){/* allows the selected input to be replaced with a number - Thanks Bart V. */ return; } else{ e.preventDefault(); } }/* end rules when the negative key pressed */ if (kpCode >= 48 && kpCode <= 57){/* start rules for number key press */ if (selectLength > 0){/* allows the selected input to be replaced with a number - Thanks Bart V. */ return; } if (caretPos < io.aSign.length && io.aSign !== '' && io.pSign == 'p' && inLength > 0){/* prevents numbers from being entered to the left of the currency sign when the currency symbol is on the left */ e.preventDefault(); } if (caretPos > this.value.length - io.aSign.length && io.aSign !== '' && io.pSign == 's' && this.value !== ''){/* prevents numbers from being entered to the right of the currency sign when the currency symbol is on the right */ e.preventDefault(); } if (caretPos == this.value.lastIndexOf('-')){/* prevents numbers from being entered to the left negative sign */ e.preventDefault(); } if (numLeft >= io.mNum && caretPos <= charLeft){/* checks for max numeric characters to the left of the decimal point */ e.preventDefault(); } if (this.value.indexOf(io.aDec) != -1 && caretPos >= charLeft + 1 && numRight >= io.mDec){/* checks for max numeric characters to the left and right of the decimal point */ e.preventDefault(); } }/* end rules for number key press */ }).keyup(function(e){/* start keyup event routine */ if (this.value === '') { /* Fix to let you delete what is in the textbox without it adding padded zeroes - bcull - 6 Sep 2010 */ return; } if (io.aSep === '' || e.keyCode == 9 || e.keyCode == 20 || e.keyCode == 35 || e.keyCode == 36 || e.keyCode == 37 || e.keyCode == 39 || kdCode == 9 || kdCode == 13 || kdCode == 20 || kdCode == 35 || kdCode == 36 || kdCode == 37 || kdCode == 39){/* allows the tab(9), end(35), home(36) left(37) & right(39) arrows and when there is no thousand separator to bypass the autoGroup function */ return;/* key codes 35 & 36 Home and end keys fix thanks to JPM USA */ } /* if(kdCode == 110 && this.value.indexOf(io.aDec) == -1 && io.mDec > 0 && caretPos >= this.value.length - io.mDec && this.value.lastIndexOf(io.aSep) < caretPos && this.value.lastIndexOf('-') < caretPos){ //start modification for period key to enter a comma on numeric pad $(this).val(this.value.substring(0, caretPos) + io.aDec + this.value.substring(inLength, caretPos)); }*/ $(autoId(ii)).val(autoGroup(this.value, io));/* adds the thousand sepparator */ var outLength = this.value.length; charLeft = (this.value.lastIndexOf(io.aDec) == -1) ? outLength : outLength - (outLength - this.value.lastIndexOf(io.aDec)); numLeft = autoCount(this.value, 0, charLeft);/* the number of intergers to the left of the decimal point */ if (numLeft > io.mNum){/* if max number of characters are exceeeded */ $(autoId(ii)).val(''); } var setCaret = 0;/* start - determines the new caret position */ if (inLength < outLength){/* new caret position when a number or decimal character has been added */ setCaret = (outLength == io.aSign.length + 1 && io.pSign == 's') ? 1 : caretPos + (outLength - inLength); } if (inLength > outLength){ /* new caret position when a number(s) or decimal character(s) has been deleted */ if(selectLength === 0){ if((inLength - 2) == outLength){/* when two caracters one numeric and one thosand seperator have been deleted */ if(kdCode == 8){/* back space key pressed */ setCaret = (caretPos - 2); } else if(kdCode == 46){/* delete key pressed */ setCaret = caretPos; } else{ setCaret = (caretPos - 1); } } else{/* back space key pressed */ setCaret = (kdCode == 8) ? caretPos - 1 : caretPos; } } if(selectLength > 0 && selectLength < inLength){/* when multiple characters but not all are deleted */ setCaret = (outLength - (inLength - (caretPos + selectLength))); } if(selectLength == inLength){/* when multiple characters but not all are deleted */ setCaret = (outLength == io.aSign.length + 1 && io.pSign == 's') ? 1 : 1 + io.aSign.length; } } if (inLength == outLength){/* new caret position when a and equal aount of characters have been added as the amount deleted */ if(selectLength >= 0){ setCaret = caretPos + selectLength; } if(this.value.charAt(caretPos - 1) == io.aSep && kdCode == 8){/* moves caret to the left when trying to delete thousand separartor via the backspace key */ setCaret = (caretPos - 1); } else if(this.value.charAt(caretPos) == io.aSep && kdCode == 46){/* moves caret to the right when trying to delete thousand separartor via the delete key */ setCaret = (caretPos + 1); } }/* ends - determines the new caret position */ var iField = this;/* start - set caret position */ iField.focus(); if (document.selection) { var iRange = iField.createTextRange(); iRange.collapse(true); iRange.moveStart("character", setCaret); iRange.moveEnd("character", 0); iRange.select(); } else if (iField.selectionStart || iField.selectionStart == '0') { iField.selectionStart = setCaret; iField.selectionEnd = setCaret; }/* end - set caret position */ }).bind('change focusout', function(){/* start change - thanks to Javier P. corrected the inline onChange event added focusout version 1.55*/ if ($(autoId(ii)).val() !== ''){ autoCheck(iv, ii, io); } }).bind('paste', function(){setTimeout(function(){autoCheck(iv, ii, io);}, 0); });/* thanks to Josh of Digitalbush.com Opera does not fire paste event*/ }); }; function autoId(myid) {/* thanks to Anthony & Evan C */ myid = myid.replace(/\[/g, "\\[").replace(/\]/g, "\\]"); return '#' + myid.replace(/(:|\.)/g,'\\$1'); } function autoCount(str, start, end){/* private function that counts the numeric characters to the left and right of the decimal point */ var chr = ''; var numCount = 0; for (j = start; j < end; j++){ chr = str.charAt(j); if (chr >= '0' && chr <= '9'){ numCount++; } } return numCount; } function autoGroup(iv, io){/* private function that places the thousand separtor */ if (io.aSep !== ''){ var digitalGroup = ''; if (io.dGroup == 2){ digitalGroup = /(\d)((\d)(\d{2}?)+)$/; } else if (io.dGroup == 4){ digitalGroup = /(\d)((\d{4}?)+)$/; } else { digitalGroup = /(\d)((\d{3}?)+)$/; } for (k = 0; k < io.aSign.length; k++){/* clears the currency or other symbols and space */ iv = iv.replace(io.aSign.charAt(k), '').replace("\u00A0",''); } iv = iv.split(io.aSep).join('');/* removes the thousand sepparator */ var ivSplit = iv.split(io.aDec);/* splits the string at the decimal string */ var s = ivSplit[0];/* assigns the whole number to the a varibale (s) */ while(digitalGroup.test(s)){ s = s.replace(digitalGroup, '$1'+io.aSep+'$2');/* re-inserts the thousand sepparator via a regualer expression */ } if (io.mDec !== 0 && ivSplit.length > 1){ iv = s + io.aDec + ivSplit[1];/* joins the whole number with the deciaml value */ } else { iv = s;/* if whole numers only */ } if (iv.indexOf('-') !== -1 && io.aSign !== '' && io.pSign == 'p'){/* places the currency sign to the left (prefix) */ iv = iv.replace('-', ''); return '-' + io.aSign + iv; } else if (iv.indexOf('-') == -1 && io.aSign !== '' && io.pSign == 'p'){ return io.aSign + iv; } if (iv.indexOf('-') !== -1 && io.aSign !== '' && io.pSign == 's'){/* places the currency sign to the right (suffix) */ iv = iv.replace('-', ''); return '-'+ iv + io.aSign; } else if (iv.indexOf('-') == -1 && io.aSign !== '' && io.pSign == 's'){ return iv + io.aSign; } else { return iv; } } else { return iv; } } function autoRound(iv, mDec, mRound, aPad){/* private function for round the number - please note this handled as text - Javascript math function can return inaccurate values */ iv = (iv === '') ? '0' : iv += ''; /* value to string */ var ivRounded = ''; var i = 0; var nSign = ''; if (iv.charAt(0) == '-'){/* Checks if the iv (input Value)is a negative value */ nSign = (iv * 1 === 0) ? '' : '-';/* determines if the value is zero - if zero no negative sign */ iv = iv.replace('-', '');/* removes the negative sign will be added back later if required */ } if ((iv * 1) > 0){/* trims leading zero's if needed */ while (iv.substr(0,1) == '0' && iv.length > 1) { iv = iv.substr(1); } } var dPos = iv.lastIndexOf('.');/* decimal postion as an integer */ if (dPos === 0){/* prefix with a zero if the decimal point is the first character */ iv = '0' + iv; dPos = 1; } if (dPos == -1 || dPos == iv.length - 1){/* Has an integer been passed in? */ if (aPad && mDec > 0) { ivRounded = (dPos == -1) ? iv + '.' : iv; for(i = 0; i < mDec; i++){/* pads with zero */ ivRounded += '0'; } return nSign + ivRounded; } else { return nSign + iv; } } var cDec = (iv.length - 1) - dPos;/* checks decimal places to determine if rounding is required */ if (cDec == mDec){ return nSign + iv;/* If true return value no rounding required */ } if (cDec < mDec && aPad){/* Do we already have less than the number of decimal places we want? */ ivRounded = iv;/* If so, pad out with zeros */ for(i = cDec; i < mDec; i++){ ivRounded += '0'; } return nSign + ivRounded; } var rLength = dPos + mDec;/* rounded length of the string after rounding */ var tRound = iv.charAt(rLength + 1) * 1;/* test round */ var ivArray = [];/* new array*/ for(i = 0; i <= rLength; i++){/* populate ivArray with each digit in rLength */ ivArray[i] = iv.charAt(i); } var odd = (iv.charAt(rLength) == '.') ? (iv.charAt(rLength - 1) % 2) : (iv.charAt(rLength) % 2); if ((tRound > 4 && mRound === 'S') ||/* Round half up symetric */ (tRound > 4 && mRound === 'A' && nSign === '') ||/* Round half up asymetric positive values */ (tRound > 5 && mRound === 'A' && nSign == '-') ||/* Round half up asymetric negative values */ (tRound > 5 && mRound === 's') ||/* Round half down symetric */ (tRound > 5 && mRound === 'a' && nSign === '') ||/* Round half down asymetric positive values */ (tRound > 4 && mRound === 'a' && nSign == '-') ||/* Round half down asymetric negative values */ (tRound > 5 && mRound === 'B') ||/* Round half even "Banker's Rounding" */ (tRound == 5 && mRound === 'B' && odd == 1) ||/* Round half even "Banker's Rounding" */ (tRound > 0 && mRound === 'C' && nSign === '') ||/* Round to ceiling toward positive infinite */ (tRound > 0 && mRound === 'F' && nSign == '-') ||/* Round to floor toward negative inifinte */ (tRound > 0 && mRound === 'U')){/* round up away from zero */ for(i = (ivArray.length - 1); i >= 0; i--){/* Round up the last digit if required, and continue until no more 9's are found */ if (ivArray[i] == '.'){ continue; } ivArray[i]++; if (ivArray[i] < 10){/* if i does not equal 10 no more round up required */ break; } } } for (i=0; i <= rLength; i++){/* Reconstruct the string, converting any 10's to 0's */ if (ivArray[i] == '.' || ivArray[i] < 10 || i === 0){/* routine to reconstruct non '10' */ ivRounded += ivArray[i]; } else {/* converts 10's to 0 */ ivRounded += '0'; } } if (mDec === 0){/* If there are no decimal places, we don't need a decimal point */ ivRounded = ivRounded.replace('.', ''); } return nSign + ivRounded;/* return rounded value */ } function autoCheck(iv, ii, io){/* private function that change event and pasted values */ iv = iv.val(); if (iv.length > 100){/* maximum length of pasted value */ $(autoId(ii)).val(''); return; } var eNeg = ''; if (io.aNeg == '-'){/* escape the negative sign */ eNeg = '\\-'; } var reg = new RegExp('[^'+eNeg+io.aNum+io.aDec+']','gi');/* regular expreession constructor to delete any characters not allowed for the input field. */ var testPaste = iv.replace(reg,'');/* deletes all characters that are not permitted in this field */ if (testPaste.lastIndexOf('-') > 0 || testPaste.indexOf(io.aDec) != testPaste.lastIndexOf(io.aDec)){/* deletes input if the negitive sign is incorrectly placed or if the are multiple decimal characters */ testPaste = ''; } var rePaste = ''; var nNeg = 0; var nSign = ''; var i = 0; var s = testPaste.split('');/* split the sting into an array */ for (i=0; i<s.length; i++){/* for loop testing pasted value after non allowable characters have been deleted */ if (i === 0 && s[i] == '-'){/* allows negative symbol to be added if it is the first character */ nNeg = 1; nSign = '-'; continue; } if (s[i] == io.aDec && s.length -1 == i){/* if the last charter is a decimal point it is dropped */ break; } if (rePaste.length === 0 && s[i] == '0' && (s[i+1] >= 0 || s[i+1] <= 9)){/* controls leading zero */ continue; } else { rePaste = rePaste + s[i]; } } rePaste = nSign + rePaste; if (rePaste.indexOf(io.aDec) == -1 && rePaste.length > (io.mNum + nNeg)){/* checks to see if the maximum & minimum values have been exceeded when no decimal point is present */ rePaste = ''; } if (rePaste.indexOf(io.aDec) > (io.mNum + nNeg)){/* check to see if the maximum & minimum values have been exceeded when the decimal point is present */ rePaste = ''; } if (rePaste.indexOf(io.aDec) != -1 && (io.aDec != '.')){ rePaste = rePaste.replace(io.aDec, '.'); } rePaste = autoRound(rePaste, io.mDec, io.mRound, io.aPad);/* call round function */ if (io.aDec != '.'){ rePaste = rePaste.replace('.', io.aDec);/* replace the decimal point with the proper decimal separator */ } if (rePaste !== '' && io.aSep !== ''){ rePaste = autoGroup(rePaste, io);/* calls the group function adds digital grouping */ } $(autoId(ii)).val(rePaste); return false; } $.fn.autoNumeric.Strip = function(ii, options){/* public function that stripes the format and converts decimal seperator to a period */ var opts = $.extend({}, $.fn.autoNumeric.defaults, options); var io = $.metadata ? $.extend({}, opts, $(autoId(ii)).metadata()) : opts; io.mDec = isNaN(io.mDec * 1) ? $('#' + io.mDec).val() * 1 : io.mDec * 1;/* decimal places */ var iv = $(autoId(ii)).val(); iv = iv.replace(io.aSign, '').replace('\u00A0',''); var reg = new RegExp('[^'+'\\-'+io.aNum+io.aDec+']','gi');/* regular expreession constructor */ iv = iv.replace(reg,'');/* deletes all characters that are not permitted in this field */ var nSign = ''; if (iv.charAt(0) == '-'){/* Checks if the iv (input Value)is a negative value */ nSign = (iv * 1 === 0) ? '' : '-';/* determines if the value is zero - if zero no negative sign */ iv = iv.replace('-', '');/* removes the negative sign will be added back later if required */ } iv = iv.replace(io.aDec, '.'); if (iv * 1 > 0){ while (iv.substr(0,1) == '0' && iv.length > 1) { iv = iv.substr(1); } } iv = (iv.lastIndexOf('.') === 0) ? ('0' + iv) : iv; iv = (iv * 1 === 0) ? '0' : iv; return nSign + iv; }; $.fn.autoNumeric.Format = function(ii, iv, options){/* public function that recieves a numeric string and formats to the target input field */ iv += '';/* to string */ var opts = $.extend({}, $.fn.autoNumeric.defaults, options); var io = $.metadata ? $.extend({}, opts, $(autoId(ii)).metadata()) : opts; io.mDec = isNaN(io.mDec * 1) ? $('#' + io.mDec).val() * 1 : io.mDec * 1;/* decimal places */ iv = autoRound(iv, io.mDec, io.mRound, io.aPad); var nNeg = 0; if (iv.indexOf('-') != -1 && io.aNeg === ''){/* deletes negative symbol */ iv = ''; } else if (iv.indexOf('-') != -1 && io.aNeg == '-'){ nNeg = 1; } if (iv.indexOf('.') == -1 && iv.length > (io.mNum + nNeg)){/* check to see if the maximum & minimum values have been exceeded when no decimal point is present */ iv = ''; } else if (iv.indexOf('.') > (io.mNum + nNeg)){/* check to see if the maximum & minimum values have been exceeded when a decimal point is present */ iv = ''; } if (io.aDec != '.'){/* replaces the decimal point with the new sepatator */ iv = iv.replace('.', io.aDec); } return autoGroup(iv, io); }; $.fn.autoNumeric.defaults = {/* plugin defaults */ aNum: '0123456789',/* allowed numeric values */ aNeg: '',/* allowed negative sign / character */ aSep: '',/* allowed thousand separator character */ aDec: '.',/* allowed decimal separator character */ aSign: '',/* allowed currency symbol */ pSign: 'p',/* placement of currency sign prefix or suffix */ mNum: 9,/* max number of numerical characters to the left of the decimal */ mDec: 2,/* max number of decimal places */ dGroup: 3,/* digital grouping for the thousand separator used in Format */ mRound: 'S',/* method used for rounding */ aPad: true/* true= always Pad decimals with zeros, false=does not pad with zeros. If the value is 1000, mDec=2 and aPad=true, the output will be 1000.00, if aPad=false the output will be 1000 (no decimals added) Special Thanks to Jonas Johansson */ }; })(jQuery);