summaryrefslogtreecommitdiff
path: root/app/helpers
diff options
context:
space:
mode:
authorValery Sizov <valery@gitlab.com>2015-04-23 10:53:56 +0000
committerValery Sizov <valery@gitlab.com>2015-04-23 10:53:56 +0000
commit307b8c1c8d58c68018338cfae9c62a29080b6a5c (patch)
tree389e6ad7c2ad44dd711c0920399fdad1c51ae41b /app/helpers
parent08a484e2b179a0f4a75df3cda4d713dee6f82725 (diff)
parent1e5e09986763d2f7abed0fb2b271574fe8e31236 (diff)
downloadgitlab-ci-307b8c1c8d58c68018338cfae9c62a29080b6a5c.tar.gz
Merge branch 'duration' into 'master'
Fix duration visualisation https://dev.gitlab.org/gitlab/gitlab-ci/issues/174 https://github.com/gitlabhq/gitlab-ci/issues/565 See merge request !78
Diffstat (limited to 'app/helpers')
-rw-r--r--app/helpers/application_helper.rb21
1 files changed, 21 insertions, 0 deletions
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index 32d64fb..069005f 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -126,4 +126,25 @@ module ApplicationHelper
[namespace, controller.controller_name, controller.action_name].compact.join(":")
end
+
+ def duration_in_words(finished_at, started_at)
+ if finished_at && started_at
+ interval_in_seconds = finished_at.to_i - started_at.to_i
+ elsif started_at
+ interval_in_seconds = Time.now.to_i - started_at.to_i
+ end
+
+ time_interval_in_words(interval_in_seconds)
+ end
+
+ def time_interval_in_words(interval_in_seconds)
+ minutes = interval_in_seconds / 60
+ seconds = interval_in_seconds - minutes * 60
+
+ if minutes >= 1
+ "#{pluralize(minutes, "minute")} #{pluralize(seconds, "second")}"
+ else
+ "#{pluralize(seconds, "second")}"
+ end
+ end
end