Commit Graph

121 Commits

Author SHA1 Message Date
David Mudrák 783fcd0951 MDL-37003 Fix repeated line in update notification email
There was a problem experienced after 2.4.0 release because the version
of the 2.4.0 release was the same as 2.5dev release. So the version
value matched twice in the loop and the line was repeated in the email.
2012-12-06 00:03:25 +01:00
David Mudrák 5800832af8 MDL-36943 Do not notify about already installed updates
Before this patch, the available_update_checker::cron_notifications()
method accessed the availableupdates property. But for plugins, that property
basically contains the most recent version available. So we were missing
the check against the actual version installed.

The fix was simple - obtain available updates via the available_updates()
method that performs the check.
2012-12-05 23:47:54 +01:00
Petr Škoda 95f6a022ca MDL-30545/ MDL-36199 reset plugin manager singletons 2012-11-13 14:08:28 +08:00
David Mudrák 77283f1812 MDL-36266 Improve update notification message subject 2012-11-06 11:59:48 +08:00
Marina Glancy 2741c017cb MDL-35661 local plugins do not have general settings URL 2012-10-08 11:34:10 +08:00
Ruslan Kabalin 3e8d7ca16e MDL-35442 Add settings and uninstall link for local plugins 2012-09-24 11:19:50 +08:00
David Mudrák 1530136c20 MDL-35344 Ignore available updates info with invalid format
Previously when the server response validation had failed, the property
available_update_checker::recentresponse was left as NULL. This caused
problems in available_update_checker::compare_responses() that expects
proper arrays passed.

This patch makes invalid data being ignored by setting the property to
an empty array as if no data have been fetched yet. A debugging message
is thrown so the admins will be able to diagnose eventual problems in
the future.
2012-09-17 18:04:17 +02:00
David Mudrák 903d13c0c2 MDL-35109 Fix available_update_checker::cron_has_fresh_fetch()
For the purpose of cron based fetching, recently fetched data are valid
for 24 hours.
2012-08-28 22:56:18 +02:00
David Mudrák 896f9ae83b MDL-34019 Fix response item key name 2012-06-26 09:12:35 +02:00
Eloy Lafuente (stronk7) daf28d868b MDL-32117 equella: make it core plugin 2012-06-12 02:37:04 +02:00
David Mudrak 3a2300f552 MDL-32329 new plugininfo_base::is_core_dependency_satisfied() method
The method's logic was previously implemented in all_plugins_ok() but we
will need to call it separately. Also make the code cleaner.
2012-05-30 10:35:28 +02:00
David Mudrak 927cb51166 MDL-32329 plugin manager returns plugins with unsatisfied dependencies 2012-05-30 10:35:28 +02:00
Dan Poltawski d9038d715b Merge branch 'MDL-32338' of git://github.com/nebgor/moodle 2012-05-23 11:27:54 +08:00
Eloy Lafuente (stronk7) f7e6dd4d41 MDL-32709 book: now standard module + new strings added
Note the lang file is completely disordered yet
2012-05-21 00:54:53 +02:00
David Mudrak 7716057f7d MDL-32610 available updates info at the Plugins overview admin page can be hidden 2012-05-15 13:43:08 +02:00
Aparup Banerjee fd87d0bf78 MDL-32338 Libraries : made pluginlib.php cron_execute handle the exceptions it faces. 2012-05-04 11:25:42 +08:00
Dan Poltawski 1619a38b9b MDL-31270 pluginlib: Add assign subplugins as standard modules 2012-05-03 17:22:34 +08:00
Dan Poltawski 10ef48fc1e MDL-31270 mod_assign: now added to the standard plugin list 2012-05-03 17:13:09 +08:00
Sam Hemelryk 7c30505be8 Merge branch 'MDL-32009-master-3' of git://git.luns.net.uk/moodle 2012-05-01 13:43:07 +12:00
Ruslan Kabalin 3f9d9e2856 MDL-32009 messaging: Add message processor uninstall functionality 2012-04-30 10:34:39 +01:00
Ruslan Kabalin bede23f7bc MDL-32009 messaging: Add is_enabled method to plugintype_message 2012-04-30 10:34:37 +01:00
Ruslan Kabalin bc795b98e9 MDL-32009 messaging: Refator get_settings_url plugintype method
No need to duplicate checks since we have them in one place.
2012-04-30 10:34:37 +01:00
Dan Marsden 77143217f2 MDL-31731 - new grading form - Marking Guide 2012-04-30 08:44:43 +12:00
David Mudrak 9862128087 MDL-32235 introducing new workshop scheduled allocation plugin
The idea is to build a plugin that will internally call the random
allocator when the submissions deadline is reached. The teacher is able
to pre-define the configuration for the random allocator.
2012-04-13 04:49:45 +02:00
Dan Poltawski 8411c24ec1 MDL-20438 pluginlib: Don't run update checker on install
This is unlikely to be the long term solution and so MDL-32329 has been
created to address that
2012-04-04 21:02:07 +08:00
Dan Poltawski 660c4d4643 MDL-20438 pluginlib: Fix trivial whitespace issues issues
Also fixed a comment typo I spotted whilst reviewing
2012-04-04 11:18:09 +08:00
Dan Poltawski a973d320f1 Merge branch 'MDL-20438-update-notification' of git://github.com/mudrd8mz/moodle 2012-04-04 11:17:43 +08:00
Sam Hemelryk b8f452165a MDL-32009 reverting changes as they break installation 2012-04-04 14:37:37 +12:00
Sam Hemelryk e96b10b121 MDL-32009 message: Small changes before integration 2012-04-04 14:20:07 +12:00
Sam Hemelryk f1b06f6d54 Merge branch 'MDL-32009-master-1' of git://git.luns.net.uk/moodle 2012-04-04 14:19:32 +12:00
Petr Skoda a3d5830a0a MDL-32149 PHPUnit test support - part 2
Includes:
* constants refactoring
* reworked db table init
* support for $CFG->debug = -1
* functional DB tests
* fixed $DB->get_indexes() to not throw exceptions when table does not exist
* fix handling of user passwords in test db
* add debug info to exception messages
* removed unnecessary PHP debug errors from mathslib
* fixed @error suppression in get_string
* fixed PHPUnit error handler setup
* added timezone info to default install
2012-04-03 22:30:53 +02:00
David Mudrak cd89994d88 MDL-20438 getting rid of left to-do notes 2012-03-30 11:05:42 +02:00
David Mudrak 5344ddd116 MDL-20438 warn the admin that we are just showing available updates
This warning is displayed so that folks do not expect any sort of
auto-update ala Wordpress (yet).
2012-03-30 11:05:42 +02:00
David Mudrak 718eb2a59f MDL-20438 small fixes spotted during various testing 2012-03-30 11:05:42 +02:00
David Mudrak 4442cc8036 MDL-20438 finishing the updatenotifybuilds feature
Unit tests say that all.
2012-03-30 11:05:42 +02:00
David Mudrak a77141a7dc MDL-20438 send notifications via messaging API 2012-03-30 11:05:42 +02:00
David Mudrak 19d11b3b34 MDL-20438 introducing the cron_notifications() method
This method accepts all detected changes in cron-based fetch and picks
those the site admins want to be informed about (based on the maturity
level etc).
2012-03-30 11:05:42 +02:00
David Mudrak c6f008e747 MDL-20438 dropping get_core_update_info() method
There is now a single method get_update_info() used for both core and
plugins.
2012-03-30 11:05:41 +02:00
David Mudrak 7b35553b9b MDL-20438 Introducing new compare_responses() method 2012-03-30 11:05:41 +02:00
David Mudrak be37888050 MDL-20438 Initial support for cron based notifications
If enabled, Moodle sites will check for updates every night sometimes
between 01:00 AM and 06:00 AM local time. The actual offset will be
generated randomly at the beginning and used consistently since then.
This way, the queries against the server are supposed to be spread in
time.

