From 160cf81f7bea87ab92390be707679a362d1b4e03 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Mon, 29 Sep 2014 13:38:52 +0200 Subject: [PATCH 1/9] Redesign taskboard summary --- app/partials/views/components/sprint-summary.jade | 6 ------ app/styles/components/summary.scss | 2 +- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/app/partials/views/components/sprint-summary.jade b/app/partials/views/components/sprint-summary.jade index 55ecef1e..2b0708c3 100644 --- a/app/partials/views/components/sprint-summary.jade +++ b/app/partials/views/components/sprint-summary.jade @@ -11,18 +11,12 @@ div.summary.large-summary li span.number(ng-bind="stats.completedPointsSum|default:'--'") span.description completed
points - li - span.number(ng-bind="stats.remainingPointsSum|default:'--'") - span.description remaining
points ul li span.icon.icon-bulk span.number(ng-bind="stats.total_tasks|default:'--'") span.description created
tasks - li - span.number(ng-bind="stats.remainingTasks|default:'--'") - span.description open
tasks li span.number(ng-bind="stats.completed_tasks|default:'--'") span.description closed
tasks diff --git a/app/styles/components/summary.scss b/app/styles/components/summary.scss index 8f26a867..f442d330 100644 --- a/app/styles/components/summary.scss +++ b/app/styles/components/summary.scss @@ -53,7 +53,7 @@ margin-right: 10px; padding: 3px; position: relative; - width: 20%; + width: 10%; .current-progress { background: $fresh-taiga; height: 24px; From 893f4ede7d5b958fad96719565ad34f9b9029086 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Juli=C3=A1n?= Date: Wed, 1 Oct 2014 13:48:08 +0200 Subject: [PATCH 2/9] Added stats icon in taskboard --- app/coffee/modules/taskboard/main.coffee | 3 +- app/fonts/taiga.eot | Bin 7648 -> 7452 bytes app/fonts/taiga.svg | 12 ++++---- app/fonts/taiga.ttf | Bin 7492 -> 7296 bytes app/fonts/taiga.woff | Bin 5524 -> 5348 bytes .../views/components/large-summary.jade | 2 +- .../views/components/sprint-summary.jade | 2 +- app/styles/components/summary.scss | 26 ++++++++++++++---- app/styles/dependencies/typography.scss | 13 +++++---- 9 files changed, 37 insertions(+), 21 deletions(-) diff --git a/app/coffee/modules/taskboard/main.coffee b/app/coffee/modules/taskboard/main.coffee index ebe51465..f5e5d084 100644 --- a/app/coffee/modules/taskboard/main.coffee +++ b/app/coffee/modules/taskboard/main.coffee @@ -211,7 +211,8 @@ TaskboardDirective = ($rootscope) -> $el.on "click", ".toggle-analytics-visibility", (event) -> event.preventDefault() target = angular.element(event.currentTarget) - toggleText(target, ["Hide statistics", "Show statistics"]) # TODO: i18n + target.toggleClass('active'); + #toggleText(target, ["Hide statistics", "Show statistics"]) # TODO: i18n $rootscope.$broadcast("taskboard:graph:toggle-visibility") tableBodyDom = $el.find(".taskboard-table-body") diff --git a/app/fonts/taiga.eot b/app/fonts/taiga.eot index dea55db965bc05a3da4f52bfb8bb46f493cc8f3d..7a6a04e8ab5b69d75d63ef3b3c7304fdd4a6a8fe 100644 GIT binary patch delta 479 zcmY+9KWI~76vclxUz+#Q1Z!y%N&2Oz&p)*aYEnb71sz%)R0>f_5TSjfO*%Af;B`JYWf_rL_kjgduJ{m&(3_j_6np3%$BNdt?j(cK`0JVsJLFu z_feoH0lTt%qkMZ{=Q*fnkbJbX=q^aB&^EgzbMu9I4e}JYy1ZI)=R4(>pyq)qRrh)g zkGmk_-McGpb@9h9uL0>I$VzS1TkFa8Xc*c8))44ooknY}Z}K~_5Z!4NZ+-d8ekVlW z+g&nGk delta 677 zcmY*WKWGzi7=6F{^SeuOe{#7r*O304oo`JTp0U8grn4B?3rK&mJC|{&eL9K*|8-s`X0a!?$+}03!k9 zMy=9pbh}^y3joC0^37|vwqNc5>>I$CxxQ3cB<*>}j}oi(n0*D1Cjc%luU0DyyR{g= zt^>GKudFxF#65r<>-DZw>PtU&M%RclE!syUQT(#oq8AkzZLah_OIGGq?jRf(?`j4rl$>jO_y52Z2R{1q(I?kj5Y! zWROJ;E*alijr;R#hdg{b!%Zbx3_PUBNAeXV%mO4~Bn0ZYJqT2w zMq&>=z2|!SYP|SAjD%4*%^kQNU|7$Q(9Ss2oILPa^M>#7_klqyl(kQ9zwI5%-3LPe@5g2*wV zAn7^EQ!Yj&k*0?GDZ|PfOQlF$Gx|j%Z5zo%pRTGhA08R`!fI+ZGvFp|SynhbmUFVX lq!pGJzjNR_8TGeQ1v2Vu=CjZc3OI;i - - - - - + + + + + - + diff --git a/app/fonts/taiga.ttf b/app/fonts/taiga.ttf index 38083689d9d67336a0dd3f16167c404f548dff6c..fac9954163acaee1cf1798adfac2eaec7ca9b9a1 100644 GIT binary patch delta 482 zcmY+9O=}Zj6osEVZ_}AcVoPZgN%~sUsi3uBNor`d;HHfWEtObG5TPB~d@P!FAX!vg zG@C;9BZw}=A0S3VP|$^-3x&9fi@L45fPx4X66q*{2QKGuFBi`9_ELRz7Xgk@M{y&Y zU0(DCKes_|0Q&0uLY5W!LC*sxmu_B2Eq%HD8YB;_tXEvG?R-ju5e3PW+^W~>p+L_8 zR%!E2@!s(F=b)ZJ{BgP9Zb&QF2KIqWxm?(F`=$&9G6Ia3E47{QOZ5)q32+i^1bol97CLp>89&o}V?;!9 z%@1lJzN$!*l#g^?%~H$_TV`>@jrLom*o+*Q zw%uKnX5xWmM!H`mk$h-|t$ICyuSdU0#vjlVlJRHt3;QhRnBY8<{x5wc@{g_2`3)hLk4hR4RTVR-< zo?e`7kS`e^RREB@d}(SLOW;6C0+60tI6XG^`Q{ElDgc&N>Q3X+kB`d$l>u_6>NFb% z2Vg)70Ho^rz1!R0-|PeIJz&h&)|^$cdm{s24?wwATkAN&2xS0?0?60ut#;rkdk2tb z0IsiZt~kqos}X>;0W8*?b^}d31jyN5pbe+K_UljcK9EQPWTUa!Z23lfCXjpppyib# zz?1ZD<(77SA3@p+h7Z@e`r)Qs{W4Fo9>xg0MJg?)reN=Vl=B|tb=L%JcW0-2qexDezL zS5;9Gs3gjIp8L2E;j+XNrG8GCA}}roqhX_8GSa3IkM-%AruYKG!(Ulg%Vh_wxTz?r sphxnVTt1!($keTz_(?|HnM9F{x_1+={6i?>BuXf_<>bZS@t?Z-Kidm$ng9R* diff --git a/app/fonts/taiga.woff b/app/fonts/taiga.woff index eaf0682e61b9270d896c16f3878525c57eeae8cb..1c12ca6a96675416201f879fc279a202a3305d47 100644 GIT binary patch delta 5191 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 - a.button.button-green.toggle-analytics-visibility(href="", title="Show statistics") Show statistics + a.icon.icon-stats.toggle-analytics-visibility(href="", title="Show statistics") diff --git a/app/partials/views/components/sprint-summary.jade b/app/partials/views/components/sprint-summary.jade index 2b0708c3..8907d0e2 100644 --- a/app/partials/views/components/sprint-summary.jade +++ b/app/partials/views/components/sprint-summary.jade @@ -27,4 +27,4 @@ div.summary.large-summary span.number(ng-bind="stats.iocaine_doses|default:'--'") span.description iocaine
doses - a.button.button-green.toggle-analytics-visibility(href="", title="Show statistics") Show statistics + a.icon.icon-stats.toggle-analytics-visibility(href="", title="Show statistics") diff --git a/app/styles/components/summary.scss b/app/styles/components/summary.scss index f442d330..a00dd536 100644 --- a/app/styles/components/summary.scss +++ b/app/styles/components/summary.scss @@ -15,7 +15,7 @@ } .data { float: left; - margin-right: 1.5em; + margin-right: 1em; margin-top: 4px; .number { color: $fresh-taiga; @@ -53,7 +53,7 @@ margin-right: 10px; padding: 3px; position: relative; - width: 10%; + width: 15%; .current-progress { background: $fresh-taiga; height: 24px; @@ -67,7 +67,7 @@ border-right: 1px solid $whitish; margin-right: 1rem; vertical-align: top; - &:last-child { + &:last-of-type { border: 0; margin: 0; } @@ -75,8 +75,22 @@ .icon { @extend %xlarge; margin-right: .4rem; - } - .button { - color: $white; + &.icon-stats { + @include transition(color .3s linear); + color: $gray; + display: inline-block; + float: right; + &:hover { + @include transition(color .3s linear); + color: $fresh-taiga; + } + &.active { + color: $fresh-taiga; + &:hover { + @include transition(color .3s linear); + color: $gray; + } + } + } } } diff --git a/app/styles/dependencies/typography.scss b/app/styles/dependencies/typography.scss index df6a227c..8ea1f17b 100755 --- a/app/styles/dependencies/typography.scss +++ b/app/styles/dependencies/typography.scss @@ -232,19 +232,19 @@ a:visited { content: 'D'; } .icon-caret-up:before { - content: 'F'; + content: 'E'; } .icon-caret-down:before { - content: 'G'; + content: 'F'; } .icon-bulk:before { - content: 'H'; + content: 'G'; } .icon-idea:before { - content: 'I'; + content: 'H'; } .icon-spinner:before { - content: 'E'; + content: 'I'; } .icon-minimize:before { content: 'J'; @@ -252,6 +252,7 @@ a:visited { .icon-maximize:before { content: 'K'; } -.icon-megaphone:before { +.icon-stats:before { content: 'L'; } + From 948439e49fff49e341c1999a4c30d797a0b3993e Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 1 Oct 2014 12:48:18 +0200 Subject: [PATCH 3/9] Starting to work in new progress bar for backlog --- app/coffee/modules/backlog/main.coffee | 31 ++++++++++++++++++++++ app/partials/views/components/summary.jade | 8 +++--- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index 36719ed7..3092f27a 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -968,3 +968,34 @@ tgBacklogGraphDirective = -> module.directive("tgGmBacklogGraph", tgBacklogGraphDirective) + + +############################################################################# +## Backlog progress bar directive +############################################################################# + +TgBacklogProgressBarDirective = -> + template = _.template(""" +
+
+
+ + """) + + render = (el, percentage) -> + el.html(template({percentage: percentage})) + + link = ($scope, $el, $attrs) -> + element = angular.element($el) + + $scope.$watch $attrs.tgBacklogProgressBar, (percentage) -> + percentage = _.max([0 , percentage]) + percentage = _.min([100, percentage]) + render($el, percentage) + + $scope.$on "$destroy", -> + $el.off() + + return {link: link} + +module.directive("tgBacklogProgressBar", TgBacklogProgressBarDirective) diff --git a/app/partials/views/components/summary.jade b/app/partials/views/components/summary.jade index 3ad90218..f7cef2f4 100644 --- a/app/partials/views/components/summary.jade +++ b/app/partials/views/components/summary.jade @@ -1,5 +1,5 @@ div.summary - div.summary-progress-bar(tg-progress-bar="stats.completedPercentage") + div.summary-progress-bar(tg-backlog-progress-bar="stats.completedPercentage") div.current-progress(style="width: {{stats.completedPercentage}}") div.data span.number(tg-bind-html="stats.completedPercentage + '%'") @@ -10,9 +10,9 @@ div.summary li span.number(tg-bind-html="stats.defined_points") -- span.description defined
points - li - span.number(tg-bind-html="stats.assigned_points") -- - span.description assigned
points li span.number(tg-bind-html="stats.closed_points") -- span.description closed
points + li + span.number(tg-bind-html="stats.speed") -- + span.description points /
sprint From 536d41f58b434f963b8e10b30a28b7a0f9b06f53 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 1 Oct 2014 16:22:10 +0200 Subject: [PATCH 4/9] Finishing new backlog progress bar --- app/coffee/modules/backlog/main.coffee | 40 ++++++++++++++++------ app/partials/views/components/summary.jade | 4 +-- app/styles/components/summary.scss | 16 +++++++++ 3 files changed, 48 insertions(+), 12 deletions(-) diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index 3092f27a..2c622baa 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -91,6 +91,8 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F @scope.$on("sprintform:remove:success", @.loadUserstories) @scope.$on("usform:new:success", @.loadUserstories) @scope.$on("usform:edit:success", @.loadUserstories) + @scope.$on("usform:new:success", @.loadProjectStats) + @scope.$on("usform:bulk:success", @.loadProjectStats) @scope.$on("sprint:us:move", @.moveUs) @scope.$on("sprint:us:moved", @.loadSprints) @scope.$on("sprint:us:moved", @.loadProjectStats) @@ -976,22 +978,40 @@ module.directive("tgGmBacklogGraph", tgBacklogGraphDirective) TgBacklogProgressBarDirective = -> template = _.template(""" -
-
-
- +
+
+
""") - render = (el, percentage) -> - el.html(template({percentage: percentage})) + render = (el, projectPointsPercentaje, closedPointsPercentaje) -> + el.html(template({ + projectPointsPercentaje: projectPointsPercentaje, + closedPointsPercentaje:closedPointsPercentaje + })) + + adjustPercentaje = (percentage) -> + adjusted = _.max([0 , percentage]) + adjusted = _.min([100, adjusted]) + return Math.round(adjusted) link = ($scope, $el, $attrs) -> element = angular.element($el) - $scope.$watch $attrs.tgBacklogProgressBar, (percentage) -> - percentage = _.max([0 , percentage]) - percentage = _.min([100, percentage]) - render($el, percentage) + $scope.$watch $attrs.tgBacklogProgressBar, (stats) -> + if stats? + totalPoints = stats.total_points + definedPoints = stats.defined_points + closedPoints = stats.closed_points + if definedPoints > totalPoints + projectPointsPercentaje = totalPoints * 100 / definedPoints + closedPointsPercentaje = closedPoints * 100 / definedPoints + else + projectPointsPercentaje = 100 + closedPointsPercentaje = closedPoints * 100 / totalPoints + + projectPointsPercentaje = adjustPercentaje(projectPointsPercentaje) + closedPointsPercentaje = adjustPercentaje(closedPointsPercentaje) + render($el, projectPointsPercentaje, closedPointsPercentaje) $scope.$on "$destroy", -> $el.off() diff --git a/app/partials/views/components/summary.jade b/app/partials/views/components/summary.jade index f7cef2f4..b4c606d6 100644 --- a/app/partials/views/components/summary.jade +++ b/app/partials/views/components/summary.jade @@ -1,6 +1,6 @@ div.summary - div.summary-progress-bar(tg-backlog-progress-bar="stats.completedPercentage") - div.current-progress(style="width: {{stats.completedPercentage}}") + div.summary-progress-bar(tg-backlog-progress-bar="stats") + div.data span.number(tg-bind-html="stats.completedPercentage + '%'") ul diff --git a/app/styles/components/summary.scss b/app/styles/components/summary.scss index a00dd536..b6b556b2 100644 --- a/app/styles/components/summary.scss +++ b/app/styles/components/summary.scss @@ -59,6 +59,22 @@ height: 24px; width: calc(30% - 4px); } + .defined-points{ + width: 100%; + background: red; + height: 24px; + position: absolute; + } + .project-points-progress{ + background: gray; + height: 24px; + position: absolute; + } + .closed-points-progress{ + height: 24px; + position: absolute; + background: green; + } } From ae9a63812c7b2aa724df2a1915b5254a6e7359a2 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 1 Oct 2014 16:44:33 +0200 Subject: [PATCH 5/9] Adding open tasks info to taskboard --- app/coffee/modules/backlog/main.coffee | 2 +- app/coffee/modules/taskboard/main.coffee | 2 ++ app/partials/views/components/sprint-summary.jade | 4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index 2c622baa..682ff4d1 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -120,7 +120,7 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F @scope.stats.completedPercentage = Math.round(100 * stats.closed_points / stats.total_points) else @scope.stats.completedPercentage = 0 - + return stats refreshTagsColors: -> diff --git a/app/coffee/modules/taskboard/main.coffee b/app/coffee/modules/taskboard/main.coffee index f5e5d084..a5b98e69 100644 --- a/app/coffee/modules/taskboard/main.coffee +++ b/app/coffee/modules/taskboard/main.coffee @@ -117,6 +117,8 @@ class TaskboardController extends mixOf(taiga.Controller, taiga.PageMixin) @scope.stats.completedPercentage = Math.round(100 * stats.completedPointsSum / stats.totalPointsSum) else @scope.stats.completedPercentage = 0 + + @scope.stats.openTasks = stats.total_tasks - stats.completed_tasks return stats refreshTagsColors: -> diff --git a/app/partials/views/components/sprint-summary.jade b/app/partials/views/components/sprint-summary.jade index 8907d0e2..71c4e124 100644 --- a/app/partials/views/components/sprint-summary.jade +++ b/app/partials/views/components/sprint-summary.jade @@ -15,8 +15,8 @@ div.summary.large-summary ul li span.icon.icon-bulk - span.number(ng-bind="stats.total_tasks|default:'--'") - span.description created
tasks + span.number(ng-bind="stats.openTasks|default:'--'") + span.description open
tasks li span.number(ng-bind="stats.completed_tasks|default:'--'") span.description closed
tasks From 684f06686341c57d3f510fe0e9f019fb84ff09c1 Mon Sep 17 00:00:00 2001 From: Alejandro Alonso Date: Wed, 1 Oct 2014 17:06:22 +0200 Subject: [PATCH 6/9] Adding round to speed --- app/partials/views/components/summary.jade | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/partials/views/components/summary.jade b/app/partials/views/components/summary.jade index b4c606d6..f8031e8e 100644 --- a/app/partials/views/components/summary.jade +++ b/app/partials/views/components/summary.jade @@ -14,5 +14,5 @@ div.summary span.number(tg-bind-html="stats.closed_points") -- span.description closed
points li - span.number(tg-bind-html="stats.speed") -- + span.number(tg-bind-html="stats.speed | number:0") -- span.description points /
sprint From 3e2bbf24b26b5247a5228d4217029672004daed6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Juli=C3=A1n?= Date: Thu, 2 Oct 2014 02:29:24 +0200 Subject: [PATCH 7/9] Improved graph in summary page with some styling and titles --- app/coffee/modules/backlog/main.coffee | 8 +++---- app/styles/components/summary.scss | 29 +++++++++++--------------- 2 files changed, 16 insertions(+), 21 deletions(-) diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index 682ff4d1..cfdc518d 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -120,7 +120,7 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F @scope.stats.completedPercentage = Math.round(100 * stats.closed_points / stats.total_points) else @scope.stats.completedPercentage = 0 - + return stats refreshTagsColors: -> @@ -978,9 +978,9 @@ module.directive("tgGmBacklogGraph", tgBacklogGraphDirective) TgBacklogProgressBarDirective = -> template = _.template(""" -
-
-
+
+
+
""") render = (el, projectPointsPercentaje, closedPointsPercentaje) -> diff --git a/app/styles/components/summary.scss b/app/styles/components/summary.scss index b6b556b2..df9588eb 100644 --- a/app/styles/components/summary.scss +++ b/app/styles/components/summary.scss @@ -54,27 +54,22 @@ padding: 3px; position: relative; width: 15%; - .current-progress { + .defined-points { + background: $red-light; + height: 24px; + position: absolute; + width: calc(100% - 6px); + } + .project-points-progress { + background: $white; + height: 24px; + position: absolute; + } + .closed-points-progress { background: $fresh-taiga; height: 24px; - width: calc(30% - 4px); - } - .defined-points{ - width: 100%; - background: red; - height: 24px; position: absolute; } - .project-points-progress{ - background: gray; - height: 24px; - position: absolute; - } - .closed-points-progress{ - height: 24px; - position: absolute; - background: green; - } } From a8deb6876e2c0a05a52291e57ce0689581448b9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Juli=C3=A1n?= Date: Thu, 2 Oct 2014 13:17:40 +0200 Subject: [PATCH 8/9] Fixed bar limits to meet boundaries of the bar --- app/coffee/modules/backlog/main.coffee | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/coffee/modules/backlog/main.coffee b/app/coffee/modules/backlog/main.coffee index cfdc518d..69beb617 100644 --- a/app/coffee/modules/backlog/main.coffee +++ b/app/coffee/modules/backlog/main.coffee @@ -1009,8 +1009,8 @@ TgBacklogProgressBarDirective = -> projectPointsPercentaje = 100 closedPointsPercentaje = closedPoints * 100 / totalPoints - projectPointsPercentaje = adjustPercentaje(projectPointsPercentaje) - closedPointsPercentaje = adjustPercentaje(closedPointsPercentaje) + projectPointsPercentaje = adjustPercentaje(projectPointsPercentaje - 3) + closedPointsPercentaje = adjustPercentaje(closedPointsPercentaje - 3) render($el, projectPointsPercentaje, closedPointsPercentaje) $scope.$on "$destroy", -> From e4b68ff3f4ce3e47bd838d2b043363ab508faaa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Xavier=20Juli=C3=A1n?= Date: Thu, 2 Oct 2014 13:29:08 +0200 Subject: [PATCH 9/9] Broken bar in taskboard because of previous commit :sweat: --- app/styles/components/summary.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/styles/components/summary.scss b/app/styles/components/summary.scss index df9588eb..ded6fa1e 100644 --- a/app/styles/components/summary.scss +++ b/app/styles/components/summary.scss @@ -54,6 +54,10 @@ padding: 3px; position: relative; width: 15%; + .current-progress { + background: $fresh-taiga; + height: 24px; + } .defined-points { background: $red-light; height: 24px;