Commit graph

35 commits

Author SHA1 Message Date
Eloy Lafuente (stronk7)
de881693f7 MDL-48021 bump: Bump all versions to planned release
This bumps all versions to planned 2.8 release
(2014111000) version and all the dependencies to
current 2.8rc1 (2014110400)
2014-11-04 17:52:35 +01:00
David Mudrák
fb1f2b9b27 MDL-47883 admin: Fix missing string in the plugin validation 2014-10-31 12:54:22 +01:00
Helen Foster
272a071694 MDL-45599 Fix tiny grammatical errors in the plugin installer 2014-07-08 09:07:01 +02:00
David Mudrák
d49db5b2de MDL-45599 Stop using the 'add-on' term
We now call them all as just 'plugins' for consistency. There where we need to
explicitly distinguish the source of the plugin, we say they are 'additional
plugins' on contrary to 'standards plugins' coming with the core.
2014-07-04 13:16:53 +02:00
Eloy Lafuente (stronk7)
538bf99ece MDL-45486 Bump all versions to planned release
This bumps all versions to planned 2.7 release
(2014051200) version and all the dependencies to
current 2.7rc2 (2014050800)
2014-05-09 02:12:28 +02:00
Eloy Lafuente (stronk7)
f39c82ebed MDL-42701 Bump all versions near 2.6 release 2013-11-05 02:36:00 +01:00
Petr Škoda
4cf944c6bc MDL-42044 minor add-on installer unit tests cleanup 2013-11-01 10:43:14 +01:00
Petr Škoda
99456a5559 MDL-42044 standardise list of unzipped files in add-on installer 2013-11-01 10:43:13 +01:00
Petr Škoda
a635424f88 MDL-42110 use parent directory permissions when installing add-ons 2013-10-25 21:23:40 +02:00
Petr Škoda
e87214bda7 MDL-42078 multiple uninstall improvements and cleanup
Includes:
* update checker refactored to \core\update\ namespace
* plugininfo classes refactored to \core\plugininfo\ namespace
* plugin_manager renamed to core_plugin_manager
* redirect back to original page after plugin uninstall
* fixed assign subplugin uninstall
* move assign subplugins under the assignment in admin tree
* fixed plugininfo for all question related plugin types
* auth uninstall support
* added missing block dependencies
* added theme uninstall
* subplugin types are following the plugin on plugin overview page
* several performance improvements in plugin manager
* new warnigns when plugininfo are outdated or missing
* multiple fixes and other improvements
2013-10-07 13:10:36 +02:00
Petr Škoda
56da374e1e MDL-40220 use new core_component::normalize_component() 2013-07-16 22:41:00 +02:00
Petr Škoda
46f6f7f224 MDL-40220 use new core_component::get_plugin_types() 2013-07-16 22:31:48 +02:00
Frederic Massart
a8dd22a7d7 MDL-40369 theme: Fix core using deprecated icons 2013-07-03 16:47:35 +08:00
Petr Škoda
e835ef583a MDL-39854 use classloader in add-on installer tool 2013-06-18 09:10:23 +02:00
Petr Škoda
9e19a0f08b MDL-39854 reimplement Frankenstyle support and enable classloader
Better performance, more reliable, completely self contained,
more validation and full backwards compatibility.

This will also allow us to implement ignoring of plugins.
2013-06-18 09:10:07 +02:00
Helen Foster
9f3e096899 MDL-39642 Merge English strings from the en_fix language pack 2013-05-13 09:58:43 +02:00
Dan Poltawski
4736236959 Merge branch 'MDL-39442-copy-addon' of git://github.com/mudrd8mz/moodle
Conflicts:
	admin/tool/installaddon/version.php
2013-05-06 10:00:23 +01:00
David Mudrák
ed70c74be5 MDL-39442 Do not use native rename() when moving folders
The native rename() function does not support moving folders
cross-device. See https://bugs.php.net/bug.php?id=54097 for details. So
instead of trying to move the whole tree, the new installer's method
moves files recursively one by one.

This is consistent with what mdeploy.php already does.
2013-05-02 13:58:43 +02:00
Eloy Lafuente (stronk7)
cedb0aab5a MDL-39434 Bump all versions near 2.5 release 2013-05-01 18:03:29 +02:00
Petr Škoda
c2140b5d95 MDL-39356 add ca certificate bundles for cURL
This is necessary because PHP in Windows does not have any certificates and some *nix systems have outdated or missing ca bundles too.

