Commit graph

16741 commits

Author SHA1 Message Date
Ankit Agarwal
4ef082980d MDL-27814 blogs: Deprecate associate blog caps
moodle/blog:associatemodule and moodle/blog:associatecourse should not be used
anymore as per the discussion in the issue. Everyone is free to blog about anything
they want to blog about.
2013-04-12 16:05:01 +08:00
Ankit Agarwal
7ac18cf9c2 MDL-27814 blogs: Deprecate blog_get_context_url() 2013-04-12 16:04:44 +08:00
Paul Nicholls
75bdae9f6e MDL-37762: Breadcrumb not showing categories on course page 2013-04-12 16:40:12 +12:00
Damyon Wiese
c7ee04bd64 MDL-29877 Grades - Remove hardcoded prefix from upgrade steps 2013-04-12 11:53:48 +08:00
Damyon Wiese
42f563f65e MDL-29877 Grades - version bump for upgrade step. 2013-04-12 11:16:23 +08:00
Damyon Wiese
77dd442ab9 Merge branch 'MDL-29877_bad_grade_item' of git://github.com/andyjdavis/moodle
Conflicts:
	version.php
2013-04-12 11:14:10 +08:00
David Mudrák
3ca1b54642 MDL-39087 Use progress_trace class to display uninstallation progress
This is much better API than using the array passed by reference. At the
moment, it is pretty hacky as it abuses text_progress_trace to output
raw HTML echoed by uninstall_plugin() but that will be improved later
while moving the logic out of that function into the plugin_manager.
2013-04-12 04:02:28 +02:00
Dan Poltawski
315e2ad133 Merge branch 'integration_MDL-38997' of github.com:totara/moodle 2013-04-12 09:59:49 +08:00
David Mudrák
ccc6c15fd2 MDL-39087 Fix plugin_manager::can_uninstall_plugin() implementation
There was a false positive result for subplugin required by other
subplugin. See the unit test.
2013-04-12 03:23:47 +02:00
David Mudrák
73658371eb MDL-39087 Simplify get_uninstall_url() interpretation
The get_uninstall_url() method of all subclasses of plugininfo_base
class is now expected to always return moodle_url. Subclasses can use
the new method is_uninstall_allowed() to control the availability of the
'Uninstall' link at the Plugins overview page (previously they would do
it by get_uninstall_url() returning null). By default, URL to a new
general plugin uninstall tool is returned. Unless the plugin type needs
extra steps that can't be handled by plugininfo_xxx::uninstall() method
or xmldb_xxx_uninstall() function, this default URL should satisfy all
plugin types.

