|
Moodle
2.2.1
http://www.collinsharper.com
|
00001 <?php 00002 // This file is part of Moodle - http://moodle.org/ 00003 // 00004 // Moodle is free software: you can redistribute it and/or modify 00005 // it under the terms of the GNU General Public License as published by 00006 // the Free Software Foundation, either version 3 of the License, or 00007 // (at your option) any later version. 00008 // 00009 // Moodle is distributed in the hope that it will be useful, 00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 // GNU General Public License for more details. 00013 // 00014 // You should have received a copy of the GNU General Public License 00015 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 00016 // 00017 // This file is part of BasicLTI4Moodle 00018 // 00019 // BasicLTI4Moodle is an IMS BasicLTI (Basic Learning Tools for Interoperability) 00020 // consumer for Moodle 1.9 and Moodle 2.0. BasicLTI is a IMS Standard that allows web 00021 // based learning tools to be easily integrated in LMS as native ones. The IMS BasicLTI 00022 // specification is part of the IMS standard Common Cartridge 1.1 Sakai and other main LMS 00023 // are already supporting or going to support BasicLTI. This project Implements the consumer 00024 // for Moodle. Moodle is a Free Open source Learning Management System by Martin Dougiamas. 00025 // BasicLTI4Moodle is a project iniciated and leaded by Ludo(Marc Alier) and Jordi Piguillem 00026 // at the GESSI research group at UPC. 00027 // SimpleLTI consumer for Moodle is an implementation of the early specification of LTI 00028 // by Charles Severance (Dr Chuck) htp://dr-chuck.com , developed by Jordi Piguillem in a 00029 // Google Summer of Code 2008 project co-mentored by Charles Severance and Marc Alier. 00030 // 00031 // BasicLTI4Moodle is copyright 2009 by Marc Alier Forment, Jordi Piguillem and Nikolas Galanis 00032 // of the Universitat Politecnica de Catalunya http://www.upc.edu 00033 // Contact info: Marc Alier Forment granludo @ gmail.com or marc.alier @ upc.edu 00034 00049 defined('MOODLE_INTERNAL') || die(); 00050 00051 require_once($CFG->dirroot . '/mod/lti/backup/moodle2/restore_lti_stepslib.php'); // Because it exists (must) 00052 00057 class restore_lti_activity_task extends restore_activity_task { 00058 00062 protected function define_my_settings() { 00063 // No particular settings for this activity 00064 } 00065 00069 protected function define_my_steps() { 00070 // label only has one structure step 00071 $this->add_step(new restore_lti_activity_structure_step('lti_structure', 'lti.xml')); 00072 } 00073 00078 static public function define_decode_contents() { 00079 $contents = array(); 00080 00081 $contents[] = new restore_decode_content('lti', array('intro'), 'lti'); 00082 00083 return $contents; 00084 } 00085 00090 static public function define_decode_rules() { 00091 $rules = array(); 00092 00093 $rules[] = new restore_decode_rule('LTIVIEWBYID', '/mod/lti/view.php?id=$1', 'course_module'); 00094 $rules[] = new restore_decode_rule('LTIINDEX', '/mod/lti/index.php?id=$1', 'course'); 00095 00096 return $rules; 00097 00098 } 00099 00106 static public function define_restore_log_rules() { 00107 $rules = array(); 00108 00109 $rules[] = new restore_log_rule('lti', 'add', 'view.php?id={course_module}', '{lti}'); 00110 $rules[] = new restore_log_rule('lti', 'update', 'view.php?id={course_module}', '{lti}'); 00111 $rules[] = new restore_log_rule('lti', 'view', 'view.php?id={course_module}', '{lti}'); 00112 00113 return $rules; 00114 } 00115 00126 static public function define_restore_log_rules_for_course() { 00127 $rules = array(); 00128 00129 $rules[] = new restore_log_rule('lti', 'view all', 'index.php?id={course}', null); 00130 00131 return $rules; 00132 } 00133 }