added a very basic in shop credit manager screen

This commit is contained in:
JT Smith 2008-05-20 22:14:55 +00:00
parent 75c44c110f
commit b7840e7ed9
5 changed files with 93 additions and 3 deletions

View file

@ -5,7 +5,8 @@ use Class::InsideOut qw{ :std };
use WebGUI::Shop::Admin;
use WebGUI::Exception::Shop;
use WebGUI::International;
use WebGUI::HTMLForm;
use WebGUI::User;
=head1 NAME
@ -166,5 +167,59 @@ Returns a reference to the userId.
#-------------------------------------------------------------------
=head2 www_adjust
Adjust credit for a user.
=cut
sub www_adjust {
my ($class, $session) = @_;
my $admin = WebGUI::Shop::Admin->new($session);
return $session->privilege->insufficient() unless $admin->canManage;
my $form = $session->form;
my $credit = $class->new($session, $form->get('userId'));
$credit->adjust($form->get('amount'), $form->get('comment'));
my $i18n = WebGUI::International->new($session, "Shop");
my $message = sprintf $i18n->get('add credit message'), $form->get('amount'), WebGUI::User->new($session, $form->get('userId'))->username, $credit->getSum;
return $class->www_manage($session, $message);
}
#-------------------------------------------------------------------
=head2 www_manage
Displays a credit management interface.
=cut
sub www_manage {
my ($class, $session, $message) = @_;
my $admin = WebGUI::Shop::Admin->new($session);
return $session->privilege->insufficient() unless $admin->canManage;
my $i18n = WebGUI::International->new($session, "Shop");
my $f = WebGUI::HTMLForm->new($session);
$f->hidden(name=>'shop',value=>'credit');
$f->hidden(name=>'method',value=>'adjust');
$f->user(
name => 'userId',
label => $i18n->get('username'),
value => $session->user->userId,
);
$f->float(
name => 'amount',
label => $i18n->get('amount'),
);
$f->text(
name => 'comment',
label => $i18n->get('notes'),
);
$f->submit;
return $admin->getAdminConsole->render($message.$f->print, $i18n->get('in shop credit'));
}
1;