JSFiddle - React, Tailwind, and code Playground
by leongaban
JavaScript
(function() { "use strict";
angular.module('tagDetailsFactory', [])
.factory('TagDetailsFactory', [
'$rootScope',
'ApiFactory',
'ScopeFactory',
function($rootScope,
ApiFactory,
ScopeFactory) {
// Init ScopeFactory:
// ------------------
var tagsHover = {};
var callbacks;
return {
saveTagDetails : saveTagDetails,
registerTagCallback : registerTagCallback,
};
////////////////////////////////////////////////////////////////////////
function saveTagDetails(ticker, tag) {
if (tag.percent != undefined) {
var conditional = tag.percent.toString().charAt(0);
tag.direction = returnDirection(conditional);
}
function floorFigure(figure, decimals) {
if (!decimals) decimals = 2;
var d = Math.pow(10, decimals);
return (parseInt(figure * d)/d).toFixed(decimals);
};
ApiFactory.getTagData(ticker, tag.term_id).then(function(data) {
var increase = 0;
var direction = tag.week_quantity > tag.previous_week_quantity ? 'positive' : 'negative';
// Algorithm to get percentage change:
increase = tag.week_quantity - tag.previous_week_quantity;
increase = increase / tag.previous_week_quantity * 100;
increase = floorFigure(increase, 2);
if (data.data.status === "Failure") {
tag.tickers = [];
} else {
tag.tickers = data.data.ticker_tag.tickers;
}
tag.tweet_percentage = increase;
// tagsHover = ScopeFactory.getScope('tagsHover');
// tagsHover.hoveringTag(tag);
registerTagCallback(tag, 'tagsHover');
});
...