It matches #[0-9]+ in commit messages. For example * Fix for #12 * Code review for #56 * Test for #15, Review on #54, Fix for #42 It only links to valid issues (existing and belonging to the current project) It does not add any link to the commit in the issue page, it only consists in parsing the commit message when displayed. This can be considere as a primary work for the issue #155 on gitlabhq/gitlabhq.
46 lines
1 KiB
Ruby
46 lines
1 KiB
Ruby
module CommitsHelper
|
|
def old_line_number(line, i)
|
|
|
|
end
|
|
|
|
def new_line_number(line, i)
|
|
|
|
end
|
|
|
|
def diff_line_class(line)
|
|
if line[0] == "+"
|
|
"new"
|
|
elsif line[0] == "-"
|
|
"old"
|
|
else
|
|
nil
|
|
end
|
|
end
|
|
|
|
def more_commits_link
|
|
offset = params[:offset] || 0
|
|
limit = params[:limit] || 100
|
|
link_to "More", project_commits_path(@project, :offset => offset.to_i + limit.to_i, :limit => limit),
|
|
:remote => true, :class => "lite_button vm", :style => "text-align:center; width:930px; ", :id => "more-commits-link"
|
|
end
|
|
|
|
def commit_msg_with_link_to_issues
|
|
out = ""
|
|
@commit.safe_message.split(/(#[0-9]+)/m).each do |m|
|
|
if m =~ /(#([0-9]+))/m
|
|
begin
|
|
issue = Issue.find($2)
|
|
raise Exception('Issue not belonging to current project, not creating link !') unless issue.project_id == @project.id
|
|
out+=link_to($1, project_issue_path(@project, $2))
|
|
rescue
|
|
out+=$1
|
|
end
|
|
else
|
|
out+= m
|
|
end
|
|
end
|
|
out
|
|
end
|
|
|
|
end
|