From 1ee378bbdcf78be6164839790c81dba5bfa05904 Mon Sep 17 00:00:00 2001 From: Brian Biggs Date: Tue, 24 Sep 2013 11:44:42 +0800 Subject: [PATCH] MDL-29070 enrol_imsenterprise: Code cleanup In preparation for new features. --- enrol/imsenterprise/lib.php | 85 +------------------------------------ 1 file changed, 2 insertions(+), 83 deletions(-) diff --git a/enrol/imsenterprise/lib.php b/enrol/imsenterprise/lib.php index e2cf64138b9..6d1ee95a1f5 100644 --- a/enrol/imsenterprise/lib.php +++ b/enrol/imsenterprise/lib.php @@ -53,9 +53,6 @@ require_once($CFG->dirroot.'/group/lib.php'); class enrol_imsenterprise_plugin extends enrol_plugin { -var $log; - - /** * Read in an IMS Enterprise file. * Originally designed to handle v1.1 files but should be able to handle @@ -74,7 +71,6 @@ function cron() { $prev_path = $this->get_config('prev_path'); if (empty($imsfilelocation)) { - // $filename = "$CFG->dirroot/enrol/imsenterprise/example.xml"; // Default location $filename = "$CFG->dataroot/1/imsenterprise-enrol.xml"; // Default location } else { $filename = $imsfilelocation; @@ -120,7 +116,7 @@ function cron() { $listoftags = array('group', 'person', 'member', 'membership', 'comments', 'properties'); // The list of tags which should trigger action (even if only cache trimming) $this->continueprocessing = true; // The tag is allowed to halt processing if we're demanding a matching target - // FIRST PASS: Run through the file and process the group/person entries + // Run through the file and process the group/person entries. if (($fh = fopen($filename, "r")) != false) { $line = 0; @@ -154,54 +150,11 @@ function cron() { } // end of while loop fclose($fh); fix_course_sortorder(); - } // end of if(file_open) for first pass - - /* - - - SECOND PASS REMOVED - Since the IMS specification v1.1 insists that "memberships" should come last, - and since vendors seem to have done this anyway (even with 1.0), - we can sensibly perform the import in one fell swoop. - - - // SECOND PASS: Now go through the file and process the membership entries - $this->xmlcache = ''; - if (($fh = fopen($filename, "r")) != false) { - $line = 0; - while ((!feof($fh)) && $this->continueprocessing) { - $line++; - $curline = fgets($fh); - $this->xmlcache .= $curline; // Add a line onto the XML cache - - while(true){ - // Must always make sure to remove tags from cache so they don't clog up our memory - if($tagcontents = $this->full_tag_found_in_cache('group', $curline)){ - $this->remove_tag_from_cache('group'); - }elseif($tagcontents = $this->full_tag_found_in_cache('person', $curline)){ - $this->remove_tag_from_cache('person'); - }elseif($tagcontents = $this->full_tag_found_in_cache('membership', $curline)){ - $this->process_membership_tag($tagcontents); - $this->remove_tag_from_cache('membership'); - }elseif($tagcontents = $this->full_tag_found_in_cache('comments', $curline)){ - $this->remove_tag_from_cache('comments'); - }elseif($tagcontents = $this->full_tag_found_in_cache('properties', $curline)){ - $this->remove_tag_from_cache('properties'); - }else{ - break; - } - } - } // end of while loop - fclose($fh); - } // end of if(file_open) for second pass - - - */ + } // End of if(file_open). $timeelapsed = time() - $starttime; $this->log_line('Process has completed. Time taken: '.$timeelapsed.' seconds.'); - } // END of "if file is new" @@ -210,8 +163,6 @@ function cron() { $this->set_config('prev_md5', $md5); $this->set_config('prev_path', $filename); - - }else{ // end of if(file_exists) $this->log_line('File not found: '.$filename); } @@ -331,7 +282,6 @@ function process_group_tag($tagcontents) { } $recstatus = ($this->get_recstatus($tagcontents, 'group')); - //echo "

get_recstatus for this group returned $recstatus

"; if (!(strlen($group->coursecode)>0)) { $this->log_line('Error at line '.$line.': Unable to find course code in \'group\' element.'); @@ -343,16 +293,6 @@ function process_group_tag($tagcontents) { : $group->coursecode; } - /* -----------Course aliasing is DEACTIVATED until a more general method is in place--------------- - - // Second, look in the course alias table to see if the code should be translated to something else - if($aliases = $DB->get_field('enrol_coursealias', 'toids', array('fromid'=>$group->coursecode))){ - $this->log_line("Found alias of course code: Translated $group->coursecode to $aliases"); - // Alias is allowed to be a comma-separated list, so let's split it - $group->coursecode = explode(',', $aliases); - } - */ - // For compatibility with the (currently inactive) course aliasing, we need this to be an array $group->coursecode = array($group->coursecode); @@ -549,24 +489,6 @@ function process_person_tag($tagcontents){ $person->timemodified = time(); $person->mnethostid = $CFG->mnet_localhost_id; $id = $DB->insert_record('user', $person); - /* - Photo processing is deactivated until we hear from Moodle dev forum about modification to gdlib. - - //Antoni Mas. 07/12/2005. If a photo URL is specified then we might want to load - // it into the user's profile. Beware that this may cause a heavy overhead on the server. - if($CFG->enrol_processphoto){ - if(preg_match('{.*?(.*?).*?}is', $tagcontents, $matches)){ - $person->urlphoto = trim($matches[1]); - } - //Habilitam el flag que ens indica que el personatge t foto prpia. - $person->picture = 1; - //Llibreria creada per nosaltres mateixos. - require_once($CFG->dirroot.'/lib/gdlib.php'); - if ($usernew->picture = save_profile_image($id, $person->urlphoto,'user')) { TODO: use process_new_icon() instead - $DB->set_field('user', 'picture', $usernew->picture, array('id'=>$id)); /// Note picture in DB - } - } - */ $this->log_line("Created user record for user '$person->username' (ID number $person->idnumber)."); } } elseif ($createnewusers) { @@ -631,7 +553,6 @@ function process_membership_tag($tagcontents){ $recstatus = ($this->get_recstatus($mmatch[1], 'role')); if($recstatus==3){ $member->status = 0; // See above - recstatus of 3 (==delete) is treated the same as status of 0 - //echo "

process_membership_tag: unenrolling member due to recstatus of 3

"; } $timeframe = new stdClass(); @@ -647,8 +568,6 @@ function process_membership_tag($tagcontents){ $rolecontext = context_course::instance($ship->courseid); $rolecontext = $rolecontext->id; // All we really want is the ID -//$this->log_line("Context instance for course $ship->courseid is..."); -//print_r($rolecontext); // Add or remove this student or teacher to the course... $memberstoreobj->userid = $DB->get_field('user', 'id', array('idnumber'=>$member->idnumber));