use SL::IS;
use SL::DN;
+use SL::DB::Department;
use SL::DB::Dunning;
use SL::Helper::Flash qw(flash);
use SL::Locale::String qw(t8);
$form->{title} = $locale->text('Edit Dunning Process Config');
$form->{callback} ||= build_std_url("action=edit_config");
+ setup_dn_edit_config_action_bar();
+
$form->header();
print $form->parse_html_template("dunning/edit_config");
$main::auth->assert('dunning_edit');
- # setup customer selection
- $form->all_vc(\%myconfig, "customer", "AR");
-
DN->get_config(\%myconfig, \%$form);
- $form->{SHOW_CUSTOMER_SELECTION} = $form->{all_customer} && scalar @{ $form->{all_customer} };
$form->{SHOW_DUNNING_LEVEL_SELECTION} = $form->{DUNNING} && scalar @{ $form->{DUNNING} };
$form->{SHOW_DEPARTMENT_SELECTION} = $form->{all_departments} && scalar @{ $form->{all_departments} || [] };
$form->{title} = $locale->text('Start Dunning Process');
+
+ setup_dn_add_action_bar();
$form->header();
print $form->parse_html_template("dunning/add");
'no_html' => 1,
'no_opendocument' => 1,);
- $::request->layout->add_javascripts("kivi.Dunning.js");
+ setup_dn_show_invoices_action_bar();
$form->header();
print $form->parse_html_template("dunning/show_invoices");
DN->get_config(\%myconfig, \%$form);
- $form->{SHOW_CUSTOMER_DDBOX} = scalar @{ $form->{ALL_CUSTOMERS} } <= $myconfig{vclimit};
- $form->{SHOW_DEPARTMENT_DDBOX} = scalar @{ $form->{ALL_CUSTOMERS} };
$form->{SHOW_DUNNING_LEVELS} = scalar @{ $form->{DUNNING} };
$form->{title} = $locale->text('Dunnings');
+ setup_dn_search_action_bar();
$form->header();
print $form->parse_html_template("dunning/search");
$report->set_options_from_form();
- $::request->layout->add_javascripts("kivi.Dunning.js");
+ setup_dn_show_dunning_action_bar();
$report->generate_with_headers();
$main::lxdebug->leave_sub();
$::form->error($::locale->text('No action defined.'));
}
+
+sub setup_dn_add_action_bar {
+ my %params = @_;
+
+ for my $bar ($::request->layout->get('actionbar')) {
+ $bar->add(
+ action => [
+ t8('Search'),
+ submit => [ '#form', { action => "show_invoices" } ],
+ accesskey => 'enter',
+ ],
+ );
+ }
+}
+
+sub setup_dn_show_invoices_action_bar {
+ my %params = @_;
+
+ for my $bar ($::request->layout->get('actionbar')) {
+ $bar->add(
+ action => [
+ t8('Create'),
+ submit => [ '#form', { action => "save_dunning" } ],
+ checks => [ [ 'kivi.check_if_entries_selected', '[name^=active_]' ] ],
+ accesskey => 'enter',
+ only_once => 1,
+ ],
+ );
+ }
+}
+
+sub setup_dn_search_action_bar {
+ my %params = @_;
+
+ for my $bar ($::request->layout->get('actionbar')) {
+ $bar->add(
+ action => [
+ t8('Search'),
+ submit => [ '#form', { action => "show_dunning" } ],
+ accesskey => 'enter',
+ ],
+ );
+ }
+}
+
+sub setup_dn_show_dunning_action_bar {
+ my %params = @_;
+
+ for my $bar ($::request->layout->get('actionbar')) {
+ $bar->add(
+ action => [
+ t8('Print'),
+ submit => [ '#form', { action => "print_multiple" } ],
+ checks => [ [ 'kivi.check_if_entries_selected', '[name^=selected_]' ] ],
+ accesskey => 'enter',
+ ],
+
+ action => [
+ t8('Delete'),
+ submit => [ '#form', { action => "delete" } ],
+ checks => [ [ 'kivi.check_if_entries_selected', '[name^=selected_]' ] ],
+ confirm => $::locale->text('This resets the dunning process for the selected invoices. Posted dunning invoices will not be changed!'),
+ ],
+ );
+ }
+}
+
+sub setup_dn_edit_config_action_bar {
+ my %params = @_;
+
+ for my $bar ($::request->layout->get('actionbar')) {
+ $bar->add(
+ action => [
+ t8('Save'),
+ submit => [ '#form', { action => "save" } ],
+ accesskey => 'enter',
+ ],
+ );
+ }
+}
+
# end of main