summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/helpers/gitlab_routing_helper.rb4
-rw-r--r--lib/gitlab/routing.rb13
2 files changed, 13 insertions, 4 deletions
diff --git a/app/helpers/gitlab_routing_helper.rb b/app/helpers/gitlab_routing_helper.rb
index 2e36d0fdb5a..0517a699ae0 100644
--- a/app/helpers/gitlab_routing_helper.rb
+++ b/app/helpers/gitlab_routing_helper.rb
@@ -2,6 +2,10 @@
module GitlabRoutingHelper
extend ActiveSupport::Concern
+ included do
+ Gitlab::Routing.includes_helpers(self)
+ end
+
# Project
def project_tree_path(project, ref = nil, *args)
namespace_project_tree_path(project.namespace, project, ref || @ref || project.repository.root_ref, *args) # rubocop:disable Cop/ProjectPathHelper
diff --git a/lib/gitlab/routing.rb b/lib/gitlab/routing.rb
index ac1e864433b..e57890f1143 100644
--- a/lib/gitlab/routing.rb
+++ b/lib/gitlab/routing.rb
@@ -6,21 +6,26 @@ module Gitlab
self._includers = []
included do
- Gitlab::Routing._includers << self
+ Gitlab::Routing.includes_helpers(self)
+
include Gitlab::Routing.url_helpers
end
+ def self.includes_helpers(klass)
+ self._includers << klass
+ end
+
def self.add_helpers(mod)
url_helpers.include mod
url_helpers.extend mod
+ GitlabRoutingHelper.include mod
+ GitlabRoutingHelper.extend mod
+
app_url_helpers = Gitlab::Application.routes.named_routes.url_helpers_module
app_url_helpers.include mod
app_url_helpers.extend mod
- GitlabRoutingHelper.include mod
- GitlabRoutingHelper.extend mod
-
_includers.each do |klass|
klass.include mod
end