Merge branch 'master' into WebGUI8
This commit is contained in:
commit
2400f19099
797 changed files with 33894 additions and 27196 deletions
|
|
@ -55,7 +55,7 @@ sub _isDuplicateUsername {
|
|||
my ($otherUser) = $self->session->db->quickArray("select count(*) from users where username=".$self->session->db->quote($username));
|
||||
return 0 if !$otherUser;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->error('<li>'.sprintf($i18n->get(77), $username,$username,$username,$self->session->datetime->epochToHuman($self->session->datetime->time(),"%y")).'</li>');
|
||||
$self->error('<li>'.sprintf($i18n->get(77), $username,$username,$username,$self->session->datetime->epochToHuman(time(),"%y")).'</li>');
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
@ -99,11 +99,11 @@ sub _logLogin {
|
|||
[
|
||||
$_[0],
|
||||
$_[1],
|
||||
$self->session->datetime->time(),
|
||||
time(),
|
||||
$self->session->env->getIp,
|
||||
$self->session->env->get("HTTP_USER_AGENT"),
|
||||
$self->session->getId,
|
||||
$self->session->datetime->time(),
|
||||
time(),
|
||||
]
|
||||
);
|
||||
}
|
||||
|
|
@ -233,7 +233,7 @@ sub createAccount {
|
|||
$formField = $field->formField($properties, undef, undef, undef, $defaultValue);
|
||||
}
|
||||
else {
|
||||
$formField = $field->formField($properties);
|
||||
$formField = $field->formField($properties, undef, undef, undef, undef, undef, 'useFormDefault');
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -397,7 +397,7 @@ sub deactivateAccount {
|
|||
$var{'yes.label'} = $i18n->get(44);
|
||||
$var{'no.url'} = $self->session->url->page();
|
||||
$var{'no.label'} = $i18n->get(45);
|
||||
return WebGUI::Asset::Template->newById($self->session,"PBtmpl0000000000000057")->process(\%var);
|
||||
return WebGUI::Asset::Template->newById($self->session,$self->get('getDeactivateAccountTemplateId'))->process(\%var);
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
|
@ -562,7 +562,8 @@ sub displayLogin {
|
|||
$vars->{'anonymousRegistration.isAllowed'} = ($self->session->setting->get("anonymousRegistration"));
|
||||
$vars->{'createAccount.url'} = $self->session->url->page('op=auth;method=createAccount');
|
||||
$vars->{'createAccount.label'} = $i18n->get(67);
|
||||
return WebGUI::Asset::Template->newById($self->session,$self->getLoginTemplateId)->process($vars);
|
||||
my $template = $self->getLoginTemplate;
|
||||
return $template->process($vars);
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
|
@ -652,6 +653,30 @@ sub getCreateAccountTemplateId {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getDeactivateAccountTemplateId ( )
|
||||
|
||||
This method should be overridden by the subclass and should return the template ID for the deactivate account screen.
|
||||
|
||||
=cut
|
||||
|
||||
sub getDeactivateAccountTemplateId {
|
||||
return "PBtmpl0000000000000057";
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getDefaultLoginTemplateId ( )
|
||||
|
||||
This method should be overridden by the subclass and should return the default template ID for the login screen.
|
||||
|
||||
=cut
|
||||
|
||||
sub getDefaultLoginTemplateId {
|
||||
return "PBtmpl0000000000000013";
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getExtrasStyle ( )
|
||||
|
||||
This method returns the proper field to display for required fields.
|
||||
|
|
@ -673,6 +698,27 @@ sub getExtrasStyle {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getLoginTemplate ( )
|
||||
|
||||
Returns a WebGUI::Asset::Template object for the login template. If the configured
|
||||
template cannot be used, then it returns a default template object.
|
||||
|
||||
=cut
|
||||
|
||||
sub getLoginTemplate {
|
||||
my $self = shift;
|
||||
my $session = $self->session;
|
||||
my $templateId = $self->getLoginTemplateId;
|
||||
my $template = WebGUI::Asset::Template->newById($session, $templateId);
|
||||
if (!$template) {
|
||||
$templateId = $self->getDefaultLoginTemplateId;
|
||||
$template = WebGUI::Asset::Template->newById($session, $templateId);
|
||||
}
|
||||
return $template;
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getLoginTemplateId ( )
|
||||
|
||||
This method should be overridden by the subclass and should return the template ID for the login screen.
|
||||
|
|
@ -692,8 +738,8 @@ Returns a hash reference with the user's authentication information. This metho
|
|||
=cut
|
||||
|
||||
sub getParams {
|
||||
my $self = shift;
|
||||
my $userId = $_[0] || $self->userId;
|
||||
my $self = shift;
|
||||
my $userId = $_[0] || $self->userId;
|
||||
my $authMethod = $_[1] || $self->authMethod;
|
||||
return $self->session->db->buildHashRef("select fieldName, fieldData from authentication where userId=".$self->session->db->quote($userId)." and authMethod=".$self->session->db->quote($authMethod));
|
||||
}
|
||||
|
|
@ -796,11 +842,10 @@ Open version tag is reclaimed if user is in site wide or singlePerUser mode.
|
|||
|
||||
sub login {
|
||||
my $self = shift;
|
||||
my ($cmd, $uid, $u);
|
||||
|
||||
#Create a new user
|
||||
$uid = $self->userId;
|
||||
$u = WebGUI::User->new($self->session,$uid);
|
||||
my $uid = $self->userId;
|
||||
my $u = WebGUI::User->new($self->session,$uid);
|
||||
$self->session->user({user=>$u});
|
||||
$u->karma($self->session->setting->get("karmaPerLogin"),"Login","Just for logging in.") if ($self->session->setting->get("useKarma"));
|
||||
$self->_logLogin($uid,"success");
|
||||
|
|
@ -820,29 +865,29 @@ sub login {
|
|||
}
|
||||
|
||||
|
||||
# Set the proper redirect
|
||||
if ( $self->session->setting->get( 'showMessageOnLogin' )
|
||||
&& $self->user->profileField( $LOGIN_MESSAGE_SEEN )
|
||||
< $self->session->setting->get( 'showMessageOnLoginTimes' )
|
||||
) {
|
||||
return $self->showMessageOnLogin;
|
||||
}
|
||||
elsif ( $self->session->setting->get("redirectAfterLoginUrl") ) {
|
||||
$self->session->http->setRedirect($self->session->setting->get("redirectAfterLoginUrl"));
|
||||
}
|
||||
elsif ( $self->session->form->get('returnUrl') ) {
|
||||
# Set the proper redirect
|
||||
if ( $self->session->setting->get( 'showMessageOnLogin' )
|
||||
&& $self->user->profileField( $LOGIN_MESSAGE_SEEN )
|
||||
< $self->session->setting->get( 'showMessageOnLoginTimes' )
|
||||
) {
|
||||
return $self->showMessageOnLogin;
|
||||
}
|
||||
elsif ( $self->session->form->get('returnUrl') ) {
|
||||
$self->session->http->setRedirect( $self->session->form->get('returnUrl') );
|
||||
$self->session->scratch->delete("redirectAfterLogin");
|
||||
}
|
||||
elsif ( $self->session->scratch->get("redirectAfterLogin") ) {
|
||||
$self->session->http->setRedirect($self->session->scratch->get("redirectAfterLogin"));
|
||||
$self->session->scratch->delete("redirectAfterLogin");
|
||||
}
|
||||
elsif ( my $url = $self->session->scratch->delete("redirectAfterLogin") ) {
|
||||
$self->session->http->setRedirect($url);
|
||||
}
|
||||
elsif ( $self->session->setting->get("redirectAfterLoginUrl") ) {
|
||||
$self->session->http->setRedirect($self->session->setting->get("redirectAfterLoginUrl"));
|
||||
$self->session->scratch->delete("redirectAfterLogin");
|
||||
}
|
||||
|
||||
# Get open version tag. This is needed if we want
|
||||
# to reclaim a version right after login (singlePerUser and siteWide mode)
|
||||
# and to have the correct version displayed.
|
||||
WebGUI::VersionTag->getWorking($self->session(), q{noCreate});
|
||||
# Get open version tag. This is needed if we want
|
||||
# to reclaim a version right after login (singlePerUser and siteWide mode)
|
||||
# and to have the correct version displayed.
|
||||
WebGUI::VersionTag->getWorking($self->session(), q{noCreate});
|
||||
|
||||
return undef;
|
||||
}
|
||||
|
|
@ -868,6 +913,9 @@ sub logout {
|
|||
my $error = qx($command);
|
||||
$self->session->errorHandler->warn($error) if $error;
|
||||
}
|
||||
|
||||
# Do not allow caching of the logout page (to ensure the page gets requested)
|
||||
$self->session->http->setCacheControl( "none" );
|
||||
|
||||
return undef;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue