PageRenderTime 48ms CodeModel.GetById 22ms RepoModel.GetById 1ms app.codeStats 0ms

/mod/book/edit_form.php

https://bitbucket.org/synergylearning/campusconnect
PHP | 83 lines | 42 code | 18 blank | 23 comment | 7 complexity | a06b9e4aa3711b4fb9573f135fa53e08 MD5 | raw file
Possible License(s): MPL-2.0-no-copyleft-exception, LGPL-3.0, GPL-3.0, LGPL-2.1, Apache-2.0, BSD-3-Clause, AGPL-3.0
  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. * Chapter edit form
  18. *
  19. * @package mod_book
  20. * @copyright 2004-2010 Petr Skoda {@link http://skodak.org}
  21. * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  22. */
  23. defined('MOODLE_INTERNAL') || die;
  24. require_once($CFG->libdir.'/formslib.php');
  25. class book_chapter_edit_form extends moodleform {
  26. function definition() {
  27. global $CFG;
  28. $chapter = $this->_customdata['chapter'];
  29. $options = $this->_customdata['options'];
  30. // Disabled subchapter option when editing first node.
  31. $disabledmsg = null;
  32. if ($chapter->pagenum == 1) {
  33. $disabledmsg = get_string('subchapternotice', 'book');
  34. }
  35. $mform = $this->_form;
  36. if (!empty($chapter->id)) {
  37. $mform->addElement('header', 'general', get_string('editingchapter', 'mod_book'));
  38. } else {
  39. $mform->addElement('header', 'general', get_string('addafter', 'mod_book'));
  40. }
  41. $mform->addElement('text', 'title', get_string('chaptertitle', 'mod_book'), array('size'=>'30'));
  42. $mform->setType('title', PARAM_RAW);
  43. $mform->addRule('title', null, 'required', null, 'client');
  44. $mform->addElement('advcheckbox', 'subchapter', get_string('subchapter', 'mod_book'), $disabledmsg);
  45. $mform->addElement('editor', 'content_editor', get_string('content', 'mod_book'), null, $options);
  46. $mform->setType('content_editor', PARAM_RAW);
  47. $mform->addRule('content_editor', get_string('required'), 'required', null, 'client');
  48. $mform->addElement('hidden', 'id');
  49. $mform->setType('id', PARAM_INT);
  50. $mform->addElement('hidden', 'cmid');
  51. $mform->setType('cmid', PARAM_INT);
  52. $mform->addElement('hidden', 'pagenum');
  53. $mform->setType('pagenum', PARAM_INT);
  54. $this->add_action_buttons(true);
  55. // set the defaults
  56. $this->set_data($chapter);
  57. }
  58. function definition_after_data(){
  59. $mform = $this->_form;
  60. $pagenum = $mform->getElement('pagenum');
  61. if ($pagenum->getValue() == 1) {
  62. $mform->hardFreeze('subchapter');
  63. }
  64. }
  65. }