more session related bug fixes

This commit is contained in:
JT Smith 2006-01-17 05:49:11 +00:00
parent 3fd57a3559
commit 25ed169c56
5 changed files with 41 additions and 41 deletions

View file

@ -10,7 +10,7 @@ package WebGUI::Operation;
# http://www.plainblack.com info@plainblack.com
#-------------------------------------------------------------------
use strict;
use strict qw(vars subs);
=head1 NAME
@ -25,7 +25,7 @@ B<NOTE:>After adding a new operation, the operation / package name must be added
=head1 SYNOPSIS
use WebGUI::Operation;
$html = WebGUI::Operation::execute("switchAdminOn");
$html = WebGUI::Operation::execute($session,"switchAdminOn");
$hashRef = WebGUI::Operation::getOperations();
=head1 METHODS
@ -60,9 +60,9 @@ sub execute {
# Call the method
$cmd = $operation->{$op} . '::www_'.$op;
$output = eval{&$cmd($session)};
$session->error("Couldn't execute operation : ".$cmd.". Root cause: ".$@) if ($@);
$session->errorHandler->error("Couldn't execute operation : ".$cmd.". Root cause: ".$@) if ($@);
} else {
$session->security("execute an invalid operation: ".$op);
$session->errorHandler->security("execute an invalid operation: ".$op);
}
return $output;
}

View file

