Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 9c8d0637

Von Sven Schöling vor mehr als 9 Jahren hinzugefügt

  • ID 9c8d0637fda107ec6d4a35ae52802ee2d1cb9eb3
  • Vorgänger e24e6570
  • Nachfolger 01678c87

Mahnungen löschen

Unterschiede anzeigen:

bin/mozilla/dn.pl
36 36
use SL::IS;
37 37
use SL::PE;
38 38
use SL::DN;
39
use SL::DB::Dunning;
40
use SL::Helper::Flash;
41
use SL::Locale::String qw(t8);
39 42
use SL::ReportGenerator;
40 43

  
41 44
require "bin/mozilla/common.pl";
......
473 476
  $main::lxdebug->leave_sub();
474 477
}
475 478

  
479
sub delete {
480
  $main::auth->assert('dunning_edit');
481

  
482
  my @dunning_ids = map { $::form->{"dunning_id_$_"} } grep { $::form->{"selected_$_"} } (1..$::form->{rowcount});
483

  
484
  if (!scalar @dunning_ids) {
485
    $::form->error($::locale->text('No dunnings have been selected for printing.'));
486
  }
487

  
488
  my $dunnings = SL::DB::Manager::Dunning->get_all(query => [ dunning_id => \@dunning_ids ]);
489

  
490
  SL::DB::Dunning->new->db->with_transaction(sub {
491
    for my $dunning (@$dunnings) {
492
      SL::DB::Manager::Invoice->find_by(id => $dunning->trans_id)->update_attributes(dunning_config_id => undef);
493
      $dunning->delete;
494
    }
495
  });
496

  
497
  flash('info', t8('#1 dunnings have been deleted', scalar @$dunnings));
498

  
499
  search();
500
}
501

  
476 502
sub print_multiple {
477 503
  $main::lxdebug->enter_sub();
478 504

  
......
526 552
  call_sub($main::form->{nextsub});
527 553
}
528 554

  
555
sub dispatcher {
556
  foreach my $action (qw(delete print_multiple)) {
557
    if ($::form->{"action_${action}"}) {
558
      call_sub($action);
559
      return;
560
    }
561
  }
562

  
563
  $::form->error($::locale->text('No action defined.'));
564
}
529 565
# end of main
locale/de/all
17 17
  '#1 (custom variable)'        => '#1 (benutzerdefinierte Variable)',
18 18
  '#1 MD'                       => '#1 PT',
19 19
  '#1 additional part(s)'       => '#1 zusätzliche(r) Artikel',
20
  '#1 dunnings have been deleted' => '#1 Mahnung(en) wurden gelöscht',
20 21
  '#1 h'                        => '#1 h',
21 22
  '#1 of #2 importable objects were imported.' => '#1 von #2 importierbaren Objekten wurden importiert.',
22 23
  '#1 prices were updated.'     => '#1 Preise wurden aktualisiert.',
......
2931 2932
  'This requirement spec is currently linked to the following project:' => 'Dieses Pflichtenheft ist mit dem folgenden Projekt verknüpft:',
2932 2933
  'This requirement spec is currently not linked to a project.' => 'Dieses Pflichtenheft ist noch nicht mit einem Projekt verknüpft.',
2933 2934
  'This requires you to manually correct entries for which an automatic conversion failed and to check those for which it succeeded.' => 'Dies erfordert, dass Sie diejenigen Einträge manuell korrigieren, für die die automatische Umstellung fehlschlug, sowie dass Sie diejenigen überprüfen, für die die Umstellung erfolgreich war.',
2935
  'This resets the dunning process for the selected invoices. Posted dunning invoices will not be changed!' => 'Hiermit wird der Mahnprozess für die ausgewählten Rechnungen zurückgesetzt. Bereits gebuchte Rechnungen über Mahngebühren werden nicht geändert!',
2934 2936
  'This sales order has an active configuration for periodic invoices. If you save then all subsequently created invoices will contain those changes as well, but not those that have already been created. Do you want to continue?' => 'Dieser Auftrag besitzt eine aktive Konfiguration für wiederkehrende Rechnungen. Wenn Sie jetzt speichern, so werden alle zukünftig hieraus erzeugten Rechnungen die Änderungen enthalten, nicht aber die bereits erzeugten Rechnungen. Wollen Sie speichern?',
2935 2937
  'This status output will be refreshed every five seconds.' => 'Diese Statusausgabe wird alle fünf Sekunden aktualisiert.',
2936 2938
  'This transaction has to be split into several transactions manually.' => 'Diese Buchung muss manuell in mehrere Buchungen aufgeteilt werden.',
templates/webpages/dunning/search.html
3 3
[%- USE L %]
4 4
<h1>[% title %]</h1>
5 5

  
6
 <script type="text/javascript" src="js/common.js"></script>
6
[% PROCESS 'common/flash.html' %]
7 7

  
8 8
 <form method="post" name="search" action="dn.pl">
9 9

  
templates/webpages/dunning/show_dunning_bottom.html
1 1
[%- USE T8 %]
2
[% USE HTML %]  <input type="hidden" name="rowcount" value="[% rowcount %]">
2
[%- USE HTML %]
3
[%- USE LxERP %]
4
[%- USE L %]
5
<input type="hidden" name="rowcount" value="[% rowcount %]">
3 6

  
4 7
  <p>
5 8
    <input type="checkbox" id='force_lang' name="force_lang" size="6" value="1">
......
9 12

  
10 13
  <p>
11 14
   [% 'Dunnings' | $T8 %]<br>
12
   <input type="hidden" name="print_nextsub" value="print_multiple">
13
   <input type="hidden" name="action" value="print">
14
   <input type="submit" class="submit" value="[%- 'Print' | $T8 %]">
15
   [% L.hidden_tag('action', 'dispatcher') %]
16
   <input type="submit" class="submit" name='action_print_multiple' value="[%- 'Print' | $T8 %]">
17
   [% L.submit_tag('action_delete', LxERP.t8('Delete'), confirm=LxERP.t8('This resets the dunning process for the selected invoices. Posted dunning invoices will not be changed!')) %]
15 18
  </p>
16 19

  
17 20
 </form>

Auch abrufbar als: Unified diff