Adds a branch for unlimited project hierarchy.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/work@2148 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
<h3><%= l(:label_calendar) %></h3>
|
||||
|
||||
<% calendar = Redmine::Helpers::Calendar.new(Date.today, current_language, :week)
|
||||
calendar.events = Issue.find :all,
|
||||
:conditions => ["#{Issue.table_name}.project_id in (#{@user.projects.collect{|m| m.id}.join(',')}) AND ((start_date>=? and start_date<=?) or (due_date>=? and due_date<=?))", calendar.startdt, calendar.enddt, calendar.startdt, calendar.enddt],
|
||||
:include => [:project, :tracker, :priority, :assigned_to] unless @user.projects.empty? %>
|
||||
|
||||
<%= render :partial => 'common/calendar', :locals => {:calendar => calendar } %>
|
||||
@@ -0,0 +1,9 @@
|
||||
<h3><%=l(:label_document_plural)%></h3>
|
||||
|
||||
<% project_ids = @user.projects.select {|p| @user.allowed_to?(:view_documents, p)}.collect(&:id) %>
|
||||
<%= render(:partial => 'documents/document',
|
||||
:collection => Document.find(:all,
|
||||
:limit => 10,
|
||||
:order => "#{Document.table_name}.created_on DESC",
|
||||
:conditions => "#{Document.table_name}.project_id in (#{project_ids.join(',')})",
|
||||
:include => [:project])) unless project_ids.empty? %>
|
||||
@@ -0,0 +1,17 @@
|
||||
<h3><%=l(:label_assigned_to_me_issues)%></h3>
|
||||
<% assigned_issues = Issue.find(:all,
|
||||
:conditions => ["assigned_to_id=? AND #{IssueStatus.table_name}.is_closed=? AND #{Project.table_name}.status=#{Project::STATUS_ACTIVE}", user.id, false],
|
||||
:limit => 10,
|
||||
:include => [ :status, :project, :tracker, :priority ],
|
||||
:order => "#{Enumeration.table_name}.position DESC, #{Issue.table_name}.updated_on DESC") %>
|
||||
<%= render :partial => 'issues/list_simple', :locals => { :issues => assigned_issues } %>
|
||||
<% if assigned_issues.length > 0 %>
|
||||
<p class="small"><%= link_to l(:label_issue_view_all), :controller => 'issues', :action => 'index', :set_filter => 1, :assigned_to_id => 'me' %></p>
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= auto_discovery_link_tag(:atom,
|
||||
{:controller => 'issues', :action => 'index', :set_filter => 1,
|
||||
:assigned_to_id => 'me', :format => 'atom', :key => User.current.rss_key},
|
||||
{:title => l(:label_assigned_to_me_issues)}) %>
|
||||
<% end %>
|
||||
@@ -0,0 +1,17 @@
|
||||
<h3><%=l(:label_reported_issues)%></h3>
|
||||
<% reported_issues = Issue.find(:all,
|
||||
:conditions => ["author_id=? AND #{Project.table_name}.status=#{Project::STATUS_ACTIVE}", user.id],
|
||||
:limit => 10,
|
||||
:include => [ :status, :project, :tracker ],
|
||||
:order => "#{Issue.table_name}.updated_on DESC") %>
|
||||
<%= render :partial => 'issues/list_simple', :locals => { :issues => reported_issues } %>
|
||||
<% if reported_issues.length > 0 %>
|
||||
<p class="small"><%= link_to l(:label_issue_view_all), :controller => 'issues', :action => 'index', :set_filter => 1, :author_id => 'me' %></p>
|
||||
<% end %>
|
||||
|
||||
<% content_for :header_tags do %>
|
||||
<%= auto_discovery_link_tag(:atom,
|
||||
{:controller => 'issues', :action => 'index', :set_filter => 1,
|
||||
:author_id => 'me', :format => 'atom', :key => User.current.rss_key},
|
||||
{:title => l(:label_reported_issues)}) %>
|
||||
<% end %>
|
||||
@@ -0,0 +1,10 @@
|
||||
<h3><%=l(:label_watched_issues)%></h3>
|
||||
<% watched_issues = Issue.find(:all,
|
||||
:include => [:status, :project, :tracker, :watchers],
|
||||
:limit => 10,
|
||||
:conditions => ["#{Watcher.table_name}.user_id = ? AND #{Project.table_name}.status=#{Project::STATUS_ACTIVE}", user.id],
|
||||
:order => "#{Issue.table_name}.updated_on DESC") %>
|
||||
<%= render :partial => 'issues/list_simple', :locals => { :issues => watched_issues } %>
|
||||
<% if watched_issues.length > 0 %>
|
||||
<p><%=lwr(:label_last_updates, watched_issues.length)%></p>
|
||||
<% end %>
|
||||
@@ -0,0 +1,8 @@
|
||||
<h3><%=l(:label_news_latest)%></h3>
|
||||
|
||||
<%= render(:partial => 'news/news',
|
||||
:collection => News.find(:all,
|
||||
:limit => 10,
|
||||
:order => "#{News.table_name}.created_on DESC",
|
||||
:conditions => "#{News.table_name}.project_id in (#{@user.projects.collect{|m| m.id}.join(',')})",
|
||||
:include => [:project, :author])) unless @user.projects.empty? %>
|
||||
@@ -0,0 +1,52 @@
|
||||
<h3><%=l(:label_spent_time)%> (<%= l(:label_last_n_days, 7) %>)</h3>
|
||||
<%
|
||||
entries = TimeEntry.find(:all,
|
||||
:conditions => ["#{TimeEntry.table_name}.user_id = ? AND #{TimeEntry.table_name}.spent_on BETWEEN ? AND ?", @user.id, Date.today - 6, Date.today],
|
||||
:include => [:activity, :project, {:issue => [:tracker, :status]}],
|
||||
:order => "#{TimeEntry.table_name}.spent_on DESC, #{Project.table_name}.name ASC, #{Tracker.table_name}.position ASC, #{Issue.table_name}.id ASC")
|
||||
entries_by_day = entries.group_by(&:spent_on)
|
||||
%>
|
||||
|
||||
<div class="total-hours">
|
||||
<p><%= l(:label_total) %>: <%= html_hours("%.2f" % entries.sum(&:hours).to_f) %></p>
|
||||
</div>
|
||||
|
||||
<% if entries.any? %>
|
||||
<table class="list time-entries">
|
||||
<thead>
|
||||
<th><%= l(:label_activity) %></th>
|
||||
<th><%= l(:label_project) %></th>
|
||||
<th><%= l(:field_comments) %></th>
|
||||
<th><%= l(:field_hours) %></th>
|
||||
<th></th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<% entries_by_day.keys.sort.reverse.each do |day| %>
|
||||
<tr class="odd">
|
||||
<td><strong><%= day == Date.today ? l(:label_today).titleize : format_date(day) %></strong></td>
|
||||
<td colspan="2"></td>
|
||||
<td class="hours"><em><%= html_hours("%.2f" % entries_by_day[day].sum(&:hours).to_f) %></em></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<% entries_by_day[day].each do |entry| -%>
|
||||
<tr class="time-entry" style="border-bottom: 1px solid #f5f5f5;">
|
||||
<td class="activity"><%=h entry.activity %></td>
|
||||
<td class="subject"><%=h entry.project %> <%= ' - ' + link_to_issue(entry.issue, :title => h("#{entry.issue.subject} (#{entry.issue.status})")) if entry.issue %></td>
|
||||
<td class="comments"><%=h entry.comments %></td>
|
||||
<td class="hours"><%= html_hours("%.2f" % entry.hours) %></td>
|
||||
<td align="center">
|
||||
<% if entry.editable_by?(@user) -%>
|
||||
<%= link_to image_tag('edit.png'), {:controller => 'timelog', :action => 'edit', :id => entry},
|
||||
:title => l(:button_edit) %>
|
||||
<%= link_to image_tag('delete.png'), {:controller => 'timelog', :action => 'destroy', :id => entry},
|
||||
:confirm => l(:text_are_you_sure),
|
||||
:method => :post,
|
||||
:title => l(:button_delete) %>
|
||||
<% end -%>
|
||||
</td>
|
||||
</tr>
|
||||
<% end -%>
|
||||
<% end -%>
|
||||
</tbdoy>
|
||||
</table>
|
||||
<% end %>
|
||||
Reference in New Issue
Block a user