diff --git a/test/client/unit/specs/filters/floor.spec.js b/test/client/unit/specs/filters/floor.spec.js new file mode 100644 index 0000000000..0c1ac29a13 --- /dev/null +++ b/test/client/unit/specs/filters/floor.spec.js @@ -0,0 +1,8 @@ +import floorFilter from 'client/filters/floor'; + +describe('floor filter', () => { + it('can floor a decimal number', () => { + expect(floorFilter(4.567)).to.equal(4.56); + expect(floorFilter(4.562)).to.equal(4.56); + }); +}); \ No newline at end of file diff --git a/test/client/unit/specs/filters/round.spec.js b/test/client/unit/specs/filters/round.spec.js new file mode 100644 index 0000000000..591f647d9e --- /dev/null +++ b/test/client/unit/specs/filters/round.spec.js @@ -0,0 +1,8 @@ +import roundFilter from 'client/filters/round'; + +describe('round filter', () => { + it('can round a decimal number', () => { + expect(roundFilter(4.567)).to.equal(4.57); + expect(roundFilter(4.562)).to.equal(4.56); + }); +}); \ No newline at end of file diff --git a/website/client/components/appHeader.vue b/website/client/components/appHeader.vue index b0d7f40969..97fc354caa 100644 --- a/website/client/components/appHeader.vue +++ b/website/client/components/appHeader.vue @@ -100,12 +100,6 @@ export default { components: { Avatar, }, - filters: { - percent, - round (val) { - return Math.round(val * 100) / 100; - }, - }, methods: { percent, }, diff --git a/website/client/components/appMenu.vue b/website/client/components/appMenu.vue index eabfa91e93..0adfb9360a 100644 --- a/website/client/components/appMenu.vue +++ b/website/client/components/appMenu.vue @@ -32,7 +32,7 @@ span {{userGems}} .item.with-img.gp-icon img(src="~assets/header/png/gold@3x.png") - span {{Math.floor(user.stats.gp * 100) / 100}} + span {{user.stats.gp | floor}} a.item.with-img.notifications-dropdown img(src="~assets/header/png/notifications@3x.png") .ui.simple.dropdown.pointing diff --git a/website/client/filters/floor.js b/website/client/filters/floor.js new file mode 100644 index 0000000000..9833735f5f --- /dev/null +++ b/website/client/filters/floor.js @@ -0,0 +1,3 @@ +export default function floor (val) { + return Math.floor(val * 100) / 100; +} \ No newline at end of file diff --git a/website/client/filters/registerGlobals.js b/website/client/filters/registerGlobals.js new file mode 100644 index 0000000000..4580bbec85 --- /dev/null +++ b/website/client/filters/registerGlobals.js @@ -0,0 +1,6 @@ +import Vue from 'vue'; +import round from './round'; +import floor from './floor'; + +Vue.filter('round', round); +Vue.filter('floor', floor); diff --git a/website/client/filters/round.js b/website/client/filters/round.js new file mode 100644 index 0000000000..2fa5858670 --- /dev/null +++ b/website/client/filters/round.js @@ -0,0 +1,3 @@ +export default function round (val) { + return Math.round(val * 100) / 100; +} \ No newline at end of file diff --git a/website/client/main.js b/website/client/main.js index 1a43a4dd4a..797bd8a733 100644 --- a/website/client/main.js +++ b/website/client/main.js @@ -7,6 +7,7 @@ import VueResource from 'vue-resource'; import AppComponent from './app'; import router from './router'; import store from './store'; +import './filters/registerGlobals'; // TODO just for the beginning Vue.use(VueResource);