--- loncom/html/adm/helper/course.initialization.helper 2005/04/07 06:56:22 1.15
+++ loncom/html/adm/helper/course.initialization.helper 2010/03/14 15:25:47 1.30
@@ -28,6 +28,16 @@
$helper->{DATA}->{CRS});
# Try to fix bug 1757
Apache::lonnet::coursedescription($env{'request.course.id'});
+ if ($name eq 'description') {
+ my %crsinfo = &Apache::lonnet::courseiddump($crsdom,'.',1,'.','.',$crsnum,undef,undef,'.');
+ if (ref($crsinfo{$courseid}) eq 'HASH') {
+ $crsinfo{$courseid}{'description'} = $val;
+ my $crshome = &Apache::lonnet::homeserver($crsnum,$crsdom);
+ unless ($crshome eq 'no_host') {
+ my $putresult = &Apache::lonnet::courseidput($crsdom,\%crsinfo,$crshome,'notime');
+ }
+ }
+ }
return 1;
} else {
return 0;
@@ -49,19 +59,18 @@
All settings which you can change with this Helper can also be changed
- by going to the PARM screen and clicking on the "Set
- course environment" button.
+ by going to the "Modify parameter settings" screen and clicking on the "Course Configuration" button.
If you do not have experience coordinating LON-CAPA courses or if you
- prefer the Helper interface, please click Next ->.
+ prefer the Helper interface, please click "Next".
-
+
- The "Course Description" is the name of the course that will be
+ The "Course Title" is the name of the course that will be
seen by the students. You may now modify the description and hit
- "Next ->" to continue.
+ "Next" to continue.
@@ -76,10 +85,10 @@
-
+
- LON-CAPA has live chat functionality. This course will receive
- its own chat room. You may deny students, TAs, or instructors
+
LON-CAPA has chat room functionality. This course will receive
+ its own chat room. You may deny students, TAs, or instructors
the right to access the chat room.
@@ -87,7 +96,7 @@
Teaching Assistants - teaching assistants will not be able use or view the chat room
Instructor - instructors will not be able to use or view the chat room
- my $denied = &{$helper->{DATA}->{GETVAL}}('plch.roles.denied');
+ my $denied = &{$helper->{DATA}->{GETVAL}}('plc.roles.denied');
$denied =~ s/,/\|\|\|/g;
return $denied;
@@ -105,10 +114,10 @@
$denied =~ s/,([^,]*)$/, and\1/;
}
if ($denied) {
- $denied = substr($denied, 1) . ' not allowed to participate in discussion.';
+ $denied = substr($denied, 1) . ' not allowed to participate in chat room.';
$denied = ucfirst($denied);
} else {
- $denied = 'Everyone can participate in discussion.';
+ $denied = 'Everyone can participate in chat room.';
}
return $denied;
} else {
@@ -192,15 +201,15 @@
-
+
Course members can provide feedback about the course. You can choose
who will receive the feedback, such as a different instructor or a
TA. Please enter their LON-CAPA address below, in the
form user:domain, where "user" and "domain"
- are both the LON-CAPA username and LON-CAPA domain, not an email
+ are both the LON-CAPA username and LON-CAPA domain, not an e-mail
address.
- return &mt('Your current LON-CAPA domain is "[_1]".
',"$helper->{DATA}->{DOM}");
+ return ''.&mt('Your current LON-CAPA domain is [_1].','"'.$helper->{DATA}->{DOM}.'"').'
';
@@ -233,13 +242,96 @@
+
+
+ Existing courses can be cloned when creating new courses.
+ Cloning will copy the course structure, contents, and most settings. For dates (open dates, due dates etc.) a choice is provided to: (a) omit, (b) copy as-is or (c) shift by a specified number of days.
+ Usernames of owners of other courses permitted to clone this course:
+
+
+
+ return &{$helper->{DATA}->{GETVAL}}('cloners');
+
+
+ my ($output,@cloners,%disallowed);
+ my $match_dom = $LONCAPA::match_domain;
+ my $match_uname = $LONCAPA::match_username;
+ if ($val =~ /,/) {
+ @cloners = split(/,/,$val);
+ } else {
+ $cloners[0] = $val;
+ }
+ foreach my $item (@cloners) {
+ next if ($item =~ /^\s*$/);
+ next if ($item eq '*');
+
+ my ($clname,$cldom) = split(/:/,$item);
+ if ($clname eq '*') {
+ if ($cldom =~ /^$match_dom$/) {
+ if (!&Apache::lonnet::domain($cldom)) {
+ $disallowed{'domain'} .= $item.',';
+ }
+ } else {
+ $disallowed{'format'} .= $item.',';
+ }
+ } elsif ($item !~/^($match_uname)\:($match_dom)$/) {
+ $disallowed{'format'} .= $item.',';
+ } else {
+ if (!&Apache::lonnet::domain($cldom)) {
+ $disallowed{'domain'} .= $item.',';
+ } elsif (&Apache::lonnet::homeserver($clname,$cldom) eq 'no_host') {
+ $disallowed{'newuser'} .= $item.',';
+ }
+ }
+ }
+ foreach my $key (keys(%disallowed)) {
+ $disallowed{$key} =~ s/,$//;
+ }
+ if (keys(%disallowed) > 0) {
+ $output.= 'Your input contained the following errors:';
+ if (defined($disallowed{'format'})) {
+ $output .= '- Invalid format: '.
+ ''.$disallowed{'format'}.'
';
+ }
+ if (defined($disallowed{'domain'})) {
+ $output .= '- Domain(s) do(es) not exist: '.
+ ''.$disallowed{'domain'}.'
';
+ }
+ if (defined($disallowed{'newuser'})) {
+ $output .= '- LON-CAPA user(s) do(es) not exist: '.
+ ''.$disallowed{'newuser'}.'
';
+ }
+ $output .= '
';
+ }
+ return $output;
+
+
+ if (&{$helper->{DATA}->{SETVAL}}('cloners', $element->getValue())) {
+
+
+ return 'Users allowed to clone course updated to ' . $element->getValue() .
+ '.';
+ }
+
+
+
+
(Course Coordinators automatically have the right to clone their own courses.)
+
+ - Format: user:domain, where "user" and "domain"
+ are the LON-CAPA username and domain of the user.
+ - Separate different users with a comma.
+ - Use *:domain to allow course to be cloned by any course owner in the specified domain.
+ - Use * to allow unrestricted cloning by all course owners in all domains.
+
+
+
- Your course is now set up. Please select the Finish Course
- Initialization button to re-intialize the course with your chosen
+ Your course is now set up. Please select the Save
+ button to re-intialize the course with your chosen
settings.
- Remember that all of these settings can be modified in the PARMS
- screen, by pushing the Course Environment button.
+ Remember that all of these settings can be modified in the Modify parameter settings
+ screen (Course Configuration).
$env{'course.'.$env{'request.course.id'}.'.clonedfrom'}