472 lines
No EOL
20 KiB
HTML
472 lines
No EOL
20 KiB
HTML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
<head>
|
|
<title>CommitDecorator</title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
<link rel="stylesheet" href="../css/reset.css" type="text/css" media="screen" />
|
|
<link rel="stylesheet" href="../css/main.css" type="text/css" media="screen" />
|
|
<link rel="stylesheet" href="../css/github.css" type="text/css" media="screen" />
|
|
<script src="../js/jquery-1.3.2.min.js" type="text/javascript" charset="utf-8"></script>
|
|
<script src="../js/jquery-effect.js" type="text/javascript" charset="utf-8"></script>
|
|
<script src="../js/main.js" type="text/javascript" charset="utf-8"></script>
|
|
<script src="../js/highlight.pack.js" type="text/javascript" charset="utf-8"></script>
|
|
|
|
</head>
|
|
|
|
<body>
|
|
<div class="banner">
|
|
|
|
<h1>
|
|
<span class="type">Class</span>
|
|
CommitDecorator
|
|
|
|
<span class="parent"><
|
|
|
|
<a href="ApplicationDecorator.html">ApplicationDecorator</a>
|
|
|
|
</span>
|
|
|
|
</h1>
|
|
<ul class="files">
|
|
|
|
<li><a href="../files/app/decorators/commit_decorator_rb.html">app/decorators/commit_decorator.rb</a></li>
|
|
|
|
</ul>
|
|
</div>
|
|
<div id="bodyContent">
|
|
<div id="content">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Method ref -->
|
|
<div class="sectiontitle">Methods</div>
|
|
<dl class="methods">
|
|
|
|
<dt>A</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-author_link">author_link</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>C</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-committer_link">committer_link</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>D</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-description">description</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>L</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-link_title">link_title</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>N</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-no_commit_message">no_commit_message</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>P</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-person_link">person_link</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
<dt>T</dt>
|
|
<dd>
|
|
<ul>
|
|
|
|
|
|
<li>
|
|
<a href="#method-i-title">title</a>
|
|
</li>
|
|
|
|
</ul>
|
|
</dd>
|
|
|
|
</dl>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Methods -->
|
|
|
|
<div class="sectiontitle">Instance Public methods</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-author_link">
|
|
|
|
<b>author_link</b>(options = {})
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-author_link" name="method-i-author_link" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Returns a link to the commit author. If the author has a matching user and
|
|
is a member of the current @project it will link to the team member page.
|
|
Otherwise it will link to the author email as specified in the commit.</p>
|
|
|
|
<p>options:</p>
|
|
|
|
<pre>avatar: true will prepend the avatar image
|
|
size: size of the avatar image in px</pre>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-author_link_source')" id="l_method-i-author_link_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-author_link_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 52</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">author_link</span>(<span class="ruby-identifier">options</span> = {})
|
|
<span class="ruby-identifier">person_link</span>(<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span> <span class="ruby-identifier">source</span><span class="ruby-operator">:</span> <span class="ruby-value">:author</span>)
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-committer_link">
|
|
|
|
<b>committer_link</b>(options = {})
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-committer_link" name="method-i-committer_link" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Just like <a
|
|
href="CommitDecorator.html#method-i-author_link">author_link</a> but for
|
|
the committer.</p>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-committer_link_source')" id="l_method-i-committer_link_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-committer_link_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 57</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">committer_link</span>(<span class="ruby-identifier">options</span> = {})
|
|
<span class="ruby-identifier">person_link</span>(<span class="ruby-identifier">options</span>.<span class="ruby-identifier">merge</span> <span class="ruby-identifier">source</span><span class="ruby-operator">:</span> <span class="ruby-value">:committer</span>)
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-description">
|
|
|
|
<b>description</b>()
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-description" name="method-i-description" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Returns the commits description</p>
|
|
|
|
<p>cut off, ellipses (`&hellp;`) are prepended to the commit message.</p>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-description_source')" id="l_method-i-description_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-description_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 34</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">description</span>
|
|
<span class="ruby-identifier">description</span> = <span class="ruby-identifier">safe_message</span>
|
|
|
|
<span class="ruby-identifier">title_end</span> = <span class="ruby-identifier">description</span>.<span class="ruby-identifier">index</span>(<span class="ruby-regexp">%r\n/</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-operator">!</span><span class="ruby-identifier">title_end</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">description</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-number">80</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">title_end</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">title_end</span> <span class="ruby-operator">></span> <span class="ruby-number">80</span>)
|
|
<span class="ruby-string">"&hellip;"</span>.<span class="ruby-identifier">html_safe</span> <span class="ruby-operator"><<</span> <span class="ruby-identifier">description</span>[<span class="ruby-number">70</span><span class="ruby-operator">..</span><span class="ruby-number">-1</span>]
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">description</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">%r\n/</span>, <span class="ruby-number">2</span>)[<span class="ruby-number">1</span>].<span class="ruby-identifier">try</span>(<span class="ruby-value">:chomp</span>)
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-link_title">
|
|
|
|
<b>link_title</b>()
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-link_title" name="method-i-link_title" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Returns a string describing the commit for use in a link title</p>
|
|
|
|
<p>Example</p>
|
|
|
|
<pre>"Commit: Alex Denisov - Project git clone panel"</pre>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-link_title_source')" id="l_method-i-link_title_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-link_title_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 9</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">link_title</span>
|
|
<span class="ruby-node">"Commit: #{author_name} - #{title}"</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-title">
|
|
|
|
<b>title</b>()
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-title" name="method-i-title" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Returns the commits title.</p>
|
|
|
|
<p>Usually, the commit title is the first line of the commit message. In case
|
|
this first line is longer than 80 characters, it is cut off after 70
|
|
characters and ellipses (`&hellp;`) are appended.</p>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-title_source')" id="l_method-i-title_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-title_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 18</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">title</span>
|
|
<span class="ruby-identifier">title</span> = <span class="ruby-identifier">safe_message</span>
|
|
|
|
<span class="ruby-keyword">return</span> <span class="ruby-identifier">no_commit_message</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">title</span>.<span class="ruby-identifier">blank?</span>
|
|
|
|
<span class="ruby-identifier">title_end</span> = <span class="ruby-identifier">title</span>.<span class="ruby-identifier">index</span>(<span class="ruby-regexp">%r\n/</span>)
|
|
<span class="ruby-keyword">if</span> (<span class="ruby-operator">!</span><span class="ruby-identifier">title_end</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">title</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-number">80</span>) <span class="ruby-operator">||</span> (<span class="ruby-identifier">title_end</span> <span class="ruby-operator">&&</span> <span class="ruby-identifier">title_end</span> <span class="ruby-operator">></span> <span class="ruby-number">80</span>)
|
|
<span class="ruby-identifier">title</span>[<span class="ruby-number">0</span><span class="ruby-operator">..</span><span class="ruby-number">69</span>] <span class="ruby-operator"><<</span> <span class="ruby-string">"&hellip;"</span>.<span class="ruby-identifier">html_safe</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">title</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">%r\n/</span>, <span class="ruby-number">2</span>).<span class="ruby-identifier">first</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="sectiontitle">Instance Protected methods</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-no_commit_message">
|
|
|
|
<b>no_commit_message</b>()
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-no_commit_message" name="method-i-no_commit_message" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-no_commit_message_source')" id="l_method-i-no_commit_message_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-no_commit_message_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 63</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">no_commit_message</span>
|
|
<span class="ruby-string">"--no commit message"</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="method">
|
|
<div class="title method-title" id="method-i-person_link">
|
|
|
|
<b>person_link</b>(options = {})
|
|
|
|
<a href="../classes/CommitDecorator.html#method-i-person_link" name="method-i-person_link" class="permalink">Link</a>
|
|
</div>
|
|
|
|
|
|
<div class="description">
|
|
<p>Private: Returns a link to a person. If the person has a matching user and
|
|
is a member of the current @project it will link to the team member page.
|
|
Otherwise it will link to the person email as specified in the commit.</p>
|
|
|
|
<p>options:</p>
|
|
|
|
<pre>source: one of :author or :committer
|
|
avatar: true will prepend the avatar image
|
|
size: size of the avatar image in px</pre>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="sourcecode">
|
|
|
|
<p class="source-link">
|
|
Source:
|
|
<a href="javascript:toggleSource('method-i-person_link_source')" id="l_method-i-person_link_source">show</a>
|
|
|
|
</p>
|
|
<div id="method-i-person_link_source" class="dyn-source">
|
|
<pre><span class="ruby-comment"># File app/decorators/commit_decorator.rb, line 75</span>
|
|
<span class="ruby-keyword">def</span> <span class="ruby-keyword ruby-title">person_link</span>(<span class="ruby-identifier">options</span> = {})
|
|
<span class="ruby-identifier">source_name</span> = <span class="ruby-identifier">send</span> <span class="ruby-node">"#{options[:source]}_name"</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-identifier">source_email</span> = <span class="ruby-identifier">send</span> <span class="ruby-node">"#{options[:source]}_email"</span>.<span class="ruby-identifier">to_sym</span>
|
|
<span class="ruby-identifier">text</span> = <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:avatar</span>]
|
|
<span class="ruby-identifier">avatar</span> = <span class="ruby-identifier">h</span>.<span class="ruby-identifier">image_tag</span> <span class="ruby-identifier">h</span>.<span class="ruby-identifier">gravatar_icon</span>(<span class="ruby-identifier">source_email</span>, <span class="ruby-identifier">options</span>[<span class="ruby-value">:size</span>]), <span class="ruby-keyword">class</span><span class="ruby-operator">:</span> <span class="ruby-node">"avatar #{"s#{options[:size]}" if options[:size]}"</span>, <span class="ruby-keyword ruby-title">width</span><span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:size</span>], <span class="ruby-identifier">alt</span><span class="ruby-operator">:</span> <span class="ruby-string">""</span>
|
|
<span class="ruby-node">%Q{#{avatar} <span class="commit-#{options[:source]}-name">#{source_name}</span>}</span>
|
|
<span class="ruby-keyword">else</span>
|
|
<span class="ruby-identifier">source_name</span>
|
|
<span class="ruby-keyword">end</span>
|
|
<span class="ruby-identifier">team_member</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">try</span>(<span class="ruby-value">:team_member_by_name_or_email</span>, <span class="ruby-identifier">source_name</span>, <span class="ruby-identifier">source_email</span>)
|
|
|
|
<span class="ruby-keyword">if</span> <span class="ruby-identifier">team_member</span>.<span class="ruby-identifier">nil?</span>
|
|
<span class="ruby-identifier">h</span>.<span class="ruby-identifier">mail_to</span> <span class="ruby-identifier">source_email</span>, <span class="ruby-identifier">text</span>.<span class="ruby-identifier">html_safe</span>, <span class="ruby-keyword">class</span><span class="ruby-operator">:</span> <span class="ruby-node">"commit-#{options[:source]}-link"</span>
|
|
<span class="ruby-keyword ruby-title">else</span>
|
|
<span class="ruby-identifier">h</span>.<span class="ruby-identifier">link_to</span> <span class="ruby-identifier">text</span>, <span class="ruby-identifier">h</span>.<span class="ruby-identifier">project_team_member_path</span>(<span class="ruby-ivar">@project</span>, <span class="ruby-identifier">team_member</span>), <span class="ruby-keyword">class</span><span class="ruby-operator">:</span> <span class="ruby-node">"commit-#{options[:source]}-link"</span>
|
|
<span class="ruby-keyword ruby-title">end</span>
|
|
<span class="ruby-keyword">end</span></pre>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
</body>
|
|
</html> |