--- loncom/enrollment/localenroll.pm 2018/02/01 04:51:08 1.58 +++ loncom/enrollment/localenroll.pm 2021/03/31 02:19:58 1.60 @@ -1,6 +1,6 @@ # functions to glue school database system into Lon-CAPA for # automated enrollment -# $Id: localenroll.pm,v 1.58 2018/02/01 04:51:08 raeburn Exp $ +# $Id: localenroll.pm,v 1.60 2021/03/31 02:19:58 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -144,7 +144,7 @@ sub run() { Manager, or via the 'Upload a class list','Enroll a single student' or 'Modify student data' utilities in the Enrollment Manager, by checking the 'make these dates the default for future enrollment' checkbox. If no default - dates have been set, then the tudent role will be active immediately, and will + dates have been set, then the student role will be active immediately, and will remain active until the role is explicitly expired using ENRL -> Drop students. If dates are to included in the XML file, they should be in the format YYYY:MM:DD:HH:MM:SS (: separators required). @@ -207,7 +207,7 @@ sub fetch_enrollment { ("001","601","602") would be returned If the array returned contains at least one element, then - the interface offerred to the course coordinator, lists + the interface offered to the course coordinator, lists official sections and provides a checkbox to use to select enrollment in the LON-CAPA course from each official section. @@ -342,6 +342,32 @@ sub validate_instcode { =pod +=item validate_crosslist_access() + +This is called for an official course to check whether a course +with the institutional code can have access to enrollment data +from a cross-listed institutional section code, given a co-owner. + +validate_crosslist_access() takes four arguments - +(a) the course's LON-CAPA domain +(b) the institional course code assigned to the course +(c) the institutional course section code for the crosslisting +(d) the co-owner to check for affiliation with the crosslisting + (username:domain). + +A combination of (a), (b), (c) and (d) with access to enrollment +data, as per institutional policies, is confirmed by returning 'valid'. + +=cut + +sub validate_crosslist_access { + my ($dom,$instcode,$inst_xlist,$coowner) = @_; + my $outcome = ''; + return $outcome; +} + +=pod + =item validate_crsreq() This is used to check whether a course request should be processed @@ -621,7 +647,7 @@ sub check_instclasses { my ($owners,$dom,$classes,$validated) = @_; if ((ref($classes) eq 'HASH') && (ref($validated) eq 'HASH')) { foreach my $class (keys(%{$classes})){ - if (&check_section($class,$owners,$cdom) eq 'ok') { + if (&check_section($class,$owners,$dom) eq 'ok') { $validated->{$class} = 1; } }