--- loncom/enrollment/localenroll.pm 2009/06/11 20:09:25 1.35 +++ loncom/enrollment/localenroll.pm 2009/08/18 20:08:38 1.37 @@ -1,6 +1,6 @@ # functions to glue school database system into Lon-CAPA for # automated enrollment -# $Id: localenroll.pm,v 1.35 2009/06/11 20:09:25 raeburn Exp $ +# $Id: localenroll.pm,v 1.37 2009/08/18 20:08:38 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -278,6 +278,50 @@ sub validate_courseID { } =pod + +=item validate_instcode() + +This is called when a request is being made for an official course. +A check is made that the institutional code for which a course is +is being requested is valid according to the institutional +schedule of official classes. + +If the username of the course owner is provided, a more restrictive +test is used, namely that the requestor is listed as instructor of +record for the course in the institution's course schedule/database. + +A valid instcode is confirmed by returning 'valid'. +In the case of a check for the instructor of record, the following can +be returned: +(a) valid - the requestor is the recorded instructor - create the course +(b) reject - the requestor should never be requesting this course, reject the + request permanently +(c) pending - the requestor is not the recorded instructor, but could + become so after administrative action at the institution. Put the + request ina queue and check localenroll:validate_instcode() + periodically until the status changes to "valid". +(d) approval - the request will be held pending review by a Domain Coordinator. +(e) error (followed by the error condition); + +validate_instcode takes five arguments - + (a) the LON-CAPA domain that will contain the course + (b) the institutional code (in the MSU case this is a concatenation of + semester code, department code, and course number, e.g., fs03nop590. + (c) an optional institutional username for the course owner. + (d) an optional comma-separated list of institutional affiliations of + the course owner. + (e) an optional comma-separated list of institutional sections included in + the course request + +=cut + +sub validate_instcode { + my ($dom,$instcode,$owner,$inststatuslist,$instseclist) = @_; + my $outcome = ''; + return $outcome; +} + +=pod =item create_password()