diff --git a/lib/WebGUI/Asset/Shortcut.pm b/lib/WebGUI/Asset/Shortcut.pm
index 53b446f23..d1826bf70 100644
--- a/lib/WebGUI/Asset/Shortcut.pm
+++ b/lib/WebGUI/Asset/Shortcut.pm
@@ -310,7 +310,7 @@ sub getFieldsList {
my $output = ''.$i18n->get('Manage Profile Fields').'
';
my %fieldNames;
tie %fieldNames, 'Tie::IxHash';
- foreach my $field (@{WebGUI::ProfileField->getFields}) {
+ foreach my $field (@{WebGUI::ProfileField->new($self->session,'dummy')->getFields}) {
my $fieldId = $field->getId;
next if $fieldId =~ /contentPositions/;
$fieldNames{$fieldId} = $field->getLabel.' ['.$fieldId.']';
@@ -708,11 +708,11 @@ sub www_saveUserPrefs {
$self->uncacheOverrides;
my $i18n = WebGUI::International->new($self->session);
my $u = WebGUI::User->new($self->session, $self->discernUserId);
- foreach my $fieldId ($self->request->params) {
+ foreach my $fieldId ($self->request->param) {
my $field = WebGUI::ProfileField->new($self->session,$fieldId);
next unless $field;
$data{$field->getId} = $field->formProcess;
- if ($field->getId eq 'email' && WebGUI::Operation::Profile::isDuplicateEmail($data{$field->getId})) {
+ if ($field->getId eq 'email' && WebGUI::Operation::Profile::isDuplicateEmail($self->session,$data{$field->getId})) {
return '
'.$i18n->get(1072).'';
}
if ($field->isRequired && !$data{$field->getId}) {
diff --git a/lib/WebGUI/Asset/Wobject/HttpProxy.pm b/lib/WebGUI/Asset/Wobject/HttpProxy.pm
index 73d60994d..d0ceebf77 100644
--- a/lib/WebGUI/Asset/Wobject/HttpProxy.pm
+++ b/lib/WebGUI/Asset/Wobject/HttpProxy.pm
@@ -229,7 +229,7 @@ sub view {
if($self->session->env->get("REQUEST_METHOD")=~/GET/i || $redirect != 0) { # request_method is also GET after a redirection. Just to make sure we're
# not posting the same data over and over again.
if($redirect == 0) {
- foreach my $input_name ($self->session->request->params) {
+ foreach my $input_name ($self->session->request->param) {
next if ($input_name !~ /^HttpProxy_/); # Skip non proxied form var's
$input_name =~ s/^HttpProxy_//;
$proxiedUrl=$self->session->url->append($proxiedUrl,"$input_name=".$self->session->form->process('HttpProxy_'.$input_name));
@@ -241,7 +241,7 @@ sub view {
my $contentType = 'application/x-www-form-urlencoded'; # default Content Type header
# Create a %formdata hash to pass key/value pairs to the POST request
- foreach my $input_name ($self->session->request->params) {
+ foreach my $input_name ($self->session->request->param) {
next if ($input_name !~ /^HttpProxy_/); # Skip non proxied form var's
$input_name =~ s/^HttpProxy_//;
diff --git a/lib/WebGUI/Asset/Wobject/SQLReport.pm b/lib/WebGUI/Asset/Wobject/SQLReport.pm
index 8edecdbef..271a626f6 100644
--- a/lib/WebGUI/Asset/Wobject/SQLReport.pm
+++ b/lib/WebGUI/Asset/Wobject/SQLReport.pm
@@ -320,7 +320,7 @@ sub _processQuery {
if (defined $dbh) {
if ($query =~ /^select/i || $query =~ /^show/i || $query =~ /^describe/i) {
my $url = $self->getUrl('func=view');
- foreach ($self->session->request->params) {
+ foreach ($self->session->request->param) {
unless ($_ eq "pn" || $_ eq "func" || $_ =~ /identifier/i || $_ =~ /password/i) {
$url = $self->session->url->append($url, $self->session->url->escape($_)
.'='.$self->session->url->escape($self->session->form->process($_)));
diff --git a/lib/WebGUI/Asset/Wobject/Survey.pm b/lib/WebGUI/Asset/Wobject/Survey.pm
index a1bc26cec..8c7e87718 100644
--- a/lib/WebGUI/Asset/Wobject/Survey.pm
+++ b/lib/WebGUI/Asset/Wobject/Survey.pm
@@ -1168,7 +1168,7 @@ sub www_respond {
return "" unless ($self->session->scratch->get($varname));
my $userId = ($self->get("anonymous")) ? substr(md5_hex($self->session->user->userId),0,8) : $self->session->user->userId;
my $terminate = 0;
- foreach my $key ($self->session->request->params) {
+ foreach my $key ($self->session->request->param) {
if ($key =~ /^answerId_(.+)$/) {
my $id = $1;
my ($previousResponse) = $self->session->db->quickArray("select count(*) from Survey_questionResponse
diff --git a/lib/WebGUI/Asset/Wobject/WSClient.pm b/lib/WebGUI/Asset/Wobject/WSClient.pm
index ccdafd7e4..4faaa0d02 100644
--- a/lib/WebGUI/Asset/Wobject/WSClient.pm
+++ b/lib/WebGUI/Asset/Wobject/WSClient.pm
@@ -163,7 +163,7 @@ sub getEditForm {
-hoverHelp => $i18n->get('5 description'),
-value => $self->get('params'),
);
- if ($self->session->config->('soapHttpHeaderOverride')) {
+ if ($self->session->config->get('soapHttpHeaderOverride')) {
$tabform->getTab("properties")->text (
-name => 'httpHeader',
-label => $i18n->get(16),
@@ -245,7 +245,7 @@ sub view {
# this page, with important params
@seen{@exclude_params} = ();
- foreach ($self->session->request->params) {
+ foreach ($self->session->request->param) {
unless (exists $seen{$_}) {
$query_string .= $self->session->url->escape($_) . '='
. $self->session->url->escape($self->session->form->process($_)) . ';';
diff --git a/lib/WebGUI/AssetClipboard.pm b/lib/WebGUI/AssetClipboard.pm
index 989a9f694..f6c48bae4 100644
--- a/lib/WebGUI/AssetClipboard.pm
+++ b/lib/WebGUI/AssetClipboard.pm
@@ -319,7 +319,7 @@ sub www_manageClipboard {
} else {
$ac->addSubmenuItem($self->getUrl('func=manageClipboard;systemClipboard=1'), $i18n->get(954));
$ac->addSubmenuItem($self->getUrl('func=emptyClipboard'), $i18n->get(950),
- 'onclick="return window.confirm(\''.$i18n->(951,"WebGUI").'\')"',"Asset");
+ 'onclick="return window.confirm(\''.$i18n->get(951,"WebGUI").'\')"',"Asset");
$limit = 1;
}
$self->session->style->setLink($self->session->config->get("extrasURL").'/assetManager/assetManager.css', {rel=>"stylesheet",type=>"text/css"});
diff --git a/lib/WebGUI/AssetTrash.pm b/lib/WebGUI/AssetTrash.pm
index 57e76f2ab..68fce2b41 100644
--- a/lib/WebGUI/AssetTrash.pm
+++ b/lib/WebGUI/AssetTrash.pm
@@ -191,7 +191,7 @@ sub www_manageTrash {
$ac->setHelp("trash manage");
if ($self->session->form->process("systemTrash") && $self->session->user->isInGroup(3)) {
$header = $i18n->get(965);
- $ac->addSubmenuItem($self->getUrl('func=manageTrash'), $i18n->(10,"WebGUI"));
+ $ac->addSubmenuItem($self->getUrl('func=manageTrash'), $i18n->get(10,"WebGUI"));
} else {
$ac->addSubmenuItem($self->getUrl('func=manageTrash;systemTrash=1'), $i18n->get(964));
$limit = 1;
diff --git a/lib/WebGUI/Auth.pm b/lib/WebGUI/Auth.pm
index 7b966c025..c4e6c936e 100644
--- a/lib/WebGUI/Auth.pm
+++ b/lib/WebGUI/Auth.pm
@@ -199,7 +199,7 @@ sub createAccount {
$vars->{'create.form.header'} .= WebGUI::Form::hidden($self->session,{"name"=>"method","value"=>$method});
#User Defined Options
- $vars->{'create.form.profile'} = WebGUI::Operation::Profile::getRequiredProfileFields();
+ $vars->{'create.form.profile'} = WebGUI::Operation::Profile::getRequiredProfileFields($self->session);
$vars->{'create.form.submit'} = WebGUI::Form::submit($self->session,{});
$vars->{'create.form.footer'} = WebGUI::Form::formFooter($self->session,);
@@ -238,37 +238,39 @@ Hashref of profile values returned by the function WebGUI::Operation::Profile::v
=cut
sub createAccountSave {
- my $self = shift;
- my $username = $_[0];
- my $properties = $_[1];
- my $password = $_[2];
- my $profile = $_[3];
-
+ my $self = shift;
+ my $username = $_[0];
+ my $properties = $_[1];
+ my $password = $_[2];
+ my $profile = $_[3];
+
my $i18n = WebGUI::International->new($self->session);
-
-
- my $u = WebGUI::User->new($self->session,"new");
- $self->user($u);
- my $userId = $u->userId;
- $u->username($username);
- $u->authMethod($self->authMethod);
- $u->karma($self->session->setting->get("karmaPerLogin"),"Login","Just for logging in.") if ($self->session->setting->get("useKarma"));
- WebGUI::Operation::Profile::saveProfileFields($u,$profile) if($profile);
- $self->saveParams($userId,$self->authMethod,$properties);
-
- if ($self->getSetting("sendWelcomeMessage")){
- my $authInfo = "\n\n".$i18n->get(50).": ".$username;
- $authInfo .= "\n".$i18n->get(51).": ".$password if($password);
- $authInfo .= "\n\n";
- WebGUI::MessageLog::addEntry($self->userId,"",$i18n->get(870),$self->getSetting("welcomeMessage").$authInfo);
- }
- $self->session->user({user=>$u});
- $self->_logLogin($userId,"success");
+
+
+ my $u = WebGUI::User->new($self->session,"new");
+ $self->user($u);
+ my $userId = $u->userId;
+ $u->username($username);
+ $u->authMethod($self->authMethod);
+ $u->karma($self->session->setting->get("karmaPerLogin"),"Login","Just for logging in.") if ($self->session->setting->get("useKarma"));
+ WebGUI::Operation::Profile::saveProfileFields($self->session,$u,$profile) if($profile);
+ $self->saveParams($userId,$self->authMethod,$properties);
+
+ if ($self->getSetting("sendWelcomeMessage")){
+ my $authInfo = "\n\n".$i18n->get(50).": ".$username;
+ $authInfo .= "\n".$i18n->get(51).": ".$password if($password);
+ $authInfo .= "\n\n";
+ WebGUI::MessageLog::addEntry($self->userId,"",$i18n->get(870),$self->getSetting("welcomeMessage").$authInfo);
+ }
+ $self->session->user({user=>$u});
+ $self->session->var->end($self->session->var->get("sessionId"));
+ $self->session->var->start($userId,$self->session->getId);
+ $self->_logLogin($userId,"success");
my $command = $self->session->setting->get("runOnRegistration");
WebGUI::Macro::process($self->session,\$command);
- system($command) if ($self->session->setting->get("runOnRegistration") ne "");
- WebGUI::MessageLog::addInternationalizedEntry('',$self->session->setting->get("onNewUserAlertGroup"),'',536) if ($self->session->setting->get("alertOnNewUser"));
- return "";
+ system($command) if ($self->session->setting->get("runOnRegistration") ne "");
+ WebGUI::MessageLog::addInternationalizedEntry('',$self->session->setting->get("onNewUserAlertGroup"),'',536) if ($self->session->setting->get("alertOnNewUser"));
+ return "";
}
#-------------------------------------------------------------------
diff --git a/lib/WebGUI/Auth/WebGUI.pm b/lib/WebGUI/Auth/WebGUI.pm
index e7dd49f0f..df918b661 100644
--- a/lib/WebGUI/Auth/WebGUI.pm
+++ b/lib/WebGUI/Auth/WebGUI.pm
@@ -210,7 +210,7 @@ sub createAccountSave {
}
}
$error .= $self->error unless($self->_isValidPassword($password,$passConfirm));
- my ($profile, $temp, $warning) = WebGUI::Operation::Profile::validateProfileData();
+ my ($profile, $temp, $warning) = WebGUI::Operation::Profile::validateProfileData($self->session);
$error .= $temp;
return $self->createAccount($error) unless ($error eq "");
diff --git a/lib/WebGUI/Commerce/Payment.pm b/lib/WebGUI/Commerce/Payment.pm
index 3322dfb73..2596bcd57 100644
--- a/lib/WebGUI/Commerce/Payment.pm
+++ b/lib/WebGUI/Commerce/Payment.pm
@@ -200,7 +200,7 @@ The namespace of the plugin.
sub init {
my ($class, $session, $namespace, $properties);
$class = shift;
- $session = shift;
+ $session = shift; use WebGUI; WebGUI::dumpSession($session);
$namespace = shift;
$properties = $session->db->buildHashRef("select fieldName, fieldValue from commerceSettings where namespace=".$session->db->quote($namespace)." and type='Payment'");
diff --git a/lib/WebGUI/Commerce/Payment/ITransact.pm b/lib/WebGUI/Commerce/Payment/ITransact.pm
index e1d4371cd..ef2026624 100644
--- a/lib/WebGUI/Commerce/Payment/ITransact.pm
+++ b/lib/WebGUI/Commerce/Payment/ITransact.pm
@@ -501,8 +501,8 @@ sub confirmTransaction {
sub init {
my ($class, $self);
$class = shift;
-
- $self = $class->SUPER::init('ITransact');
+ my $session = shift; use WebGUI; WebGUI::dumpSession($session);
+ $self = $class->SUPER::init($session,'ITransact');
return $self;
}
diff --git a/lib/WebGUI/Operation/Commerce.pm b/lib/WebGUI/Operation/Commerce.pm
index 918565464..dba4934a9 100644
--- a/lib/WebGUI/Operation/Commerce.pm
+++ b/lib/WebGUI/Operation/Commerce.pm
@@ -39,8 +39,8 @@ sub _submenu {
#-------------------------------------------------------------------
sub _clearCheckoutScratch {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
- _clearShippingScratch();
- _clearPaymentScratch();
+ _clearShippingScratch($session);
+ _clearPaymentScratch($session);
}
#-------------------------------------------------------------------
@@ -107,9 +107,9 @@ sub www_cancelTransaction {
#-------------------------------------------------------------------
sub www_checkout {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
- return WebGUI::Operation::execute($session,'selectShippingMethod') unless (_shippingSelected);
+ return WebGUI::Operation::execute($session,'selectShippingMethod') unless (_shippingSelected($session));
- return WebGUI::Operation::execute($session,'selectPaymentGateway') unless (_paymentSelected);
+ return WebGUI::Operation::execute($session,'selectPaymentGateway') unless (_paymentSelected($session));
return WebGUI::Operation::execute($session,'checkoutConfirm');
}
@@ -129,7 +129,7 @@ sub www_checkoutConfirm {
}
# If no payment gateway has been selected yet, have the user do so now.
- return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected && _shippingSelected);
+ return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected($session) && _shippingSelected($session));
$var{errorLoop} = [ map {{message => $_}} @{$errors} ] if $errors;
@@ -210,7 +210,7 @@ sub www_checkoutSubmit {
}
# Check if a valid payment gateway has bee selected. If not have the user do so.
- return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected && _shippingSelected);
+ return WebGUI::Operation::execute($session,'checkout') unless (_paymentSelected($session) && _shippingSelected($session));
# Load shipping plugin.
$shipping = WebGUI::Commerce::Shipping->load($session, $session->scratch->get('shippingMethod'));
@@ -315,7 +315,7 @@ sub www_checkoutSubmit {
$param{statusExplanation} = $i18n->get('status codes information');
$param{resultLoop} = \@resultLoop;
- _clearCheckoutScratch;
+ _clearCheckoutScratch($session);
# If everythings ok show the purchase history
return WebGUI::Operation::execute($session,'viewPurchaseHistory') unless ($checkoutError);
@@ -505,7 +505,7 @@ sub www_editCommerceSettings {
$session->style->setScript($session->config->get("extrasURL").'/swapLayers.js',{type=>"text/javascript"});
- return _submenu($tabform->print, 'edit commerce settings title', 'commerce manage');
+ return _submenu($session,$tabform->print, 'edit commerce settings title', 'commerce manage');
}
#-------------------------------------------------------------------
@@ -513,7 +513,7 @@ sub www_editCommerceSettingsSave {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
return $session->privilege->adminOnly() unless ($session->user->isInGroup(3));
- foreach ($session->request->params) {
+ foreach ($session->request->param) {
# Store the plugin confiuration data in a special table for security and the general settings in the
# normal settings table for easy access.
if (/~([^~]*)~([^~]*)~([^~]*)/) {
@@ -524,7 +524,7 @@ sub www_editCommerceSettingsSave {
fieldValue => $session->form->process($_)
});
} elsif ($_ ne 'op') {
- WebGUI::Setting::set($_,$session->form->process($_));
+ $session->setting->set($_,$session->form->process($_));
}
}
@@ -561,7 +561,7 @@ sub www_listPendingTransactions {
$output .= '';
$output .= $p->getBarTraditional($session->form->process("pn"));
- _submenu($output, 'list pending transactions', 'list pending transactions');
+ _submenu($session,$output, 'list pending transactions', 'list pending transactions');
}
#-------------------------------------------------------------------
@@ -657,7 +657,7 @@ sub www_listTransactions {
}
$output .= '';
- return _submenu($output, 'list transactions')
+ return _submenu($session,$output, 'list transactions')
}
#-------------------------------------------------------------------
@@ -665,7 +665,7 @@ sub www_selectPaymentGateway {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
my ($plugins, $f, $i18n, @pluginLoop, %var);
- _clearPaymentScratch;
+ _clearPaymentScratch($session);
$i18n = WebGUI::International->new($session, 'Commerce');
$plugins = WebGUI::Commerce::Payment->getEnabledPlugins($session);
@@ -710,7 +710,7 @@ sub www_selectShippingMethod {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
my ($plugins, $f, $i18n, @pluginLoop, %var);
- _clearShippingScratch;
+ _clearShippingScratch($session);
$i18n = WebGUI::International->new($session, 'Commerce');
$plugins = WebGUI::Commerce::Shipping->getEnabledPlugins($session);
@@ -768,7 +768,7 @@ sub www_updateCart {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
my $shoppingCart = WebGUI::Commerce::ShoppingCart->new($session);
- foreach my $formElement ($session->request->params) {
+ foreach my $formElement ($session->request->param) {
if ($formElement =~ m/^quantity~([^~]*)~([^~]*)$/) {
$shoppingCart->setQuantity($2, $1, $session->form->process($formElement));
}
diff --git a/lib/WebGUI/Operation/Profile.pm b/lib/WebGUI/Operation/Profile.pm
index 7d869ca81..0f4923d25 100644
--- a/lib/WebGUI/Operation/Profile.pm
+++ b/lib/WebGUI/Operation/Profile.pm
@@ -29,7 +29,7 @@ use WebGUI::Operation::Shared;
sub getRequiredProfileFields {
my $session = shift; use WebGUI; WebGUI::dumpSession($session);
my @array;
- foreach my $field (@{WebGUI::ProfileField->getRequiredFields}) {
+ foreach my $field (@{WebGUI::ProfileField->new($session,'dummy')->getRequiredFields}) {
push(@array, {
'profile.formElement' => $field->formField,
'profile.formElement.label' => $field->getLabel
@@ -75,7 +75,7 @@ sub validateProfileData {
my $error = "";
my $warning = "";
my $i18n = WebGUI::International->new($session);
- foreach my $field (@{WebGUI::ProfileField->getEditableFields}) {
+ foreach my $field (@{WebGUI::ProfileField->new($session,'dummy')->getEditableFields}) {
my $fieldValue = $field->formProcess;
if (ref $fieldValue eq "ARRAY") {
$data{$field->getId} = $$fieldValue[0];
@@ -84,7 +84,7 @@ sub validateProfileData {
}
if ($field->isRequired && !$data{$field->getId}) {
$error .= ''.$field->getLabel.' '.$i18n->get(451).'';
- } elsif ($field->getId eq "email" && isDuplicateEmail($data{$field->getId})) {
+ } elsif ($field->getId eq "email" && isDuplicateEmail($session,$data{$field->getId})) {
$warning .= ''.$i18n->get(1072).'';
}
}
diff --git a/lib/WebGUI/Operation/Settings.pm b/lib/WebGUI/Operation/Settings.pm
index 7c68b5b47..992a3d968 100644
--- a/lib/WebGUI/Operation/Settings.pm
+++ b/lib/WebGUI/Operation/Settings.pm
@@ -300,10 +300,10 @@ sub www_saveSettings {
next;
}
unless ($key eq "op") {
- WebGUI::Setting::set($key,$value);
+ $session->setting->set($key,$value);
}
}
- return www_editSettings();
+ return www_editSettings($session);
}
1;
diff --git a/lib/WebGUI/Operation/Statistics.pm b/lib/WebGUI/Operation/Statistics.pm
index f3cb788de..9da8e6acb 100644
--- a/lib/WebGUI/Operation/Statistics.pm
+++ b/lib/WebGUI/Operation/Statistics.pm
@@ -65,7 +65,7 @@ sub www_viewStatistics {
($data) = $session->db->quickArray("select count(*) from groups");
$output .= '| '.$data.' |
';
$output .= '';
- return _submenu($output);
+ return _submenu($session,$output);
}
diff --git a/lib/WebGUI/Operation/User.pm b/lib/WebGUI/Operation/User.pm
index b0bbc9bba..222c478b2 100644
--- a/lib/WebGUI/Operation/User.pm
+++ b/lib/WebGUI/Operation/User.pm
@@ -407,7 +407,7 @@ sub www_editUserSave {
my $authInstance = WebGUI::Operation::Auth::getInstance($_,$u->userId);
$authInstance->editUserFormSave;
}
- foreach my $field (@{WebGUI::ProfileField->getFields}) {
+ foreach my $field (@{WebGUI::ProfileField->new($session,'dummy')->getFields}) {
next if $field->getId =~ /contentPositions/;
$u->profileField($field->getId,$field->formProcess);
}
diff --git a/lib/WebGUI/ProfileField.pm b/lib/WebGUI/ProfileField.pm
index 3a51d1585..79292fdb8 100644
--- a/lib/WebGUI/ProfileField.pm
+++ b/lib/WebGUI/ProfileField.pm
@@ -173,7 +173,7 @@ Returns the value retrieved from a form post.
sub formProcess {
my $self = shift;
- my $result = $self->session->form->process($self->getId,$self->get("fieldType"),WebGUI::Operation::Shared::secureEval($self->get("dataDefault")));
+ my $result = $self->session->form->process($self->getId,$self->get("fieldType"),WebGUI::Operation::Shared::secureEval($self->session,$self->get("dataDefault")));
if (ref $result eq "ARRAY") {
my @results = @$result;
for (my $count=0;$count{_paramsHashRef}) {
my $hash;
- foreach ($self->session->request->params) {
+ foreach ($self->session->request->param) {
$hash->{$_} = $self->process($_);
}
$self->{_paramsHashRef} = $hash;
diff --git a/lib/WebGUI/Session/Var.pm b/lib/WebGUI/Session/Var.pm
index 386a4b9ed..08056fefd 100644
--- a/lib/WebGUI/Session/Var.pm
+++ b/lib/WebGUI/Session/Var.pm
@@ -168,6 +168,7 @@ sub new {
$self->{_var} = $session->db->quickHashRef("select * from userSession where sessionId=".$session->db->quote($sessionId));
if ($self->{_var}{expires} && $self->{_var}{expires} < $session->datetime->time()) {
$self->end;
+ $self->start(1,$sessionId);
} elsif ($self->{_var}{sessionId} ne "") {
$self->{_var}{lastPageView} = $session->datetime->time();
$self->{_var}{lastIP} = $session->env->get("REMOTE_ADDR");