[ Index ]

PHP Cross Reference of Moodle 1.9.3 [Build 15-Oct-2008]

title

Body

[close]

/blog/ -> edit_form.php (source)

   1  <?php  // $Id: edit_form.php,v 1.8.2.5 2008/02/25 05:30:44 moodler Exp $
   2  
   3  require_once($CFG->libdir.'/formslib.php');
   4  
   5  class blog_edit_form extends moodleform {
   6  
   7      function definition() {
   8  
   9          global $CFG, $COURSE, $USER;
  10          $mform    =& $this->_form;
  11  
  12          $post = $this->_customdata['existing'];
  13          $sitecontext = $this->_customdata['sitecontext'];
  14  
  15          // the upload manager is used directly in entry processing, moodleform::save_files() is not used yet
  16          $this->set_upload_manager(new upload_manager('attachment', true, false, $COURSE, false, 0, true, true, false));
  17  
  18          $mform->addElement('header', 'general', get_string('general', 'form'));
  19          $mform->addElement('text', 'subject', get_string('entrytitle', 'blog'), 'size="60"');
  20          $mform->setType('subject', PARAM_TEXT);
  21          $mform->addRule('subject', get_string('emptytitle', 'blog'), 'required', null, 'client');
  22  
  23          $mform->addElement('htmleditor', 'summary', get_string('entrybody', 'blog'), array('rows'=>25));
  24          $mform->setType('summary', PARAM_RAW);
  25          $mform->addRule('summary', get_string('emptybody', 'blog'), 'required', null, 'client');
  26          $mform->setHelpButton('summary', array('writing', 'richtext'), false, 'editorhelpbutton');
  27  
  28          $mform->addElement('format', 'format', get_string('format'));
  29  
  30          $mform->addElement('file', 'attachment', get_string('attachment', 'forum'));
  31  
  32          $mform->addElement('select', 'publishstate', get_string('publishto', 'blog'), blog_applicable_publish_states());
  33          $mform->setHelpButton('publishstate', array('publish_state', get_string('publishto', 'blog'), 'blog'));
  34  
  35  
  36          if (!empty($CFG->usetags)) {
  37              $mform->addElement('header', 'tagshdr', get_string('tags', 'tag'));
  38              $mform->createElement('select', 'otags', get_string('otags','tag'));
  39  
  40              $js_escape = array(
  41                  "\r"    => '\r',
  42                  "\n"    => '\n',
  43                  "\t"    => '\t',
  44                  "'"     => "\\'",
  45                  '"'     => '\"',
  46                  '\\'    => '\\\\'
  47              );
  48  
  49              $otagsselEl =& $mform->addElement('select', 'otags', get_string('otags', 'tag'), array(), 'size="5"');
  50              $otagsselEl->setMultiple(true);
  51              $this->otags_select_setup();
  52  
  53              $mform->addElement('textarea', 'ptags', get_string('ptags', 'tag'), array('cols'=>'40', 'rows'=>'5'));
  54              $mform->setType('ptagsadd', PARAM_NOTAGS);
  55          }
  56          
  57          $this->add_action_buttons();
  58  
  59          $mform->addElement('hidden', 'action');
  60          $mform->setType('action', PARAM_ACTION);
  61          $mform->setDefault('action', '');
  62  
  63          $mform->addElement('hidden', 'courseid');
  64          $mform->setType('courseid', PARAM_INT);
  65  
  66          $mform->addElement('hidden', 'id');
  67          $mform->setType('id', PARAM_INT);
  68          $mform->setDefault('id', 0);
  69  
  70      }
  71  
  72      /**
  73       * This function sets up options of otag select element. This is called from definition and also
  74       * after adding new official tags with the add tag button.
  75       *
  76       */
  77      function otags_select_setup(){
  78          global $CFG;
  79          $mform =& $this->_form;
  80          if ($otagsselect =& $mform->getElement('otags')) {
  81              $otagsselect->removeOptions();
  82          }
  83          $namefield = empty($CFG->keeptagnamecase) ? 'name' : 'rawname';
  84          if ($otags = get_records_sql_menu('SELECT id, '.$namefield.' from '.$CFG->prefix.'tag WHERE tagtype=\'official\' ORDER by name ASC')){
  85              $otagsselect->loadArray($otags);
  86          }
  87      }
  88  
  89  }
  90  ?>


Generated: Wed Jan 14 11:33:29 2009 Cross-referenced by PHPXref 0.7