The overall logic is implemented in plugin_manager::can_install_plugin()
that respects the plugininfo class decision and vetoes it in certain
cases (typically when plugin or its subplugin is required by some other
plugin).
2013-04-12 01:44:35 +02:00
David Mudrák
d7d48b4091 MDL-39087 Add new helper methods to the plugin_manager API
These are mainly intended for callers that had to iterate over
get_plugins() result manually.
2013-04-12 01:44:34 +02:00
David Mudrák
c6f4c88ffb MDL-39087 Offer deleting for standard plugins if possible, too
The plugin_manager::is_plugin_folder_removable() method should do just
one thing and do it well. Also, as was raised during the peer-review,
there should not be technical differences between standard plugins and
add-ons.
2013-04-12 01:42:58 +02:00
David Mudrák
86a862cdc2 MDL-39087 Add missing unit tests for the plugin_manager
This patch improves and adds unit tests for the plugin_manager class.
These unit tests cover the existing functionalities. Tests for the
new features related directly with MDL-38259 will be added in a separate
commit (to make it clear what's related to it).
2013-04-12 01:42:58 +02:00
David Mudrák
7a46a55d00 MDL-39087 Fix plugin_manager::plugin_name() implementation
This is not directly related to the issue. However, it turned out that
if this method was called on plugin_manager without loaded plugins, it
would throw an error. This new implementation uses cleaner access to the
plugininfo subclass.
2013-04-12 01:42:58 +02:00
David Mudrák
bfaed43214 MDL-39087 Fix missing cronlib inclusion in file_storage::cron()
This is not actually related to MDL-38259 but it was discovered while
running unit tests for file_storage. When running the tests for this
class separately, the cronlib.php was not included (it is included
when this method is normally called during cron execution).
2013-04-12 01:42:58 +02:00
David Mudrák
546b886416 MDL-39087 Delete all component files in uninstall_plugin() 2013-04-12 01:42:58 +02:00
David Mudrák
5718a12313 MDL-39087 Purge all caches at the end of uninstall_plugin()
This is necessary now as many plugins management related features
started to use MUC intensively recently. During the development of this
issue, we realized that the plugin was still considered as installed if
caches were not purged.
2013-04-12 01:42:58 +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
David Mudrák
0b733dd9e2 MDL-39087 Clarify plugininfo_base::get_uninstall_url() return value
The method now returns null if there should be no 'Uninstall' link at
the Plugins management screen. For non-standard add-ons the method now
returns URL to a general uninstall tool.

Plugin info subclasses can still override the method to provide URL to
their own UI for uninstalling. If the plugin type wants to use the
general uninstall tool also for standard plugins, it should override
this method and explicitly return $this->get_default_uninstall_url().
Otherwise, the 'Uninstall' link will be provided for add-ons only.
2013-04-12 01:42:58 +02:00
Eloy Lafuente (stronk7)
2f587fb334 Merge branch 'MDL-38828_master' of git://github.com/dmonllao/moodle 2013-04-11 16:44:47 +02:00
David Monllao
1303eb290f MDL-38958 behat: Step definitions to interact with popup windows 2013-04-11 13:58:11 +08:00
Petr Škoda
0ddd65d9e0 MDL-38989 add missing test timeout reset 2013-04-10 09:49:19 +02:00
Petr Škoda
71fc50031d MDL-38989 detect changed timeout in tests
The trouble is that PHPUnit should ideally test mostly low level libraries that should not change the timeouts.
2013-04-10 09:48:57 +02:00
Mark Nelson
1711361042 MDL-26649 forms: ensure that both necessary variables are set before altering calendar image 2013-04-10 12:48:13 +08:00
Dan Poltawski
d2b11df8bd Merge branch 'wip-mdl-35883' of git://github.com/rajeshtaneja/moodle 2013-04-10 12:16:23 +08:00
Dan Poltawski
ac208538b7 Merge branch 'MDL-38030-master' of git://github.com/mouneyrac/moodle 2013-04-10 11:11:47 +08:00
Dan Poltawski
bf11c1d128 Merge branch 'MDL-22153' of git://github.com/stronk7/moodle 2013-04-10 10:58:32 +08:00
Dan Poltawski
0bedc806f9 Merge branch 'MDL-38999' of git://github.com/stronk7/moodle 2013-04-10 10:35:40 +08:00
Andrew Davis
63354ab50d MDL-29877 core_grade:add some upgrade code to fix broken grade items introduced by bad restores 2013-04-10 08:05:50 +08:00
Petr Škoda
70faad655a MDL-38912 fix incorrect timeout reset 2013-04-10 00:06:34 +02:00
Eloy Lafuente (stronk7)
3621633194 Merge branch 'MDL-38950_master' of git://github.com/dmonllao/moodle 2013-04-09 23:42:59 +02:00
Eloy Lafuente (stronk7)
696facb159 Merge branch 'MDL-38952_master' of git://github.com/dmonllao/moodle 2013-04-09 23:30:30 +02:00
Eloy Lafuente (stronk7)
b896844942 Merge branch 'MDL-38953_master' of git://github.com/dmonllao/moodle 2013-04-09 23:29:59 +02:00
Eloy Lafuente (stronk7)
275c2c9f8a Merge branch 'MDL-38965_master' of git://github.com/dmonllao/moodle 2013-04-09 19:40:39 +02:00
Eloy Lafuente (stronk7)
668aaeb8f3 MDL-26649 forms: temp disable problematic call
The new version of the dateselector is causing JS to stop
working completely in a lot of forms, so I've disabled
temporarily the ofending call to allow other stuff to be
integrated and tested.
2013-04-09 19:37:08 +02:00
Eloy Lafuente (stronk7)
441b165c12 Merge branch 'MDL-39056-download-api-version' of git://github.com/mudrd8mz/moodle 2013-04-09 17:36:57 +02:00
David Mudrák
803738ea41 MDL-39056 Use new version of API when fetching available updates info 2013-04-09 17:07:30 +02:00
Dan Poltawski
ca0b1f57fc Merge branch 'wip-MDL-38442-m25' of git://github.com/samhemelryk/moodle 2013-04-09 15:39:57 +08:00
Damyon Wiese
92674e324e Merge branch 'MDL-26649_master' of https://github.com/markn86/moodle 2013-04-09 15:13:21 +08:00
David Monllao
0b297fdc37 MDL-38950 behat: File manager elements contextual menu
Modified to work with both file manager elements
and file/folder elements inside modal windows.
2013-04-09 14:59:31 +08:00
Dan Poltawski
0ae1b8a294 Merge branch 'w14_MDL-39004_m25_roledocs' of git://github.com/skodak/moodle 2013-04-09 14:57:08 +08:00
Mark Nelson
f40df210ab MDL-26649 forms: added a calendar icon that will display the calendar pop-up when clicked rather than the select boxes triggering the event 2013-04-09 14:52:57 +08:00
Aparup Banerjee
45edc14126 Merge branch 'w14_MDL-38798_m25_php55' of git://github.com/skodak/moodle 2013-04-09 14:30:52 +08:00
Damyon Wiese
e497e90c76 Merge branch 'wip-mdl-31969' of git://github.com/rajeshtaneja/moodle
Conflicts:
	version.php
2013-04-09 14:09:14 +08:00
Rajesh Taneja
38c1dd194d MDL-31969 grades: Added user preference to show/hide/export suspended users.
User with course:viewsuspendedusers capability can now show/hide/export
enrolled users whose enrolment is suspended or enrolment time is expired.
2013-04-09 14:01:58 +08:00
Dan Poltawski
5331215459 Merge branch 'MDL-39005' of git://github.com/stronk7/moodle 2013-04-09 13:49:09 +08:00
Aparup Banerjee
163e0d3e70 Merge branch 'MDL-38508-m' of git://github.com/andrewnicols/moodle 2013-04-09 13:27:56 +08:00
Dan Poltawski
e26b02ddad Merge branch 'wip-MDL-38593-master' of git://github.com/marinaglancy/moodle 2013-04-09 11:46:27 +08:00
Dan Poltawski
a676e858f9 Merge branch 'wip-MDL-34346-master' of git://github.com/marinaglancy/moodle 2013-04-09 10:57:50 +08:00
Marina Glancy
cb52eeab28 MDL-38593 Argument 'id' renamed to 'categoryid' in course/manage.php 2013-04-09 12:55:50 +10:00