コード例 #1
0
 /**
  * Prepares the form before data are set
  *
  * Additional wysiwyg editor are prepared here, the introeditor is prepared automatically by core.
  * Grade items are set here because the core modedit supports single grade item only.
  *
  * @param array $data to be set
  * @return void
  */
 public function data_preprocessing(&$data)
 {
     global $CFG;
     require_once dirname(__FILE__) . '/locallib.php';
     parent::data_preprocessing($data);
     if ($this->current->instance) {
         // editing an existing certificate - let us prepare the added editor elements (intro done automatically), and files
         //First Page
         //Get firstimage
         $imagedraftitemid = file_get_submitted_draft_itemid('certificateimage');
         //Get firtsimage filearea information
         $imagefileinfo = simplecertificate::get_certificate_image_fileinfo($this->context);
         file_prepare_draft_area($imagedraftitemid, $imagefileinfo['contextid'], $imagefileinfo['component'], $imagefileinfo['filearea'], $imagefileinfo['itemid'], $this->get_filemanager_options_array());
         $data['certificateimage'] = $imagedraftitemid;
         //Prepare certificate text
         $data['certificatetext'] = array('text' => $data['certificatetext'], 'format' => FORMAT_HTML);
         //Second page
         //Get Back image
         $secondimagedraftitemid = file_get_submitted_draft_itemid('secondimage');
         //Get secondimage filearea info
         $secondimagefileinfo = simplecertificate::get_certificate_secondimage_fileinfo($this->context);
         file_prepare_draft_area($secondimagedraftitemid, $secondimagefileinfo['contextid'], $secondimagefileinfo['component'], $secondimagefileinfo['filearea'], $secondimagefileinfo['itemid'], $this->get_filemanager_options_array());
         $data['secondimage'] = $secondimagedraftitemid;
         //Get backpage text
         if (!empty($data['secondpagetext'])) {
             $data['secondpagetext'] = array('text' => $data['secondpagetext'], 'format' => FORMAT_HTML);
         } else {
             $data['secondpagetext'] = array('text' => '', 'format' => FORMAT_HTML);
         }
     } else {
         //Load default
         $data['certificatetext'] = array('text' => '', 'format' => FORMAT_HTML);
         $data['secondpagetext'] = array('text' => '', 'format' => FORMAT_HTML);
     }
     //completion rules
     $data['completiontimeenabled'] = !empty($data['requiredtime']) ? 1 : 0;
 }