links.size > 1 ? l(:label_display_per_page, links.join(', ')) : nil
end
- def set_html_title(text)
- @html_header_title = text
- end
-
- def html_title
- title = []
- title << @project.name if @project
- title << @html_header_title
- title << Setting.app_title
- title.compact.join(' - ')
+ def html_title(*args)
+ if args.empty?
+ title = []
+ title << @project.name if @project
+ title += @html_title if @html_title
+ title << Setting.app_title
+ title.compact.join(' - ')
+ else
+ @html_title ||= []
+ @html_title += args
+ end
end
ACCESSKEYS = {:edit => 'e',
def with_leading_slash(path)
path ||= ''
- path.starts_with?("/") ? "/#{path}" : path
+ path.starts_with?('/') ? path : "/#{path}"
end
def subversion_field_tags(form, repository)
<%= link_to l(:label_information_plural), :controller => 'admin', :action => 'info' %>
</p>
-<% set_html_title l(:label_administration) -%>
+<% html_title(l(:label_administration)) -%>
</table>
<% end %>
-<% set_html_title(l(:label_information_plural)) -%>
+<% html_title(l(:label_information_plural)) -%>
<%= submit_tag l(:button_save) %>
<% end %>
-<% set_html_title(l(:field_mail_notification)) -%>
+<% html_title(l(:field_mail_notification)) -%>
<p class="pagination"><%= pagination_links_full @project_pages, @project_count %></p>
-<% set_html_title l(:label_project_plural) -%>
+<% html_title(l(:label_project_plural)) -%>
<p><%= l(:notice_not_authorized) %></p>
<p><a href="javascript:history.back()">Back</a></p>
-<% set_html_title '403' %>
+<% html_title '403' %>
<p><%= l(:notice_file_not_found) %></p>
<p><a href="javascript:history.back()">Back</a></p>
-<% set_html_title '404' %>
+<% html_title '404' %>
<%= javascript_tag "showTab('#{@tab}');" %>
-<% set_html_title(l(:label_custom_field_plural)) -%>
+<% html_title(l(:label_custom_field_plural)) -%>
<% end %>
<% end %>
-<% set_html_title l(:label_document_plural) -%>
+<% html_title(l(:label_document_plural)) -%>
<% end %>
<% end %>
-<% set_html_title h(@document.title) -%>
+<% html_title @document.title -%>
<p><%= link_to l(:label_enumeration_new), { :action => 'new', :opt => option } %></p>
<% end %>
-<% set_html_title(l(:label_enumerations)) -%>
+<% html_title(l(:label_enumerations)) -%>
<p class="pagination"><%= pagination_links_full @issue_status_pages %></p>
-<% set_html_title(l(:label_issue_status_plural)) -%>
+<% html_title(l(:label_issue_status_plural)) -%>
<% if @query.new_record? %>
<h2><%=l(:label_issue_plural)%></h2>
- <% set_html_title l(:label_issue_plural) %>
+ <% html_title(l(:label_issue_plural)) %>
<% form_tag({ :controller => 'queries', :action => 'new' }, :id => 'query_form') do %>
<%= hidden_field_tag('project_id', @project.id) if @project %>
<% end %>
</div>
- <h2><%= @query.name %></h2>
+ <h2><%=h @query.name %></h2>
<div id="query_form"></div>
- <% set_html_title @query.name %>
+ <% html_title @query.name %>
<% end %>
<%= error_messages_for 'query' %>
<% if @query.valid? %>
</div>
-<% set_html_title "#{@issue.tracker.name} ##{@issue.id}: #{@issue.subject}" %>
+<% html_title "#{@issue.tracker.name} ##{@issue.id}: #{@issue.subject}" %>
<% content_for :sidebar do %>
<%= render :partial => 'issues/sidebar' %>
<%= render :partial => 'sidebar' %>
<% end %>
-<% set_html_title l(:label_my_account) -%>
+<% html_title(l(:label_my_account)) -%>
<div id="context-menu" style="display: none;"></div>
<%= javascript_tag 'new ContextMenu({})' %>
-<% set_html_title l(:label_my_page) -%>
+<% html_title(l(:label_my_page)) -%>
<%= auto_discovery_link_tag(:atom, params.merge({:format => 'atom', :page => nil, :key => User.current.rss_key})) %>
<% end %>
-<% set_html_title l(:label_news_plural) -%>
+<% html_title(l(:label_news_plural)) -%>
<% end %>
<% end %>
-<% set_html_title(h(@news.title)) -%>
+<% html_title @news.title -%>
<% end %>
<% end %>
-<% set_html_title l(:label_activity) -%>
+<% html_title(l(:label_activity)) -%>
<% end %>
<% end %>
-<% set_html_title l(:label_calendar) -%>
+<% html_title(l(:label_calendar)) -%>
<% end %>
<% end %>
-<% set_html_title l(:label_gantt) -%>
+<% html_title(l(:label_gantt)) -%>
</div>
<% end %>
-<% set_html_title l(:label_project_plural) -%>
+<% html_title(l(:label_project_plural)) -%>
</tbody>
</table>
-<% set_html_title l(:label_attachment_plural) -%>
+<% html_title(l(:label_attachment_plural)) -%>
<% end %>
<% end %>
-<% set_html_title l(:label_roadmap) %>
+<% html_title(l(:label_roadmap)) %>
<%= tab = params[:tab] ? h(params[:tab]) : project_settings_tabs.first[:name]
javascript_tag "showTab('#{tab}');" %>
-<% set_html_title l(:label_settings) -%>
+<% html_title(l(:label_settings)) -%>
<%= auto_discovery_link_tag(:atom, {:action => 'activity', :id => @project, :format => 'atom', :key => User.current.rss_key}) %>
<% end %>
-<% set_html_title l(:label_overview) -%>
+<% html_title(l(:label_overview)) -%>
-<table class="list" id="browser">
+<table class="list entries" id="browser">
<thead>
<tr id="root">
<th><%= l(:field_name) %></th>
<th><%= l(:field_filesize) %></th>
<th><%= l(:label_revision) %></th>
-<th><%= l(:label_date) %></th>
+<th><%= l(:label_age) %></th>
<th><%= l(:field_author) %></th>
<th><%= l(:field_comments) %></th>
</tr>
<% @entries.each do |entry| %>
<% tr_id = Digest::MD5.hexdigest(entry.path)
depth = params[:depth].to_i %>
-<tr id="<%= tr_id %>" class="<%= params[:parent_id] %>">
-<td>
+<tr id="<%= tr_id %>" class="<%= params[:parent_id] %> entry">
+<td class="filename">
<%= if entry.is_dir?
link_to_remote h(entry.name),
{:url => {:action => 'browse', :id => @project, :path => entry.path, :rev => @rev, :depth => (depth + 1), :parent_id => tr_id},
:style => "margin-left: #{18 * depth}px;"
end %>
</td>
-<td align="right"><%= (entry.size ? number_to_human_size(entry.size) : "?") unless entry.is_dir? %></td>
-<td align="right"><%= link_to(entry.lastrev.name, :action => 'revision', :id => @project, :rev => entry.lastrev.identifier) if entry.lastrev && entry.lastrev.identifier %></td>
-<td align="center"><%= format_time(entry.lastrev.time) if entry.lastrev %></td>
-<td align="center"><em><%=h(entry.lastrev.author) if entry.lastrev %></em></td>
+<td class="size"><%= (entry.size ? number_to_human_size(entry.size) : "?") unless entry.is_dir? %></td>
+<td class="revision"><%= link_to(entry.lastrev.name, :action => 'revision', :id => @project, :rev => entry.lastrev.identifier) if entry.lastrev && entry.lastrev.identifier %></td>
+<td class="age"><%= distance_of_time_in_words(entry.lastrev.time, Time.now) if entry.lastrev && entry.lastrev.time %></td>
+<td class="author"><%=h(entry.lastrev.author) if entry.lastrev %></td>
<% changeset = @project.repository.changesets.find_by_revision(entry.lastrev.identifier) if entry.lastrev %>
-<td><%=h truncate(changeset.comments, 50) unless changeset.nil? %></td>
+<td class="comments"><%=h truncate(changeset.comments, 50) unless changeset.nil? %></td>
</tr>
<% end %>
<% end %>
<%= "@ #{revision}" if revision %>
+
+<% html_title(with_leading_slash(path)) -%>
<% form_tag({:controller => 'repositories', :action => 'diff', :id => @project, :path => path}, :method => :get) do %>
-<table class="list">
+<table class="list changesets">
<thead><tr>
<th>#</th>
<th></th>
<% show_diff = entry && entry.is_file? && revisions.size > 1 %>
<% line_num = 1 %>
<% revisions.each do |changeset| %>
-<tr class="<%= cycle 'odd', 'even' %>">
+<tr class="changeset <%= cycle 'odd', 'even' %>">
<td class="id"><%= link_to changeset.revision, :action => 'revision', :id => project, :rev => changeset.revision %></td>
<td class="checkbox"><%= radio_button_tag('rev', changeset.revision, (line_num==1), :id => "cb-#{line_num}", :onclick => "$('cbto-#{line_num+1}').checked=true;") if show_diff && (line_num < revisions.size) %></td>
<td class="checkbox"><%= radio_button_tag('rev_to', changeset.revision, (line_num==2), :id => "cbto-#{line_num}", :onclick => "if ($('cb-#{line_num}').checked==true) {$('cb-#{line_num-1}').checked=true;}") if show_diff && (line_num > 1) %></td>
-<td align="center" style="width:15%"><%= format_time(changeset.committed_on) %></td>
-<td align="center" style="width:15%"><em><%=h changeset.committer %></em></td>
-<td align="left"><%= textilizable(changeset.comments) %></td>
+<td class="committed_on"><%= format_time(changeset.committed_on) %></td>
+<td class="author"><%=h changeset.committer %></td>
+<td class="comments"><%= textilizable(changeset.comments) %></td>
</tr>
<% line_num += 1 %>
<% end %>
</tbody>
</table>
-<%= submit_tag(l(:label_view_diff), :class => 'small', :name => nil) if show_diff %>
+<%= submit_tag(l(:label_view_diff), :name => nil) if show_diff %>
<% end %>
</table>
</div>
+<% html_title(l(:button_annotate)) -%>
+
<% content_for :header_tags do %>
<%= stylesheet_link_tag 'scm' %>
<% end %>
<% content_for :header_tags do %>
<%= stylesheet_link_tag "scm" %>
-<% end %>
\ No newline at end of file
+<% end %>
<%= render :partial => 'revisions', :locals => {:project => @project, :path => @path, :revisions => @changesets, :entry => @entry }%>
-<% set_html_title(h(@entry.name)) -%>
+<% html_title(l(:label_change_plural)) -%>
<% end %>
<% end %>
+<% html_title(with_leading_slash(@path), 'Diff') -%>
+
<% content_for :header_tags do %>
<%= stylesheet_link_tag "scm" %>
<% end %>
<%= stylesheet_link_tag "scm" %>
<% end %>
-<% set_html_title("#{l(:label_revision)} #{@changeset.revision}") -%>
+<% html_title("#{l(:label_revision)} #{@changeset.revision}") -%>
<%= auto_discovery_link_tag(:atom, params.merge({:format => 'atom', :page => nil, :key => User.current.rss_key})) %>
<% end %>
-<% set_html_title l(:label_revision_plural) -%>
+<% html_title(l(:label_revision_plural)) -%>
<%= stylesheet_link_tag "scm" %>
<% end %>
-<% set_html_title l(:label_repository) -%>
+<% html_title(l(:label_repository)) -%>
</td></tr>\r
</table>\r
<br />\r
-<p><%= link_to l(:button_back), :action => 'show', :id => @project %></p>
\ No newline at end of file
+<p><%= link_to l(:button_back), :action => 'show', :id => @project %></p>\r
+\r
+<% html_title(l(:label_repository), l(:label_statistics)) -%>\r
<p><%= link_to l(:label_permissions_report), :action => 'report' %></p>
-<% set_html_title(l(:label_role_plural)) -%>
+<% html_title(l(:label_role_plural)) -%>
<% end %>
-<% set_html_title(l(:label_workflow)) -%>
+<% html_title(l(:label_workflow)) -%>
<% end %>\r
</center></p>\r
\r
-<% set_html_title(l(:label_search)) -%>\r
+<% html_title(l(:label_search)) -%>\r
<%= submit_tag l(:button_save) %>
<% end %>
-<% set_html_title(l(:label_settings)) -%>
+<% html_title(l(:label_settings)) -%>
<p class="pagination"><%= pagination_links_full @tracker_pages %></p>
-<% set_html_title(l(:label_tracker_plural)) -%>
+<% html_title(l(:label_tracker_plural)) -%>
<p class="pagination"><%= pagination_links_full @user_pages, @user_count %></p>
-<% set_html_title(l(:label_user_plural)) -%>
+<% html_title(l(:label_user_plural)) -%>
<%= render :partial => 'versions/overview', :locals => {:version => @version} %>
<%= render(:partial => "wiki/content", :locals => {:content => @version.wiki_page.content}) if @version.wiki_page %>
-<% set_html_title h(@version.name) %>
+<% html_title @version.name %>
<%= stylesheet_link_tag 'scm' %>
<% end %>
-<% set_html_title @page.pretty_title %>
+<% html_title @page.pretty_title %>
<%= render :partial => 'sidebar' %>
<% end %>
-<% set_html_title @page.pretty_title %>
+<% html_title @page.pretty_title %>
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
label_registration_manual_activation: manual account activation
label_registration_automatic_activation: automatic account activation
label_display_per_page: 'Per page: %s'
+label_age: Age
button_login: Login
button_submit: Submit
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
label_registration_manual_activation: activation manuelle du compte
label_registration_automatic_activation: activation automatique du compte
label_display_per_page: 'Par page: %s'
+label_age: Age
button_login: Connexion
button_submit: Soumettre
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable\r
label_display_per_page: 'Per page: %s'\r
setting_per_page_options: Objects per page options\r
+label_age: Age\r
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
field_searchable: Searchable
label_display_per_page: 'Per page: %s'
setting_per_page_options: Objects per page options
+label_age: Age
tr.issue td.subject { text-align: left; }
tr.issue td.done_ratio table.progress { margin-left:auto; margin-right: auto;}
+tr.entry { border: 1px solid #f8f8f8; }
+tr.entry td { white-space: nowrap; }
+tr.entry td.filename { width: 30%; }
+tr.entry td.size { text-align: right; font-size: 90%; }
+tr.entry td.revision, tr.entry td.author { text-align: center; }
+tr.entry td.age { text-align: right; }
+
+tr.changeset td.author { text-align: center; width: 15%; }
+tr.changeset td.committed_on { text-align: center; width: 15%; }
+
tr.message { height: 2.6em; }
tr.message td.last_message { font-size: 80%; }
tr.message.locked td.subject a { background-image: url(../images/locked.png); }