Diff for /loncom/interface/loncreatecourse.pm between versions 1.110.2.2 and 1.119

version 1.110.2.2, 2008/12/15 08:44:25 version 1.119, 2009/03/12 16:29:32
Line 27 Line 27
 #  #
 ###  ###
   
   =head1 NAME
   
   Apache::loncreatecourse.pm
   
   =head1 SYNOPSIS
   
   Allows domain coordinators to create new
   courses and assign course coordinators.
   
   This is part of the LearningOnline Network with CAPA project
   described at http://www.lon-capa.org.
   
   =head1 SUBROUTINES
   
   =over
   
   =item handler()
   
   =item print_course_creation_page()
   
   =item create_course()
   
   =item print_intro_page()
   
   =item upload_batchfile()
   
   =item process_batchfile()
   
   =back
   
   =cut
   
 package Apache::loncreatecourse;  package Apache::loncreatecourse;
   
 use strict;  use strict;
Line 44  use LONCAPA; Line 76  use LONCAPA;
   
 sub print_course_creation_page {  sub print_course_creation_page {
     my $r=shift;      my $r=shift;
     my $crstype = 'Course';      my $crstype = 'Group';
 #    my $crstype = 'Group';      if ($env{'form.phase'} eq 'courseone') {
 #    if ($env{'form.phase'} eq 'courseone') {          $crstype = 'Course';
 #        $crstype = 'Course';      }
 #    }  
     my $defdom=$env{'request.role.domain'};      my $defdom=$env{'request.role.domain'};
     my %host_servers = &Apache::lonnet::get_servers($defdom,'library');      my %host_servers = &Apache::lonnet::get_servers($defdom,'library');
     my $course_home = '<select name="course_home" size="1">'."\n";      my $course_home = '<select name="course_home" size="1">'."\n";
Line 125  function validate(formname) { Line 156  function validate(formname) {
                     'stco' => "standard courses only",                      'stco' => "standard courses only",
                     'blnk' => "Blank",                      'blnk' => "Blank",
                     'sllb' => "Syllabus",                      'sllb' => "Syllabus",
                     'navi' => "Navigate",                      'navi' => "Navigate Contents",
                     'cid'  => "Course ID",                      'cid'  => "Course ID",
                     'dmn'  => "Domain",                      'dmn'  => "Domain",
                     'dsh'  => "Date Shift",                      'dsh'  => "Date Shift",
Line 140  function validate(formname) { Line 171  function validate(formname) {
                     'scfc' => "Set content feedback to Course Coordinator",                      'scfc' => "Set content feedback to Course Coordinator",
                     'cmmn' => "Communication",                      'cmmn' => "Communication",
                     'dsrd' => "Disable student resource discussion",                      'dsrd' => "Disable student resource discussion",
                     'dsuc' => "Disable student use of chatrooms",                      'dsuc' => "Disable student use of chat rooms",
                     'acco' => "Access Control",                      'acco' => "Access Control",
                     'snak' => "Students need access key to enter course",                      'snak' => "Students need access key to enter course",
     'kaut' =>       'kaut' => 
Line 154  function validate(formname) { Line 185  function validate(formname) {
                     'no'   => "No",                      'no'   => "No",
                     'audr' => "Automated drops",                      'audr' => "Automated drops",
                     'dacu' => "Duration of automated classlist updates",                      'dacu' => "Duration of automated classlist updates",
                       'dads' => 'Default Access Dates for Students',
                     'dacc' => "Default start and end dates for student access",                      'dacc' => "Default start and end dates for student access",
                     'psam' => "Please select the Authentication mechanism",                      '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",                      'pcda' => "Please choose the default authentication method to be used by new users added to this LON-CAPA domain by the automated enrollment process",
Line 163  function validate(formname) { Line 195  function validate(formname) {
                     'irsp' => "Include retrieval of student photographs?",                      'irsp' => "Include retrieval of student photographs?",
     'rshm' => 'Resource Space Home',      'rshm' => 'Resource Space Home',
                     'cgrs' => "Course Group Settings",                      '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",                      'opco' => "Open Course",
                     'ginf' => "Group Information",                      'ginf' => "Group Information",
                     'gtit' => "Group Title",                      'gtit' => "Group Title",
Line 177  function validate(formname) { Line 209  function validate(formname) {
                     'sgpf' => "Set group policy feedback to Group Coordinator",                      'sgpf' => "Set group policy feedback to Group Coordinator",
                     'scfg' => "Set content feedback to Group Coordinator",                      'scfg' => "Set content feedback to Group Coordinator",
                     'dmrd' => "Disable member resource discussion",                      'dmrd' => "Disable member resource discussion",
                     'dmuc' => "Disable member use of chatrooms",                      'dmuc' => "Disable member use of chat rooms",
                     'mnak' => "Members need access key to enter group",                      'mnak' => "Members need access key to enter group",
                     'kaug' =>                      'kaug' =>
                     'Key authority (<tt>id@domain</tt>) if other than group',                      'Key authority (<tt>id@domain</tt>) if other than group',
Line 227  END Line 259  END
     $r->print($start_page.$crumbs);      $r->print($start_page.$crumbs);
   
     if ($crstype eq 'Course') {      if ($crstype eq 'Course') {
         $r->print('<form action="/adm/createcourse" method="post" name="ccrs">'          $r->print('<form action="/adm/createcourse" method="post" name="ccrs"><div class="LC_createcourse">'
                  .'<div class="LC_createcourse">'  
                  .&Apache::lonhtmlcommon::start_pick_box()                   .&Apache::lonhtmlcommon::start_pick_box()
   
                  .&Apache::lonhtmlcommon::row_headline()                   .&Apache::lonhtmlcommon::row_headline()
Line 344  END Line 375  END
         );          );
   
         $r->print(&Apache::lonhtmlcommon::row_headline()          $r->print(&Apache::lonhtmlcommon::row_headline()
                    .'<h3>'.$lt{'dads'}.'</h3>'
                    .&Apache::lonhtmlcommon::row_closure()
                    .&Apache::lonhtmlcommon::row_title($lt{'dacc'})
                    .$access_table
                    .&Apache::lonhtmlcommon::row_closure()
           );
   
           $r->print(&Apache::lonhtmlcommon::row_headline()
                  .'<h3>'.$lt{'assp'}.'</h3>'                   .'<h3>'.$lt{'assp'}.'</h3>'
                  .&Apache::lonhtmlcommon::row_closure()                   .&Apache::lonhtmlcommon::row_closure()
   
Line 413  END Line 452  END
                  .$enroll_table                   .$enroll_table
                  .&Apache::lonhtmlcommon::row_closure()                   .&Apache::lonhtmlcommon::row_closure()
   
                  .&Apache::lonhtmlcommon::row_title($lt{'dacc'})  
                  .$access_table  
                  .&Apache::lonhtmlcommon::row_closure()  
   
                  .&Apache::lonhtmlcommon::row_title($lt{'psam'})                   .&Apache::lonhtmlcommon::row_title($lt{'psam'})
                  .$lt{'pcda'}.'<br />'                   .$lt{'pcda'}.'<br />'
                  .$krbform.'<br />'                   .$krbform.'<br />'
Line 733  sub create_course { Line 768  sub create_course {
  # Make the requested user a course coordinator or group coordinator   # Make the requested user a course coordinator or group coordinator
         #          #
  if (($ccdomain) && ($ccuname)) {   if (($ccdomain) && ($ccuname)) {
     $r->print(&mt('Assigning role of [_1] Coordinator to [_2] at [_3]: ',      $r->print(&mt('Assigning role of '.$crstype.' Coordinator to [_1]:',
   $crstype,$ccuname,$ccdomain).   ,'<i>'.$ccuname.':'.$ccdomain.'</i>')
       &Apache::lonnet::assignrole($ccdomain,$ccuname,$courseid,        .&Apache::lonnet::assignrole($ccdomain,$ccuname,$courseid,
   'cc','','','','','createcourse').'<p>');    'cc','','','','','createcourse').'<p>');
  }   }
  if ($env{'form.setkeys'}) {   if ($env{'form.setkeys'}) {
Line 747  sub create_course { Line 782  sub create_course {
  $r->print('<p>'.&mt('Roles will be active at next login').'.</p>');   $r->print('<p>'.&mt('Roles will be active at next login').'.</p>');
     }      }
     $r->print('<p><a href="/adm/createcourse?phase='.lc($crstype).'one">'.      $r->print('<p><a href="/adm/createcourse?phase='.lc($crstype).'one">'.
       &mt('Create Another [_1]',$crstype).'</a></p>'.        &mt("Create Another $crstype").'</a></p>'.
       &Apache::loncommon::end_page());        &Apache::loncommon::end_page());
 }  }
   
 sub print_intro_page {  sub print_intro_page {
     my $r = shift;      my $r = shift;
     my $start_page =      my $start_page =
         &Apache::loncommon::start_page('Create a New Course');          &Apache::loncommon::start_page('Create a New Course or Group Space');
     my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Options','Create_Course',undef,'Create_Courses');      my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Creation Options','Create_Course',undef,'Create_Courses');
     my $end_page =      my $end_page =
         &Apache::loncommon::end_page();          &Apache::loncommon::end_page();
Line 765  sub print_intro_page { Line 800  sub print_intro_page {
                      short_description =>                       short_description =>
     &mt('Create a new course by completing an online form.'),      &mt('Create a new course by completing an online form.'),
                  },                   },
 #                   { internal_name => 'groupone',                     { internal_name => 'groupone',
 #                     name => &mt('Create a single collaborative group space'),                       name => &mt('Create a single collaborative group space'),
 #                     short_description =>                       short_description =>
 #    &mt('Create a new group space for non-course use by completing an online form.'),      &mt('Create a new group space for non-course use by completing an online form.'),
 #                 },                   },
                    { internal_name => 'batchone',                     { internal_name => 'batchone',
                      name => &mt('Create courses by uploading an attributes file'),                       name => &mt('Create courses/groups by uploading an attributes file'),
                      short_description =>                       short_description =>
     &mt('Upload an attributes file containing specifications for one or more courses in XML format.'),      &mt('Upload an attributes file containing specifications for one or more courses or groups in XML format.'),
                      help => 'Batch_Creation',                       help => 'Batch_Creation',
                  },                   },
     );      );
Line 801  sub upload_batchfile { Line 836  sub upload_batchfile {
     my $r = shift;      my $r = shift;
     my $start_page =      my $start_page =
         &Apache::loncommon::start_page('Create a New Course or Group Space');          &Apache::loncommon::start_page('Create a New Course or Group Space');
     my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Upload Course Attributes File','Create_Course',undef,'Create_Courses');      my $crumbs = &Apache::lonhtmlcommon::breadcrumbs('Upload Course/Group Attributes File','Create_Course',undef,'Create_Courses');
     my $end_page =      my $end_page =
         &Apache::loncommon::end_page();          &Apache::loncommon::end_page();
     $r->print($start_page.$crumbs);      $r->print($start_page.$crumbs);
     $r->print('<h3>'.&mt('Upload a courses attributes file').'</h3>');      $r->print('<h3>'.&mt('Upload a courses or groups attributes file').'</h3>');
     $r->print('<form name="batchcreate" method="post" '.      $r->print('<form name="batchcreate" method="post" '.
                 'enctype="multipart/form-data" action="/adm/createcourse">'.                  'enctype="multipart/form-data" action="/adm/createcourse">'.
               '<input type="file" name="coursecreatorxml" />'.                '<input type="file" name="coursecreatorxml" />'.

Removed from v.1.110.2.2  
changed lines
  Added in v.1.119


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>