--- loncom/interface/loncreatecourse.pm 2008/12/15 08:11:32 1.113
+++ loncom/interface/loncreatecourse.pm 2009/10/02 19:10:23 1.129
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Create a course
#
-# $Id: loncreatecourse.pm,v 1.113 2008/12/15 08:11:32 raeburn Exp $
+# $Id: loncreatecourse.pm,v 1.129 2009/10/02 19:10:23 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -55,6 +55,20 @@ described at http://www.lon-capa.org.
=item process_batchfile()
+=item courserequestbrowser_javascript()
+
+=item print_creation_logs()
+
+=item creation_display_filter()
+
+=item course_types()
+
+=item context_names()
+
+=item instcode_srchstr()
+
+=item syllabuslink_javascript()
+
=back
=cut
@@ -76,7 +90,7 @@ use LONCAPA;
sub print_course_creation_page {
my $r=shift;
- my $crstype = 'Group';
+ my $crstype = 'Community';
if ($env{'form.phase'} eq 'courseone') {
$crstype = 'Course';
}
@@ -118,14 +132,16 @@ sub print_course_creation_page {
$intform = &Apache::loncommon::authform_internal(%param);
$locform = &Apache::loncommon::authform_local(%param);
} else {
+ my $title_alert = &mt('A Community title is required');
+ my $coord_alert = &mt('The username of the Coordinator is required');
$javascript_validations = qq|
function validate(formname) {
if (formname.title == '') {
- alert("A group title is required");
+ alert("$title_alert");
return;
}
if (formname.ccuname == '') {
- alert("The username of the group coordinator is required");
+ alert("$coord_alert");
}
formname.submit();
}
@@ -156,7 +172,7 @@ function validate(formname) {
'stco' => "standard courses only",
'blnk' => "Blank",
'sllb' => "Syllabus",
- 'navi' => "Navigate",
+ 'navi' => "Navigate Contents",
'cid' => "Course ID",
'dmn' => "Domain",
'dsh' => "Date Shift",
@@ -171,12 +187,13 @@ function validate(formname) {
'scfc' => "Set content feedback to Course Coordinator",
'cmmn' => "Communication",
'dsrd' => "Disable student resource discussion",
- 'dsuc' => "Disable student use of chatrooms",
+ 'dsuc' => "Disable student use of chat rooms",
'acco' => "Access Control",
'snak' => "Students need access key to enter course",
'kaut' =>
'Key authority (id@domain) if other than course',
- 'cc' => "Course Coordinator",
+ 'ow' => "Course Owner",
+ 'cc' => "(will be assigned Course Coordinator role)",
'user' => "Username",
'aens' => "Automated enrollment settings",
'aesc' => "The following settings control automatic enrollment of students in this class based on information available for this specific course from your institution's official classlists.",
@@ -185,6 +202,7 @@ function validate(formname) {
'no' => "No",
'audr' => "Automated drops",
'dacu' => "Duration of automated classlist updates",
+ 'dads' => 'Default Access Dates for Students',
'dacc' => "Default start and end dates for student access",
'psam' => "Please select the Authentication mechanism",
'pcda' => "Please choose the default authentication method to be used by new users added to this LON-CAPA domain by the automated enrollment process",
@@ -194,29 +212,30 @@ function validate(formname) {
'irsp' => "Include retrieval of student photographs?",
'rshm' => 'Resource Space Home',
'cgrs' => "Course Group Settings",
- 'cgrq' => "Set a quota for the total disk space available for storage of course group portfolio files.",
+ 'cgrq' => 'Set a quota for the total disk space available for storage of course group portfolio files',
'opco' => "Open Course",
- 'ginf' => "Group Information",
- 'gtit' => "Group Title",
- 'ghsr' => "Group Home Server",
- 'gidn' => "Group ID/Number",
- 'grco' => "Group Content",
- 'cngr' => "Completely new group",
- 'cegr' => "Clone an existing group",
- 'sagr' => "Do NOT generate as standard group",
- 'stgo' => "standard groups only",
- 'sgpf' => "Set group policy feedback to Group Coordinator",
- 'scfg' => "Set content feedback to Group Coordinator",
+ 'ginf' => "Community Information",
+ 'gtit' => "Community Title",
+ 'ghsr' => "Community Home Server",
+ 'gidn' => "Community ID/Number",
+ 'grco' => "Community Content",
+ 'cngr' => "Completely new community",
+ 'cegr' => "Clone an existing community",
+ 'sagr' => "Do NOT generate as standard community",
+ 'stgo' => "standard communities only",
+ 'sgpf' => "Set community policy feedback to Coordinator",
+ 'scfg' => "Set content feedback to Coordinator",
'dmrd' => "Disable member resource discussion",
- 'dmuc' => "Disable member use of chatrooms",
- 'mnak' => "Members need access key to enter group",
+ 'dmuc' => "Disable member use of chat rooms",
+ 'mnak' => "Members need access key to enter community",
'kaug' =>
- 'Key authority (id@domain) if other than group',
- 'gc' => "Group Coordinator",
- 'gid' => "Group ID",
- 'crgr' => "Create Group",
- 'grts' => "Group Teams Settings",
- 'grtq' => "Set a quota for the total disk space available for storage of group team portfolio files.",
+ 'Key authority (id@domain) if other than community',
+ 'co' => "Community Owner",
+ 'gc' => "(will be assigned Coordinator role)",
+ 'gid' => "Community ID",
+ 'crgr' => "Create Community",
+ 'grts' => "Community Group Settings",
+ 'grtq' => "Set a quota for the total disk space available for storage of community group portfolio files.",
);
my $js = < 'Create a New Course',
- groupone => 'Create a New Group',
+ groupone => 'Create a New Community',
);
my $start_page =
&Apache::loncommon::start_page($titles{$env{'form.phase'}},$js);
@@ -262,6 +281,20 @@ END
.&Apache::lonhtmlcommon::start_pick_box()
.&Apache::lonhtmlcommon::row_headline()
+ .'
@@ -646,7 +670,7 @@ sub create_course {
my $r=shift;
my $ccuname =&LONCAPA::clean_username($env{'form.ccuname'});
my $ccdomain=&LONCAPA::clean_domain($env{'form.ccdomain'});
- my $crstype = 'Group';
+ my $crstype = 'Community';
my ($enrollstart,$enrollend,$startaccess,$endaccess);
if ($env{'form.phase'} eq 'coursetwo') {
@@ -756,16 +780,16 @@ sub create_course {
&Apache::loncommon::construct_course($args,\$logmsg,\$courseid,
\$crsudom,\$crsunum,
$env{'user.domain'},
- $env{'user.name'});
+ $env{'user.name'},'dc_create');
$r->print($output);
if ($success) {
#
# Make the requested user a course coordinator or group coordinator
#
if (($ccdomain) && ($ccuname)) {
- $r->print(&mt('Assigning role of [_1] Coordinator to [_2] at [_3]: ',
- $crstype,$ccuname,$ccdomain).
- &Apache::lonnet::assignrole($ccdomain,$ccuname,$courseid,
+ $r->print(&mt('Assigning role of '.$crstype.' Coordinator to [_1]:',
+ ,''.$ccuname.':'.$ccdomain.'')
+ .&Apache::lonnet::assignrole($ccdomain,$ccuname,$courseid,
'cc','','','','','createcourse').'
');
}
if ($env{'form.setkeys'}) {
@@ -777,18 +801,18 @@ sub create_course {
$r->print('
'.
&Apache::loncommon::end_page());
}
sub print_intro_page {
my $r = shift;
my $start_page =
- &Apache::loncommon::start_page('Create a New Course or Group Space');
+ &Apache::loncommon::start_page('Create a New Course or Community');
my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Options','Create_Course',undef,'Create_Courses');
my $end_page =
&Apache::loncommon::end_page();
- my $helplink=&Apache::loncommon::help_open_topic('Create_Course_GroupSpace',&mt('Help on Creating Courses and Groups'));
+ my $helplink=&Apache::loncommon::help_open_topic('Create_Course_Community',&mt('Help on Creating Courses and Communities'));
my @choices = ({ internal_name => 'courseone',
name => &mt('Create a single course'),
@@ -796,16 +820,26 @@ sub print_intro_page {
&mt('Create a new course by completing an online form.'),
},
{ internal_name => 'groupone',
- name => &mt('Create a single collaborative group space'),
+ name => &mt('Create a single community'),
short_description =>
- &mt('Create a new group space for non-course use by completing an online form.'),
+ &mt('Create a new collaborative community by completing an online form.'),
},
{ internal_name => 'batchone',
- name => &mt('Create courses/groups by uploading an attributes file'),
+ name => &mt('Create courses/communities by uploading an attributes file'),
short_description =>
- &mt('Upload an attributes file containing specifications for one or more courses or groups in XML format.'),
+ &mt('Upload an attributes file containing specifications for one or more courses or communities in XML format.'),
help => 'Batch_Creation',
},
+ { internal_name => 'requestdisplay',
+ name => &mt('Approve or reject course requests'),
+ short_description =>
+ &mt('Display course creation requests submitted by authorized users, held pending approval by a Domain Coordinator.'),
+ },
+ { internal_name => 'creationlog',
+ name => &mt('View course creation log'),
+ short_description =>
+ &mt('Display information about when, how and by whom courses were created in this domain.'),
+ },
);
my $options;
foreach my $choice (@choices) {
@@ -830,18 +864,18 @@ ENDDOCUMENT
sub upload_batchfile {
my $r = shift;
my $start_page =
- &Apache::loncommon::start_page('Create a New Course or Group Space');
- my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Upload Course/Group Attributes File','Create_Course',undef,'Create_Courses');
+ &Apache::loncommon::start_page('Create a New Course or Community');
+ my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Upload Course/Community Attributes File','Create_Course',undef,'Create_Courses');
my $end_page =
&Apache::loncommon::end_page();
$r->print($start_page.$crumbs);
- $r->print('
'.&mt('Upload a courses or groups attributes file').'
');
+ $r->print('
'.&mt('Upload a courses or communities attributes file').'
');
$r->print('');
+ 'value="Create Courses/Communities" />');
$r->print($end_page);
return;
}
@@ -849,7 +883,7 @@ sub upload_batchfile {
sub process_batchfile {
my $r = shift;
my $start_page =
- &Apache::loncommon::start_page('Create a New Course or Group Space');
+ &Apache::loncommon::start_page('Create a New Course or Community');
my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Outcome','Create_Course',undef,'Create_Courses');
my $end_page =
&Apache::loncommon::end_page();
@@ -887,6 +921,391 @@ sub process_batchfile {
}
+sub courserequestbrowser_javascript {
+ return <<"ENDREQBRW";
+
+ENDREQBRW
+}
+
+sub print_creation_logs {
+ my ($r) = @_;
+ my $formname = 'creationlog';
+ my $dom = $env{'request.role.domain'};
+ $r->print('