mirror of
https://github.com/rickbarrette/stopwatch.git
synced 2026-04-02 17:51:59 -04:00
78 lines
3.1 KiB
Plaintext
78 lines
3.1 KiB
Plaintext
<%= error_messages_for 'time_entry' %>
|
|
|
|
<fieldset class="box tabular">
|
|
<legend><%= t @time_entry.new_record? ? '.legend_new' : '.legend_edit' %></legend>
|
|
|
|
<p><label for="stopwatch_time_entry_project_id"><%= l :field_project %><span class="required"> *</span></label><%= f.select :project_id, project_tree_options_for_select(Project.allowed_to(:log_time).to_a, :selected => @time_entry.project, :include_blank => true), { no_label: true }, id: 'stopwatch_time_entry_project_id' %></p>
|
|
<p><label for="stopwatch_time_entry_issue_id"><%= l :field_issue %>
|
|
<% if Setting.timelog_required_fields.include?('issue_id') %>
|
|
<span class="required"> *</span>
|
|
<% end %>
|
|
</label>
|
|
<%= f.text_field :issue_id, :size => 6, no_label: true, id: 'stopwatch_time_entry_issue_id' %>
|
|
<span id="stopwatch_time_entry_issue">
|
|
<%= link_to_issue(@time_entry.issue) if @time_entry.issue.try(:visible?) %>
|
|
</span>
|
|
</p>
|
|
<p><label for="stopwatch_time_entry_activity_id"><%= l :field_activity %><span class="required"> *</span></label><%= f.select :activity_id, activity_collection_for_select_options(@time_entry), { no_label: true }, id: 'stopwatch_time_entry_activity_id' %></p>
|
|
<!--
|
|
<p><%= f.date_field :spent_on, :size => 10, :required => true %><%= calendar_for('time_entry_spent_on') %></p>
|
|
-->
|
|
<p><%= f.text_field :comments, :size => 100, :maxlength => 1024, :required => Setting.timelog_required_fields.include?('comments') %></p>
|
|
<p><%= f.hours_field :hours, :size => 6, :required => true %></p>
|
|
<% @time_entry.custom_field_values.each do |value| %>
|
|
<p><%= custom_field_tag_with_label :time_entry, value %></p>
|
|
<% end %>
|
|
<%= call_hook(:view_timelog_edit_form_bottom, { :time_entry => @time_entry, :form => f }) %>
|
|
</fieldset>
|
|
|
|
<%= javascript_tag do %>
|
|
$(document).ready(function(){
|
|
$('#stopwatch_time_entry_project_id').change(function(){
|
|
$('#stopwatch_time_entry_issue_id').val('');
|
|
});
|
|
$('#stopwatch_time_entry_project_id, #stopwatch_time_entry_issue_id').change(function(){
|
|
$.ajax({
|
|
url: '<%= j update_form_stopwatch_timers_path(time_entry_id: @time_entry.id, format: 'js') %>',
|
|
type: 'post',
|
|
data: $(this).closest('form').serialize()
|
|
});
|
|
});
|
|
});
|
|
|
|
observeAutocompleteField('stopwatch_time_entry_issue_id',
|
|
function(request, callback) {
|
|
var url = '<%= j auto_complete_issues_path %>';
|
|
var data = {
|
|
term: request.term
|
|
};
|
|
var project_id;
|
|
<% if @time_entry.new_record? && @project %>
|
|
project_id = '<%= @project.id %>';
|
|
<% else %>
|
|
project_id = $('#stopwatch_time_entry_project_id').val();
|
|
<% end %>
|
|
if(project_id){
|
|
data['project_id'] = project_id;
|
|
} else {
|
|
data['scope'] = 'all';
|
|
}
|
|
|
|
$.get(url, data, null, 'json')
|
|
.done(function(data){
|
|
callback(data);
|
|
})
|
|
.fail(function(jqXHR, status, error){
|
|
callback([]);
|
|
});
|
|
},
|
|
{
|
|
select: function(event, ui) {
|
|
$('#stopwatch_time_entry_issue').text('');
|
|
$('#stopwatch_time_entry_issue_id').val(ui.item.value).change();
|
|
}
|
|
}
|
|
);
|
|
<% end %>
|
|
|