kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
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.
100 lines
3.5 KiB
100 lines
3.5 KiB
<%#-- copyright
|
|
OpenProject Costs Plugin
|
|
|
|
Copyright (C) 2009 - 2014 the OpenProject Foundation (OPF)
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License
|
|
version 3.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
++#%>
|
|
|
|
<%
|
|
rates = @rates unless rates
|
|
project = @project unless project
|
|
|
|
current_rate = @user.current_rate(project)
|
|
%>
|
|
|
|
<div class="contextual">
|
|
<% if project && User.current.allowed_to?({:controller => '/hourly_rates', :action => 'edit'}, project) %>
|
|
<%= link_to l(:button_update), {:controller => '/hourly_rates', :action => 'edit', :project_id => project, :id => @user}, :class => 'icon icon-edit', :accesskey => accesskey(:edit) %>
|
|
<% end %>
|
|
</div>
|
|
<h3><%=h project.name %><%= (" - " + number_to_currency(current_rate.rate)) if current_rate %></h3>
|
|
<% if rates.empty? %>
|
|
<div class="generic-table--container">
|
|
<div class="generic-table--no-results-container">
|
|
<h2 class="generic-table--no-results-title">
|
|
<i class="icon-info"></i>
|
|
Nothing to display
|
|
</h2>
|
|
<div class="generic-table--no-results-description">
|
|
<p class="nodata"><%= l(:label_no_data) %></p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<% else %>
|
|
<div class="generic-table--container">
|
|
<div class="generic-table--results-container">
|
|
<table interactive-table role="grid" class="generic-table rates">
|
|
<colgroup>
|
|
<col highlight-col>
|
|
<col highlight-col>
|
|
<col highlight-col>
|
|
</colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th>
|
|
<div class="generic-table--sort-header-outer">
|
|
<div class="generic-table--sort-header">
|
|
<span>
|
|
<%= Rate.human_attribute_name(:valid_from) %>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</th>
|
|
<th class="currency">
|
|
<div class="generic-table--sort-header-outer">
|
|
<div class="generic-table--sort-header">
|
|
<span>
|
|
<%= Rate.model_name.human %>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</th>
|
|
<th>
|
|
<div class="generic-table--sort-header-outer">
|
|
<div class="generic-table--sort-header">
|
|
<span>
|
|
<%= User.human_attribute_name(:current_rate) %>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody id="rates_body">
|
|
<% current_rate = @user.current_rate(project, false) %>
|
|
<%- rates.each do |rate| -%>
|
|
<tr>
|
|
<td style="padding-right: 1em;"><%= rate.valid_from %></td>
|
|
<td class="currency"><%= number_to_currency(rate.rate) %></td>
|
|
<td><%= rate == current_rate ? icon_wrapper('icon-context icon-yes',I18n.t(:general_text_Yes)) : "" %></td>
|
|
</tr>
|
|
<%- end -%>
|
|
</tbody>
|
|
</table>
|
|
<div class="generic-table--header-background"></div>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
|