[dw-free] Fix sending a payment to an email address.
[commit: http://hg.dwscoalition.org/dw-free/rev/d044a86a82b9]
Fix sending a payment to an email address.
Patch by
janinedog.
Files modified:
Fix sending a payment to an email address.
Patch by
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Files modified:
- bin/upgrading/en.dat
- cgi-bin/DW/Shop/Item/Account.pm
-------------------------------------------------------------------------------- diff -r bab587a837ad -r d044a86a82b9 bin/upgrading/en.dat --- a/bin/upgrading/en.dat Fri May 01 01:22:24 2009 +0000 +++ b/bin/upgrading/en.dat Fri May 01 01:44:15 2009 +0000 @@ -3258,8 +3258,6 @@ shop.item.account.canbeadded.alreadyperm shop.item.account.canbeadded.invalidjournaltype=You can only send paid time to a personal journal or community account. -shop.item.account.canbeadded.invaliduser=The username that you entered is invalid or does not exist. - shop.item.account.canbeadded.nopaidforpremium=[[user]] has a Premium Paid Account, so they cannot receive a Paid Account. shop.item.account.canbeadded.noperms=There are no more seed accounts available for purchase at this time. diff -r bab587a837ad -r d044a86a82b9 cgi-bin/DW/Shop/Item/Account.pm --- a/cgi-bin/DW/Shop/Item/Account.pm Fri May 01 01:22:24 2009 +0000 +++ b/cgi-bin/DW/Shop/Item/Account.pm Fri May 01 01:44:15 2009 +0000 @@ -263,13 +263,9 @@ sub can_be_added { my $errref = $opts{errref}; my $target_u = LJ::load_userid( $self->t_userid ); - unless ( LJ::isu( $target_u ) ) { - $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.invaliduser' ); - return 0; - } # the receiving user must be a personal or community account - unless ( $target_u->is_personal || $target_u->is_community ) { + if ( LJ::isu( $target_u ) && !$target_u->is_personal && !$target_u->is_community ) { $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.invalidjournaltype' ); return 0; } @@ -281,15 +277,17 @@ sub can_be_added { } # check to make sure the target user's current account type doesn't conflict with the item - my $account_type = DW::Pay::get_account_type( $target_u ); - if ( $account_type eq 'seed' ) { - # no paid time can be purchased for seed accounts - $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.alreadyperm', { user => $target_u->ljuser_display } ); - return 0; - } elsif ( $account_type eq 'premium' && $self->class eq 'paid' ) { - # premium accounts can't get normal paid time - $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.nopaidforpremium', { user => $target_u->ljuser_display } ); - return 0; + if ( LJ::isu( $target_u ) ) { + my $account_type = DW::Pay::get_account_type( $target_u ); + if ( $account_type eq 'seed' ) { + # no paid time can be purchased for seed accounts + $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.alreadyperm', { user => $target_u->ljuser_display } ); + return 0; + } elsif ( $account_type eq 'premium' && $self->class eq 'paid' ) { + # premium accounts can't get normal paid time + $$errref = LJ::Lang::ml( 'shop.item.account.canbeadded.nopaidforpremium', { user => $target_u->ljuser_display } ); + return 0; + } } return 1; --------------------------------------------------------------------------------