--- loncom/auth/lonlogin.pm 2015/03/03 22:06:55 1.161
+++ loncom/auth/lonlogin.pm 2016/04/19 18:09:11 1.166
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Login Screen
#
-# $Id: lonlogin.pm,v 1.161 2015/03/03 22:06:55 raeburn Exp $
+# $Id: lonlogin.pm,v 1.166 2016/04/19 18:09:11 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -113,7 +113,10 @@ sub handler {
my %sessiondata;
if ($env{'form.iptoken'}) {
%sessiondata = &Apache::lonnet::tmpget($env{'form.iptoken'});
- my $delete = &Apache::lonnet::tmpdel($env{'form.token'});
+ unless ($sessiondata{'sessionserver'}) {
+ my $delete = &Apache::lonnet::tmpdel($env{'form.iptoken'});
+ delete($env{'form.iptoken'});
+ }
}
# ----------------------------------------------------------- Process Interface
$env{'form.interface'}=~s/\W//g;
@@ -223,6 +226,12 @@ sub handler {
}
$tokenextras .= '&symb='.&escape($env{'form.symb'});
}
+ if ($env{'form.iptoken'}) {
+ if (!$tokenextras) {
+ $tokenextras = '&&';
+ }
+ $tokenextras .= '&iptoken='.&escape($env{'form.iptoken'});
+ }
my $logtoken=Apache::lonnet::reply(
'tmpput:'.$ukey.$lkey.'&'.$firsturl.$tokenextras,
$lonhost);
@@ -343,19 +352,12 @@ uextkey=this.document.client.elements.ue
lextkey=this.document.client.elements.lextkey.value;
initkeys();
-this.document.server.elements.upass0.value
- =this.document.client.elements.upass$now.value.substr(0,15);
-this.document.server.elements.upass1.value
- =this.document.client.elements.upass$now.value.substr(15,15);
-this.document.server.elements.upass2.value
- =this.document.client.elements.upass$now.value.substr(30,15);
-
if(this.document.server.action.substr(0,5) === 'http:'){
- for (var idx in [1,2,3]){
- this.document.server.elements['upass' + idx].value =
- crypted(this.document.server.elements['upass' + idx].value);
- }
-}
+ this.document.server.elements.upass0.value
+ =getCrypted(this.document.client.elements.upass$now.value);
+} else {
+ this.document.server.elements.upass0.value
+ =this.document.client.elements.upass$now.value;
this.document.client.elements.uname.value='';
this.document.client.elements.upass$now.value='';
@@ -386,9 +388,20 @@ ENDSCRIPT
alink => "$alink",
onload => 'javascript:enableInput();',);
- my %defaultdomconf = &Apache::loncommon::get_domainconf($defdom);
- my $headextra = $defaultdomconf{$defdom.'.login.headtag_'.$lonhost};
- my $headextra_exempt = $defaultdomconf{$domain.'.login.headtag_exempt_'.$lonhost};
+ my ($lonhost_in_use,$headextra,$headextra_exempt,@hosts,%defaultdomconf);
+ @hosts = &Apache::lonnet::current_machine_ids();
+ $lonhost_in_use = $lonhost;
+ if (@hosts > 1) {
+ foreach my $hostid (@hosts) {
+ if (&Apache::lonnet::host_domain($hostid) eq $defdom) {
+ $lonhost_in_use = $hostid;
+ last;
+ }
+ }
+ }
+ %defaultdomconf = &Apache::loncommon::get_domainconf($defdom);
+ $headextra = $defaultdomconf{$defdom.'.login.headtag_'.$lonhost_in_use};
+ $headextra_exempt = $defaultdomconf{$domain.'.login.headtag_exempt_'.$lonhost_in_use};
if ($headextra) {
my $omitextra;
if ($headextra_exempt ne '') {
@@ -400,7 +413,7 @@ ENDSCRIPT
}
unless ($omitextra) {
my $confname = $defdom.'-domainconfig';
- if ($headextra =~ m{^\Q/res/$defdom/$confname/login/headtag/$lonhost/\E}) {
+ if ($headextra =~ m{^\Q/res/$defdom/$confname/login/headtag/$lonhost_in_use/\E}) {
my $extra = &Apache::lonnet::getfile(&Apache::lonnet::filelocation("",$headextra));
unless ($extra eq '-1') {
$js .= "\n".$extra."\n";
@@ -459,8 +472,6 @@ ENDSCRIPT
-
-