sub header {
$main::lxdebug->enter_sub();
- my ($self) = @_;
+ my ($self, $extra_code) = @_;
if ($self->{header}) {
$main::lxdebug->leave_sub();
|;
}
+ $self->{favicon} = "favicon.ico" unless $self->{favicon};
+
if ($self->{favicon} && (-f "$self->{favicon}")) {
$favicon =
qq|<LINK REL="shortcut icon" HREF="$self->{favicon}" TYPE="image/x-icon">
</script>
+ $extra_code
</head>
|;
$self->{"notes"} = $self->{ $self->{"formname"} . "notes" };
map({ $self->{"employee_${_}"} = $myconfig->{$_}; }
- qw(email tel fax name signature company address businessnumber));
+ qw(email tel fax name signature company address businessnumber
+ co_ustid taxnumber duns));
+ map({ $self->{"employee_${_}"} =~ s/\\n/\n/g; }
+ qw(company address signature));
$self->{copies} = 1 if (($self->{copies} *= 1) <= 0);
}
close(OUT);
-
- use Data::Dumper;
- #print(STDERR Dumper($self));
if ($template->uses_temp_file() || $self->{media} eq 'email') {
} else {
- @{ $mail->{attachments} } = ($self->{tmpfile}) unless ($form->{do_not_attach});
+ @{ $mail->{attachments} } = ($self->{tmpfile}) unless ($self->{do_not_attach});
$mail->{message} =~ s/\r\n/\n/g;
$myconfig->{signature} =~ s/\\n/\n/g;
$self->{payment_terms} =~ s/<%netto_date%>/$self->{netto_date}/g;
$self->{payment_terms} =~ s/<%skonto_date%>/$self->{skonto_date}/g;
$self->{payment_terms} =~ s/<%skonto_amount%>/$self->{skonto_amount}/g;
+ $self->{payment_terms} =~ s/<%total%>/$self->{total}/g;
+ $self->{payment_terms} =~ s/<%invtotal%>/$self->{invtotal}/g;
+ $self->{payment_terms} =~ s/<%currency%>/$self->{currency}/g;
+ $self->{payment_terms} =~ s/<%terms_netto%>/$self->{terms_netto}/g;
+ $self->{payment_terms} =~ s/<%account_number%>/$self->{account_number}/g;
+ $self->{payment_terms} =~ s/<%bank%>/$self->{bank}/g;
+ $self->{payment_terms} =~ s/<%bank_code%>/$self->{bank_code}/g;
$dbh->disconnect;
}
my $sth = $dbh->prepare($query);
$sth->execute || $self->dberror($query);
$ref = $sth->fetchrow_hashref(NAME_lc);
- map { $form->{$_} = $ref->{$_} } keys %$ref;
+ map { $self->{$_} = $ref->{$_} } keys %$ref;
$sth->finish;
$dbh->disconnect;
}
$main::lxdebug->leave_sub();
}
+sub get_duedate {
+ $main::lxdebug->enter_sub();
+
+ my ($self, $myconfig) = @_;
+
+ my $dbh = $self->dbconnect($myconfig);
+ my $query = qq|SELECT current_date+terms_netto FROM payment_terms
+ WHERE id = '$self->{payment_id}'|;
+ my $sth = $dbh->prepare($query);
+ $sth->execute || $self->dberror($query);
+
+ ($self->{duedate}) = $sth->fetchrow_array;
+
+ $sth->finish;
+
+ $main::lxdebug->leave_sub();
+}
+
# get other contact for transaction and form - html/tex
sub get_contact {
$main::lxdebug->enter_sub();
FROM language
ORDER BY 1|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{languages} }, $ref;
FROM printers
ORDER BY 1|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{printers} }, $ref;
FROM payment_terms
ORDER BY 1|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{payment_terms} }, $ref;
FROM language
ORDER BY 1|;
my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{languages} }, $ref;
FROM printers
ORDER BY 1|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{printers} }, $ref;
FROM payment_terms
ORDER BY 1|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
push @{ $self->{payment_terms} }, $ref;
$query = qq|SELECT id, description
FROM buchungsgruppen|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
$self->{BUCHUNGSGRUPPEN} = [];
while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
$query = qq|SELECT id, description
FROM tax_zones|;
$sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth->execute || $self->dberror($query);
while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
return ($yy, $mm, $dd);
}
+sub reformat_date {
+ $main::lxdebug->enter_sub();
+
+ my ($self, $myconfig, $date, $output_format, $longformat) = @_;
+
+ $main::lxdebug->leave_sub() and return "" unless ($date);
+
+ my ($yy, $mm, $dd) = $self->parse_date($myconfig, $date);
+
+ $output_format =~ /d+/;
+ substr($output_format, $-[0], $+[0] - $-[0]) =
+ sprintf("%0" . (length($&)) . "d", $dd);
+
+ $output_format =~ /m+/;
+ substr($output_format, $-[0], $+[0] - $-[0]) =
+ sprintf("%0" . (length($&)) . "d", $mm);
+
+ $output_format =~ /y+/;
+ if (length($&) == 2) {
+ $yy -= $yy >= 2000 ? 2000 : 1900;
+ }
+ substr($output_format, $-[0], $+[0] - $-[0]) =
+ sprintf("%0" . (length($&)) . "d", $yy);
+
+ $main::lxdebug->leave_sub();
+
+ return $output_format;
+}
+
1;