| [ Index ] |
PHP Cross Reference of Moodle 1.9.3 [Build 15-Oct-2008] |
[Summary view] [Print] [Text view]
1 <?php // $Id: view_structure_xml.class.php,v 1.4 2007/10/10 05:25:22 nicolasconnault Exp $ 2 3 /////////////////////////////////////////////////////////////////////////// 4 // // 5 // NOTICE OF COPYRIGHT // 6 // // 7 // Moodle - Modular Object-Oriented Dynamic Learning Environment // 8 // http://moodle.com // 9 // // 10 // Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com // 11 // (C) 2001-3001 Eloy Lafuente (stronk7) http://contiento.com // 12 // // 13 // This program is free software; you can redistribute it and/or modify // 14 // it under the terms of the GNU General Public License as published by // 15 // the Free Software Foundation; either version 2 of the License, or // 16 // (at your option) any later version. // 17 // // 18 // This program is distributed in the hope that it will be useful, // 19 // but WITHOUT ANY WARRANTY; without even the implied warranty of // 20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // 21 // GNU General Public License for more details: // 22 // // 23 // http://www.gnu.org/copyleft/gpl.html // 24 // // 25 /////////////////////////////////////////////////////////////////////////// 26 27 /// This class will display the XML for one structure 28 29 class view_structure_xml extends XMLDBAction { 30 31 /** 32 * Init method, every subclass will have its own 33 */ 34 function init() { 35 parent::init(); 36 37 /// Set own custom attributes 38 39 /// Get needed strings 40 $this->loadStrings(array( 41 /// 'key' => 'module', 42 )); 43 } 44 45 /** 46 * Invoke method, every class will have its own 47 * returns true/false on completion, setting both 48 * errormsg and output as necessary 49 */ 50 function invoke() { 51 parent::invoke(); 52 53 $result = true; 54 55 /// Set own core attributes 56 $this->does_generate = ACTION_GENERATE_XML; 57 58 /// These are always here 59 global $CFG, $XMLDB; 60 61 /// Do the job, setting result as needed 62 63 /// Get the file parameter 64 $select = required_param('select', PARAM_ALPHA); //original/edited 65 /// Get the dir containing the file 66 $dirpath = required_param('dir', PARAM_PATH); 67 $dirpath = $CFG->dirroot . stripslashes_safe($dirpath); 68 69 /// Get the correct dir 70 if ($select == 'original') { 71 if (!empty($XMLDB->dbdirs)) { 72 $base =& $XMLDB->dbdirs[$dirpath]; 73 } 74 } else if ($select == 'edited') { 75 if (!empty($XMLDB->editeddirs)) { 76 $base =& $XMLDB->editeddirs[$dirpath]; 77 } 78 } else { 79 $this->errormsg = 'Cannot access to ' . $select . ' info'; 80 $result = false; 81 } 82 if ($base) { 83 /// Only if the directory exists and it has been loaded 84 if (!$base->path_exists || !$base->xml_loaded) { 85 $this->errormsg = 'Directory ' . $dirpath . ' not loaded'; 86 return false; 87 } 88 } else { 89 $this->errormsg = 'Problem handling ' . $select . ' files'; 90 return false; 91 } 92 93 /// Get the structure 94 if ($result) { 95 if (!$structure =& $base->xml_file->getStructure()) { 96 $this->errormsg = 'Error retrieving ' . $select . ' structure'; 97 $result = false; 98 } 99 } 100 101 if ($result) { 102 /// Everything is ok. Generate the XML output 103 $this->output = $structure->xmlOutput(); 104 } else { 105 /// Switch to HTML and error 106 $this->does_generate = ACTION_GENERATE_HTML; 107 } 108 109 /// Return ok if arrived here 110 return $result; 111 } 112 } 113 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Wed Jan 14 11:33:29 2009 | Cross-referenced by PHPXref 0.7 |