X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/36c8af5266db4c2894cd37df798212c2e7f06f68..f260a8cc8d1edc734c3816035f94c2658523c84b:/bin/mozilla/ir.pl diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl index c649046a8..66e9b08a1 100644 --- a/bin/mozilla/ir.pl +++ b/bin/mozilla/ir.pl @@ -226,6 +226,7 @@ sub setup_ir_action_bar { action => [ t8('Update'), submit => [ '#form', { action => "update" } ], + checks => [ 'kivi.validate_form' ], id => 'update_button', accesskey => 'enter', ], @@ -234,6 +235,7 @@ sub setup_ir_action_bar { action => [ t8('Post'), submit => [ '#form', { action => "post" } ], + checks => [ 'kivi.validate_form' ], disabled => $form->{locked} ? t8('The billing period has already been locked.') : $form->{storno} ? t8('A canceled invoice cannot be posted.') : ($form->{id} && $change_never) ? t8('Changing invoices has been disabled in the configuration.') @@ -243,11 +245,13 @@ sub setup_ir_action_bar { action => [ t8('Post Payment'), submit => [ '#form', { action => "post_payment" } ], + checks => [ 'kivi.validate_form' ], disabled => !$form->{id} ? t8('This invoice has not been posted yet.') : undef, ], action => [ t8('Mark as paid'), submit => [ '#form', { action => "mark_as_paid" } ], + checks => [ 'kivi.validate_form' ], confirm => t8('This will remove the invoice from showing as unpaid even if the unpaid amount does not match the amount. Proceed?'), disabled => !$form->{id} ? t8('This invoice has not been posted yet.') : undef, only_if => $::instance_conf->get_ir_show_mark_as_paid, @@ -257,11 +261,13 @@ sub setup_ir_action_bar { combobox => [ action => [ t8('Storno'), submit => [ '#form', { action => "storno" } ], + checks => [ 'kivi.validate_form' ], confirm => t8('Do you really want to cancel this invoice?'), disabled => !$form->{id} ? t8('This invoice has not been posted yet.') : undef, ], action => [ t8('Delete'), submit => [ '#form', { action => "delete" } ], + checks => [ 'kivi.validate_form' ], confirm => t8('Do you really want to delete this object?'), disabled => !$form->{id} ? t8('This invoice has not been posted yet.') : $form->{locked} ? t8('The billing period has already been locked.') @@ -273,6 +279,16 @@ sub setup_ir_action_bar { 'separator', + combobox => [ + action => [ t8('Workflow') ], + action => [ + t8('Use As New'), + submit => [ '#form', { action => "use_as_new" } ], + checks => [ 'kivi.validate_form' ], + disabled => !$form->{id} ? t8('This invoice has not been posted yet.') : undef, + ], + ], # end of combobox "Workflow" + combobox => [ action => [ t8('more') ], action => [ @@ -295,6 +311,7 @@ sub setup_ir_action_bar { ], # end of combobox "more" ); } + $::request->layout->add_javascripts('kivi.Validator.js'); } sub form_header { @@ -312,8 +329,11 @@ sub form_header { $TMPL_VAR{invoice_obj} = SL::DB::PurchaseInvoice->load_cached($form->{id}) if $form->{id}; $TMPL_VAR{vendor_obj} = SL::DB::Vendor->load_cached($form->{vendor_id}) if $form->{vendor_id}; - $form->{employee_id} = $form->{old_employee_id} if $form->{old_employee_id}; - $form->{salesman_id} = $form->{old_salesman_id} if $form->{old_salesman_id}; + my $current_employee = SL::DB::Manager::Employee->current; + $form->{employee_id} = $form->{old_employee_id} if $form->{old_employee_id}; + $form->{salesman_id} = $form->{old_salesman_id} if $form->{old_salesman_id}; + $form->{employee_id} ||= $current_employee->id; + $form->{salesman_id} ||= $current_employee->id; $form->{defaultcurrency} = $form->get_default_currency(\%myconfig); @@ -377,7 +397,7 @@ sub form_header { $TMPL_VAR{payment_terms_obj} = get_payment_terms_for_invoice(); $form->{duedate} = $TMPL_VAR{payment_terms_obj}->calc_date(reference_date => $form->{invdate}, due_date => $form->{duedate})->to_kivitendo if $TMPL_VAR{payment_terms_obj}; - $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.Draft kivi.File kivi.SalesPurchase kivi.Part ckeditor/ckeditor ckeditor/adapters/jquery kivi.io autocomplete_customer autocomplete_project client_js)); + $::request->{layout}->use_javascript(map { "${_}.js" } qw(kivi.Draft kivi.File kivi.SalesPurchase kivi.Part kivi.CustomerVendor kivi.Validator ckeditor/ckeditor ckeditor/adapters/jquery kivi.io autocomplete_project client_js)); setup_ir_action_bar(); @@ -866,6 +886,8 @@ sub post { $form->{callback} = 'ir.pl?action=add'; $form->redirect( $locale->text('Invoice') . " $form->{invnumber} " + . ", " . $locale->text('ID') + . ': ' . $form->{id} . ' ' . $locale->text('posted!')); } $form->error($locale->text('Cannot post invoice!'));