--- loncom/html/adm/helper/newslot.helper 2006/03/07 16:15:55 1.13
+++ loncom/html/adm/helper/newslot.helper 2006/06/25 21:57:56 1.20
@@ -64,6 +64,12 @@
return &{$helper->{DATA}{origslot}}('endtime');
+
+ if ($val < $helper->{'VARS'}{'starttime'}) {
+ return 'End time must be later than the start time.';
+ }
+ return undef;
+
Type:
@@ -96,6 +102,12 @@
return &{$helper->{DATA}{origslot}}('startreserve','anytime');
+
+ if (defined($val) && $val > $helper->{'VARS'}{'starttime'}) {
+ return 'Reservation time must come before the slot has started.';
+ }
+ return undef;
+
Maxium number of students allowed in this slot:
@@ -128,6 +140,12 @@
if (ref($default)) { return $default->[1]; }
return 'anytime';
+
+ if (defined($val) && $val < $helper->{'VARS'}{'startunique'}) {
+ return 'End time must be later than the start time.';
+ }
+ return undef;
+
@@ -139,6 +157,20 @@
delete($helper->{'VARS'}{'endunique'});
+
+
+
Proctored access:
+
+
+ No proctor checkin required for access.
+ Require proctored checkin for access.
+
+ my $default=&{$helper->{DATA}{origslot}}('proctor');
+ if ($default) { return 'yes'; }
+ return 'no';
+
+
+
Secret word proctors use to checkin users:
@@ -193,12 +225,12 @@
- FINISH
+
+ $helper->{'VARS'}{'useproctor'} eq 'no'
+ RESTRICTUSER
+
-
- $helper->{'VARS'}{'type'} eq 'schedulable_student'
- RESTRICTUSER
-
+ RESTRICTUSER
@@ -206,7 +238,6 @@
my @defaults;
my $default=&{$helper->{DATA}{origslot}}('proctor');
if ($default) {
- $default=~ tr/@/:/;
@defaults=(split(',',$default));
}
return @defaults;
@@ -216,6 +247,11 @@
+
+ $helper->{'VARS'}{'type'} ne 'schedulable_student'
+ FINISH
+
+
FINISH
Slots are by default available to all users in a course, if you would like this slot to be restricted to a subset of users you can specify restrictions.
@@ -270,41 +306,39 @@
$helper->{'VARS'}{'endunique'}];
}
- if ( $helper->{'VARS'}{'proctor'} =~/\S/ ) {
+ if ( $helper->{'VARS'}{'useproctor'} eq 'yes'
+ && $helper->{'VARS'}{'proctor'} =~/\S/ ) {
my @names;
+ # just need the username/domain throw away the other data
+ # that returns
foreach my $user (split(/\|\|\|/, $helper->{'VARS'}{'proctor'})) {
my ($uname,$udomain)=split(/:/,$user);
- push(@names,"$uname\@$udomain");
+ push(@names,"$uname:$udomain");
}
- # make sure the usenrmaes are unique
+ # make sure the usernmaes are unique
my %proctors = map { ($_,1) } @names;
$slot{'proctor'}=join(',',sort(keys(%proctors)));
}
- if ( $helper->{'VARS'}{'allowedsections'} !~/\S/ );
-
- my @names;
- foreach my $item (split(/\|\|\|/, $helper->{'VARS'}{'allowedsections'})) {
- my ($uname,$udomain)=split(/:/,$item);
- push(@names,"$uname:$udomain");
- }
-
- # make sure the choices are unique
- my %proctors = map { ($_,1) } @names;
- $slot{'allowedsections'}=join(',',sort(keys(%proctors)));
+ if ( $helper->{'VARS'}{'allowedsections'} =~/\S/ ) {
+ $slot{'allowedsections'}=
+ join(',',sort(split(/\|\|\|/,
+ $helper->{'VARS'}{'allowedsections'})));
}
- if ( $helper->{'VARS'}{$which} !~/\S/ );
-
+ if ( $helper->{'VARS'}{'allowedusers'} =~/\S/ ) {
my @names;
- foreach my $item (split(/\|\|\|/, $helper->{'VARS'}{$which})) {
+ # just need the username/domain throw away the other data
+ # that returns
+ foreach my $item (split(/\|\|\|/,
+ $helper->{'VARS'}{'allowedusers'})) {
my ($uname,$udomain)=split(/:/,$item);
push(@names,"$uname:$udomain");
}
# make sure the choices are unique
- my %proctors = map { ($_,1) } @names;
- $slot{$which}=join(',',sort(keys(%proctors)));
+ my %users = map { ($_,1) } @names;
+ $slot{'allowedusers'}=join(',',sort(keys(%users)));
}
my $cname = $env{'course.'.$env{'request.course.id'}.'.num'};