foodsoft/app/views/finance/financial_transactions/new_collection.html.haml
Patrick Gansterer 389f205a6b Add set_balance to FinancialTransactions#new_collection (fixes #438)
A new checkbox will allow user to set the balance to a given ABSOLUTE value
in addition to changing it by a RELATIVE value. This can be used if the
balance is tracked outside of foodsoft and should be syncroniced or for
setting the balance to zero for multiple ordergroups.
2019-01-15 04:44:16 +01:00

61 lines
2.2 KiB
Text

- title t('.title')
- content_for :javascript do
:javascript
var ordergroup = $($.parseHTML("#{escape_javascript(render('ordergroup'))}"));
$(function() {
$(document).on('touchclick', 'a[data-remove-transaction]', function() {
$(this).parents('tr').remove();
return false;
});
$(document).on('touchclick', 'a[data-add-transaction]', function() {
ordergroup.clone().appendTo('#ordergroups');
return false;
});
$(document).on('touchclick', 'a[data-add-all-ordergroups]', function() {
var value = prompt("#{escape_javascript(heading_helper(FinancialTransaction, :amount))}:");
if (value === null)
return false;
$('#ordergroups > tbody > tr').remove();
var options = ordergroup.find('td > select > option').each(function() {
var row = ordergroup.clone();
row.find('td > input').val(value);
row.find('td > select').val(this.value);
row.appendTo('#ordergroups');
});
return false;
});
});
- content_for :sidebar do
.well.well-small= t('.sidebar')
= form_tag finance_create_transaction_collection_path do
- if FinancialTransactionType.has_multiple_types
%p
%b= heading_helper FinancialTransaction, :financial_transaction_type
= select_tag :type, options_for_select(FinancialTransactionType.order(:name).map { |t| [ t.name, t.id ] }, params[:type])
%p
%b= heading_helper FinancialTransaction, :note
= text_field_tag :note, params[:note], class: 'input-xlarge', required: 'required'
%p
%label
= check_box_tag :set_balance, true, params[:set_balance]
= t('.set_balance')
%p
%table#ordergroups{:style => "width:20em"}
%thead
%tr
%th= heading_helper FinancialTransaction, :ordergroup
%th= heading_helper FinancialTransaction, :amount
%tbody
= render :partial => 'ordergroup', :collection => [1, 2, 3]
%p
= link_to t('.new_ordergroup'), '#', 'data-add-transaction' => true, class: 'btn'
= link_to t('.add_all_ordergroups'), '#', 'data-add-all-ordergroups' => true, class: 'btn'
.form-actions
= submit_tag t('.save'), class: 'btn btn-primary'
= link_to t('ui.or_cancel'), finance_ordergroups_path