The order is:
1/ dataroot/moodleorgca.crt always wins - needs to be added manually by admin
2/ php.ini setting "curl.cainfo" is next
3/ on Windows libdir/cacert.pem is used because it does not have any default cert bundles
4/ system default is the last - the previous value, ok for properly configured *nix systems
2013-04-28 20:58:58 +02:00
David Mudrák
3e6a8aeb7c MDL-38509 Unify curl class usage in the add-on installer tool
Both classes using cURL features now access it via the core curl wrapper
class. Credit goes to Dan Poltawski for spotting the previous discrepancy
during the integration review.
2013-04-02 23:11:01 +02:00
David Mudrák
c9c4d0b24e MDL-38509 Fix false unit test failures in the add-on installer
Previously, the testable validator's get_plugintype_location() used to
return path to a directory that itself did not need to be writable. This
was causing false failures. This patch reimplements the testable
validator's get_plugintype_location() method so that it returns a path
inside $CFG->tempdir which is always writable.

Also, to make all test methods consistent, all of them now use the
testable_tool_installaddon_validator class. Before this patch, some test
methods used the testable class and some used the parent class.
2013-04-02 16:58:12 +02:00
David Mudrák
b2a138a20f MDL-38509 Escalate the maturity level of the plugin
The API is considered stable now and there should not be a need to
change it.
2013-03-29 01:30:00 +01:00
David Mudrák
af96f120e9 MDL-38509 Add ability to install add-ons from the remote repository
There is a new hook in the index.php file. If valid HTTP parameter
installaddonrequest is detected, the installer asks the administrator to
confirm the request.

If confirmed, the installer calls download.moodle.org/api/1.2/pluginfo.php
service to get information about the given plugin version. The essential
data are the URL of the ZIP to download and the MD5 hash of the ZIP.
These data must be fetched via HTTPS to protect against MiM attack.

If the ZIP is downloaded and the MD5 content hash is correct, the user
is redirected to the previously implemented ZIP validation page, as if
the ZIP was uploaded manually.

The valid format of the installaddonrequest is documented via the
test_decode_remote_request() unit test method.
2013-03-29 00:16:06 +01:00
David Mudrák
399ddcc73e MDL-38509 Move the tool node in the navigation
The "Install add-ons" should appear just below Site administration >
Plugins, before the "Activity modules".
2013-03-28 11:54:07 +01:00
David Mudrák
b7f6442670 MDL-38509 Fix the communication protocol with Moodle plugins directory
Implements the behaviour currently specified at
http://docs.moodle.org/dev/On-click_add-on_installation
2013-03-28 11:54:06 +01:00
David Mudrák
59a2cc8d38 MDL-38509 Add the script that finally deploys the validated ZIP contents 2013-03-28 11:54:06 +01:00
David Mudrák
a143984a36 MDL-38509 Add strings for the new admin tool 2013-03-28 11:54:06 +01:00
David Mudrák
cbd125e85d MDL-38509 Implement the ZIP package validation page
The script validate.php expects a ZIP file stored in a temporary
location. It extracts the ZIP (optionally renaming the root directory)
and executes the validator. Then it renders the validator log messages
and continue buttons.
2013-03-28 11:54:06 +01:00
David Mudrák
07083b230b MDL-38509 Add new tool_installaddon_installer::extract_installfromzip_file() method 2013-03-28 11:54:06 +01:00
David Mudrák
585b64a607 MDL-38509 Save uploaded ZIP into a temporary location and redirect to validator 2013-03-28 11:54:06 +01:00
David Mudrák
30bec5ba8d MDL-38509 Add new tool_installaddon_installer::get_plugintype_root() method 2013-03-28 11:54:06 +01:00
David Mudrák
a4fcf56f0a MDL-38509 Implement the plugin ZIP package validator
The validator code contains (modified) fragments of the
local_plugins_archive_validator class copyrighted by Marina Glancy that
is part of the local_plugins plugin. It operates over an extracted
copy of the ZIP file.
2013-03-28 11:54:06 +01:00
David Mudrák
ddab904ba8 MDL-38509 Check for writable plugin type location in install from ZIP form
Standard mform validation is implemented as well as progressively
enhanced AJAX version.
2013-03-28 11:54:05 +01:00
David Mudrák
0056f2a37b MDL-38509 Initial version of the new admin tool to install add-ons 2013-03-28 11:54:05 +01:00