Commit graph

26 commits

Author SHA1 Message Date
Mark Nelson
ed565c0a11 Add ability to choose how to deliver the certificate (#401) 2021-04-05 17:02:50 +08:00
Mark Nelson
28975d4625 Fix foreign key violation (#331) 2020-03-09 14:05:21 +01:00
Mark Nelson
988af1c457 Change field 'element' to character rather than text (#241) 2018-12-17 12:36:37 +08:00
Mark Nelson
87ee9f10ce #123 Renamed column to avoid breaking Oracle
The word 'size' is a reserved word in Oracle.
2017-08-05 15:50:08 +08:00
Mark Nelson
1ac7c1ffb6 #78 Add setting to allow anyone to verify certificates 2017-05-31 16:16:15 +08:00
Mark Nelson
72c3b278e3 #48 Added task and settings responsible for emailing certificates 2017-04-26 21:44:33 +08:00
Mark Nelson
ee3bdf7c18 #71 Increase customcert_templates 'name' column length 2017-01-31 16:54:20 +08:00
Mark Nelson
6889b04df0 Created one function to handle move_* actions
This changes the name of a column in a DB table.
No upgrade script has been written as this activity
has not been officially released.
2016-02-20 18:09:46 +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
355de679e8 Added a 'leftmargin' field
Also renamed the 'margin' field to 'rightmargin'
to easily distinguish between the two.
2015-12-11 12:10:45 +08:00
Mark Nelson
e441b7051b Removed the 'align' property 2015-12-08 18:27:30 +08:00
Shamim Rezaie
039e8bca37 Implemented support for element alignment
Also specifying the reference point location (the
location of the element that's put at posx and
posy) for each element.
2015-08-05 14:19:54 -05:00
Shamim Rezaie
6400e587d8 Added support for having right margin and width limit for each element
In addition to width and height, each page can have an
optional (right) margin attribute. Also, each element
can have an optional width attribute.
2015-08-05 14:16:56 -05:00
Mark Nelson
131c05a40d Removed the NEXT and PREVIOUS attributes from db/install.xml 2015-03-13 23:37:07 -07:00
Mark Nelson
cef1d2c7d8 Removed unnecessary ENUM attributes in db/install.xml 2013-07-26 16:06:06 +08:00
Mark Nelson
d67ee818b4 Readded the PREVIOUS and NEXT attributes in db/install.xml so that this module can be installed on 2.3 and 2.4
This reverts commit 18480d6050.

Conflicts:

	db/install.xml
2013-07-26 16:03:21 +08:00
Mark Nelson
8b92d1c307 Removed the orientation field as it is redundant considering the width and height are already specified
Note: I did not create a db/upgrade.php script to remove the database column as this module should not be currently used by anyone.
2013-07-25 18:54:28 +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
d7174ce3c8 Introduced functionality to save and load customcert templates
Note: I did not create a db/upgrade.php script to add the new database tables as this module should not be currently used by anyone.
2013-05-16 13:17:34 +08:00
Mark Nelson
7781024377 Added a timemodified field to the customcert_elements table which is used to collapse the form elements that have already been modified by the user
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-04-24 17:24:57 +08:00
Mark Nelson
0bc2e186e6 Added the ability to change the order the customcert elements are displayed
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-04-12 17:33:23 +08:00
Mark Nelson
18480d6050 Removed the NEXT and PREVIOUS attributes from the install.xml file as they are not needed in Moodle 2.5 and onwards 2013-04-12 14:50:19 +08:00
Mark Nelson
52fbc108a7 Introduced a new form element for selecting a colour on the customcert customisation page 2013-02-25 22:52:15 +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