Diff for /loncom/automation/batchcreatecourse.pm between versions 1.40.2.3 and 1.41

version 1.40.2.3, 2020/05/22 20:55:45 version 1.41, 2016/04/02 04:30:47
Line 83  use strict; Line 83  use strict;
 # <showphotos></showphotos>  # <showphotos></showphotos>
 # <setpolicy>1</setpolicy>  # <setpolicy>1</setpolicy>
 # <setcontent>1</setcontent>  # <setcontent>1</setcontent>
 # <setcomment>1</setcomment>  
 # <setkeys>0</setkeys>  # <setkeys>0</setkeys>
 # <keyauth>keyadmin:msu</keyauth>  # <keyauth>keyadmin:msu</keyauth>
 # <disresdis>1</disresdis>  # <disresdis>1</disresdis>
 # <disablechat>1</disablechat>  # <disablechat>1</disablechat>
 # <openall></openall>  # <openall></openall>
 # <openallfrom></openallfrom>  
 # <notify_dc>1</notify_dc>  # <notify_dc>1</notify_dc>
 # <notify_owner>1</notify_owner>  # <notify_owner>1</notify_owner>
 # <owner>  # <owner>
Line 154  use strict; Line 152  use strict;
 #  #
 # Many of these are binary options (corresponding to either checkboxes or  # Many of these are binary options (corresponding to either checkboxes or
 # radio buttons in the interactive CCRS page).  Examples include:  # radio buttons in the interactive CCRS page).  Examples include:
 # setpolicy, setcontent, setcomment, setkeys, disableresdis, disablechat, openall,  # setpolicy, setcontent, setkeys, disableresdis, disablechat, openall,
 # uniquecode  # uniquecode
 #  #
 # A value of 1 between opening and closing tags is equivalent to a   # A value of 1 between opening and closing tags is equivalent to a 
Line 165  use strict; Line 163  use strict;
 # firstres can be nav, syl, or blank for "Navigate Contents", Syllabus, or  # firstres can be nav, syl, or blank for "Navigate Contents", Syllabus, or
 # no entry respectively.  # no entry respectively.
 #   # 
 # crstype can be Course or Community  # crstype can be Course, Community or Placement
 #  #
 # crsquota is the total disk space permitted for course group portfolio files  # crsquota is the total disk space permitted for course group portfolio files
 # in all course groups.  # in all course groups.
Line 212  sub create_courses { Line 210  sub create_courses {
             $longroles{'Community'}{$1} = $3;              $longroles{'Community'}{$1} = $3;
         }          }
     }      }
     my ($logmsg,$keysmsg,$newusermsg,$addresult,%codehash,%instcodes);      my ($logmsg,$keysmsg,$newusermsg,$addresult,%codehash);
     my %enrollcount = ();      my %enrollcount = ();
     my $newcoursedir = LONCAPA::tempdir().'/addcourse/'.$dom.'/'.$context;      my $newcoursedir = LONCAPA::tempdir().'/addcourse/'.$dom.'/'.$context;
     if ($context eq 'auto') {      if ($context eq 'auto') {
Line 240  sub create_courses { Line 238  sub create_courses {
                         if ($code) {                          if ($code) {
                             $codehash{$courseid} = $code;                              $codehash{$courseid} = $code;
                         }                          }
                         if ($details{$num}{'coursecode'} ne '') {  
                             push(@{$instcodes{$details{$num}{'coursecode'}}},$courseid);  
                         }  
                     }                      }
                 }                  }
             }              }
         }          }
     }      }
     return ($output,$logmsg,$keysmsg,\%codehash,\%instcodes);      return ($output,$logmsg,$keysmsg,\%codehash);
 }  }
   
 #############################################################  #############################################################
Line 271  sub parse_coursereqs { Line 266  sub parse_coursereqs {
     my $xlist = 0;      my $xlist = 0;
     my $userkey = '';      my $userkey = '';
     my $role = '';      my $role = '';
     my @items = ('title','optional_id','coursecode','defaultcredits','coursehome','reshome','nonstandard','adds','drops','topmap','firstres','clonecrs','clonedom','datemode','dateshift','showphotos','setpolicy','setcontent','setcomment','setkeys','keyauth','disresdis','disablechat','openall','notify_owner','notify_dc','crstype','crsquota','uniquecode');      my @items = ('title','optional_id','coursecode','defaultcredits','coursehome','reshome','nonstandard','adds','drops','topmap','firstres','clonecrs','clonedom','datemode','dateshift','showphotos','setpolicy','setcontent','setkeys','keyauth','disresdis','disablechat','openall','notify_owner','notify_dc','crstype','crsquota','uniquecode');
     my @possroles = qw(st ad ep ta in cc co);      my @possroles = qw(st ad ep ta in cc co);
     my @dateitems = ('enrollstart','enrollend','accessstart','accessend','openallfrom');      my @dateitems = ('enrollstart','enrollend','accessstart','accessend');
     my @useritems = ('autharg','authtype','firstname','generation','lastname','middlename','studentID');      my @useritems = ('autharg','authtype','firstname','generation','lastname','middlename','studentID');
     my $p = HTML::Parser->new      my $p = HTML::Parser->new
     (      (
Line 433  sub build_course { Line 428  sub build_course {
             $rolenames = $longroles->{'Community'};              $rolenames = $longroles->{'Community'};
         }          }
     } else {      } else {
         $crstype = 'Course';          if ($details->{'crstype'} eq 'Placement') {
               $crstype = $details->{'crstype'};
           } else {
               $crstype = 'Course';
           }
         $ccrole = 'cc';          $ccrole = 'cc';
         if (ref($longroles) eq 'HASH') {          if (ref($longroles) eq 'HASH') {
             $rolenames = $longroles->{'Course'};              $rolenames = $longroles->{'Course'};
Line 456  sub build_course { Line 455  sub build_course {
     if ($firstres eq '') {      if ($firstres eq '') {
         if ($crstype eq 'Community') {          if ($crstype eq 'Community') {
             $firstres = 'nav';              $firstres = 'nav';
           } elsif ($crstype eq 'Placement') {
               $firstres = 'blank'; 
         } else {          } else {
             $firstres = 'syl';              $firstres = 'syl';
         }          }
Line 539  sub build_course { Line 540  sub build_course {
                endaccess => $details->{'accessend'},                 endaccess => $details->{'accessend'},
                setpolicy => $details->{'setpolicy'},                 setpolicy => $details->{'setpolicy'},
                setcontent => $details->{'setcontent'},                 setcontent => $details->{'setcontent'},
                setcomment => $details->{'setcomment'},  
                reshome => $reshome,                 reshome => $reshome,
                setkeys => $details->{'setkeys'},                 setkeys => $details->{'setkeys'},
                keyauth => $details->{'keyauth'},                 keyauth => $details->{'keyauth'},
                disresdis => $details->{'disresdis'},                 disresdis => $details->{'disresdis'},
                disablechat => $details->{'disablechat'},                 disablechat => $details->{'disablechat'},
                openall => $details->{'openall'},                 openall => $details->{'openall'},
                openallfrom => $details->{'openallfrom'},  
                firstres => $firstres                 firstres => $firstres
                };                 };
         if ($details->{'textbook'}) {          if ($details->{'textbook'}) {

Removed from v.1.40.2.3  
changed lines
  Added in v.1.41


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