Skip to content

Instantly share code, notes, and snippets.

@gonelf
Last active October 30, 2019 17:16
Show Gist options
  • Save gonelf/8101650ae084d3e45627b96f4ea91b84 to your computer and use it in GitHub Desktop.
Save gonelf/8101650ae084d3e45627b96f4ea91b84 to your computer and use it in GitHub Desktop.
Tempermonkey, Jira - Original estimate sums
// ==UserScript==
// @name Jira - Original estimate sum (original)
// @namespace http://tampermonkey.net/
// @version 0.2
// @description See Original and Remaning Sums
// @author You
// @match http://bit-develop-01.brisa.pt/jira/issues/*
// @grant none
// ==/UserScript==
// @require http://code.jquery.com/jquery-3.4.1.min.js
function sumTimes(times) {
var weeks = 0, days = 0, hours = 0, minutes = 0;
$.each( times, function( ) {
var val = $(this).html();
var parts = val.split(", ");
$.each(parts, function() {
var time_parts = this.split(" ");
var time_val = parseInt(time_parts[0]);
switch(time_parts[1]) {
case "week":
case "weeks":
weeks += time_val;
break;
case "day":
case "days":
days += time_val;
break;
case "hour":
case "hours":
hours += time_val;
break;
case "minute":
case "minutes":
minutes += time_val;
break;
}
});
});
var final_original_sums = weeks+"w "+days+"d "+hours+"h "+minutes+"m"
days += (weeks*5)
days += Math.floor(hours/8);
var _hours = hours % 8;
_hours += Math.floor(minutes/60);
var final_times = days+"d "+_hours+"h "+(minutes % 60)+"m";
var final_hours = parseInt((days*8)+_hours+Math.floor(minutes/60))
var final_minutes = minutes%60
return [final_original_sums, final_times, final_hours, final_minutes]
}
(function() {
'use strict';
var times = $("body").find("td[class=timeoriginalestimate]");
var original_times = sumTimes(times);
var remaning_times = $("body").find("td[class=aggregatetimeestimate]");
var remaning_sums = sumTimes(remaning_times);
$("body").find("div[class=list-view]").children()[0].after("Original time: "+original_times[2]+"h "+original_times[3]+"m | Remaining time: "+remaning_sums[2]+"h "+remaning_sums[3]+"m");
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment