Fix error where someone didn't have a paidstatus row leading to an
autovivification error.
Patch by denise.
diffs (17 lines):
diff -r 653249cfe994 -r 279e0674d6fa cgi-bin/DW/Setting/Display/AccountLevel.pm
--- a/cgi-bin/DW/Setting/Display/AccountLevel.pm Mon Jul 13 03:34:01
2009 +0000
+++ b/cgi-bin/DW/Setting/Display/AccountLevel.pm Mon Jul 13 05:28:58
2009 +0000
@@ -48,8 +48,11 @@ sub option {
my ( $class, $u, $errs, $args ) = @_;
my $paidstatus = DW::Pay::get_paid_status( $u );
- my $paidtype = "<strong>" . $paidstatus ? DW::Pay::type_name(
$paidstatus->{typeid} ) : "" . "</strong>";
- my $expiretime = LJ::mysql_time( $paidstatus->{expiretime} );
+ my $typeid = $paidstatus ? $paidstatus->{typeid} :
DW::Pay::default_typeid();
+ my $expiretime = "(never)";
+
+ my $paidtype = "<strong>" . DW::Pay::type_name( $typeid ) . "</strong>";
+ $expiretime = LJ::mysql_time( $paidstatus->{expiretime} ) if $paidstatus
&& ! $paidstatus->{permanent};
if ( $paidstatus && $paidstatus->{expiresin} > 0 && !
$paidstatus->{permanent} ) {
return BML::ml( 'setting.display.accounttype.status', { status =>
$paidtype, exptime => $expiretime } );
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog