1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
|
<div class="contextual">
<% if User.current.allowed_to?(:add_subprojects, @project) %>
<%= link_to l(:label_subproject_new), new_project_path(:parent_id => @project), :class => 'icon icon-add' %>
<% end %>
<%= bookmark_link @project %>
<% if User.current.allowed_to?(:close_project, @project) %>
<% if @project.active? %>
<%= link_to l(:button_close), close_project_path(@project), :data => {:confirm => l(:text_are_you_sure)}, :method => :post, :class => 'icon icon-lock' %>
<% else %>
<%= link_to l(:button_reopen), reopen_project_path(@project), :data => {:confirm => l(:text_are_you_sure)}, :method => :post, :class => 'icon icon-unlock' %>
<% end %>
<% end %>
</div>
<h2><%=l(:label_overview)%></h2>
<% unless @project.active? %>
<p class="warning"><span class="icon icon-lock"><%= l(:text_project_closed) %></span></p>
<% end %>
<div class="splitcontent">
<div class="splitcontentleft">
<% if @project.description.present? %>
<div class="wiki">
<%= textilizable @project.description %>
</div>
<% end %>
<% if @project.homepage.present? || @project.visible_custom_field_values.any?(&:present?) %>
<ul>
<% unless @project.homepage.blank? %>
<li><span class="label"><%=l(:field_homepage)%>:</span> <%= link_to_if uri_with_safe_scheme?(@project.homepage), @project.homepage, @project.homepage %></li>
<% end %>
<% render_custom_field_values(@project) do |custom_field, formatted| %>
<li class="<%= custom_field.css_classes %>"><span class="label"><%= custom_field.name %>:</span> <%= formatted %></li>
<% end %>
</ul>
<% end %>
<% if User.current.allowed_to?(:view_issues, @project) %>
<div class="issues box">
<h3 class="icon icon-issue">
<%=l(:label_issue_tracking)%>
<%= link_to l(:label_details),
project_issues_report_details_path(@project, :detail => 'tracker'),
:class => 'icon-only icon-zoom-in',
:title => l(:label_details) %>
</h3>
<% if @trackers.present? %>
<table class="list issue-report">
<thead>
<tr>
<th></th>
<th><%=l(:label_open_issues_plural)%></th>
<th><%=l(:label_closed_issues_plural)%></th>
<th><%=l(:label_total)%></th>
</tr>
</thead>
<tbody>
<% @trackers.each do |tracker| %>
<tr>
<td class="name">
<%= link_to tracker.name, project_issues_path(@project, :set_filter => 1, :tracker_id => tracker.id), :title => tracker.description %>
</td>
<td>
<%= link_to @open_issues_by_tracker[tracker].to_i, project_issues_path(@project, :set_filter => 1, :tracker_id => tracker.id) %>
</td>
<td>
<%= link_to (@total_issues_by_tracker[tracker].to_i - @open_issues_by_tracker[tracker].to_i), project_issues_path(@project, :set_filter => 1, :tracker_id => tracker.id, :status_id => 'c') %>
</td>
<td class="total">
<%= link_to @total_issues_by_tracker[tracker].to_i, project_issues_path(@project, :set_filter => 1, :tracker_id => tracker.id, :status_id => '*') %>
</td>
</tr>
<% end %>
</tbody>
</table>
<% end %>
<p>
<%= link_to l(:label_issue_view_all), project_issues_path(@project, :set_filter => 1) %>
| <%= link_to l(:field_summary), project_issues_report_path(@project) %>
<% if User.current.allowed_to?(:view_calendar, @project, :global => true) %>
| <%= link_to l(:label_calendar), project_calendar_path(@project) %>
<% end %>
<% if User.current.allowed_to?(:view_gantt, @project, :global => true) %>
| <%= link_to l(:label_gantt), project_gantt_path(@project) %>
<% end %>
</p>
</div>
<% end %>
<% if User.current.allowed_to?(:view_time_entries, @project) %>
<div class="spent_time box">
<h3 class="icon icon-time"><%= l(:label_time_tracking) %></h3>
<ul>
<% if @total_estimated_hours.present? %>
<li><%= l(:field_estimated_hours) %>: <%= l_hours(@total_estimated_hours) %>
<% end %>
<% if @total_hours.present? %>
<li><%= l(:label_spent_time) %>: <%= l_hours(@total_hours) %>
<% end %>
</ul>
<p>
<% if User.current.allowed_to?(:log_time, @project) %>
<%= link_to l(:button_log_time), new_project_time_entry_path(@project) %> |
<% end %>
<%= link_to(l(:label_details), project_time_entries_path(@project)) %> |
<%= link_to(l(:label_report), report_project_time_entries_path(@project)) %>
</p>
</div>
<% end %>
<%= call_hook(:view_projects_show_left, :project => @project) %>
</div>
<div class="splitcontentright">
<% if @news.any? && authorize_for('news', 'index') %>
<div class="news box">
<h3 class="icon icon-news"><%=l(:label_news_latest)%></h3>
<%= render :partial => 'news/news', :collection => @news %>
<p><%= link_to l(:label_news_view_all), project_news_index_path(@project) %></p>
</div>
<% end %>
<%= render :partial => 'members_box' %>
<% if @subprojects.any? %>
<div class="projects box">
<h3 class="icon icon-projects"><%=l(:label_subproject_plural)%></h3>
<ul class="subprojects">
<% @subprojects.each do |project| %>
<li><%= link_to(project.name, project_path(project), :class => project.css_classes).html_safe %></li>
<% end %>
</ul>
</div>
<% end %>
<%= call_hook(:view_projects_show_right, :project => @project) %>
</div>
</div>
<% content_for :sidebar do %>
<%= call_hook(:view_projects_show_sidebar_bottom, :project => @project) %>
<% end %>
<% content_for :header_tags do %>
<%= auto_discovery_link_tag(:atom, {:controller => 'activities', :action => 'index', :id => @project, :format => 'atom', :key => User.current.rss_key}) %>
<% end %>
<% html_title(l(:label_overview)) -%>
|