Commit graph

41 commits

Author SHA1 Message Date
sam marshall
d3db4b037c MDL-44070 Conditional availability enhancements (2): subsystem, API
This commit defines the new /availability root folder, with
/availability/classes, /availability/tests, and
/availability/condition where the condition plugins will live.
Condition plugin prefix is availability_, e.g. availability_date.

Rationale for this organisation:

1. I was originally going to put this in /lib/availability but
   it has been pointed out that putting even more junk in lib
   is probably bad.
2. 'availability' and 'condition' are the two names used in code
   to refer to this system ($CFG->enableavailability).
3. The prefix has to be short enough to allow database tables
   (although in practice I assume that condition plugins will not
   normally contain database tables).

The new API includes a Boolean tree structure that controls the
availability of an item.

AMOS BEGIN
 CPY [availabilityconditions,core_condition],[restrictaccess,core_availability]
 CPY [enableavailability,core_condition],[enableavailability,core_availability]
 CPY [configenableavailability,core_condition],[enableavailability_desc,core_availability]
AMOS END
2014-04-07 20:11:33 +01:00
Petr Škoda
2f98f5d541 MDL-43117 Add release column to Plugins Overview page
This patch is based on previous patch by Marko Vidberg, thanks a lot!
2013-12-01 18:57:49 +08:00
Mark Nelson
2f00e1b245 MDL-18375 calendar: huge refactor of the initial patch
1) Moved the calendar types location to a sub-folder in the calendar directory.
2) Removed/moved language strings.
3) Removed calendar types that should be downloaded as plugins.
4) Removed a Non-English language pack for the Gregorian calendar type that
should be downloaded separately.
5) Removed custom files responsible for checking for updates and uninstalling
calendar types, which should be done by core.
6) Removed JS from the calendar_month block as there is no non-JS alternative
provided and the JS written does not make use of the YUI library to ensure
multiple browser support.
7) Removed code from the base class responsible for creating timestamps that
are saved in the DB.
8) Added PHPDocs.

Note: In the original patch we are editing core functions responsible for saving
time in the database in the calendar base class. This is very dangerous, we do
not want to touch these functions as it could cause a complete fubar of the
database. There are places we are forcing the use of the gregorian calendar as
we are passing dates generated by the PHP date function, where as sometimes
we pass dates from usergetdate (which was being overwritten to return the
date specific to the calendar). We can not expect third party modules to
change the calendar type depending on the format they pass to these functions.
2013-09-05 18:30:05 +08:00
Shamim Rezaie
6dd59aabfa MDL-18375 calendar: added multiple calendar support
Conflicts:

	course/edit_form.php
	lib/db/install.xml
	lib/form/dateselector.php
	lib/form/datetimeselector.php
	lib/setup.php
2013-09-05 18:30:05 +08:00
Petr Škoda
cd79930e4d MDL-39088 migrate module uninstallation to plugin_manager 2013-06-27 22:20:35 +02:00
Petr Škoda
5643f932e9 MDL-39088 migrate enrol uninstallation to plugin_manager 2013-06-27 22:20:35 +02:00
Petr Škoda
6584d8a861 MDL-39088 migrate block uninstallation to plugin_manager 2013-06-27 22:20:35 +02:00
Helen Foster
9f3e096899 MDL-39642 Merge English strings from the en_fix language pack 2013-05-13 09:58:43 +02:00
David Mudrák
b27c50e234 MDL-39248 Fix the plugins check screen strings
Not all add-ons require administrator's attention during the upgrade
now. They are now listed only if there is an update available for them.

Also, it's not true any more that add-ons must be updated manually. They
can be updated using the automatic deployment feature, too.
2013-04-20 00:52:47 +02:00
David Mudrák
436d94478d MDL-39087 Implement a common interface for uninstalling general plugin
Plugins may use this general tool for uninstallation and eventually
removal of the deployed source code. At the moment, this is implemented
as a wrapper for the core function uninstall_plugin() with an extra hook
in the relevant plugin info subclass.

