X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_pkg_option.pm;h=142622bf5cdeaeb91de42188020b887a1c7b2c19;hb=80511cb4158b98db01deec317e5408675487bc6e;hp=c2f609e1b8de42fa49dde27001e2d87e5f70e2eb;hpb=5fc8c5edf574ab024d4646914b6432d458e2ffbd;p=freeside.git diff --git a/FS/FS/part_pkg_option.pm b/FS/FS/part_pkg_option.pm index c2f609e1b..142622bf5 100644 --- a/FS/FS/part_pkg_option.pm +++ b/FS/FS/part_pkg_option.pm @@ -2,7 +2,7 @@ package FS::part_pkg_option; use strict; use vars qw( @ISA ); -use FS::Record qw( qsearch qsearchs ); +use FS::Record qw( qsearch qsearchs dbh ); use FS::part_pkg; @ISA = qw(FS::Record); @@ -117,6 +117,34 @@ sub check { =back +=cut + +# +# Used by FS::Upgrade to migrate to a new database. +# +# + +sub _upgrade_data { # class method + my ($class, %opts) = @_; + + my $sql = "UPDATE part_pkg_option SET optionname = 'recur_fee'". + " WHERE optionname = 'recur_flat'"; + my $sth = dbh->prepare($sql) or die dbh->errstr; + $sth->execute or die $sth->errstr; + + $sql = "UPDATE part_pkg_option SET optionname = 'recur_method',". + "optionvalue = 'prorate' WHERE optionname = 'enable_prorate'"; + $sth = dbh->prepare($sql) or die dbh->errstr; + $sth->execute or die $sth->errstr; + + $sql = "UPDATE part_pkg_option SET optionvalue = NULL WHERE ". + "optionname = 'contract_end_months' AND optionvalue = '(none)'"; + $sth = dbh->prepare($sql) or die dbh->errstr; + $sth->execute or die $sth->errstr; + ''; + +} + =head1 BUGS Possibly.