From 0aa2bd531e5d71cbfb74ae2a17a77b5dbb02dd7f Mon Sep 17 00:00:00 2001 From: James Marquez Date: Mon, 23 Jun 2014 17:39:56 +0800 Subject: [PATCH] fixed prize format issue --- .../js/app/challenge-details/controllers.js | 9 +++++++++ .../challenge-details/ng-challenge-detail-software.js | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/wp-content/themes/tcs-responsive/js/app/challenge-details/controllers.js b/wp-content/themes/tcs-responsive/js/app/challenge-details/controllers.js index c2bbf1f3..75ddea99 100644 --- a/wp-content/themes/tcs-responsive/js/app/challenge-details/controllers.js +++ b/wp-content/themes/tcs-responsive/js/app/challenge-details/controllers.js @@ -121,6 +121,15 @@ cdapp.controller('CDCtrl', ['$scope', 'ChallengeService', '$sce', function($scop }); chglo = challenge; + //Bugfix refactored-challenge-details-40: format currency values with comma delimiters + if (typeof challenge.reliabilityBonus === 'number') { + challenge.reliabilityBonus = challenge.reliabilityBonus.format(); + } + //loop over prizes and format number values + for (var i = 0; i < challenge.prize.length; i++) { + challenge.prize[i] = challenge.prize[i].format(); + } + $scope.challenge = challenge; $scope.reliabilityBonus = challenge.reliabilityBonus; $scope.siteURL = siteURL; diff --git a/wp-content/themes/tcs-responsive/js/app/challenge-details/ng-challenge-detail-software.js b/wp-content/themes/tcs-responsive/js/app/challenge-details/ng-challenge-detail-software.js index 193d00e4..b67800d8 100644 --- a/wp-content/themes/tcs-responsive/js/app/challenge-details/ng-challenge-detail-software.js +++ b/wp-content/themes/tcs-responsive/js/app/challenge-details/ng-challenge-detail-software.js @@ -562,3 +562,14 @@ app.tabNavinit = function() { } }) } +//This function adds number formatting to JS number prototype +/** + * Number.prototype.format(n, x) + * + * @param integer n: length of decimal + * @param integer x: length of sections + */ +Number.prototype.format = function(n, x) { + var re = '\\d(?=(\\d{' + (x || 3) + '})+' + (n > 0 ? '\\.' : '$') + ')'; + return this.toFixed(Math.max(0, ~~n)).replace(new RegExp(re, 'g'), '$&,'); +};