summaryrefslogtreecommitdiff
path: root/LedgerSMB/AM.pm
diff options
context:
space:
mode:
authoreinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-04-12 20:46:20 +0000
committereinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-04-12 20:46:20 +0000
commitdf073d6e09c0f87fb2e88cc215ace843a5851d4a (patch)
tree1c15ce909d3e0353b21bbd909e6720fd485a3a53 /LedgerSMB/AM.pm
parent65458125b8f3814fd6ef4d07b55ab69f62f5a528 (diff)
Formatting with Perltidy
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/branches/1.2@1068 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 'LedgerSMB/AM.pm')
-rwxr-xr-xLedgerSMB/AM.pm1938
1 files changed, 973 insertions, 965 deletions
diff --git a/LedgerSMB/AM.pm b/LedgerSMB/AM.pm
index c395a0a8..6c307e07 100755
--- a/LedgerSMB/AM.pm
+++ b/LedgerSMB/AM.pm
@@ -1,8 +1,8 @@
#=====================================================================
-# LedgerSMB
+# LedgerSMB
# Small Medium Business Accounting software
# http://www.ledgersmb.org/
-#
+#
# Copyright (C) 2006
# This work contains copyrighted information from a number of sources all used
# with permission.
@@ -40,25 +40,25 @@ use LedgerSMB::Sysconfig;
sub get_account {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my $dbh = $form->{dbh};
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT accno, description, charttype, gifi_accno,
category, link, contra
FROM chart
WHERE id = ?|;
- my $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
- $sth->finish;
+ my $ref = $sth->fetchrow_hashref(NAME_lc);
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
+ $sth->finish;
- # get default accounts
- $query = qq|
+ # get default accounts
+ $query = qq|
SELECT (SELECT value FROM defaults
WHERE setting_key = 'inventory_accno_id')
AS inventory_accno_id,
@@ -75,77 +75,71 @@ sub get_account {
WHERE setting_key = 'fxloss_accno_id')
AS fxloss_accno_id|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- $ref = $sth->fetchrow_hashref(NAME_lc);
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
- $sth->finish;
+ $ref = $sth->fetchrow_hashref(NAME_lc);
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
+ $sth->finish;
- # check if we have any transactions
- $query = qq|
+ # check if we have any transactions
+ $query = qq|
SELECT trans_id
FROM acc_trans
WHERE chart_id = ?
LIMIT 1|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
- ($form->{orphaned}) = $sth->fetchrow_array();
- $form->{orphaned} = !$form->{orphaned};
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
+ ( $form->{orphaned} ) = $sth->fetchrow_array();
+ $form->{orphaned} = !$form->{orphaned};
- $dbh->commit;
+ $dbh->commit;
}
-
sub save_account {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database, turn off AutoCommit
- my $dbh = $form->{dbh};
-
- $form->{link} = "";
- foreach my $item ($form->{AR},
- $form->{AR_amount},
- $form->{AR_tax},
- $form->{AR_paid},
- $form->{AP},
- $form->{AP_amount},
- $form->{AP_tax},
- $form->{AP_paid},
- $form->{IC},
- $form->{IC_income},
- $form->{IC_sale},
- $form->{IC_expense},
- $form->{IC_cogs},
- $form->{IC_taxpart},
- $form->{IC_taxservice}) {
- $form->{link} .= "${item}:" if ($item);
- }
-
- chop $form->{link};
-
- # strip blanks from accno
- for (qw(accno gifi_accno)) { $form->{$_} =~ s/( |')//g }
-
- foreach my $item (qw(accno gifi_accno description)) {
- $form->{$item} =~ s/-(-+)/-/g;
- $form->{$item} =~ s/ ( )+/ /g;
- }
-
- my $query;
- my $sth;
-
- $form->{contra} *= 1;
-
- my @queryargs;
- @queryargs = ($form->{accno}, $form->{description},
- $form->{charttype}, $form->{gifi_accno},
- $form->{category}, $form->{"link"},
- $form->{contra});
- # if we have an id then replace the old record
- if ($form->{id}) {
- $query = qq|
+ my ( $self, $myconfig, $form ) = @_;
+
+ # connect to database, turn off AutoCommit
+ my $dbh = $form->{dbh};
+
+ $form->{link} = "";
+ foreach my $item (
+ $form->{AR}, $form->{AR_amount}, $form->{AR_tax},
+ $form->{AR_paid}, $form->{AP}, $form->{AP_amount},
+ $form->{AP_tax}, $form->{AP_paid}, $form->{IC},
+ $form->{IC_income}, $form->{IC_sale}, $form->{IC_expense},
+ $form->{IC_cogs}, $form->{IC_taxpart}, $form->{IC_taxservice}
+ )
+ {
+ $form->{link} .= "${item}:" if ($item);
+ }
+
+ chop $form->{link};
+
+ # strip blanks from accno
+ for (qw(accno gifi_accno)) { $form->{$_} =~ s/( |')//g }
+
+ foreach my $item (qw(accno gifi_accno description)) {
+ $form->{$item} =~ s/-(-+)/-/g;
+ $form->{$item} =~ s/ ( )+/ /g;
+ }
+
+ my $query;
+ my $sth;
+
+ $form->{contra} *= 1;
+
+ my @queryargs;
+ @queryargs = (
+ $form->{accno}, $form->{description}, $form->{charttype},
+ $form->{gifi_accno}, $form->{category}, $form->{"link"},
+ $form->{contra}
+ );
+
+ # if we have an id then replace the old record
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE chart SET accno = ?,
description = ?,
charttype = ?,
@@ -154,102 +148,104 @@ sub save_account {
link = ?,
contra = ?
WHERE id = ?|;
- push @queryargs, $form->{id};
- } else {
- $query = qq|
+ push @queryargs, $form->{id};
+ }
+ else {
+ $query = qq|
INSERT INTO chart
(accno, description, charttype,
gifi_accno, category, link, contra)
VALUES (?, ?, ?, ?, ?, ?, ?)|;
- }
+ }
+
+ $sth = $dbh->prepare($query);
+ $sth->execute(@queryargs) || $form->dberror($query);
+ $sth->finish;
- $sth = $dbh->prepare($query);
- $sth->execute(@queryargs) || $form->dberror($query);
- $sth->finish;
+ $chart_id = $dbh->quote( $form->{id} );
- $chart_id = $dbh->quote($form->{id});
+ if ( !$form->{id} ) {
- if (! $form->{id}) {
- # get id from chart
- $query = qq|
+ # get id from chart
+ $query = qq|
SELECT id
FROM chart
WHERE accno = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{accno});
- ($chart_id) = $sth->fetchrow_array();
- $sth->finish;
- }
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{accno} );
+ ($chart_id) = $sth->fetchrow_array();
+ $sth->finish;
+ }
- if ($form->{IC_taxpart} || $form->{IC_taxservice} || $form->{AR_tax} || $form->{AP_tax}) {
+ if ( $form->{IC_taxpart}
+ || $form->{IC_taxservice}
+ || $form->{AR_tax}
+ || $form->{AP_tax} )
+ {
- # add account if it doesn't exist in tax
- $query = qq|SELECT chart_id
+ # add account if it doesn't exist in tax
+ $query = qq|SELECT chart_id
FROM tax
WHERE chart_id = $chart_id|;
- my ($tax_id) = $dbh->selectrow_array($query);
+ my ($tax_id) = $dbh->selectrow_array($query);
- # add tax if it doesn't exist
- unless ($tax_id) {
- $query = qq|INSERT INTO tax (chart_id, rate)
+ # add tax if it doesn't exist
+ unless ($tax_id) {
+ $query = qq|INSERT INTO tax (chart_id, rate)
VALUES ($chart_id, 0)|;
- $dbh->do($query) || $form->dberror($query);
- }
+ $dbh->do($query) || $form->dberror($query);
+ }
- } else {
+ }
+ else {
- # remove tax
- if ($form->{id}) {
- $query = qq|DELETE FROM tax
+ # remove tax
+ if ( $form->{id} ) {
+ $query = qq|DELETE FROM tax
WHERE chart_id = $form->{id}|;
- $dbh->do($query) || $form->dberror($query);
- }
- }
+ $dbh->do($query) || $form->dberror($query);
+ }
+ }
- # commit
- my $rc = $dbh->commit;
+ # commit
+ my $rc = $dbh->commit;
- $rc;
+ $rc;
}
-
-
sub delete_account {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database, turn off AutoCommit
- my $dbh = $form->{dbh};
- my $sth;
- my $query = qq|
+ # connect to database, turn off AutoCommit
+ my $dbh = $form->{dbh};
+ my $sth;
+ my $query = qq|
SELECT count(*)
FROM acc_trans
WHERE chart_id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
- my ($rowcount) = $sth->fetchrow_array();
-
- if ($rowcount) {
- $form->error(
- "Cannot delete accounts with associated transactions!"
- );
- }
-
-
- # delete chart of account record
- $query = qq|
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
+ my ($rowcount) = $sth->fetchrow_array();
+
+ if ($rowcount) {
+ $form->error( "Cannot delete accounts with associated transactions!" );
+ }
+
+ # delete chart of account record
+ $query = qq|
DELETE FROM chart
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
- # set inventory_accno_id, income_accno_id, expense_accno_id to defaults
- $query = qq|
+ # set inventory_accno_id, income_accno_id, expense_accno_id to defaults
+ $query = qq|
UPDATE parts
SET inventory_accno_id = (SELECT value::int
FROM defaults
@@ -257,724 +253,711 @@ sub delete_account {
'inventory_accno_id')
WHERE inventory_accno_id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
- for (qw(income_accno_id expense_accno_id)){
- $query = qq|
+ for (qw(income_accno_id expense_accno_id)) {
+ $query = qq|
UPDATE parts
SET $_ = (SELECT value::int
FROM defaults
WHERE setting_key = '$_')
WHERE $_ = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
- $sth->finish;
- }
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
+ $sth->finish;
+ }
- foreach my $table (qw(partstax customertax vendortax tax)) {
- $query = qq|
+ foreach my $table (qw(partstax customertax vendortax tax)) {
+ $query = qq|
DELETE FROM $table
WHERE chart_id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
- $sth->finish;
- }
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
+ $sth->finish;
+ }
- # commit and redirect
- my $rc = $dbh->commit;
+ # commit and redirect
+ my $rc = $dbh->commit;
- $rc;
+ $rc;
}
-
sub gifi_accounts {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT accno, description
FROM gifi
ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
-
sub get_gifi {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
- my $sth;
+ # connect to database
+ my $dbh = $form->{dbh};
+ my $sth;
- my $query = qq|
+ my $query = qq|
SELECT accno, description
FROM gifi
WHERE accno = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{accno}) || $form->dberror($query);
- ($form->{accno}, $form->{description}) = $sth->fetchrow_array();
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{accno} ) || $form->dberror($query);
+ ( $form->{accno}, $form->{description} ) = $sth->fetchrow_array();
- $sth->finish;
+ $sth->finish;
- # check for transactions
- $query = qq|
+ # check for transactions
+ $query = qq|
SELECT count(*)
FROM acc_trans a
JOIN chart c ON (a.chart_id = c.id)
JOIN gifi g ON (c.gifi_accno = g.accno)
WHERE g.accno = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{accno}) || $form->dberror($query);
- ($numrows) = $sth->fetchrow_array;
- if (($numrows * 1) == 0){
- $form->{orphaned} = 1;
- } else {
- $form->{orphaned} = 0;
- }
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{accno} ) || $form->dberror($query);
+ ($numrows) = $sth->fetchrow_array;
+ if ( ( $numrows * 1 ) == 0 ) {
+ $form->{orphaned} = 1;
+ }
+ else {
+ $form->{orphaned} = 0;
+ }
- $dbh->commit;
+ $dbh->commit;
}
-
sub save_gifi {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
+
+ my $dbh = $form->{dbh};
- my $dbh = $form->{dbh};
+ $form->{accno} =~ s/( |')//g;
- $form->{accno} =~ s/( |')//g;
+ foreach my $item (qw(accno description)) {
+ $form->{$item} =~ s/-(-+)/-/g;
+ $form->{$item} =~ s/ ( )+/ /g;
+ }
- foreach my $item (qw(accno description)) {
- $form->{$item} =~ s/-(-+)/-/g;
- $form->{$item} =~ s/ ( )+/ /g;
- }
+ my @queryargs = ( $form->{accno}, $form->{description} );
- my @queryargs = ($form->{accno}, $form->{description});
- # id is the old account number!
- if ($form->{id}) {
- $query = qq|
+ # id is the old account number!
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE gifi
SET accno = ?,
description = ?
WHERE accno = ?|;
- push @queryargs, $form->{id};
+ push @queryargs, $form->{id};
- } else {
- $query = qq|
+ }
+ else {
+ $query = qq|
INSERT INTO gifi (accno, description)
VALUES (?, ?)|;
- }
+ }
- $sth = $dbh->prepare($query);
- $sth->execute(@queryargs) || $form->dberror;
- $sth->finish;
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute(@queryargs) || $form->dberror;
+ $sth->finish;
+ $dbh->commit;
}
-
sub delete_gifi {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- # id is the old account number!
- $query = qq|
+ # id is the old account number!
+ $query = qq|
DELETE FROM gifi
WHERE accno = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
- $sth->finish;
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
+ $sth->finish;
+ $dbh->commit;
}
-
sub warehouses {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->sort_order();
- my $query = qq|
+ $form->sort_order();
+ my $query = qq|
SELECT id, description
FROM warehouse
ORDER BY description $form->{direction}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub get_warehouse {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
- my $sth;
+ # connect to database
+ my $dbh = $form->{dbh};
+ my $sth;
- my $query = qq|
+ my $query = qq|
SELECT description
FROM warehouse
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id}) || $form->dberror($query);
- ($form->{description}) = $sth->fetchrow_array;
- $sth->finish;
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} ) || $form->dberror($query);
+ ( $form->{description} ) = $sth->fetchrow_array;
+ $sth->finish;
- # see if it is in use
- $query = qq|
+ # see if it is in use
+ $query = qq|
SELECT count(*)
FROM inventory
WHERE warehouse_id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
- ($form->{orphaned}) = $sth->fetchrow_array;
- if (($form->{orphaned} * 1) == 0){
- $form->{orphaned} = 1;
- } else {
- $form->{orphaned} = 0;
- }
+ ( $form->{orphaned} ) = $sth->fetchrow_array;
+ if ( ( $form->{orphaned} * 1 ) == 0 ) {
+ $form->{orphaned} = 1;
+ }
+ else {
+ $form->{orphaned} = 0;
+ }
- $dbh->commit;
+ $dbh->commit;
}
-
sub save_warehouse {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- my $sth;
- my @queryargs = ($form->{description});
+ my $sth;
+ my @queryargs = ( $form->{description} );
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
+ $form->{description} =~ s/-(-)+/-/g;
+ $form->{description} =~ s/ ( )+/ /g;
-
- if ($form->{id}) {
- $query = qq|
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE warehouse
SET description = ?
WHERE id = ?|;
- push @queryargs, $form->{id};
- } else {
- $query = qq|
+ push @queryargs, $form->{id};
+ }
+ else {
+ $query = qq|
INSERT INTO warehouse (description)
VALUES (?)|;
- }
+ }
- $sth = $dbh->prepare($query);
- $sth->execute(@queryargs) || $form->dberror($query);
- $sth->finish;
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute(@queryargs) || $form->dberror($query);
+ $sth->finish;
+ $dbh->commit;
}
-
sub delete_warehouse {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $query = qq|
+ $query = qq|
DELETE FROM warehouse
WHERE id = ?|;
- $dbh->prepare($query)->execute($form->{id}) || $form->dberror($query);
- $dbh->commit;
+ $dbh->prepare($query)->execute( $form->{id} ) || $form->dberror($query);
+ $dbh->commit;
}
-
-
sub departments {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->sort_order();
- my $query = qq|SELECT id, description, role
+ $form->sort_order();
+ my $query = qq|SELECT id, description, role
FROM department
ORDER BY description $form->{direction}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
-
sub get_department {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
- my $sth;
+ # connect to database
+ my $dbh = $form->{dbh};
+ my $sth;
- my $query = qq|
+ my $query = qq|
SELECT description, role
FROM department
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
- ($form->{description}, $form->{role}) = $sth->fetchrow_array;
- $sth->finish;
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
+ ( $form->{description}, $form->{role} ) = $sth->fetchrow_array;
+ $sth->finish;
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
- # see if it is in use
- $query = qq|
+ # see if it is in use
+ $query = qq|
SELECT count(*)
FROM dpt_trans
WHERE department_id = ? |;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
- ($form->{orphaned}) = $sth->fetchrow_array;
- if (($form->{orphaned} * 1) == 0){
- $form->{orphaned} = 1;
- } else {
- $form->{orphaned} = 0;
- }
-
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
+ ( $form->{orphaned} ) = $sth->fetchrow_array;
+ if ( ( $form->{orphaned} * 1 ) == 0 ) {
+ $form->{orphaned} = 1;
+ }
+ else {
+ $form->{orphaned} = 0;
+ }
+
+ $dbh->commit;
}
-
sub save_department {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
- my $sth;
- my @queryargs = ($form->{description}, $form->{role});
- if ($form->{id}) {
- $query = qq|
+ $form->{description} =~ s/-(-)+/-/g;
+ $form->{description} =~ s/ ( )+/ /g;
+ my $sth;
+ my @queryargs = ( $form->{description}, $form->{role} );
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE department
SET description = ?,
role = ?
WHERE id = ?|;
- push @queryargs, $form->{id};
+ push @queryargs, $form->{id};
- } else {
- $query = qq|
+ }
+ else {
+ $query = qq|
INSERT INTO department (description, role)
VALUES (?, ?)|;
- }
+ }
- $sth = $dbh->prepare($query);
- $sth->execute(@queryargs) || $form->dberror($query);
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute(@queryargs) || $form->dberror($query);
+ $dbh->commit;
}
-
sub delete_department {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $query = qq|
+ $query = qq|
DELETE FROM department
WHERE id = ?|;
- $dbh->prepare($query)->execute($form->{id});
- $dbh->commit;
+ $dbh->prepare($query)->execute( $form->{id} );
+ $dbh->commit;
}
-
sub business {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->sort_order();
- my $query = qq|
+ $form->sort_order();
+ my $query = qq|
SELECT id, description, discount
FROM business
ORDER BY description $form->{direction}|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub get_business {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT description, discount
FROM business
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($form->{id});
- ($form->{description}, $form->{discount}) = $sth->fetchrow_array();
- $dbh->commit;
+ $sth = $dbh->prepare($query);
+ $sth->execute( $form->{id} );
+ ( $form->{description}, $form->{discount} ) = $sth->fetchrow_array();
+ $dbh->commit;
}
-
sub save_business {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->{description} =~ s/-(-)+/-/g;
- $form->{description} =~ s/ ( )+/ /g;
- $form->{discount} /= 100;
+ $form->{description} =~ s/-(-)+/-/g;
+ $form->{description} =~ s/ ( )+/ /g;
+ $form->{discount} /= 100;
- my $sth;
- my @queryargs = ($form->{description}, $form->{discount});
+ my $sth;
+ my @queryargs = ( $form->{description}, $form->{discount} );
- if ($form->{id}) {
- $query = qq|
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE business
SET description = ?,
discount = ?
WHERE id = ?|;
- push @queryargs, $form->{id};
+ push @queryargs, $form->{id};
- } else {
- $query = qq|INSERT INTO business (description, discount)
+ }
+ else {
+ $query = qq|INSERT INTO business (description, discount)
VALUES (?, ?)|;
- }
+ }
- $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
- $dbh->commit;
+ $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
+ $dbh->commit;
}
-
sub delete_business {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $query = qq|
+ $query = qq|
DELETE FROM business
WHERE id = ?|;
- $dbh->prepare($query)->execute($form->{id}) || $form->dberror($query);
- $dbh->commit;
+ $dbh->prepare($query)->execute( $form->{id} ) || $form->dberror($query);
+ $dbh->commit;
}
-
sub sic {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->{sort} = "code" unless $form->{sort};
- my @a = qw(code description);
+ $form->{sort} = "code" unless $form->{sort};
+ my @a = qw(code description);
- my %ordinal = ( code => 1,
- description => 3 );
+ my %ordinal = (
+ code => 1,
+ description => 3
+ );
- my $sortorder = $form->sort_order(\@a, \%ordinal);
+ my $sortorder = $form->sort_order( \@a, \%ordinal );
- my $query = qq|SELECT code, sictype, description
+ my $query = qq|SELECT code, sictype, description
FROM sic
ORDER BY $sortorder|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub get_sic {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT code, sictype, description
FROM sic
- WHERE code = |.$dbh->quote($form->{code});
+ WHERE code = | . $dbh->quote( $form->{code} );
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
+ my $ref = $sth->fetchrow_hashref(NAME_lc);
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub save_sic {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- foreach my $item (qw(code description)) {
- $form->{$item} =~ s/-(-)+/-/g;
- }
- my $sth;
- @queryargs = ($form->{code}, $form->{sictype}, $form->{description});
- # if there is an id
- if ($form->{id}) {
- $query = qq|
+ foreach my $item (qw(code description)) {
+ $form->{$item} =~ s/-(-)+/-/g;
+ }
+ my $sth;
+ @queryargs = ( $form->{code}, $form->{sictype}, $form->{description} );
+
+ # if there is an id
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE sic
SET code = ?,
sictype = ?,
description = ?
WHERE code = ?)|;
- push @queryargs, $form->{id};
+ push @queryargs, $form->{id};
- } else {
- $query = qq|
+ }
+ else {
+ $query = qq|
INSERT INTO sic (code, sictype, description)
VALUES (?, ?, ?)|;
- }
+ }
- $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
- $dbh->commit;
+ $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
+ $dbh->commit;
}
-
sub delete_sic {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $query = qq|
+ $query = qq|
DELETE FROM sic
WHERE code = ?|;
- $dbh->prepare($query)->execute($form->{code});
- $dbh->commit;
+ $dbh->prepare($query)->execute( $form->{code} );
+ $dbh->commit;
}
-
sub language {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $form->{sort} = "code" unless $form->{sort};
- my @a = qw(code description);
+ $form->{sort} = "code" unless $form->{sort};
+ my @a = qw(code description);
- my %ordinal = ( code => 1,
- description => 2 );
+ my %ordinal = (
+ code => 1,
+ description => 2
+ );
- my $sortorder = $form->sort_order(\@a, \%ordinal);
+ my $sortorder = $form->sort_order( \@a, \%ordinal );
- my $query = qq|
+ my $query = qq|
SELECT code, description
FROM language
ORDER BY $sortorder|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{ALL} }, $ref;
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{ALL} }, $ref;
+ }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub get_language {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- ## needs fixing (SELECT *...)
- my $query = qq|
+ ## needs fixing (SELECT *...)
+ my $query = qq|
SELECT *
FROM language
WHERE code = ?|;
- my $sth = $dbh->prepare($query);
- $sth->execute($form->{code}) || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute( $form->{code} ) || $form->dberror($query);
- my $ref = $sth->fetchrow_hashref(NAME_lc);
+ my $ref = $sth->fetchrow_hashref(NAME_lc);
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
- $sth->finish;
- $dbh->commit;
+ $sth->finish;
+ $dbh->commit;
}
-
sub save_language {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
+
+ # connect to database
+ my $dbh = $form->{dbh};
- # connect to database
- my $dbh = $form->{dbh};
+ $form->{code} =~ s/ //g;
- $form->{code} =~ s/ //g;
+ foreach my $item (qw(code description)) {
+ $form->{$item} =~ s/-(-)+/-/g;
+ $form->{$item} =~ s/ ( )+/-/g;
+ }
+ my $sth;
+ my @queryargs = ( $form->{code}, $form->{description} );
- foreach my $item (qw(code description)) {
- $form->{$item} =~ s/-(-)+/-/g;
- $form->{$item} =~ s/ ( )+/-/g;
- }
- my $sth;
- my @queryargs = ($form->{code}, $form->{description});
- # if there is an id
- if ($form->{id}) {
- $query = qq|
+ # if there is an id
+ if ( $form->{id} ) {
+ $query = qq|
UPDATE language
SET code = ?,
description = ?
WHERE code = ?|;
- push @queryargs, $form->{id};
+ push @queryargs, $form->{id};
- } else {
- $query = qq|
+ }
+ else {
+ $query = qq|
INSERT INTO language (code, description)
VALUES (?, ?)|;
- }
+ }
- $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
- $dbh->commit;
+ $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
+ $dbh->commit;
}
-
sub delete_language {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- $query = qq|
+ $query = qq|
DELETE FROM language
- WHERE code = |.$dbh->quote($form->{code});
+ WHERE code = | . $dbh->quote( $form->{code} );
- $dbh->do($query) || $form->dberror($query);
- $dbh->{dbh};
+ $dbh->do($query) || $form->dberror($query);
+ $dbh->{dbh};
}
-
sub recurring_transactions {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my $dbh = $form->{dbh};
+ my $dbh = $form->{dbh};
- my $query = qq|SELECT value FROM defaults where setting_key = 'curr'|;
+ my $query = qq|SELECT value FROM defaults where setting_key = 'curr'|;
- my ($defaultcurrency) = $dbh->selectrow_array($query);
- $defaultcurrency = $dbh->quote($defaultcurrency =~ s/:.*//g);
+ my ($defaultcurrency) = $dbh->selectrow_array($query);
+ $defaultcurrency = $dbh->quote( $defaultcurrency =~ s/:.*//g );
- $form->{sort} ||= "nextdate";
- my @a = ($form->{sort});
- my $sortorder = $form->sort_order(\@a);
+ $form->{sort} ||= "nextdate";
+ my @a = ( $form->{sort} );
+ my $sortorder = $form->sort_order( \@a );
- $query = qq|
+ $query = qq|
SELECT 'ar' AS module, 'ar' AS transaction, a.invoice,
n.name AS description, a.amount,
s.*, se.formname AS recurringemail,
@@ -1069,77 +1052,90 @@ sub recurring_transactions {
ORDER BY $sortorder|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
-
- my $id;
- my $transaction;
- my %e = ();
- my %p = ();
+ my $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
+ my $id;
+ my $transaction;
+ my %e = ();
+ my %p = ();
- $ref->{exchangerate} ||= 1;
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
- if ($ref->{id} != $id) {
+ $ref->{exchangerate} ||= 1;
- if (%e) {
- $form->{transactions}{$transaction}->[$i]->{recurringemail} = "";
- for (keys %e) {
- $form->{transactions}{$transaction}->[$i]->{recurringemail} .= "${_}:";
- }
- chop $form->{transactions}{$transaction}->[$i]->{recurringemail};
- }
+ if ( $ref->{id} != $id ) {
- if (%p) {
- $form->{transactions}{$transaction}->[$i]->{recurringprint} = "";
- for (keys %p) { $form->{transactions}{$transaction}->[$i]->{recurringprint} .= "${_}:" }
- chop $form->{transactions}{$transaction}->[$i]->{recurringprint};
- }
+ if (%e) {
+ $form->{transactions}{$transaction}->[$i]->{recurringemail} =
+ "";
+ for ( keys %e ) {
+ $form->{transactions}{$transaction}->[$i]
+ ->{recurringemail} .= "${_}:";
+ }
+ chop $form->{transactions}{$transaction}->[$i]
+ ->{recurringemail};
+ }
- %e = ();
- %p = ();
+ if (%p) {
+ $form->{transactions}{$transaction}->[$i]->{recurringprint} =
+ "";
+ for ( keys %p ) {
+ $form->{transactions}{$transaction}->[$i]
+ ->{recurringprint} .= "${_}:";
+ }
+ chop $form->{transactions}{$transaction}->[$i]
+ ->{recurringprint};
+ }
- push @{ $form->{transactions}{$ref->{transaction}} }, $ref;
+ %e = ();
+ %p = ();
- $id = $ref->{id};
- $i = $#{ $form->{transactions}{$ref->{transaction}} };
+ push @{ $form->{transactions}{ $ref->{transaction} } }, $ref;
- }
+ $id = $ref->{id};
+ $i = $#{ $form->{transactions}{ $ref->{transaction} } };
- $transaction = $ref->{transaction};
+ }
- $e{$ref->{recurringemail}} = 1 if $ref->{recurringemail};
- $p{$ref->{recurringprint}} = 1 if $ref->{recurringprint};
+ $transaction = $ref->{transaction};
- }
+ $e{ $ref->{recurringemail} } = 1 if $ref->{recurringemail};
+ $p{ $ref->{recurringprint} } = 1 if $ref->{recurringprint};
- $sth->finish;
+ }
- # this is for the last row
- if (%e) {
- $form->{transactions}{$transaction}->[$i]->{recurringemail} = "";
- for (keys %e) { $form->{transactions}{$transaction}->[$i]->{recurringemail} .= "${_}:" }
- chop $form->{transactions}{$transaction}->[$i]->{recurringemail};
- }
+ $sth->finish;
- if (%p) {
- $form->{transactions}{$transaction}->[$i]->{recurringprint} = "";
- for (keys %p) { $form->{transactions}{$transaction}->[$i]->{recurringprint} .= "${_}:" }
- chop $form->{transactions}{$transaction}->[$i]->{recurringprint};
- }
+ # this is for the last row
+ if (%e) {
+ $form->{transactions}{$transaction}->[$i]->{recurringemail} = "";
+ for ( keys %e ) {
+ $form->{transactions}{$transaction}->[$i]->{recurringemail} .=
+ "${_}:";
+ }
+ chop $form->{transactions}{$transaction}->[$i]->{recurringemail};
+ }
+ if (%p) {
+ $form->{transactions}{$transaction}->[$i]->{recurringprint} = "";
+ for ( keys %p ) {
+ $form->{transactions}{$transaction}->[$i]->{recurringprint} .=
+ "${_}:";
+ }
+ chop $form->{transactions}{$transaction}->[$i]->{recurringprint};
+ }
- $dbh->commit;
+ $dbh->commit;
}
sub recurring_details {
- my ($self, $myconfig, $form, $id) = @_;
+ my ( $self, $myconfig, $form, $id ) = @_;
- my $dbh = $form->{dbh};
- my $query = qq|
+ my $dbh = $form->{dbh};
+ my $query = qq|
SELECT s.*, ar.id AS arid, ar.invoice AS arinvoice,
ap.id AS apid, ap.invoice AS apinvoice,
ar.duedate - ar.transdate AS overdue,
@@ -1152,370 +1148,382 @@ sub recurring_details {
LEFT JOIN oe ON (oe.id = s.id)
WHERE s.id = ?|;
- my $sth = $dbh->prepare($query);
- $sth->execute($id) || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute($id) || $form->dberror($query);
- my $ref = $sth->fetchrow_hashref(NAME_lc);
- $form->{vc} = "customer" if $ref->{customer_id};
- $form->{vc} = "vendor" if $ref->{vendor_id};
- for (keys %$ref) { $form->{$_} = $ref->{$_} }
- $sth->finish;
+ my $ref = $sth->fetchrow_hashref(NAME_lc);
+ $form->{vc} = "customer" if $ref->{customer_id};
+ $form->{vc} = "vendor" if $ref->{vendor_id};
+ for ( keys %$ref ) { $form->{$_} = $ref->{$_} }
+ $sth->finish;
- $form->{invoice} = ($form->{arid} && $form->{arinvoice});
- $form->{invoice} = ($form->{apid} && $form->{apinvoice}) unless $form->{invoice};
+ $form->{invoice} = ( $form->{arid} && $form->{arinvoice} );
+ $form->{invoice} = ( $form->{apid} && $form->{apinvoice} )
+ unless $form->{invoice};
- $query = qq|
+ $query = qq|
SELECT *
FROM recurringemail
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($id) || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute($id) || $form->dberror($query);
- $form->{recurringemail} = "";
+ $form->{recurringemail} = "";
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{recurringemail} .= "$ref->{formname}:$ref->{format}:";
- $form->{message} = $ref->{message};
- }
+ while ( $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ $form->{recurringemail} .= "$ref->{formname}:$ref->{format}:";
+ $form->{message} = $ref->{message};
+ }
- $sth->finish;
+ $sth->finish;
- $query = qq|
+ $query = qq|
SELECT *
FROM recurringprint
WHERE id = ?|;
- $sth = $dbh->prepare($query);
- $sth->execute($id) || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute($id) || $form->dberror($query);
- $form->{recurringprint} = "";
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{recurringprint} .=
- "$ref->{formname}:$ref->{format}:$ref->{printer}:";
- }
+ $form->{recurringprint} = "";
+ while ( $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ $form->{recurringprint} .=
+ "$ref->{formname}:$ref->{format}:$ref->{printer}:";
+ }
- $sth->finish;
+ $sth->finish;
- chop $form->{recurringemail};
- chop $form->{recurringprint};
+ chop $form->{recurringemail};
+ chop $form->{recurringprint};
- for (qw(arinvoice apinvoice)) { delete $form->{$_} }
+ for (qw(arinvoice apinvoice)) { delete $form->{$_} }
- $dbh->commit;
+ $dbh->commit;
}
-
sub update_recurring {
- my ($self, $myconfig, $form, $id) = @_;
+ my ( $self, $myconfig, $form, $id ) = @_;
- my $dbh = $form->{dbh};
+ my $dbh = $form->{dbh};
- $id = $dbh->quote($id);
- my $query = qq|
+ $id = $dbh->quote($id);
+ my $query = qq|
SELECT nextdate, repeat, unit
FROM recurring
WHERE id = $id|;
- my ($nextdate, $repeat, $unit) = $dbh->selectrow_array($query);
+ my ( $nextdate, $repeat, $unit ) = $dbh->selectrow_array($query);
+
+ $nextdate = $dbh->quote($nextdate);
+ my $interval = $dbh->quote("$repeat $unit");
- $nextdate = $dbh->quote($nextdate);
- my $interval = $dbh->quote("$repeat $unit");
- # check if it is the last date
- $query = qq|
+ # check if it is the last date
+ $query = qq|
SELECT (date $nextdate + interval $interval) > enddate
FROM recurring
WHERE id = $id|;
- my ($last_repeat) = $dbh->selectrow_array($query);
- if ($last_repeat) {
- $advance{$myconfig->{dbdriver}} = "NULL";
- }
+ my ($last_repeat) = $dbh->selectrow_array($query);
+ if ($last_repeat) {
+ $advance{ $myconfig->{dbdriver} } = "NULL";
+ }
- $query = qq|
+ $query = qq|
UPDATE recurring
SET nextdate = (date $nextdate + interval $interval)
WHERE id = $id|;
- $dbh->do($query) || $form->dberror($query);
+ $dbh->do($query) || $form->dberror($query);
- $dbh->commit;
+ $dbh->commit;
}
-
sub check_template_name {
- my ($self, $myconfig, $form) = @_;
-
- my @allowedsuff = qw(css tex txt html xml);
- if ($form->{file} =~ /^(.:)*?\/|:|\.\.\/|^\//){
- $form->error("Directory transversal not allowed.");
- }
- if ($form->{file} =~ /^${LedgerSMB::Sysconfig::backuppath}\//){
- $form->error("Not allowed to access ${LedgerSMB::Sysconfig::backuppath}/ with this method");
- }
- my $whitelisted = 0;
- for (@allowedsuff){
- if ($form->{file} =~ /$_$/){
- $whitelisted = 1;
- }
- }
- if (!$whitelisted){
- $form->error("Error: File is of type that is not allowed.");
- }
-
- if ($form->{file} !~ /^$myconfig->{templates}\//){
- $form->error("Not in a whitelisted directory: $form->{file}") unless $form->{file} =~ /^css\//;
- }
+ my ( $self, $myconfig, $form ) = @_;
+
+ my @allowedsuff = qw(css tex txt html xml);
+ if ( $form->{file} =~ /^(.:)*?\/|:|\.\.\/|^\// ) {
+ $form->error("Directory transversal not allowed.");
+ }
+ if ( $form->{file} =~ /^${LedgerSMB::Sysconfig::backuppath}\// ) {
+ $form->error(
+"Not allowed to access ${LedgerSMB::Sysconfig::backuppath}/ with this method"
+ );
+ }
+ my $whitelisted = 0;
+ for (@allowedsuff) {
+ if ( $form->{file} =~ /$_$/ ) {
+ $whitelisted = 1;
+ }
+ }
+ if ( !$whitelisted ) {
+ $form->error("Error: File is of type that is not allowed.");
+ }
+
+ if ( $form->{file} !~ /^$myconfig->{templates}\// ) {
+ $form->error("Not in a whitelisted directory: $form->{file}")
+ unless $form->{file} =~ /^css\//;
+ }
}
-
sub load_template {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- $self->check_template_name(\%$myconfig, \%$form);
- open(TEMPLATE, '<', "$form->{file}") or $form->error("$form->{file} : $!");
+ $self->check_template_name( \%$myconfig, \%$form );
+ open( TEMPLATE, '<', "$form->{file}" )
+ or $form->error("$form->{file} : $!");
- while (<TEMPLATE>) {
- $form->{body} .= $_;
- }
+ while (<TEMPLATE>) {
+ $form->{body} .= $_;
+ }
- close(TEMPLATE);
+ close(TEMPLATE);
}
-
sub save_template {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- $self->check_template_name(\%$myconfig, \%$form);
- open(TEMPLATE, '>', "$form->{file}") or $form->error("$form->{file} : $!");
+ $self->check_template_name( \%$myconfig, \%$form );
+ open( TEMPLATE, '>', "$form->{file}" )
+ or $form->error("$form->{file} : $!");
- # strip
- $form->{body} =~ s/\r//g;
- print TEMPLATE $form->{body};
+ # strip
+ $form->{body} =~ s/\r//g;
+ print TEMPLATE $form->{body};
- close(TEMPLATE);
+ close(TEMPLATE);
}
-
sub save_preferences {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- # get username, is same as requested?
- my @queryargs;
- my $query = qq|
+ # get username, is same as requested?
+ my @queryargs;
+ my $query = qq|
SELECT login
FROM employee
WHERE login = ?|;
- @queryargs = ($form->{login});
- my $sth = $dbh->prepare($query);
- $sth->execute(@queryargs) || $form->dberror($query);
- my ($dbusername) = $sth->fetchrow_array;
- $sth->finish;
+ @queryargs = ( $form->{login} );
+ my $sth = $dbh->prepare($query);
+ $sth->execute(@queryargs) || $form->dberror($query);
+ my ($dbusername) = $sth->fetchrow_array;
+ $sth->finish;
- return 0 if ($dbusername ne $form->{login});
+ return 0 if ( $dbusername ne $form->{login} );
- # update name
- $query = qq|
+ # update name
+ $query = qq|
UPDATE employee
SET name = ?
WHERE login = ?|;
- @queryargs = ($form->{name}, $form->{login});
- $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
+ @queryargs = ( $form->{name}, $form->{login} );
+ $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
- # get default currency
- $query = qq|
+ # get default currency
+ $query = qq|
SELECT value, (SELECT value FROM defaults
WHERE setting_key = 'businessnumber')
FROM defaults
WHERE setting_key = 'curr'|;
- ($form->{currency}, $form->{businessnumber}) =
- $dbh->selectrow_array($query);
- $form->{currency} =~ s/:.*//;
+ ( $form->{currency}, $form->{businessnumber} ) =
+ $dbh->selectrow_array($query);
+ $form->{currency} =~ s/:.*//;
- $dbh->commit;
+ $dbh->commit;
- my $myconfig = LedgerSMB::User->new($form->{login});
+ my $myconfig = LedgerSMB::User->new( $form->{login} );
- map {$myconfig->{$_} = $form->{$_} if exists $form->{$_}}
- qw(name email dateformat signature numberformat vclimit tel fax
- company menuwidth countrycode address timeout stylesheet
- printer password);
+ map { $myconfig->{$_} = $form->{$_} if exists $form->{$_} }
+ qw(name email dateformat signature numberformat vclimit tel fax
+ company menuwidth countrycode address timeout stylesheet
+ printer password);
- $myconfig->{password} = $form->{new_password} if ($form->{old_password} ne $form->{new_password});
+ $myconfig->{password} = $form->{new_password}
+ if ( $form->{old_password} ne $form->{new_password} );
- $myconfig->save_member();
+ $myconfig->save_member();
- 1;
+ 1;
}
-
sub save_defaults {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- for (qw(IC IC_income IC_expense FX_gain FX_loss)) { ($form->{$_}) = split /--/, $form->{$_} }
+ for (qw(IC IC_income IC_expense FX_gain FX_loss)) {
+ ( $form->{$_} ) = split /--/, $form->{$_};
+ }
- my @a;
- $form->{curr} =~ s/ //g;
- for (split /:/, $form->{curr}) { push(@a, uc pack "A3", $_) if $_ }
- $form->{curr} = join ':', @a;
+ my @a;
+ $form->{curr} =~ s/ //g;
+ for ( split /:/, $form->{curr} ) { push( @a, uc pack "A3", $_ ) if $_ }
+ $form->{curr} = join ':', @a;
- # connect to database
- my $dbh = $form->{dbh};
- # save defaults
- $sth_plain = $dbh->prepare("
- UPDATE defaults SET value = ? WHERE setting_key = ?");
- $sth_accno = $dbh->prepare(qq|
+ # connect to database
+ my $dbh = $form->{dbh};
+
+ # save defaults
+ $sth_plain = $dbh->prepare( "
+ UPDATE defaults SET value = ? WHERE setting_key = ?" );
+ $sth_accno = $dbh->prepare(
+ qq|
UPDATE defaults
SET value = (SELECT id
FROM chart
WHERE accno = ?)
- WHERE setting_key = ?|);
- my %translation = (
- inventory_accno_id => 'IC',
- income_accno_id => 'IC_income',
- expense_accno_id => 'IC_expense',
- fxgain_accno_id => 'FX_gain',
- fxloss_accno_id => 'FX_loss'
- );
- for (
- qw(inventory_accno_id income_accno_id expense_accno_id
- fxgain_accno_id fxloss_accno_id glnumber sinumber vinumber
- sonumber ponumber sqnumber rfqnumber partnumber employeenumber
- customernumber vendornumber projectnumber yearend curr
- weightunit businessnumber)
- ){
- my $val = $form->{$_};
-
- if ($translation{$_}){
- $val = $form->{$translation{$_}};
- }
- if ($_ =~ /accno/){
- $sth_accno->execute($val, $_)
- || $form->dberror("Saving $_");
- } else {
- $sth_plain->execute($val, $_)
- || $form->dberror("Saving $_");
- }
-
- }
- my $rc = $dbh->commit;
-
- $rc;
+ WHERE setting_key = ?|
+ );
+ my %translation = (
+ inventory_accno_id => 'IC',
+ income_accno_id => 'IC_income',
+ expense_accno_id => 'IC_expense',
+ fxgain_accno_id => 'FX_gain',
+ fxloss_accno_id => 'FX_loss'
+ );
+ for (
+ qw(inventory_accno_id income_accno_id expense_accno_id
+ fxgain_accno_id fxloss_accno_id glnumber sinumber vinumber
+ sonumber ponumber sqnumber rfqnumber partnumber employeenumber
+ customernumber vendornumber projectnumber yearend curr
+ weightunit businessnumber)
+ )
+ {
+ my $val = $form->{$_};
+
+ if ( $translation{$_} ) {
+ $val = $form->{ $translation{$_} };
+ }
+ if ( $_ =~ /accno/ ) {
+ $sth_accno->execute( $val, $_ )
+ || $form->dberror("Saving $_");
+ }
+ else {
+ $sth_plain->execute( $val, $_ )
+ || $form->dberror("Saving $_");
+ }
+
+ }
+ my $rc = $dbh->commit;
+
+ $rc;
}
-
sub defaultaccounts {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- # get defaults from defaults table
- my $query = qq|
+ # get defaults from defaults table
+ my $query = qq|
SELECT setting_key, value FROM defaults
WHERE setting_key LIKE ?|;
- my $sth = $dbh->prepare($query);
- $sth->execute('%accno_id') || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute('%accno_id') || $form->dberror($query);
- my $ref;
- while ($ref = $sth->fetchrow_hashref(NAME_lc)){
- $form->{$ref->{setting_key}} = $ref->{value};
- }
+ my $ref;
+ while ( $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ $form->{ $ref->{setting_key} } = $ref->{value};
+ }
- $form->{defaults}{IC} = $form->{inventory_accno_id};
- $form->{defaults}{IC_income} = $form->{income_accno_id};
- $form->{defaults}{IC_sale} = $form->{income_accno_id};
- $form->{defaults}{IC_expense} = $form->{expense_accno_id};
- $form->{defaults}{IC_cogs} = $form->{expense_accno_id};
- $form->{defaults}{FX_gain} = $form->{fxgain_accno_id};
- $form->{defaults}{FX_loss} = $form->{fxloss_accno_id};
+ $form->{defaults}{IC} = $form->{inventory_accno_id};
+ $form->{defaults}{IC_income} = $form->{income_accno_id};
+ $form->{defaults}{IC_sale} = $form->{income_accno_id};
+ $form->{defaults}{IC_expense} = $form->{expense_accno_id};
+ $form->{defaults}{IC_cogs} = $form->{expense_accno_id};
+ $form->{defaults}{FX_gain} = $form->{fxgain_accno_id};
+ $form->{defaults}{FX_loss} = $form->{fxloss_accno_id};
- $sth->finish;
+ $sth->finish;
- $query = qq|
+ $query = qq|
SELECT id, accno, description, link
FROM chart
WHERE link LIKE '%IC%'
ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- my $nkey;
- while ($ref = $sth->fetchrow_hashref(NAME_lc)) {
- foreach my $key (split(/:/, $ref->{link})) {
- if ($key =~ /IC/) {
- $nkey = $key;
+ my $nkey;
+ while ( $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ foreach my $key ( split( /:/, $ref->{link} ) ) {
+ if ( $key =~ /IC/ ) {
+ $nkey = $key;
- if ($key =~ /cogs/) {
- $nkey = "IC_expense";
- }
+ if ( $key =~ /cogs/ ) {
+ $nkey = "IC_expense";
+ }
- if ($key =~ /sale/) {
- $nkey = "IC_income";
- }
+ if ( $key =~ /sale/ ) {
+ $nkey = "IC_income";
+ }
- %{ $form->{accno}{$nkey}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
- }
- }
- }
+ %{ $form->{accno}{$nkey}{ $ref->{accno} } } = (
+ id => $ref->{id},
+ description => $ref->{description}
+ );
+ }
+ }
+ }
- $sth->finish;
+ $sth->finish;
-
- $query = qq|
+ $query = qq|
SELECT id, accno, description
FROM chart
WHERE (category = 'I' OR category = 'E')
AND charttype = 'A'
ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- %{ $form->{accno}{FX_gain}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ %{ $form->{accno}{FX_gain}{ $ref->{accno} } } = (
+ id => $ref->{id},
+ description => $ref->{description}
+ );
- %{ $form->{accno}{FX_loss}{$ref->{accno}} } = ( id => $ref->{id},
- description => $ref->{description} );
- }
+ %{ $form->{accno}{FX_loss}{ $ref->{accno} } } = (
+ id => $ref->{id},
+ description => $ref->{description}
+ );
+ }
- $sth->finish;
+ $sth->finish;
- $dbh->commit;
+ $dbh->commit;
}
-
sub taxes {
- my ($self, $myconfig, $form) = @_;
- my $taxaccounts = '';
+ my ( $self, $myconfig, $form ) = @_;
+ my $taxaccounts = '';
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT c.id, c.accno, c.description,
t.rate * 100 AS rate, t.taxnumber, t.validto,
t.pass, m.taxmodulename
@@ -1524,140 +1532,140 @@ sub taxes {
JOIN taxmodule m ON (t.taxmodule_id = m.taxmodule_id)
ORDER BY 3, 6|;
- my $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
+ my $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{taxrates} }, $ref;
- $taxaccounts .= " " . $ref{accno};
- }
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{taxrates} }, $ref;
+ $taxaccounts .= " " . $ref{accno};
+ }
- $sth->finish;
-
- $query = qq|
+ $sth->finish;
+
+ $query = qq|
SELECT taxmodule_id, taxmodulename FROM taxmodule
ORDER BY 2|;
-
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- $form->{"taxmodule_".$ref->{taxmodule_id}} =
- $ref->{taxmodulename};
- }
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
- $sth->finish;
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ $form->{ "taxmodule_" . $ref->{taxmodule_id} } = $ref->{taxmodulename};
+ }
- $dbh->commit;
+ $sth->finish;
-}
+ $dbh->commit;
+}
sub save_taxes {
- my ($self, $myconfig, $form) = @_;
-
- # connect to database
- my $dbh = $form->{dbh};
+ my ( $self, $myconfig, $form ) = @_;
- my $query = qq|DELETE FROM tax|;
- $dbh->do($query) || $form->dberror($query);
+ # connect to database
+ my $dbh = $form->{dbh};
+ my $query = qq|DELETE FROM tax|;
+ $dbh->do($query) || $form->dberror($query);
- $query = qq|
+ $query = qq|
INSERT INTO tax (chart_id, rate, taxnumber, validto,
pass, taxmodule_id)
VALUES (?, ?, ?, ?, ?, ?)|;
- my $sth = $dbh->prepare($query);
- foreach my $item (split / /, $form->{taxaccounts}) {
- my ($chart_id, $i) = split /_/, $item;
- my $rate = $form->parse_amount(
- $myconfig, $form->{"taxrate_$i"}) / 100;
- my $validto = $form->{"validto_$i"};
- $validto = undef if not $validto;
- my @queryargs = ($chart_id, $rate, $form->{"taxnumber_$i"},
- $validto, $form->{"pass_$i"},
- $form->{"taxmodule_id_$i"});
+ my $sth = $dbh->prepare($query);
+ foreach my $item ( split / /, $form->{taxaccounts} ) {
+ my ( $chart_id, $i ) = split /_/, $item;
+ my $rate =
+ $form->parse_amount( $myconfig, $form->{"taxrate_$i"} ) / 100;
+ my $validto = $form->{"validto_$i"};
+ $validto = undef if not $validto;
+ my @queryargs = (
+ $chart_id, $rate, $form->{"taxnumber_$i"},
+ $validto, $form->{"pass_$i"}, $form->{"taxmodule_id_$i"}
+ );
- $sth->execute(@queryargs) || $form->dberror($query);
- }
+ $sth->execute(@queryargs) || $form->dberror($query);
+ }
- my $rc = $dbh->commit;
+ my $rc = $dbh->commit;
- $rc;
+ $rc;
}
-
sub backup {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my $mail;
- my $err;
+ my $mail;
+ my $err;
- my @t = localtime(time);
- $t[4]++;
- $t[5] += 1900;
- $t[3] = substr("0$t[3]", -2);
- $t[4] = substr("0$t[4]", -2);
+ my @t = localtime(time);
+ $t[4]++;
+ $t[5] += 1900;
+ $t[3] = substr( "0$t[3]", -2 );
+ $t[4] = substr( "0$t[4]", -2 );
- my $boundary = time;
- my $tmpfile = "${LedgerSMB::Sysconfig::backuppath}/$boundary.$globalDBname-$form->{dbversion}-$t[5]$t[4]$t[3].sql";
- $form->{OUT} = "$tmpfile";
+ my $boundary = time;
+ my $tmpfile =
+"${LedgerSMB::Sysconfig::backuppath}/$boundary.$globalDBname-$form->{dbversion}-$t[5]$t[4]$t[3].sql";
+ $form->{OUT} = "$tmpfile";
- open(OUT, '>', "$form->{OUT}") or $form->error("$form->{OUT} : $!");
+ open( OUT, '>', "$form->{OUT}" ) or $form->error("$form->{OUT} : $!");
- # get sequences, functions and triggers
+ # get sequences, functions and triggers
- my $today = scalar localtime;
+ my $today = scalar localtime;
- # compress backup if gzip defined
- my $suffix = "c";
+ # compress backup if gzip defined
+ my $suffix = "c";
- if ($form->{media} eq 'email') {
- print OUT qx(PGPASSWORD="$myconfig->{dbpasswd}" pg_dump -U $myconfig->{dbuser} -h $myconfig->{dbhost} -Fc -p $myconfig->{dbport} $myconfig->{dbname});
- close OUT;
- use LedgerSMB::Mailer;
- $mail = new Mailer;
+ if ( $form->{media} eq 'email' ) {
+ print OUT
+qx(PGPASSWORD="$myconfig->{dbpasswd}" pg_dump -U $myconfig->{dbuser} -h $myconfig->{dbhost} -Fc -p $myconfig->{dbport} $myconfig->{dbname});
+ close OUT;
+ use LedgerSMB::Mailer;
+ $mail = new Mailer;
- $mail->{to} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
- $mail->{from} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
- $mail->{subject} = "LedgerSMB Backup / $globalDBname-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix";
- @{ $mail->{attachments} } = ($tmpfile);
- $mail->{version} = $form->{version};
- $mail->{fileid} = "$boundary.";
- $mail->{format} = "plain";
- $mail->{format} = "octet-stream";
+ $mail->{to} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
+ $mail->{from} = qq|"$myconfig->{name}" <$myconfig->{email}>|;
+ $mail->{subject} =
+"LedgerSMB Backup / $globalDBname-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix";
+ @{ $mail->{attachments} } = ($tmpfile);
+ $mail->{version} = $form->{version};
+ $mail->{fileid} = "$boundary.";
+ $mail->{format} = "plain";
+ $mail->{format} = "octet-stream";
- $myconfig->{signature} =~ s/\\n/\n/g;
- $mail->{message} = "-- \n$myconfig->{signature}";
+ $myconfig->{signature} =~ s/\\n/\n/g;
+ $mail->{message} = "-- \n$myconfig->{signature}";
- $err = $mail->send;
- }
+ $err = $mail->send;
+ }
- if ($form->{media} eq 'file') {
+ if ( $form->{media} eq 'file' ) {
- open(IN, '<', "$tmpfile") or $form->error("$tmpfile : $!");
- open(OUT, ">-") or $form->error("STDOUT : $!");
+ open( IN, '<', "$tmpfile" ) or $form->error("$tmpfile : $!");
+ open( OUT, ">-" ) or $form->error("STDOUT : $!");
- print OUT qq|Content-Type: application/file;\n| .
- qq|Content-Disposition: attachment; filename="$myconfig->{dbname}-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix"\n\n|;
- print OUT qx(PGPASSWORD="$myconfig->{dbpasswd}" pg_dump -U $myconfig->{dbuser} -h $myconfig->{dbhost} -Fc -p $myconfig->{dbport} $myconfig->{dbname});
- }
+ print OUT qq|Content-Type: application/file;\n|
+ . qq|Content-Disposition: attachment; filename="$myconfig->{dbname}-$form->{dbversion}-$t[5]$t[4]$t[3].sql$suffix"\n\n|;
+ print OUT
+qx(PGPASSWORD="$myconfig->{dbpasswd}" pg_dump -U $myconfig->{dbuser} -h $myconfig->{dbhost} -Fc -p $myconfig->{dbport} $myconfig->{dbname});
+ }
- unlink "$tmpfile";
+ unlink "$tmpfile";
}
-
sub closedto {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my $dbh = $form->{dbh};
+ my $dbh = $form->{dbh};
- my $query = qq|
+ my $query = qq|
SELECT (SELECT value FROM defaults
WHERE setting_key = 'closedto'),
(SELECT value FROM defaults
@@ -1665,108 +1673,104 @@ sub closedto {
(SELECT value FROM defaults
WHERE setting_key = 'audittrail')|;
- ($form->{closedto}, $form->{revtrans}, $form->{audittrail})
- = $dbh->selectrow_array($query);
+ ( $form->{closedto}, $form->{revtrans}, $form->{audittrail} ) =
+ $dbh->selectrow_array($query);
- $dbh->commit;
+ $dbh->commit;
}
-
sub closebooks {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my $dbh = $form->{dbh};
- my $query = qq|
+ my $dbh = $form->{dbh};
+ my $query = qq|
UPDATE defaults SET value = ?
WHERE setting_key = ?|;
- my $sth = $dbh->prepare($query);
- for (qw(revtrans closedto audittrail)){
-
- if ($form->{$_}){
- $val = 1;
- } else {
- $val = 0;
- }
- $sth->execute($val, $_);
- }
-
-
- if ($form->{removeaudittrail}) {
- $query = qq|
+ my $sth = $dbh->prepare($query);
+ for (qw(revtrans closedto audittrail)) {
+
+ if ( $form->{$_} ) {
+ $val = 1;
+ }
+ else {
+ $val = 0;
+ }
+ $sth->execute( $val, $_ );
+ }
+
+ if ( $form->{removeaudittrail} ) {
+ $query = qq|
DELETE FROM audittrail
- WHERE transdate < | .
- $dbh->quote($form->{removeaudittrail});
+ WHERE transdate < | . $dbh->quote( $form->{removeaudittrail} );
- $dbh->do($query) || $form->dberror($query);
- }
+ $dbh->do($query) || $form->dberror($query);
+ }
- $dbh->commit;
+ $dbh->commit;
}
-
sub earningsaccounts {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- my ($query, $sth, $ref);
+ my ( $query, $sth, $ref );
- # connect to database
- my $dbh = $form->{dbh};
+ # connect to database
+ my $dbh = $form->{dbh};
- # get chart of accounts
- $query = qq|
+ # get chart of accounts
+ $query = qq|
SELECT accno,description
FROM chart
WHERE charttype = 'A'
AND category = 'Q'
ORDER BY accno|;
- $sth = $dbh->prepare($query);
- $sth->execute || $form->dberror($query);
- $form->{chart} = "";
+ $sth = $dbh->prepare($query);
+ $sth->execute || $form->dberror($query);
+ $form->{chart} = "";
- while (my $ref = $sth->fetchrow_hashref(NAME_lc)) {
- push @{ $form->{chart} }, $ref;
- }
-
- $sth->finish;
- $dbh->commit;
-}
+ while ( my $ref = $sth->fetchrow_hashref(NAME_lc) ) {
+ push @{ $form->{chart} }, $ref;
+ }
+ $sth->finish;
+ $dbh->commit;
+}
sub post_yearend {
- my ($self, $myconfig, $form) = @_;
+ my ( $self, $myconfig, $form ) = @_;
- # connect to database, turn off AutoCommit
- my $dbh = $form->{dbh};
+ # connect to database, turn off AutoCommit
+ my $dbh = $form->{dbh};
- my $query;
- my @queryargs;
- my $uid = localtime;
- $uid .= "$$";
+ my $query;
+ my @queryargs;
+ my $uid = localtime;
+ $uid .= "$$";
- $query = qq|
+ $query = qq|
INSERT INTO gl (reference, employee_id)
VALUES (?, (SELECT id FROM employee
WHERE login = ?))|;
- $dbh->prepare($query)->execute($uid, $form->{login})
- || $form->dberror($query);
+ $dbh->prepare($query)->execute( $uid, $form->{login} )
+ || $form->dberror($query);
- $query = qq|
+ $query = qq|
SELECT id
FROM gl
WHERE reference = ?|;
- my $sth = $dbh->prepare($query);
- $sth->execute($uid);
- ($form->{id}) = $sth->fetchrow_array;
+ my $sth = $dbh->prepare($query);
+ $sth->execute($uid);
+ ( $form->{id} ) = $sth->fetchrow_array;
- $query = qq|
+ $query = qq|
UPDATE gl
SET reference = ?,
description = ?,
@@ -1775,13 +1779,15 @@ sub post_yearend {
department_id = 0
WHERE id = ?|;
- @queryargs = ($form->{reference}, $form->{description}, $form->{notes},
- $form->{transdate}, $form->{id});
- $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
+ @queryargs = (
+ $form->{reference}, $form->{description}, $form->{notes},
+ $form->{transdate}, $form->{id}
+ );
+ $dbh->prepare($query)->execute(@queryargs) || $form->dberror($query);
- my $amount;
- my $accno;
- $query = qq|
+ my $amount;
+ my $accno;
+ $query = qq|
INSERT INTO acc_trans (trans_id, chart_id, amount, transdate,
source)
VALUES (?, (SELECT id
@@ -1789,67 +1795,69 @@ sub post_yearend {
WHERE accno = ?),
?, ?, ?)|;
+ # insert acc_trans transactions
+ for my $i ( 1 .. $form->{rowcount} ) {
- # insert acc_trans transactions
- for my $i (1 .. $form->{rowcount}) {
- # extract accno
- ($accno) = split(/--/, $form->{"accno_$i"});
- $amount = 0;
-
- if ($form->{"credit_$i"}) {
- $amount = $form->{"credit_$i"};
- }
+ # extract accno
+ ($accno) = split( /--/, $form->{"accno_$i"} );
+ $amount = 0;
- if ($form->{"debit_$i"}) {
- $amount = $form->{"debit_$i"} * -1;
- }
+ if ( $form->{"credit_$i"} ) {
+ $amount = $form->{"credit_$i"};
+ }
+ if ( $form->{"debit_$i"} ) {
+ $amount = $form->{"debit_$i"} * -1;
+ }
- # if there is an amount, add the record
- if ($amount) {
- my @args = ($form->{id}, $accno, $amount,
- $form->{transdate}, $form->{reference});
+ # if there is an amount, add the record
+ if ($amount) {
+ my @args = (
+ $form->{id}, $accno, $amount, $form->{transdate},
+ $form->{reference}
+ );
- $dbh->prepare($query)->execute(@args)
- || $form->dberror($query);
- }
- }
+ $dbh->prepare($query)->execute(@args)
+ || $form->dberror($query);
+ }
+ }
- $query = qq|
+ $query = qq|
INSERT INTO yearend (trans_id, transdate)
VALUES (?, ?)|;
- $dbh->prepare($query)->execute($form->{id}, $form->{transdate})
- || $form->dberror($query);
+ $dbh->prepare($query)->execute( $form->{id}, $form->{transdate} )
+ || $form->dberror($query);
- my %audittrail = (
- tablename => 'gl',
- reference => $form->{reference},
- formname => 'yearend',
- action => 'posted',
- id => $form->{id} );
+ my %audittrail = (
+ tablename => 'gl',
+ reference => $form->{reference},
+ formname => 'yearend',
+ action => 'posted',
+ id => $form->{id}
+ );
- $form->audittrail($dbh, "", \%audittrail);
+ $form->audittrail( $dbh, "", \%audittrail );
- # commit and redirect
- my $rc = $dbh->commit;
+ # commit and redirect
+ my $rc = $dbh->commit;
- $rc;
+ $rc;
}
-sub get_all_defaults{
- my ($self, $form) = @_;
- my $dbh = $form->{dbh};
- my $query = "select setting_key, value FROM defaults";
- $sth = $dbh->prepare($query);
- $sth->execute;
- while (($skey, $value) = $sth->fetchrow_array()){
- $form->{$skey} = $value;
- }
-
- $self->defaultaccounts(undef, $form);
- $dbh->commit;
+sub get_all_defaults {
+ my ( $self, $form ) = @_;
+ my $dbh = $form->{dbh};
+ my $query = "select setting_key, value FROM defaults";
+ $sth = $dbh->prepare($query);
+ $sth->execute;
+ while ( ( $skey, $value ) = $sth->fetchrow_array() ) {
+ $form->{$skey} = $value;
+ }
+
+ $self->defaultaccounts( undef, $form );
+ $dbh->commit;
}
1;