mirror of
https://github.com/taobataoma/meanTorrent.git
synced 2026-03-04 11:11:05 +01:00
feat(users): add scoreLevelService to get user score curr/next/prev level and value
This commit is contained in:
30
modules/users/client/services/scoreLevel.client.service.js
Normal file
30
modules/users/client/services/scoreLevel.client.service.js
Normal file
@@ -0,0 +1,30 @@
|
||||
(function () {
|
||||
'use strict';
|
||||
|
||||
angular
|
||||
.module('users.services')
|
||||
.factory('ScoreLevelService', ScoreLevelService);
|
||||
|
||||
ScoreLevelService.$inject = ['$window'];
|
||||
|
||||
function ScoreLevelService($window) {
|
||||
return {
|
||||
getScoreLevelJson: function (score) {
|
||||
var levelJson = {};
|
||||
var l = Math.floor(Math.sqrt(score / 500));
|
||||
levelJson.score = score;
|
||||
|
||||
levelJson.prevLevel = (l - 1) <= 0 ? 0 : l - 1;
|
||||
levelJson.currLevel = l;
|
||||
levelJson.nextLevel = l + 1;
|
||||
|
||||
levelJson.prevLevelValue = levelJson.prevLevel * levelJson.prevLevel * 500;
|
||||
levelJson.currLevelValue = levelJson.currLevel * levelJson.currLevel * 500;
|
||||
levelJson.nextLevelValue = levelJson.nextLevel * levelJson.nextLevel * 500;
|
||||
levelJson.currPercent = (score - levelJson.currLevelValue) / (levelJson.nextLevelValue - levelJson.currLevelValue) * 100;
|
||||
|
||||
return levelJson;
|
||||
}
|
||||
};
|
||||
}
|
||||
}());
|
||||
Reference in New Issue
Block a user