For non-standard add-ons, the tool can remove the deployed plugin source
code as well, if the web server has required write permissions. Ideally,
all add-ons installed via the new tool_installaddon should be removable
via the web interface as well.
2013-04-12 01:42:58 +02:00
Helen Foster
ca084ef149 MDL-38352 Merge English strings from the en_fix language pack 2013-03-06 16:44:39 +01:00
Petr Škoda
bdbcb6d7fa MDL-38121 tell admins when plugin installed into wrong dir 2013-02-23 18:16:42 +01:00
David Mudrák
30e2682756 MDL-36903 Pre-check the ZIP download before executing the mdeploy.php utility
This patch makes Moodle call HTTP HEAD method via cURL to see if the ZIP
is expected to be downloadable by mdeploy.php. This is mainly intended
for SSL certificates check.
2012-11-30 16:09:58 +01:00
David Mudrák
4785c45dd8 MDL-36903 Verify the SSL certificate of available updates provider
From now on, Moodle verifies the available updates provider server. To
make it work, either there must be a valid CA certificate available in
the operating system, or the administrator has to upload the valid CA
certificate to moodledata/moodleorgca.crt (PEM format) file manually.
2012-11-30 16:09:58 +01:00
David Mudrák
0daa642894 MDL-35238 Inform the admin if the update can not be deployed due to write permissions 2012-11-09 00:20:18 +01:00
David Mudrák
85d7516313 MDL-35238 Fetch available updates using the 1.1 version of the API
If the stored response has still 1.0 version (which is expected during
the upgrade to 2.4), a debugging message is displayed. Added a string to
explain what's going on and how to recover from the state.
2012-11-08 22:33:07 +01:00
David Mudrák
08c3bc006d MDL-35238 Warn the admin if they are about to overwrite a SCM checkout 2012-11-08 22:33:07 +01:00
David Mudrák
6aa2e2881a MDL-35238 Admin renderer method to display the plugin update confirmation page 2012-11-08 22:33:06 +01:00
David Mudrák
4df8bced23 MDL-35238 Allow filtering at the Plugins overview page 2012-11-08 22:33:06 +01:00
Sam Hemelryk
fd59389ca6 MDL-25290 cache: Plugins are now standard and strings tidied 2012-10-08 09:53:52 +13:00
David Mudrak
39f15cc712 MDL-32329 check for plugin dependencies during the pre-install checking
This follows the same path as we have in CLI installers. Plugin
dependencies are checked right after the environment checks and the
install can't continue unless all dependencies are fixed.
2012-05-30 10:35:28 +02:00
Ruslan Kabalin
c9e34994cb MDL-32009 messaging: Fix using message processor term inconsistency. 2012-04-30 10:34:39 +01:00
David Mudrak
a687fcac7a MDL-20438 added a link to toggle the plugins check page back to the shorter list 2012-03-30 11:05:42 +02:00
David Mudrak
18e55c294d MDL-20438 removing the word 'extension'
It was suggested not to use this term as in moodleverse, non-standard
plugins have always been referred to as 'contributed plugins'.
2012-03-30 11:05:42 +02:00
David Mudrak
bc06cbc36b MDL-20438 rewording confusing status_uptodate
The status_uptodate is a flag that the plugin's on-disk version and the
in-db version are in sync, that is no upgrade will be performed.
However, there can be a newer version of the plugin available. So using
the term "up-to-date" may be confusing.
2012-03-30 11:05:41 +02:00
David Mudrak
3204daeae3 MDL-20438 The Plugins overview admin page now provides a way to check for updates 2012-03-30 11:05:40 +02:00
David Mudrak
2b135b05d8 MDL-20438 Making the plugins overview page space-friendly 2012-03-30 11:05:40 +02:00
David Mudrak
d26f3ddde7 MDL-20438 New plugins overview panel displaying some stats 2012-03-30 11:05:39 +02:00
Petr Skoda
ec8935f576 MDL-30786 fix overview status of standard plugins to be deleted 2011-12-23 10:35:32 +01:00
Sam Hemelryk
1ae9aa2b8f Merged MDL-29108 Advanced grading 2011-11-14 22:01:05 +13:00
Eloy Lafuente (stronk7)
47c6991a8e Merge branch 'MDL-29945' of git://github.com/timhunt/moodle 2011-11-10 21:47:22 +01:00
Tim Hunt
828788f03b MDL-29945 plugin management: don't show Uninstall links for required plugins. 2011-11-10 19:11:24 +00:00
Petr Skoda
275cbac71a MDL-29030 migrate outline report to new type
AMOS BEGIN
 MOV [outline:view,coursereport_outline],[outline:view,report_outline]
 MOV [pluginpagetype,coursereport_outline],[pluginpagetype,report_outline]
 MOV [pluginname,coursereport_outline],[pluginname,report_outline]
