summaryrefslogtreecommitdiff
path: root/app/helpers/stat_anchors_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/helpers/stat_anchors_helper.rb')
-rw-r--r--app/helpers/stat_anchors_helper.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/app/helpers/stat_anchors_helper.rb b/app/helpers/stat_anchors_helper.rb
new file mode 100644
index 00000000000..76e58b45912
--- /dev/null
+++ b/app/helpers/stat_anchors_helper.rb
@@ -0,0 +1,24 @@
+# frozen_string_literal: true
+
+module StatAnchorsHelper
+ def stat_anchor_attrs(anchor)
+ {}.tap do |attrs|
+ attrs[:class] = %w(nav-link gl-display-flex gl-align-items-center) << extra_classes(anchor)
+ attrs[:itemprop] = anchor.itemprop if anchor.itemprop
+ end
+ end
+
+ private
+
+ def button_attribute(anchor)
+ "btn-#{anchor.class_modifier || 'missing'}"
+ end
+
+ def extra_classes(anchor)
+ if anchor.is_link
+ 'stat-link'
+ else
+ "btn #{button_attribute(anchor)}"
+ end
+ end
+end