Huge refactor

1) Every certificate is a template. Before a user would create a certificate then had
the option to save it as a template. This could potentially be chaotic with numerous
users creating templates, making the template system a mess. Now, rather than creating
a certificate first, then saving it as a template, you are always creating a template.
Each template is associated with a context, so depending on where you are creating it
the context is different. This means users in the CONTEXT_MODULE context are creating
a template specific to that module, where as a user creating a template in the
CONTEXT_SYSTEM context would be creating a general template that can be used by others.
This meant we can remove the 'customcert_template_*' db tables. Yay - no duplicated
tables.
2) Created new helper classes and moved functionality there.
3) Moved files to classes/ for autoloading.
4) General tidy up.
This commit is contained in:
Mark Nelson 2016-02-16 17:03:34 +08:00
parent 54584a113c
commit 43d20c0d1b
59 changed files with 2028 additions and 1815 deletions

View file

@ -37,7 +37,7 @@ class element extends \mod_customcert\element {
global $DB, $USER;
if ($preview) {
$code = customcert_generate_code();
$code = \mod_customcert\certificate::generate_code();
} else {
// Get the page.
$page = $DB->get_record('customcert_pages', array('id' => $this->element->pageid), '*', MUST_EXIST);
@ -46,7 +46,7 @@ class element extends \mod_customcert\element {
$code = $issue->code;
}
parent::render_content($pdf, $code);
\mod_customcert\element_helper::render_content($pdf, $this, $code);
}
/**
@ -54,10 +54,12 @@ class element extends \mod_customcert\element {
*
* This function is used to render the element when we are using the
* drag and drop interface to position it.
*
* @return string the html
*/
public function render_html() {
$code = customcert_generate_code();
$code = \mod_customcert\certificate::generate_code();
return parent::render_html_content($code);
return \mod_customcert\element_helper::render_html_content($this, $code);
}
}