--- loncom/interface/createaccount.pm 2014/05/30 16:46:03 1.67 +++ loncom/interface/createaccount.pm 2014/06/19 23:36:54 1.68 @@ -4,7 +4,7 @@ # kerberos, or SSO) or an e-mail address. Requests to use an e-mail address as # username may be processed automatically, or may be queued for approval. # -# $Id: createaccount.pm,v 1.67 2014/05/30 16:46:03 raeburn Exp $ +# $Id: createaccount.pm,v 1.68 2014/06/19 23:36:54 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -277,15 +277,13 @@ sub handler { } elsif (!$token) { &print_header($r,$start_page,$courseid); my $now=time; - my $gotlondes; - if (grep(/^login$/,@{$cancreate})) { + if ((grep(/^login$/,@{$cancreate})) && (!grep(/^email$/,@{$cancreate}))) { if (open(my $jsh,"<$include/londes.js")) { while(my $line = <$jsh>) { $r->print($line); } close($jsh); $r->print(&javascript_setforms($now)); - $gotlondes = 1; } } if (grep(/^email$/,@{$cancreate})) { @@ -293,8 +291,7 @@ sub handler { } my $usertype = &get_usertype($domain); $output = &print_username_form($r,$domain,$domdesc,$cancreate,$now,$lonhost, - $include,$courseid,$gotlondes,$emailusername, - $usertype); + $include,$courseid,$emailusername,$usertype); } $r->print($output); &print_footer($r); @@ -512,7 +509,7 @@ ENDSCRIPT } sub print_username_form { - my ($r,$domain,$domdesc,$cancreate,$now,$lonhost,$include,$courseid,$gotlondes,$emailusername, + my ($r,$domain,$domdesc,$cancreate,$now,$lonhost,$include,$courseid,$emailusername, $usertype) = @_; my %lt = &Apache::lonlocal::texthash ( unam => 'username', @@ -571,8 +568,7 @@ sub print_username_form { $lt{'yopw'}.'
'; } $output .= &print_dataentry_form($r,$domain,$lonhost,$include,$now,$captchaform, - $courseid,$gotlondes,$emailusername,$captcha, - $usertype); + $courseid,$emailusername,$captcha,$usertype); } $output .= ''; } @@ -885,21 +881,16 @@ sub start_session { # Stores token to store DES-key and stage during creation session # sub print_dataentry_form { - my ($r,$domain,$lonhost,$include,$now,$captchaform,$courseid,$gotlondes,$emailusername,$captcha, + my ($r,$domain,$lonhost,$include,$now,$captchaform,$courseid,$emailusername,$captcha, $usertype) = @_; my ($error,$output); - unless ($gotlondes) { - if (open(my $jsh,"<$include/londes.js")) { - while(my $line = <$jsh>) { - $r->print($line); - } - close($jsh); - $output = &javascript_setforms($now,$emailusername,$captcha,$usertype)."\n"; - $gotlondes = 1; - } - } - if ($gotlondes) { - $output .= &javascript_checkpass($now,'email'); + if (open(my $jsh,"<$include/londes.js")) { + while(my $line = <$jsh>) { + $r->print($line); + } + close($jsh); + $output = &javascript_setforms($now,$emailusername,$captcha,$usertype)."\n". + &javascript_checkpass($now,'email'); my ($lkey,$ukey) = &Apache::loncommon::des_keys(); my ($lextkey,$uextkey) = &getkeys($lkey,$ukey); my $logtoken=Apache::lonnet::reply('tmpput:'.$ukey.$lkey.'&createaccount:createaccount',