summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xLedgerSMB.pm49
1 files changed, 19 insertions, 30 deletions
diff --git a/LedgerSMB.pm b/LedgerSMB.pm
index ddc639c8..a894727b 100755
--- a/LedgerSMB.pm
+++ b/LedgerSMB.pm
@@ -43,9 +43,9 @@ parsed according to the user preferences stored in the LedgerSMB::User object.
This function converts fields to their appropriate representation in
HTML/SGML/XML or LaTeX.
-=item is_blank (msg=> $string, name => $string)
-This function invokes self->error($msg) if the property contains no
-non-whitespace characters.
+=item is_blank (name => $string)
+This function returns true if $self->{$string} only consists of whitespace
+characters or is an empty string.
=item num_text_rows (string => $string, cols => $number, max => $number);
@@ -65,7 +65,7 @@ This function redirects to the script and argument set determined by
$self->{callback}, and if this is not set, goes to an info screen and prints
$msg.
-=item redo_rows (fields =>, new =>, count =>, rows => $integer);
+=item redo_rows (fields => \@list, count => $integer);
This function is undergoing serious redesign at the moment.
=head1 Copyright (C) 2006, The LedgerSMB core team.
@@ -102,6 +102,7 @@ package LedgerSMB;
sub new {
# This will probably be the last to be revised.
+ # Based on SQL-Ledger's Form::new
my $type = shift;
@@ -172,6 +173,7 @@ sub escape {
sub unescape {
+ # Based on SQL-Ledger's Form::unescape
my ($self) = @_;
my %args = @_;
my $str = $args{string};
@@ -190,9 +192,13 @@ sub is_blank {
my $self = shift @_;
my %args = @_;
my $name = $args{name};
- my $msg = $args{msg};
-
- $self->error($msg) if $self->{$name} =~ /^\s*$/;
+ my $rc;
+ if ($self->{$name} =~ /^\s*$/){
+ $rc = 1;
+ } else {
+ $rc = 0;
+ }
+ $rc;
}
sub num_text_rows {
@@ -218,7 +224,9 @@ sub num_text_rows {
++$rows;
}
- $maxrows = $rows unless defined $maxrows;
+ if (! defined $maxrows){
+ $maxrows = $rows;
+ }
return ($rows > $maxrows) ? $maxrows : $rows;
@@ -240,6 +248,7 @@ sub redirect {
}
sub format_fields {
+ # Based on SQL-Ledger's Form::format_string
# We should look at moving this into LedgerSMB::Template.
# And cleaning it up...... Chris
@@ -283,6 +292,7 @@ sub format_fields {
# TODO: Either we should have an amount class with formats and such attached
# Or maybe we should move this into the user class...
sub format_amount {
+ # Based on SQL-Ledger's Form::format_amount
my $self = shift @_;
my %args = @_;
my $myconfig = $args{user};
@@ -470,6 +480,7 @@ sub call_procedure {
# This should probably be moved to User too...
sub date_to_number {
+ #based on SQL-Ledger's Form::datetonum
my $self = shift @_;
my %args = @_;
my $myconfig = $args{user};
@@ -533,35 +544,13 @@ sub db_init {
}
}
-# This needs some *real* work.
sub redo_rows {
$self = shift @_;
%args = @_;
@flds = @{$args{fields}};
- $new = $args{new};
$count = $args{count};
- $numrows = $args{rows};
-
- my @ndx = ();
- for (1 .. $count) {
- push @ndx, { num => $new->[$_-1]->{runningnumber}, ndx => $_ }
- }
-
- my $i = 0;
- my $j;
- # fill rows
- foreach my $item (sort { $a->{num} <=> $b->{num} } @ndx) {
- $i++;
- $j = $item->{ndx} - 1;
- for (@flds) { $self->{"${_}_$i"} = $new->[$j]->{$_} }
- }
-
- # delete empty rows
- for $i ($count + 1 .. $numrows) {
- for (@{$flds}) { delete $self->{"${_}_$i"} }
- }
}