Only call definition_after_data when we are editing an element so that we know data exists
This commit is contained in:
parent
ffcd9cc879
commit
73cf11b043
7 changed files with 17 additions and 41 deletions
|
@ -62,7 +62,7 @@ $PAGE->set_heading($course->fullname);
|
||||||
$PAGE->set_title(get_string('editcustomcert', 'customcert', format_string($customcert->name)));
|
$PAGE->set_title(get_string('editcustomcert', 'customcert', format_string($customcert->name)));
|
||||||
$PAGE->set_url($pageurl);
|
$PAGE->set_url($pageurl);
|
||||||
|
|
||||||
$mform = new mod_customcert_edit_element_form($pageurl, array('element' => $element, 'cmid' => $cmid));
|
$mform = new mod_customcert_edit_element_form($pageurl, array('element' => $element, 'cmid' => $cmid, 'action' => $action));
|
||||||
|
|
||||||
// Check if they cancelled.
|
// Check if they cancelled.
|
||||||
if ($mform->is_cancelled()) {
|
if ($mform->is_cancelled()) {
|
||||||
|
|
|
@ -61,8 +61,11 @@ class mod_customcert_edit_element_form extends moodleform {
|
||||||
* Fill in the current page data for this customcert.
|
* Fill in the current page data for this customcert.
|
||||||
*/
|
*/
|
||||||
public function definition_after_data() {
|
public function definition_after_data() {
|
||||||
|
// We only want to call definition_after_data if we are editing an element.
|
||||||
|
if ($this->_customdata['action'] == 'edit') {
|
||||||
$this->element->definition_after_data($this->_form);
|
$this->element->definition_after_data($this->_form);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validation.
|
* Validation.
|
||||||
|
|
|
@ -154,17 +154,9 @@ class customcert_element_date extends customcert_element_base {
|
||||||
*/
|
*/
|
||||||
public function definition_after_data($mform) {
|
public function definition_after_data($mform) {
|
||||||
// Set the item and format for this element.
|
// Set the item and format for this element.
|
||||||
$dateitem = '';
|
|
||||||
$dateformat = '';
|
|
||||||
|
|
||||||
if (!empty($this->element->data)) {
|
|
||||||
$dateinfo = json_decode($this->element->data);
|
$dateinfo = json_decode($this->element->data);
|
||||||
$dateitem = $dateinfo->dateitem;
|
$this->element->dateitem = $dateinfo->dateitem;
|
||||||
$dateformat = $dateinfo->dateformat;
|
$this->element->dateformat = $dateinfo->dateformat;
|
||||||
}
|
|
||||||
|
|
||||||
$this->element->dateitem = $dateitem;
|
|
||||||
$this->element->dateformat = $dateformat;
|
|
||||||
|
|
||||||
parent::definition_after_data($mform);
|
parent::definition_after_data($mform);
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,17 +106,9 @@ class customcert_element_grade extends customcert_element_base {
|
||||||
*/
|
*/
|
||||||
public function definition_after_data($mform) {
|
public function definition_after_data($mform) {
|
||||||
// Set the item and format for this element.
|
// Set the item and format for this element.
|
||||||
$gradeitem = '';
|
|
||||||
$gradeformat = '';
|
|
||||||
|
|
||||||
if (!empty($this->element->data)) {
|
|
||||||
$gradeinfo = json_decode($this->element->data);
|
$gradeinfo = json_decode($this->element->data);
|
||||||
$gradeitem = $gradeinfo->gradeitem;
|
$this->element->gradeitem = $gradeinfo->gradeitem;
|
||||||
$gradeformat = $gradeinfo->gradeformat;
|
$this->element->gradeformat = $gradeinfo->gradeformat;
|
||||||
}
|
|
||||||
|
|
||||||
$this->element->gradeitem = $gradeitem;
|
|
||||||
$this->element->gradeformat = $gradeformat;
|
|
||||||
|
|
||||||
parent::definition_after_data($mform);
|
parent::definition_after_data($mform);
|
||||||
}
|
}
|
||||||
|
|
|
@ -125,21 +125,10 @@ class customcert_element_image extends customcert_element_base {
|
||||||
*/
|
*/
|
||||||
public function definition_after_data($mform) {
|
public function definition_after_data($mform) {
|
||||||
// Set the image, width and height for this element.
|
// Set the image, width and height for this element.
|
||||||
$image = '';
|
|
||||||
$width = '0';
|
|
||||||
$height = '0';
|
|
||||||
|
|
||||||
// Check if there is any data for this element.
|
|
||||||
if (!empty($this->element->data)) {
|
|
||||||
$imageinfo = json_decode($this->element->data);
|
$imageinfo = json_decode($this->element->data);
|
||||||
$image = $imageinfo->pathnamehash;
|
$this->element->image = $imageinfo->pathnamehash;
|
||||||
$width = $imageinfo->width;
|
$this->element->width = $imageinfo->width;
|
||||||
$height = $imageinfo->height;
|
$this->element->height = $imageinfo->height;
|
||||||
}
|
|
||||||
|
|
||||||
$this->element->image = $image;
|
|
||||||
$this->element->width = $width;
|
|
||||||
$this->element->height = $height;
|
|
||||||
|
|
||||||
parent::definition_after_data($mform);
|
parent::definition_after_data($mform);
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,7 +67,7 @@ class customcert_element_text extends customcert_element_base {
|
||||||
* @param mod_customcert_edit_element_form $mform the edit_form instance
|
* @param mod_customcert_edit_element_form $mform the edit_form instance
|
||||||
*/
|
*/
|
||||||
public function definition_after_data($mform) {
|
public function definition_after_data($mform) {
|
||||||
$this->element->text = (!empty($this->element->data)) ? $this->element->data : '';
|
$this->element->text = $this->element->data;
|
||||||
parent::definition_after_data($mform);
|
parent::definition_after_data($mform);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -87,7 +87,7 @@ class customcert_element_userfield extends customcert_element_base {
|
||||||
* @param mod_customcert_edit_element_form $mform the edit_form instance
|
* @param mod_customcert_edit_element_form $mform the edit_form instance
|
||||||
*/
|
*/
|
||||||
public function definition_after_data($mform) {
|
public function definition_after_data($mform) {
|
||||||
$this->element->userfield = (!empty($this->element->data)) ? $this->element->data : '';
|
$this->element->userfield = $this->element->data;
|
||||||
parent::definition_after_data($mform);
|
parent::definition_after_data($mform);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue