version 1.1323, 2018/11/07 19:23:45
|
version 1.1327, 2019/04/24 01:44:30
|
Line 13937 sub load_tmp_file {
|
Line 13937 sub load_tmp_file {
|
|
|
sub valid_datatoken { |
sub valid_datatoken { |
my ($datatoken) = @_; |
my ($datatoken) = @_; |
if ($datatoken =~ /^$match_username\_$match_domain\_enroll_$match_domain\_$match_courseid\_\d+_\d+$/) { |
if ($datatoken =~ /^$match_username\_$match_domain\_enroll_(|$match_domain\_$match_courseid)\_\d+_\d+$/) { |
return $datatoken; |
return $datatoken; |
} |
} |
return; |
return; |
Line 16425 sub lon_status_items {
|
Line 16425 sub lon_status_items {
|
E => 100, |
E => 100, |
W => 4, |
W => 4, |
N => 1, |
N => 1, |
|
U => 5, |
threshold => 200, |
threshold => 200, |
sysmail => 2500, |
sysmail => 2500, |
); |
); |
Line 16432 sub lon_status_items {
|
Line 16433 sub lon_status_items {
|
E => 'Errors', |
E => 'Errors', |
W => 'Warnings', |
W => 'Warnings', |
N => 'Notices', |
N => 'Notices', |
|
U => 'Unsent', |
); |
); |
return (\%defaults,\%names); |
return (\%defaults,\%names); |
} |
} |
Line 17482 sub needs_coursereinit {
|
Line 17484 sub needs_coursereinit {
|
} |
} |
|
|
sub update_content_constraints { |
sub update_content_constraints { |
my ($cdom,$cnum,$chome,$cid) = @_; |
my ($cdom,$cnum,$chome,$cid,$keeporder) = @_; |
my %curr_reqd_hash = &Apache::lonnet::userenvironment($cdom,$cnum,'internal.releaserequired'); |
my %curr_reqd_hash = &Apache::lonnet::userenvironment($cdom,$cnum,'internal.releaserequired'); |
my ($reqdmajor,$reqdminor) = split(/\./,$curr_reqd_hash{'internal.releaserequired'}); |
my ($reqdmajor,$reqdminor) = split(/\./,$curr_reqd_hash{'internal.releaserequired'}); |
my (%checkresponsetypes,%checkcrsrestypes); |
my (%checkresponsetypes,%checkcrsrestypes); |
Line 17530 sub update_content_constraints {
|
Line 17532 sub update_content_constraints {
|
} |
} |
undef($navmap); |
undef($navmap); |
} |
} |
|
my (@resources,@order,@resparms,@zombies); |
|
if ($keeporder) { |
|
use LONCAPA::map; |
|
@resources = @LONCAPA::map::resources; |
|
@order = @LONCAPA::map::order; |
|
@resparms = @LONCAPA::map::resparms; |
|
@zombies = @LONCAPA::map::zombies; |
|
} |
my $suppmap = 'supplemental.sequence'; |
my $suppmap = 'supplemental.sequence'; |
my ($suppcount,$supptools,$errors) = (0,0,0); |
my ($suppcount,$supptools,$errors) = (0,0,0); |
($suppcount,$supptools,$errors) = &recurse_supplemental($cnum,$cdom,$suppmap, |
($suppcount,$supptools,$errors) = &recurse_supplemental($cnum,$cdom,$suppmap, |
$suppcount,$supptools,$errors); |
$suppcount,$supptools,$errors); |
|
if ($keeporder) { |
|
@LONCAPA::map::resources = @resources; |
|
@LONCAPA::map::order = @order; |
|
@LONCAPA::map::resparms = @resparms; |
|
@LONCAPA::map::zombies = @zombies; |
|
} |
if ($supptools) { |
if ($supptools) { |
my ($major,$minor) = split(/\./,$checkcrsrestypes{'exttool'}); |
my ($major,$minor) = split(/\./,$checkcrsrestypes{'exttool'}); |
if (($major > $reqdmajor) || ($major == $reqdmajor && $minor > $reqdminor)) { |
if (($major > $reqdmajor) || ($major == $reqdmajor && $minor > $reqdminor)) { |
Line 17560 sub allmaps_incourse {
|
Line 17576 sub allmaps_incourse {
|
if ($lastchange > $env{'request.course.tied'}) { |
if ($lastchange > $env{'request.course.tied'}) { |
my ($furl,$ferr) = &Apache::lonuserstate::readmap("$cdom/$cnum"); |
my ($furl,$ferr) = &Apache::lonuserstate::readmap("$cdom/$cnum"); |
unless ($ferr) { |
unless ($ferr) { |
&update_content_constraints($cdom,$cnum,$chome,$cid); |
&update_content_constraints($cdom,$cnum,$chome,$cid,1); |
} |
} |
} |
} |
my $navmap = Apache::lonnavmaps::navmap->new(); |
my $navmap = Apache::lonnavmaps::navmap->new(); |
Line 17694 sub symb_to_docspath {
|
Line 17710 sub symb_to_docspath {
|
} |
} |
|
|
sub captcha_display { |
sub captcha_display { |
my ($context,$lonhost) = @_; |
my ($context,$lonhost,$defdom) = @_; |
my ($output,$error); |
my ($output,$error); |
my ($captcha,$pubkey,$privkey,$version) = |
my ($captcha,$pubkey,$privkey,$version) = |
&get_captcha_config($context,$lonhost); |
&get_captcha_config($context,$lonhost,$defdom); |
if ($captcha eq 'original') { |
if ($captcha eq 'original') { |
$output = &create_captcha(); |
$output = &create_captcha(); |
unless ($output) { |
unless ($output) { |
Line 17713 sub captcha_display {
|
Line 17729 sub captcha_display {
|
} |
} |
|
|
sub captcha_response { |
sub captcha_response { |
my ($context,$lonhost) = @_; |
my ($context,$lonhost,$defdom) = @_; |
my ($captcha_chk,$captcha_error); |
my ($captcha_chk,$captcha_error); |
my ($captcha,$pubkey,$privkey,$version) = &get_captcha_config($context,$lonhost); |
my ($captcha,$pubkey,$privkey,$version) = &get_captcha_config($context,$lonhost,$defdom); |
if ($captcha eq 'original') { |
if ($captcha eq 'original') { |
($captcha_chk,$captcha_error) = &check_captcha(); |
($captcha_chk,$captcha_error) = &check_captcha(); |
} elsif ($captcha eq 'recaptcha') { |
} elsif ($captcha eq 'recaptcha') { |
Line 17727 sub captcha_response {
|
Line 17743 sub captcha_response {
|
} |
} |
|
|
sub get_captcha_config { |
sub get_captcha_config { |
my ($context,$lonhost) = @_; |
my ($context,$lonhost,$dom_in_effect) = @_; |
my ($captcha,$pubkey,$privkey,$version,$hashtocheck); |
my ($captcha,$pubkey,$privkey,$version,$hashtocheck); |
my $hostname = &Apache::lonnet::hostname($lonhost); |
my $hostname = &Apache::lonnet::hostname($lonhost); |
my $serverhomeID = &Apache::lonnet::get_server_homeID($hostname); |
my $serverhomeID = &Apache::lonnet::get_server_homeID($hostname); |
Line 17775 sub get_captcha_config {
|
Line 17791 sub get_captcha_config {
|
} elsif ($domconfhash{$serverhomedom.'.login.captcha'} eq 'original') { |
} elsif ($domconfhash{$serverhomedom.'.login.captcha'} eq 'original') { |
$captcha = 'original'; |
$captcha = 'original'; |
} |
} |
} |
} elsif ($context eq 'passwords') { |
|
if ($dom_in_effect) { |
|
my %passwdconf = &Apache::lonnet::get_passwdconf($dom_in_effect); |
|
if ($passwdconf{'captcha'} eq 'recaptcha') { |
|
if (ref($passwdconf{'recaptchakeys'}) eq 'HASH') { |
|
$pubkey = $passwdconf{'recaptchakeys'}{'public'}; |
|
$privkey = $passwdconf{'recaptchakeys'}{'private'}; |
|
} |
|
if ($privkey && $pubkey) { |
|
$captcha = 'recaptcha'; |
|
$version = $passwdconf{'recaptchaversion'}; |
|
if ($version ne '2') { |
|
$version = 1; |
|
} |
|
} else { |
|
$captcha = 'original'; |
|
} |
|
} elsif ($passwdconf{'captcha'} ne 'notused') { |
|
$captcha = 'original'; |
|
} |
|
} |
|
} |
return ($captcha,$pubkey,$privkey,$version); |
return ($captcha,$pubkey,$privkey,$version); |
} |
} |
|
|