Commit graph

17 commits

Author SHA1 Message Date
Mark Nelson
72c3b278e3 #48 Added task and settings responsible for emailing certificates 2017-04-26 21:44:33 +08:00
Mark Nelson
fdc5bde3d4 #88 Make plugins DB codechecker happy 2017-02-25 11:38:30 +08:00
Mark Nelson
97cec031cd Fixed references to non-existent constants 2016-04-23 14:13:28 +08:00
Mark Nelson
43d20c0d1b 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.
2016-02-20 16:35:19 +08:00
Mark Nelson
b382cc5b92 Replaced deprecated function 2015-08-09 17:48:53 -07:00
Mark Nelson
7a2675e889 Moved internal functions to locallib.php 2015-03-13 23:37:06 -07:00
Mark Nelson
8df94fd093 Added missing scope to functions 2013-07-25 13:08:11 +08:00
Mark Nelson
5203d81980 Changed PHPDocs and added date to the copyright to match Moodle coding guidelines 2013-07-22 13:06:18 +08:00
Mark Nelson
a26f0c2c66 Tidied up the PHPDocs and set the base element to an abstract class 2013-06-12 19:13:16 +08:00
Mark Nelson
fa5d45eef3 Completely refactored the code for editing a custom certificate
The elements for each page are listed in a table below the other page settings, meaning each page has a separate table for listing their elements. Each element is now edited in a pop-up, rather than having all the element settings displayed at once on the form causing it to look overcrowded. There is also no longer any need for the function add_element to add default values for the elements when they are added, as a a form is shown when you click to add an element where you can enter the values before it is created.

Note: I did not create a db/upgrade.php script to add the new database columns as this module should not be currently used by anyone.
2013-06-07 16:04:38 +08:00
Mark Nelson
c0d081f849 Added the ability to specify the PDF protection
Note: I did not create a db/upgrade.php script to add the new database column as this module should not be currently used by anyone.
2013-05-16 13:21:12 +08:00
Mark Nelson
9e36732d5f Updated package and removed subpackage from PHPDocs 2013-04-26 15:39:59 +08:00
Mark Nelson
6b145ee81f Renamed the label for the customcert intro field 2013-04-24 15:44:13 +08:00
Mark Nelson
8b3954cea7 Updated the code responsible for preventing internal access to certain files 2013-04-10 17:18:00 +08:00
Mark Nelson
d6428b89d1 Added setType to form elements for security and to remove the debugging message introduced in Moodle 2.5 2013-04-09 13:10:56 +08:00
Mark Nelson
9d0eb727e5 Introduced customisable elements to the customcert
Elements are sub-plugins that have the same abilities as a core plugin, such as creating tables, capabilities and performing upgrades.

Currently elements can define -

* What additional form elements are rendered when adding the element to the customcert customisation page.
* How the data from the additional form elements is validated and saved.
* How the element is rendered on the PDF.
* How the element handles removing data when it is deleted.
2013-02-21 18:23:11 +08:00
Mark Nelson
2b8403438f Module will install successfully with limited functionality
The module will add tables to the DB on install, you can then add/edit instances and add/edit pages to these instances.
2013-02-18 11:48:16 +08:00