+|;
+ }
+
+ print qq|
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td><hr size=3 noshade></td>
+ </tr>
+</table>
+
+<br>
+<form method=post action=$form->{script}>
+
+<input name=callback type=hidden value="$form->{callback}">
+
+<input type=hidden name=type value=printer>
+
+<input type=hidden name=login value=$form->{login}>
+<input type=hidden name=password value=$form->{password}>
+
+<input class=submit type=submit name=action value="|
+ . $locale->text('Add') . qq|">
+
+ </form>
+
+ </body>
+ </html>
+|;
+
+ $lxdebug->leave_sub();
+}
+
+sub printer_header {
+ $lxdebug->enter_sub();
+
+ $form->{title} = $locale->text("$form->{title} Printer");
+
+ # $locale->text('Add Printer')
+ # $locale->text('Edit Printer')
+
+ $form->{printer_description} =~ s/\"/"/g;
+ $form->{template_code} =~ s/\"/"/g;
+ $form->{printer_command} =~ s/\"/"/g;
+
+
+ $form->header;
+
+ print qq|
+<body>
+
+<form method=post action=$form->{script}>
+
+<input type=hidden name=id value=$form->{id}>
+<input type=hidden name=type value=printer>
+
+<table width=100%>
+ <tr>
+ <th class=listtop colspan=2>$form->{title}</th>
+ </tr>
+ <tr height="5"></tr>
+ <tr>
+ <th align=right>| . $locale->text('Printer') . qq|</th>
+ <td><input name=printer_description size=30 value="$form->{printer_description}"></td>
+ <tr>
+ <tr>
+ <th align=right>| . $locale->text('Printer Command') . qq|</th>
+ <td><input name=printer_command size=30 value="$form->{printer_command}"></td>
+ </tr>
+ <tr>
+ <th align=right>| . $locale->text('Template Code') . qq|</th>
+ <td><input name=template_code size=5 value="$form->{template_code}"></td>
+ </tr>
+ <td colspan=2><hr size=3 noshade></td>
+ </tr>
+</table>
+|;
+
+ $lxdebug->leave_sub();
+}
+
+sub save_printer {
+ $lxdebug->enter_sub();
+
+ $form->isblank("printer_description", $locale->text('Description missing!'));
+ $form->isblank("printer_command", $locale->text('Printer Command missing!'));
+ AM->save_printer(\%myconfig, \%$form);
+ $form->redirect($locale->text('Printer saved!'));
+
+ $lxdebug->leave_sub();
+}
+
+sub delete_printer {
+ $lxdebug->enter_sub();
+
+ AM->delete_printer(\%myconfig, \%$form);
+ $form->redirect($locale->text('Printer deleted!'));
+
+ $lxdebug->leave_sub();
+}
+
+sub add_payment {
+ $lxdebug->enter_sub();
+
+ $form->{title} = "Add";
+
+ $form->{callback} =
+ "$form->{script}?action=add_payment&login=$form->{login}&password=$form->{password}"
+ unless $form->{callback};
+
+ $form->{terms_netto} = 0;
+ $form->{terms_skonto} = 0;
+ $form->{percent_skonto} = 0;
+ my @languages = AM->language(\%myconfig, $form, 1);
+ map({ $_->{"language"} = $_->{"description"};
+ $_->{"language_id"} = $_->{"id"}; } @languages);
+ $form->{"TRANSLATION"} = \@languages;
+ &payment_header;
+ &form_footer;
+
+ $lxdebug->leave_sub();
+}
+
+sub edit_payment {
+ $lxdebug->enter_sub();
+
+ $form->{title} = "Edit";
+
+ AM->get_payment(\%myconfig, $form);
+ $form->{percent_skonto} =
+ $form->format_amount(\%myconfig, $form->{percent_skonto} * 100);
+
+ &payment_header;
+
+ $form->{orphaned} = 1;
+ &form_footer;
+
+ $lxdebug->leave_sub();
+}
+
+sub list_payment {
+ $lxdebug->enter_sub();
+
+ AM->payment(\%myconfig, \%$form);
+
+ $form->{callback} = build_std_url("action=list_payment");
+
+ $callback = $form->escape($form->{callback});
+
+ $form->{title} = $locale->text('Payment Terms');
+
+ @column_index = qw(up down description description_long terms_netto
+ terms_skonto percent_skonto);
+
+ $column_header{up} =
+ qq|<th class="listheading" align="center" valign="center" width="16">|
+ . qq|<img src="image/up.png" alt="| . $locale->text("up") . qq|">|
+ . qq|</th>|;
+ $column_header{down} =
+ qq|<th class="listheading" align="center" valign="center" width="16">|
+ . qq|<img src="image/down.png" alt="| . $locale->text("down") . qq|">|
+ . qq|</th>|;
+ $column_header{description} =
+ qq|<th class=listheading>|
+ . $locale->text('Description')
+ . qq|</th>|;
+ $column_header{description_long} =
+ qq|<th class=listheading>|
+ . $locale->text('Long Description')
+ . qq|</th>|;
+ $column_header{terms_netto} =
+ qq|<th class=listheading>|
+ . $locale->text('Netto Terms')
+ . qq|</th>|;
+ $column_header{terms_skonto} =
+ qq|<th class=listheading>|
+ . $locale->text('Skonto Terms')
+ . qq|</th>|;
+ $column_header{percent_skonto} =
+ qq|<th class=listheading>|
+ . $locale->text('Skonto')
+ . qq| %</th>|;
+
+ $form->header;
+
+ print qq|
+<body>
+
+<table width=100%>
+ <tr>
+ <th class=listtop>$form->{title}</th>
+ </tr>
+ <tr height="5"></tr>
+ <tr>
+ <td>
+ <table width=100%>
+ <tr class=listheading>
+|;
+
+ map { print "$column_header{$_}\n" } @column_index;
+
+ print qq|
+ </tr>
+|;
+
+ my $swap_link = build_std_url("action=swap_payment_terms");
+
+ my $row = 0;
+ foreach $ref (@{ $form->{ALL} }) {
+
+ $i++;
+ $i %= 2;
+
+ print qq|
+ <tr valign=top class=listrow$i>
+|;
+
+ if ($row) {
+ my $pref = $form->{ALL}->[$row - 1];
+ $column_data{up} =
+ qq|<td align="center" valign="center" width="16">| .
+ qq|<a href="${swap_link}&id1=$ref->{id}&id2=$pref->{id}">| .
+ qq|<img border="0" src="image/up.png" alt="| . $locale->text("up") . qq|">| .
+ qq|</a></td>|;
+ } else {
+ $column_data{up} = qq|<td width="16"> </td>|;
+ }
+
+ if ($row == (scalar(@{ $form->{ALL} }) - 1)) {
+ $column_data{down} = qq|<td width="16"> </td>|;
+ } else {
+ my $nref = $form->{ALL}->[$row + 1];
+ $column_data{down} =
+ qq|<td align="center" valign="center" width="16">| .
+ qq|<a href="${swap_link}&id1=$ref->{id}&id2=$nref->{id}">| .
+ qq|<img border="0" src="image/down.png" alt="| . $locale->text("down") . qq|">| .
+ qq|</a></td>|;
+ }
+
+ $column_data{description} =
+ qq|<td><a href="| .
+ build_std_url("action=edit_payment", "id=$ref->{id}", "callback=$callback") .
+ qq|">| . H($ref->{description}) . qq|</a></td>|;
+ $column_data{description_long} =
+ qq|<td>| . H($ref->{description_long}) . qq|</td>|;
+ $column_data{terms_netto} =
+ qq|<td align=right>$ref->{terms_netto}</td>|;
+ $column_data{terms_skonto} =
+ qq|<td align=right>$ref->{terms_skonto}</td>|;
+ $column_data{percent_skonto} =
+ qq|<td align=right>| .
+ $form->format_amount(\%myconfig, $ref->{percent_skonto} * 100) .
+ qq|%</td>|;
+ map { print "$column_data{$_}\n" } @column_index;
+
+ print qq|