X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FRecord.pm;h=4915b96ef7baeb93c54e4440d985e6ec689e2fb6;hb=03728b5a1f7e30faebc170389c4d91481ade685e;hp=1b7ac8a7cff5258eaa365ffc306e4e82006fde66;hpb=b853ec09fb19df91fe0188c5dde9d759333a2503;p=freeside.git diff --git a/FS/FS/Record.pm b/FS/FS/Record.pm index 1b7ac8a7c..4915b96ef 100644 --- a/FS/FS/Record.pm +++ b/FS/FS/Record.pm @@ -402,26 +402,7 @@ sub qsearch { get_real_fields($table, $record, \@real_fields)); } - if( defined($extra_sql) ){ - if( $statement =~ /\sWHERE\s/i ){ - if( $extra_sql =~ /^\s*AND /i ){ - # correct format - }elsif($extra_sql =~ /^\s*WHERE /i ){ - $extra_sql =~ s/WHERE /AND /i; - }else{ - $extra_sql = " AND $extra_sql"; - } - }else{ - if( $extra_sql =~ /^\s*AND /i ){ - $extra_sql =~ s/AND /WHERE /i; - }elsif($extra_sql =~ /^\s*WHERE /i ){ - # correct format - }else{ - $extra_sql = " WHERE $extra_sql"; - } - } - $statement .= " $extra_sql"; - } + $statement .= " $extra_sql" if defined($extra_sql); $statement .= " $order_by" if defined($order_by); push @statement, $statement; @@ -3341,7 +3322,7 @@ sub scalar_sql { defined($scalar) ? $scalar : ''; } -=item count [ WHERE ] +=item count [ WHERE [, PLACEHOLDER ...] ] Convenience method for the common case of "SELECT COUNT(*) FROM table", with optional WHERE. Must be called as method on a class with an @@ -3354,7 +3335,7 @@ sub count { my $table = $self->table or die 'count called on object of class '.ref($self); my $sql = "SELECT COUNT(*) FROM $table"; $sql .= " WHERE $where" if $where; - $self->scalar_sql($sql); + $self->scalar_sql($sql, @_); } =back