';
+ $valout.'';
}
sub page_js {
@@ -1594,7 +1601,8 @@ sub assessparms {
foreach ('tolerance','date_default','date_start','date_end',
'date_interval','int','float','string') {
$r->print('');
+ &HTML::Entities::encode($env{'form.recent_'.$_},'"&<>').
+ '" name="recent_'.$_.'" />');
}
if (!$pssymb) {
@@ -2211,11 +2219,11 @@ Use * to allow unrestricted cloning in a
'pageseparators' => ''.&mt('Visibly Separate Items on Pages').' '.
'('.&mt('"[_1]" for visible separation','yes').', '.
&mt('changes will not show until next login').')',
- 'student_classlist_view' => ''.&mt('Allow students to view classlist.').''.&mt('("all":students can view all sections,"section":students can only view their own section.blank or "disabled" prevents student view.'),
+ 'student_classlist_view' => ''.&mt('Allow students to view classlist.').' '.&mt('("all":students can view all sections,"section":students can only view their own section.blank or "disabled" prevents student view.)'),
'student_classlist_portfiles' => ''.&mt('Include link to accessible portfolio files').' '.&mt('"[_1]" for link to each a listing of each student\'s files.','yes'),
'student_classlist_opt_in' => ''.&mt("Student's agreement needed for listing in student-viewable roster").' '.&mt('"[_1]" to require students to opt-in to listing in the roster (on the roster page).','yes'),
'plc.roles.denied'=> ''.&mt('Disallow live chatroom use for Roles').
- ' "st": '.
+ ' ("st": '.
&mt('student').', "ta": '.
'TA, "in": '.
&mt('instructor').'; '.&mt('role,role,...').') '.
@@ -2225,7 +2233,7 @@ Use * to allow unrestricted cloning in a
'(user:domain,user:domain,...)',
'pch.roles.denied'=> ''.&mt('Disallow Resource Discussion for Roles').
- ' "st": '.
+ ' ("st": '.
'student, "ta": '.
'TA, "in": '.
'instructor; role,role,...) '.
@@ -3074,14 +3082,14 @@ where $action is add or drop, and $clone
user for whom cloning ability is to be changed in course.
=cut
-
+
##################################################
##################################################
sub extract_cloners {
my ($clonelist,$allowclone) = @_;
if ($clonelist =~ /,/) {
- @{$allowclone} = split(/,/,$clonelist);
+ @{$allowclone} = split/,/,$clonelist;
} else {
$$allowclone[0] = $clonelist;
}
@@ -3093,14 +3101,15 @@ sub check_cloners {
my @allowclone = ();
&extract_cloners($$clonelist,\@allowclone);
foreach my $currclone (@allowclone) {
- if (!grep(/^\Q$currclone\E$/,@$oldcloner)) {
+ if (!grep/^\Q$currclone\E$/,@$oldcloner) {
if ($currclone eq '*') {
$clean_clonelist .= $currclone.',';
} else {
my ($uname,$udom) = split(/:/,$currclone);
if ($uname eq '*') {
if ($udom =~ /^$match_domain$/) {
- if (!&Apache::lonnet::domain($udom)) {
+ my @alldoms = &Apache::lonnet::all_domains();
+ if (!grep(/^\Q$udom\E$/,@alldoms)) {
$disallowed{'domain'} .= $currclone.',';
} else {
$clean_clonelist .= $currclone.',';
@@ -3143,9 +3152,9 @@ sub change_clone {
my @allowclone;
&extract_cloners($clonelist,\@allowclone);
foreach my $currclone (@allowclone) {
- if (!grep(/^$currclone$/,@$oldcloner)) {
+ if (!grep/^$currclone$/,@$oldcloner) {
if ($currclone ne '*') {
- ($uname,$udom) = split(/:/,$currclone);
+ ($uname,$udom) = split/:/,$currclone;
if ($uname && $udom && $uname ne '*') {
if (&Apache::lonnet::homeserver($uname,$udom) ne 'no_host') {
my %currclonecrs = &Apache::lonnet::dump('environment',$udom,$uname,'cloneable');
@@ -3163,9 +3172,9 @@ sub change_clone {
}
}
foreach my $oldclone (@$oldcloner) {
- if (!grep(/^\Q$oldclone\E$/,@allowclone)) {
+ if (!grep/^$oldclone$/,@allowclone) {
if ($oldclone ne '*') {
- ($uname,$udom) = split(/:/,$oldclone);
+ ($uname,$udom) = split/:/,$oldclone;
if ($uname && $udom && $uname ne '*' ) {
if (&Apache::lonnet::homeserver($uname,$udom) ne 'no_host') {
my %currclonecrs = &Apache::lonnet::dump('environment',$udom,$uname,'cloneable');