diff --git a/etc/WebGUI.conf.original b/etc/WebGUI.conf.original
index 8e10043c9..e912febb3 100644
--- a/etc/WebGUI.conf.original
+++ b/etc/WebGUI.conf.original
@@ -23,6 +23,10 @@ passiveProfileInterval = 86400 # in seconds
emailRecoveryLoggingEnabled = 1
passwordChangeLoggingEnabled = 1
+# Commerce part
+# The PayFlowPro plugin is commented out because it depends on proprietary code from VeriSign
+# paymentPlugins = PayFlowPro
+
authMethods = LDAP, WebGUI
wobjects = Article, EventsCalendar, FileManager, HttpProxy, \
diff --git a/lib/WebGUI/AdminConsole.pm b/lib/WebGUI/AdminConsole.pm
index a6f15523b..6ce3f490c 100644
--- a/lib/WebGUI/AdminConsole.pm
+++ b/lib/WebGUI/AdminConsole.pm
@@ -202,6 +202,24 @@ sub getAdminFunction {
op=>"viewActiveSessions",
group=>"3"
},
+ "commerce"=>{
+ title=>{
+ id=>"commerce settings",
+ namespace=>"Commerce"
+ },
+ icon=>"commerce.gif",
+ op=>"editCommerceSettings",
+ group=>"3"
+ },
+ "subscriptions"=>{
+ title=>{
+ id=>"manage subscriptions",
+ namespace=>"Subscription"
+ },
+ icon=>"subscriptions.gif",
+ op=>"listSubscriptions",
+ group=>"3"
+ },
};
if ($id) {
return $self->_formatFunction($functions->{$id});
diff --git a/lib/WebGUI/Operation.pm b/lib/WebGUI/Operation.pm
index d5ac03ff7..1a5f539eb 100644
--- a/lib/WebGUI/Operation.pm
+++ b/lib/WebGUI/Operation.pm
@@ -242,7 +242,29 @@ sub getOperations {
'editUserSave' => 'WebGUI::Operation::User',
'listUsers' => 'WebGUI::Operation::User',
'theWg' => 'WebGUI::Operation::WebGUI',
- 'genesis' => 'WebGUI::Operation::WebGUI'
+ 'genesis' => 'WebGUI::Operation::WebGUI',
+ 'deleteSubscription' => 'WebGUI::Operation::Subscription',
+ 'editSubscription' => 'WebGUI::Operation::Subscription',
+ 'editSubscriptionSave' => 'WebGUI::Operation::Subscription',
+ 'listSubscriptions' => 'WebGUI::Operation::Subscription',
+ 'purchaseSubscription' => 'WebGUI::Operation::Subscription',
+ 'createSubscriptionCodeBatch' => 'WebGUI::Operation::Subscription',
+ 'createSubscriptionCodeBatchSave' => 'WebGUI::Operation::Subscription',
+ 'deleteSubscriptionCodeBatch' => 'WebGUI::Operation::Subscription',
+ 'listSubscriptionCodeBatches' => 'WebGUI::Operation::Subscription',
+ 'redeemSubscriptionCode' => 'WebGUI::Operation::Subscription',
+ 'listSubscriptionCodes' => 'WebGUI::Operation::Subscription',
+ 'deleteSubscriptionCodes' => 'WebGUI::Operation::Subscription',
+ 'checkout' => 'WebGUI::Operation::Commerce',
+ 'checkoutConfirm' => 'WebGUI::Operation::Commerce',
+ 'checkoutSubmit' => 'WebGUI::Operation::Commerce',
+ 'editCommerceSettings' => 'WebGUI::Operation::Commerce',
+ 'editCommerceSettingsSave' => 'WebGUI::Operation::Commerce',
+ 'listPendingTransactions' => 'WebGUI::Operation::Commerce',
+ 'cancelTransaction' => 'WebGUI::Operation::Commerce',
+ 'completePendingTransaction' => 'WebGUI::Operation::Commerce',
+ 'viewPurchaseHistory' => 'WebGUI::Operation::TransactionLog',
+ 'cancelRecurringTransaction' => 'WebGUI::Operation::TransactionLog',
};
}
diff --git a/lib/WebGUI/Operation/Shared.pm b/lib/WebGUI/Operation/Shared.pm
index ca9366e8e..4acdaa6bf 100644
--- a/lib/WebGUI/Operation/Shared.pm
+++ b/lib/WebGUI/Operation/Shared.pm
@@ -34,25 +34,29 @@ our @EXPORT = qw(&menuWrapper);
push(@array,\%hash);
}
unless ($session{form}{op} eq "displayAccount"){
- my %hash;
- $hash{'options.display'} = ''.WebGUI::International::get(342).'';
- push(@array,\%hash);
+ my %hash;
+ $hash{'options.display'} = ''.WebGUI::International::get(342).'';
+ push(@array,\%hash);
}
unless ($session{form}{op} eq "editProfile"){
- my %hash;
- $hash{'options.display'} = ''.WebGUI::International::get(341).'';
- push(@array,\%hash);
+ my %hash;
+ $hash{'options.display'} = ''.WebGUI::International::get(341).'';
+ push(@array,\%hash);
}
unless ($session{form}{op} eq "viewProfile"){
- my %hash;
- $hash{'options.display'} = ''.WebGUI::International::get(343).'';
- push(@array,\%hash);
- }
- unless ($session{form}{op} eq "viewMessageLog"){
- my %hash;
- $hash{'options.display'} = ''.WebGUI::International::get(354).'';
- push(@array,\%hash);
+ my %hash;
+ $hash{'options.display'} = ''.WebGUI::International::get(343).'';
+ push(@array,\%hash);
}
+ unless ($session{form}{op} eq "viewMessageLog"){
+ my %hash;
+ $hash{'options.display'} = ''.WebGUI::International::get(354).'';
+ push(@array,\%hash);
+ }
+ unless ($session{form}{op} eq "redeemSubscriptionCode") {
+ push(@array, {'options.display' => ''.WebGUI::International::get('redeem code', 'Subscription').''});
+ }
+
my %logout;
$logout{'options.display'} = ''.WebGUI::International::get(64).'';
push(@array,\%logout);