@ -64,7 +64,7 @@ sub www_auth {
my $authMethod = getInstance($session,$auth);
my $methodCall = shift || $session->form->process("method") || "init";
if(!$authMethod->isCallable($methodCall)){
$session->errorHandler->security("access uncallable auth method on page '".$session->asset->getTitle."' [".$session->asset->pageId."].");
$session->errorHandler->security("access uncallable auth method");
my $i18n = WebGUI::International->new($session);
return $i18n->get(1077);
}

View file

@ -84,7 +84,7 @@ sub www_addToCart {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
WebGUI::Commerce::ShoppingCart->new($session)->add($session->form->process("itemId"), $session->form->process("itemType"), $session->form->process("quantity"));
return WebGUI::Operation::execute('viewCart');
return WebGUI::Operation::execute($session,'viewCart');
}
#-------------------------------------------------------------------
@ -107,11 +107,11 @@ sub www_cancelTransaction {
#-------------------------------------------------------------------
sub www_checkout {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
return WebGUI::Operation::execute('selectShippingMethod') unless (_shippingSelected);
return WebGUI::Operation::execute($session,'selectShippingMethod') unless (_shippingSelected);
return WebGUI::Operation::execute('selectPaymentGateway') unless (_paymentSelected);
return WebGUI::Operation::execute($session,'selectPaymentGateway') unless (_paymentSelected);
return WebGUI::Operation::execute('checkoutConfirm');
return WebGUI::Operation::execute($session,'checkoutConfirm');
}
#-------------------------------------------------------------------
@ -125,11 +125,11 @@ sub www_checkoutConfirm {
# If the user isn't logged in yet, let him do so or have him create an account
if ($session->user->userId == 1) {
$session->scratch->set('redirectAfterLogin', $session->url->page('op=checkout'));
return WebGUI::Operation::execute('auth');
return WebGUI::Operation::execute($session,'auth');
}
# If no payment gateway has been selected yet, have the user do so now.
return WebGUI::Operation::execute('checkout') unless (_paymentSelected && _shippingSelected);
return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected && _shippingSelected);
$var{errorLoop} = [ map {{message => $_}} @{$errors} ] if $errors;
@ -206,11 +206,11 @@ sub www_checkoutSubmit {
# check if user has already logged in
if ($session->user->userId == 1) {
$session->scratch->set('redirectAfterLogin', $session->url->page('op=checkout'));
return WebGUI::Operation::execute('displayLogin');
return WebGUI::Operation::execute($session,'displayLogin');
}
# Check if a valid payment gateway has bee selected. If not have the user do so.
return WebGUI::Operation::execute('checkout') unless (_paymentSelected && _shippingSelected);
return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected && _shippingSelected);
# Load shipping plugin.
$shipping = WebGUI::Commerce::Shipping->load($session, $session->scratch->get('shippingMethod'));
@ -318,7 +318,7 @@ sub www_checkoutSubmit {
_clearCheckoutScratch;
# If everythings ok show the purchase history
return WebGUI::Operation::execute('viewPurchaseHistory') unless ($checkoutError);
return WebGUI::Operation::execute($session,'viewPurchaseHistory') unless ($checkoutError);
# If an error has occurred show the template errorlog
return $session->style->userStyle(WebGUI::Asset::Template->new($session->setting->get("commerceTransactionErrorTemplateId"))->process(\%param));
@ -331,7 +331,7 @@ sub www_completePendingTransaction {
WebGUI::Commerce::Transaction->new($session, $session->form->process("tid"))->completeTransaction;
return WebGUI::Operation::execute('listPendingTransactions');
return WebGUI::Operation::execute($session,'listPendingTransactions');
}
#-------------------------------------------------------------------
@ -361,7 +361,7 @@ sub www_deleteCartItem {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
WebGUI::Commerce::ShoppingCart->new($session)->delete($session->form->process("itemId"), $session->form->process("itemType"));
return WebGUI::Operation::execute('viewCart');
return WebGUI::Operation::execute($session,'viewCart');
}
#-------------------------------------------------------------------
@ -528,7 +528,7 @@ sub www_editCommerceSettingsSave {
}
}
return WebGUI::Operation::execute('editCommerceSettings');
return WebGUI::Operation::execute($session,'editCommerceSettings');
}
#-------------------------------------------------------------------
@ -679,7 +679,7 @@ sub www_selectPaymentGateway {
}
} elsif (scalar(@$plugins) == 1) {
$session->form->process("paymentGateway") = $plugins->[0]->namespace;
return WebGUI::Operation::execute('selectPaymentGatewaySave');
return WebGUI::Operation::execute($session,'selectPaymentGatewaySave');
}
$var{pluginLoop} = \@pluginLoop;
@ -702,7 +702,7 @@ sub www_selectPaymentGatewaySave {
$session->scratch->set('paymentGateway', '-delete-');
}
return WebGUI::Operation::execute('checkout');
return WebGUI::Operation::execute($session,'checkout');
}
#-------------------------------------------------------------------
@ -725,7 +725,7 @@ sub www_selectShippingMethod {
}
} elsif (scalar(@$plugins) == 1) {
$session->form->process("shippingMethod") = $plugins->[0]->namespace;
return WebGUI::Operation::execute("selectShippingMethodSave");
return WebGUI::Operation::execute($session,"selectShippingMethodSave");
}
$var{pluginLoop} = \@pluginLoop;
@ -745,7 +745,7 @@ sub www_selectShippingMethodSave {
my $shipping = WebGUI::Commerce::Shipping->load($session, $session->form->process("shippingMethod"));
$shipping->processOptionsForm;
return WebGUI::Operation::execute('selectShipping') unless ($shipping->optionsOk);
return WebGUI::Operation::execute($session,'selectShipping') unless ($shipping->optionsOk);
if ($shipping->enabled) {
$session->scratch->set('shippingMethod', $shipping->namespace);
@ -754,13 +754,13 @@ sub www_selectShippingMethodSave {
$session->scratch->set('shippingMethod', '-delete-');
}
return WebGUI::Operation::execute('checkout');
return WebGUI::Operation::execute($session,'checkout');
}
#-------------------------------------------------------------------
sub www_transactionComplete {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
return WebGUI::Operation::execute('viewPurchaseHistory');
return WebGUI::Operation::execute($session,'viewPurchaseHistory');
}
#-------------------------------------------------------------------
@ -774,7 +774,7 @@ my $shoppingCart = WebGUI::Commerce::ShoppingCart->new($session);
}
}
return WebGUI::Operation::execute('viewCart');
return WebGUI::Operation::execute($session,'viewCart');
}
#-------------------------------------------------------------------

View file

