2014-08-07 11:20:24 +08:00
|
|
|
|
<%= labelled_fields_for :issue, @issue do |f| %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<div class="newpro_box">
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<fieldset class="collapsible">
|
|
|
|
|
<legend onclick="toggleFieldset(this);"><strong><%= l(:label_change_properties) %></strong></legend>
|
|
|
|
|
<ul class="fl">
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<li>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<label class="label"><span class="c_red f12">*</span><%= l(:field_status) %>:</label>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% if @issue.safe_attribute?('status_id') && @allowed_statuses.present? %>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<%= f.select :status_id,
|
2015-04-15 16:34:34 +08:00
|
|
|
|
(@allowed_statuses.collect { |p| [p.name, p.id] }),
|
2015-04-16 17:56:19 +08:00
|
|
|
|
{:no_label => true},
|
2015-04-17 14:14:13 +08:00
|
|
|
|
# ajax 刷新
|
|
|
|
|
#:onchange => "updateIssueFrom('#{escape_javascript project_issue_form_path(@project, :id => @issue, :format => 'js')}')",
|
2015-04-15 16:34:34 +08:00
|
|
|
|
:class => "w150" %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% else %>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<%= h(@issue.status.name) %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% end %>
|
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-11 09:45:13 +08:00
|
|
|
|
<li>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<label class="label"><span class="c_red f12">*</span><%= l(:field_priority) %>:</label>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'priority_id' %>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<%= f.select :priority_id,
|
2015-04-15 16:34:34 +08:00
|
|
|
|
(@priorities.collect { |p| [p.name, p.id] }),
|
|
|
|
|
{:required => true, :no_label => true}, :disabled => !@issue.leaf?,
|
|
|
|
|
:class => "w150" %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% end %>
|
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<li>
|
|
|
|
|
<li>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<label class="label"><%= l(:field_assigned_to) %>:</label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'assigned_to_id' %>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<%= f.select :assigned_to_id, principals_options_for_select(@issue.assignable_users, @issue.assigned_to),
|
|
|
|
|
{:required => @issue.required_attribute?('assigned_to_id'), :no_label => true},
|
|
|
|
|
:class => "w150" %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% end %>
|
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<li>
|
|
|
|
|
<% if @issue.safe_attribute?('fixed_version_id') && @issue.assignable_versions.any? %>
|
2015-04-16 15:58:38 +08:00
|
|
|
|
<label class="label"><%= l(:field_fixed_version) %>:</label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<%= f.select :fixed_version_id, version_options_for_select(@issue.assignable_versions, @issue.fixed_version),
|
2015-04-15 16:34:34 +08:00
|
|
|
|
{:include_blank => true, :required => @issue.required_attribute?('fixed_version_id'), :no_label => true},
|
|
|
|
|
:class => "w150" %>
|
|
|
|
|
<%#= link_to(image_tag('add.png', :style => 'vertical-align: middle;'),
|
2015-04-10 17:49:16 +08:00
|
|
|
|
new_project_version_path(@issue.project),
|
|
|
|
|
:remote => true,
|
|
|
|
|
:method => 'get',
|
|
|
|
|
:title => l(:label_version_new),
|
|
|
|
|
:tabindex => 200) if User.current.allowed_to?(:manage_versions, @issue.project) %>
|
2015-04-16 14:13:12 +08:00
|
|
|
|
<%= link_to "", new_project_version_path(@issue.project), :class => "pic_add mt5 ml5 " %>
|
|
|
|
|
<!--<a href="javascript:viod(0)" class="pic_add mt5 ml5"></a>-->
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% end %>
|
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
|
|
|
<ul class="fl ml90">
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<li>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<label class="label02"><%= l(:field_start_date) %>:</label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'start_date' %>
|
|
|
|
|
<%= f.text_field :start_date,
|
|
|
|
|
:size => 22,
|
|
|
|
|
:disabled => !@issue.leaf?,
|
2015-04-15 16:34:34 +08:00
|
|
|
|
:no_label => true,
|
2015-04-11 09:45:13 +08:00
|
|
|
|
:required => @issue.required_attribute?('start_date') %>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<%= calendar_for('issue_start_date', 'start_date') if @issue.leaf? %>
|
|
|
|
|
<% end %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<li>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<label class="label02"><%= l(:field_due_date) %>:</label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'due_date' %>
|
|
|
|
|
<%= f.text_field :due_date, :size => 22,
|
2015-04-11 09:45:13 +08:00
|
|
|
|
:disabled => !@issue.leaf?,
|
2015-04-15 16:34:34 +08:00
|
|
|
|
:no_label => true,
|
2015-04-11 09:45:13 +08:00
|
|
|
|
:required => @issue.required_attribute?('due_date') %>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<%= calendar_for('issue_due_date', 'start_date') if @issue.leaf? %>
|
|
|
|
|
<% end %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<li>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<label class="label02"><%= l(:field_estimated_hours) %>:</label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'estimated_hours' %>
|
|
|
|
|
<%= f.text_field :estimated_hours, :size => 22,
|
2015-04-11 09:45:13 +08:00
|
|
|
|
:disabled => !@issue.leaf?,
|
2015-04-15 16:34:34 +08:00
|
|
|
|
:no_label => true,
|
2015-04-14 19:56:03 +08:00
|
|
|
|
:required => @issue.required_attribute?('estimated_hours') %>
|
|
|
|
|
<span class="mt3 ml5"><%= l(:field_hours) %></span>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
<% end %>
|
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<li><label class="label02"> % 完成 : </label>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% if @issue.safe_attribute?('done_ratio') && @issue.leaf? && Issue.use_field_for_done_ratio? %>
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<%= f.select :done_ratio, ((0..10).to_a.collect { |r| ["#{r*10} %", r*10] }),
|
2015-04-16 17:56:19 +08:00
|
|
|
|
{:required => @issue.required_attribute?('done_ratio'), :no_label => true},
|
|
|
|
|
:onchange => "PrecentChange(this.value)",
|
2015-04-15 16:34:34 +08:00
|
|
|
|
:class => "w150" %>
|
2015-04-14 19:56:03 +08:00
|
|
|
|
<% end %>
|
2015-04-10 17:49:16 +08:00
|
|
|
|
</li>
|
|
|
|
|
<div class="cl"></div>
|
|
|
|
|
</ul>
|
|
|
|
|
</fieldset>
|
|
|
|
|
</div><!--newpro_box end-->
|
2014-08-07 11:20:24 +08:00
|
|
|
|
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<script type="text/javascript">
|
|
|
|
|
// window.onload=function(){
|
|
|
|
|
// var img=$("#issue_due_date").next("img");
|
|
|
|
|
// img.attr("onclick","SetMinValue();");
|
|
|
|
|
// }
|
|
|
|
|
function TimeClose(dateText, inst) {
|
|
|
|
|
if (inst.id == "issue_start_date") {
|
|
|
|
|
time = dateText;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var time = new Date();
|
|
|
|
|
function TimeBeforeShow(input) {
|
|
|
|
|
if (input.id == "issue_due_date") {
|
|
|
|
|
//var minDate = $(input).datepicker('option', 'minDate');
|
|
|
|
|
var tempdata = $("#issue_start_date").attr("value");
|
2014-08-11 16:39:18 +08:00
|
|
|
|
|
2015-04-15 16:34:34 +08:00
|
|
|
|
$(input).datepicker('option', 'minDate', new Date(tempdata.replace(/-/g, "/")));
|
|
|
|
|
//$('.selector').datepicker('option', 'minDate', '12/25/2012');
|
|
|
|
|
}
|
|
|
|
|
}
|
2014-08-11 16:39:18 +08:00
|
|
|
|
|
2015-04-15 16:34:34 +08:00
|
|
|
|
function SetMinValue() {
|
|
|
|
|
/// var tempdata=$("#issue_start_date").attr("value");
|
|
|
|
|
//$('.selector').datepicker('option', 'minDate', '12/25/2012');
|
|
|
|
|
//alert(tempdata);
|
|
|
|
|
//$("#issue_due_date").datepicker({
|
|
|
|
|
// minDate: new Date(2014,08,23)
|
|
|
|
|
//var datepickerOptions=
|
|
|
|
|
//{dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true};
|
|
|
|
|
//alert( $('.issue_due_date').length);
|
|
|
|
|
//$('.selector')[1].datepicker('option', 'minDate', new Date(2014, 0 - 8, 23));
|
|
|
|
|
//$("#issue_due_date").datepicker(datepickerOptions);
|
|
|
|
|
//$("##{issue_due_date}").datepicker(datepickerOptions);
|
|
|
|
|
//$("#issue_due_date").datepicker(
|
|
|
|
|
// {dateFormat: 'yy-mm-dd',minDate: new Date(2014,08,23), showOn: 'button', buttonImageOnly: true, buttonImage: "path_to_image('/images/calendar.png')", showButtonPanel: true, showWeek: true, showOtherMonths: true, selectOtherMonths: true}
|
|
|
|
|
//)
|
|
|
|
|
//});
|
|
|
|
|
}
|
|
|
|
|
function PrecentChange(obj) {
|
|
|
|
|
var _v = obj;
|
|
|
|
|
if (_v == 100) {
|
|
|
|
|
//var select=$("select[id='issue_status_id']");
|
|
|
|
|
$("select[id='issue_status_id']").find("option[value='3']").attr("selected", "selected");
|
|
|
|
|
}
|
|
|
|
|
else if (_v == 0) {
|
|
|
|
|
//alert(1);
|
|
|
|
|
$("select[id='issue_status_id']").find("option[value='1']").attr("selected", "selected");
|
|
|
|
|
}
|
|
|
|
|
else if (_v != 100 && _v != 0) {
|
|
|
|
|
// alert(2);
|
|
|
|
|
$("select[id='issue_status_id']").find("option[value='2']").attr("selected", "selected");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
</script>
|
2014-08-07 11:20:24 +08:00
|
|
|
|
|
|
|
|
|
|
2015-04-15 16:34:34 +08:00
|
|
|
|
<% if @issue.safe_attribute? 'custom_field_values' %>
|
|
|
|
|
<%= render :partial => 'issues/form_custom_fields' %>
|
|
|
|
|
<% end %>
|
2014-08-07 11:20:24 +08:00
|
|
|
|
|
|
|
|
|
<% end %>
|
|
|
|
|
|
|
|
|
|
<% include_calendar_headers_tags %>
|