AMOS END
2011-11-06 12:22:47 +01:00
David Mudrak
18dd4a69d0 Merge remote branch 'origin/master' into rubric
Conflicts:
	lib/db/upgrade.php
2011-10-27 21:58:45 +02:00
Tim Hunt
36ca62cab7 MDL-29474 display the dependancy information on the upgrade screen. 2011-10-20 11:13:33 +01:00
David Mudrak
091222581d MDL-29479 Registered new plugin type "gradingform" 2011-09-29 18:36:00 +02:00
Petr Skoda
11b24ce7b2 MDL-29029 add new "Admin tool" plugin type 2011-09-17 08:49:24 +02:00
Eloy Lafuente (stronk7)
379f39eb9f Merge branch 'MDL-27789-qe2plugins' of git://github.com/mudrd8mz/moodle 2011-06-13 10:12:03 +02:00
David Mudrak
a0166f5507 MDL-27792 Fixed missing core subsystem 2011-06-09 16:19:51 +02:00
David Mudrak
d1c77ac372 MDL-27789 The new question plugins reported as standard ones 2011-06-09 14:29:27 +02:00
David Mudrak
91dedc324f MDL-26784 Strings for the new plugin manager
The new strings file core_plugin defines names of all plugin types
supported by Moodle. Some strings have already been defined elsewhere
and we use AMOS script here to copy their translation, if it is
available.

AMOS BEGIN
 CPY [settings,core],[settings,core_plugin]
 CPY [status,core],[status,core_plugin]
 CPY [missingfromdisk,core],[status_missing,core_plugin]
 CPY [nodatabase,core_admin],[status_nodb,core_plugin]
 CPY [authenticationplugins,core],[type_auth_plural,core_plugin]
 CPY [block,core],[type_block,core_plugin]
 CPY [blocks,core],[type_block_plural,core_plugin]
 CPY [coursereport,core],[type_coursereport,core_plugin]
 CPY [coursereports,core],[type_coursereport_plural,core_plugin]
 CPY [filter,core],[type_filter,core_plugin]
 CPY [courseformats,core],[type_format_plural,core_plugin]
 CPY [activitymodule,core],[type_mod,core_plugin]
 CPY [activitymodules,core],[type_mod_plural,core_plugin]
 CPY [plagiarism,core_plagiarism],[type_plagiarism,core_plugin]
 CPY [portfolio,core_portfolio],[type_portfolio,core_plugin]
 CPY [portfolios,core_portfolio],[type_portfolio_plural,core_plugin]
 CPY [questiontype,core_admin],[type_qtype,core_plugin]
 CPY [questiontypes,core_admin],[type_qtype_plural,core_plugin]
 CPY [repository,core_repository],[type_repository,core_plugin]
 CPY [theme,core],[type_theme,core_plugin]
 CPY [themes,core],[type_theme_plural,core_plugin]
 CPY [uninstallplugin,core_admin],[uninstall,core_plugin]
 CPY [version,core],[version,core_plugin]
 CPY [assignmenttype,mod_assignment],[subplugintype_assignment,mod_assignment]
 CPY [presets,mod_data],[subplugintype_datapreset_plural,mod_data]
 CPY [evaluationmethod,mod_workshop],[subplugintype_workshopeval,mod_workshop]
 CPY [strategy,mod_workshop],[subplugintype_workshopform,mod_workshop]
AMOS END
2011-03-31 13:59:05 +02:00