@ -43,7 +43,7 @@ sub www_deleteProductParameterOption {
WebGUI::Product->getByOptionId($session,$optionId)->deleteOption($optionId);
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -55,7 +55,7 @@ sub www_deleteProductParameter {
WebGUI::Product->getByParameterId($session,$parameterId)->deleteParameter($parameterId);
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -67,7 +67,7 @@ sub www_deleteProduct {
WebGUI::Product->new($session,$productId)->delete;
return WebGUI::Operation::execute('listProducts');
return WebGUI::Operation::execute($session,'listProducts');
}
#-------------------------------------------------------------------
@ -160,7 +160,7 @@ sub www_editProductSave {
push(@error, $i18n->get('edit product weight error')) unless (defined $session->form->process("weight") && $session->form->process("price") =~ /^\d+(\.\d+)?$/);
push(@error, $i18n->get('edit product sku error')) unless ($session->form->process("sku"));
return '<ul><li>'.join('</li><li>', @error).'</li></ul><br />'.WebGUI::Operation::execute('editProduct') if (@error);
return '<ul><li>'.join('</li><li>', @error).'</li></ul><br />'.WebGUI::Operation::execute($session,'editProduct') if (@error);
$productId = $session->form->process("productId");
$product = WebGUI::Product->new($session,$productId);
@ -175,7 +175,7 @@ sub www_editProductSave {
});
$session->form->process("productId") = $product->get('productId');
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -239,7 +239,7 @@ sub www_editProductParameterSave {
push (@error, $i18n->get('edit parameter name error')) unless $session->form->process("name");
push (@error, $i18n->get('edit parameter productId error')) unless $session->form->process("productId");
return "<ul><li>".join('</li><li>', @error)."</li></ul>".WebGUI::Operation::execute('editProductParameter') if (@error);
return "<ul><li>".join('</li><li>', @error)."</li></ul>".WebGUI::Operation::execute($session,'editProductParameter') if (@error);
$product = WebGUI::Product->new($session,$session->form->process("productId"));
$skuTemplate = $product->get('skuTemplate');
@ -260,8 +260,8 @@ sub www_editProductParameterSave {
name => $session->form->process("name")
});
return WebGUI::Operation::execute('editSkuTemplate') if ($session->form->process("parameterId") eq 'new');
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'editSkuTemplate') if ($session->form->process("parameterId") eq 'new');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -340,7 +340,7 @@ sub www_editProductParameterOptionSave {
push (@error, $i18n->get('edit option value error')) unless ($session->form->process("value"));
push (@error, $i18n->get('edit option parameterId error')) unless ($session->form->process("parameterId"));
return '<ul><li>'.join('</li><li>', @error).'</li></ul><br />'.WebGUI::Operation::execute('editProduct') if (@error);
return '<ul><li>'.join('</li><li>', @error).'</li></ul><br />'.WebGUI::Operation::execute($session,'editProduct') if (@error);
$product = WebGUI::Product->getByParameterId($session,$session->form->process("parameterId"));
$optionId = $session->form->process("optionId");
@ -352,7 +352,7 @@ sub www_editProductParameterOptionSave {
skuModifier => $session->form->process("skuModifier")
});
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -418,7 +418,7 @@ my $variantId = $session->form->process("variantId");
WebGUI::Product->getByVariantId($session,$variantId)->setVariant($variantId, $session->form->paramsHashRef);
return WebGUI::Operation::execute('listProductVariants');
return WebGUI::Operation::execute($session,'listProductVariants');
}
#-------------------------------------------------------------------
@ -472,7 +472,7 @@ sub www_editSkuTemplateSave {
skuTemplate => $session->form->process("skuTemplate"),
});
return WebGUI::Operation::execute('manageProduct');
return WebGUI::Operation::execute($session,'manageProduct');
}
#-------------------------------------------------------------------
@ -514,7 +514,7 @@ sub www_listProductVariants {
$productId = $session->form->process("productId") || $session->scratch->get('managingProduct');
return WebGUI::Operation::execute('listProducts') if ($productId eq 'new' || !$productId);
return WebGUI::Operation::execute($session,'listProducts') if ($productId eq 'new' || !$productId);
$product = WebGUI::Product->new($session,$productId);
@ -582,7 +582,7 @@ sub www_listProductVariantsSave {
available => $availableVariants{$_->{variantId}} ? '1' : '0'});
}
return WebGUI::Operation::execute('listProductVariants');
return WebGUI::Operation::execute($session,'listProductVariants');
}
#-------------------------------------------------------------------
@ -595,7 +595,7 @@ sub www_manageProduct {
$i18n = WebGUI::International->new($session, "ProductManager");
$productId = $session->form->process("productId") || $session->scratch->get('managingProduct');
return WebGUI::Operation::execute('listProducts') if ($productId eq 'new' || !$productId);
return WebGUI::Operation::execute($session,'listProducts') if ($productId eq 'new' || !$productId);
$session->scratch->set('managingProduct', $productId);
$product = WebGUI::Product->new($session,$productId);

View file

@ -98,7 +98,7 @@ sub www_deleteTransaction {
WebGUI::Commerce::Transaction->new($session, $transactionId)->delete;
return WebGUI::Operation::execute('listTransactions');
return WebGUI::Operation::execute($session,'listTransactions');
}
#-------------------------------------------------------------------
@ -108,7 +108,7 @@ sub www_deleteTransactionItem {
WebGUI::Commerce::Transaction->new($session, $session->form->process("tid"))->deleteItem($session->form->process("iid"), $session->form->process("itype"));
return WebGUI::Operation::execute('listTransactions');
return WebGUI::Operation::execute($session,'listTransactions');
}
1;