Serious site admins should not try to upgrade their sites later than
01:00 AM as they are too tired already. Neither should they do it before
06:00 AM as they did not have a morning coffee yet and are too tired yet
:-)
2012-03-30 11:05:41 +02:00
David Mudrak f9286139d9 MDL-20438 make sure that the curl class has been included
The filelib is usually loaded already. However, during some steps of the
upgrade the curl class must be available to perform fetches of updates
and the library does not need to be loaded yet.
2012-03-30 11:05:41 +02:00
David Mudrak 9bdedf322a MDL-20438 admin/plugins.php now respects required maturity setting 2012-03-30 11:05:41 +02:00
David Mudrak 55585f3ac0 MDL-20438 initial support for checking available core update
In case of Moodle code itself, there is no plugin_manager like class
available so the checker class itself must be aware of versions and
actually do the checks. On the other hand, we can always rely that
version, release and maturity are always returned by the remote server.
2012-03-30 11:05:41 +02:00
David Mudrak 7d8de6d84a MDL-20438 updated response format support
Multiple component updates are supported now. Code cleanup and
refactoring.
2012-03-30 11:05:40 +02:00
David Mudrak dd119e21fa MDL-20438 Let plugin_manager class use the service provided by the new available_update_checker
All plugininfo classes now have new property that holds their remote
status information.
2012-03-30 11:05:40 +02:00
David Mudrak cd0bb55f84 MDL-20438 Introducing new available_update_checker class
The purpose of the class is to fetch the information about available
updates for the Moodle core and/or Moodle components from a remote site
and cache it locally.
2012-03-30 11:05:40 +02:00
David Mudrak 00ef3c3ed1 MDL-20438 Introducing plugininfo classes factory and plugin manager unit tests 2012-03-30 11:05:40 +02:00
David Mudrak 4ed266809c MDL-20438 Change the order of plugin types at the overview pages 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
David Mudrak b6ad85946d MDL-20438 Refactoring pluginlib before adding anything new
These changes are motivated by feedback from Tim Hunt (17 October 2011
in the developers chat room). The combination of using an interface, but
then putting all the useful information in public fields, was not good
design of this library. So I am merging the plugin_information interface
and the plugintype_base class into a new abstract class plugininfo_base.
This new class defines the basic API of all information holding
subclasses. This does not change the code, just puts the documentation
closer to the methods they are actually implemented.
2012-03-30 11:05:39 +02:00