OpenProject is the leading open source project management software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openproject/app/views/planning_elements/_planning_element.html.erb

138 lines
4.3 KiB

<%#-- copyright
OpenProject is a project management system.
Copyright (C) 2012-2013 the OpenProject Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License version 3.
See doc/COPYRIGHT.rdoc for more details.
++#%>
<% html_title h(planning_element.title) %>
<h2 class="subject">
<%= planning_element.title %>
</h2>
<%
format_date_options = {}
unless planning_element.leaf?
format_date_options[:title] = l("timelines.dates_are_calculated_based_on_sub_elements")
end
%>
<div class="issue details">
<div class="meta">
<table class="attributes timelines-attributes">
<tr>
<th class="name">
<label for="planning_element_name">
<%= PlanningElement.human_attribute_name(:name) %>:
</label>
</th>
<td>
<%= textilizable planning_element, :subject %>
</td>
</tr>
<tr>
<th class="parent">
<label for="planning_element_parent_id">
<%= PlanningElement.human_attribute_name(:parent) %>:
</label>
</th>
<td>
<%= planning_element.parent ?
(link_to_planning_element(planning_element.parent, :include_id => false)) : "" %>&nbsp;
</td>
</tr>
<tr>
<th class="description">
<label for="planning_element_description">
<%= PlanningElement.human_attribute_name(:description)%>:
</label>
</th>
<td class="description">
<%= textilizable planning_element, :description %>&nbsp;
</td>
</tr>
<tr>
<th class="planning-element-type">
<label for="planning_element_planning_element_type_id">
<%= PlanningElement.human_attribute_name(:planning_element_type) %>:
</label>
</th>
<td class="planning-element-type">
<%= icon_for_planning_element_type(planning_element.planning_element_type) %>
<%= h planning_element.planning_element_type.try(:name) %>&nbsp;
</td>
</tr>
<tr>
<th class="responsible">
<label for="planning_element_responsible_id">
<%= PlanningElement.human_attribute_name(:responsible) %>:
</label>
</th>
<td class="responsible">
<%= avatar(planning_element.responsible, :size => "14") %>
<%= planning_element.responsible ? link_to_user(planning_element.responsible) : "-" %>
</td>
</tr>
<!--
<tr>
<th class="in-aggregation"><%= PlanningElementType.human_attribute_name(:in_aggregation)%>:</th>
<td class="in-aggregation">
<%= checked_image(planning_element.planning_element_type.try(:in_aggregation)) %>
</td>
</tr>-->
<tr>
<th>
<%= l('timelines.current_planning') %>:
</th>
<td>
<%= format_date planning_element.start_date, format_date_options %> - <%= format_date planning_element.end_date, format_date_options %>
</td>
</tr>
<% planning_element.scenarios.each do |pe_scenario| %>
<tr>
<th>
<%=h pe_scenario.name %>:
</th>
<td>
<%= format_date pe_scenario.start_date, format_date_options %> - <%= format_date pe_scenario.end_date, format_date_options %>
</td>
</tr>
<% end %>
</table>
</div>
</div>
<% if planning_element.children.without_deleted.present? %>
<h3><%= l('timelines.children') %></h3>
<table class="list issues timelines-children">
<%= render :partial => 'table_header' %>
<tbody class='timelines-scenaric-dates'>
<% planning_element.children.without_deleted.all(:order => 'start_date').each do |child| %>
<%= render :partial => 'table_row', :locals => {:planning_element => child} %>
<% end %>
</tbody>
</table>
<% end %>
<% if planning_element.journals.changing.present? %>
<h3><%= l('timelines.history') %></h3>
<div id='history'>
<% planning_element.journals.changing.each do |journal| %>
<%= timelines_render_journal planning_element,
journal,
:edit_permission => :edit_planning_element_notes,
:edit_own_permission => :edit_own_planning_element_notes %>
<% end %>
</div>
<% end %>