summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorivan <ivan>2003-11-04 10:56:59 +0000
committerivan <ivan>2003-11-04 10:56:59 +0000
commit4e7892098012e6b14a6c5eeed9254bcddef2bf8f (patch)
tree677d0b12a36fbc060a33aa007ec9f889826e6633
parent721f9eb78e758e2b695cc4f4ec888b67c20c9bb5 (diff)
finish treating serials as ints!
-rw-r--r--FS/FS/Record.pm5
1 files changed, 3 insertions, 2 deletions
diff --git a/FS/FS/Record.pm b/FS/FS/Record.pm
index 1f9bd5c87..331de0225 100644
--- a/FS/FS/Record.pm
+++ b/FS/FS/Record.pm
@@ -225,7 +225,8 @@ sub qsearch {
if ( ! defined( $record->{$_} ) || $record->{$_} eq '' ) {
if ( $op eq '=' ) {
if ( driver_name eq 'Pg' ) {
- if ( $dbdef->table($table)->column($column)->type =~ /(int)/i ) {
+ my $type = $dbdef->table($table)->column($column)->type;
+ if ( $type =~ /(int|serial)/i ) {
qq-( $column IS NULL )-;
} else {
qq-( $column IS NULL OR $column = '' )-;
@@ -268,7 +269,7 @@ sub qsearch {
grep defined( $record->{$_} ) && $record->{$_} ne '', @fields
) {
if ( $record->{$field} =~ /^\d+(\.\d+)?$/
- && $dbdef->table($table)->column($field)->type =~ /(int)/i
+ && $dbdef->table($table)->column($field)->type =~ /(int|serial)/i
) {
$sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_INTEGER } );
} else {