1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 // 17 // This file is part of BasicLTI4Moodle 18 // 19 // BasicLTI4Moodle is an IMS BasicLTI (Basic Learning Tools for Interoperability) 20 // consumer for Moodle 1.9 and Moodle 2.0. BasicLTI is a IMS Standard that allows web 21 // based learning tools to be easily integrated in LMS as native ones. The IMS BasicLTI 22 // specification is part of the IMS standard Common Cartridge 1.1 Sakai and other main LMS 23 // are already supporting or going to support BasicLTI. This project Implements the consumer 24 // for Moodle. Moodle is a Free Open source Learning Management System by Martin Dougiamas. 25 // BasicLTI4Moodle is a project iniciated and leaded by Ludo(Marc Alier) and Jordi Piguillem 26 // at the GESSI research group at UPC. 27 // SimpleLTI consumer for Moodle is an implementation of the early specification of LTI 28 // by Charles Severance (Dr Chuck) htp://dr-chuck.com , developed by Jordi Piguillem in a 29 // Google Summer of Code 2008 project co-mentored by Charles Severance and Marc Alier. 30 // 31 // BasicLTI4Moodle is copyright 2009 by Marc Alier Forment, Jordi Piguillem and Nikolas Galanis 32 // of the Universitat Politecnica de Catalunya http://www.upc.edu 33 // Contact info: Marc Alier Forment granludo @ gmail.com or marc.alier @ upc.edu. 34 35 /** 36 * Defines backup_lti_activity_task class 37 * 38 * @package mod_lti 39 * @category backup 40 * @copyright 2009 Marc Alier <marc.alier@upc.edu>, Jordi Piguillem, Nikolas Galanis 41 * @copyright 2009 Universitat Politecnica de Catalunya http://www.upc.edu 42 * @author Marc Alier 43 * @author Jordi Piguillem 44 * @author Nikolas Galanis 45 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 46 */ 47 48 defined('MOODLE_INTERNAL') || die; 49 50 require_once($CFG->dirroot . '/mod/lti/backup/moodle2/backup_lti_stepslib.php'); 51 52 /** 53 * Provides the steps to perform one complete backup of the LTI instance 54 */ 55 class backup_lti_activity_task extends backup_activity_task { 56 57 /** 58 * No specific settings for this activity 59 */ 60 protected function define_my_settings() { 61 } 62 63 /** 64 * Defines a backup step to store the instance data in the lti.xml file 65 */ 66 protected function define_my_steps() { 67 $this->add_step(new backup_lti_activity_structure_step('lti_structure', 'lti.xml')); 68 } 69 70 /** 71 * Encodes URLs to the index.php and view.php scripts 72 * 73 * @param string $content some HTML text that eventually contains URLs to the activity instance scripts 74 * @return string the content with the URLs encoded 75 */ 76 static public function encode_content_links($content) { 77 global $CFG; 78 79 $base = preg_quote($CFG->wwwroot, "/"); 80 81 // Link to the list of basiclti tools. 82 $search = "/(".$base."\/mod\/lti\/index.php\?id\=)([0-9]+)/"; 83 $content = preg_replace($search, '$@LTIINDEX*$2@$', $content); 84 85 // Link to basiclti view by moduleid. 86 $search = "/(".$base."\/mod\/lti\/view.php\?id\=)([0-9]+)/"; 87 $content = preg_replace($search, '$@LTIVIEWBYID*$2@$', $content); 88 89 return $content; 90 } 91 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body