diff options
author | Robert Speicher <rspeicher@gmail.com> | 2015-10-07 18:25:36 -0400 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2015-10-07 18:40:54 -0400 |
commit | e0f9d3a547e340d229f6164c917d19955a10b371 (patch) | |
tree | 98cc7c1e15c8c968684e82d2bda56be806c3cefc | |
parent | 72afcbcd37f35e02544290977c2c91ae37c12c01 (diff) | |
download | gitlab-ce-e0f9d3a547e340d229f6164c917d19955a10b371.tar.gz |
Update ReferenceFilter docs
[ci skip]
-rw-r--r-- | lib/gitlab/markdown/reference_filter.rb | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/lib/gitlab/markdown/reference_filter.rb b/lib/gitlab/markdown/reference_filter.rb index 8ad52479d3d..d334a891509 100644 --- a/lib/gitlab/markdown/reference_filter.rb +++ b/lib/gitlab/markdown/reference_filter.rb @@ -11,15 +11,12 @@ module Gitlab # Context options: # :project (required) - Current project, ignored if reference is cross-project. # :only_path - Generate path-only links. - # - # Results: - # :references - A Hash of references that were found and replaced. class ReferenceFilter < HTML::Pipeline::Filter def self.user_can_reference?(user, node, context) if node.has_attribute?('data-project') project_id = node.attr('data-project').to_i return true if project_id == context[:project].id - + project = Project.find(project_id) rescue nil Ability.abilities.allowed?(user, :read_project, project) else @@ -33,14 +30,16 @@ module Gitlab # Returns a data attribute String to attach to a reference link # - # id - Object ID - # type - Object type (default: :project) + # attributes - Hash, where the key becomes the data attribute name and the + # value is the data attribute value # # Examples: # - # data_attribute(project: 1) # => "data-reference-filter=\"SomeReferenceFilter\" data-project=\"1\"" - # data_attribute(user: 2) # => "data-reference-filter=\"SomeReferenceFilter\" data-user=\"2\"" - # data_attribute(group: 3) # => "data-reference-filter=\"SomeReferenceFilter\" data-group=\"3\"" + # data_attribute(project: 1, issue: 2) + # # => "data-reference-filter=\"Gitlab::Markdown::SomeReferenceFilter\" data-project=\"1\" data-issue=\"2\"" + # + # data_attribute(project: 3, merge_request: 4) + # # => "data-reference-filter=\"Gitlab::Markdown::SomeReferenceFilter\" data-project=\"3\" data-merge-request=\"4\"" # # Returns a String def data_attribute(attributes = {}) @@ -86,7 +85,7 @@ module Gitlab # Yields the current node's String contents. The result of the block will # replace the node's existing content and update the current document. # - # Returns the updated Nokogiri::XML::Document object. + # Returns the updated Nokogiri::HTML::DocumentFragment object. def replace_text_nodes_matching(pattern) return doc if project.nil? |