Compare commits

...

4854 Commits

Author SHA1 Message Date
Jun Pataleta ccd4ef8ddd Moodle release 3.9.2 2020-09-11 10:41:59 +08:00
Sara Arjona b9371d7bf6 weekly release 3.9.1+ 2020-09-10 08:52:10 +02:00
Sara Arjona 1ec406cbd7 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-09-10 08:52:07 +02:00
Sara Arjona b1c1119743 Merge branch 'MDL-69466-3.9' of https://github.com/JBThong/moodle into MOODLE_39_STABLE 2020-09-09 11:39:30 +02:00
Sara Arjona 3d45f2c083 Merge branch 'MDL-69645-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-09-09 11:01:00 +02:00
Thong Bui 1f5da975e2 MDL-69466 Autocomplete widget: Improve keyboard accessibility 2020-09-09 13:50:04 +07:00
Eloy Lafuente (stronk7) ee0106f70b Merge branch 'MDL-69116-39' of git://github.com/rezaies/moodle into MOODLE_39_STABLE 2020-09-08 23:16:43 +02:00
Sara Arjona ab43412ae9 Merge branch 'MDL-69525-39-1' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-09-08 14:22:04 +02:00
Michael Hawkins 3d01fc77de MDL-69340 tag: Correct the filter input HTML in the tag manager 2020-09-08 08:47:20 +02:00
Mihail Geshoski 08d7552f4d MDL-69048 book: Sanitize previous chapter value in add new chapter page 2020-09-08 08:47:20 +02:00
Andrew Nicols 8983d50bd1 MDL-68974 calendar: Use page context for block check 2020-09-08 08:47:20 +02:00
Andrew Nicols 9fb8221fb3 MDL-68974 blocks: Check permission before generating content 2020-09-08 08:47:20 +02:00
Mihail Geshoski 4b60cede1e MDL-65115 repository: Prevent unzipping if it will exceed allowed quota 2020-09-08 08:47:20 +02:00
Mihail Geshoski 4514918c33 MDL-65115 core_files: Add get_total_content_size() in stored_file class
New function get_total_content_size() is introduced in the stored_file
class. The puprose of this function is to calculate and return the
total size (in bytes) of the content of an archive file.
2020-09-08 08:47:20 +02:00
Andrew Nicols 86d6bdf079 MDL-68974 admin: Unit tests for context parent/child test 2020-09-08 08:47:20 +02:00
Andrew Nicols f5d75c8e24 MDL-68974 admin: Unit tests for loginas 2020-09-08 08:47:20 +02:00
Andrew Nicols bfeb6f3bac MDL-68974 admin: Prevent login as outside of the desired context 2020-09-08 08:47:20 +02:00
Sara Arjona ec52cca8b1 Merge branch 'MDL-68344-3.9' of https://github.com/JBThong/moodle into MOODLE_39_STABLE 2020-09-08 08:45:19 +02:00
Jun Pataleta 6bbb402129 Merge branch 'MDL-69492-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-09-08 12:56:19 +08:00
AMOS bot 7375466f51 Automatically generated installer lang files 2020-09-08 00:07:50 +00:00
Eloy Lafuente (stronk7) 8635e2cefa Merge branch 'MDL-69262-39-2' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-09-07 23:43:04 +02:00
Eloy Lafuente (stronk7) 52bad33356 Merge branch 'MDL-69448-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-09-07 23:26:21 +02:00
Luca Bösch 5c155ba8f7 MDL-69645 quizaccess: Set allowPreferencesWindow to false in manual conf
Signed-off-by: Luca Bösch <luca.boesch@bfh.ch>
2020-09-07 21:26:11 +02:00
Mathew May ffa17ad17d MDL-69240 tool_moodlenet: Clean MoodleNet profile field
Amended by: Eloy Lafuente (stronk7) <stronk7@moodle.org>
- adjust versions for every branch.
- modify verify_webfinger->profileurl external to PARAM_NOTAGS.
2020-09-07 17:25:13 +02:00
Sara Arjona 5d6fcc67cf Merge branch 'MDL-67468-MOODLE_39_STABLE' of https://github.com/tuanngocnguyen/moodle into MOODLE_39_STABLE 2020-09-07 13:20:06 +02:00
Paul Holden a37dc94598 MDL-69492 auth_cas: normalise member distinguished name config. 2020-09-04 08:36:13 +01:00
Paul Holden 1e08e046e2 MDL-69492 auth_ldap: normalise member distinguished name config. 2020-09-04 08:36:13 +01:00
Paul Holden 4ff5d5ef17 MDL-69448 backup: fix capability checks when unable to copy user data.
When a given user doesn't have the capability to "Include user data"
during course copying, freeze the form element rather than not adding
it at all.

This caused problems as the element was required before preceding with
the course copy.
2020-09-04 08:20:13 +01:00
Nathan Nguyen 84ef6eb8d9 MDL-67468 filter_activitynames: use MUC 2020-09-04 15:41:46 +10:00
Thong Bui 3b45e0db41 MDL-68344 filepicker: File Picker focus lost on upload 2020-09-04 10:09:22 +07:00
Sara Arjona 535523f21f weekly release 3.9.1+ 2020-09-03 17:09:26 +02:00
Sara Arjona 9c50ccbf7e NOBUG: Fixed SVG browser compatibility 2020-09-03 17:09:24 +02:00
Andrew Nicols b676817a64 Merge branch 'MDL-69391-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-09-03 11:48:49 +08:00
Andrew Nicols 8eca15c5f1 Merge branch 'MDL-69360-39' of git://github.com/NoelDeMartin/moodle into MOODLE_39_STABLE 2020-09-03 10:52:15 +08:00
Andrew Nicols 1bb4c59adc Merge branch 'MDL-69246_39' of https://github.com/timhunt/moodle into MOODLE_39_STABLE 2020-09-03 10:40:12 +08:00
Andrew Nicols 2332ac5f87 Merge branch 'MDL-55340-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-09-03 10:14:13 +08:00
Andrew Nicols 0700b8510f Merge branch 'MDL-69069-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-09-03 09:34:08 +08:00
Eloy Lafuente (stronk7) 7bc82ad672 Merge branch 'MDL-69608-39' of https://github.com/marinaglancy/moodle into MOODLE_39_STABLE 2020-09-02 23:50:09 +02:00
Sara Arjona 92b9900d6e Merge branch 'MDL-68680-MOODLE_39_STABLE' of https://github.com/tuanngocnguyen/moodle into MOODLE_39_STABLE 2020-09-02 17:16:09 +02:00
Marina Glancy 312ca07bb7 MDL-69608 core_form: frozen forms do not have form tag 2020-09-02 11:40:22 +02:00
Noel De Martin bea621d6c6 MDL-69360 behat: Fix js ready checks for non-moodle sites 2020-09-02 10:20:52 +02:00
Andrew Nicols 28a8eb3856 Merge branch 'MDL-68892-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-09-02 09:49:21 +08:00
Eloy Lafuente (stronk7) fb39317a64 Merge branch 'wip_MDL-69491_m39' of git://github.com/gjb2048/moodle into MOODLE_39_STABLE 2020-09-02 00:27:43 +02:00
Sara Arjona 6e7f80363b Merge branch 'MDL-64525-m39' of https://github.com/NeillM/moodle into MOODLE_39_STABLE 2020-09-01 14:18:20 +02:00
Sara Arjona 82bd2ff5a9 Merge branch 'MDL-51709-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-09-01 09:04:24 +02:00
Mihail Geshoski e657192d31 MDL-69525 core: Publish a single event when toggling slave checkboxes 2020-09-01 14:54:07 +08:00
Sara Arjona 85782cffd7 Merge branch 'MDL-69394-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-09-01 06:45:26 +02:00
Tim Hunt fac004cfe9 MDL-69507 duration form field: should return an int number of seconds 2020-09-01 11:31:36 +08:00
Tim Hunt 221c293ac7 MDL-69507 duration form field: modernise coding style 2020-09-01 11:31:10 +08:00
Andrew Nicols 5ad20a0633 Merge branch 'MDL-69387-39-2' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-09-01 10:59:51 +08:00
Andrew Nicols d63bdf9bb9 Merge branch 'MDL-69505-39' of https://github.com/snake/moodle into MOODLE_39_STABLE 2020-09-01 07:29:23 +08:00
Andrew Nicols bc29f1c98a Merge branch 'MDL-56595-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-09-01 07:29:23 +08:00
Luca Bösch 4830f55122 MDL-51709 gradebook: Name display in single view. 2020-08-31 18:18:26 +02:00
Shamim Rezaie 48508e4ecc MDL-69116 qtype_multichoice: accessibility improvement
- Screen-readers should not see 'clear my choice' when it is not visible
- 'clear my choice' option should only become visible when a choice is
selected
2020-08-31 23:55:49 +10:00
Shamim Rezaie fbb2d6592d MDL-69116 qtype_mutichoice: Use label for the "clear my choice" link 2020-08-31 23:55:49 +10:00
Bas Brands 581a497189 MDL-69069 theme_boost: color contrast for custom alerts 2020-08-31 08:46:39 +02:00
Jake Dallimore 3d3314d433 MDL-69505 core_form: fix js min/max date restriction in dateselector
This was using the yui2-calendar attribute, not the yui 3 attribute.
2020-08-31 08:05:37 +08:00
Gareth Barnard a1f21bad0d MDL-69491 themes: No 'fontsize' setting in Boost causes unit conflict. 2020-08-28 14:10:54 +01:00
Marina Glancy 189810269a MDL-55340 mod_feedback: export question labels
This was present in export in 3.0 but got lost during export
refactoring in 3.1
2020-08-28 12:25:17 +02:00
Andrew Nicols e592c6dd9d Merge branch 'MDL-69112-39' of git://github.com/merrill-oakland/moodle into MOODLE_39_STABLE 2020-08-28 13:26:05 +08:00
Nathan Nguyen 563cfa0e1e MDL-68680 core_grades: check grade item before trigger delete event 2020-08-28 11:40:24 +10:00
Paul Holden 863fb96ffa MDL-56595 tool_usertours: set page params when configuring tours/steps. 2020-08-27 23:08:07 +01:00
Tim Hunt 10f03d2a99 MDL-69246 questions: allow for float issues when validating manual marks
As well as fixing the bug, I also rewrote the test to use
data providers, which should lead to more useful failure messages.

And, I moved the magic number we used as the float tolerence to
be a named constant.
2020-08-27 17:41:02 +01:00
Sara Arjona b3b04e083b weekly release 3.9.1+ 2020-08-27 17:36:31 +02:00
Sara Arjona 9262b490ee Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-08-27 17:36:29 +02:00
Jun Pataleta f37d0629ea MDL-69262 core: Use core/action_menu_link in core/action_menu_trigger
* Introduce the "actionmenulinkclasses" block in the action_menu_link
template so other templates importing it can have the option to override
its classes.
* Have the action menu trigger template use the action menu link
template to reduce code duplication.
2020-08-27 13:30:46 +08:00
Jun Pataleta 6d9518cf56 MDL-69262 core: Make instance count variable as a static class variable
With the static function variable $instance, calls to
\action_menu_link::export_for_template() from its subclasses are stored
in different variables. This causes duplicate IDs when different
implementations of action menu links are rendered on the action menu
trigger/link template. (e.g. action_menu_link and
action_menu_link_secondary both rendered on the same page).
To make the incrementing uniform for the action_menu_link class and its
implementations, the $instance variable is moved out of the
export_to_template() method and is now made to a static class variable.
2020-08-27 13:30:46 +08:00
Andrew Nicols 0d8bf37407 Merge branch 'MDL-69458-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-08-27 12:43:10 +08:00
Andrew Nicols 159115b7c7 Merge branch 'MDL-69501-39-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_39_STABLE 2020-08-27 11:31:17 +08:00
eWallah 930dba73c3 MDL-67413 competencies: do nothing upon activity completion 2020-08-27 11:09:57 +08:00
Andrew Nicols 22217ac42f Merge branch 'MOODLE_39_MDL-69358' of https://github.com/golenkovm/moodle into MOODLE_39_STABLE 2020-08-27 10:57:57 +08:00
Justin Hunt d46ee17722 MDL-66810 mod_lti: Reinstate deprecated default permissions on iframe
microphone, webcam, camera, midi, encrypted-media, geolocation
2020-08-27 10:26:38 +08:00
Adrian Greeve 5f1d9df828 Merge branch 'MDL-69419-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-08-27 08:07:18 +08:00
AMOS bot 95cc0d562b Automatically generated installer lang files 2020-08-27 00:07:08 +00:00
Sara Arjona 3584cd786a Merge branch 'MDL-69389-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-08-26 18:03:06 +02:00
Sara Arjona fa92e6a809 Merge branch 'MDL-69114-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-26 16:28:49 +02:00
Jun Pataleta 1257e39d92 MDL-69389 theme_classic: Make default body font colour darker
Links and normal text should have at least a colour contrast ratio
of 3:1. To achieve this, $body-color will be using the darker
shade of gray $gray-900 (#212529).
2020-08-26 11:08:28 +08:00
Jun Pataleta 65c7339199 MDL-69389 theme_boost: Make default body font colour darker
Links and normal text should have at least a colour contrast ratio
of 3:1. To achieve this, $body-color will be using the darker
shade of gray $gray-900 (#212529).
2020-08-26 11:08:28 +08:00
Jun Pataleta 2cb720a3d2 MDL-69387 pix: Create PNG versions of the darkened completion icons
Thanks to Barbara Ramiro <barbara@moodle.com> for the help in
generating these PNG versions of the darkened completion icons!
2020-08-26 11:03:18 +08:00
Jun Pataleta 138ed9c1fa MDL-69387 pix: Darken completion icons
Darkened the fills of completion icons in order to meet the required
minimum contrast ratio of 3:1.
* Changed gray fills (#999) to #949494.
* Changed blue fills (#76A1F0) to #6393ee
* Changed green fills (#9C3) to #79a128

Thanks to Barbara Ramiro <barbara@moodle.com> for the help in
updating the SVG icons!
2020-08-26 11:03:18 +08:00
Jun Pataleta 3c7a4833e5 MDL-69394 calendar: Fix event colour indicator contrast
* Darkened the link and clickable icon colours inside coloured events.
* Added borders around event colour indicators inside the month-view of
  the calendar for better contrast against the white background.
2020-08-26 11:00:34 +08:00
Andrew Nicols 0400b5ef3f MDL-69419 core: Task reset tests cannot use random test times
If a scheduled task which uses a 'R' field is picked, then the reset of
updated task times will not necessarily be correctly determined as the
randomisation is picked during reset.

This can lead to some random test failures.

Actively specifying a test which does not make use of the 'R' random
field time addresses this issue.
2020-08-26 09:58:35 +08:00
AMOS bot 122ed3beaf Automatically generated installer lang files 2020-08-26 00:07:28 +00:00
Jun Pataleta b58a45df37 MDL-69391 theme: Darken course selector text colour
Use $gray-600 for a darker text colour in the course select box.
This also makes the colour consistent with the view selector which
also uses $gray-600.
2020-08-25 14:40:34 +08:00
Jun Pataleta 2d450e9a3b MDL-69391 theme: Darken navbar-light colour
Increase the opacity for the sass variable $navbar-light-color a
little bit in order to achieve an acceptable colour contrast against
the white background.
2020-08-25 14:40:34 +08:00
Adrian Greeve 3513964883 Merge branch 'MDL-68921-39' of git://github.com/vmdef/moodle into MOODLE_39_STABLE 2020-08-25 10:37:58 +08:00
Victor Deniz Falcon fde9d44286 MDL-68921 core_h5p: Add H5P libraries metadata settings
An upgrade step updates installed H5P libraries
2020-08-25 00:35:59 +01:00
Neill Magill ba8185cb2a MDL-64525 comments: Should not be able to delete frozen comments
Before this change in a frozen context a user would be able to delete
their own comments.

After this change a user will only be able to delete their own comments
if they still have the capability to post new comments or the capability
to delete comments from any user.
2020-08-24 08:00:36 +01:00
Neill Magill 362c598d1b MDL-64525 comments: Tests for deleting frozen comments 2020-08-24 08:00:35 +01:00
Mihail Geshoski 185fc93ed5 MDL-69458 report_insights: Respect perpage value in pagination bar 2020-08-24 09:30:46 +08:00
Eloy Lafuente (stronk7) 8b254440d6 Merge branch 'MDL-69493-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-22 17:09:43 +02:00
AMOS bot 5989a94787 Automatically generated installer lang files 2020-08-22 00:07:52 +00:00
Eloy Lafuente (stronk7) e290345cd6 weekly release 3.9.1+ 2020-08-21 20:43:20 +02:00
Helen Foster 4c48bccbad MDL-69501 lang: Import fixed English strings (en_fix)
Significant string change: error:nobadges,core_badges - Additional info
explaining that site badges can only have other site badges as criteria
2020-08-21 14:06:31 +02:00
Jun Pataleta ef1bb2b193 Merge branch 'MDL-66818-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-08-21 11:32:35 +08:00
Andrew Nicols 9e103451e2 MDL-66818 mod_forum: Use cap manager to check exportability 2020-08-21 08:17:16 +08:00
Andrew Nicols 832f5f7019 MDL-42434 chat: Disable stylelint important check 2020-08-21 07:38:06 +08:00
Sara Arjona 40f92ac55d MDL-42434 mod_chat: styles for chat themes to view help-icon properly
The styles for the bubble and the compact themes have been reviewed
because there weren't enough contrast for the help icon.
2020-08-20 23:42:56 +01:00
Sara Arjona 887efbd939 MDL-42434 mod_chat: display the whole help text
When testing this issue was raised that the help text was cut-off.
This patch should fix this issue changing the placement from
right/left to top.
2020-08-20 23:42:56 +01:00
Ferran Recio 6305c7b83c MDL-68892 mod_h5pactivity: add required to package 2020-08-20 17:20:13 +02:00
Adrian Greeve 6bbb4e4df2 Merge branch 'MDL-69055-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-08-20 12:02:49 +08:00
Andrew Nicols 79e98f6ac4 Merge branch 'MDL-69375_39' of https://github.com/Cvmcosta/moodle into MOODLE_39_STABLE 2020-08-20 11:51:08 +08:00
Adrian Greeve 1c1a96981d Merge branch 'MDL-68964-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-08-20 11:42:30 +08:00
Adrian Greeve 6e9d203e52 Merge branch 'MDL-42434-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-08-20 11:24:43 +08:00
Adrian Greeve c02fc98d06 Merge branch 'MDL-68683-39-fix' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-08-20 10:24:42 +08:00
Andrew Nicols 895e5748e1 Merge branch 'MDL-69449-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-20 09:25:19 +08:00
Andrew Nicols 96805ec18e Merge branch 'MDL-68889-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-20 09:19:22 +08:00
Simey Lameze 010f1eff60 MDL-68683 competencies: fix query to delete stale files 2020-08-20 09:13:15 +08:00
Simey Lameze a713a68af8 MDL-68683 competencies: step to delete orphaned evidence files 2020-08-20 09:09:37 +08:00
Simey Lameze 1547225e52 MDL-68683 core: fix DML exception on upgrade step 2020-08-20 09:02:50 +08:00
Andrew Nicols cc52ff7703 Merge branch 'MDL-67415_39' of https://github.com/stronk7/moodle into MOODLE_39_STABLE 2020-08-20 08:30:11 +08:00
Andrew Nicols 3f51798192 Merge branch 'MDL-66818-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-08-20 08:17:01 +08:00
Simey Lameze 8578e19aff MDL-66818 mod_forum: remove unnecessary behat steps 2020-08-20 08:05:00 +08:00
gthomas2 e4ffa5f3f6 MDL-66818 mod_forum: hide portfolio export button based on caps 2020-08-20 08:05:00 +08:00
Andrew Nicols 8cc9ebea1e Merge branch 'MDL-66900-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-20 07:54:30 +08:00
Andrew Nicols 2cb5248ac3 Merge branch 'MDL-69473-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-08-20 07:44:12 +08:00
Andrew Nicols 43a9717a33 Merge branch 'MDL-69271_39' of https://github.com/stronk7/moodle into MOODLE_39_STABLE 2020-08-20 07:35:40 +08:00
Andrew Nicols 4fd5a7bfcb Merge branch 'MDL-69054-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-08-20 07:32:03 +08:00
Andrew Nicols 3c2c15d4dc Merge branch 'MDL-61215-39' of git://github.com/sarjona/moodle into MOODLE_39_STABLE 2020-08-20 07:17:13 +08:00
Andrew Nicols 7969cfb39f Merge branch 'MDL-69401-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-08-20 07:03:36 +08:00
Victor Deniz Falcon f2fe8b1664 Merge branch 'MDL-69297-39' of git://github.com/peterRd/moodle into MOODLE_39_STABLE 2020-08-19 23:45:32 +01:00
Eloy Lafuente (stronk7) 23dc056578 MDL-63375 workshop: apply specific IE10/11 fix
Credit goes to Matt Davidson (Syxton)
2020-08-19 17:54:45 +02:00
Peter Dias 6e37e120fc MDL-69297 assign: Check whether there is content for a submission
Confirm there is some content to be submitted for an assignment when processing it.
2020-08-19 15:48:42 +08:00
Adrian Greeve 091a6ca62e Merge branch 'MDL-66665-39-POC2' of git://github.com/peterRd/moodle into MOODLE_39_STABLE 2020-08-19 14:29:06 +08:00
Peter Dias a8cdc38272 MDL-66665 assign: Check whether a modified user could actually grade 2020-08-19 13:41:12 +08:00
Adrian Greeve 2296b4b16e Merge branch 'MDL-68683-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-08-19 12:57:04 +08:00
Adrian Greeve 4e873c2ab6 Merge branch 'MDL-69475_39' of https://github.com/stronk7/moodle into MOODLE_39_STABLE 2020-08-19 10:44:23 +08:00
Andrew Nicols 130d29bb5f Merge branch 'MDL-26401-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-08-19 08:52:02 +08:00
Andrew Nicols 3ae4d6e824 Merge branch 'MDL-69089-39' of git://github.com/aanabit/moodle into MOODLE_39_STABLE 2020-08-19 08:20:00 +08:00
Eloy Lafuente (stronk7) be1847d075 Merge branch 'MDL-65847-auth_db_error_handling-39' of git://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-08-19 00:35:37 +02:00
Eloy Lafuente (stronk7) 68810e04c6 Merge branch 'MDL-69095-39' of git://github.com/jleyva/moodle into MOODLE_39_STABLE 2020-08-19 00:19:51 +02:00
Eloy Lafuente (stronk7) b8b894dd36 Merge branch 'MDL-63375-39' of https://github.com/syxton/moodle into MOODLE_39_STABLE 2020-08-19 00:13:13 +02:00
Eloy Lafuente (stronk7) a12b0aff07 Merge branch 'MDL-68444-39' of git://github.com/rezaies/moodle into MOODLE_39_STABLE 2020-08-18 19:15:13 +02:00
Eloy Lafuente (stronk7) 3523edfd90 MDL-69475 backup: Proper handling of backup::RELEASE versions
1) Remove any floatval() casting. They are breaking / killing
   .10 versions (converting them to .1). Since Moodle 2.0 all the
   backup::RELEASE have been 100% numerical values.
2) Use version_compare() always to compare backup::RELEASE values.
   They are always versions and the function is aware of versions
   > .9, able to clean/ignore alpha chars... and everything else.

Note that I've also changed a couple of cases in formats (topics and
weeks) that were correct, but just added the same comment and used
the same version_compare() comparison parameters style, so all uses
in core are consistent (and safe to be copied out there).
2020-08-18 16:24:57 +02:00
Eloy Lafuente (stronk7) fbaab99733 Merge branch 'MDL-69273-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-08-18 10:59:37 +02:00
Simey Lameze 6408db6427 MDL-68683 competencies: step to delete orphaned evidence files 2020-08-18 16:05:59 +08:00
Simey Lameze 2cd36e8ea0 MDL-68683 core: fix DML exception on upgrade step 2020-08-18 16:04:32 +08:00
Andrew Nicols 6a930e2c88 MDL-69273 travis: Use exttests for https too 2020-08-18 07:50:48 +08:00
Andrew Nicols 78079c3f2b MDL-69273 travis: Move exttests check to after_script
The result of the final command `script` phase determines the build
result.

The cleanup belongs in the `after_script` phase.
2020-08-18 07:40:14 +08:00
Paul Holden a88c706d98 MDL-69493 cohort: remove escaping of return URL params. 2020-08-17 21:30:14 +01:00
Amaia Anabitarte b9d20f8481 MDL-69089 core_contentbank: Tests for empty content names 2020-08-17 15:56:35 +02:00
Amaia Anabitarte 545b24fa52 MDL-69089 core_contentbank: Empty content names are not allowed 2020-08-17 15:56:35 +02:00
Andrew Nicols 2f6437ec5c Merge branch 'MDL-69414_M39' of https://github.com/nadavkav/moodle into MOODLE_39_STABLE 2020-08-17 14:52:46 +08:00
Mihail Geshoski 806042d58a MDL-69401 book: Limit character length in chapter title 2020-08-17 09:04:02 +08:00
carlos 58e66823a2 MDL-69375 mod_lti: Fix Names and Roles Link header format
- Changed line 469 of memberships.php to build Link header according to the Web Linking specification RFC8288.
2020-08-14 17:15:47 -03:00
Sara Arjona 119010b16d MDL-42434 mod_chat: add again the usingchat help icon
In Moodle 2.4 the help icon displayed in the chat window was
removed. It has been added to gui_ajax and gui_basic in order to help users.
2020-08-14 17:13:06 +02:00
Sara Arjona c6895d7dd4 MDL-69055 core_badges: display password/oauth fields properly 2020-08-14 17:10:33 +02:00
Sara Arjona 1f7f5e368d MDL-69054 core_badges: allow editing OBv1.0 backpacks 2020-08-14 17:09:45 +02:00
Sara Arjona b80006b600 MDL-61215 core_user: use the new optimised_image filetype group
For the user profile picture (instead of the web_image which includes
SVG files).
2020-08-14 17:06:57 +02:00
Sara Arjona 9e42721660 MDL-61215 core_badges: use the new optimised_image filetype group
For the badge picture (instead of the web_image which includes
SVG files).
2020-08-14 17:06:57 +02:00
Sara Arjona 0f13aee6fb MDL-61215 core_files: add new optimised_image group
Currently, PHP getimagesize method doesn't support SVG images.
As some features, such as badges, processs and optimise the images
before using them, a new filetype group has been created to exclude
SVG from there: optimised_image.
SVG can't be removed from web_image because then users won't be
able to add SVG images to their courses using labels, pages...
2020-08-14 17:06:57 +02:00
Eloy Lafuente (stronk7) 8cc4708c2a MDL-69271 auth_ldap: Don't assume any ordering, just verify matches
Both ldap or the DB can return information in a non-consistent
ordering leading to events to be generated in different order.

And current tests are, right now, assuming a given order.

Note this is a rare random, but it's happening, so better
fix it, see the issue for some more details.

So we just do the tests ordering immune, verifying that all the
expected events have been triggered and done. Irrespectively of their order.
2020-08-14 13:40:09 +02:00
Sara Arjona 507d51eebf MDL-69473 contentbank: change incorrect ref to size in type column 2020-08-14 08:54:20 +02:00
Andrew Nicols 89d8f73703 weekly release 3.9.1+ 2020-08-14 14:42:37 +08:00
Andrew Nicols f0f37cb2e7 NOBUG: Fixed SVG browser compatibility 2020-08-14 14:42:35 +08:00
Andrew Nicols 62cd827dc5 Merge branch 'MDL-68666-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-13 15:21:28 +08:00
Bas Brands 1b682b3b6a MDL-68666 core_pix: add missing fallback icons 2020-08-13 08:49:27 +02:00
Andrew Nicols 5e372ecd61 Merge branch 'MDL-69253_39' of https://github.com/timhunt/moodle into MOODLE_39_STABLE 2020-08-13 11:52:32 +08:00
Andrew Nicols 4401c891e8 Merge branch 'MDL-60492-tagcloud_html-39' of https://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-08-13 11:45:10 +08:00
Andrew Nicols 61a17c94be Merge branch 'MDL-69381-39' of https://github.com/marinaglancy/moodle into MOODLE_39_STABLE 2020-08-13 11:29:09 +08:00
Adrian Greeve 75911e67bd Merge branch 'MDL-68423-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-08-13 11:05:37 +08:00
Andrew Nicols 3a2eb35800 Merge branch 'MDL-68932-39' of git://github.com/rezaies/moodle into MOODLE_39_STABLE 2020-08-13 10:52:26 +08:00
Andrew Nicols 5ae88aba9d Merge branch 'MDL-69421-39' of git://github.com/noeldemartin/moodle into MOODLE_39_STABLE 2020-08-13 09:35:59 +08:00
Andrew Nicols dbd0a1dbf7 Merge branch 'MDL-67991-39' of git://github.com/aanabit/moodle into MOODLE_39_STABLE 2020-08-13 09:04:15 +08:00
Andrew Nicols d1e4c0fecc Merge branch 'MDL-69241-39' of git://github.com/mickhawkins/moodle into MOODLE_39_STABLE 2020-08-13 08:47:03 +08:00
Andrew Nicols 522dd18e62 Merge branch 'MDL-60260-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-13 07:55:21 +08:00
Andrew Nicols 563bfb4582 Merge branch 'MDL-69143-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-08-13 07:45:44 +08:00
Eloy Lafuente (stronk7) f03d9e1aab MDL-67415 environment: change requirements
- mysql requirement up to 5.7
- postgres requirement up to 9.6
2020-08-13 01:30:01 +02:00
Eloy Lafuente (stronk7) 454a93cbbf MDL-67415 environment: 3.10 base information
This is a direct copy of the 3.9 branch to have
changes under control easier for next commits.
2020-08-13 01:30:00 +02:00
Eloy Lafuente (stronk7) a64f376595 Merge branch 'MDL-68860-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-13 01:08:32 +02:00
Eloy Lafuente (stronk7) f620bbf2f5 Merge branch 'MDL-68558-39-plugindepscheckdeadend' of git://github.com/mudrd8mz/moodle into MOODLE_39_STABLE 2020-08-13 00:40:17 +02:00
Eloy Lafuente (stronk7) 4ddbc1ee38 Merge branch 'MDL-67394-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-13 00:29:15 +02:00
Eloy Lafuente (stronk7) f9bd169b6e Merge branch 'MDL-67002_39' of https://github.com/timhunt/moodle into MOODLE_39_STABLE 2020-08-13 00:26:09 +02:00
Ferran Recio 332fdda507 MDL-68964 mod_chat: fix theme param 2020-08-12 17:30:02 +02:00
Ferran Recio 77f46da53a MDL-69143 contentbank: catching Exception on file upload 2020-08-12 16:58:26 +02:00
Bas Brands ebacd8353f MDL-68889 block_recentlyaccessedcourses: small viewport issues
- on small devices the recentlyaccessedcourses does not show any courses
2020-08-12 13:05:13 +02:00
Paul Holden a97c45a15d MDL-66900 course: don't clean category description when editing. 2020-08-12 11:48:29 +01:00
Simey Lameze f307dc23d7 MDL-26401 group: change import to use csv_import_reader class 2020-08-12 16:35:56 +08:00
Simey Lameze b21f182106 MDL-26401 group: add delimiter and encoding fields to import 2020-08-12 16:35:56 +08:00
Paul Holden 0991b0a091 MDL-69449 block_timeline: use dayslimit context data in template.
Ensures the correct value is used when initially rendering the
course timeline.
2020-08-12 09:19:29 +01:00
Andrew Nicols 54eb1f8f23 Merge branch 'MDL-68618-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-12 13:41:00 +08:00
Andrew Nicols 97df1db020 Merge branch 'MDL-69353-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-12 11:22:40 +08:00
Andrew Nicols 8c1eb6cfd3 Merge branch 'MDL-68334-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-08-12 11:14:05 +08:00
Andrew Nicols 4eeb1bbd8f Merge branch 'MDL-69296-m39' of https://github.com/NeillM/moodle into MOODLE_39_STABLE 2020-08-12 10:29:58 +08:00
Mikhail Golenkov 5778aa1fa1 MDL-69358 backup: Do not clean up records for incomplete adhoc tasks.
Co-authored-by: Heena Agheda <heenaagheda@catalyst-au.net>
2020-08-12 12:07:28 +10:00
Andrew Nicols a0c582342c Merge branch 'MDL-68731_39' of https://github.com/jonof/moodle into MOODLE_39_STABLE 2020-08-12 09:11:25 +08:00
Andrew Nicols cf13f285e4 Merge branch 'MDL-69143-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-08-11 14:34:10 +08:00
Andrew Nicols 08d7dd1db4 Merge branch 'MDL-69168_recently-accessed-items-block-uses-stock-lti-icon__MOODLE_39_STABLE' of https://github.com/stopfstedt/moodle into MOODLE_39_STABLE 2020-08-11 13:00:36 +08:00
Adrian Greeve a6908c3ee8 Merge branch 'MDL-69204-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-11 08:45:14 +08:00
Paul Holden cc91fe0988 MDL-68618 mod_forum: stop reverting idnumber when updating instance. 2020-08-10 09:11:12 +01:00
Paul Holden f66e6749ae MDL-68860 mod_lti: Oracle support for retrieving shared secrets.
Thanks to Mark van Hoek!
2020-08-10 09:06:07 +01:00
Adrian Greeve f3fd372584 Merge branch 'MDL-60493-grader_span_tag-39' of https://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-08-10 09:22:18 +08:00
Nadav Kavalerchik e29a887814 MDL-69414 qtype/ddimageortext: Fix dropzones display in RTL mode 2020-08-09 11:45:21 +03:00
Luca Bösch f1743d9179 MDL-68334 user: Display name in footer as elsewhere. 2020-08-08 10:38:40 +02:00
Stefan Topfstedt 73827e8eda MDL-69168 block_recentlyaccesseditems: apply custom icon
Overwrite the default mod icon with the configured icon url if
applicable.
2020-08-07 09:15:05 -07:00
Matt Davidson abb81c79d7 MDL-63375 workshop: fix rubric grid view 2020-08-07 08:48:41 -04:00
Amaia Anabitarte 8b55712485 MDL-67991 availability: Fix access restrictions labels 2020-08-07 10:02:25 +02:00
Michael Hawkins f967acc533 MDL-69241 lib: Reset dynamic tables to page 1 when filtering or sorting
This ensures consistency and that the page will always exist, which may
not be true for later pages if applying filters returns fewer results.
2020-08-07 12:53:26 +08:00
Eloy Lafuente (stronk7) 61d4bf3f88 weekly release 3.9.1+ 2020-08-06 20:51:32 +02:00
Noel De Martin 94dc00614c MDL-69421 behat: Revert app behat navigation to call session visit 2020-08-06 12:15:51 +02:00
Jun Pataleta 976ec609bc Merge branch 'MDL-60501-h4_close_tag-39' of https://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-08-06 12:11:18 +08:00
Jun Pataleta 7cc4f8883a Merge branch 'MDL-69111-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-06 11:36:48 +08:00
Adrian Greeve 9b48e7420e Merge branch 'MDL-40227-39-1' of git://github.com/peterRd/moodle into MOODLE_39_STABLE 2020-08-06 11:28:34 +08:00
Peter eae4f24877 MDL-40227 mod_lesson: Use localised float formatting
* Leverage PARAM_LOCALISEDFLOAT
* Store all numbers with standard '.' dec formatting
* Show all numbers based on locale settings
* Behat test to cover different cases using numeric questions and modified locale setting
2020-08-06 10:44:59 +08:00
Adrian Greeve 72e24ec057 Merge branch 'MDL-69311-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-06 09:49:32 +08:00
Adrian Greeve da2cb39c15 Merge branch 'MOODLE_39_MDL-66626' of https://github.com/golenkovm/moodle into MOODLE_39_STABLE 2020-08-06 09:07:26 +08:00
Eloy Lafuente (stronk7) 695b470305 Merge branch 'MDL-66670-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-06 00:58:26 +02:00
Leon Stringer 076bbff5a7 MDL-60492 core_tag: Fix title attribute
Attribute 'title' was specified inside a condition but closing `"` was
outside condition possibly resulting in <a href="..." class="..." ">.
Also moved </a> outside of condition to match <a>.
2020-08-05 12:55:02 +01:00
Shamim Rezaie 023064558f MDL-68932 core: showhidesettings to work with multiple hideIf()s 2020-08-05 19:08:27 +10:00
Adrian Greeve a934784741 Merge branch 'MDL-68647-39-forumprivacysql' of git://github.com/mudrd8mz/moodle into MOODLE_39_STABLE 2020-08-05 14:22:22 +08:00
Adrian Greeve 13a31a6b83 Merge branch 'MDL-60932-39' of git://github.com/aanabit/moodle into MOODLE_39_STABLE 2020-08-05 10:08:50 +08:00
Eloy Lafuente (stronk7) f29c1bee74 Merge branch 'MDL-67831-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-08-05 00:47:33 +02:00
Tim Hunt 3c5ba23f7f MDL-69253 mod_quiz: unit test for the last commit 2020-08-04 14:50:57 +01:00
Josh Ebarvia 777c810671 MDL-69253 mod_quiz: Fix timecreated is 0 when creating a quiz activity 2020-08-04 14:50:57 +01:00
Jun Pataleta 9a642c49e1 Merge branch 'MDL-60574_39' of https://github.com/t-schroeder/moodle into MOODLE_39_STABLE 2020-08-04 19:51:20 +08:00
Eloy Lafuente (stronk7) a5708767a0 Merge branch 'MDL-55299-39' of git://github.com/ferranrecio/moodle into MOODLE_39_STABLE 2020-08-04 12:34:06 +02:00
Jun Pataleta 1117eb6579 Merge branch 'MDL-69336-39' of git://github.com/mickhawkins/moodle into MOODLE_39_STABLE 2020-08-04 16:54:21 +08:00
Tim Schroeder f131e22bc4 MDL-60574 atto_undo: fixed redo erasing content
When you'd hit ctrl-y with nothing on the redo stack the entire
content of Atto would get deleted with no way of getting it back.
2020-08-04 09:25:00 +02:00
Michael Hawkins 76fd40f2f9 MDL-69336 lib: Correctly return promises when table show/hide columns
Previously showColumn and HideColumn were returning nothing, so
attempts to catch exceptions were themselves throwing errors in the
browser console.
2020-08-04 15:20:29 +08:00
Michael Hawkins 52925cb9df MDL-69336 lib: Reinstating tablelib column show/hide functionality
Also added behat testing for hide/show columns in participants table.
2020-08-04 15:20:29 +08:00
Eloy Lafuente (stronk7) 3d68237956 Merge branch 'MDL-69367-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-03 16:29:09 +02:00
Leon Stringer b79b33c664 MDL-65847 auth_db: user_update() handle errors
The external database authentication plugin (auth_db) can update the
external database if mapped fields are set to Update external: On
update.  This change adds error handling in case this update fails.
2020-08-03 11:49:55 +01:00
Eloy Lafuente (stronk7) 8a6b5024a1 Merge branch 'MDL-62980-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-08-03 12:38:25 +02:00
Bas Brands f51dcd3c96 MDL-69114 theme_boost: improve the color contrast for .*-info classes 2020-08-03 11:36:48 +02:00
Eric Merrill 7a4f10ddda MDL-69112 assign: Improve parsing of uploaded feedback names 2020-07-31 19:08:27 -04:00
Marina Glancy 2d7f517b5b MDL-69381 core_backup: make progressbar selector more specific 2020-07-31 13:30:07 +02:00
Amaia Anabitarte 3161583d89 MDL-60932 core_user: Fix docs link for participants page
Co-authored by: David Mudrák <david@moodle.com>
2020-07-31 10:30:18 +02:00
Neill Magill 9e3b1f2d7e MDL-69296 resource: Pressing cancel should always exit settings form
Before this change if a user used navigated to a resource activity
from another activity and then edited the settings it was likely
that using the cancel button would result in file downloading,
rather than being returned to their last page.

After this change the user will be back on the page they came from.
2020-07-31 07:57:29 +01:00
Paul Holden ff2d425711 MDL-67394 dml: improve thrown exception when Oracle can't parse query. 2020-07-30 16:23:00 +01:00
Victor Deniz Falcon 95c4f624c8 weekly release 3.9.1+ 2020-07-30 12:54:18 +01:00
Victor Deniz Falcon 7882fff01a Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-07-30 12:54:12 +01:00
Paul Holden d68848383e MDL-62980 tool_dataprivacy: show persistent errors inside form. 2020-07-30 08:23:19 +01:00
AMOS bot f395c5b238 Automatically generated installer lang files 2020-07-30 00:09:02 +00:00
Eloy Lafuente (stronk7) a9782addfc Merge branch 'MDL-63252-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-07-30 00:47:57 +02:00
Victor Deniz Falcon d093887447 Merge branch 'MDL-66707-39' of git://github.com/rezaies/moodle into MOODLE_39_STABLE 2020-07-29 23:17:25 +01:00
Victor Deniz Falcon f0be299db3 Merge branch 'MDL-68968-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-07-29 22:02:28 +01:00
Paul Holden 6a3edc34bd MDL-60260 course: validate external fields on create/update course.
Ensure course fullname/shortname fields are not empty.
2020-07-29 19:57:22 +01:00
Victor Deniz Falcon 135dfe2144 Merge branch 'MDL-68706-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-07-29 19:05:02 +01:00
Ferran Recio 13de4b94dc MDL-69143 contentbank: fix tests when extra plugins installed 2020-07-29 17:52:26 +02:00
Ferran Recio c6ec3c048e MDL-69143 contentbank: add import file method to content 2020-07-29 17:52:26 +02:00
Victor Deniz Falcon 6d1680998d Merge branch 'MDL-69199-39' of git://github.com/aanabit/moodle into MOODLE_39_STABLE 2020-07-29 11:54:46 +01:00
Jonathon Fowler bbfcb91b1f MDL-68731 forum: fix digests not correctly updating post read statuses 2020-07-29 15:41:31 +10:00
Jun Pataleta 7d1f5e81ea Merge branch 'MDL-69252-close_tag-39' of https://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-07-29 11:17:40 +08:00
Eloy Lafuente (stronk7) 5f9d183b46 Merge branch 'MDL-69319-39' of https://github.com/snake/moodle into MOODLE_39_STABLE 2020-07-29 00:20:37 +02:00
Paul Holden 646ebff5dd MDL-69367 quizaccess_seb: correct foreign key table reference. 2020-07-28 13:33:59 +01:00
Juan Leyva 8f6f312d65 MDL-69095 tool_mobile: Display warning if not allowed to use qr login 2020-07-28 13:55:21 +02:00
Juan Leyva 5762e5ec3e MDL-69095 tool_mobile: Avoid non-https sites using qrlogin by default 2020-07-28 13:55:21 +02:00
Leon Stringer 52dbe51339 MDL-60493 mod_assign: Unused JS variables
Removed unused JavaScript variables fixing CI warning "ESLint error
[no-unused-vars]".
2020-07-28 12:04:03 +01:00
Leon Stringer dfaad3e8ca MDL-60493 mod_assign: Remove rogue </span>
In the grading interface (/mod/assign/view.php?id=2&action=grader)
there was a rogue </span> with no opening <span>.  Also changed
<span><form> to <div><form> in included template fixing CiBoT HTML
Validation error.
2020-07-28 12:03:29 +01:00
Jun Pataleta 7da6f2675d Merge branch 'MDL-65453-39' of git://github.com/lameze/moodle into MOODLE_39_STABLE 2020-07-28 11:42:17 +08:00
Simey Lameze 9ae2623d89 MDL-65453 core: fix behaviour of --skip-database option on install 2020-07-28 11:27:30 +08:00
Paul Holden e64f37c3c5 MDL-69204 tool_dataprivacy: summary link only on current user profile. 2020-07-27 17:25:02 +01:00
Jun Pataleta b39ed13500 Merge branch 'MDL-66755-39' of https://github.com/SergioComeron/moodle into MOODLE_39_STABLE 2020-07-27 16:55:43 +08:00
Adrian Greeve 532a81f846 Merge branch 'MDL-69079-39-1' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-07-27 08:54:26 +08:00
AMOS bot 2b96f7b343 Automatically generated installer lang files 2020-07-27 00:07:30 +00:00
AMOS bot 6a07b3c08c Automatically generated installer lang files 2020-07-27 00:07:30 +00:00
Mikhail Golenkov 744726275d MDL-66626 assignfeedback_editpdf: Check page count for attempt.
Co-Authored-By: John Yao <johnyao@catalyst-au.net>
2020-07-27 09:51:11 +10:00
Mikhail Golenkov 07afdeedac MDL-66626 assignfeedback_editpdf: Count files outside of foreach loop.
Co-Authored-By: John Yao <johnyao@catalyst-au.net>
2020-07-27 09:51:11 +10:00
AMOS bot b8c3fefd02 Automatically generated installer lang files 2020-07-25 00:07:55 +00:00
Paul Holden ac7cb0921b MDL-68706 customfield_textarea: allow field content to be cleared. 2020-07-24 13:44:48 +01:00
Paul Holden 6b6a083916 MDL-69353 admin: set page title when prompting for upgrade key. 2020-07-24 13:30:27 +01:00
Tim Hunt 6acd719f0f MDL-67002 quiz reports: fix sorting on Oracle in the responses report 2020-07-24 11:45:02 +01:00
Sergio Comerón 455e7f50d8 MDL-66755 forum: Subscription cancel when edit a message 2020-07-24 09:04:25 +02:00
Mihail Geshoski f49fe84488 MDL-69079 core: Restore and set missing guest user 2020-07-24 11:11:42 +08:00
Mihail Geshoski 5ce4bd05df MDL-69079 course: Handle missing guest when fetching recommended modules 2020-07-24 11:09:31 +08:00
Mihail Geshoski b9f2e3d99b MDL-69079 course: Handle fetch module data failures in activity chooser 2020-07-24 11:09:28 +08:00
AMOS bot 42bcf62000 Automatically generated installer lang files 2020-07-24 00:09:19 +00:00
Sam Marshall 86f5acdc88 MDL-63252 tool_xmldb: convert default to float to avoid false positives 2020-07-24 07:53:52 +08:00
Simey Lameze 45aa8db99d MDL-68968 core: fix wrong phpdoc on admin_externalpage 2020-07-24 07:46:22 +08:00
Amaia Anabitarte d35fc78761 MDL-69199 mod_quiz: Show timefinish in user Complete report 2020-07-23 18:54:05 +02:00
Victor Deniz Falcon d8b0be3eb3 weekly release 3.9.1+ 2020-07-23 16:10:40 +01:00
Victor Deniz Falcon 12e884c5b3 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-07-23 16:10:34 +01:00
David Mudrák 115d6033fc MDL-68558 admin: Allow to go back to plugins check page on failed deps
Once the admin reaches the Plugin dependencies check with a failed
plugin dependency, the "Continue" button should take him/her to the
previous page where the dependency can be sorted out, or the plugin
installation cancelled. Also the "Cancel this installation" should work
on this page, too.

None of this was happening correctly because the page with failed
dependencies is loaded with "confirmplugincheck" set to 1 as a result
of confirming the previous step. We must explicitly override it back to
0 to navigate the user back to the previous step.
2020-07-23 17:02:31 +02:00
Bas Brands 9ffeab1ad1 MDL-67831 core_message: use space available for message index page
- the prevents the message reply box from being out of view when
a user has many conversations.
2020-07-23 11:34:44 +02:00
AMOS bot 7bad9a9f15 Automatically generated installer lang files 2020-07-23 00:07:49 +00:00
Victor Deniz Falcon 5a003a1da9 Merge branch 'MDL-65819-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-07-22 19:00:14 +01:00
Ferran Recio 9e96129104 MDL-55299 mod_feedback: fix quoted values donwload 2020-07-22 19:23:46 +02:00
Paul Holden 5068d59b13 MDL-69311 dataformat: correct license docblock.
When this class was implemented in 8844cb82, it incorrectly set the
license to Moodle Workplace.
2020-07-22 10:44:38 +01:00
Andrew Nicols bf9c4ab68a MDL-69138 behat: Update session->visit() to use visit step 2020-07-22 16:46:51 +08:00
Andrew Nicols 44022305cc MDL-69138 behat: Add "I visit :localurl" step 2020-07-22 16:46:51 +08:00
Jun Pataleta 0595cfb07d Merge branch 'MDL-52052-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-07-22 13:47:06 +08:00
Jun Pataleta c8098c7a80 Merge branch 'MDL-68178-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-07-22 12:58:58 +08:00
Eloy Lafuente (stronk7) 2e71c132fe Merge branch 'MDL-69160-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-21 23:29:36 +02:00
Bas Brands 7c3522f902 MDL-69111 mod_forum: forum grading on small viewports
- changes to make the forum grading UI accessible in small
viewports to meet criterion 1.4.10 Reflow.
2020-07-21 17:43:03 +02:00
David Mudrák 4dcb3165e7 MDL-68647 forum: Add index over posts privatereplyto field
This is to further improve the performance of searching of posts related
to the given user. Once both userid and privatereplyto are indexed, the
query planner can use the merged index to search for posts records.
2020-07-21 11:51:20 +02:00
David Mudrák 4fbe8bec4a MDL-68647 forum: Improve the SQL performance in the privacy provider
The idea here is to replace the existing LEFT JOINs and
OR / IS NOT NULL conditions with INNER JOINs and ANDs. So we gather the
discussions data from all three areas in individual queries, make their
UNION. The GROUP BY was present before and maybe it is not even needed
any more (due to how UNION works) but it should not hurt to keep it.

This leads to significantly improved performance.
2020-07-21 11:48:35 +02:00
David Mudrák 4a723a329e MDL-68647 forum: Add missing advanced grading library inclusion
The method get_grading_manager() is called in the file so make sure the
library is loaded. Without it, the forum's privacy provider unit test
ended with error.

Not directly related to the issue, but noticed while working on it.
2020-07-21 11:48:35 +02:00
Adrian Greeve 592b8980aa Merge branch 'MDL-67657-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-21 14:48:10 +08:00
Ferran Recio 1e63a97698 MDL-68423 message: avoid self-xss when send a message 2020-07-20 19:52:58 +02:00
Eloy Lafuente (stronk7) 9d41810bed Merge branch 'm39_MDL-67440' of https://github.com/danmarsden/moodle into MOODLE_39_STABLE 2020-07-20 17:08:21 +02:00
Leon Stringer 8cdebcf4e0 MDL-60501 themes: Fix closing <h4> in template
In site admin pages (/admin/search.php) <h4> elements were generated
with an incorrect second opening <h4> instead of a closing </h4>.
2020-07-20 15:48:50 +01:00
Bas Brands 9744e6e8cb MDL-66670 theme_boost: list bullet styling
Ensure lists with bullets are not cut off
2020-07-20 14:49:08 +02:00
Jake Dallimore f4d6bd1188 MDL-69319 mod_lti: style and docs changes in external tests 2020-07-20 15:00:25 +08:00
Jake Dallimore d8c8c75ec4 MDL-69319 mod_lti: replace try/catch with expectException in ext tests 2020-07-20 15:00:25 +08:00
Jake Dallimore 9eaaa8997b MDL-69319 mod_lti: remove unused vars from externallib_test 2020-07-20 15:00:24 +08:00
Jake Dallimore ef2a7d7302 MDL-69319 mod_lti: move test data generation out of common setup 2020-07-20 15:00:24 +08:00
Jake Dallimore b660b92b3f MDL-69319 mod_lti: call clean_returnvalue in external tests 2020-07-20 15:00:24 +08:00
Mihail Geshoski 87ae4833c4 MDL-68178 auth: CSRF protection for the resend confirmation email form
Credit to Chandra Kishor.
2020-07-20 12:36:29 +08:00
Adrian Greeve 4f9d34da81 Merge branch 'MDL-69113_39' of https://github.com/jonof/moodle into MOODLE_39_STABLE 2020-07-20 10:37:03 +08:00
Mihail Geshoski 13ad9d1f5b MDL-52052 gradeimport_csv: Do not skip rows with blank user fields 2020-07-20 08:55:05 +08:00
Eloy Lafuente (stronk7) 8cf328dc54 Merge branch 'MDL-69278-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-18 11:56:01 +02:00
Paul Holden af1f371aa7 MDL-65819 message: send contact requests using recipient language. 2020-07-17 13:33:20 +01:00
Sara Arjona 3e78b603a5 weekly release 3.9.1+ 2020-07-16 21:28:34 +02:00
Andrew Nicols 50da793d5b MDL-67657 behat: Open course with editing using URL
This is a huge performance improvement for behat.

The current set of steps loads the page
It then looks for the Classic/Clean version of the settings menu
If it fails to find it looks for the Boost Cog
Then it clicks the "Turn editing on" button

This can take a substantial period.

We do not actually need to run these steps as we are able to jump
straight to the URL. We already have access to the sesskey value
required to do this.

There is not loss in testing functionality because the actual testing of
the Turn editing functionality is tested in other places sufficiently.
2020-07-16 11:06:43 +08:00
Andrew Nicols 4affbe94be MDL-67657 behat: Convert existing uses of executeScript 2020-07-16 11:06:31 +08:00
Andrew Nicols d18eacbd35 MDL-67657 behat: Add wrapper for JS execution 2020-07-16 11:05:32 +08:00
Jun Pataleta 3de3755281 Merge branch 'MDL-69215-39-2' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-16 09:42:52 +08:00
Andrew Nicols 04a1611139 MDL-69278 behat: Correct variable name 2020-07-16 08:29:57 +08:00
Andrew Nicols 0b5889d299 MDL-69278 behat: Mark tests as failed when unable to start Session 2020-07-16 08:29:57 +08:00
Andrew Nicols aa6bf0f367 MDL-69215 output: Correct use of icon_system::instance 2020-07-16 07:30:32 +08:00
Andrew Nicols 7164e1626e MDL-69215 output: Correct font awesome for themes 2020-07-16 07:30:32 +08:00
Eloy Lafuente (stronk7) a869415180 Merge branch 'MDL-69214-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-07-16 00:01:19 +02:00
Eloy Lafuente (stronk7) b39f2de8ad Merge branch 'MDL-69165-39' of https://github.com/HuongNV13/moodle into MOODLE_39_STABLE 2020-07-15 23:47:24 +02:00
Charles Fulton b02b1f3ea9 MDL-69074 admin: ensure consistent default for getremoteaddrconf 2020-07-15 19:05:52 +02:00
Sara Arjona 72ad5d94ea Merge branch 'MDL-68605_39' of https://github.com/t-schroeder/moodle into MOODLE_39_STABLE 2020-07-15 18:52:46 +02:00
Sara Arjona 1c2358de43 Merge branch 'MDL-68210-39' of https://github.com/snake/moodle into MOODLE_39_STABLE 2020-07-15 18:19:44 +02:00
Shamim Rezaie ba56dfb574 MDL-66707 mod_forum: do not blindly mark discussion replies as read 2020-07-15 22:27:10 +10:00
Sara Arjona da48e72353 Merge branch 'MDL-67671_39_STABLE' of https://github.com/marxjohnson/moodle into MOODLE_39_STABLE 2020-07-15 14:11:46 +02:00
Sara Arjona 3c5757b0e2 Merge branch 'MDL-57678-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-07-15 12:56:20 +02:00
Jun Pataleta e1a310bde7 MDL-57678 core_course: Remove padding of nbsp's on category names
Padding nested course categories by space to make them render in a tree
structure does not really make a lot of sense as they are already being
rendered as full paths. It's simpler to show them without the
indentation.
2020-07-15 18:27:02 +08:00
Sara Arjona a040f29f03 Merge branch 'MDL-69068-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-15 12:20:30 +02:00
Andrew Nicols 3f3262c76e MDL-69068 behat: Allow singular, pivotted data generators 2020-07-15 15:27:31 +08:00
Andrew Nicols 5018c4e4db MDL-69068 behat: New step to support singular generators 2020-07-15 15:27:31 +08:00
Jake Dallimore 6e5ae126af Merge branch 'MDL-69206-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-07-15 10:29:28 +08:00
Sara Arjona a0b8d8c0ff Merge branch 'MDL-68715-39' of https://github.com/paulholden/moodle into MOODLE_39_STABLE 2020-07-14 14:31:55 +02:00
Shamim Rezaie 1636ee5980 MDL-68444 calendar: Improve how screenreaders say week titles
Also removed the scope attribute from the mini-calendar table
because according to https://www.w3.org/TR/WCAG20-TECHS/H63.html
it was not needed:
  Note 1: For simple tables that have the headers in the first row
  or column then it is sufficient to simply use the TH elements without
  scope.
2020-07-14 22:12:49 +10:00
Shamim Rezaie a092131b73 MDL-68444 calendar: Improve how screenreaders read day titles
Screenreaders now know if each day has any event or not
2020-07-14 22:12:49 +10:00
Paul Holden b4a73ff47f MDL-68715 completion: fix form default value for course prerequisites.
Adds filtering on the completion criteria form to ensure we are only
selecting actual course instances of this type. Prior to this change
we would also get NULL values from unrelated criteria types.
2020-07-14 12:45:58 +01:00
Sara Arjona 73c4f6c2a5 Merge branch 'MDL-69228-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-14 12:41:23 +02:00
Mihail Geshoski d8a886d75a MDL-69206 course: Tidy up behat test to avoid potential failures 2020-07-14 12:11:50 +08:00
Mihail Geshoski 480f26720d MDL-69206 course: Tidy up unit test to avoid potential failures 2020-07-14 12:11:50 +08:00
Sara Arjona 333d17b8e1 Merge branch 'MDL-69115-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-07-13 14:24:15 +02:00
Andrew Nicols f78caa59d2 MDL-69160 workshop: Ensure steps are chained 2020-07-13 14:22:32 +08:00
Andrew Nicols 1f09dea479 MDL-69160 behat: Add form field setter step 2020-07-13 14:22:31 +08:00
Eloy Lafuente (stronk7) 8e619076cb Moodle release 3.9.1 2020-07-12 12:13:02 +02:00
Leon Stringer d80e9d463d MDL-69252 templates: Invalid HTML
Invalid HTML generated when the page count exceeded the maximum number
of page links to display: <span>...</a>.  Also added example context.
2020-07-11 12:52:28 +01:00
AMOS bot 6a17f29147 Automatically generated installer lang files 2020-07-10 19:52:47 +00:00
Eloy Lafuente (stronk7) cafc042bf6 weekly release 3.9+ 2020-07-10 20:22:25 +02:00
Eloy Lafuente (stronk7) d2e303436b Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-07-10 20:22:18 +02:00
Jake Dallimore fb0d5acf4c Merge branch 'MDL-69232-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-10 15:12:29 +08:00
Andrew Nicols 376d34142f MDL-69232 behat: Simplify hooks
The behat hooks were needlessly complicated which made them much harder
to read, and understand, leading to bugs during development.

These have been significantly simplified to favour clarity over
overloading.
2020-07-10 08:40:30 +08:00
Andrew Nicols 8eb7f7e366 MDL-69232 behat: Make selenium start more fault tolerant
The session was previously only started once, but has now been moved to
restart between each test. Because of this the `$session->start()` is
now called more frequently which exposes a pre-existing issue whereby
Selenium will periodically fail to start.

When the session was only started at the beginning of the test, and at
occasional other times, it made sense to always stop the test runner
because it signified an issue with obtaining the session at all.

Since the session is restarted more frequently, and now between every
test, it no longer makes sense to do this. The test should only be
_stopped_ if the first attempt to obtain the Session fails. Once a
Session has been retrieved at least once it no longer makes sense to
assume that the failure was a configuration failure, but a connection
failure. Therefore subsequent tests should be attempted.
2020-07-10 08:40:29 +08:00
Mark Johnson 762e8afa6f MDL-67671 backup: Fix modname display on backup form 2020-07-09 10:11:52 +01:00
Jake Dallimore c3018e9ee7 Merge branch 'MDL-69135-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-09 10:38:21 +08:00
Michael Hawkins 996c94fd08 MDL-68426 theme: Set a limit on paths length in yui_combo
The maximum paths length is now consistent with the YUI loader.
This fix also removes any duplicate paths, so each file is only ever
fetched once.
2020-07-09 10:23:44 +08:00
Andrew Nicols fd7c3c4834 MDL-69232 behat: Add debugging information to Selenium fails 2020-07-09 09:45:32 +08:00
Andrew Nicols c3b7f2f974 MDL-69232 behat: Move suite tests to BeforeSuite hook 2020-07-09 09:45:32 +08:00
Eloy Lafuente (stronk7) 8589fbda8c Merge branch 'MDL-69134-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-08 20:53:22 +02:00
Jake Dallimore f1a681c983 Merge branch 'MDL-69104-39' of https://github.com/HuongNV13/moodle into MOODLE_39_STABLE 2020-07-08 13:07:01 +08:00
Huong Nguyen a17188f51c MDL-69165 Questions: Incorrect id used in init_submit_button function 2020-07-08 11:47:24 +07:00
Andrew Nicols 8a66849a57 Merge branch 'MDL-68784-39' of https://github.com/Peterburnett/moodle into MOODLE_39_STABLE 2020-07-08 12:37:27 +08:00
Andrew Nicols 20318b8b7d Merge branch 'm39_MDL-66322_Travis_Run_Using_Docker_ExtTests-v2' of https://github.com/scara/moodle into MOODLE_39_STABLE 2020-07-08 12:20:52 +08:00
Peter Burnett d84d6f57a3 MDL-68784: Updated variable for graph report 2020-07-08 14:06:23 +10:00
Andrew Nicols 619e11c07a MDL-69228 tool_mobile: Hide dependant settings 2020-07-08 11:44:31 +08:00
Juan Leyva 01ec0ee85b MDL-69031 tool_mobile: Add missing features that can be disabled in 3.9 2020-07-08 09:36:44 +08:00
Andrew Nicols 91b23a2caa Merge branch 'MDL-60494-stray_img_end-39' of https://github.com/leonstr/moodle into MOODLE_39_STABLE 2020-07-08 09:24:05 +08:00
Andrew Nicols 053a433d74 MDL-69134 competencies: Behat fails randomly opening dialogues 2020-07-08 09:21:51 +08:00
Jake Dallimore 3725a41b39 MDL-68210 mod_lesson: fix random failure in override behat test 2020-07-08 09:07:06 +08:00
Jake Dallimore fe5ca8e768 MDL-68210 overrides: allow copy and delete of inactive overrides
This brings lesson and assign in line with the expected behaviour
already implemented in quiz. When an override is inactive, all controls
are shown.
2020-07-08 09:06:58 +08:00
Marina Glancy b1a2e67326 MDL-69109 theme: try to load icons from the current theme 2020-07-08 08:40:52 +08:00
Marina Glancy 40553ed459 MDL-69109 core: use different cache keys for FA icon maps 2020-07-08 08:40:51 +08:00
Matt Clarkson ae9e1f1888 MDL-67440 analytics: optimse delete's in clean up task. 2020-07-08 11:18:20 +12:00
Matteo Scaramuccia 9127c17778 MDL-66322 travis: Configure a local copy of 'exttests' 2020-07-07 21:34:06 +02:00
Andrew Nicols 8f28fbee11 MDL-69086 theme_boost: Improve pendingJs checks for bootstrap
Where an element, like an `alert`, is closed it is removed from the DOM
before the event fires (this is a correct behaviour).

This means that the final event confirming that the action happened
(i.e. close => closed) fires, but does not bubble up the DOM to the
document.body.

This change moves the end event listener to only be added after a start
event has been fired, and to attach directly to the HTMLElement where it
will be fired. This means that the Event handler will still be called,
even though it has been removed from the DOM, because it does not need
to bubble up to the body.
2020-07-07 20:01:02 +02:00
Eloy Lafuente (stronk7) be7bda671e Merge branch 'm39_MDL-68588_Hide_Backuptempdir_From_Message_And_Debuginfo' of https://github.com/scara/moodle into MOODLE_39_STABLE 2020-07-07 19:10:41 +02:00
Eloy Lafuente (stronk7) c58101cde3 Merge branch 'MDL-68784-39' of https://github.com/Peterburnett/moodle into MOODLE_39_STABLE 2020-07-07 18:52:27 +02:00
Paul Holden 4a16804df7 MDL-69214 user: correct participant table forced group SQL. 2020-07-07 14:37:23 +01:00
Tim Schroeder ff92024ec2 MDL-68605 mod_assign: return grp submissns from ws
Co-authored-by: Septatrix <24257556+Septatrix@users.noreply.github.com>
2020-07-07 12:55:54 +02:00
Víctor Déniz Falcón 6e5b0b5c20 MDL-69093 enrol_manual: added check for allowed roles a user can assign 2020-07-07 08:33:08 +02:00
Andrew Nicols c201456f20 Merge branch 'MDL-69106-39' of git.in.moodle.com:cameron/moodle into MOODLE_39_STABLE 2020-07-07 14:15:54 +08:00
Eloy Lafuente (stronk7) 02b3d5aacf Merge branch 'MDL-60827-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-07-07 00:17:26 +02:00
Andrew Nicols dde1ead9fe MDL-69110 table: Remove commented code 2020-07-06 13:26:28 +08:00
Andrew Nicols 3915147b9b Merge branch 'MDL-69110-39' of git://github.com/junpataleta/moodle into MOODLE_39_STABLE 2020-07-06 13:26:00 +08:00
Andrew Nicols 55c7fe15a0 Merge branch 'MDL-69158-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-07-06 12:12:12 +08:00
Jake Dallimore 82dba4d510 Merge branch 'MDL-69136-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-06 10:44:34 +08:00
Mihail Geshoski 9ecff3766a MDL-60827 oauth2: Consider requireconfirmation setting on login 2020-07-06 10:05:16 +08:00
Michael Hawkins 4fb85c9c9f MDL-69128 admin: Convert HTML entities when populating tasklogs filter 2020-07-06 10:04:17 +08:00
AMOS bot 6ea5922916 Automatically generated installer lang files 2020-07-06 00:08:30 +00:00
Leon Stringer 287e8f16e6 MDL-60494 mod_lti: Invalid </img>, example context
<img> was followed by an invalid </img>.  Also added example context for
template so it passes CI checks.
2020-07-05 15:57:42 +01:00
Matteo Scaramuccia 846422a90f MDL-68588 Backup: Hide ->backuptempdir in exception info 2020-07-03 21:18:30 +02:00
Jun Pataleta ea6621e00e MDL-69110 core: Unset the correct sort data element 2020-07-04 00:50:21 +08:00
Eloy Lafuente (stronk7) 44ffa8a801 weekly release 3.9+ 2020-07-03 18:41:38 +02:00
Eloy Lafuente (stronk7) a1d5911159 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-07-03 18:41:32 +02:00
Jake Dallimore c38e38d6b4 Merge branch 'MDL-69130-39-enfix' of git://github.com/mudrd8mz/moodle into MOODLE_39_STABLE 2020-07-02 12:08:37 +08:00
Jake Dallimore f5b5f97f56 Merge branch 'MDL-69149-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-02 11:57:18 +08:00
Jake Dallimore 5528302282 Merge branch 'MDL-69122-39' of git://github.com/bmbrands/moodle into MOODLE_39_STABLE 2020-07-02 11:49:19 +08:00
AMOS bot 995f0a3a58 Automatically generated installer lang files 2020-07-02 00:08:08 +00:00
Eloy Lafuente (stronk7) 894ebe38a2 Merge branch 'MDL-69072-39' of git://github.com/andrewnicols/moodle into MOODLE_39_STABLE 2020-07-01 23:23:45 +02:00
Andrew Nicols 0609febf16 MDL-69072 behat: Remove restart_browser_after feature
This is no longer required as the Mink session is restarted after every
test regardless.
2020-07-01 23:23:39 +02:00
Luca Bösch 1d6c1cc0ae MDL-68584 core_question: flexbox compatible separator for question types
* the br tag does not work well in a flexbox context, a 100% with div
works in both classic and boost.
2020-07-01 16:42:50 +08:00
Jun Pataleta 50b076c4af MDL-69115 course: More course management accessibility fixes
* Added aria-label for category single select element when on Courses
view mode.
* Fix correct labelling of custom control checkboxes. Instead of adding
aria-label in the label element, add an sr-only span within the label.
* Remove inappropriate 'group' role for the list of courses.
The list of courses is not being rendered as a tree structure
so adding a 'group' role to the list of courses is not really
necessary.
* Add aria-label for the search courses field.
* Add legend for the search courses fieldset.
* Use the primary colour for the category selection highlight instead
of the info colour.
* Changed the labels for the up/down icons using moveup/movedown
lang strings.
2020-07-01 14:45:26 +08:00
Paul Holden d783f12861 MDL-69150 message_airnotifier: correct apps portal link. 2020-07-01 08:39:47 +08:00
Paul Holden f324c2d16c MDL-69151 message_airnotifier: start output before accesskey request.
This allows debugging generated by the request to be shown on the
page.
2020-07-01 08:32:34 +08:00
Huong Nguyen 5486975097 MDL-69104 Questions: Drag and drop question family don't work with iOS
- Drag and Drop marker question type
 - Drag and Drop onto image question type
 - Drag and Drop into text question type
2020-06-30 14:48:47 +07:00
Cameron Ball d4b6b26f4f MDL-69106 assignfeedback_editpdf: Keep files in conversion queue
In some circumstances, a submission waiting to be converted needs to persist
in the conversion queue so that it can be polled on subsequent cron runs.
2020-06-30 13:56:57 +08:00
Peter Burnett 996dd0b0b9 MDL-68784 scorm: Removed limit on allowed scorm users in report 2020-06-30 15:17:51 +10:00
Luca Bösch b44588aaba MDL-69158 block_blog_menu: format search form. 2020-06-29 11:13:55 +02:00
Andrew Nicols 95fbf4d8e5 MDL-69136 behat: Improve reliability of navigation steps 2020-06-29 11:36:36 +08:00
Andrew Nicols 6f78024717 MDL-69136 behat: Support find on a NodeElement 2020-06-29 11:36:30 +08:00
Andrew Nicols 7b2e257157 MDL-69072 mod_scorm: Stop mink reset after tests
This is now done for all scenarios. It is no longer necessary to do so
specifically for mod_scorm.
2020-06-26 21:17:23 +08:00
Andrew Nicols bb344d07e7 MDL-69072 behat: Relaunch browser session between scenarios 2020-06-26 21:17:22 +08:00
Andrew Nicols 959c2cb84e MDL-69149 core_grade: Correct xpath attribute selector 2020-06-26 19:59:56 +08:00
Andrew Nicols ee7b438f61 MDL-69135 core_calendar: PendingJS for event filtering 2020-06-26 07:58:36 +08:00
Helen Foster dc0241306b MDL-69130 lang: Import fixed English strings (en_fix)
Significant string change:

- presentationoraltrequired,atto_image - wording changed to mention
  'decorative only' checkbox
2020-06-25 21:52:35 +02:00
Eloy Lafuente (stronk7) 89ce4db476 weekly release 3.9+ 2020-06-25 18:06:36 +02:00
Eloy Lafuente (stronk7) 55a1405a84 Merge branch 'install_39_STABLE' of https://git.in.moodle.com/amosbot/moodle-install into MOODLE_39_STABLE 2020-06-25 18:06:31 +02:00
Jonathon Fowler fb21fc9274 MDL-69113 assign: save grader app workflow/marker filters correctly 2020-06-25 14:40:07 +10:00
Bas Brands 57b920b8b7 MDL-69122 report_competency: fix clearfix
- a misplaced clearfix caused part of the recontrols to be
inaccessible
2020-06-24 09:15:28 +02:00
Nicolas Martignoni bae07c1bfb MDL-68992 Privacy: Update default minimal digital age of consent
Updating default minimal digital age of consent according to current legislation,
that was updated for several countries since 2018.
2020-06-24 10:14:53 +08:00
Peter Dias 4f7016f2da MDL-69065 course: Provide the id for the sr param
* Pass the section return id to the activity chooser
* Additional behat test to cover the case
2020-06-24 10:14:51 +08:00
Andrew Nicols 7af8441403 MDL-66568 behat: Reset theme CSS between scenarios 2020-06-23 18:03:52 +02:00
Andrew Nicols 7ba95339a6 MDL-66568 behat: Support building of themes for behat 2020-06-23 18:03:52 +02:00
Andrew Nicols b6c37f2926 MDL-66568 core_output: Return built theme CSS 2020-06-23 18:03:52 +02:00
AMOS bot b8408c3582 Automatically generated installer lang files 2020-06-23 12:25:17 +00:00
Bas Brands fb625069cf MDL-69021 theme_boost: improve link styles in alerts
- provide default styles for links in alerts if the .alert-link
css class is omitted.
2020-06-23 11:31:23 +08:00
hiendinh d4297993a4 MDL-68841 Modal dialogs: Wrong behavior of popup 2020-06-23 09:45:44 +08:00
Víctor Déniz Falcón 2104324ded Merge branch 'MDL-69099-39-disabledtasks' of git://github.com/mudrd8mz/moodle into MOODLE_39_STABLE 2020-06-22 17:20:10 +01:00
David Mudrák 153b2cb484 MDL-69099 tasks: Do not mark the non-enabled plugin's task as disabled
The `core\plugininfo\base::is_enabled()` uses three-state logic for its
return value. It can return null as a valid value as per its
documentation. We need to test for the explicit false value in this
case.

To make the attached Behat test able to identify the table, the caption
is added. It seems to be helpful for all users so I leave it displayed
without using the accesshide mechanism.
2020-06-22 10:10:15 +02:00
Jake Dallimore c72adaa749 Merge branch 'MDL-69047-39' of git://github.com/aanabit/moodle into MOODLE_39_STABLE 2020-06-22 12:41:28 +08:00
Adrian Greeve 3c2ed1533c Merge branch 'MDL-69077_39' of https://github.com/timhunt/moodle into MOODLE_39_STABLE 2020-06-22 10:41:47 +08:00
Jun Pataleta b9518bf811 MDL-69008 core: Fix accessibility issues in paged content templates
* Added menuitem role for the "Show x per page" menu.
* Added appropriate aria-labels for the links in the paging bar.
2020-06-19 16:49:03 +02:00
Amaia Anabitarte 4f0f1bd84f MDL-69047 core_contentbank: Hard coding status messages 2020-06-18 18:07:41 +02:00
Sara Arjona e2ef786003 weekly release 3.9+ 2020-06-18 14:14:00 +02:00
Russell Boyatt 5b134b5de5 MDL-66899 quiz: Adding test for regrading quiz event. 2020-06-18 04:52:47 +01:00
Russell Boyatt 62c4da281a MDL-66899 quiz: Log a regrading event when quiz attempt is regraded. 2020-06-18 04:52:47 +01:00
Víctor Déniz Falcón 4c27f858b9 Merge branch 'MDL-69060-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-06-17 23:44:40 +01:00
Tim Hunt 6ced5c26d0 MDL-69077 questions: question tag capabilties are relevant 2020-06-17 13:07:30 +01:00
hiendinh ccd504115d MDL-68890 progressbar: prevent display exist file's progress bar 2020-06-17 19:54:06 +08:00
Jake Dallimore 647e5d8021 Merge branch 'MDL-68215-39' of git://github.com/lucaboesch/moodle into MOODLE_39_STABLE 2020-06-17 14:58:35 +08:00
Tim Hunt 6a7042d980 MDL-68971 webservice: errors should give enough info to find the problem 2020-06-17 11:36:46 +08:00
Jun Pataleta 7532b032bb Merge branch 'MDL-67294-39' of git://github.com/mihailges/moodle into MOODLE_39_STABLE 2020-06-17 10:36:14 +08:00
Jun Pataleta b5c1d17da5 MDL-69049 tool_dataprivacy: Add possibly missing comment format columns
The earlier CONTRIB plugin versions of the tool (<33.2.0, <34.2.0) were
missing the following columns in the data requests table:
* commentsformat
* dpocommentformat
And the upgrade scripts for the merged tool failed in
Moodle 3.3.8+/3.3.0+ failed to add these columns.
So a site which uses the CONTRIB plugin and eventually upgrading to 3.9
will encounter an error during upgrade because of the missing
dpocommentformat column.
2020-06-16 17:59:03 +01:00
Mihail Geshoski 56a7d91066 MDL-67294 assignsubmission_file: Make sure record exists before updating 2020-06-17 00:55:46 +08:00
Tim Hunt 93d636a95b MDL-68436 atto_recordrtc: only works once per page 2020-06-16 14:40:35 +08:00
Víctor Déniz Falcón 7ca771e4ac Merge branch 'MDL-69044_39' of https://github.com/stronk7/moodle into MOODLE_39_STABLE 2020-06-15 17:36:32 +01:00
Luca Bösch 6e7e7e1241 MDL-68215 block_activity_result: Format elements more nicely. 2020-06-15 15:26:13 +02:00
Luca Bösch 8b43f32f8c MDL-69060 core_contentbank: fix contenbank typos. 2020-06-15 13:37:00 +02:00
Eloy Lafuente (stronk7) a30eb7d16c MDL-69044 upgrade: add 3.9.0 separation line to all upgrade scripts 2020-06-14 13:09:13 +02:00
Eloy Lafuente (stronk7) 500c131eb4 Moodle release 3.9 2020-06-13 20:04:49 +02:00
Eloy Lafuente (stronk7) ea24bef18a NOBUG: Change travis.yml to MOODLE_39_STABLE 2020-06-13 20:04:49 +02:00
Eloy Lafuente (stronk7) 698e225d61 Merge branch 'MDL-68632' of git://github.com/aolley/moodle 2020-06-12 19:59:55 +02:00
Victor Deniz Falcon 8dbc6ebbe3 Moodle release 3.9rc3 2020-06-12 12:32:06 +01:00
Jun Pataleta 2b263bf837 Merge branch 'MDL-69026-master' of git://github.com/andrewnicols/moodle 2020-06-12 11:58:59 +08:00
Adam Olley 9db6c361fd MDL-68632 quizaccess_seb: Limit privacy queriyes to the quiz module
Without this, joins are performed against the course_modules table purely on
the instance id - other modules can share this ID, resulting in incorrect
contexts being pulled in.
2020-06-12 12:31:01 +09:30
Andrew Nicols 8d5926bead MDL-69026 user: Correct statuses => status in test 2020-06-12 10:03:06 +08:00
Andrew Nicols 8bcf74e9bc MDL-69026 user: Wrap sub-query in brackets
It is perfectly valid to have a query like:

Match None of the following:
- Role is ANY of the following:
-- 'Teacher'
-- 'Editing teacher'
-- 'Manager'; AND
- Keyword is NONE of the following:
-- 'Kevin'

However, due to the way in which the query is constructed, this leads to
a query which includes

    WHERE NOT ef.id IS NOT NULL
    AND NOT
        u.id IN (SELECT userid FROM {role_assignments} WHERE roleid IN (...) AND contextid IN (...))
    AND NOT
        NOT (u.firstname || ' ' || u.lastname LIKE '%Kevin%')

The use of NOT NOT is valid in Postgres, MariaDB, MySQL, and MSSQL, but
not in Oracle.

To counter this when the outer jointype is of type NONE, we must wrap
each of the inner WHERE clauses in a set of brackets, which makes the
query:

    WHERE NOT ef.id IS NOT NULL
    AND NOT
        (u.id IN (SELECT userid FROM {role_assignments} WHERE roleid IN (...) AND contextid IN (...)))
    AND NOT
        (NOT (u.firstname || ' ' || u.lastname LIKE '%Kevin%'))

Whilst Oracle does not support the use of `AND NOT NOT ...`, it does support
`AND NOT (NOT ...)`
2020-06-12 10:03:06 +08:00
Sara Arjona aa6830ef99 Moodle release 3.9rc2 2020-06-11 18:05:14 +02:00
Sara Arjona 4234dc31cb Merge branch 'MDL-69022' of https://github.com/Chocolate-lightning/moodle 2020-06-11 12:50:49 +02:00
Mathew May ddb34e56d3 MDL-69022 tool_moodlenet: Disable integration by default 2020-06-11 17:25:54 +08:00
Jun Pataleta 02b7fac93d Merge branch 'MDL-69017-master' of git://github.com/andrewnicols/moodle 2020-06-11 16:59:04 +08:00
Sara Arjona 057db49265 Merge branch 'MDL-69004-master' of git://github.com/rezaies/moodle 2020-06-11 10:22:38 +02:00
Jake Dallimore 28bcf61281 Merge branch 'MDL-69020-master' of git://github.com/mihailges/moodle 2020-06-11 16:18:08 +08:00
Mihail Geshoski cca4ba26c9 MDL-69020 tool_moodlenet: Modify defaultmoodlenet_desc string 2020-06-11 16:13:19 +08:00
Andrew Nicols d3bfae8fcc MDL-69017 user: Show all links should work for students 2020-06-11 15:51:41 +08:00
Jun Pataleta f2dc6313f0 Merge branch 'MDL-67070-master' of git://github.com/andrewnicols/moodle 2020-06-11 14:22:48 +08:00
Andrew Nicols 01f6be2cff Merge branch 'MDL-69006-master' of git://github.com/bmbrands/moodle 2020-06-11 12:59:26 +08:00
Jake Dallimore c53b9c9a6f Merge branch 'MDL-68991-master' of git://github.com/rezaies/moodle 2020-06-11 12:27:16 +08:00
Jake Dallimore 8aa901e7c3 Merge branch 'MDL-69010' of https://github.com/Chocolate-lightning/moodle 2020-06-11 12:01:22 +08:00
Jun Pataleta a04f9e8bf4 Merge branch 'MDL-69013-master' of git://github.com/andrewnicols/moodle 2020-06-11 11:28:31 +08:00
Andrew Nicols 4dae4b1429 Merge branch 'MDL-69002-master' of git://github.com/sarjona/moodle 2020-06-11 11:08:14 +08:00
Andrew Nicols fc99ffa1aa MDL-67070 tool_usertours: Fix assumption that tours exist 2020-06-11 11:05:27 +08:00
Jun Pataleta 49a34f1593 Merge branch 'MDL-68912' of https://github.com/rlorenzo/moodle 2020-06-11 11:01:05 +08:00
Adrian Greeve fcae8cd3cf MDL-66601 atto_image: Removing bad js build files. 2020-06-11 10:43:13 +08:00
Mathew May e5daf9c7fc MDL-69010 tool_moodlenet: Migrate default MoodleNet instance setting 2020-06-11 10:32:27 +08:00
Andrew Nicols 6414edf1f9 MDL-69013 core: Add quizaccess_safebrowser to deleted plugins 2020-06-11 09:43:38 +08:00
Adrian Greeve 0f4a9aa531 Merge branch 'MDL-66601-master' of git://github.com/mihailges/moodle 2020-06-11 09:43:07 +08:00
Andrew Nicols f938dfcae8 MDL-67070 tool_usertours: Remove old tour JSON files 2020-06-11 09:32:31 +08:00
Andrew Nicols b9310489ab MDL-67070 tool_usertours: Disable old tours 2020-06-11 09:32:31 +08:00
Shamim Rezaie 06bbbbff27 MDL-69004 core: Encourage admins to enable user feedback
As part of this commit, the default for the user feedback feature
has changed to disable.
2020-06-11 11:24:30 +10:00
Rex Lorenzo 330c871c3f MDL-68912 user: "Send a message" select all not working 2020-06-10 17:53:53 -07:00
Eloy Lafuente (stronk7) 39885e35f4 Merge branch 'MDL-68954-master' of git://github.com/mihailges/moodle 2020-06-10 23:53:35 +02:00
Eloy Lafuente (stronk7) 5364577065 Merge branch 'MDL-68994-master' of git://github.com/andrewnicols/moodle 2020-06-10 23:31:11 +02:00
Victor Deniz Falcon 034ba327d0 Merge branch 'MDL-68980-master' of git://github.com/andrewnicols/moodle 2020-06-10 21:41:56 +01:00
Jun Pataleta 15823a94c1 Merge branch 'MDL-68989-master' of git://github.com/mickhawkins/moodle 2020-06-11 00:03:54 +08:00
Sara Arjona 1826ac971a Merge branch 'MDL-68902-master' of git://github.com/ferranrecio/moodle 2020-06-10 17:57:40 +02:00
Eloy Lafuente (stronk7) 489b82b22a Merge branch 'MDL-69005' of https://github.com/paulholden/moodle 2020-06-10 17:52:53 +02:00
Ferran Recio 56d9b5f8d5 MDL-68902 mod_h5pactivity: fix result report output 2020-06-10 17:50:55 +02:00
Bas Brands b8ee31a0ce MDL-69006 repository_flickr: flickr authentication fails
- Flickr does not like useragents including the word "Bot"
2020-06-10 15:46:13 +02:00
Víctor Déniz Falcón 69184789b5 Merge branch 'MDL-68986-master' of git://github.com/merrill-oakland/moodle 2020-06-10 13:12:58 +01:00
Peter Dias 5c0d795bce MDL-69002 core_badges: performance update to set default sitebackpack 2020-06-10 13:02:44 +02:00
Sara Arjona 92219c8ffd MDL-69002 core_badges: move backpack validation to a separate page
Instead of running the site backpack validation every time badges/backpacks.php
page is loaded, an action button has been added to the backpacks with OB set
to 2.0 to let admins running manually this verification when needed.
2020-06-10 13:02:44 +02:00
Sara Arjona 3e567085a8 MDL-69002 core_badges: add methods to support backpack validation
A more generic method has been added to the API to validate the
backpack connection (for now, there was only one method for
validating current backpack).
Besides, a renderer has been added to display this information
depending on the backpackid.
2020-06-10 12:26:47 +02:00
Sara Arjona 15db4a762a MDL-69002 core_badges: remove site backpack verification from settings
This site backpack verification is not required so, instead of
running it always here, it will be moved to a separate page to let
admins decide when to check it.
2020-06-10 12:06:59 +02:00
Paul Holden 2d70187ade MDL-69005 cache: fix private $store access in loader. 2020-06-10 10:31:47 +01:00
Andrew Nicols 9a7bd66b4e MDL-68980 user: Add additional groupmode participants tests 2020-06-10 16:23:58 +08:00
Jake Dallimore 337e2e2b23 Merge branch 'MDL-68973' of https://github.com/stronk7/moodle 2020-06-10 16:13:57 +08:00
Jake Dallimore 2b983d29a0 Merge branch 'MDL-68977-master' of git://github.com/andrewnicols/moodle 2020-06-10 15:36:44 +08:00
Andrew Nicols eb45751b7b MDL-68994 user: Reset filterverb value when resetting filter 2020-06-10 14:19:02 +08:00
Marina Glancy 09fe2a0ce2 MDL-68980 user: Test for groupmode participants behaviour 2020-06-10 14:15:41 +08:00
Andrew Nicols 20531b30f6 MDL-68980 core_user: Show user participation group when groupmode set 2020-06-10 14:14:50 +08:00
Shamim Rezaie ce80716a8e MDL-68991 core: delete core_get_userfeedback_url webservice 2020-06-10 16:12:03 +10:00
Shamim Rezaie 292a67aede MDL-68991 core: Prevent popup blockers blocking feedback window
Some browsers like Firefox are very inflexible with window.open()
and block it if it is not instantly invoked after the user click.

Also according to https://stackoverflow.com/a/6807615 it is best
practice to replace self:: with static::
2020-06-10 16:10:53 +10:00
Shamim Rezaie 4cdcd23fb2 MDL-68931 core: No feedback link on footer if the feature is disabled 2020-06-10 16:10:53 +10:00
Sara Arjona e5a2b74d8b Merge branch 'MDL-68955' of https://github.com/Chocolate-lightning/moodle 2020-06-10 08:06:05 +02:00
Mihail Geshoski ae6712133d MDL-66601 atto_image: Set the max-height of the image selection dialogue 2020-06-10 12:13:55 +08:00
Jun Pataleta 2157207971 Merge branch 'MDL-68864-master' of git://github.com/junpataleta/moodle 2020-06-10 11:26:13 +08:00
Jun Pataleta 4baa3d1280 MDL-68864 qtype_multichoice: Rebuild clearchoice source map 2020-06-10 11:20:22 +08:00
Bas Brands 5d5153906c MDL-68864 qtype_multichoice: clearchoice button styles
- display the clearchoice link as a button to improve the way
it looks when using keyboard focus
2020-06-10 11:10:46 +08:00
Bas Brands 233eafd8eb MDL-68864 qtype_multichoice: shift focus to first option on keyboard tab
- This prevents losing focus when using keyboard navigation.
2020-06-10 11:10:46 +08:00
Bas Brands b59de78bd1 MDL-68864 qtype_multichoice: clearchoice
- Reverted changes from MDL-67901
2020-06-10 11:10:46 +08:00
Mathew May e0c41c0449 MDL-68955 mod_h5pactivity: Enable dndupload to H5P activity 2020-06-10 10:10:51 +08:00
Adrian Greeve fc9be99323 Merge branch 'MDL-68985-master' of git://github.com/sarjona/moodle 2020-06-10 09:39:45 +08:00
Jake Dallimore 233a526c95 Merge branch 'MDL-68972-master-enfix' of git://github.com/mudrd8mz/moodle 2020-06-10 09:14:46 +08:00
Jake Dallimore 3df783acf2 Merge branch 'MDL-68995' of https://github.com/paulholden/moodle 2020-06-10 08:53:21 +08:00
Jake Dallimore 11b76652a0 Merge branch 'MDL-68999-master-homemoodlenet' of git://github.com/mudrd8mz/moodle 2020-06-10 08:37:46 +08:00
Jake Dallimore be80ef1cd2 Merge branch 'MDL-68998-master' of git://github.com/marinaglancy/moodle 2020-06-10 08:33:38 +08:00
Andrew Nicols a9075379d8 MDL-68977 enrol_manual: Add pending promises to enrol modal 2020-06-10 08:16:03 +08:00
Andrew Nicols 7b3026fabe MDL-68977 core_user: Refresh table after removing all filters
Previously the update function was called for each row as it was
removed. This patch changes the behaviouro to only remove one row at at
ime.
2020-06-10 08:03:16 +08:00
David Mudrák 2223261586 MDL-68999 moodlenet: Make the default instance name translatable
Admins can change the value as they want / need. Still, it will be nice
if the default value (the name of the default MoodleNet instance) is
controlled by the language pack.

Beside that, it will allow us to more easily change the value should we
need it in the future (via the en_fix process).
2020-06-09 22:16:00 +02:00
Helen Foster 1ab405f4a2 MDL-68972 lang: Import fixed English strings (en_fix) 2020-06-09 20:56:34 +02:00
Eloy Lafuente (stronk7) e69ab798dd MDL-68973 versions: Fix other small details
Thanks to Luca Bösch and Matteo Scaramuccia that detected
these 2 minor, but ugly details in core version files:

1) Adding comments pointed to versions (3.x, 20190801...) is not
   recommended, they easily come outdated.
2) Using plugin->release in core is no sense. Core plugins belong
   to the core release.

This commit just gets rid of them. That's all.
2020-06-09 20:27:30 +02:00
Marina Glancy 8eaad10b5f MDL-68998 core_course: do not expect that assign is the first module 2020-06-09 18:59:34 +02:00
Ferran Recio 4b6e92b8e9 MDL-68902 core_h5p: add essay h5p package 2020-06-09 16:58:17 +02:00
Jun Pataleta 1495cf837e Merge branch 'MDL-68931-master' of git://github.com/rezaies/moodle 2020-06-09 22:53:04 +08:00
Eloy Lafuente (stronk7) 97800d7e70 MDL-68973 versions: main version bump 2020-06-09 16:24:58 +02:00
Eloy Lafuente (stronk7) 115cc0214f MDL-68973 versions: bump all versions and requires near release
version = 2020061500 release version
requires= 2020060900 current rc1 (week7roll1) version
2020-06-09 16:23:09 +02:00
Eric Merrill 178a914acd MDL-68986 quiz: Add back default/adv for questionsperpage setting 2020-06-09 09:24:19 -04:00
Víctor Déniz Falcón b28f530a84 Merge branch 'MDL-68984-master' of git://github.com/mickhawkins/moodle 2020-06-09 13:45:40 +01:00
Sara Arjona 982a9a5919 MDL-68985 core_h5p: fix issue with composed code languages
Composed code languages, such as 'Spanish, Mexican' are different
in H5P and Moodle:
- In H5P, they use '-' to separate the language from the country.
For instance: es-mx.
- However, in Moodle, they have '_' instead of '-'. For example: es_mx.
2020-06-09 14:38:27 +02:00
Víctor Déniz Falcón 6ea3c69c37 Merge branch 'MDL-68953-master' of git://github.com/lameze/moodle 2020-06-09 13:18:46 +01:00
Paul Holden 0759da9ecf MDL-68995 atto_image: remove initial dialogue image src attribute.
It caused a spurious request to be sent to the server on display.
2020-06-09 12:48:50 +01:00
Sara Arjona 71a34a039f Moodle release 3.9rc1 2020-06-09 12:42:39 +02:00
Shamim Rezaie e505618f08 MDL-68931 core: No feedback link on footer if the feature is disabled 2020-06-09 19:05:16 +10:00
Michael Hawkins f2972e1dcb MDL-68989 user: Apply none filterset join correctly on keyword filter
Also improved behat coverage for filterset joins and keyword filtering.
2020-06-09 15:49:31 +08:00
Andrew Nicols cb2f672525 MDL-68977 user: Add pendingPromise to interactions 2020-06-09 14:36:08 +08:00
Andrew Nicols 8503e0ee53 MDL-68977 user: Do not refresh participants table on load 2020-06-09 14:35:39 +08:00
Andrew Nicols dd9dea6148 MDL-68977 user: Normalise participant table filterdata 2020-06-09 14:35:21 +08:00
Mihail Geshoski e8017491d1 MDL-68954 repository_flickr_public: Return only photo media 2020-06-09 12:36:59 +08:00
Michael Hawkins 8ddfc963b9 MDL-68984 user: Ensure first/last name filtering is always applied
This ensures the firstname and surname filtering is applied in addition
to any other filtering, rather than using the filterset join type.
2020-06-09 12:36:11 +08:00
Mihail Geshoski e58db3a8fd MDL-68954 repository_flickr_public: Handle when photo cannot be found 2020-06-09 12:34:25 +08:00
Andrew Nicols c8c1bccf08 Merge branch 'MDL-68946' of https://github.com/Chocolate-lightning/moodle 2020-06-09 11:48:00 +08:00
Jun Pataleta ea9a854bb6 Merge branch 'MDL-68962-master' of git://github.com/sarjona/moodle 2020-06-09 11:30:37 +08:00
Andrew Nicols efc3dfff47 MDL-68977 core_table: Do not update dynamic tables on nullop
When a setting is added/removed (i.e. an empty filter is removed) and
there is no change, then we should treat this is a null-op and not
refresh the table unnecessarily.
2020-06-09 11:21:04 +08:00
Andrew Nicols f2d6a96494 Merge branch 'MDL-68956' of https://github.com/Chocolate-lightning/moodle 2020-06-09 08:51:38 +08:00
Jake Dallimore b0ae939af9 Merge branch 'MDL-68919-master' of git://github.com/bmbrands/moodle 2020-06-09 08:36:06 +08:00
Víctor Déniz Falcón 19ec0b7bd4 Merge branch 'MDL-68963-master' of git://github.com/bmbrands/moodle 2020-06-08 22:03:39 +01:00
Sara Arjona 0e57729d5b Merge branch 'MDL-68936-master' of git://github.com/aanabit/moodle 2020-06-08 20:31:53 +02:00
Amaia Anabitarte 7be38070d4 MDL-68936 core_contentbank: Behat test for editing capabilities 2020-06-08 16:40:10 +02:00
Amaia Anabitarte 0633e60a91 MDL-68936 core_contentbank: Checking manage permissions to allow editing 2020-06-08 16:40:10 +02:00
Simey Lameze b294e0fe5c MDL-68953 core: remove close button from campaign block 2020-06-08 21:10:32 +08:00
Bas Brands 024a0cc7c2 MDL-68963 qtype_calculatedmulti: show question content inline
- Applies the CSS changes added in MDL-68761 for the multichoice qtype
so questions don't start on a new line
2020-06-08 15:03:37 +02:00
Bas Brands 1ce86e3ada MDL-68963 qtype_multichoice: better styles for safari
- Input type radio needs a width attribute when it is in a flexbox
container
2020-06-08 15:02:59 +02:00
Bas Brands 510ab5e32c MDL-68963 theme_boost: fix safari focus outline for radio and checkbox
- safari does not support the custom styles for radios and
checkboxes added in MDL-67874
2020-06-08 14:30:49 +02:00
Sara Arjona ffd6465029 MDL-68962 contentbank: get sortbyX strings from the correct place 2020-06-08 12:00:22 +02:00
Jun Pataleta 5a862ca1a2 Merge branch 'MDL-68951-master' of git://github.com/andrewnicols/moodle 2020-06-08 17:49:02 +08:00
Mathew May 329d3a8de5 MDL-68946 tool_task: Make clionly string handling more consistent 2020-06-08 17:11:57 +08:00
Bas Brands f9a99e0eaa MDL-68919 theme_boost: prevent nav-tabs collapsing on safari
- Flexbox seems to have an issue on safari which shows when using
the activity chooser on mobile. this might be Flexbug moodle#14 listed
on https://github.com/philipwalton/flexbugs
2020-06-08 10:14:01 +02:00
Jun Pataleta eee5661146 Merge branch 'MDL-68916-master' of git://github.com/mihailges/moodle 2020-06-08 14:25:54 +08:00
Mihail Geshoski 36c3eb0438 MDL-68916 mod_h5pactivity: Fix duplicated user error in attempts report 2020-06-08 14:17:10 +08:00
Jake Dallimore d7ffa840cc Merge branch 'MDL-68952-master' of git://github.com/mihailges/moodle 2020-06-08 14:09:14 +08:00
Mathew May 39bc6c4c2e MDL-68956 mod_h5pactivity: Move templates to L2 namespaces 2020-06-08 12:50:03 +08:00
Adrian Greeve 5244420b1b Merge branch 'MDL-68930-master' of git://github.com/cescobedo/moodle 2020-06-08 11:47:44 +08:00
Jake Dallimore 831e1d86c6 Merge branch 'MDL-68929-master' of git://github.com/mihailges/moodle 2020-06-08 11:11:16 +08:00
Andrew Nicols 99de0bb062 Merge branch 'MDL-68918-master' of git://github.com/ferranrecio/moodle 2020-06-08 10:47:24 +08:00
Ferran Recio 346c51690c MDL-68873 core_h5p: fix editor H5P file update 2020-06-08 10:44:23 +08:00
Andrew Nicols 2450035801 Merge branch 'MDL-68899-master' of git://github.com/mihailges/moodle 2020-06-08 10:29:02 +08:00
Jun Pataleta 1ac08a2de6 Merge branch 'MDL-68950' of https://github.com/paulholden/moodle 2020-06-08 10:24:05 +08:00
Adrian Greeve 8d20e3c688 Merge branch 'MDL-68922-master' of git://github.com/sarjona/moodle 2020-06-08 10:16:53 +08:00
Jake Dallimore 5c361ed9af Merge branch 'MDL-68917-master' of git://github.com/sarjona/moodle 2020-06-08 09:41:27 +08:00
Andrew Nicols efa490c61f MDL-68951 table: Page numbers are 1-indexed, not 0 2020-06-08 09:35:39 +08:00
Andrew Nicols eb087fc5de MDL-68951 user: Add appropriate exceptions for table/participants 2020-06-08 09:35:39 +08:00
Mihail Geshoski c2327a2679 MDL-68952 tool_moodlenet: Modify enablemoodlenet_desc string 2020-06-08 09:31:11 +08:00
Mihail Geshoski 159500d444 MDL-68899 theme_classic: Fix dashboard course cards rendering
Co-authored-by: Bas Brands <bas@moodle.com>
2020-06-08 09:14:21 +08:00
Paul Holden fb6b7e8a42 MDL-68950 core: add Moodlenet tool to standard plugin list. 2020-06-07 22:44:00 +01:00
Mihail Geshoski b7ecc104fe MDL-68929 core_filepicker: Fix radio button alignment 2020-06-07 12:13:37 +08:00
Eloy Lafuente (stronk7) bbb7dfc62e Moodle release 3.9beta 2020-06-06 18:16:16 +02:00
Eloy Lafuente (stronk7) 113b27eda0 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-06-06 18:16:12 +02:00
AMOS bot a51705c8b1 Automatically generated installer lang files 2020-06-06 00:07:18 +00:00
Sara Arjona 4abb69f588 Merge branch 'MDL-68745-master-fix' of github.com:sarjona/moodle 2020-06-05 22:17:59 +02:00
Sara Arjona 515bc8f4e0 MDL-68745 user: remove empty line 2020-06-05 21:57:24 +02:00
Sara Arjona 6ddab9d6d3 Merge branch 'MDL-68745-master-2' of git://github.com/mickhawkins/moodle 2020-06-05 21:30:07 +02:00
Sara Arjona 5eb78045d4 MDL-68704 h5plib_v124: upgrade JQuery version to 1.12.4 2020-06-05 19:44:38 +01:00
Eloy Lafuente (stronk7) f6128f3919 Merge branch 'MDL-68888-master-enfix' of git://github.com/mudrd8mz/moodle 2020-06-05 19:21:43 +02:00
cescobedo 00ae91688d MDL-68930 mod_h5pactivity: Check submit cap when tracking is enabled 2020-06-05 17:08:47 +02:00
Ferran Recio 2bdd6b120c MDL-68918 mod_h5pactivity: add context to get_h5pactivities_by_courses 2020-06-05 14:27:38 +02:00
Sara Arjona 84e8bc4915 weekly release 3.9dev+ 2020-06-05 13:24:12 +02:00
Sara Arjona d85980fd85 NOBUG: Fixed SVG browser compatibility 2020-06-05 13:24:10 +02:00
Michael Hawkins e1e5766940 MDL-68745 lib: Improved docblock descriptions for alpha PARAM types 2020-06-05 17:50:54 +08:00
Sara Arjona c0ed1a250e Merge branch 'MDL-68933-master' of git://github.com/junpataleta/moodle 2020-06-05 11:35:42 +02:00
Jun Pataleta ee8a4fbb95 MDL-68933 core: Use get_config() to fetch theme version number
Fetching the theme version number via get_component_version() which
requires lib/adminlib.php unnecessarily increases memory consumption.
Using get_config() is more direct and simpler.
2020-06-05 16:19:02 +08:00
David Mudrák 6918ca6a4e MDL-68888 lang: Use the fixed spelling in the Behat tests, too 2020-06-05 09:33:29 +02:00
Adrian Greeve be812a064b Merge branch 'MDL-68826-master' of git://github.com/ferranrecio/moodle 2020-06-05 15:24:26 +08:00
Sara Arjona 4c2cdbe261 MDL-68922 core_h5p: upgrade content with newer libraries
The H5P editor always uses the latest libraries version.
Besides, H5P has a mechanism for upgrading content created
using older libraries. So, in order to be able to edit
existing content created with older libraries, we can assume
the library may change (for instance, from
"Course presentation 1.20" to "Course presentation 1.22")
because the $content->h5plibrary contains both (machinename and
major/minor version).
2020-06-05 09:17:06 +02:00
Helen Foster 98c882132d MDL-68888 lang: Import fixed English strings (en_fix)
Significant string changes: userdata, userdata_help, keptroles,
keptroles_help in core_backup - Clearer wording about how the settings
work.
2020-06-05 08:33:55 +02:00
Ferran Recio dd75c98889 MDL-68826 mod_h5pactivity: fix content bank link 2020-06-05 08:31:00 +02:00
Adrian Greeve ac69c0eb96 Merge branch 'MDL-68826-master' of git://github.com/ferranrecio/moodle 2020-06-05 13:35:03 +08:00
Jun Pataleta 618b13e1f5 Merge branch 'MDL-67883-squash' of https://github.com/Chocolate-lightning/moodle 2020-06-05 11:52:36 +08:00
Adrian Greeve d1b2d3f36f Merge branch 'MDL-67773-master' of https://github.com/radzisze/moodle 2020-06-05 11:47:42 +08:00
Jake Dallimore b1e6d8b86f MDL-67883 tool_moodlenet: Add MoodleNet to core 2020-06-05 11:47:42 +08:00
Mathew May 16d77f1884 MDL-67883 core: Make core ready for MoodleNet. 2020-06-05 11:47:42 +08:00
Jake Dallimore 4925924f0f Merge branch 'MDL-68761-master' of git://github.com/bmbrands/moodle 2020-06-05 10:23:13 +08:00
Víctor Déniz Falcón 88036713a5 MDL-68641 core_h5p: test dropped because the tested method was deleted 2020-06-04 19:27:59 +01:00
Anthony Radziszewski 34cd22860d MDL-67773 course: Make sure tags are enabled before logging the setting. 2020-06-04 11:41:28 -06:00
Ferran Recio 7f6026323d MDL-68826 mod_h5pactivity: content bank message in form 2020-06-04 18:41:05 +02:00
Víctor Déniz Falcón 069ae9134f Merge branch 'MDL-68905-master' of git://github.com/sarjona/moodle 2020-06-04 16:22:10 +01:00
Eloy Lafuente (stronk7) ce8201c876 Merge branch 'MDL-68076-master-4' of git://github.com/rezaies/moodle 2020-06-04 16:31:39 +02:00
Sara Arjona 9df9251c96 MDL-68917 core_h5p: use the correct libraryUrl
The libraryUrl was empty (because ->out was missing)
and pointing to the wrong URL (because 'core' is not required,
because it's added by the method).
2020-06-04 14:28:05 +02:00
Víctor Déniz Falcón 96a4d3f309 Merge branch 'MDL-68641-master' of git://github.com/aanabit/moodle 2020-06-04 12:46:11 +01:00
Amaia Anabitarte 747f6012e4 MDL-68641 contenttype_h5p: Libraries permissions tests 2020-06-04 13:44:23 +02:00
Amaia Anabitarte 2721dd3a63 MDL-68641 contenttype_h5p: Showing permission errors 2020-06-04 13:44:23 +02:00
Amaia Anabitarte 6157f5930f MDL-68641 core_h5p: Fixing capability checks in ajax.php 2020-06-04 13:44:23 +02:00
Shamim Rezaie 20146e3f39 MDL-68076 core: Fix the non cross DB query 2020-06-04 19:55:35 +10:00
Jake Dallimore aa40de942a Merge branch 'MDL-68800-lti-gbs-patch-fixes' of https://github.com/cengage/moodle 2020-06-04 14:55:58 +08:00
Michael Hawkins f32f25b89d MDL-68745 lib: Updated table filters to support non-English characters
Added support for non-English first/last name filtering.
2020-06-04 12:48:03 +08:00
Andrew Nicols 444ae8c8f0 MDL-68612 core_table: Pending checks for dyanmic updates 2020-06-04 10:47:27 +08:00
Andrew Nicols 2edcba39a2 Merge branch 'MDL-68076-master-4' of git://github.com/rezaies/moodle 2020-06-04 10:04:58 +08:00
Shamim Rezaie 363aaf6eaa MDL-68076 core: log user's click on feedback links 2020-06-04 11:57:26 +10:00
Shamim Rezaie a3a9539bd7 MDL-68076 core: display the feedback link on footer 2020-06-04 11:57:24 +10:00
Shamim Rezaie d74a826829 MDL-68076 core: display call to feedback on user dashboard 2020-06-04 11:38:49 +10:00
Shamim Rezaie 6872c96569 MDL-68076 core: webservice to get the feedback url 2020-06-04 11:38:46 +10:00
Adrian Greeve 089c9d925c Merge branch 'MDL-68894-master' of git://github.com/andrewnicols/moodle 2020-06-04 08:43:53 +08:00
Andrew Nicols 2eba6e42a5 Merge branch 'MDL-68825-master' of git://github.com/ferranrecio/moodle 2020-06-04 08:40:18 +08:00
Adrian Greeve 1d7663a341 Merge branch 'MDL-68203-decode-url-quiz-restore-master' of https://github.com/ilya-catalyst/moodle 2020-06-04 08:29:58 +08:00
Sara Arjona cbe0bb91fd MDL-68905 core_badges: remove issuer details from edit page
In MDL-68746 issuer details fields were removed from the badges
form, because they are filled from the site settings.
This is a regression because these fields should be removed also
from the edit page.
2020-06-03 19:38:09 +02:00
Sara Arjona 688ba22d6b Merge branch 'MDL-68871-master' of git://github.com/ferranrecio/moodle 2020-06-03 18:48:01 +02:00
Víctor Déniz Falcón 0e6d73245b Merge branch 'MDL-68904-master' of git://github.com/sarjona/moodle 2020-06-03 16:59:43 +01:00
Sara Arjona fa1a173302 Merge branch 'MDL-68833-master' of git://github.com/andrewnicols/moodle 2020-06-03 17:57:57 +02:00
Sara Arjona 4106d26354 Merge branch 'MDL-68796-master' of git://github.com/bmbrands/moodle 2020-06-03 14:26:53 +02:00
Sara Arjona 7e05ece1b3 Merge branch 'MDL-68772-master' of https://github.com/Clyxz/moodle 2020-06-03 13:17:32 +02:00
Sara Arjona 881dca064d MDL-68904 core_h5p: order libraries by title 2020-06-03 12:01:59 +02:00
Bas Brands 40d1487bf5 MDL-68761 question_multichoice: show question content inline 2020-06-03 11:02:59 +02:00
Andrew Nicols 84eb0a3e14 MDL-68894 user: Wrap bottom enrol buttons like top
The div wrapping the enrolment buttons has been updated in MDL-67743 to
use a flexbox grid. It was also updated to add a data- attribute
relating to the participants table id.

The bottom enrol button line should have been updated in the same way.
2020-06-03 16:53:00 +08:00
Andrew Nicols 0e606192ef MDL-68833 theme_boost: Add missing js tags 2020-06-03 16:33:43 +08:00
Shamim Rezaie 1a4c8e0275 MDL-68076 core: webservice to record feedback actions users take 2020-06-03 17:43:52 +10:00
Shamim Rezaie 3fecf7b547 MDL-68076 core: Introduced \core\notification::cta() 2020-06-03 17:43:52 +10:00
Shamim Rezaie d21ae8c297 MDL-68076 core: Added bullhorn icon to the core icon map 2020-06-03 17:43:52 +10:00
Shamim Rezaie 2cbe9eaf42 MDL-68076 core: new admin settings related to user feedback 2020-06-03 17:43:52 +10:00
Jun Pataleta 7fcdd9d983 Merge branch 'MDL-68612-master-integration' of git://github.com/mickhawkins/moodle 2020-06-03 15:39:36 +08:00
Sara Arjona ba2d0b679a Merge branch 'MDL-68320-master' of git://github.com/lameze/moodle 2020-06-03 09:29:00 +02:00
Simey Lameze ed7cd552f8 MDL-68320 core: add campaign content to notifications page 2020-06-03 14:49:01 +08:00
Andrew Nicols 084c955e49 MDL-68612 user: Set the initial filter on page load 2020-06-03 14:29:22 +08:00
Michael Hawkins 5187e7c515 MDL-68612 core: Behat tests updated to support new participants filter
Existing tests have been updated, rewritten and/or expanded to support
the new participants filter.
2020-06-03 14:29:22 +08:00
Michael Hawkins 67bf30a549 MDL-68612 user: Created behat step to set user course lastaccess data 2020-06-03 14:29:22 +08:00
Jun Pataleta 3a2363c063 Merge branch 'MDL-68840-master' of git://github.com/bmbrands/moodle 2020-06-03 14:09:03 +08:00
Jake Dallimore b556159541 Merge branch 'MDL-68875' of https://github.com/stronk7/moodle 2020-06-03 12:28:51 +08:00
Jake Dallimore e714288d90 Merge branch 'MDL-68898-master' of git://github.com/bmbrands/moodle 2020-06-03 12:10:38 +08:00
Jake Dallimore aa52fde8f5 Merge branch 'MDL-68163-master' of https://github.com/syxton/moodle 2020-06-03 12:06:06 +08:00
Bas Brands 355af8f84d MDL-68833 theme_boost: prevent having to call init on the loader
This was added in a previous master-only issue and breaks backwards compatability with child themes.

There is no need to have the init function here.
2020-06-03 09:21:48 +08:00
Andrew Nicols 23c60c18ef MDL-68833 theme_boost: Stop overriding popover triggers
The trigger specified in JS overrides any `data-trigger` in the DOM,
which changed the behaviour of Popovers.
2020-06-03 09:21:07 +08:00
Andrew Nicols 721c29ff2d MDL-68833 theme_boost: Add ./pending event checks back 2020-06-03 09:17:37 +08:00
Adrian Greeve 6a7a264e01 Merge branch 'MDL-68891-master' of git://github.com/mihailges/moodle 2020-06-03 09:10:32 +08:00
Adrian Greeve 311d28c71b Merge branch 'MDL-68883-master' of git://github.com/andrewnicols/moodle 2020-06-03 08:38:33 +08:00
Andrew Nicols 9777b0fa19 Merge branch 'MDL-68312-master-2' of git://github.com/rezaies/moodle 2020-06-03 08:00:57 +08:00
Victor Deniz Falcon 7e7b329afc Merge branch 'MDL-68578-master' of git://github.com/aanabit/moodle 2020-06-03 00:35:10 +01:00
Ferran Recio 3af22ad962 MDL-68871 mod_h5pactivity: fix webservice get_results return types 2020-06-02 17:23:56 +02:00
Martin Hanusch 398f0ae110 MDL-68772 mod_quiz: Navigation overlay fix 2020-06-02 16:50:02 +02:00
Bas Brands f31d33c2de MDL-68898 core_contentbank: add link attribute to contentbank items
- this will reveil the fullname of the item which is useful when
the name is truncated
2020-06-02 16:20:48 +02:00
Amaia Anabitarte 45bff7f9d6 MDL-68578 contenttype_h5p: Behat test for H5P editor changes 2020-06-02 16:17:22 +02:00
Amaia Anabitarte 6219740b8e MDL-68578 contenttype_h5p: Add name attribute to editor iframe
The switch_to_class_iframe step needs a name attribute for the iframe.
H5P third party library does not add that name attribute, so we add it.
2020-06-02 16:17:22 +02:00
Amaia Anabitarte 3149defec1 MDL-68578 contenttype_h5p: Save content title from uploaded H5P file 2020-06-02 16:17:22 +02:00
Eloy Lafuente (stronk7) de245163e3 MDL-68875 privacy: Keep moodle_content_writer->get_path() the same
In MDL-62853 a new clean_param(PARAM_PATH) was added to the
moodle_content_writer->get_path() method. And this caused some
Windows tests to start failing.

The problem is that clean_param(PARAM_PATH) does normalise directory
separators to be always forward backslashes and that's normally ok
but the get_path() method has some DIRECTORY_SEPARATOR dependent code
that stopped working under windows.

After analysing various solutions, and trying to keep the behavior
EXACTLY like it was before MDL-62853, but with the cleaning included
we have applied 2 changes:

b) Move the clean_param() to later within the array_map() function,
that way the code there, that uses DIRECTORY_SEPARATOR will continue
working the same.

b) As far as there are more DIRECTORY_SEPARATOR dependent code later
in the function, also perform a str_replace() to convert back to the
OS directory separator.

Those 2 points together (a and b) make the behavior to be 100% the
original one, with separators being kept and the paths being cleaned.

This solution corresponds 100% with the proposed fixes named 3) and
4) in the issue.

Final note... all that DIRECTORY_SEPARATOR maybe needs a review because
it really shouldn't be used unless strictly needed. But that falls out
from this issue which goal was to keep things safely working like they
were before the regression (but with the cleaning applied).
2020-06-02 15:53:40 +02:00
Matt Davidson 887679e510 MDL-68163 gradebook: add grade item duplication 2020-06-02 09:28:29 -04:00
Sara Arjona 111b293f61 weekly release 3.9dev+ 2020-06-02 13:03:08 +02:00
Sara Arjona a7f6a60ae4 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-06-02 13:03:05 +02:00
Ferran Recio 3db7a65e15 MDL-68825 theme_boost: fixing recently accessed items block icons 2020-06-02 12:22:15 +02:00
Ferran Recio 90d8fe1532 MDL-68825 mod_h5pactivity: fixing svg icon size 2020-06-02 12:22:15 +02:00
Bas Brands 94fd778dbf MDL-68840 mod_quiz: random question in question list css fix 2020-06-02 10:54:54 +02:00
Mihail Geshoski 5c9c1534a1 MDL-68891 theme_boost: Fix go to top link position on horizontal scroll 2020-06-02 16:45:46 +08:00
Andrew Nicols 2ba031f0d6 MDL-68793 core_table: Version bump for renamed WS 2020-06-02 11:57:40 +08:00
Andrew Nicols b2caa508b0 Merge branch 'MDL-68793-master' of git://github.com/lameze/moodle 2020-06-02 11:56:31 +08:00
Simey Lameze 1179f07d3c MDL-68793 core_table: fix WS name to comply with guidelines 2020-06-02 11:49:04 +08:00
Andrew Nicols cd61a8ad3b Merge branch 'MDL-68821' of https://github.com/Chocolate-lightning/moodle 2020-06-02 11:14:00 +08:00
Mathew May e74bcf19f3 MDL-68821 course: Add a attr check for the chooser 2020-06-02 11:11:15 +08:00
Adrian Greeve 823a01ad13 Merge branch 'MDL-68828-master' of git://github.com/bmbrands/moodle 2020-06-02 09:36:37 +08:00
Andrew Nicols 4d1ec7c2a7 Merge branch 'MDL-67518' of https://github.com/stronk7/moodle 2020-06-02 09:14:00 +08:00
Adrian Greeve ce67b300a4 Merge branch 'MDL-68723-master' of git://github.com/mihailges/moodle 2020-06-02 08:38:35 +08:00
Andrew Nicols b81bbc126a MDL-68883 filter_displayh5p: Ensure wwwroot is preg_quoted properly
The character used as a preg_* delimter is the tilde (~) char, but this
was not passed into the `preg_quote()` when taking the user input
($CFG->wwwroot).

As a result, any site which uses a userdir fails to parse the regexp.
2020-06-02 08:23:15 +08:00
Eloy Lafuente (stronk7) 054c76691b Merge branch 'MDL-63284-master' of https://github.com/Clyxz/moodle 2020-06-02 00:25:04 +02:00
Eloy Lafuente (stronk7) 703d8e2066 Merge branch 'MDL-68866-master' of https://github.com/mchurchward/moodle 2020-06-02 00:13:56 +02:00
Eloy Lafuente (stronk7) b2cc7d93f3 Merge branch 'MDL-68844-master' of https://github.com/roland04/moodle 2020-06-02 00:08:35 +02:00
Víctor Déniz Falcón 386a1c5595 Merge branch 'MDL-68353-master' of git://github.com/rezaies/moodle 2020-06-01 16:45:27 +01:00
Victor Deniz Falcon 877a925c6e Merge branch 'MDL-68861-master' of git://github.com/vmdef/moodle 2020-06-01 08:11:48 +01:00
cescobedo 7e5a395854 MDL-68861 core_contentbank: Fix translation in add button 2020-06-01 08:05:42 +01:00
Shamim Rezaie f806ee8e42 MDL-68353 theme_classic: Update filepicker xpath selector 2020-06-01 00:14:10 +10:00
AMOS bot b2489825a0 Automatically generated installer lang files 2020-05-30 00:07:14 +00:00
Claude Vervoort c93c711ab0 MDL-68800 mod_lti: create gbs only for restored activity 2020-05-29 17:46:07 -04:00
Martin Hanusch 08fe534986 MDL-63284 question: Moving questions with tags disabled bug fix 2020-05-29 16:42:04 +02:00
Sara Arjona 0641366181 Merge branch 'MDL-68858-master' of git://github.com/vmdef/moodle 2020-05-29 16:30:32 +02:00
Jun Pataleta 96dc92f099 Merge branch 'MDL-68353-master' of git://github.com/rezaies/moodle 2020-05-29 22:26:03 +08:00
Eloy Lafuente (stronk7) e4ca875954 MDL-67518 phpunit: avoid DB sorting randomness in test
While reading from mdl_config, sometimes this test was failing
because an order was being presumed. Now we convert the records
array to an associative one to perform tests against it.
2020-05-29 16:26:01 +02:00
Ferran Recio 709cab79ed MDL-68826 behat: new step I close all opened windows 2020-05-29 13:34:13 +02:00
Víctor Déniz Falcón f30d1fd6c6 MDL-68858 core_contentbank: added scrollable dropdown and missing icons 2020-05-29 11:57:01 +01:00
Sara Arjona 2e324c14bf weekly release 3.9dev+ 2020-05-29 12:52:25 +02:00
Sara Arjona 78cc20d266 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-29 12:52:22 +02:00
Shamim Rezaie dce43c7677 MDL-68353 test: Update existing tests to work with file elements 2020-05-29 14:50:35 +10:00
Shamim Rezaie 58994fe8bb MDL-68353 test: Update filemanager/filepicker xpath selector 2020-05-29 14:50:35 +10:00
Shamim Rezaie 9b6efe3aea MDL-68353 test: get_field_locator to support custom field labels 2020-05-29 14:50:35 +10:00
Shamim Rezaie 9c60fd18a7 MDL-68353 form: filepicker label fix 2020-05-29 14:50:32 +10:00
Shamim Rezaie 4ceff26fdf MDL-68353 admin: Not use label tag in admin setting elements when needed 2020-05-29 14:37:05 +10:00
Shamim Rezaie 65b73df1c9 MDL-68353 message: enclose privacy settings within a fieldset 2020-05-29 14:37:05 +10:00
Shamim Rezaie 08be893a36 MDL-68353 core: replace invalid labels with div 2020-05-29 14:37:05 +10:00
Shamim Rezaie f792b0ace4 MDL-68353 form: filemanager label fix 2020-05-29 14:37:01 +10:00
Michael Hawkins c36f37dfb4 MDL-68612 user: Fixed delete participants filter row execution order
This ensures that when deleting the penultimate filter, the filterset
join type is reset before the filters are re-applied.
2020-05-29 12:18:39 +08:00
Michael Hawkins 3d60881d5d MDL-68612 user: Participants filter row accessibility improvements
More clearly defining each filter row and its ability to remove
filter selections for screen readers.
2020-05-29 12:18:39 +08:00
Michael Hawkins 03cb6064ea MDL-68612 user: Unified filter deprecations - renderer and renderable 2020-05-29 12:18:39 +08:00
Michael Hawkins 2396e3156f MDL-68612 user: Unified filter deprecations - related library functions 2020-05-29 12:13:26 +08:00
Jun Pataleta 61dac48752 Merge branch 'MDL-64175-master' of git://github.com/sarjona/moodle 2020-05-29 12:01:50 +08:00
Jun Pataleta 323f5f46c7 Merge branch 'MDL-68855-master' of git://github.com/cescobedo/moodle 2020-05-29 11:48:46 +08:00
Shamim Rezaie 5dad4a95ac MDL-68353 form: Only include the size attribute if there is a size set 2020-05-29 13:17:08 +10:00
Shamim Rezaie c2e48a1d85 MDL-68353 form: Removed the size attribute
The size attribute does not work with the checkbox input type.
2020-05-29 13:17:08 +10:00
Shamim Rezaie e2aefa3ba8 MDL-68353 core: do not output empty labels 2020-05-29 13:17:08 +10:00
Shamim Rezaie 1b4acd4f3f MDL-68353 core: Set aria-label for close buttons on YUI dialogues 2020-05-29 13:17:08 +10:00
Jake Dallimore cfe32a7caf Merge branch 'MDL-68802-master' of https://github.com/HuongNV13/moodle 2020-05-29 10:53:57 +08:00
Michael Hawkins f626308193 MDL-68612 user: Unified filter deprecations - mustache template 2020-05-29 10:10:33 +08:00
Michael Hawkins 9e8aa94b88 MDL-68612 user: Unified filter deprecations - JavaScript 2020-05-29 10:10:33 +08:00
Michael Hawkins 624635fb02 MDL-68612 core: Unified filter deprecations - language string 2020-05-29 10:10:33 +08:00
Michael Hawkins 9e791ff7f5 MDL-68612 lib: Reverting filter/filterset default join types to match UI
These had temporarily been set to ALL for consistency while the unified
filter remained in use. Now that is being replaced with the new UI, it
can be returned to its intended default.
2020-05-29 10:10:33 +08:00
Michael Hawkins d85315ee8c MDL-68612 user: Update participants group filtering to enforce groups
This is required to ensure regardless of user applied filters, only
members of groups visible to the user are ever fetched. This also
includes a fix to remove the groups filter option where no groups
mode is applied.
2020-05-29 10:10:33 +08:00
Michael Hawkins d53dd31f05 MDL-68612 user: Remove unified filter from participants page 2020-05-29 10:10:33 +08:00
Mike Churchward 9e8e75a05a MDL-68866 accesslib: Fixing parameter documentation. 2020-05-28 22:01:22 -04:00
AMOS bot c5bffc445a Automatically generated installer lang files 2020-05-29 00:07:42 +00:00
Sara Arjona 936bc084fd Merge branch 'MDL-68854-master' of git://github.com/vmdef/moodle 2020-05-28 18:11:35 +02:00
Sara Arjona 471cc93a45 Merge branch 'MDL-68583-master-fix' of github.com:sarjona/moodle 2020-05-28 17:58:51 +02:00
Sara Arjona 582481c3e9 MDL-68583 core_course: add missing spaces 2020-05-28 17:57:26 +02:00
Sara Arjona f27e579cdd Merge branch 'MDL-68583-master' of https://github.com/kabalin/moodle 2020-05-28 17:42:52 +02:00
Víctor Déniz Falcón 37f2c91a8c Merge branch 'MDL-68209-master-2' of git://github.com/bmbrands/moodle 2020-05-28 16:37:21 +01:00
Sara Arjona 2b860436c9 MDL-64175 atto_media: update advanced settings
Some OS, such as Ubuntu, are slightly changing the audio attributes,
from <audio attribute1="true"> to <audio attribute1>.
This patch is for reviewing this piece of code and covering both cases.
2020-05-28 17:28:37 +02:00
cescobedo ec853bef8d MDL-68855 mod_h5pactivity: Add itemid to the package URL 2020-05-28 15:54:30 +02:00
Ruslan Kabalin 4993775900 MDL-68583 core_course: Fix category delete action menu.
Deletion form offers user a deletion with contents move option, it is
available when full deletion is not permitted. Action menu should take
this into account too and allow user to reach the form.
2020-05-28 14:30:04 +01:00
Víctor Déniz Falcón d4af0f4a74 MDL-68854 repository_contentbank: add size to content nodes 2020-05-28 13:30:38 +01:00
Víctor Déniz Falcón db1fb23ce2 Merge branch 'MDL-67813-master-1' of git://github.com/mihailges/moodle 2020-05-28 13:00:16 +01:00
Huong Nguyen 81d7fd7a80 MDL-68802 qtype_ddimageortext: issue related to keyboard navigation 2020-05-28 18:03:11 +07:00
Eloy Lafuente (stronk7) 6f56e743ed Merge branch 'MDL-68753-master-enfix' of git://github.com/mudrd8mz/moodle 2020-05-28 13:01:39 +02:00
Víctor Déniz Falcón a987c54539 Merge branch 'MDL-68746-master-fix' of git://github.com/sarjona/moodle 2020-05-28 11:46:39 +01:00
Sara Arjona 87fd36a696 Merge branch 'MDL-68244' of https://github.com/Chocolate-lightning/moodle 2020-05-28 12:42:39 +02:00
Sara Arjona e757f9c598 Merge branch 'MDL-68565' of https://github.com/paulholden/moodle 2020-05-28 12:00:21 +02:00
Paul Holden 3bd9e1e8d2 MDL-68565 tool_usertours: account for optional config in WS response. 2020-05-28 10:51:50 +01:00
Sara Arjona dcbc830cfa MDL-68746 core_badges: fix behat error with issuername 2020-05-28 11:20:46 +02:00
Shamim Rezaie 97cf42e0ef MDL-68312 grade: Fix empty links
If a link contains no text, the function or purpose of the link will not
be presented to the user. This can introduce confusion for keyboard and
screen reader users.
2020-05-28 19:18:38 +10:00
Shamim Rezaie 21d1a03b51 MDL-68312 output: Fix empty links
If a link contains no text, the function or purpose of the link will not
be presented to the user. This can introduce confusion for keyboard and
screen reader users.
2020-05-28 19:18:38 +10:00
Shamim Rezaie dfb326a8c6 MDL-68312 gradereport_grader: Remove adjacent links to the same URL 2020-05-28 19:18:38 +10:00
Shamim Rezaie cc0c1e2817 MDL-68312 gradereport_grader: replace invalid label by aria-describedby
The for attribute of the label element should not refer to a non-hidden
form control.
2020-05-28 19:18:38 +10:00
Shamim Rezaie 96896e0dd7 MDL-68312 gradereport_grader: Use caption instead of summary in table
The summary attribute on the table element is obsolete.
2020-05-28 19:18:38 +10:00
Eloy Lafuente (stronk7) f2e6b797b9 Merge branch 'MDL-68789-master' of git://github.com/crazyserver/moodle 2020-05-28 10:46:25 +02:00
Adrian Greeve 521b524368 Merge branch 'MDL-66911-master-fix' of git://github.com/junpataleta/moodle 2020-05-28 16:23:13 +08:00
Jun Pataleta a996318c9d MDL-66911 files: Update $CFG->licenses when adding/deleting licenses
* When creating custom licenses, the list of active licenses
  ($CFG->licenses) also needs to be updated. Same when a custom license
  is being deleted.
2020-05-28 16:15:15 +08:00
Jun Pataleta 1389465c29 MDL-66911 files: Use proper function for fetching enabled licenses 2020-05-28 15:23:38 +08:00
Jun Pataleta 4eaa7269a6 MDL-66911 files: Format full name of custom licenses 2020-05-28 15:20:14 +08:00
Pau Ferrer Ocaña aafe220a7b MDL-68789 behat: Rename the app from Moodle Mobile to Moodle app 2020-05-28 08:38:08 +02:00
Jake Dallimore 30604f81a8 Merge branch 'MDL-67903-master' of git://github.com/bmbrands/moodle 2020-05-28 13:58:50 +08:00
Jun Pataleta 0a1b55ce36 Merge branch 'MDL-67810-master' of git://github.com/vmdef/moodle 2020-05-28 12:19:25 +08:00
Mihail Geshoski 5cf21a3c27 MDL-67813 repository_contentbank: Add behat tests 2020-05-28 12:06:32 +08:00
Victor Deniz Falcon 7a82ee7ed6 MDL-67813 core: Add a manual 'enter' key press behat action step 2020-05-28 12:06:32 +08:00
Mihail Geshoski 8bb55dd5f9 MDL-67813 core: Add for attribute to search input label in filepicker
Adds the missing for attribute in the label that identifies the
search input in the filepicker. This is an accessibility improvement.
2020-05-28 12:06:32 +08:00
Mihail Geshoski f3fc0266ca MDL-67813 core_filepicker: Handle ElementNotFoundException in behat step
Catches and handles ElementNotFoundException if thrown in the
i_should_see_elements_in_filepicker_repository() behat step in order to
enable the assertion that no elements exist in the repository content
area
2020-05-28 12:06:31 +08:00
Mihail Geshoski 1bb6231b32 MDL-67813 core_contentbank: Add content name parameter in the generator 2020-05-28 12:06:31 +08:00
Mihail Geshoski 4f442eeaba MDL-67813 repository_contentbank: Add unit tests 2020-05-28 12:06:31 +08:00
Mihail Geshoski 966442c44e MDL-67813 repository_contentbank: Add search functionality 2020-05-28 12:05:39 +08:00
Jake Dallimore b08e4b5cd6 Merge branch 'MDL-68746-master' of git://github.com/sarjona/moodle 2020-05-28 11:56:23 +08:00
Adrian Greeve 9e1ace3fb5 Merge branch 'MDL-68822-master' of git://github.com/ferranrecio/moodle 2020-05-28 11:49:37 +08:00
deraadt 5143106813 MDL-68425 user: Add capability check for messaging 2020-05-28 11:23:42 +08:00
Bas Brands 457e61cd7b MDL-67874 core_filepicker: fix focus styles for filepicker folders 2020-05-28 10:34:02 +08:00
Adrian Greeve 4231b83668 Merge branch 'MDL-66911-38_core_file_add_license_help_to_fileselect' of https://github.com/tomdickman/moodle 2020-05-28 09:09:27 +08:00
Andrew Nicols 2ffc3bd5a2 Merge branch 'MDL-68846' of https://github.com/stronk7/moodle 2020-05-28 07:35:10 +08:00
Michael Hawkins a4bd55725b MDL-68829 user: Update participants SQL for Oracle/MSSQL compatibility
This refactors the SQL to join on a distinct list of users, removing
the need for GROUP BY statements, and fixing the related errors in
Oracle/MSSQL
2020-05-28 00:28:34 +02:00
Eloy Lafuente (stronk7) a0e38e4371 MDL-68846 behat: Avoid asserting AM/PM strings. They are not cross-os
The exists/contains steps of behat are case-sensitive, in the other
side, depending of the OS and locales, time functions are not 100%
consistent. See https://bugs.php.net/bug.php?id=76378 for example.

So only solutions are:

1) Create a specific new step performing the checks case insensitively.
2) Avoid making AM / PM part of the checks.

Here we have opted by the 2nd approach, it's not critical part to check.
2020-05-27 17:55:32 +02:00
Bas Brands c393d8185a MDL-68796 core_contentbank: Store view preferences
includes privacy export, privacy unit test
2020-05-27 17:27:23 +02:00
Bas Brands 5fe7bcdb30 MDL-68209 core_course: improve activity chooser styling 2020-05-27 16:49:23 +02:00
Thomas.Ludwig 9bdd83c9fd MDL-67903 core_grades: remove outdated CSS for grade import form 2020-05-27 15:58:53 +02:00
Sara Arjona 8e1b43f0d5 Merge branch 'MDL-68343-master' of git://github.com/rezaies/moodle 2020-05-27 15:09:39 +02:00
Mikel Martín 22a80863d5 MDL-68844 formslib: Fix inline layout for static elements 2020-05-27 13:18:35 +02:00
Sara Arjona 20bbb473cf Merge branch 'MDL-68667-master' of git://github.com/aanabit/moodle 2020-05-27 12:26:46 +02:00
Víctor Déniz Falcón c49d8663ad MDL-67810 core_contentbank: contenttype_h5p editor integrated 2020-05-27 10:27:55 +01:00
Victor Deniz Falcon 613281cd25 MDL-67810 core_contentbank: placed the edit action in the view page 2020-05-27 10:27:13 +01:00
Victor Deniz Falcon a99dab944f MDL-67810 core_contentbank: contentype_h5p modified to support add menu 2020-05-27 10:27:13 +01:00
Víctor Déniz Falcón 75f58cbfa2 MDL-67810 core_contentbank: added dropdown menu to create content 2020-05-27 10:27:13 +01:00
Jun Pataleta 7fb2f4d1a5 Merge branch 'MDL-67828-master' of git://github.com/rezaies/moodle 2020-05-27 16:48:03 +08:00
David Mudrák 2615e429f4 MDL-68753 lang: Remove a redundant okay string and use "OK" everywhere
The "Ok" (with lower-case "k") string was added in MDL-68409 to keep
backwards compatibility with YUI alerts that had it hard-coded. But we
should not need to explain to translators why we have two OK strings
like this and why they use different wording.

Additionally, there would be inconsistency in Behat tests and everywhere
depending on which "OK" or "Ok" string is used for buttons.

So instead, this patch changes the hard-coded 'Ok' string in the YUI and
we should stick to "OK" from now on everywhere.
2020-05-27 09:59:44 +02:00
David Mudrák c47b174d44 MDL-68753 lang: Use the updated strings in the tests 2020-05-27 09:59:35 +02:00
Sara Arjona 3d0541c03a Merge branch 'MDL-68758-master' of git://github.com/peterRd/moodle 2020-05-27 09:46:47 +02:00
Jun Pataleta d5eec2a2fd Merge branch 'MDL-67743-master-final' of git://github.com/andrewnicols/moodle 2020-05-27 14:51:25 +08:00
Jake Dallimore 5a0d8a7eaf Merge branch 'MDL-52138-master-take4' of git://github.com/lucaboesch/moodle 2020-05-27 14:24:51 +08:00
Peter Dias 31788c8cf2 MDL-68758 core_repository: Allow ability to download files on all views. 2020-05-27 14:20:15 +08:00
Jake Dallimore 0fbc2c11f5 Merge branch 'MDL-67874-master' of git://github.com/bmbrands/moodle 2020-05-27 13:54:51 +08:00
Andrew Nicols 04ce665a98 Merge branch 'MDL-68765-master' of https://github.com/ised-isde-canada/moodle 2020-05-27 12:49:39 +08:00
Andrew Nicols 28bff4cff4 Merge branch 'master_MDL-68054' of https://github.com/danmarsden/moodle 2020-05-27 12:12:27 +08:00
Andrew Nicols 6cb3444f22 MDL-67743 user: Remove incorrect ARIA role on autocomplete
The autocomplete is not a listbox so cannot be multiselectable.
2020-05-27 11:52:01 +08:00
Andrew Nicols c4bd1858db MDL-67743 table: Sort direction is an integer 2020-05-27 11:16:24 +08:00
Jun Pataleta 039fc86902 Merge branch 'MDL-68750-master' of git://github.com/andrewnicols/moodle 2020-05-27 11:03:54 +08:00
Adrian Greeve 6f17ec9181 Merge branch 'MDL-68788' of https://github.com/Chocolate-lightning/moodle 2020-05-27 10:55:20 +08:00
Michael Hawkins f637640f01 MDL-68678 user: Made filterset match text clearer
Part of MDL-67743
2020-05-27 10:49:44 +08:00
Bas Brands 6881ca38d7 MDL-68259 user: add styling to participant filters
Part of MDL-67743
2020-05-27 10:49:44 +08:00
Andrew Nicols 110f3ebf54 MDL-68169 user: Limit the number of filter conditions
Part of MDL-67743
2020-05-27 10:49:44 +08:00
Andrew Nicols 028ec17c94 MDL-68169 user: Add keyword filter
Part of MDL-67743
2020-05-27 10:49:44 +08:00
Andrew Nicols fbcc657713 MDL-68169 user: Add accesssince filter
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols fa3d57fe7e MDL-68169 user: Add enrolment instance filter
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols de83d4357f MDL-68169 user: Add groups filter
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols ffc933ad46 MDL-68169 user: Add roles filter
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols f14df62d1a MDL-67917 user: Use custom templates for participant value selection
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols 1be0f90c6f MDL-67917 core: Add custom template support to autocomplete
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols 77ba77f10a MDL-67917 user: Add skeleton for new participants filter
Part of MDL-67743

AMOS BEGIN
  CPY [select,core],[selectfiltertype,core_user]
AMOS END
2020-05-27 10:49:43 +08:00
Andrew Nicols f456195599 MDL-67917 core: Return newly added nodes from template helpers
Part of MDL-67743
2020-05-27 10:49:43 +08:00
Andrew Nicols ddf6e48156 MDL-68750 tool_dataprivacy: Correct behat test modal checks 2020-05-27 10:40:30 +08:00
Mihail Geshoski 5e62e4b25f MDL-68723 filepicker: Display parent content in filemanger tree view 2020-05-27 08:51:17 +08:00
Ilya Tregubov d83bf6e0ff MDL-68203 restore: Decode quiz links when restore into existing course
or duplicating.
2020-05-27 10:38:40 +10:00
Tom Dickman 2228ca31a2 MDL-66911 core files: Add license help to file selector
This improvement adds a help icon to the 'Choose license' option
providing links to further information on each license.
Utilise templates for license links to avoid code reuse.
2020-05-27 08:36:48 +10:00
Eloy Lafuente (stronk7) 08c6eca7e9 Merge branch 'MDL-68789-master' of git://github.com/crazyserver/moodle 2020-05-26 23:43:05 +02:00
Luca Bösch 543f36a5aa MDL-52138 core_grades: gradebook striped styling 2020-05-26 23:33:03 +02:00
Eloy Lafuente (stronk7) 68fd8d8bdf on-demand release 3.9dev+ 2020-05-26 22:52:49 +02:00
Claude Vervoort 4801550180 MDL-68800 mod_lti: fix domain matching launches for 1.3 2020-05-26 16:35:16 -04:00
Sara Arjona 54b97575d1 Merge branch 'MDL-68388' of https://github.com/stronk7/moodle 2020-05-26 20:03:22 +02:00
Helen Foster 026a12ec51 MDL-68753 lang: Import fixed English strings (en_fix) 2020-05-26 19:18:23 +02:00
Eloy Lafuente (stronk7) 60fe1f8c9d MDL-68388 core_grades: Tweak unit test assertion to make Oracle happy
Also modify some comments and get rid of some void return types.
2020-05-26 19:00:24 +02:00
Shamim Rezaie 3b3269ee1d MDL-67828 calendar: Fix the js error in IE11 2020-05-27 02:36:55 +10:00
Ferran Recio 5567c5e833 MDL-68822 mod_h5pactivity: add description to view.php 2020-05-26 17:29:40 +02:00
Claude Vervoort 6f85c23d7f MDL-68800 mod_lti: apply format fixes per guidelines 2020-05-26 10:49:50 -04:00
Sara Arjona 309b4d0111 Merge branch 'MDL-67386-master-hotfix' of github.com:bmbrands/moodle 2020-05-26 16:23:20 +02:00
Bas Brands 203eed43e2 MDL-67386 theme_classic: initialize the bootstrap loader. 2020-05-26 14:20:33 +02:00
Bas Brands f7a3f554b7 MDL-68828 theme_classic: fix for mobile
- setting a max width so the page does not overflow its container on
mobile
- fixing dashboard cards to be 100% wide on mobile
2020-05-26 14:08:05 +02:00
Bas Brands 91de0ed823 MDL-67874 theme_boost: make focus outline accessible 2020-05-26 09:54:12 +02:00
Andrew Nicols a2bc97a386 MDL-68750 analytics: Correct behat test modal checks 2020-05-26 12:55:29 +08:00
Andrew Nicols 89db84b5b1 MDL-68750 core_tag: Add missing confirmation dialogue title 2020-05-26 12:55:29 +08:00
Andrew Nicols 8985c478ce MDL-68750 behat: Correct dialogue selector 2020-05-26 12:55:29 +08:00
Jun Pataleta 8aa0f2c4d8 Merge branch 'MDL-45184-master' of git://github.com/junpataleta/moodle 2020-05-26 12:39:24 +08:00
Jun Pataleta 86c0f3cfd0 MDL-45184 tool_licensemanager: Behat fixes
* Fix license manager test
* Remove unnecessary @javascript tags
* Remove unnecessary "I log out" steps
* Fix structure so each scenario will have a single Given-When-Then
2020-05-26 12:29:09 +08:00
Jun Pataleta cd4ec9b33b MDL-45184 tool_licensemanager: Move $deletelicense for proper scope 2020-05-26 12:11:07 +08:00
Andrew Nicols fa197fbf09 Merge branch 'MDL-68099-master' of git://github.com/marinaglancy/moodle 2020-05-26 11:29:48 +08:00
Adrian Greeve b2978c1787 Merge branch 'MDL-68757' of https://github.com/timhunt/moodle 2020-05-26 10:33:03 +08:00
Andrew Nicols 17238ab079 MDL-68388 grade: Tidy comments and whitespace 2020-05-26 10:15:52 +08:00
Andrew Nicols a7aaf91855 Merge branch 'MDL-68388' of https://github.com/marcusboon/moodle 2020-05-26 10:11:08 +08:00
Tom Dickman 4399e4759a MDL-45184 tool_licenses: Add custom licenses
This feature adds an admin tool for creating custom licenses.
Now custom licenses can be added and amended in Moodle, and the site
default can be set to a custom license.

Core licenses remain hard-coded and are uneditable, so they will always
require update within Moodle core updates, and maintain their
internationalisation through core language strings.

This also includes fundamental changes to the license API including
the addition of license caching and deprecation of no longer required
admin settings for license management.
2020-05-26 12:08:05 +10:00
Andrew Nicols ecf526566a Merge branch 'MDL-64427' of https://github.com/NeillM/moodle 2020-05-26 10:04:51 +08:00
Andrew Nicols 7d02452504 Merge branch 'MDL-67547' of https://github.com/paulholden/moodle 2020-05-26 08:06:39 +08:00
Andrew Nicols 1a3a864a4a Merge branch 'MDL-68270-master' of git://github.com/bmbrands/moodle 2020-05-26 08:02:50 +08:00
Victor Deniz Falcon a735d4d1d4 Merge branch 'MDL-68252' of https://github.com/timhunt/moodle 2020-05-26 00:55:02 +01:00
Paul Holden f8f5a2f6da MDL-67547 mod_forum: convert pluginfile URLs prior to export. 2020-05-26 00:54:51 +01:00
Paul Holden 233a51ad21 MDL-67547 dataformat_pdf: method to convert images to supported format.
For Dataformats that support exporting HTML content, provide an API for
converting images within that content to something suitable for the format.

This fixes an issue with the PDF writer when it encountered a pluginfile.php
image, which it tried to request via HTTP without an active session. This
resulted in a 303 header returned by Moodle instead of the actual image,
causing an exception in the underlying TCPDF library.
2020-05-26 00:54:27 +01:00
Adrian Greeve ef17275726 Merge branch 'MDL-68348-master-6' of git://github.com/mickhawkins/moodle 2020-05-26 07:48:53 +08:00
Marcus Boon f1f5ba36ad MDL-68388 core_grades: Use MUC for grade letters
In the get_grade_letters there is a static variable that is used
to cache grade letters, we should use MUC for this so that it is
reset properly between unit tests.
2020-05-26 09:06:50 +10:00
Amaia Anabitarte f9c094e214 MDL-68667 repository_contentbank: Filename and content name use test 2020-05-25 18:44:53 +02:00
Amaia Anabitarte 67e3378c56 MDL-68667 filepicker: Use shortitle parameter 2020-05-25 18:44:53 +02:00
Amaia Anabitarte f9d2635f7f MDL-68667 core_contentbank: Fix content generator to use filename 2020-05-25 18:44:53 +02:00
Sara Arjona a706f7161f Merge branch 'MDL-67386-master-fix' of github.com:sarjona/moodle 2020-05-25 17:58:39 +02:00
Sara Arjona 36e2a9af84 MDL-67386 theme_boost: update latest CSS changes 2020-05-25 17:57:34 +02:00
Sara Arjona 028d43b37d Merge branch 'MDL-67386-master' of git://github.com/bmbrands/moodle 2020-05-25 17:46:41 +02:00
Sara Arjona 16b55f1cad Merge branch 'MDL-68177-master_course_renderer_split_methods' of https://github.com/roland04/moodle 2020-05-25 17:11:03 +02:00
Mikel Martín ebd08abce8 MDL-68177 course: split course_info_box into different methods 2020-05-25 16:14:37 +02:00
Bas Brands f0947b944c MDL-68270 core_output: prevent blurring of navbar logo 2020-05-25 15:48:52 +02:00
Bas Brands 6a4ce7b0a3 MDL-67386 theme_boost: upgrade bootstrap to version 4.5.0 2020-05-25 15:48:17 +02:00
Sara Arjona 1b88f7567a Merge branch 'MDL-68819-master' of git://github.com/lucaboesch/moodle 2020-05-25 15:47:44 +02:00
Pau Ferrer Ocaña a87aa36ad9 MDL-68789 behat: Change app page menu text selector 2020-05-25 14:53:18 +02:00
Andrew Nicols b5b9166831 Merge branch 'MDL-68103-master' of git://github.com/bmbrands/moodle 2020-05-25 19:55:11 +08:00
Bas Brands 9d2d2c2beb MDL-68103 theme_classic: show content full width when printing 2020-05-25 13:48:42 +02:00
Andrew Nicols 35f5bf4abc Merge branch 'MDL-68549' of https://github.com/HuongNV13/moodle 2020-05-25 19:10:21 +08:00
Michael Hawkins d26b3ad524 MDL-68348 user: Added filterset joins unit testing 2020-05-25 18:35:08 +08:00
Michael Hawkins 4fa636330f MDL-68348 user: Added other logical operators to filter unit tests 2020-05-25 18:35:08 +08:00
Michael Hawkins 6a54e58a8c MDL-68348 user: User filter match types support - enrol method & status
Completed support for all join types (any/all/none) for enrolment
method and status filtering. This includes handling forced status
filtering where a user does not have the capability to view suspended
users, as well as handling front page (whole site) participants page.
2020-05-25 18:35:08 +08:00
Michael Hawkins 03397c817b MDL-68348 lib: User filter match types support - groups
Updated groups_get_members_join to support different filter match types
2020-05-25 18:35:08 +08:00
Michael Hawkins 25d9dabdcf MDL-68348 user: User filter match types support - keywords/last access
The last access implementation also fixes an existing bug,
where it was assumed never accessed would be 0, when it also needed to
handle null to return correct results. Related userlib unit tests also
updated to reflect this, as well as some incorrect comment wording.
2020-05-25 18:35:08 +08:00
Michael Hawkins 4157e2d4f3 MDL-68348 lib: Added create_user_course_lastaccess generator
This creates a last access record for a user within a course.
It is requires for testing accesssince participants filtering.
2020-05-25 18:10:53 +08:00
Michael Hawkins 25d5be444f MDL-68348 user: User filter match types support - filterset and roles 2020-05-25 18:10:53 +08:00
Michael Hawkins 3f069a2c48 MDL-68348 lib: Default filters to match ALL for backwards compatibility
Temporarily defaulting filtersets and their filters to join type ALL
for backwards compatibility, so the existing participants unified
filter continues to function consistently. This will be reverted once
the new participants filter UI replaces the existing unified filter.
2020-05-25 18:10:53 +08:00
Sara Arjona 71dbe42c64 Merge branch 'MDL-68248-master' of https://github.com/DinhHien0307/moodle 2020-05-25 11:59:24 +02:00
Nick Phillips 7a2baafc96 MDL-68103 theme_classic: hidden-print => d-print-none for BS4. 2020-05-25 11:40:14 +02:00
Sara Arjona 9073ed9355 Merge branch 'MDL-68448-master-fix' of github.com:sarjona/moodle 2020-05-25 11:37:41 +02:00
Sara Arjona 0a7c9b9d63 MDL-68448 h5pactivity: remove illegal whitespaces 2020-05-25 11:35:15 +02:00
Sara Arjona 51b3feb2e9 Merge branch 'MDL-68448-master' of git://github.com/cescobedo/moodle 2020-05-25 10:56:18 +02:00
Mathew May a2fc851738 MDL-68244 auth_email: Update unit test, remove hard assertion 2020-05-25 16:37:49 +08:00
Adrian Greeve e1f4258906 Merge branch 'MDL-68629_master' of https://github.com/t-schroeder/moodle 2020-05-25 16:14:54 +08:00
Jake Dallimore 33294da864 Merge branch 'MDL-62853' of https://github.com/paulholden/moodle 2020-05-25 16:11:55 +08:00
Andrew Nicols d3503c76b4 Merge branch 'MDL-68658' of https://github.com/stronk7/moodle 2020-05-25 15:23:37 +08:00
cescobedo 9fa0e253ae MDL-68448 mod_h5pactivity: Add new ws get_h5pactivities_by_courses
This WS is required by the Moodle app in order to fetch
the activity information for displaying it to app users.
2020-05-25 09:12:20 +02:00
cescobedo 14b463c92a MDL-68448 core_h5p: Add get export information to helper
Create a new method in the helper to use in the player,
in the external WS and in the API. Also, add a
new method in API to help to get export information
by other WS.
2020-05-25 09:12:06 +02:00
Adrian Greeve d602189874 Merge branch 'MDL-63812' of https://github.com/timhunt/moodle 2020-05-25 14:40:14 +08:00
Jake Dallimore 4404ced7f7 Merge branch 'MDL-68567-master' of git://github.com/sarjona/moodle 2020-05-25 11:36:48 +08:00
Luca Bösch 937c7e5f0c MDL-68819 core_contentbank: "Upload" button is not localized. 2020-05-24 21:52:43 +02:00
Sara Arjona 968016a38d Merge branch 'MDL-68592-master' of https://github.com/kabalin/moodle 2020-05-22 17:55:23 +02:00
Sara Arjona 4955d9279f Merge branch 'MDL-68619-master' of git://github.com/ferranrecio/moodle 2020-05-22 17:49:32 +02:00
Eloy Lafuente (stronk7) 200570558d MDL-68658 phpunit: Ensure that the configured proxy is applied always
Previously, if the RSS feed (extests) was being served locally,
CFG->proxybypass was applied and causing the test to fail (proxy
ignored).

In that exact test we need the configured proxy to be applied
always, because the test is exaclty about detecting the problem
when a wrong proxy is used.
2020-05-22 17:07:05 +02:00
Pau Ferrer Ocaña 9afc6b78c3 MDL-68789 behat: Adapt login step to new app version 2020-05-22 16:17:29 +02:00
Victor Deniz Falcon 71965a8572 weekly release 3.9dev+ 2020-05-22 14:21:37 +01:00
Victor Deniz Falcon bbd1b742ef Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-22 14:21:32 +01:00
Jake Dallimore 0facda5eaa Merge branch 'MDL-68367-master-fix' of git://github.com/junpataleta/moodle 2020-05-22 15:10:04 +08:00
Sara Arjona a80541ea90 MDL-68567 badges: add/remove site backpacks 2020-05-22 09:01:59 +02:00
Jun Pataleta 20a660f864 MDL-68367 qtype_multichoice: Decrease minimum expected export file size
* Exporting via Oracle trims trailing zeroes in floating numbers which
results to a smaller file size for the exported file. Better to reduce
the minimum expected export file size from 4000 bytes to 3900 bytes.
2020-05-22 14:45:05 +08:00
Andrew Nicols cc29e04f27 Merge branch '68137-master-prevent-removing-all-dots-in-filename' of https://github.com/DSI-Universite-Rennes2/moodle 2020-05-22 11:53:22 +08:00
Jake Dallimore 3f99406350 Merge branch 'MDL-68143-master' of https://github.com/HuongNV13/moodle 2020-05-22 11:52:31 +08:00
Jun Pataleta 87decf6e00 Merge branch 'MDL-65796' of https://github.com/paulholden/moodle 2020-05-22 11:50:53 +08:00
Andrew Nicols 4e9641c2d1 Merge branch 'MDL-57240' of https://github.com/timhunt/moodle 2020-05-22 11:37:38 +08:00
Andrew Nicols a15175eab4 Merge branch 'MDL-68446' of https://github.com/timhunt/moodle 2020-05-22 11:32:01 +08:00
Andrew Nicols 6c0ffdd7ff Merge branch 'MDL-68783-master' of git://github.com/junpataleta/moodle 2020-05-22 11:21:47 +08:00
Andrew Nicols e1657e3c07 Merge branch 'MDL-68661-rebase' of https://github.com/Chocolate-lightning/moodle 2020-05-22 11:12:46 +08:00
Jun Pataleta 929bb27c21 Merge branch 'MDL-68508-master' of git://github.com/andrewnicols/moodle 2020-05-22 11:06:16 +08:00
Andrew Nicols c225a42c19 Merge branch 'MDL-67700-master' of git://github.com/ferranrecio/moodle 2020-05-22 10:51:31 +08:00
Andrew Nicols a31a2b6d54 MDL-68508 core_table: Improve sorting to support sorting by multiple columns 2020-05-22 10:42:30 +08:00
Jake Dallimore 77dddebdb9 Merge branch 'MDL-58645-master' of https://github.com/HuongNV13/moodle 2020-05-22 10:35:27 +08:00
Mathew May 7f86455237 MDL-68661 core_lang: Roll back addresourceoractivity 2020-05-22 10:02:57 +08:00
Andrew Nicols cd08d856c6 MDL-68493 contentbank: Whitespace fixes 2020-05-22 09:21:21 +08:00
Andrew Nicols ae2e417a19 Merge branch 'MDL-68493-master' of git://github.com/bmbrands/moodle 2020-05-22 09:04:57 +08:00
Eloy Lafuente (stronk7) 7a92c63663 Merge branch 'MDL-65306-resourceid-onecommit' of https://github.com/cengage/moodle 2020-05-22 02:15:03 +02:00
Victor Deniz Falcon 57c40bd964 Merge branch 'MDL-39571-Master' of git://github.com/tuanngocnguyen/moodle 2020-05-21 22:28:32 +01:00
David Mudrák 59641dd5a6 MDL-68738 wiki: Prevent URLs inside links from turning into another link
There was a problem with wiki pages in the HTML markup syntax. If they
contain a link and the link text has a URL in it, that URL was converted
into another link. But it was not correctly nested and it caused
additional troubles with filters (particularly the multimedia filter if
the URL was a video such as on youtube).

The solution here is similar to what we do in filters. We protect the
whole explicit link so that its content is not further parsed. That
prevents the inner URL to be converted into another link and the
explicit link has the full control.
2020-05-21 21:12:02 +02:00
Sara Arjona e50e6d39ce Merge branch 'master_MDL-67497' of https://github.com/danmarsden/moodle 2020-05-21 19:00:26 +02:00
Ferran Recio f3ae94a41d MDL-68619 mod_h5pactivity: add results report webservice 2020-05-21 18:37:54 +02:00
Ferran Recio 42c48b6660 MDL-68619 mod_h5pactivity: add activity check to get_attempt method 2020-05-21 18:37:54 +02:00
Ferran Recio 778846987a MDL-67700 message: prevent async loading conversation message mix 2020-05-21 18:02:42 +02:00
Sara Arjona 48127bfec6 Merge branch 'MDL-66471' of https://github.com/paulholden/moodle 2020-05-21 17:33:12 +02:00
Andrew Nicols f2d33fcc11 Merge branch 'MDL-68439-master' of https://github.com/HuongNV13/moodle 2020-05-21 20:30:13 +08:00
Sara Arjona cca063e229 Merge branch 'MDL-67126_master' of https://github.com/ffhs/moodle 2020-05-21 13:34:59 +02:00
Ferran Recio 87eb65ab44 MDL-68619 mod_h5pactivity: correcting content generator 2020-05-21 12:49:30 +02:00
Huong Nguyen 51de017235 MDL-68439 qtype_ddwtos: UI issues
- Fixed cursor for dropped ddwtos
 - Fixed the animation of "flying back to the home position" starts off at the right end of the previous line"
2020-05-21 17:19:40 +07:00
Jun Pataleta 7750dd55e8 Merge branch 'MDL-68367' of https://github.com/mkassaei/moodle 2020-05-21 17:10:16 +08:00
Mahmoud Kassaei 00055ef6ab MDL-68367 Question: Multi-choice Option to hide systemtext 2020-05-21 09:47:15 +01:00
Mathew May eff7ef2cd2 MDL-68788 core_notification: Check if the user is logged in 2020-05-21 16:33:25 +08:00
Sara Arjona 5cc1d953bf Merge branch 'MDL-68451-master' of git://github.com/cescobedo/moodle 2020-05-21 08:30:31 +02:00
Jun Pataleta 7b66f81b90 Merge branch 'MDL-68568-master' of git://github.com/junpataleta/moodle 2020-05-21 14:26:54 +08:00
Sara Arjona e4426b3aff Merge branch 'MDL-68782-master' of git://github.com/aanabit/moodle 2020-05-21 08:23:46 +02:00
Adrian Greeve aa1dcabf4c Merge branch 'MDL-68733' of https://github.com/timhunt/moodle 2020-05-21 08:37:52 +08:00
AMOS bot 7984b52ae9 Automatically generated installer lang files 2020-05-21 00:07:15 +00:00
Eloy Lafuente (stronk7) a5a8ca5e62 Merge branch 'MDL-52578-master' of git://github.com/junpataleta/moodle 2020-05-21 00:51:10 +02:00
Eloy Lafuente (stronk7) 7ce7d21503 Merge branch 'MDL-66992-master' of https://github.com/tungthai/moodle 2020-05-21 00:48:30 +02:00
Amaia Anabitarte 8675e8ae6a MDL-68782 core_contentbank: Improving event unit tests 2020-05-20 22:37:30 +02:00
Michael Milette 17cc4735d7 MDL-68765 auth: Login form has DIV tag with 2 CLASS attributes. 2020-05-20 14:00:03 -04:00
cescobedo 887644a1d5 MDL-68451 mod_h5pactivity: Add info attempts in check_updates_since
Add updates information related to attempts in check_updates_since
because they may affect the user or the information displayed
in the app.
2020-05-20 18:50:21 +02:00
Jun Pataleta 01c8c667fc MDL-68568 editor_atto: Upgrade step for the new toolbar default layout
* emojipicker added to files
* indent moved to list
2020-05-21 00:39:00 +08:00
Mike Churchward b677d33d62 MDL-68568 editor-atto: Move 'indent' next to 'lists' by default. 2020-05-21 00:10:37 +08:00
Víctor Déniz Falcón 7380c31afe Merge branch 'MDL-67183' of git://github.com/timhunt/moodle 2020-05-20 15:54:14 +01:00
Sara Arjona 3cc0bab8ab Merge branch 'MDL-68617-master' of git://github.com/ferranrecio/moodle 2020-05-20 16:32:36 +02:00
Ferran Recio c09bc8d897 MDL-68617 mod_h5pactivity: add attempts report webservice 2020-05-20 16:28:45 +02:00
Bas Brands e695d9d0b6 MDL-68493 core_contentbank: implement list view 2020-05-20 16:27:58 +02:00
Sara Arjona 041afbeab5 Merge branch 'MDL-68780' of https://github.com/stronk7/moodle 2020-05-20 12:58:37 +02:00
Amaia Anabitarte 7a460fd5d5 MDL-68782 core_contentbank: Fixing undefined variable error 2020-05-20 12:42:44 +02:00
Ferran Recio 2f2cdd2a48 MDL-68617 mod_h5pactivity: add attempt info to generator 2020-05-20 12:09:28 +02:00
Sara Arjona 69d5a63b97 Merge branch 'MDL-68778-master' of git://github.com/andrewnicols/moodle 2020-05-20 11:47:27 +02:00
Jun Pataleta a7431ec3f1 Merge branch 'MDL-58866-master-2' of git://github.com/marinaglancy/moodle 2020-05-20 17:35:08 +08:00
Eloy Lafuente (stronk7) 5b188629c7 MDL-68780 unit tests: Add missing ->destroy() calls to controllers
Every backup and restore controller always need to call
to their ->destroy() method in charge of finalizing loggers,
closing file handlers and destroy some circular references.

This is specially important within unit tests, because
open resources cannot be reset between tests, causing problems,
specially within Windows that locks all those files.
2020-05-20 11:02:00 +02:00
Adrian Greeve 56287073d5 Merge branch 'MDL-68662' of https://github.com/Chocolate-lightning/moodle 2020-05-20 16:52:17 +08:00
Andrew Nicols a6adce6b9b Merge branch 'MDL-68577-redis-lock-tuning' of https://github.com/brendanheywood/moodle 2020-05-20 16:50:37 +08:00
Marina Glancy 185a00c874 MDL-58866 core_calendar: deprecation warning in upgrade.txt 2020-05-20 10:38:12 +02:00
Mathew May e146a2ca74 MDL-68662 core_course: Add new tabs to the chooser
We now have two more tabs in the chooser.
Activities & Resources aer now offered in different tabs.
2020-05-20 15:53:06 +08:00
Andrew Nicols fb4f19af80 MDL-68778 user: Add bulk action pendingjs checks 2020-05-20 15:45:24 +08:00
Neill Magill b26efcd861 MDL-64427 course: Mark activities during course contents deletion
When we want to delete all of the activities in a course we should
mark them as having a deletion in progress, as this makes them
unavailable to users immediately.

This should make it much less likely that a request to get a context
that does not exist should be made when a user accesses a page.
2020-05-20 08:27:53 +01:00
Neill Magill d92acd5dcc MDL-64427 course: Do not allow dirty cm_info during course delete
When deleting a course (especially one containing a large amount of
data) the course mod info cache could contain entries for deleted
activities for a signifcant amount of time making it possible that
users could see errors in Moodle.
2020-05-20 08:27:53 +01:00
Neill Magill 7289f5c0c1 MDL-64427 category: Stop error when another user deleting courses
If you try to visit a category where another user is deleting a
course the coursecat cache may not be fresh. This is because there
is a breif time where the course record will have been deleted,
while it is deleting other course information, before the event that
triggers the coursecat cache to be purged is fired.
2020-05-20 08:27:52 +01:00
Neill Magill 236a52c4de MDL-64427 category: Test getting category courses during deletion
Adding a unit test for the situation where a course is partially
deleted when a list of courses in a category is retrived.
2020-05-20 08:27:52 +01:00
Sara Arjona 630a19ebd5 MDL-68746 core_badges: remove Issuer details from badges form
When OBv2.0 support was added, the issuername and issuercontact
fields were changed to static.
In order to avoid confusion for the user, these fields shouldn't
be displayed for OBv2.0 or higher.
2020-05-20 08:51:52 +02:00
Brendan Heywood 8eab4f77cc MDL-68577 session: Fine tune the redis lock polling 2020-05-20 15:54:10 +10:00
Adrian Greeve 1c1fd15b18 Merge branch 'MDL-68333-master' of git://github.com/marinaglancy/moodle 2020-05-20 13:17:58 +08:00
Andrew Nicols db5be3a31c MDL-68778 user: Fetch select from selected option
It seems that the HTMLSelectElement behaves slightly different on Linux
vs MacOS.

On Linux with Firefox 47 when selecting an option the
HTMLOptionElement is returned, whereas on MavOS the HTMLSelectElement
that the Option belongs to is returned.

We need to normalise the value here before resetting the currently
selected item.
2020-05-20 13:17:50 +08:00
Jun Pataleta 0763480b33 MDL-68783 core_grades: Fix outcome page's add/remove button styles
* Applied proper styles of btn-secondary.
* Added some vertical spacing between the buttons by enclosing them in
divs with 'm-y-1' class instead of just a br tag.
2020-05-20 13:12:58 +08:00
Nathan Nguyen a9c139c8d4 MDL-39571 repository_recent: query improvement 2020-05-20 13:11:51 +10:00
Nathan Nguyen 1529fc7954 MDL-39571 repository_recent: add unit test 2020-05-20 12:48:17 +10:00
Jun Pataleta 3728866a5f MDL-52578 core_course: Peer review fixes
* Fetch parent category only when necessary.
* Fix outdated variable names in original patch.
* Fix variable scope for $outcomeexists.
2020-05-20 10:29:46 +08:00
Dan Marsden fe96a5528c MDL-68054 lib: viewhiddenactivities should be set as captype:read 2020-05-20 14:00:48 +12:00
Adrian Greeve 59d0090fda Merge branch 'MDL-67548-master' of https://github.com/kabalin/moodle 2020-05-20 08:35:18 +08:00
AMOS bot 1ec1cfff2d Automatically generated installer lang files 2020-05-20 00:07:22 +00:00
Andrew Nicols 6754ceae3a MDL-68464 user: Remove legacy selectall 2020-05-20 07:38:26 +08:00
Eloy Lafuente (stronk7) 31ffacb020 Merge branch 'MDL-68464-master-final' of git://github.com/andrewnicols/moodle 2020-05-20 00:17:53 +02:00
Tim Hunt 64207dab65 MDL-67183 questions: get_question & get_behaviour only init if required
This reviews all the code code, and sets $requirequestioninitialised
whenever possible in these calls, which should improve performance.
2020-05-19 20:52:07 +01:00
Tim Hunt 9cbbb779eb MDL-67183 question engine: allow lazy-init of question_attempts
That is, we don't call apply_attempt_state as soon as a
the data is loaded from the database. Instead, we wait
and only call it if really needed.

This should (especially after the next commit) be a performance win
during quizzes, particularly for people using advanced question
types liks STACK, or people making extensive use of the
'Try another question like this one' feature.
2020-05-19 20:49:33 +01:00
Víctor Déniz Falcón 676b8b8217 Merge branch 'MDL-68299-master' of git://github.com/bmbrands/moodle 2020-05-19 20:43:46 +01:00
Paul Holden be60a5d096 MDL-66471 user: fix user_selector debug about extra identity fields. 2020-05-19 19:12:35 +01:00
Steve Bader 604fb8c2a2 MDL-52578 core_course: Activity weight set to 0 on creation 2020-05-20 01:28:59 +08:00
Marina Glancy 5b529aca15 MDL-68333 testing: trigger user_created event in user generator 2020-05-19 19:11:54 +02:00
Marina Glancy d268c5bac3 MDL-58866 core_calendar: separate color for other events, icons 2020-05-19 19:04:15 +02:00
Marina Glancy 6f92c731e7 MDL-58866 block_timeline: do not display course if abscent 2020-05-19 19:04:15 +02:00
Marina Glancy 1a972b06f1 MDL-58866 core_calendar: allow component events 2020-05-19 19:04:13 +02:00
Sara Arjona 1afe68f382 weekly release 3.9dev+ 2020-05-19 17:54:25 +02:00
Sara Arjona a0caddb696 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-19 17:54:22 +02:00
Andrew Nicols 7f22867502 MDL-68463 core_user: Correct Show all link details 2020-05-19 14:16:25 +02:00
Juan Leyva 82d5547b8f MDL-68294 tool_mobile: Fix custom strings and limits calculation 2020-05-19 12:19:37 +02:00
Andrew Nicols fec9e9cce5 Merge branch 'srdjan-slave-conn' of https://github.com/srdjan-catalyst/moodle 2020-05-19 16:13:48 +08:00
Bas Brands 92bc86e429 MDL-68299 theme_boost: theme updates for accessible zoom
The Moodle UI should be functional in a viewport of 320px by 256px to
meet WCAG 1.4.10

this patch contains improvements to:
-prevent horizontal scrolling
-better wrapping of page header
-message drawer funtional on tiny screens
-remove indenting on courses
-prevent elements overlapping on quiz editing
-better navigation tabs
-fix colour picker
-quiz editing
2020-05-19 10:13:20 +02:00
Srdjan 317432cacc MDL-19711 dml: call mysqli::real_connect() with @ 2020-05-19 18:09:14 +10:00
Juan Leyva 509a4c5865 MDL-68294 tool_mobile: Fix key and default apps values 2020-05-19 09:24:26 +02:00
Srdjan 3612d0b8b9 MDL-19711 dml: Fix undefined $dberr
In mysqli_native_moodle_database::raw_connect()
2020-05-19 17:02:05 +10:00
Ferran Recio 99374e7e14 MDL-67700 message: correcting conversation timer reset 2020-05-19 08:38:26 +02:00
Andrew Nicols abc83c40b5 MDL-68464 enrol_manual: Comment out buggy behat line
This is commented out because auto-hidden toasts currently call `hide()`
and trigger the `bs.toast.hide` event immediately, and _then_ apply the
autohide delay.

Since we automatically add M.util.pending_js calls when we _start_ to
hide, and resolve them when the hide _finishes_, this means that we do:
- addToast called
- trigger `bs.toast.show` event
- add to pending_js
- [pending_js queue not empty - behat waits]
- message is shown in UI
- `hide()` called
- trigger `bs.toast.hide` event
- add to pending_js
- [pending_js queue not empty - behat waits]
- start autohide delay
- [pending_js queue not empty - behat waits]
- [pending_js queue not empty - behat waits]
- [pending_js queue not empty - behat waits]
- [pending_js queue not empty - behat waits]
- end autohide delay
- remove message (no longer present in DOM)
- trigger `bs.toast.hidden` event
- resolve pending_js
- [pending_js queue empty - behat stops waiting]
- Behat runs next step: And I should see "1 enrolled users"
-- Step fails beacuse the message has been shown, and has then been removed

The conversation should have been:
- addToast called
- trigger `bs.toast.show` event
- add to pending_js
- [pending_js queue not empty - behat waits]
- message is shown in UI
- start autohide delay
- trigger `bs.toast.shown` event
- resolve pending_js
- [pending_js queue empty - behat stops waiting]
- Behat runs next step: And I should see "1 enrolled users"
-- Step passes
- autohide delay ends and calls `hide()`
- trigger bs.toast.hide event
- add to pending_js
- [behat waits]
- end autohide delay
- remove message (no longer present in DOM)
- trigger `bs.toast.hidden` event
- resolve pending_js
- [pending_js queue empty - behat stops waiting]
- Behat run continues

See MDL-67386 for futher information.
2020-05-19 12:37:21 +08:00
Andrew Nicols e0e7b19f9c MDL-68464 enrol_manual: Reload participants table after enroling 2020-05-19 12:37:21 +08:00
Andrew Nicols c50f5af248 MDL-68464 enrol_manual: Rewrite quickenrolment to use ES6 2020-05-19 12:33:40 +08:00
Andrew Nicols ab6ca1d5c9 Merge branch 'srdjan-slave-conn' of https://github.com/srdjan-catalyst/moodle 2020-05-19 12:29:20 +08:00
Jun Pataleta f46b5f5f28 Merge branch 'MDL-68463-master-3' of git://github.com/andrewnicols/moodle 2020-05-19 12:24:14 +08:00
Andrew Nicols 50ba817fda MDL-68463 user: Show count link should always exist in DOM 2020-05-19 12:18:15 +08:00
Jun Pataleta b81c2a3475 Merge branch 'MDL-68528-master' of git://github.com/andrewnicols/moodle 2020-05-19 11:46:39 +08:00
Andrew Nicols bc9426c879 MDL-68528 js: Normalise core component for template strings 2020-05-19 11:40:44 +08:00
Andrew Nicols ed0328397a MDL-68528 js: Normalise empty component to "core" for string 2020-05-19 11:37:55 +08:00
Srdjan 46cfde3d95 MDL-19711 dml: Enable use of readonly slave database handles
Implemented with moodle_read_slave_trait

Functionality is triggered by supplying config dboption['readonly'].
See config-dist.php for more info on supported dboptions.

pgsql and mysqli drivers are using this feature. Also added support for
connection timeout for these two drivers.
2020-05-19 11:50:42 +10:00
AMOS bot df35cf110e Automatically generated installer lang files 2020-05-19 00:07:17 +00:00
Eloy Lafuente (stronk7) 4c6a9740f7 Merge branch 'MDL-68656-master' of https://github.com/catalyst/moodle 2020-05-19 01:13:22 +02:00
Tim Hunt 89c8a076b2 MDL-68733 quiz editing: behat test for altering random question tags 2020-05-18 23:20:10 +01:00
Bence Molnar 9024289626 MDL-68733 quiz editing: be more careful deleting random question tags 2020-05-18 22:56:33 +01:00
Tim Hunt c689726d3f MDL-68733 question behat: question tag generator and use in quiz test 2020-05-18 22:56:33 +01:00
Tim Hunt 4a45b7112c MDL-68757 questions: don't do output in low-level functions 2020-05-18 20:54:27 +01:00
Sara Arjona 2418c12c60 Merge branch 'MDL-68760' of https://github.com/timhunt/moodle 2020-05-18 20:33:05 +02:00
Sara Arjona 0a3efb5689 Merge branch 'MDL-68728-master-2' of git://github.com/andrewnicols/moodle 2020-05-18 20:24:17 +02:00
Tim Hunt c3dd5ccc40 MDL-68760 timezones: add string for new timezone America/Nuuk 2020-05-18 17:31:43 +01:00
Tim Hunt 8f406297e0 MDL-68760 string tests: make test_timezone_lang_strings message helpful 2020-05-18 16:51:17 +01:00
Eloy Lafuente (stronk7) 6462724e4f Merge branch 'MDL-68526-master' of git://github.com/aanabit/moodle 2020-05-18 17:14:12 +02:00
Víctor Déniz Falcón 8060ed34db Merge branch 'MDL-67812-master-latest-3' of git://github.com/mihailges/moodle 2020-05-18 16:04:58 +01:00
Sara Arjona 149b60f242 Merge branch 'MDL-68450-master' of git://github.com/cescobedo/moodle 2020-05-18 16:16:23 +02:00
Amaia Anabitarte 01003725f4 MDL-68526 core_contentbank: Tests for delete/move by context 2020-05-18 16:05:04 +02:00
Amaia Anabitarte f2a9bb6edb MDL-68526 core_contentbank: Delete content when a course is deleted
Or when a course category is moved/deleted
2020-05-18 16:05:04 +02:00
Marina Glancy ae0218624f MDL-68099 gradereport_grader: prevent exception without groups 2020-05-18 15:18:30 +02:00
Andrew Nicols 5fb2abb4eb Merge branch 'MDL-68497-master' of git://github.com/bmbrands/moodle 2020-05-18 20:53:20 +08:00
Sara Arjona 3f6d31f979 Merge branch 'MDL-68449-master' of git://github.com/cescobedo/moodle 2020-05-18 14:39:10 +02:00
Andrew Nicols 215393c86c Merge branch 'MDL-68503_master' of https://github.com/marxjohnson/moodle 2020-05-18 20:29:52 +08:00
cescobedo a9ed34a944 MDL-68450 mod_h5pactivity: Add WS view_h5pactivity
This is the external method for triggering the course module viewed event
and update the module completion status. Affects mobile app.
2020-05-18 14:17:46 +02:00
cescobedo feae09652e MDL-68449 mod_h5pactivity: Add a WS for get access information
This WS should return access information required by an external client to check if and how to display the activity module.
Require for Mobile App
2020-05-18 14:07:59 +02:00
Andrew Nicols 07c9106476 MDL-68463 user: Remove old selectall attribute 2020-05-18 20:03:38 +08:00
Andrew Nicols ed23725bc6 MDL-68463 user: Update select/show [count] links dynamically 2020-05-18 20:03:38 +08:00
Andrew Nicols 814da16778 MDL-68463 core: Add helper functions to toggle checkboxes 2020-05-18 20:03:38 +08:00
Andrew Nicols 0d01f2ae56 MDL-68463 report_participants: Use new shared participant actions module 2020-05-18 20:00:47 +08:00
Andrew Nicols bae72dd06d MDL-68463 user: Rewrite participant bulk actions in ES 2020-05-18 20:00:47 +08:00
Sara Arjona 20a1852593 Merge branch 'MDL-68253-master' of git://github.com/lucaboesch/moodle 2020-05-18 13:54:34 +02:00
Sara Arjona 84ab8a51e2 Merge branch 'MDL-68294-master' of git://github.com/jleyva/moodle 2020-05-18 12:49:32 +02:00
Adrian Perez c1bce8b4c7 MDL-67126 assign: set completion state for all group members 2020-05-18 12:29:01 +02:00
Sara Arjona da7feb3455 Merge branch 'read-only-session' of https://github.com/Agilicus/moodle 2020-05-18 12:09:00 +02:00
Andrew Nicols 88f1a81bd6 MDL-68728 calendar: Pending promises for event summary 2020-05-18 13:00:32 +08:00
Andrew Nicols 15d02a3045 MDL-68728 calendar: Remove calendar modal on close 2020-05-18 13:00:30 +08:00
Andrew Nicols 1feb2a5e2e Merge branch 'MDL-62487' of https://github.com/timhunt/moodle 2020-05-18 12:10:02 +08:00
Adrian Greeve 410cec0d40 Merge branch 'MDL-67791-master' of git://github.com/ferranrecio/moodle 2020-05-18 11:55:36 +08:00
Adrian Greeve a1bd5d556d Merge branch 'MDL-68563-master' of git://github.com/lameze/moodle 2020-05-18 11:34:38 +08:00
Mihail Geshoski 17050eea1c MDL-67812 repository_contentbank: Add behat tests 2020-05-18 11:10:07 +08:00
Mihail Geshoski a165085055 MDL-67812 core_filepicker: Add behat steps for filepicker 2020-05-18 11:10:07 +08:00
Mihail Geshoski 4f2a5f2074 MDL-67812 core_contentbank: Modify behat tests
Modify all behat tests that use the behat contentbank content generator
in order to use the updated generator structure
2020-05-18 11:10:07 +08:00
Adrian Greeve 5ec37d28a6 Merge branch 'master_MDL-64843_course_copy_ui' of https://github.com/catalyst/moodle 2020-05-18 10:35:44 +08:00
Mihail Geshoski 2e4e031e1c MDL-67812 core_contentbank: Modify behat contentbank content generator
Enables the behat contentbank content generator to create content in
multiple contexts and optionaly create files on the filesystem
2020-05-18 10:12:14 +08:00
Mihail Geshoski 7cec78f763 MDL-67812 core: Add content bank files repository in standard plugins 2020-05-18 09:34:51 +08:00
Mihail Geshoski 06764d288c MDL-67812 repository_contentbank: Add unit tests 2020-05-18 09:34:51 +08:00
Mihail Geshoski fa12d5dcc1 MDL-67812 repository_contentbank: Create content bank files repository 2020-05-18 09:34:51 +08:00
Adrian Greeve 6e8e079789 Merge branch 'MDL-68636-master' of git://github.com/aanabit/moodle 2020-05-18 08:21:53 +08:00
AMOS bot 1aca043bd0 Automatically generated installer lang files 2020-05-18 00:07:37 +00:00
Tung Thai 15a00bead1 MDL-66992 core_badges: Add support to Open Badges 2.1 2020-05-17 20:01:55 +07:00
AMOS bot ec8ac45fea Automatically generated installer lang files 2020-05-17 00:07:09 +00:00
Juan Leyva 8f2a40f2da MDL-68294 core_component: Fix test that depends on tool_mobile 2020-05-15 20:49:35 +02:00
Juan Leyva df2aa3480e MDL-68294 tool_mobile: WebService for validating subscription key 2020-05-15 20:49:34 +02:00
Juan Leyva 33dbc582e4 MDL-68294 tool_mobile: New subscription page 2020-05-15 20:49:34 +02:00
Don Bowman cf7b00b8cf MDL-68696 sessions: Fixed redis session handler for readonly
In 39770792ca read-only sessions were allowed.
In the redis case, as called from the mobile application,
this can lead to returning 'false' for session rather than ''.
2020-05-15 12:09:15 -04:00
Tim Hunt 89ee18c0e1 MDL-62487 quiz manual grading: implement suggestions from int review
Add privacy provider bits, and tidy code.
2020-05-15 13:48:21 +01:00
Tim Hunt b20541805f MDL-62487 quiz manual grading: store options as user preferences 2020-05-15 13:12:08 +01:00
Tim Hunt e37acc6773 MDL-62487 quiz manual grading: clean coding style and add PHPdocs 2020-05-15 13:12:08 +01:00
Ferran Recio fd7ef55acb MDL-67791 mod_h5pactivity: attempt report UI ajustments 2020-05-15 12:38:28 +02:00
Luca Bösch ee4abdc11d MDL-68253 mod_book: Remove prev arrow on the firstmost page. 2020-05-15 12:20:13 +02:00
Amaia Anabitarte a09129b09c MDL-68636 core_contentbank: Redirect to view page when uploading a file 2020-05-15 11:35:31 +02:00
Amaia Anabitarte 6fc3477cc5 MDL-68636 core_contentbank: Changing get_icon function 2020-05-15 11:35:31 +02:00
Amaia Anabitarte f9830e456a MDL-68636 core_contentbank: Changing parameter classes to be consistent 2020-05-15 11:35:31 +02:00
Víctor Déniz Falcón 296ae78885 MDL-68636 core_contentbank: added method to get H5P id from pathnamehash 2020-05-15 11:35:08 +02:00
Eloy Lafuente (stronk7) d85118369d on-demand release 3.9dev+ 2020-05-15 11:08:05 +02:00
Eloy Lafuente (stronk7) 6b44d48f00 NOBUG: Fixed SVG browser compatibility 2020-05-15 11:07:59 +02:00
Matt Porritt 01436f7539 MDL-64843 Backup: Course copy user interface
This patch adds better core support for copying courses.
There is now a simplified and dedicated UI for copying
courses. This can be accessed from the course context
menu or course management screens.

All backups are done asynchronously and there can be multiple
copies of a course in flight at once.
2020-05-15 06:02:02 +00:00
Jun Pataleta 8a34d36b56 Merge branch 'MDL-52846' of git://github.com/stronk7/moodle 2020-05-15 11:58:39 +08:00
Andrew Nicols bef1d08531 Merge branch 'MDL-66917' of https://github.com/paulholden/moodle 2020-05-15 10:54:15 +08:00
Andrew Nicols 60c3c08f6e MDL-67689 core: Whitespace fix 2020-05-15 10:36:55 +08:00
Andrew Nicols fdae08b8e9 Merge branch 'MDL-67689-master' of git://github.com/bmbrands/moodle 2020-05-15 10:36:54 +08:00
Andrew Nicols 4877ee9ca5 Merge branch 'MDL-68537-master' of git://github.com/jleyva/moodle 2020-05-15 10:36:54 +08:00
Andrew Nicols 362086b9b2 MDL-67990 antivirus_clamav: Typo fix 2020-05-15 10:36:01 +08:00
Andrew Nicols 0817d6ccf3 Merge branch 'MDL-67990' of https://github.com/OdyX/moodle 2020-05-15 08:56:10 +08:00
Eloy Lafuente (stronk7) 036b1beb49 Merge branch 'MDL-68677-master' of git://github.com/andrewnicols/moodle 2020-05-15 01:58:41 +02:00
Eloy Lafuente (stronk7) d2a0e106c6 Merge branch 'MDL-68084' of https://github.com/paulholden/moodle 2020-05-15 01:30:28 +02:00
Eloy Lafuente (stronk7) 9eb1b08f07 Merge branch 'MDL-68645-master-earlyoutputinit' of git://github.com/mudrd8mz/moodle 2020-05-14 16:35:35 +02:00
Ferran Recio 9a4307dd7a MDL-67791 mod_h5pactivity: adding attempts reports 2020-05-14 15:01:26 +02:00
Sara Arjona ccc7a30b3e Merge branch 'MDL-68200-master-take2' of git://github.com/rezaies/moodle 2020-05-14 13:10:01 +02:00
Sara Arjona 85e7049103 Merge branch 'MDL-68246-master-IR-squashed' of git://github.com/mickhawkins/moodle 2020-05-14 12:31:29 +02:00
Ferran Recio ebec56dac0 MDL-67791 mod_h5pactivity: adding review attempts capability 2020-05-14 11:54:33 +02:00
Sara Arjona 0fd6b977b6 Merge branch 'MDL-68241-master' of git://github.com/ferranrecio/moodle 2020-05-14 09:55:35 +02:00
Andrew Nicols d525ac4b8d MDL-68246 user: Add participants_search role & keyword unit tests
Created the participants_search unit testing file, including
tests for role, keywords, status and enroment method filtering.

Co-authored-by: Michael Hawkins <michaelh@moodle.com>
2020-05-14 15:47:34 +08:00
Michael Hawkins 86e71acc0c MDL-68246 user: Adding the participants_search class
This class introduces support for multiple values per filter to the
participants page.
2020-05-14 15:47:34 +08:00
Michael Hawkins 44e47eff9a MDL-68246 lib: Prepare for participants filter multiple groups support
These function updates are in preparation for the participants_search
class, which will be used to support multiple values per filter when
filtering the participants page.
2020-05-14 15:47:52 +08:00
Michael Hawkins 036b7cda10 MDL-68246 lib: Grouplib coding standards and consistency improvements 2020-05-14 15:47:34 +08:00
Ferran Recio 4d0241e488 MDL-68241 mod_h5pactivity: remove MOODLE_INTERNAL 2020-05-14 09:13:56 +02:00
Ferran Recio e28b40695d MDL-68241 mod_h5pactivity: add grading attempts options 2020-05-14 09:13:56 +02:00
Adrian Greeve b75a184312 Merge branch 'MDL-68498-master' of git://github.com/mihailges/moodle 2020-05-14 14:13:55 +08:00
Andrew Nicols 84d8b45fdf MDL-68677 core: Enable prefetching when cachejs is disabled
With the templaterev issue resolved we should enable the prefetch module
when cachejs is enabled to avoid a different experience when cachejs is
enabled vs. disabled.

Previously there was little point in doing this due to a range of other
bugs (string normalisation, and misuse of templaterev).

With these issues resolved we should enabel the caching.
2020-05-14 14:10:55 +08:00
Andrew Nicols b9dec51ab4 MDL-68677 core: Correct usage of templaterev for caching templates
The M.cfg.templaterev variable should only be used to present persistent
caching, not caching of content within the same page load.

Preventing caching of same-page content makes it difficult to develop
for real user experiences as content is slow to load and does not give a
realistic and consistent loading experience.

This change affects the loading of partials specifically which notably
includes the loading spinner. Without this patch the loading icon is
often not seen at all because it does not load in a timely fashion and
the content being loaded is loaded first.
2020-05-14 14:10:55 +08:00
David Mudrák 866ce1fbe9 MDL-68645 output: Make other generators fail if they init the output too
Identically to what we've added to the module generators, let's raise a
coding exception if generating a block or a repository triggers the
theme and output initialisation.
2020-05-14 07:55:19 +02:00
Jun Pataleta 2a202f3b97 Merge branch 'MDL-68529' of https://github.com/Chocolate-lightning/moodle 2020-05-14 12:51:35 +08:00
Dmitrii Metelkin 142a02308d MDL-68656 quizaccess_seb: refactor test to use helper trait 2020-05-14 13:11:07 +10:00
Dmitrii Metelkin 355cf68893 MDL-68656 quizaccess_seb: remove incorrect namespace 2020-05-14 11:53:30 +10:00
Dmitrii Metelkin 43302afc56 MDL-68656 quizaccess_seb: move test files 2020-05-14 11:32:43 +10:00
Víctor Déniz Falcón 6b37b6a1ba Merge branch 'MDL-68227-master' of git://github.com/sarjona/moodle 2020-05-13 17:13:11 +01:00
Víctor Déniz Falcón ca7127ed03 Merge branch 'MDL-68697-master' of git://github.com/andrewnicols/moodle 2020-05-13 16:53:16 +01:00
Paul Holden 9965b654f8 MDL-65796 message: improve content of contact request notifications. 2020-05-13 15:40:17 +01:00
Jun Pataleta 9c09ec41d6 Merge branch 'MDL-68483-master' of git://github.com/sarjona/moodle 2020-05-13 19:33:37 +08:00
Sara Arjona f3126f84b4 MDL-68483 contentbank: remove unneeded MOODLE_INTERNAL
These improvements were suggested by Eloy when MDL-67795 and other
content bank issues (such as MDL-67790) were integrated.
2020-05-13 13:31:30 +02:00
Sara Arjona 54ce66bd76 MDL-68483 contentbank: improve search API
These improvements were suggested by Eloy when MDL-67797 was integrated.
2020-05-13 13:31:30 +02:00
Sara Arjona 7616fbfd8e MDL-68483 contentbank: order contents by name 2020-05-13 13:31:29 +02:00
Sara Arjona f9b6849b85 MDL-68483 contentbank: filter contents by name
Credits to Bas and Rafa for helping us to improve the UX.
Also to Amaia with her help with Behat tests.
2020-05-13 13:31:29 +02:00
Eloy Lafuente (stronk7) 6a7146fc71 Merge branch 'MDL-68314-master' of git://github.com/aanabit/moodle 2020-05-13 13:15:17 +02:00
Ruslan Kabalin a38e1d4968 MDL-67548 core_course: Add unittests covering category deletion hooks. 2020-05-13 10:24:33 +01:00
Andrew Nicols 0e809762d4 MDL-68697 core_h5p: Store missing translations as null 2020-05-13 16:35:41 +08:00
David Mudrák 87f9e88ddd MDL-68563 filters: Fix unit test regressions
Also incrementing the plugin versions to make sure the unit test
environment is reinitialised and the tests are reliable.

Minor correction of phpdocs @package tags included.
2020-05-13 16:28:24 +08:00
Simey Lameze 4044914d17 MDL-68563 editor_atto: display emoji picker on atto toolbar
As per enabling of emoticon filters enabling emoji picker is now visible
by default on the Atto editor toolbar.
2020-05-13 16:27:05 +08:00
Simey Lameze 2a9e5ba70a MDL-68563 filter_urltolink: enable filter uppon install
Every major system that people use these days turns URLs into links automatically.

This filter was turned off by default a decade ago because of performance concerns
that do not apply any more, specially on fresh new installations.

In order to improve user experience on text editing features, the urltolink filter
will be now enabled by default in new installations.
2020-05-13 16:24:53 +08:00
Simey Lameze 5f95ea83fd MDL-68563 filter_emoticon: enable filter uppon install
Every major system that people use these days turns smiles into emoticons automatically.

This filter was turned off by default a decade ago because of performance concerns
that do not apply any more, specially on fresh new installations.

In order to improve users experience on text editing features the emoticon filter
will be now enabled by default in new installations.
2020-05-13 16:24:12 +08:00
David Mudrák 005b00dd9b MDL-68645 output: Do not apply filters when creating calendar events
Applying filters on an activity module description when using it as a
new calendar event's description is bad m'kay? We need to store the raw
text and apply the filters only when we actually display the text. That
way, filters (such as multi-language content) may actually fully work
and we do not initialise the theme and output machinery.

Additionally, we need to explicitly set the format of the description
text to HTML (because we have converted it to it already). Otherwise it
defaults to the current user's preferred editor format.

This is still a pragmatic hot-fix solution. The proper solution would be
to pass the raw text, format and embedded files.
2020-05-13 10:03:01 +02:00
Tim Hunt f883c681ff MDL-68645 output: Make module generators fail if they init the output
The coding exception hint should say it all. Creating an activity module
should not need any output function call. It turned out it can lead to
hard-to-debug bugs and unexpected behaviour. So better to explicitly
fail and let the developer fix the code.
2020-05-13 10:03:01 +02:00
Amaia Anabitarte 66489aea0f MDL-68314 core_contentbank: Backup and restore tests 2020-05-13 09:35:58 +02:00
Amaia Anabitarte 3449e22683 MDL-68314 core_contentbank: Course content bank backup and restore 2020-05-13 09:35:58 +02:00
Jun Pataleta 51939f6feb Merge branch 'MDL-68261-cli-config-log' of https://github.com/brendanheywood/moodle 2020-05-13 10:36:54 +08:00
Mihail Geshoski f915dcbe1a MDL-68498 core: Fix content bank links in the navigation drawer 2020-05-13 09:26:18 +08:00
Jake Dallimore 1516b80752 Merge branch 'MDL-68631' of https://github.com/jonof/moodle 2020-05-13 09:24:30 +08:00
Mihail Geshoski cd1a878774 MDL-68498 core: Display content bank icon in nav drawer in classic theme 2020-05-13 08:42:46 +08:00
Eloy Lafuente (stronk7) 47c5108234 Merge branch 'MDL-68614-master' of git://github.com/aanabit/moodle 2020-05-13 00:09:44 +02:00
Eloy Lafuente (stronk7) de185f1c2b Merge branch 'MDL-68417-master' of git://github.com/lameze/moodle 2020-05-12 23:20:21 +02:00
Paul Holden 56b431c2f6 MDL-68084 blocks: check capability before getting content.
Some blocks (e.g. Calendar) load additional JS modules when returning
content. We need to make sure they aren't asked to generate content
unless the user can actually view the block, or the expected content
required by the JS will not exist in the DOM and can cause exceptions.
2020-05-12 19:23:36 +01:00
Eloy Lafuente (stronk7) d2ecc75e2f MDL-52846 tasks: complete docs and move functions to deprecatedlib
- Add MDL codes to @deprecated.
- Add @todo tag for future 4.3 phase 2 deprecation.
- Deprecate global scope functions:
  - cron_execute_plugin_type().
  - cron_bc_hack_plugin_functions().
  (moving them to deprecatelib).
- Document it in main upgrade.txt
2020-05-12 17:41:13 +02:00
Ankit Agarwal 3bdb8f4584 MDL-52846 tasks: Display developer notice for legacy cron 2020-05-12 17:38:08 +02:00
Amaia Anabitarte ce1fe72dbd MDL-68483 contentbank: adapt to existing behat generator 2020-05-12 16:50:46 +02:00
Sara Arjona a42a9ad997 MDL-68227 core_h5p: localize H5P editor strings
H5P editor has a folder with all supported languages in JS files.
A mechanish has been added to let users to translate them using AMOS.
That's how the translations are managed (the order how they are processed):

- If there a JS file for a language, it's loaded.
- If a string has been translated in Moodle (they are placed in
h5plib_vXXX), it will override strings loaded from the JS file.
2020-05-12 16:39:42 +02:00
Simey Lameze d717918c87 MDL-68417 core_table: add some css styling to loading icon 2020-05-12 21:44:42 +08:00
Ruslan Kabalin 72316a9f4e MDL-67548 core_course: Add more category deletion hooks.
Introduce new hooks for plugin developers:

  - <component>_can_course_category_delete($category)
  - <component>_can_course_category_delete_move($category, $newcategory)
These hooks allow plugin developers greater control over category deletion. Plugin can return false in those
functions if category deletion or deletion with content move to the new parent category is not permitted.

  - <component>_pre_course_category_delete_move($category, $newcategory)
This hook is expanding functionality of existing <component>_pre_course_category_delete hook and allow plugin developers
to execute code prior to category deletion when its content is moved to another category.

 - <component>_get_course_category_contents($category)
This hook allow plugin developers to add information that is displayed on category deletion form. Function should
return string, which will be added to the list of category contents shown on the form.
2020-05-12 14:30:14 +01:00
Amaia Anabitarte 28ebd2719f MDL-68614 core_contentbank: Add svg and png contentbank icons 2020-05-12 14:43:35 +02:00
Sara Arjona 206e179df5 weekly release 3.9dev+ 2020-05-12 14:16:44 +02:00
Mathew May f2d033a2bb MDL-68529 course: Refactor chooser to include loading 2020-05-12 16:59:54 +08:00
Shamim Rezaie a30bb16ef2 MDL-68200 core: Fix phpdoc for the external return functions 2020-05-12 15:13:01 +10:00
Shamim Rezaie 1ba5f0f410 MDL-68200 core: Fix datetime format
date.toISOString() prints out the seconds as well.
Current code supports most valid values for the datetime attribute
2020-05-12 15:13:01 +10:00
Shamim Rezaie 31d401aaa0 MDL-68200 mod_forum: fix invalid format of the time tag on modern view 2020-05-12 15:13:01 +10:00
Shamim Rezaie b0326f0632 MDL-68200 mod_forum: Fix the invalid date format in the time tags 2020-05-12 15:13:01 +10:00
Jun Pataleta 6e95533c73 MDL-68200 mod_forum: Use core/time_element for the discussion list page 2020-05-12 10:59:02 +10:00
Jun Pataleta 26b2982ba0 MDL-68200 core: Add new time_element template 2020-05-12 10:59:02 +10:00
Jun Pataleta e21252b309 MDL-68200 core: Support fixday/hour for core/user_date's get() method 2020-05-12 10:59:02 +10:00
Jun Pataleta 558470e7c1 MDL-68200 core: Support fixday/hour for core_external::get_user_dates() 2020-05-12 10:59:02 +10:00
Shamim Rezaie 127f69d3fe MDL-68200 core: Add calendartype param to user_date.loadDatesFromServer 2020-05-12 10:59:02 +10:00
Shamim Rezaie 4f9bcde969 MDL-68200 core: Add type param to core_get_user_dates external function 2020-05-12 10:59:02 +10:00
Shamim Rezaie 79364d4cdc MDL-68200 mod_forum: remove address tags
Reasons:
- The element “h4” must not appear as a descendant of the “address” element
- This element should not contain more information than the contact
information, like a publication date (which belongs in a <time> element)
 element)
2020-05-12 10:56:29 +10:00
Shamim Rezaie 9f2a68feb4 MDL-68200 mod_forum: single discussion to follow nestet_v2 display rules 2020-05-12 10:56:29 +10:00
Shamim Rezaie fcd34f1876 MDL-68200 theme_boost: workaround for IE for flexbox not filling height
read more:
https://philipwalton.com/articles/normalizing-cross-browser-flexbox-bugs/
2020-05-12 10:56:29 +10:00
Simey Lameze eebe3ca611 MDL-68417 core_table: add spinner to dynamic table 2020-05-12 06:58:06 +08:00
Eloy Lafuente (stronk7) a417c31b2e Merge branch 'MDL-68579-master' of git://github.com/cescobedo/moodle 2020-05-11 23:13:45 +02:00
Eloy Lafuente (stronk7) 5879d1773d Merge branch 'MDL-68276-replace-logs' of https://github.com/brendanheywood/moodle 2020-05-11 23:10:49 +02:00
Ruslan Kabalin 27b29b2996 MDL-67548 core_course: Reflect content move category in deleted event. 2020-05-11 21:08:06 +01:00
Sara Arjona 1d2d4782da Merge branch 'MDL-68654-master' of https://github.com/catalyst/moodle 2020-05-11 19:16:14 +02:00
Jun Pataleta 6165110f0a Merge branch 'MDL-66109-master' of git://github.com/andrewnicols/moodle 2020-05-12 00:03:19 +08:00
Ruslan Kabalin 39e777e3f7 MDL-67548 core_course: Remove category deletion form artefact.
This is not usable for the reason that categorylabel element does not
exist.
2020-05-11 16:11:28 +01:00
Sara Arjona 36a3a259de Merge branch 'MDL-68571-master' of git://github.com/cescobedo/moodle 2020-05-11 16:52:48 +02:00
cescobedo 444b2282f1 MDL-68571 core_h5p: Return default handler if no it has been defined 2020-05-11 16:46:27 +02:00
Sara Arjona 80fd46edfd Merge branch 'MDL-68576-master' of git://github.com/mihailges/moodle 2020-05-11 16:36:59 +02:00
Jun Pataleta d1735204c0 Merge branch 'MDL-63580-master' of git://github.com/cescobedo/moodle 2020-05-11 22:32:34 +08:00
cescobedo db15746c2d MDL-63580 core_task: Deprecation cron_run_single_task and run_from_cli
Also we have move the functions in \tool_task\run_from_cli to \core\task\manager
and we have deprecated that class.
2020-05-11 10:53:23 +02:00
cescobedo 079736ccb3 MDL-63580 core_task: Deprecation CLI scripts from admin/tool/task/cli
Copy the CLI scripts from admin/tool/task/cli to admin/cli (schedule_task.php and adhoc_task.php)
and rename to scheduled_task.php and to improve in order to use cron_run_inner_scheduled_task.
2020-05-11 10:53:17 +02:00
Jun Pataleta c314ec6770 Merge branch 'MDL-68041-master-rev2' of https://github.com/nhoobin/moodle 2020-05-11 16:27:48 +08:00
cescobedo b19468ce8a MDL-68579 core_h5p: Add a check to avoid execute task using BEHAT 2020-05-11 10:13:08 +02:00
Nicholas Hoobin 119a83f148 MDL-68041 core_theme: New admin settings in secure page layout
This adds two new admin settings to the theme appearance options.

Shows the lang menu in secure layout, langmenuinsecurelayout.
Shows the user's name in secure layout, logininfoinsecurelayout.

When the page layout is set to secure, these options will be in effect.
2020-05-11 17:23:17 +10:00
Andrew Nicols 29c5fafff5 MDL-66109 js: Fix Shifter linting issues 2020-05-11 11:07:49 +08:00
Andrew Nicols 4ad0f38a82 MDL-66109 js: Upgrade to latest version of Shifter
This change bumps the version of Shifter that we use to the final
release - version 1.2.0.

I strongly doubt that there will be more releases, and this release was
over two years ago.

This version uses a newer version of Istanbul, and fixes to use that
specific version of Istanbul. As a result I have forked Shifter and
applied the Moodle Circular Dependency fixes there instead.

This version also inludes an upgrade to uglify from 1.3.x to 2.4.x. This
major upgrade includes a some changes to the built YUI module code.
2020-05-11 11:07:49 +08:00
Andrew Nicols bbb291ba2f MDL-66109 behat: Prevent the use of Examples in Scenarios
This change enables the Gherkin-lint rule to prevent the use of
"Examples" in a Scenario.

The Example tag is only allowed in a Scenario Outline at this time and
their use in a Scenario has no meaning.
2020-05-11 11:07:49 +08:00
Andrew Nicols 7afd16ad84 MDL-66109 behat: Require newline at EOF
This change enables the gherkinlint rule to require a new line at the
end of the file. This change is in keeping with existing Moodle coding
style guidelines.
2020-05-11 11:07:49 +08:00
Andrew Nicols 149d80e819 MDL-66109 behat: Fix Example usage in feature files
The gherkin-lint package now understands the use of "Examples" and
requries that their indentation be correct and consistent.

This change sets the indentatation for these to:

    "Examples": 4,
    "example": 6,

This is in-line with the examples given in the offical Cucumber/Gherkin
documentation at
https://cucumber.io/docs/gherkin/reference/#scenario-outline whereby the
Examples and individual rows of the Examples table are children of the
Scenario outline.

This is contrary to the default for Gherkin-lint which places them as
top-level nodes with an indentatio of 0, and 2 respectively.
2020-05-11 10:55:58 +08:00
Andrew Nicols bf6630a832 MDL-66109 css: Fix incorrect max-empty-lines in Boost scss
This was previously not picked up by stylelint for an unknown reason.
2020-05-11 10:55:57 +08:00
Andrew Nicols 1152df3ec4 MDL-66109 css: Drop use of filter:alpha(opacity)
This CSS statement was an MS-only rule which was never accepted, and
which was abonded some time before IE 10. It has no effect in supported
browsers and can be safely replace with `opacity: [0.0-1.0]`.
2020-05-11 10:55:57 +08:00
Andrew Nicols f879cc518e MDL-66109 js: Build changes for NodeJS upgrade
This change includes a build to fix all minified file changes in Moodle
as a result of upgrades to our build process.
2020-05-11 10:55:54 +08:00
Andrew Nicols 5b4debd2b0 MDL-66109 js: Upgrade Node dependencies
This change updates most libraries used in our Grunt build stack and
applies necessary changes to Grunt and Gherkin-lint configuration to
ensure that they continue to work.

The grunt-sass plugin has been updated to support alternative
'implementations' of sass compilers, and the chosen sass compiler must
now be specified in the grunt configuration. We continue to use the
`node-sass` package for this.

Our gherkin-lintrc included two rules which were renamed from
'no-unamed-*' to 'no-unnamed-*'. This change occurred in version 2.0.0
of Gherkin-lint and has no other effect.
2020-05-11 10:53:35 +08:00
Andrew Nicols 9b7e6e9c6c MDL-66109 js: Built file changes from new Node version 2020-05-11 10:53:35 +08:00
Andrew Nicols a508dfb43a MDL-66109 js: Fix circular dependency in Shifter dependency
Shifter is using an ancient and no-longer supported of Istanbul. That
version contains a circular dependency whereby it fetches the version
from the index that included the file in the first place.  This throws a
warning on newer versions of Node.

The fix here is simple and intended to be the bare minimum to remove
these warnings anad resolve the issue.

We have forked the istanbul project and created a v0.1.37_moodle branch
at the root version of the Istanbul version that Shifter uses (v0.1.37
tag). The circular dependency is then addressed and a new tag created.

I have then forked Shifter, pointing its package.json at the tar.gz
download of that new tag and pushed a new branch and tag for that fix.

Following this our own package.json is updated to point to the tar.gz
version of the new Shifter tag.
2020-05-11 10:53:35 +08:00
Andrew Nicols 1591dc5786 MDL-66109 js: Upgrade to latest stable version of NodeJS
Version 14.0.0 has just been released as stable, and will make its way
to an LTS release which will be supported until 30th April 2023.

At time of writing it is the "Current stable" release and will remain in
this phase until 20th October 2020, at whciih point it will transition
to LTS status.
2020-05-11 10:53:35 +08:00
Andrew Nicols 0d5b115b0e Merge branch 'MDL-68271-master' of git://github.com/sarjona/moodle 2020-05-11 09:10:40 +08:00
Dmitrii Metelkin 774bd482fd MDL-68654 quizaccess: destroy a restore controller in tests 2020-05-10 09:29:16 +10:00
Jun Pataleta 2f5e791395 Merge branch 'MDL-65547-master' of git://github.com/jleyva/moodle 2020-05-09 00:30:34 +08:00
Sara Arjona f635915137 MDL-68271 core_h5p: implement localization methods for editor
The following methods have been implemented for supporting
content-type translations:
- H5PEditorAjaxInterface.getTranslations. This method is used for
loading the "Text overrides and translations" section.
- H5peditorStorage.getLanguage. This method is used for displaying
the specific fields and messages for each content-type library.
- H5peditorStorage.getAvailableLanguages. This method is used to
get the language list displayed into the "Text overrides and
translations" section.
2020-05-08 18:18:24 +02:00
Juan Leyva af59fe585a MDL-65547 tool_mobile: Allow to generate site QR codes only 2020-05-08 16:51:36 +02:00
Huong Nguyen 1937957be3 MDL-68549 Drag-drop into text: minor glitches caused by MDL-68113 2020-05-08 19:37:50 +07:00
Eloy Lafuente (stronk7) 36e5a07a59 on-demand release 3.9dev+ 2020-05-08 13:32:22 +02:00
Eloy Lafuente (stronk7) 635ea71fb0 NOBUG: Fixed file access permissions 2020-05-08 13:32:22 +02:00
Eloy Lafuente (stronk7) c6b75af51b NOBUG: Fixed SVG browser compatibility 2020-05-08 13:32:20 +02:00
Eloy Lafuente (stronk7) ffa413895b Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-08 13:32:18 +02:00
Mihail Geshoski 90feebe486 MDL-68576 filepicker: Cover in behat file edition in filemanager
The added behat tests would also confirm whether the behaviour of
a click action on a file using different views in the filemanager
is consistent.
2020-05-08 16:58:43 +08:00
Mihail Geshoski cba4a1d9b3 MDL-68576 filepicker: Cover in behat file selection from filepicker
The added behat tests would cover the issue in MDL-68576. They test
whether the behaviour of a click action on a file using different
views in the filepicker is consistent.
2020-05-08 16:33:57 +08:00
Juan Leyva 118852a710 MDL-65547 tool_mobile: New WS for generating tokens with qr login keys 2020-05-08 10:26:45 +02:00
Juan Leyva 9df5151013 MDL-65547 tool_mobile: Display QR in user profile 2020-05-08 10:26:45 +02:00
Juan Leyva f24b0795ef MDL-65547 qr: Wrapper for core_qrcode 2020-05-08 10:26:45 +02:00
Mihail Geshoski 1de1fc58f3 MDL-68576 filepicker: Fix inability to select files in table view 2020-05-08 14:40:36 +08:00
Jake Dallimore 812aaf73d7 Merge branch 'MDL-51694-m' of https://github.com/MartinGauk/moodle 2020-05-08 11:22:31 +08:00
Eloy Lafuente (stronk7) 9a4a8bd3cb Merge branch 'MDL-68443-xmldb-path-validation' of https://github.com/brendanheywood/moodle 2020-05-07 19:16:37 +02:00
Eloy Lafuente (stronk7) 7bf6fd4528 Merge branch 'MDL-67753-master' of git://github.com/jleyva/moodle 2020-05-07 18:44:45 +02:00
Eloy Lafuente (stronk7) 301cd3e9c0 Merge branch 'MDL-68415' of https://github.com/paulholden/moodle 2020-05-07 18:38:43 +02:00
Jake Dallimore 3450a08366 Merge branch 'MDL-68572-master' of https://github.com/catalyst/moodle 2020-05-07 18:30:47 +02:00
Jake Dallimore 37e9a8c2b3 Merge branch 'MDL-62403-master' of git://github.com/lameze/moodle 2020-05-07 18:30:47 +02:00
Tim Schroeder 5760d9a09f MDL-68629 mod_choice: multilang coursename support 2020-05-07 15:49:13 +02:00
Simey Lameze 907212695c MDL-62403 portfolio: add upgrade notes for google docs 2020-05-07 12:40:22 +08:00
Ryan Wyllie 5b4ae0038d MDL-62403 portfolio: create directories for google drive export
I've modified the Google Drive portfolio export so that it creates a
root directory in Drive for all of the files in the export. This allows
each export to be contained from each other to help with clashing file
names.

Additionally, the paths for the exported files will now be created in
Drive so that exported files are in the correct directory structure.
This is important for forum posts exports which assume a certain
directory structure in the export.
2020-05-07 12:40:22 +08:00
Jun Pataleta 08103b0a64 MDL-68355 gradingform_guide: Improve lang strings 2020-05-07 11:49:53 +08:00
Jonathon Fowler 4ac6c3d44e MDL-68631 cron: ensure the cron user is reset between scheduled tasks 2020-05-07 13:26:23 +10:00
Andrew Nicols ac53825ff2 Merge branch 'MDL-68556-master-pluginscheckcss' of git://github.com/mudrd8mz/moodle 2020-05-07 09:13:20 +08:00
Paul Holden 2cd534a7df MDL-68410 mod_scorm: safer status operator comparison. 2020-05-07 09:02:42 +08:00
Adrian Greeve 0e9fcef421 Merge branch 'MDL-67613-master' of git://github.com/ferranrecio/moodle 2020-05-07 08:40:41 +08:00
Paul Holden f4488eca79 MDL-68415 core: test attachments in email_to_user from allowed paths. 2020-05-06 23:23:17 +01:00
Juan Leyva 37bd67f54b MDL-67753 registration: Enable Push Notifications when site register
There are some changes to make this possible:
- Enable by default the Mobile notifications plugin
- Implement a new callback for core -> plugins communication
- Generate an Airnotifier access key in the callback when needed
2020-05-06 23:20:13 +02:00
Ferran Recio b745817203 MDL-68430 filter_mathjaxloader: update default CDN to 2.7.8 2020-05-06 21:14:41 +02:00
Víctor Déniz Falcón 50d3cc3268 Merge branch 'MDL-68235' of git://github.com/Chocolate-lightning/moodle 2020-05-06 20:05:32 +01:00
Sara Arjona 773e46c808 Merge branch 'MDL-68381-master' of git://github.com/ferranrecio/moodle 2020-05-06 17:43:53 +02:00
Ferran Recio 1db6424ceb MDL-67613 availability_completion: replacing old arrays 2020-05-06 11:27:34 +02:00
Jun Pataleta 2685accca8 Merge branch 'MDL-68402' of https://github.com/timhunt/moodle 2020-05-06 17:04:25 +08:00
Ferran Recio c54b183c8d MDL-67613 availability_completion: add previous activity condition 2020-05-06 10:56:47 +02:00
Tim Hunt 1ed243c2fe MDL-68402 accesslib: fix coding style of loops 2020-05-06 09:18:02 +01:00
Tim Hunt 1736c59925 MDL-68402 accesslib: Modernise coding style in the functions changed 2020-05-06 09:18:02 +01:00
Tim Hunt 0d3bdb94bc MDL-68402 accesslib: fix get_with_capability_join logic
In fact, rather than fix the old logic, I noticed that the correct
logic was already implemented in get_users_by_capability. So, I
refactored to extract the working version into a function, which it
turns out can have exactly the same API as get_with_capability_join,
which was convenient.
2020-05-06 09:18:02 +01:00
Mathew May edf52a0e65 MDL-68235 core_course: Sections work after drag and drop reordering 2020-05-06 16:14:48 +08:00
Mathew May 278d9d30f7 MDL-68235 core_course: Add section ID attribute to sections 2020-05-06 16:14:48 +08:00
Eloy Lafuente (stronk7) bb341e4b2f Merge branch 'MDL-68615' of https://github.com/timhunt/moodle 2020-05-06 10:07:28 +02:00
Dmitrii Metelkin 93532e7871 MDL-68572 quizaccess: use uploaded file as is for SEB settings 2020-05-06 17:13:53 +10:00
Tim Hunt bee903193b MDL-68615 questions: more increment idnumber cases found by our tester 2020-05-06 07:46:09 +01:00
Simey Lameze c0db61e45f MDL-68462 core_table: add missing global 2020-05-06 14:40:33 +08:00
Andrew Nicols 53e4ba3143 Merge branch 'MDL-68216-master' of git://github.com/lucaboesch/moodle 2020-05-06 14:20:09 +08:00
Brendan Heywood 529c509f62 MDL-68276 admin: Skip risky tables and columns in db_replace 2020-05-06 15:46:41 +10:00
Jake Dallimore 3e5c3cf8d9 Merge branch 'MDL-68293-master' of git://github.com/jleyva/moodle 2020-05-06 12:53:16 +08:00
Andrew Nicols 6507a3368f Merge branch 'MDL-68217-master' of git://github.com/lucaboesch/moodle 2020-05-06 12:50:15 +08:00
Jake Dallimore 279f6488ca Merge branch 'MDL-67800-master' of git://github.com/andrewnicols/moodle 2020-05-06 12:10:31 +08:00
Andrew Nicols db15dab80c MDL-67800 contentbank: Include missing event class 2020-05-06 12:06:59 +08:00
Andrew Nicols 7b0d235876 Merge branch 'MDL-67845-master-3' of git://github.com/mihailges/moodle 2020-05-06 11:22:26 +08:00
Jun Pataleta 2bacffba53 Merge branch 'MDL-68301-master' of git://github.com/bmbrands/moodle 2020-05-06 11:06:11 +08:00
Adrian Greeve 5178f0f43c Merge branch 'MDL-68462-master' of git://github.com/lameze/moodle 2020-05-06 11:06:11 +08:00
Andrew Nicols d86dfdd51e Merge branch 'MDL-67800-master-3' of git://github.com/aanabit/moodle 2020-05-06 11:06:11 +08:00
Andrew Nicols 1ad79ecb18 Merge branch 'MDL-67383-master-1' of git://github.com/mihailges/moodle 2020-05-06 11:06:10 +08:00
Mihail Geshoski 5aca440471 MDL-67383 media_videojs: Update VideoJS versions in Moodle related files 2020-05-06 11:06:08 +08:00
Mihail Geshoski 9632fde77f MDL-67383 media_videojs: Upgrade VideoJS and plugins to latest version
Upgrade VideoJS (7.7.6), Youtube Playback for VideoJS (2.6.1), Flash Tech for VideoJS (2.2.1), Flash Player for VideoJS (5.4.2)
2020-05-06 11:06:08 +08:00
Mihail Geshoski 9fa46e8a8c MDL-67845 enrol_database: Remove enrol_database_admin_setting_category
This class was only used by the database enrolment plugin settings and
was replaced by admin_settings_coursecat_select. Also, this class is in
a plugin which we do not expect to be extended and therefore it can be
simply removed without going through the deprecation process.
2020-05-06 10:50:05 +08:00
Mihail Geshoski b16f5398a5 MDL-67845 enrol_database: Use course category selection setting
We should use admin_settings_coursecat_select instead of
enrol_database_admin_setting_category as the second class is only
being used by the database enrolment plugin settings and can be
removed after this change.
2020-05-06 10:50:05 +08:00
Simey Lameze 937f21d3b8 MDL-68462 core_table: add @javascript to failing scenario 2020-05-06 09:44:44 +08:00
Simey Lameze 68c46a28d6 MDL-68462 core_table: add support for reset table preferences 2020-05-06 09:44:39 +08:00
Andrew Nicols ae346c8624 Merge branch 'MDL-68548' of https://github.com/Neosi/moodle 2020-05-06 08:55:51 +08:00
Andrew Nicols 9d67c34709 Merge branch 'MDL-63609' of https://github.com/paulholden/moodle 2020-05-06 08:50:00 +08:00
Jake Dallimore 1b4e6b3826 Merge branch 'MDL-68355-master' of git://github.com/junpataleta/moodle 2020-05-06 08:36:06 +08:00
AMOS bot ee37ed1a78 Automatically generated installer lang files 2020-05-06 00:13:03 +00:00
Eloy Lafuente (stronk7) dac1b3a4eb Merge branch 'MDL-68541-39' of https://github.com/PoetOS/moodle 2020-05-06 01:04:14 +02:00
Eloy Lafuente (stronk7) 95430af3f1 Merge branch 'MDL-68615' of https://github.com/timhunt/moodle 2020-05-06 00:58:26 +02:00
Victor Deniz Falcon 45067da068 Merge branch 'MDL-68338' of git://github.com/timhunt/moodle 2020-05-05 22:21:36 +01:00
Luca Bösch 690470974f MDL-68217 course: Style recent activity report. 2020-05-05 22:09:32 +02:00
Luca Bösch 439c8c5933 MDL-68216 block_recent_activity: Format elements more nicely. 2020-05-05 22:09:19 +02:00
Paul Holden 118a109499 MDL-67547 dataformat: allow plugins to declare support for HTML. 2020-05-05 19:23:32 +01:00
Eloy Lafuente (stronk7) a09eb2697f on-demand release 3.9dev+ 2020-05-05 19:06:06 +02:00
Eloy Lafuente (stronk7) a0ad55c599 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-05 19:06:03 +02:00
Tim Hunt 1d47cb2168 MDL-68615 questions: fix fiendish default idnumber edge case 2020-05-05 16:19:54 +01:00
Neosi 27e44c18fe MDL-68548 editor-atto: change <i> tags to <em> 2020-05-05 09:50:26 +01:00
Amaia Anabitarte f2e02ea9f0 MDL-67800 core_contentbank: Testing contentbank events 2020-05-05 10:20:20 +02:00
Amaia Anabitarte d90ff83962 MDL-67800 core_contentbank: Fixing search content provider 2020-05-05 10:20:20 +02:00
Amaia Anabitarte fb302d3848 MDL-67800 core_contentbank: Creating events for contentbank 2020-05-05 10:20:20 +02:00
Amaia Anabitarte b39a03d739 MDL-67800 contenttype_h5p: Fix the error when deleting a content with no file 2020-05-05 10:19:15 +02:00
Amaia Anabitarte 48bcb1f228 MDL-67800 core_contentbank: Moving uploading logic to contentbank class 2020-05-05 10:19:15 +02:00
Brendan Heywood 76de190c25 MDL-68261 report_configlog: Log changes from admin/cli/cfg.php 2020-05-05 17:52:27 +10:00
Didier 'OdyX' Raboud eebd02461b MDL-67990 antivirus_clamav: set chunksize to 32Mb 2020-05-05 09:33:26 +02:00
Didier 'OdyX' Raboud bf427afcf6 MDL-67990 antivirus_clamav: validate tcpsocket with unset default port 2020-05-05 09:33:25 +02:00
Jake Dallimore eec3a65e5d Merge branch 'MDL-47750' of https://github.com/timhunt/moodle 2020-05-05 11:55:15 +08:00
Andrew Nicols 0449045fa0 Merge branch 'MDL-68542-39' of https://github.com/JayChurchward/moodle 2020-05-05 11:50:04 +08:00
Andrew Nicols 561fc87034 Merge branch 'MDL-68551' of https://github.com/Neosi/moodle 2020-05-05 11:48:46 +08:00
Andrew Nicols 1174dcb184 Merge branch 'MDL-68465-master' of git://github.com/junpataleta/moodle 2020-05-05 11:29:10 +08:00
Andrew Nicols 7be118e265 Merge branch 'MDL-67881-master' of git://github.com/bmbrands/moodle 2020-05-05 11:17:33 +08:00
Jun Pataleta 6a71bccfea Merge branch 'MDL-68524-master' of git://github.com/andrewnicols/moodle 2020-05-05 10:50:09 +08:00
Andrew Nicols a427a48c10 MDL-68524 core: Prefetch modal registry templates 2020-05-05 10:16:10 +08:00
Andrew Nicols 983baf4e34 MDL-68524 js: Add prefetch module 2020-05-05 10:16:10 +08:00
Andrew Nicols 37f48d2547 Merge branch 'MDL-68500' of https://github.com/paulholden/moodle 2020-05-05 09:48:24 +08:00
AMOS bot 21b77db6eb Automatically generated installer lang files 2020-05-05 00:11:26 +00:00
Eloy Lafuente (stronk7) 87c0887564 Merge branch 'MDL-67790-master' of git://github.com/aanabit/moodle 2020-05-04 23:01:20 +02:00
Eloy Lafuente (stronk7) f6bfa49cc6 Merge branch 'MDL-52904-master' of git://github.com/junpataleta/moodle 2020-05-04 22:31:25 +02:00
Amaia Anabitarte 3a6ca392d8 MDL-67790 core_contentbank: Unit and behat tests for renaming content 2020-05-04 20:15:05 +02:00
Amaia Anabitarte cc58791b68 MDL-67790 core_contentbank: Behat contentbank content generator 2020-05-04 20:15:05 +02:00
Amaia Anabitarte 448012c6b6 MDL-67790 core_contentbank: Add Rename content option 2020-05-04 20:15:05 +02:00
Sara Arjona a58e8cb0a1 Merge branch 'MDL-68379-master' of git://github.com/ferranrecio/moodle 2020-05-04 20:02:06 +02:00
Sara Arjona da2f9f6510 Merge branch 'MDL-67713-master' of git://github.com/ferranrecio/moodle 2020-05-04 19:30:45 +02:00
Ferran Recio 9848594715 MDL-68381 mod_h5pactivity: add attempt duration, completion and success 2020-05-04 18:53:00 +02:00
Ferran Recio 72a2335151 MDL-68379 core_xapi: adding result, attachments and context to statement 2020-05-04 18:47:11 +02:00
Ferran Recio 75ba339cdb MDL-68379 mod_h5pactivity: adding item_result to xAPI handler 2020-05-04 18:47:11 +02:00
Ferran Recio 7f5b6adac1 MDL-67713 mod_h5pactivity: adding backup and restore 2020-05-04 18:42:48 +02:00
Paul Holden 8844cb8286 MDL-68500 dataformat: re-factor download/export methods into new class. 2020-05-04 16:01:12 +01:00
Martin Gauk 966556074c MDL-51694 core_grades: use transactions when deleting 2020-05-04 12:48:41 +00:00
fujiwara c4f51bfd31 MDL-68415 email: Fix attachment in email_to_user() 2020-05-04 21:43:57 +09:00
Tim Hunt 33d4f4b0b9 MDL-47750 Atto: allow pasting of images
Note: this works if you have image data on the clipboard (e.g. a
screen-grab). It does not work in most other cases, basically because
web browsers are completely unhelpful in the paste/drop events
they raise. See the detailed analysis of my testing in the tracker
issue. (Hopefully this will improve in future.)
2020-05-04 10:15:08 +01:00
Sara Arjona 271d08f37b Merge branch 'MDL-68315-master' of https://github.com/kabalin/moodle 2020-05-04 10:37:17 +02:00
Paul Holden 1de3b81983 MDL-68500 dataformat: allow instances to export to local file. 2020-05-04 09:32:44 +01:00
Andrew Nicols 3ba4248fe7 Merge branch 'MDL-68502-master' of git://github.com/ferranrecio/moodle 2020-05-04 15:59:04 +08:00
Andrew Nicols 34851c1171 Merge branch 'MDL-68266-master' of git://github.com/bmbrands/moodle 2020-05-04 15:33:14 +08:00
Ferran Recio b4f617a609 MDL-68502 mod_h5pactivity: fixing get_file_info error 2020-05-04 09:30:32 +02:00
Jun Pataleta 716ac2c902 Merge branch 'MDL-68409-master' of git://github.com/andrewnicols/moodle 2020-05-04 15:22:12 +08:00
Bas Brands a521226dd2 MDL-68266 core_course: accessibility improvements for course managent
colour contrast improvements
use custom checkboxes
use accessible colour for text-muted
2020-05-04 09:11:03 +02:00
Andrew Nicols 47d094817f MDL-68409 behat: Fix tests from modal rewrite 2020-05-04 15:08:11 +08:00
Andrew Nicols 67774a9567 MDL-68409 js: Convert cancel modals to ES6 2020-05-04 15:08:11 +08:00
Andrew Nicols 9050f3f17e MDL-68409 js: Convert alert and confirmation dialogues to use modal 2020-05-04 15:08:10 +08:00
Andrew Nicols e8df743b3b MDL-68409 js: Convert core/notification to ES6 2020-05-04 15:07:49 +08:00
Andrew Nicols b810c84f2b MDL-68409 js: Add Alert modal 2020-05-04 15:07:49 +08:00
Andrew Nicols fc3d7d693a MDL-68409 js: Fix eslint failure in modal 2020-05-04 15:07:48 +08:00
Andrew Nicols 92810f7af9 MDL-68409 js: Add setButtonText modal helper 2020-05-04 15:07:48 +08:00
Andrew Nicols fa6101ba27 MDL-68409 js: Add helper to register close event on save/cancel 2020-05-04 15:07:48 +08:00
Adrian Greeve 5d91ca0d7a Merge branch 'MDL-68454-master' of git://github.com/andrewnicols/moodle 2020-05-04 12:18:54 +08:00
Andrew Nicols 2cc28979f0 MDL-68454 mod_feedback: Update get_context to match parent 2020-05-04 11:52:20 +08:00
Andrew Nicols 685fe08003 MDL-68454 table: Improve documentation for dynamic table 2020-05-04 11:52:19 +08:00
Andrew Nicols 5615a772a6 MDL-68454 table: Move guessing of base URL to flexible 2020-05-04 11:52:19 +08:00
Andrew Nicols 56143dd622 MDL-68454 table: Move filterset functionality to flexible_table 2020-05-04 11:52:19 +08:00
Andrew Nicols c00552b3b0 MDL-68454 table: Move get_context from dynamic to flexible 2020-05-04 11:52:19 +08:00
Andrew Nicols ff475522fb MDL-68454 table: Drop get_unique_id_from_argument fn requirement
This was originally intended to be a way for the calling code to specify
data as part of the table construction which could then be used as
appropriate. When the filterset was created the requirement for this
function no longer existed.

Removing this to simplify the API.
2020-05-04 11:52:19 +08:00
Jake Dallimore cd98a57b9f Merge branch 'MDL-68382-master' of https://github.com/HuongNV13/moodle 2020-05-04 10:37:50 +08:00
David Saylor 525a9da269 MDL-52904 completion: reference context in cron query
Co-authored-by: Barbara Lawrence <blawrence@harlow-college.ac.uk>
2020-05-04 09:57:37 +08:00
Jun Pataleta 9d65860430 MDL-52904 completion: Unit tests for daily completion task 2020-05-04 09:57:30 +08:00
Adrian Greeve 4f7b9e3276 Merge branch 'MDL-68330-master-2' of git://github.com/mihailges/moodle 2020-05-04 07:15:03 +08:00
Ruslan Kabalin 50bf320f4d MDL-68592 formslib: Fix inline layout for nested groups 2020-05-03 21:02:30 +01:00
Andrew Nicols 2d1944fe60 Merge branch 'MDL-66263' of https://github.com/stronk7/moodle 2020-05-03 20:21:17 +08:00
Andrew Nicols e2ad2506df Merge branch 'MDL-68589' of https://github.com/stronk7/moodle 2020-05-03 20:13:54 +08:00
Andrew Nicols 53c06b63c5 Merge branch 'MDL-68473-master' of git://github.com/vmdef/moodle 2020-05-03 19:59:46 +08:00
Eloy Lafuente (stronk7) 2f24562d07 MDL-68589 plist: Add information about local changes 2020-05-03 01:28:41 +02:00
Eloy Lafuente (stronk7) bf527c8bf9 MDL-68589 plist: PHP 7.4 curly bracket fixes
Note this is, partially, https://github.com/TECLIB/CFPropertyList/pull/61

I only have applied the stricly required PHP 7.4 changes, keeping
apart the intval() ==> (int) change, because that's unrelated to
this fix.
2020-05-03 01:05:10 +02:00
Eloy Lafuente (stronk7) 31bb99549e MDL-66263 travis: Simple bump to php74
Also update a couple of places (mysql, node)
that were not runnig really on highest. Now they are.
2020-05-02 17:19:15 +02:00
Eloy Lafuente (stronk7) cd391f9922 on-demand release 3.9dev+ 2020-05-02 16:37:31 +02:00
Eloy Lafuente (stronk7) 89696acccf Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-05-02 16:37:29 +02:00
Eloy Lafuente (stronk7) 1097530242 Merge branch 'MDL-68328-dlfix' of https://github.com/cengage/moodle 2020-05-01 23:33:08 +02:00
Claude Vervoort 779e753faf MDL-68328 mod_lti: resourcekey and pwd hidden not removed 2020-05-01 15:03:14 -04:00
Juan Leyva f724514e4f MDL-68537 tool_mobile: Add new features to disable
We need to allow admins to disable the new things coming in the app.
2020-05-01 17:55:38 +02:00
Eloy Lafuente (stronk7) 157f5c9e54 Merge branch 'MDL-66135' of https://github.com/paulholden/moodle 2020-05-01 16:07:56 +02:00
Víctor Déniz Falcón a8455b7240 MDL-68473 core_h5p: moved fixture to anonymous class 2020-05-01 14:25:11 +01:00
Victor Deniz Falcon e4127c9262 MDL-68473 core_h5p: fixed import of moodleform class 2020-05-01 13:59:16 +01:00
Paul Holden e1dfd4b83c MDL-66135 tool_uploadcourse: case-insensitive date string comparison.
Account for PM/pm differences in PHP on different OS.
2020-05-01 09:05:07 +01:00
Jun Pataleta c9a5ccccf0 Merge branch 'MDL-67798-master-fix' of git://github.com/andrewnicols/moodle 2020-05-01 15:44:26 +08:00
Andrew Nicols 9e0c40d1bd MDL-67798 contentbank: Sort data before comparison 2020-05-01 15:42:01 +08:00
Bas Brands 4a6215149e MDL-67689 theme_boost: improve theme designer mode performance 2020-05-01 08:26:50 +02:00
Andrew Nicols 3076dfe55d Merge branch 'MDL-68492-master' of https://github.com/sammarshallou/moodle 2020-05-01 12:07:00 +08:00
Andrew Nicols ce8cc79712 MDL-67798 contentbank: Whitespace fixes 2020-05-01 11:51:15 +08:00
Andrew Nicols 468817abcd Merge branch 'MDL-67798-master' of git://github.com/cescobedo/moodle 2020-05-01 11:43:20 +08:00
Andrew Nicols aa3813b72b Merge branch 'master_MDL-67540' of https://github.com/golenkovm/moodle 2020-05-01 11:20:55 +08:00
Jun Pataleta cfcbebaacb Merge branch 'MDL-68506-master' of git://github.com/andrewnicols/moodle 2020-05-01 11:20:21 +08:00
Andrew Nicols 8d186121ab Merge branch 'MDL-57680' of https://github.com/timhunt/moodle 2020-05-01 11:00:19 +08:00
Dmitrii Metelkin 327da79b27 MDL-67850 quizaccess: change SEB supported versions 2020-05-01 10:59:36 +08:00
Dmitrii Metelkin baed1968b5 MDL-67850 quizaccess: fix broken unit tests 2020-05-01 10:59:08 +08:00
Dmitrii Metelkin 4b6c4f6713 MDL-67850 quizaccess: remove invalid white spaces 2020-05-01 10:58:30 +08:00
Dmitrii Metelkin 4aaf342df7 MDL-67850 lib: remove trailing slash for plist 2020-05-01 10:58:18 +08:00
Andrew Nicols 5a477de341 Merge branch 'MDL-43156' of https://github.com/stronk7/moodle 2020-05-01 10:16:37 +08:00
Eloy Lafuente (stronk7) fcad901c73 Merge branch 'MDL-66135' of https://github.com/paulholden/moodle 2020-05-01 01:51:49 +02:00
Bas Brands 555ec89ad3 MDL-68329 cache: Improve cache performance footer info 2020-05-01 01:13:37 +02:00
Paul Holden d62fc08ed9 MDL-66135 tool_uploadcourse: support custom course fields. 2020-05-01 00:10:15 +01:00
Eloy Lafuente (stronk7) fd0344e388 Merge branch 'MDL-68328-dlfix' of https://github.com/cengage/moodle 2020-05-01 00:32:00 +02:00
Eloy Lafuente (stronk7) 9b0a1e2a98 Merge branch 'MDL-68427-master' of git://github.com/andrewnicols/moodle 2020-04-30 23:35:09 +02:00
Davo Smith 9da975fe21 MDL-43156 core_form: fix handling of fixture form
Also moving it from behat_forms to behat_navigation
2020-04-30 20:39:24 +02:00
Davo Smith 5079271b39 MDL-43156 formslib: newly-created repeat elements get the default values 2020-04-30 20:16:07 +02:00
JayChurchward 869f44063e MDL-68542 editor-atto: Change the bold tag to <strong>. 2020-04-30 11:29:22 -04:00
Mike Churchward 7e03b27dd9 MDL-68541 editor-atto: Limiting alt text length, changing ignore text. 2020-04-30 09:47:59 -04:00
Jun Pataleta 9be6c16a37 Merge branch 'MDL-66732' of https://github.com/paulholden/moodle 2020-04-30 17:16:16 +08:00
Andrew Nicols e217c0f326 Merge branch 'MDL-67075-redis-session-locks' of https://github.com/brendanheywood/moodle 2020-04-30 16:05:05 +08:00
Jun Pataleta 2a858c2d5e Merge branch 'MDL-68404-master' of git://github.com/lucaboesch/moodle 2020-04-30 13:33:45 +08:00
Brendan Heywood 7bc8ccdcf0 MDL-67075 session: Added extra debugging of blocking redis session locks 2020-04-30 13:06:07 +10:00
Jun Pataleta 728b03c049 Merge branch 'MDL-68309-master' of https://github.com/snake/moodle 2020-04-30 09:57:50 +08:00
Jake Dallimore 192a43f109 Merge branch 'MDL-67850-seb-integration-3' of https://github.com/catalyst/moodle 2020-04-30 09:13:14 +08:00
AMOS bot 573704d577 Automatically generated installer lang files 2020-04-30 00:11:50 +00:00
Huong Nguyen d0311165a7 MDL-68446 drag to image qtypes: remove hard-coded image size limits 2020-04-29 22:59:53 +01:00
Eloy Lafuente (stronk7) 9b2b1f3fa5 Merge branch 'MDL-68434-master-enfix' of git://github.com/mudrd8mz/moodle 2020-04-29 22:52:40 +02:00
Huong Nguyen a05ef1307e MDL-58645 Drag and drop onto image questions: responsive support 2020-04-30 00:43:45 +07:00
David Mudrák 8599eb5ebb MDL-68434 lang: Use the updated terminology in the tests 2020-04-29 17:40:58 +02:00
Neosi d772cce77a MDL-68551 editor-atto: change <strike> to <del> 2020-04-29 16:00:12 +01:00
David Mudrák 1338b9df8b MDL-68556 admin: Fix some minor styling issues on the plugins check page
The patch fixes missing space around elements and some other minor
visual issues detected. This was a good opportunity to get rid of custom
CSS rules and use the native bootstrap classes and utilities.
2020-04-29 14:40:45 +02:00
Adrian Greeve b8cf95bb48 Merge branch 'MDL-68442-master' of git://github.com/andrewnicols/moodle 2020-04-29 13:54:57 +08:00
Dmitrii Metelkin 78adf6f63a MDL-67850 quizaccess: remove the old quizaccess_safebrowser
Co-authored-by: Nicholas Hoobin <nicholashoobin@catalyst-au.net>
Co-authored-by: Andrew Madden <andrewmadden@catalyst-au.net>
2020-04-29 14:29:21 +10:00
Andrew Madden 79f621241c MDL-67850 quizaccess: add Safe Exam Browser access rule plugin
Co-authored-by: Nicholas Hoobin <nicholashoobin@catalyst-au.net>
Co-authored-by: Dmitrii Metelkin <dmitriim@catalyst-au.net>
2020-04-29 14:28:54 +10:00
Andrew Madden 3df8492132 MDL-67850 lib: add new plist library
Co-authored-by: Nicholas Hoobin <nicholashoobin@catalyst-au.net>
Co-authored-by: Dmitrii Metelkin <dmitriim@catalyst-au.net>
2020-04-29 14:10:22 +10:00
Andrew Nicols eb0ddccd49 Merge branch 'MDL-68433-adhoc-task-lookahead' of https://github.com/brendanheywood/moodle 2020-04-29 08:22:27 +08:00
Andrew Nicols cb8ad9c76e Merge branch 'MDL-68378-master' of git://github.com/rezaies/moodle 2020-04-29 08:19:09 +08:00
Eloy Lafuente (stronk7) 368dd60877 Merge branch 'MDL-64417' of https://github.com/paulholden/moodle 2020-04-28 23:55:22 +02:00
Eloy Lafuente (stronk7) e8ab043ec2 Merge branch 'MDL-68329-cache-info' of https://github.com/brendanheywood/moodle 2020-04-28 23:34:41 +02:00
Dan Marsden a542fe35b5 MDL-67497 lib: backuptargetimport should be set as captype:read 2020-04-29 08:11:17 +12:00
Jun Pataleta 0ec4dd8333 Merge branch 'MDL-67915-master' of git://github.com/lameze/moodle 2020-04-28 23:11:38 +08:00
Claude Vervoort f259405d02 MDL-68328 mod_lti: use hidden form when deeplink options disabled 2020-04-28 10:18:03 -04:00
Luca Bösch e944a8f86d MDL-68404 gradingform_rubric: Style "Add level" button. 2020-04-28 14:06:49 +02:00
Andrew Nicols b2404fa5e2 Merge branch 'MDL66035_master' of https://github.com/jwalits/moodle 2020-04-28 20:04:34 +08:00
Helen Foster 1fce3f52ac MDL-68434 lang: Import fixed English strings (en_fix)
Significant string changes:

* pluginnamesummary,qtype_ddimageortext and
  pluginnamesummary,qtype_ddmarker - Note about the question type not
  being accessible to visually impaired users

* addresourceoractivity,core - Removing 'resource' as the new activity
  chooser doesn't have resource types separated
2020-04-28 14:01:20 +02:00
Andrew Nicols 38a1ccf7d4 Merge branch 'MDL-68445' of https://github.com/stronk7/moodle 2020-04-28 18:29:20 +08:00
Julien Boulen 7d918bc693 MDL-68137 core_files: replace consecutive dots in filename by single dot 2020-04-28 11:29:35 +02:00
Eloy Lafuente (stronk7) f570a79071 on-demand release 3.9dev+ 2020-04-28 11:15:48 +02:00
Eloy Lafuente (stronk7) 724a1a1d1d NOBUG: Fixed SVG browser compatibility 2020-04-28 11:15:46 +02:00
Eloy Lafuente (stronk7) f5eccb7071 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-04-28 11:15:44 +02:00
Andrew Nicols e684b41b6e Merge branch 'MDL-68525-master' of git://github.com/andrewnicols/moodle 2020-04-28 10:19:56 +02:00
Andrew Nicols 605107b147 Merge branch 'MDL-66259' of https://github.com/stronk7/moodle 2020-04-28 10:19:53 +02:00
Andrew Nicols 594189eb70 Merge branch 'MDL-67316' of https://github.com/stronk7/moodle 2020-04-28 10:19:50 +02:00
Andrew Nicols 96c7c37bf3 Merge branch 'MDL-68047' of https://github.com/stronk7/moodle 2020-04-28 10:19:47 +02:00
Eloy Lafuente (stronk7) b03a63337d Merge branch 'MDL-68342-xsendfile-file' of https://github.com/brendanheywood/moodle 2020-04-28 10:19:44 +02:00
Huong Nguyen 8b52ca84ab MDL-68143 Workshop: should remember collapsed/expanded sections 2020-04-28 13:53:26 +07:00
Huong Nguyen d2fa9e7981 MDL-68382 Drag and drop marker questions: responsive support
These changes also make it possible to print these questions.
2020-04-28 13:52:14 +07:00
Eloy Lafuente (stronk7) c3e04b2c3c MDL-68525 behat: chrome/switches caps not allowed in Chrome > 81
Now we need to use extra_capabilities/chromeOptions/args instead

The former was deprecated long ago, it seems that Chrome 81 has
stopped accepting it. The later seems to be working at very least
since Chrome 76 (haven't gone further back).
2020-04-28 12:31:58 +08:00
Andrew Nicols 829f860321 MDL-68442 user: Add notifications on unenrol/update 2020-04-28 10:21:45 +08:00
Andrew Nicols 478039f99a MDL-68442 user: Rewrite participant status to work with dynamic tables 2020-04-28 10:21:45 +08:00
Andrew Nicols 143ebb9b20 MDL-68442 user: Rewrite enrolment actions as ES6 2020-04-28 10:21:28 +08:00
Brendan Heywood 9f4bb48e40 MDL-68329 cache: Improve cache performance footer info 2020-04-28 10:08:28 +10:00
Eloy Lafuente (stronk7) a8eba6e4f4 Merge branch 'MDL-68383-master' of git://github.com/bmbrands/moodle 2020-04-27 23:40:14 +02:00
Eloy Lafuente (stronk7) b1c4bd23d0 Merge branch 'MDL-68477-master' of git://github.com/lameze/moodle 2020-04-27 23:30:09 +02:00
Eloy Lafuente (stronk7) 20860a339e Merge branch 'master' of https://github.com/DrCuriosity/moodle 2020-04-27 23:08:26 +02:00
Eloy Lafuente (stronk7) 606011b065 Merge branch 'MDL-67797-master' of git://github.com/sarjona/moodle 2020-04-27 23:00:59 +02:00
Juan Leyva e624a2c8a1 MDL-68293 mobile: Update language strings to mention new app plans
We need to update different language strings to let our site admins know about the new app restrictions
(for both features and user devices able to receive notifications)
2020-04-27 18:26:30 +02:00
Eloy Lafuente (stronk7) ab09f4ee5f Merge branch 'MDL-68393-master-availableupdateui' of git://github.com/mudrd8mz/moodle 2020-04-27 17:39:39 +02:00
Eloy Lafuente (stronk7) 06248a23d4 Merge branch 'MDL-67701-master' of git://github.com/ferranrecio/moodle 2020-04-27 17:36:49 +02:00
Eloy Lafuente (stronk7) 65848c3ba4 Merge branch 'MDL-68515-master-report_status_standard' of git://github.com/mudrd8mz/moodle 2020-04-27 17:33:15 +02:00
Eloy Lafuente (stronk7) 5942d26e24 Merge branch 'MDL-65967-master' of https://github.com/danielneis/moodle 2020-04-27 17:31:20 +02:00
hiendinh ad2ef9dd44 MDL-68248 Blocks: My overview block: Add sort by short name 2020-04-27 17:37:45 +07:00
Brendan Heywood 5bf5a7aaeb MDL-68342 files: Add a faster xsendfile method to avoid db lookups 2020-04-27 16:11:34 +10:00
AMOS bot 01cc802d27 Automatically generated installer lang files 2020-04-27 00:11:23 +00:00
Jwalit Shah d743aaf262 MDL-66035 message: Restore missing message preferences files 2020-04-27 09:48:41 +10:00
Tim Hunt 848a29cf51 MDL-57680 form autocomplete: extend Behat tests 2020-04-26 15:11:25 +01:00
Tim Hunt be612e5f68 MDL-57680 form autocomplete: fix triggering change event 2020-04-26 13:23:42 +01:00
Tim Hunt 588b86fd49 MDL-57680 form autocomplete: let singleselects be cleared.
This was already working after ajax had refreshed the choices, it was just
broken on first page load.
2020-04-26 13:23:42 +01:00
Mikhail Golenkov 8c287a6696 MDL-67540 quiz: Start transaction before selecting existing slots.
Co-authored-by: Conn <conn@cmrwarwicker.com>
2020-04-26 10:54:14 +10:00
Thiagolivramento 934ad2c869 MDL-65967 tool_recyclebin: add recycle bin link to category edit menu 2020-04-24 17:07:38 -03:00
Claude Vervoort b33e8c8524 MDL-65306 mod_lti: preserve resourceid restoring older backups 2020-04-24 15:37:55 -04:00
Claude Vervoort cfbc361dd6 MDL-65306 mod_lti: remove direct coupling to subplugin 2020-04-24 15:30:27 -04:00
Claude Vervoort e5423ddb93 MDL-65306 mod_lti: fix deeplinking support for tag and resourceid 2020-04-24 15:30:26 -04:00
Eloy Lafuente (stronk7) 74ccea0127 Merge branch 'MDL-68514-master' of git://github.com/sarjona/moodle 2020-04-24 19:23:16 +02:00
David Mudrák 50396bbe4e MDL-68515 admin: Mark the system status report as a standard plugin 2020-04-24 17:16:46 +02:00
Sara Arjona 44642b0a83 MDL-68514 contentbank: fix behat issues with classic 2020-04-24 16:47:02 +02:00
cescobedo aeacd6c862 MDL-67798 core_contentbank: Add privacy provider 2020-04-24 16:39:41 +02:00
Eloy Lafuente (stronk7) 98cc4d0445 MDL-68445 behat: Bump to 3.6.x
composer.lock generated with PHP 7.2, following:

https://docs.moodle.org/dev/Composer#How_to_prepare_and_submit_composer_changes

Also, ensure Symfony/Process > 4.0 compatibility
(needed for parallel runs)
2020-04-24 15:57:09 +02:00
Eloy Lafuente (stronk7) 486bf50413 MDL-67316 ldap: Pass correct hex chars to hexdec()
Before php74 they were silently discarded, now they
show a deprecation message.
2020-04-24 15:56:38 +02:00
Eloy Lafuente (stronk7) 3b69ed2104 MDL-67316 typo3: Pass correct hex chars to hexdec()
Typo3 was relaying on the feature of base converter
functions silently removing invalid chars so, for example:

'U+00A0' => '00A0' => 160

Since php74, the existence of those invalid chars do produce
a deprecation warning, no matter the outcome continues being the same.

So, here, we are just converting that invalud 'U+' by '0x'
2020-04-24 15:56:38 +02:00
Tim Hunt a196cf5ac1 MDL-66259 qtypes: Add missing comment on get_random_guess_score
A bit off-topic for this issue number, but I noticed it while
working on this, and though it was not worth creating a
separate MDL for.
2020-04-24 15:56:23 +02:00
Tim Hunt 82df13aead MDL-66259 qtype_numerical: remove no-longer relevant todo I noticed 2020-04-24 15:56:23 +02:00
Eloy Lafuente (stronk7) bb930b7d5b MDL-66259 qtypes: get_question_options() always call parent::
To get the question->options initialised, children must
call parent::get_question_options() always. Also, it is
just general good practice. Subclasses are meant to be
adaptations of the base class, not something completely
different.

Note, there are some changes in the data structure
produced (see changes in the tests) but these changes
are not wrong.
2020-04-24 15:56:23 +02:00
Tim Hunt 5c3f700ac7 MDL-66259 quiz responses: fix unrealistic test setup 2020-04-24 15:56:23 +02:00
Eloy Lafuente (stronk7) 0447277904 MDL-66259 qtype: add tests to all remaining involved qtypes
That way we get the load_question_data() method covered
and all the main data, options, hints checked.
2020-04-24 15:56:23 +02:00
Tim Hunt 9874e7cdd0 MDL-66259 qtype_truefalse: unit test of loading questions from the DB
This is about to be changes, so we need a test first to catch regressions.
2020-04-24 15:56:23 +02:00
sam marshall 111cf93b71 MDL-68492 Behat: Use faster direct link steps in lib/tests/behat 2020-04-24 12:09:15 +01:00
sam marshall be32dc800d MDL-68492 Behat: Direct URL links for courses, activities 2020-04-24 12:09:14 +01:00
Tim Hunt fa7431ce50 MDL-68252 question tags: fix tag editing for missingtype questions 2020-04-24 11:26:12 +01:00
Simey Lameze e2f12c2220 MDL-67915 core_table: add support for hide and show of columns 2020-04-24 18:23:34 +08:00
Tim Hunt 89692520e8 MDL-68252 question bank: for 'missingtype' questions, hide actions 2020-04-24 09:58:35 +01:00
Paul Holden adca2ab629 MDL-66135 customfield: allow calling code to set form category headings. 2020-04-24 08:32:54 +01:00
Paul Holden 1084f8bf79 MDL-66135 customfield: method to allow fields to parse values.
This is useful when the value is coming from an external source (e.g. course upload tool).
2020-04-24 08:32:54 +01:00
Sara Arjona 1bb3663c19 MDL-67797 contentbank: review class_exists uses 2020-04-24 09:28:24 +02:00
Sara Arjona 1f8dfe79ce MDL-67797 contentbank: use the search_contents method 2020-04-24 09:28:24 +02:00
Sara Arjona fb445c76c8 MDL-67797 contentbank: add search_contents method 2020-04-24 09:28:24 +02:00
Jun Pataleta 3c28246234 MDL-68355 gradingform_guide: Fix accessibility issues
* Add sr-only label for criterion information.
* Add sr-only label for frequently used comments picker button.
* Removed unused string grade_help.
* Fixed tags for hidden help texts, changing them from <small> to <span>
* Added aria-label for the score and additional comments fields so that
  the user would know which criterion they are currently working on.
* Added score_help and remark_help lang strings for more description
  for the score and additional comments fields.
* Remove text-muted class for additional comments' field label to avoid
  colour contrast issues.
2020-04-24 15:05:09 +08:00
Mihail Geshoski 255a62ff88 MDL-68330 media_videojs: Fix videojs player rendering issue 2020-04-24 14:57:02 +08:00
Andrew Nicols ca69d3875e MDL-68506 core_table: Add a tableContentRefreshed event 2020-04-24 14:53:35 +08:00
Jun Pataleta f6f1014761 MDL-68465 message_email: Deprecate emaildigestsubject lang string 2020-04-24 11:42:40 +08:00
Jun Pataleta 1f7e9a698a MDL-68465 message_email: Add site name to digest email 2020-04-24 11:41:41 +08:00
Jun Pataleta 9df4a4de18 weekly release 3.9dev 2020-04-24 09:41:01 +08:00
Jun Pataleta 529b53030a Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-04-24 09:41:00 +08:00
Mark Johnson f77212a051 MDL-68503 user profile: Make sortorders relative to existing records 2020-04-23 15:55:03 +01:00
Eloy Lafuente (stronk7) b88f74c9ee Merge branch 'MDL-67886' of https://github.com/stronk7/moodle 2020-04-23 16:06:06 +02:00
Tim Hunt 2bfb8d4a3d MDL-63812 qtype_gapselect: fix questions with non-consecutive gap nos 2020-04-23 14:39:52 +01:00
Tim Hunt fdbff6cecb MDL-63812 qtype_gapselect: test data generator to standard qtype pattern 2020-04-23 14:39:52 +01:00
Eloy Lafuente (stronk7) 543b7bcfd9 Merge branch 'MDL-67795-master' of git://github.com/sarjona/moodle 2020-04-23 13:18:43 +02:00
Sara Arjona de322e3de6 MDL-67795 contentbank: make consistent $record vs $content 2020-04-23 13:09:40 +02:00
Sara Arjona 45192e9a87 MDL-67795 contentbank: delete content UI 2020-04-23 13:09:40 +02:00
Sara Arjona 58f85a6c6e MDL-67795 contentbank: clean all the content when uninstalling plugin 2020-04-23 13:09:40 +02:00
Sara Arjona f627173ce3 MDL-67795 contentbank: new external for deleting content 2020-04-23 13:09:40 +02:00
Sara Arjona c0d615e8f9 MDL-67795 contentbank: delete content API 2020-04-23 13:09:40 +02:00
Sara Arjona 7fc73af69b MDL-67795 contentbank: add generator 2020-04-23 13:09:40 +02:00
Sara Arjona 153c45625d MDL-67795 h5p: move methods from player to helper 2020-04-23 13:09:40 +02:00
Eloy Lafuente (stronk7) d584d34967 MDL-67886 phpunit: Make tests cross-db
The suggested SQL in some of the assertions was not cross-db
but db-dependent. Now we just keep that part out from the
assertions, because it's not important to verify the
errors that are being asserted.
2020-04-23 13:03:03 +02:00
Bas Brands d6cd1d87cf MDL-68497 theme_boost: font smoothing for Firefox on Mac 2020-04-23 10:29:07 +02:00
Eloy Lafuente (stronk7) 172d3ee7ab Merge branch 'MDL-67886_master' of git://github.com/mdjnelson/moodle 2020-04-23 15:01:40 +08:00
Eloy Lafuente (stronk7) d56c7547d6 Merge branch 'MDL-58018_master-arraycomparison' of git://github.com/mdjnelson/moodle 2020-04-23 15:00:57 +08:00
Jun Pataleta 66ecaa0b0c Merge branch 'MDL-68392' of https://github.com/stronk7/moodle 2020-04-23 15:00:57 +08:00
Jun Pataleta 1dce78d8d2 Merge branch 'MDL-68341-master' of git://github.com/lameze/moodle 2020-04-23 15:00:56 +08:00
Jun Pataleta 31066f91bd Merge branch 'MDL-68356-master' of git://github.com/cescobedo/moodle 2020-04-23 15:00:56 +08:00
Jun Pataleta 53cecde5a8 Merge branch 'MDL-68339' of https://github.com/stronk7/moodle 2020-04-23 15:00:56 +08:00
Jun Pataleta 799572268b Merge branch 'MDL-67095-master' of git://github.com/cescobedo/moodle 2020-04-23 15:00:55 +08:00
Jun Pataleta 62b586e5a0 Merge branch 'MDL-68318-master' of git://github.com/andrewnicols/moodle 2020-04-23 15:00:55 +08:00
Simey Lameze 8bb8c2852d MDL-68477 libraries: add legend option examples to test page 2020-04-23 09:23:21 +08:00
David Thompson 5bc86614a2 MDL-68477 libraries: support for Chart.js legend options. 2020-04-23 09:23:21 +08:00
AMOS bot e859cf7146 Automatically generated installer lang files 2020-04-23 00:14:29 +00:00
Mark Nelson fad610045b MDL-67886 tool_xmldb: checks for extra indexes 2020-04-23 00:45:43 +02:00
Mark Nelson 47f3fa131a MDL-67886 core: check_database_schema() checks for extra indexes 2020-04-23 00:45:43 +02:00
Mark Nelson a8c38ce85b MDL-67886 core: check_database_schema() checks for missing indexes 2020-04-22 23:22:18 +02:00
Tim Hunt 07d90238c6 MDL-57240 quiz: don't show useless links on overdue attempt summary page 2020-04-22 21:38:19 +01:00
Bas Brands ac00aec239 MDL-68383 contentbank: improve css for content bank 2020-04-22 15:50:46 +02:00
Ferran Recio 05da45ccf2 MDL-67701 mod_h5pactivity: new activity icon 2020-04-22 11:31:13 +02:00
Shamim Rezaie 8a944856eb MDL-68343 gradereport_singleview: Remove adjacent links to the same URL 2020-04-22 04:30:53 +10:00
Shamim Rezaie 976dac3fd1 MDL-68343 gradereport_singleview: Use caption instead of summary
The summary attribute on the table element is obsolete.
2020-04-22 04:30:53 +10:00
Shamim Rezaie 4e9b0c4278 MDL-68343 gradereport_singleview: fix empty links 2020-04-22 04:30:53 +10:00
Shamim Rezaie 1031303a54 MDL-68343 gradereport_singleview: Only output label tag if label exists
This also fixes the issue of having multiple form labels for a single
element.
2020-04-22 04:30:53 +10:00
Shamim Rezaie d28b4ec326 MDL-68343 output: fix html table structure
A <th> that contains no text may result in cells with missing or
incorrect header information. WAVE advises that we should make a cell
a <td> rather than a <th> if the cell must remain empty (such as the
top-left cell in a data table).

Also note that the scope attribute is only valid for <th>
2020-04-22 04:30:53 +10:00
Shamim Rezaie 2a14ef789b MDL-68378 core: url_select listens to accessibleChange event 2020-04-22 04:16:44 +10:00
Shamim Rezaie a97c40cf83 MDL-68378 core: update single_select to listen to accessibleChange event 2020-04-22 04:16:44 +10:00
Shamim Rezaie df35a03367 MDL-68378 forumreport_summary: action menu listens to accessibleChange 2020-04-22 04:16:44 +10:00
Shamim Rezaie 2858814aaa MDL-68378 user: listen to the accessibleChange event instead of change 2020-04-22 04:16:44 +10:00
Shamim Rezaie 505cc918b7 MDL-68378 lib: Added accessibleChange custom event 2020-04-22 04:16:44 +10:00
Mark Nelson 39770792ca MDL-58018 core: add support to redis for read-only sessions 2020-04-21 19:29:12 +02:00
Mark Nelson 7daa126d1d MDL-58018 core: add support to database for read-only sessions 2020-04-21 19:29:12 +02:00
Mark Nelson 4400ed3e1c MDL-58018 core: finish dev to support open sessions without a lock 2020-04-21 19:29:12 +02:00
Paul Holden 54cb5666c1 MDL-64417 message_popup: remove old notifications during cleanup task.
Add upgrade step to remove existing orphaned records.
2020-04-21 14:48:22 +01:00
Paul Holden db8bda61a3 MDL-64417 message: allow processors to run their own cleanup tasks. 2020-04-21 14:48:22 +01:00
Paul Holden 956f636d83 MDL-63609 media_videojs: support Youtube URL start time. 2020-04-21 14:46:05 +01:00
Paul Holden d99e0ab7a2 MDL-62853 privacy: sanitize subcontext paths. 2020-04-21 14:38:22 +01:00
Paul Holden 59f941f6db MDL-66917 admin: validate uploaded plugin version.
Prevent overwriting current plugins with older versions of themselves.
2020-04-21 14:35:59 +01:00
Simey Lameze fb17c31c46 MDL-68341 core_table: fix wrong participanttablehtml variable name 2020-04-21 10:28:05 +08:00
Simey Lameze ad176d6f0a MDL-68341 core_table: improve fetch WS php unit coverage 2020-04-21 10:28:05 +08:00
Simey Lameze 4cf97b7f42 MDL-68341 core_table: add component parameter to fetch WS 2020-04-21 10:28:01 +08:00
cescobedo 3f5e386db7 MDL-68356 core_h5p: Fix h5p mimetype
Add a correct mime type for h5p files and update existing
mime type for stored h5p files.
2020-04-20 17:07:14 +02:00
Adam Eijdenberg 82da35fd51 MDL-58018 core: Enable read-only sessions for key pages
These pages are often loaded in parallel.
2020-04-20 14:13:35 +02:00
Adam Eijdenberg 1c3b89b170 MDL-58018 core: Add support to open sessions without a lock 2020-04-20 14:13:34 +02:00
Bas Brands 45decc81c4 MDL-67881 core_message: fix tab order for message drawer 2020-04-20 11:37:34 +02:00
Adrian Greeve 5d1ff2aa96 Merge branch 'MDL-66920' of https://github.com/Cvmcosta/moodle 2020-04-20 08:28:25 +08:00
Andrew Nicols 8080ea4e72 MDL-68318 core: Add GitHub Funding information
This links directly to our own pages relating to funding.
2020-04-20 07:57:05 +08:00
AMOS bot 971f958a7c Automatically generated installer lang files 2020-04-19 00:13:11 +00:00
Brendan Heywood c80bcd56fd MDL-68443 xmldb: Improve path validation on view_xml action 2020-04-18 20:50:03 +10:00
Andrew Nicols e74c253037 Merge branch 'MDL-67317' of https://github.com/stronk7/moodle 2020-04-17 18:35:10 +08:00
cescobedo e84ce938d9 MDL-67095 core_h5p: Prevent synchronous access to save the same h5p
When deploying a new H5P resource we need to ensure that
we don't start deploying the same H5P in another thread
(e.g. for another session/user).
2020-04-17 09:14:18 +02:00
David Thompson ab0d409991 MDL-68386 libraries: Enhancement for Area Charts support with chart.js. 2020-04-17 09:12:41 +12:00
Eloy Lafuente (stronk7) 5d0b046594 MDL-67317 behat: Bump to 3.39.2 moodle-behat-extension
It comes with behat/mink 1.8.x that provides php74 compatibility.

lock file generated with php72 (min version supported by the branch)
2020-04-16 20:28:49 +02:00
Eloy Lafuente (stronk7) 98f56e6f4b MDL-67317 behat: Ensure that on every scenario we have a session.
Before Mink 1.8.0, any call to getSession() used to auto-start
the session if it was not avaliable there. That always has been
an unsupported detail.

With https://github.com/minkphp/Mink/pull/705 new sessions aren't
auto-created anymore.

And we were relying on that.

So this is, simply about to explicitly create the new session
in our before_scenario stuff, to guarantee that it's always there.
2020-04-16 20:28:49 +02:00
Eloy Lafuente (stronk7) 3d88307f8f MDL-68339 message: move array_key_exists() to property_exists()
Towards PHP 7.4 compliance:

array_key_exists(): Using array_key_exists() on objects is
deprecated. Use isset() or property_exists() instead
2020-04-16 20:28:22 +02:00
Eloy Lafuente (stronk7) 788dfb9c7d weekly release 3.9dev 2020-04-16 19:33:49 +02:00
Eloy Lafuente (stronk7) 6f9a84348c NOBUG: Fixed SVG browser compatibility 2020-04-16 19:33:44 +02:00
Eloy Lafuente (stronk7) 877c5c7d9f Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-04-16 19:33:42 +02:00
Sara Arjona 0a05ca3604 MDL-67788 h5p: fix issue for non logged-in users 2020-04-16 15:50:10 +02:00
Brendan Heywood 611d6c1e29 MDL-68433 tasks: Limit the adhoc task queue look ahead 2020-04-16 23:33:07 +10:00
carlos 32591786d9 MDL-66920 mod_lti: Allow usage of both JWKS URI and Public Key
- Changed mod_lti edit_form.php to add necessary fields.
- Added configuration field 'keytype' that can be RSA_KEY or JWK_KEYSET, defaulting to RSA_KEY if none is found.
- Changed mod_lti locallib.php to add the usage of jwk in the verifications of jwt's.
- Changed mod_lti token.php to call the verification function from locallib.php.
- Caches the keyset endpoint content of any given lti tool.
- Updated language files to accommodate new functionalities.
- Added test method for JWK functionalities.
- Added test_keyset file in the fixtures folder.
- Bumped the mod_lti version to 2020022200.
2020-04-16 08:53:53 -03:00
Sara Arjona 2ac1d9aedf MDL-67814 h5p: recover missed xAPI settings 2020-04-16 09:36:05 +01:00
Andrew Nicols 3e5a8acc85 MDL-68427 core: Correct previous/next page in paging bar 2020-04-16 14:40:01 +08:00
Adrian Greeve 1e33203b82 MDL-67814 core_h5p: Revert of eslintignore change
Also has update to fix js global properly.
2020-04-16 14:02:25 +08:00
Jun Pataleta 477ef861a0 Merge branch 'MDL-68113-master' of https://github.com/HuongNV13/moodle 2020-04-16 11:46:50 +08:00
Adrian Greeve 7b13120ad1 MDL-67814 core_h5p: Update to eslintignore to handle included file.
The H5PEditor is already loaded. This causes grunt to complain.
2020-04-16 11:42:53 +08:00
Víctor Déniz Falcón eeb90e7e70 MDL-67814 core_h5p: added renderer and editor classes 2020-04-16 11:29:35 +08:00
Víctor Déniz Falcón 8c325d3feb MDL-67814 core_h5p: modifications to interact with the Hub selector
The HUB selector allows you to install/update H5P content types from
the H5P editor. We have moved these features to the Content Bank, so we
will not show the HUB selector in the H5P editor.
2020-04-16 11:29:35 +08:00
Víctor Déniz Falcón a0ce8f87b3 MDL-67814 core_h5p: moved common methods from player to helper class 2020-04-16 11:29:35 +08:00
Víctor Déniz Falcón 6da050d72a MDL-67814 core_h5p: implemented H5P Core/Editor library interfaces 2020-04-16 11:29:35 +08:00
Víctor Déniz Falcón 8d702491bc MDL-67814 core_h5p: added H5P Editor PHP library
Added the third party libray "H5P Editor PHP to the v124 h5plib plugin.
2020-04-16 11:27:49 +08:00
Adrian Greeve 50dbf7e9c8 Merge branch 'MDL-68196-master' of git://github.com/rezaies/moodle 2020-04-16 10:55:11 +08:00
Shamim Rezaie 517e568e5a MDL-68196 core: not expand autocomplete elements too soon on IE 2020-04-16 12:25:37 +10:00
Eloy Lafuente (stronk7) d26a13b407 Merge branch 'MDL-66849-master' of https://github.com/ised-isde-canada/moodle 2020-04-16 01:01:32 +02:00
Eloy Lafuente (stronk7) 2347ab5a3b Merge branch 'MDL-68323-master' of git://github.com/marinaglancy/moodle 2020-04-16 00:47:20 +02:00
Eloy Lafuente (stronk7) 9c2e8e3bd3 Merge branch 'MDL-68279' of https://github.com/paulholden/moodle 2020-04-16 00:27:44 +02:00
Eloy Lafuente (stronk7) 41e7042781 Merge branch 'MDL-68189' of https://github.com/NeillM/moodle 2020-04-16 00:13:32 +02:00
Eloy Lafuente (stronk7) 58e73daa59 Merge branch 'MDL-68280' of https://github.com/paulholden/moodle 2020-04-16 00:10:35 +02:00
Eloy Lafuente (stronk7) 8467cbf226 Merge branch 'MDL-67786-master' of git://github.com/aanabit/moodle 2020-04-15 23:45:48 +02:00
Amaia Anabitarte bd4e0a7664 MDL-67786 core_contentbank: Unit and behat tests 2020-04-15 23:45:08 +02:00
Amaia Anabitarte 70819075c6 MDL-67786 core_contentbank: add testable_plugin
Co-authored by: Sara Arjona <sara@moodle.com>
2020-04-15 23:45:08 +02:00
Amaia Anabitarte 43c2d0fe47 MDL-67786 core_contentbank: Templates and theme CSS 2020-04-15 23:45:08 +02:00
Amaia Anabitarte 2867550e39 MDL-67786 contenttype_h5p: New H5P content type plugin for content bank 2020-04-15 23:45:08 +02:00
Amaia Anabitarte 33b8ca26f9 MDL-67786 core_contentbank: New content bank contenttype plugin type
Co-authored by: Ferran Recio <ferran@moodle.com>
2020-04-15 23:45:08 +02:00
Paul Holden 16f05b5c22 MDL-66732 core: config option to force whether site considered public. 2020-04-15 22:08:49 +01:00
Paul Holden ab106ad70f MDL-66732 core: improve detection of non-public sites. 2020-04-15 21:54:29 +01:00
Sara Arjona 106974b31a Merge branch 'MDL-67751' of https://github.com/paulholden/moodle 2020-04-15 17:57:05 +02:00
Jun Pataleta 6b4a66b0bc Merge branch 'MDL-68288-master' of git://github.com/lameze/moodle 2020-04-15 23:20:23 +08:00
Jun Pataleta 9b77dc8db2 Merge branch 'MDL-66200-master_gradebook_csv_import' of https://github.com/jwalits/moodle 2020-04-15 23:16:57 +08:00
Paul Holden 2c469d3843 MDL-67751 course: include inline folders in list of resources. 2020-04-15 13:59:50 +01:00
Eloy Lafuente (stronk7) d9776bc02a Merge branch 'MDL-67499' of git://github.com/paulholden/moodle 2020-04-15 12:49:14 +02:00
Sara Arjona 0720504587 Merge branch 'MDL-67788-master' of git://github.com/ferranrecio/moodle 2020-04-15 09:53:03 +02:00
Bas Brands 64de4deced MDL-68301 theme_boost: move course format css
this reduces duplication of css in format_topic
and format_weeks
2020-04-15 09:52:10 +02:00
Adrian Greeve 06b1f01216 Merge branch 'MDL-67663-master-3' of git://github.com/junpataleta/moodle 2020-04-15 13:19:18 +08:00
Michael Milette 8056397b7e MDL-66849 output: Remove custom menu title when not specified 2020-04-14 22:27:06 -04:00
Ferran Recio 6cdf1d76ff MDL-67788 mod_h5pactivity: update activity attempt privacy 2020-04-14 16:58:10 +02:00
Ferran Recio 0aeec79a2a MDL-67788 mod_h5pactivity: add xAPI attempts track to activity 2020-04-14 16:58:10 +02:00
Jun Pataleta e7845f9fa7 Merge branch 'MDL-68405-master' of git://github.com/andrewnicols/moodle 2020-04-14 16:09:42 +08:00
Andrew Nicols 986bf4e988 MDL-68405 behat: Fix gherkinlint failures 2020-04-14 15:09:13 +08:00
Andrew Nicols 57b1653a37 MDL-68405 js: Ensure correct exit code for gherkinlint 2020-04-14 15:09:13 +08:00
Ferran Recio ad9589f64c MDL-67788 core_h5p: add evaluable h5p to fixtures 2020-04-13 12:39:58 +02:00
Ferran Recio 8685c313e0 MDL-67788 core_h5p: add tracking to player 2020-04-13 12:39:58 +02:00
AMOS bot e46b5fa096 Automatically generated installer lang files 2020-04-11 00:11:47 +00:00
AMOS bot d83db4f583 Automatically generated installer lang files 2020-04-11 00:11:46 +00:00
Eloy Lafuente (stronk7) 594b4b98b7 Merge branch 'MDL-67587-master-1' of git://github.com/mihailges/moodle
Changed PARAM_TEXT to PARAM_NOTAGS to "search" param
because it's the same but WITHOUT lang support and we
don't need lang support there.

Of course, both require to verify that the output is always
escaped. In this case (mustache) it is. Or also p() or s().

Without that XSS on form values are relatively easy!
2020-04-10 17:04:13 +02:00
David Mudrák 3c94533810 MDL-68393 admin: Fix some minor styling issues on the notifications page
The patch makes the available update information elements more
distinguishable, the Download button more prominent, and the Check for
available update button better aligned. It reduces the space between
multiple available Moodle updates, too.
2020-04-10 14:41:42 +02:00
Sara Arjona 767fa3a64b Merge branch 'MDL-68112-master' of git://github.com/peterRd/moodle 2020-04-10 12:11:29 +02:00
Eloy Lafuente (stronk7) f167f93799 Merge branch 'MDL-67919-master' of git://github.com/sarjona/moodle 2020-04-10 11:54:17 +02:00
Eloy Lafuente (stronk7) 2bf69bbc9a Merge branch 'MDL-67910-master' of git://github.com/sarjona/moodle 2020-04-10 11:10:16 +02:00
Luca Bösch 9901ce5f68 MDL-68392 travis: Fix validation warnings and infos
Can verify that this file passes the validation @
https://config.travis-ci.com/explore
2020-04-10 00:12:16 +02:00
Mihail Geshoski b15b259696 MDL-68112 core_course: Override bootstrap classes
Override bootstrap classes to keep original design
2020-04-09 18:21:25 +08:00
Peter Dias 95dceedd2f MDL-68112 core_course: Use bootstrap input-group 2020-04-09 18:21:24 +08:00
Jun Pataleta bed9308ef5 MDL-67663 mod_forum: Show/hide elements from screen reader on search
* When the search input gets shown, users can still navigate on the
close button and the grading status container which can cause confusion
among users. So hide and show them accordingly as well.
* Hide/show user picker and body container when the search results
container is shown/hidden.
2020-04-09 17:50:09 +08:00
Jun Pataleta 9183c0c91a MDL-67663 core: Do not use aria-hidden="false" on drawer
From https://www.w3.org/TR/wai-aria-1.1/#aria-hidden:
* "aria-hidden="false" is known to work inconsistently in browsers"
2020-04-09 17:50:09 +08:00
Jun Pataleta 0d3a580e03 MDL-67663 mod_forum: Add missing lang strings 2020-04-09 17:50:09 +08:00
Jun Pataleta 5803df2344 MDL-67663 mod_forum: Designate forum grading landmark regions
Adding the following landmark regions for easier keyboard navigation:
* Forum grading navigation
* User's forum posts
* Forum grading panel
2020-04-09 17:50:09 +08:00
Jun Pataleta a37c40d31f MDL-67663 mod_forum: Use proper lang string for aria-label
Use a proper language string for the aria-label of the hide grader
panel button instead of a hard-coded one.
2020-04-09 17:50:09 +08:00
Jun Pataleta f63503a603 MDL-67663 mod_forum: Fix focus order of the grading form
* Focus should flow from the form header down to the forum posts, and
then to the grading panel itself.
2020-04-09 17:50:08 +08:00
Jun Pataleta d0f8a42e5f MDL-67663 mod_forum: Make user switching more accessible
* Add a more descriptive label for the next and previous buttons so that
the users would know that clicking on the next or previous buttons will
save the changes they made before proceeding to the next user.
* Add an sr-only div with aria-live to the user picker to let the grader
know the current user that is being graded.
* Hide the user picture from screen readers
2020-04-09 17:50:08 +08:00
Mihail Geshoski 0da3443539 MDL-67587 course: Add unit tests 2020-04-09 09:17:53 +08:00
Mihail Geshoski ccffe30d5b MDL-67587 course: Add behat tests 2020-04-09 09:17:53 +08:00
Mihail Geshoski d379dc9b0c MDL-67587 course: Add search in recommended activities admin page 2020-04-09 09:17:53 +08:00
Jwalit Shah c74ccbcbaa MDL-66200 gradebook: check selected feedback option when importing data 2020-04-09 11:01:15 +10:00
Simey Lameze bc6f5f23ea MDL-68341 core_user: move and rename participants_table class 2020-04-09 07:08:44 +08:00
Simey Lameze f7b84afe15 MDL-68288 core_table: support pagination bar for dynamic tables 2020-04-09 07:06:35 +08:00
carlos a2a13f2786 MDL-66920 lib/php-jwt: Update to version 5.2.0 to add JWK support
- Updated firebase/php-jwt library to version 5.2.0 that has JWK support.
- Changed thirdpartylibs.xml to reflect version change.
2020-04-08 13:12:23 -03:00
Sara Arjona df0e58adb1 weekly release 3.9dev 2020-04-08 16:24:37 +02:00
Sara Arjona 1bd3bdf029 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-04-08 16:24:34 +02:00
Andrew Nicols 9056efdb56 Merge branch 'MDL-68185-performance-checks-fixing2' of https://github.com/brendanheywood/moodle 2020-04-08 12:43:56 +08:00
Andrew Nicols aae4b15631 Merge branch 'MDL-47271-status-api-fixes' of https://github.com/brendanheywood/moodle 2020-04-08 12:37:52 +08:00
Brendan Heywood 79dbcce8b1 MDL-68185 report_performance: Refactored into Check API 2020-04-08 14:35:33 +10:00
Brendan Heywood 59a44a5bad MDL-47271 tool_task: Added Task API status checks 2020-04-08 14:35:33 +10:00
Brendan Heywood e8e2bd28ec MDL-47271 check: Refactor check table into a renderable 2020-04-08 14:35:33 +10:00
Brendan Heywood 20167daf89 MDL-47271 report_status: Added System status report 2020-04-08 14:35:31 +10:00
Andrew Nicols 7aa6398830 Merge branch 'MDL-68148-master' of git://github.com/rezaies/moodle 2020-04-08 11:20:39 +08:00
Shamim Rezaie 8aecd8579e MDL-68148 user: remove the noscript tag
The submit button remains deactive if js is disabled. So having a
noscript tag to output a submit button here does not make sense.
2020-04-08 11:35:58 +10:00
Shamim Rezaie cf48026307 MDL-68148 user: fixed stray end tag (input) 2020-04-08 11:24:51 +10:00
Shamim Rezaie 3dec4c6ce3 MDL-68148 core_user: avoid multiple enrol buttons with the same id 2020-04-08 11:22:34 +10:00
Shamim Rezaie 8a805e03a4 MDL-68148 core_user: set the fullname column as the header column
ref: https://www.w3.org/WAI/tutorials/tables/
2020-04-08 11:22:34 +10:00
Shamim Rezaie 1a94ddd31b MDL-68148 output: type attribute is unnecessary for javascript resources 2020-04-08 11:22:34 +10:00
Shamim Rezaie 0ad48a3e68 MDL-68148 core: remove cellspacing
The cellspacing attribute of <table> is not supported in HTML5.
So the removed line did not have any effect since ages ago.
2020-04-08 11:22:34 +10:00
Eloy Lafuente (stronk7) f1f1497f04 Merge branch 'MDL-66357-master' of git://github.com/sarjona/moodle 2020-04-08 02:52:15 +02:00
AMOS bot fd236c2062 Automatically generated installer lang files 2020-04-08 00:11:05 +00:00
AMOS bot 9b543efc05 Automatically generated installer lang files 2020-04-08 00:11:05 +00:00
Eloy Lafuente (stronk7) 2c50e08a3b Merge branch 'MDL-68286-master' of git://github.com/andrewnicols/moodle 2020-04-08 00:37:02 +02:00
Eloy Lafuente (stronk7) 2ede5371ed Merge branch 'MDL-67895' of https://github.com/timhunt/moodle 2020-04-08 00:01:33 +02:00
Tim Hunt 9205d263d6 MDL-68256 task admin UI: Grrrr! browsers 2020-04-07 19:04:53 +02:00
Sara Arjona b3f562176c Merge branch 'MDL-40081' of https://github.com/paulholden/moodle 2020-04-07 15:09:56 +02:00
Sara Arjona 3f79d5461d Merge branch 'master_MDL-68223' of https://github.com/golenkovm/moodle 2020-04-07 13:42:20 +02:00
Sara Arjona 55339ca9d0 Merge branch 'master_MDL-65700' of https://github.com/golenkovm/moodle 2020-04-07 13:34:01 +02:00
Mikhail Golenkov 3180869e19 MDL-65700 javascript: Add url-polyfill. 2020-04-07 20:54:46 +10:00
Andrew Nicols 4fc8c1e4f3 Merge branch 'MDL-68285-master' of git://github.com/cescobedo/moodle 2020-04-07 13:25:48 +08:00
Brendan Heywood c1f7368e57 MDL-47271 clilib: Add support for background colors 2020-04-07 12:30:27 +10:00
Andrew Nicols a87a3c12c9 Merge branch 'MDL-68051-master-2' of git://github.com/mihailges/moodle 2020-04-07 10:25:04 +08:00
Andrew Nicols c8eca1f642 Merge branch 'MDL-67818-check-api-fixes' of https://github.com/brendanheywood/moodle 2020-04-07 10:09:34 +08:00
Brendan Heywood a28277697d MDL-67818 check: Rename renderer to be less generic 2020-04-07 12:07:42 +10:00
Eloy Lafuente (stronk7) c3415804c1 Merge branch 'MDL-68147-master' of git://github.com/mihailges/moodle 2020-04-06 19:09:10 +02:00
Sara Arjona dad7f2ba1d Merge branch 'MDL-65539' of https://github.com/NeillM/moodle 2020-04-06 16:40:52 +02:00
Brendan Heywood d71752df93 MDL-67818 auth_none: Moved to improved Check API
AMOS BEGIN
 MOV [check_noauth_details,auth_none],[checknoauthdetails,auth_none]
 MOV [check_noauth_error,auth_none],[checknoautherror,auth_none]
 MOV [check_noauth_name,auth_none],[checknoauthname,auth_none]
 MOV [check_noauth_ok,auth_none],[checknoauthok,auth_none]
AMOS END
2020-04-06 22:08:33 +10:00
Brendan Heywood 26bb3c24d2 MDL-67818 check: Improved Check API to reduce boilerplate 2020-04-06 22:08:15 +10:00
Paul Holden abde761cb6 MDL-40081 completion: clean up criteria records for deleted courses. 2020-04-06 12:22:51 +01:00
Sara Arjona 71576a58e6 Merge branch 'MDL-68231-master' of https://github.com/snake/moodle 2020-04-06 13:22:18 +02:00
Paul Holden 0c68ae88eb MDL-67499 restore: account for deleted user truncated email/username. 2020-04-06 12:09:48 +01:00
Sara Arjona 43cda51ea1 Merge branch 'MDL-68233' of https://github.com/timhunt/moodle 2020-04-06 12:51:22 +02:00
Eloy Lafuente (stronk7) 68ba708334 MDL-67499 restore: add 100% cov. to restore_dbops::precheck_user()
Supports multiple mails to be tested.

So we can perform changes to it and also some related stuff,
like delete_user() with confidence.
2020-04-06 11:48:27 +01:00
Paul Holden 343380d9c8 MDL-67499 user: truncate long username/email during user deletion. 2020-04-06 11:48:27 +01:00
Paul Holden b6ea0ef7ee MDL-68280 user: fix PHP notice for unknown user invalid login token. 2020-04-06 11:46:06 +01:00
Paul Holden 96e7f4f4fd MDL-68279 admin: filter site fullname when sending test email. 2020-04-06 11:41:18 +01:00
Mihail Geshoski 9f1bfca2e8 MDL-68051 course: Fix accessibility issues in chooser tabs navigation 2020-04-06 17:31:23 +08:00
Sara Arjona 9ac9ff50de Merge branch 'MDL-68250-master' of git://github.com/bmbrands/moodle 2020-04-06 10:31:39 +02:00
Sara Arjona b0aaee0e69 Merge branch 'MDL-68239' of https://github.com/NinaHerrmann/moodle 2020-04-06 10:17:44 +02:00
Huong Nguyen f389e916f2 MDL-68113 Drag and drop into text questions: better responsive design
These changes also make it possible to print these questions.
2020-04-06 14:28:29 +07:00
Andrew Nicols c52f3a3efa Merge branch 'MDL-68256' of https://github.com/timhunt/moodle 2020-04-06 15:05:41 +08:00
Andrew Nicols 924d50a3b8 Merge branch 'MDL-67818-check-api' of https://github.com/brendanheywood/moodle 2020-04-06 11:23:39 +08:00
Brendan Heywood 00c2153be1 MDL-67818 check: Added Check API and refactored security checks
AMOS BEGIN
 MOV [check_noauth_details,report_security],[check_noauth_details,auth_none]
 MOV [check_noauth_error,report_security],[check_noauth_error,auth_none]
 MOV [check_noauth_name,report_security],[check_noauth_name,auth_none]
 MOV [check_noauth_ok,report_security],[check_noauth_ok,auth_none]
AMOS END
2020-04-06 12:28:37 +10:00
Andrew Nicols b02d376c9b Merge branch 'MDL-66301-master' of git://github.com/mickhawkins/moodle 2020-04-06 10:13:01 +08:00
Eloy Lafuente (stronk7) 631d2ad7e2 MDL-68047 tcpdf: Prevent images out from cache to be removed
This corresponds to https://github.com/tecnickcom/TCPDF/pull/174
(and was fixed bycommit 510070b) and was a regression causing
image files to be removed unconditionally. Only if the images
are from cache, they can be removed.

It's fixed upstream in version 6.3.4 and up.
2020-04-06 00:29:55 +02:00
Tim Hunt 3d96227305 MDL-68338 qformat_gift: support idnumbers and tags
Hopefully the new format is forwards and backwards compatible.
2020-04-05 17:49:41 +01:00
Ruslan Kabalin 52a268a09d MDL-68315 formslib: Fix completion attribute in course form element.
This fixes 'onlywithcompletion' attribute in course form element.
2020-04-03 20:33:38 +01:00
Sara Arjona 0f51963108 MDL-67919 dataprivacy: Fix behat error when contacting DPO 2020-04-03 19:37:39 +02:00
n_herr03 d097538b01 MDL-68239 mod_data: make required icon in multimenu visible 2020-04-03 12:15:54 +02:00
Andrew Nicols c540a575db MDL-68286 table: Support initials bar for dynamic tables 2020-04-03 16:54:13 +08:00
Neill Magill 28ee72fd68 MDL-65539 dragdrop: Ignore drag proxy in keyboard menu
Before this change the node that is displayed during a the last mouse
drag and drop would be listed in a keyboard drag and drop if it was
the container node of one of the types of node being moved in this action.

If a node is inside a node with the .yui3-dd-proxy class then it is
one of the proxy elements used to display the dragged content during
mouse drag and drop so we will start ignoring it.
2020-04-03 08:36:37 +01:00
Neill Magill b08323a789 MDL-65539 dragdrop: Allow sections and blocks to move to the top
Before this change sections and blocks could not be moved to be the
top item when using keyboard drag and drop.

They can now be moved to the top in one action.

The way they move using keyboard drag and drop has changed when they
are below the item they are dropped on, not instead of appearing
below it they will be placed above it.
2020-04-03 08:36:37 +01:00
Neill Magill 472c953093 MDL-65539 dragdrop: Allow direction detection when using keyboard
Before this change keyboard drag and drop could not detect the
direction of movement, this meant that an item would only be placed
below an item or at the top of a container item.

This change means that extending modules can declare
detectkeyboarddirection to true. This will mean that when an item is
moved it's position will be determined by the direction of travel as
it would be when dragging using the mouse.

If detectkeyboarddirection is true then:

* If you move an item upwards it will be placed before the item
  selected in the drop menu
* If you move a item downwards it will be placed after the item
  selected in the drop menu
* The item above the one being dragged will now be displayed on
  the drop menu

If detectkeyboarddirection is false there will be no change in
behaviour.
2020-04-03 08:36:37 +01:00
Neill Magill b5c9fb4a3d MDL-65539 course: Keyboad drag and drop should not break page
Before this change keyboard drag and drop of sections would alter
the structure of the page.

This occured because in this case the dragnode was the original node
2020-04-03 08:36:36 +01:00
Neill Magill dc489dffe6 MDL-65539 formats: Section labels not updated during move
Before this change when moving a section via drag and drop the
aria-label for the section was not being updated neither was the
title on the drag handle.

The result was the the drop menu on keyboard drag and drop displayed
the wrong information after a section was moved.
2020-04-03 08:36:36 +01:00
Neill Magill 2ad7a19565 MDL-68189 course: Section name change should display in DD menu
This patch removed the sectionname hidden element (that was not used
by the keyboard menu anyway)

Changed the aria-label of the section to aria-labelled by as this
means that the description will change as drag and drop updated
things without the need to add additional JavaScript.
2020-04-03 08:36:17 +01:00
Sara Arjona faf0029eed MDL-66357 core_badges: remove action=0 usage for issuer
In MDL-67971, issuer_json.php was created, to display issuer JSON content.
However, some files were still using action=0 to display this information.
It has been replaced by issuer_json.php.
The action=0 support won't be removed (at least for now), because several
public badges URLs are using it.
2020-04-03 08:09:55 +02:00
Sara Arjona 640628192a MDL-66357 core_badges: set OBv2 as default 2020-04-03 08:09:55 +02:00
Sara Arjona f958f5c19b MDL-66357 core_badges: remove mozilla backpack references
Mozilla backpack closed a few months ago. It was moved to Badgr.io
(as OBv1.0) but as we're also supporting Badgr.io OBv2.0, it
makes no sense to leave old references to Mozilla backpack there.
2020-04-03 08:09:55 +02:00
Andrew Nicols 1c112ac5fd MDL-68286 table: Empty tables need the dynamic table wrapper 2020-04-03 12:08:48 +08:00
Mihail Geshoski 98ec40a8f6 MDL-68147 course: Remove bold styling in recommended activity admin page 2020-04-03 10:29:50 +08:00
Sara Arjona 1d4fdb0d1c weekly release 3.9dev 2020-04-02 16:51:06 +02:00
Sara Arjona 7a3cf8b177 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-04-02 16:51:03 +02:00
Marina Glancy 749a38a7a9 MDL-68323 core: add --max-lint-warnings option to grunt 2020-04-02 13:42:28 +02:00
Eloy Lafuente (stronk7) d9bb17e696 Merge branch 'MDL-68300' of https://github.com/timhunt/moodle 2020-04-02 13:13:36 +02:00
Tim Hunt a0f8944305 MDL-68300 question bank: merge duplicate Duplicate Behat tests 2020-04-02 11:18:55 +01:00
Ferran Recio d8c9c99001 MDL-67734 core_xapi: Fix MSSQL PHPUnit failure with duplicated id 2020-04-02 10:37:41 +02:00
Michael Hawkins 99f928a893 MDL-66301 forumreport_summary: Minor code improvements 2020-04-02 15:17:57 +08:00
Michael Hawkins bff097f216 MDL-66301 forumreport_summary: Refactors and fixes to course report 2020-04-02 13:36:26 +08:00
Michael Hawkins d235f7a017 MDL-66301 forumreport_summary: Improved filter renderer variable names 2020-04-02 13:36:26 +08:00
Michael Hawkins 0e759f616b MDL-66301 forumreport_summary: Made nodetitle string more specific
This is needed now course-level forum summary reports are available,
otherwise places like breadcrumbs are not clear that it relates
to forum data.
2020-04-02 13:36:26 +08:00
Michael Hawkins 380ae3f126 MDL-66301 forumreport_summary: Added course report behat tests 2020-04-02 13:36:25 +08:00
Michael Hawkins 54a3b94452 MDL-66301 forumreport_summary: Add course level reporting
This adds the ability to report on all forums the user has
access to within a course.
2020-04-02 13:36:25 +08:00
Jake Dallimore d3eb1f2f6e MDL-68309 overrides: clarify inactive overrides help string 2020-04-02 09:57:01 +08:00
Andrew Nicols 17f429ed57 Merge branch 'MDL-67734-andrewapocalipse' of git://github.com/ferranrecio/moodle 2020-04-02 09:30:54 +08:00
Jake Dallimore 1bfd325307 Merge branch 'MDL-68165' of https://github.com/stronk7/moodle 2020-04-02 08:42:45 +08:00
Eloy Lafuente (stronk7) a0ea162f63 Merge branch 'MDL-67672-master' of git://github.com/lucaboesch/moodle 2020-04-02 00:16:51 +02:00
Luca Bösch 2ad02280a9 MDL-67672 user: Display name in user menu as elsewhere. 2020-04-02 00:04:38 +02:00
Eloy Lafuente (stronk7) 0ab2f5b506 Merge branch 'MDL-67914-master' of git://github.com/lameze/moodle 2020-04-01 23:41:38 +02:00
Eloy Lafuente (stronk7) 8ba6b97577 Merge branch 'MDL-68265-master' of git://github.com/andrewnicols/moodle 2020-04-01 23:29:13 +02:00
Eloy Lafuente (stronk7) 1172cd028d Merge branch 'MDL-68193_master' of git://github.com/mdjnelson/moodle 2020-04-01 23:22:25 +02:00
Mark Nelson 52f993651c MDL-68193 core: added new database_text_field_content_replaced event 2020-04-01 20:44:10 +02:00
Eloy Lafuente (stronk7) 1b7327c6d4 Merge branch 'MDL-68191' of git://github.com/timhunt/moodle 2020-04-01 20:18:25 +02:00
Eloy Lafuente (stronk7) 36c8bbc542 Merge branch 'MDL-67995-master' of git://github.com/cescobedo/moodle 2020-04-01 19:07:12 +02:00
Ferran Recio 1d4c6f5355 MDL-67734 core_xapi: add xAPI statement support webservice 2020-04-01 14:14:39 +02:00
Jake Dallimore f5609ea9d6 Merge branch 'MDL-67672-master' of git://github.com/lucaboesch/moodle 2020-04-01 16:43:03 +08:00
Sara Arjona 8afa7cca91 Merge branch 'MDL-68281' of https://github.com/stronk7/moodle 2020-04-01 09:25:04 +02:00
Sara Arjona 677f87e010 Merge branch 'MDL-68277' of https://github.com/timhunt/moodle 2020-04-01 09:14:36 +02:00
Simey Lameze a020b02078 MDL-67914 core_table: unit tests for table view fetch webservice 2020-04-01 15:13:35 +08:00
Simey Lameze 1592c3c498 MDL-67914 core_table: implement dynamic table sorting 2020-04-01 15:13:31 +08:00
Luca Bösch dfe22c29c2 MDL-67672 user: Display name in user menu as elsewhere. 2020-04-01 09:03:03 +02:00
Sara Arjona 4aa71debb5 Merge branch 'MDL-68263-master' of git://github.com/mihailges/moodle 2020-04-01 08:58:27 +02:00
Claude Vervoort c986e55773 MDL-67612 mod_lti: tcguid default to siteid 2020-04-01 00:48:15 +02:00
Sara Arjona afb0af9cf9 Merge branch 'MDL-45227-master' of git://github.com/rezaies/moodle 2020-03-31 19:23:01 +02:00
Sara Arjona b835386512 Merge branch 'MDL-58964-master' of git://github.com/abias/moodle 2020-03-31 19:13:15 +02:00
Eloy Lafuente (stronk7) 244f341129 Merge branch 'MDL-64494-master' of git://github.com/bmbrands/moodle 2020-03-31 18:59:09 +02:00
Bas Brands 1a17df089d MDL-64494 theme_boost: accessible theme colours 2020-03-31 18:51:38 +02:00
Eloy Lafuente (stronk7) a63a565a7c Merge branch 'MDL-68300' of https://github.com/timhunt/moodle 2020-03-31 18:16:53 +02:00
Sara Arjona c68080c4c2 Merge branch 'MDL-66245-master' of git://github.com/junpataleta/moodle 2020-03-31 15:09:06 +02:00
Tim Hunt 7459856d26 MDL-68300 questions: un-break duplicating questions without idnumbers
This was a regression caused by MDL-67934
2020-03-31 11:00:39 +01:00
Jake Dallimore d5a9c02947 Merge branch 'MDL-68225-master' of git://github.com/lameze/moodle 2020-03-31 15:16:37 +08:00
Simey Lameze 88659cd703 MDL-68225 core_user: add behat coverage for group modes 2020-03-31 15:09:40 +08:00
Sara Arjona e6ef9d3236 MDL-67910 behat: PendingJS improvements for deleteevent modal 2020-03-31 08:40:03 +02:00
Jake Dallimore 15b0f56ffa Merge branch 'MDL-68144-master' of git://github.com/lucaboesch/moodle 2020-03-31 13:59:27 +08:00
Eloy Lafuente (stronk7) 2bb4e2d868 Merge branch 'MDL-68269-master' of git://github.com/rezaies/moodle 2020-03-30 22:53:33 +02:00
Eloy Lafuente (stronk7) 83ae63e0fb Merge branch 'MDL-68049' of https://github.com/spvickers/moodle 2020-03-30 13:26:21 +02:00
cescobedo c667e6064a MDL-68285 core_h5p: Fix unused variables and undeclared globals 2020-03-30 09:55:32 +02:00
Shamim Rezaie 27d4e606de MDL-68269 form: fieldset in group elements should be full width 2020-03-30 18:29:23 +11:00
Andrew Nicols 6eb9705154 Merge branch 'MDL-52319-master-environmentxml' of git://github.com/mudrd8mz/moodle 2020-03-30 14:35:20 +08:00
cescobedo 3911e71435 MDL-67995 format_singleactivity: Fix dropwdown type of activity 2020-03-30 08:22:54 +02:00
Mihail Geshoski 9ba17166fe MDL-68263 course: Fix error when modules are not fully uninstalled 2020-03-30 14:15:00 +08:00
Mikhail Golenkov 46b81ed5ba MDL-68223 assign: Fix selection of comment text. 2020-03-30 14:43:19 +11:00
Andrew Nicols 9a0523c6b8 MDL-68265 core_question: Switch question import to request dir 2020-03-30 08:14:46 +08:00
Andrew Nicols a32a52b0a6 MDL-68265 mod_lesson: Switch question import to request dir 2020-03-30 08:14:46 +08:00
Tim Hunt 19f221961e MDL-68233 renderers/block: fix reported coding style issues 2020-03-29 15:35:04 +01:00
Tim Hunt 1dcd0d3499 MDL-68233 renderers/block: remove illegal uses of $PAGE and $OUTPUT 2020-03-29 15:34:26 +01:00
AMOS bot 766a4e43fc Automatically generated installer lang files 2020-03-29 00:11:39 +00:00
Tim Hunt 9bf4d19930 MDL-67895 task admin: show defaults when editing a task
Also show the task classname, and the component info above the form.

With some refactoring to eliminate duplicated logic.
2020-03-28 18:40:51 +00:00
Tim Hunt 6fdc0f8796 MDL-68256 task admin: usability improvements
In the table that lists the scheduled tasks:

1. There are badges to show which components are disabled.
2. The plugin name (e.g. auth_ldap) is shown as well as the
   human-readable name (e.g. LDAP server).
3. Where a time column has a non-default value, it is highlighted
   and the default is shown.
4. If the fail-delay is non-zero, the cell is highlighted.
4. If you just interacted with a task (looked at or edited the settings,
   did Run now, or cleared the fail delay) that row is highlighted,
   and scrolled into view when the page loads.

To support this, some of the methods for loading the default tasks
have been extended with an optional argument to leave 'R' as 'R'
rather than replacing with a random number.

Also, mixed into this commit are a bunch of coding style improvements.
Sorry I did not separate them out, but ultimately this makes the
Moodle code better.
2020-03-28 18:40:51 +00:00
Eloy Lafuente (stronk7) 1ee1ce36d6 MDL-68281 unit test: Include required class
Also, add missing line break, that I did not see 1 week ago.
2020-03-28 16:23:34 +01:00
AMOS bot 6c24071d54 Automatically generated installer lang files 2020-03-28 00:11:30 +00:00
Tim Hunt dbf72bb40f MDL-68277 qtype_essay: answer area in reviews should be right size
The answer box size is set by teachers and provides a useful
visual cue how long a response was expected. Therefore, it is
useful to keep the space at least that size in quiz reviews, etc.
2020-03-27 14:11:16 +00:00
Simey Lameze ef4109d265 MDL-68225 core_user: apply group filter to participants page 2020-03-27 21:48:20 +08:00
Eloy Lafuente (stronk7) 6335ed82c2 MDL-68165 install: update the list of stale files for 3.9 2020-03-27 12:57:22 +01:00
Ferran Recio 0a832fa1f0 MDL-67734 core_xapi: add xAPI testsuite 2020-03-27 12:08:45 +01:00
Shamim Rezaie 613c130665 MDL-45227 atto_align: Make IE follow css styling 2020-03-27 21:32:06 +11:00
Shamim Rezaie 31d62654a6 MDL-45227 atto_rtl: Automatically set alignment when direction changes 2020-03-27 21:25:41 +11:00
Shamim Rezaie 372616ace0 MDL-45227 editor_atto: PR changes and improved behat 2020-03-27 21:25:41 +11:00
Avi Levy dbae95c6da MDL-45227 editor_atto: add behat test for RTL and LTR direction 2020-03-27 21:25:41 +11:00
Nadav Kavalerchik b10155308f MDL-45227 editor_atto: Add direction to default ATTO generated markup 2020-03-27 21:25:41 +11:00
Luca Bösch ee7c297da4 MDL-68144 mod_folder: make top margins less dominant for folder content 2020-03-27 07:14:28 +01:00
Jake Dallimore d939d6e769 weekly release 3.9dev 2020-03-27 09:18:29 +08:00
Jake Dallimore 9ac4561b95 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-03-27 09:18:28 +08:00
Eloy Lafuente (stronk7) e0552f271b Merge branch 'MDL-64429' of https://github.com/paulholden/moodle 2020-03-26 18:49:36 +01:00
Paul Holden 091758d512 MDL-64429 tool_usertours: upgrade step to fix existing tours sortorder. 2020-03-26 16:48:59 +00:00
Jun Pataleta 9c7c2d845f Merge branch 'MDL-67072-oidc-additional-login-parameters' of https://github.com/cengage/moodle 2020-03-26 12:15:24 +08:00
Eloy Lafuente (stronk7) 70598a90ca Merge branch 'MDL-68183-master-mysqlpwdresetsql' of git://github.com/mudrd8mz/moodle 2020-03-26 01:08:04 +01:00
Eloy Lafuente (stronk7) 69c8f8ed30 Merge branch 'MDL-63865' of https://github.com/paulholden/moodle 2020-03-26 00:31:55 +01:00
Eloy Lafuente (stronk7) fee4dd7b20 Merge branch 'MDL-68116-master' of git://github.com/sarjona/moodle 2020-03-26 00:13:52 +01:00
Eloy Lafuente (stronk7) 2bcadacd09 Merge branch 'MDL-67442' of https://github.com/jonof/moodle 2020-03-26 00:04:05 +01:00
Jun Pataleta 67077ae5aa Merge branch 'MDL-68149' of https://github.com/timhunt/moodle 2020-03-26 00:10:01 +08:00
Bas Brands b35d4d8e8e MDL-68250 mod_book: make book navigation separation
Make the book navigation more distinguishable from activity navigation
2020-03-25 15:35:15 +01:00
Jun Pataleta 1cc247029e Merge branch 'MDL-68153' of https://github.com/timhunt/moodle 2020-03-25 22:34:36 +08:00
Jun Pataleta f6cf23f2fe Merge branch 'MDL-68111-master' of https://github.com/snake/moodle 2020-03-25 08:43:28 +08:00
Jun Pataleta e17046d2c6 Merge branch 'MDL-67024-master' of git://github.com/farhan6318/moodle 2020-03-25 08:34:41 +08:00
Jake Dallimore 9b8fc9be6d Merge branch 'MDL-67934' of https://github.com/timhunt/moodle 2020-03-25 08:28:27 +08:00
Jake Dallimore 4e9894cd8e Merge branch 'MDL-58413-master-take2' of git://github.com/lucaboesch/moodle 2020-03-25 08:04:47 +08:00
Eloy Lafuente (stronk7) c3b26f17b9 Merge branch 'MDL-67731' of https://github.com/paulholden/moodle 2020-03-24 23:59:26 +01:00
Eloy Lafuente (stronk7) 8cd39a1aa7 Merge branch 'MDL-67930' of https://github.com/paulholden/moodle 2020-03-24 22:48:05 +01:00
Eloy Lafuente (stronk7) 327e851c43 Merge branch 'MDL-68068-master' of git://github.com/cescobedo/moodle 2020-03-24 22:38:59 +01:00
Jake Dallimore b3f19d3547 MDL-68231 core_formats: conditionally swap controls on section drop
When using section drag and drop, the topics and weeks formats expected
the '.section_add_menus' element to be present so it could update it on
section drop. Due to MDL-68056, this control is only sometimes present.
This has been updated to conditionally swap to address this.
2020-03-24 16:43:51 +08:00
Jake Dallimore 82a1e8da34 Merge branch 'MDL-68135-master' of git://github.com/rezaies/moodle 2020-03-24 12:10:33 +08:00
AMOS bot 93d3e4ef13 Automatically generated installer lang files 2020-03-24 00:10:58 +00:00
Alexander Bias d4737c2147 MDL-58964 navigation: Reindex array when element is removed 2020-03-23 21:33:47 +01:00
David Mudrák 754f641f85 MDL-52319 upgrade: Better report the environment checks in CLI scripts
Before we did not display the source of the environment check failure
(whether it was a core check or a plugin) and there was a missing space
before the "Error" status.
2020-03-23 11:23:43 +01:00
Tim Hunt fb37a2d49d MDL-52319 install: Fix some coding style issues 2020-03-23 11:23:43 +01:00
Tim Hunt f3d77f0c9e MDL-52319 upgrade: Also run environment checks if plugins need upgrades
Also perform the environment checks if a plugin triggers the upgrade.
Core upgrade and CLI upgrade was doing this already.
2020-03-23 11:23:43 +01:00
Jake Dallimore 23ea244117 MDL-68111 core: add 'enablemoodlenet' setting to advanced features
This will control whether any MoodleNet features are presented to users
2020-03-23 08:49:12 +08:00
AMOS bot 23442febb3 Automatically generated installer lang files 2020-03-23 00:12:05 +00:00
Paul Holden 8dabade61f MDL-64429 tool_usertours: ensure tour sortorder can't move out of range. 2020-03-22 20:03:52 +00:00
Paul Holden a11e3d90f2 MDL-63865 tool_dataprivacy: unit test for plugin privacy provider. 2020-03-22 19:59:43 +00:00
Paul Holden 5526870052 MDL-67731 backup: fix async restores in progress table listing. 2020-03-22 19:57:34 +00:00
Paul Holden 3e1b05f001 MDL-67930 mod_forum: consistent default group image when hidden. 2020-03-22 19:54:53 +00:00
Adrian Hutchinson 9b0b472dd6 MDL-67072 mod_lti: OIDC additional login parameters 2020-03-20 10:10:02 -04:00
Luca Bösch 45f3858b5f MDL-58413 mod_url: support internationalized domain names.
Internationalized domain names (IDN) do work in the URL resource.
2020-03-20 10:24:53 +01:00
Sara Arjona fb56f5190c MDL-68116 atto_h5p: deprecate unused strings 2020-03-20 10:07:34 +01:00
Sara Arjona 186a0361a3 MDL-68116 atto_h5p: simplify fields to add H5P content
The embed section has been removed in order to simplify this screen.
It was added to make easier include content coming from h5p.org but,
as soon users won't be able to use it, it makes no sense.
Users will still be able to use the "HTML" button to paste the
embed code.
2020-03-20 10:07:34 +01:00
Sara Arjona 728f0fb587 MDL-68116 filter_h5p: remove h5p.org from allowed sources
h5p.org has to be removed as default value for the allowedsources in
the "Display H5P" filter because H5P is going to close it down completely
so that only the author can see the test content.
2020-03-20 10:07:34 +01:00
cescobedo 254add38f2 MDL-68068 core_h5p: Replace $_SESSION by $SESSION
The third-party library H5P has some references to  instead of Moodle's.
That implies that the information is not saved to backends and other issues,
so only the Moodle one should be used by core (core should be free from  and always use .).
2020-03-20 07:51:49 +01:00
Farhan Karmali caf5ebb582 MDL-67024 Lib: Check if user->mnethostid is set before using it 2020-03-20 11:59:04 +05:30
Adrian Greeve f2fc4a9fa1 weekly release 3.9dev 2020-03-20 13:35:42 +08:00
Alexander Bias 13b6b5dce8 MDL-58964 navigation: Add class attributes to Boost flat navigation 2020-03-19 20:34:24 +01:00
Peter Dias dacdc4a467 MDL-60817 file: Populate header only if exists 2020-03-19 15:29:36 +00:00
Stephen Vickers 5140a7bb11 MDL-68049 mod_lti: Fix link-level memberships service
Fix cause of 404 error
Ensure personal name and email fields are included
Add ext_user_username field when being passed in LTI messages
2020-03-19 11:18:39 +00:00
Adrian Greeve aab8d9a1c0 Merge branch 'MDL-68081-master' of https://github.com/kritisingh1/moodle 2020-03-19 11:26:25 +08:00
Adrian Greeve 8783d101df Merge branch 'MDL-68014-master' of git://github.com/peterRd/moodle 2020-03-19 11:03:07 +08:00
Adrian Greeve 9b57e08e8b Merge branch 'MDL-67924' of https://github.com/Chocolate-lightning/moodle 2020-03-19 09:41:30 +08:00
Jun Pataleta b703435b2e Merge branch 'MDL-68108-master' of git://github.com/crazyserver/moodle 2020-03-18 23:01:08 +08:00
Víctor Déniz Falcón fa3ee722b5 Merge branch 'MDL-60817-master-4' of git://github.com/mihailges/moodle 2020-03-18 14:26:30 +00:00
Pau Ferrer Ocaña e6faed9bf0 MDL-68108 formslib: Add element password inline template 2020-03-18 08:45:04 +01:00
Adrian Greeve 5d00c85412 Merge branch 'MDL-67901-master' of git://github.com/bmbrands/moodle 2020-03-18 09:57:41 +08:00
Tim Hunt 4b03530ca8 MDL-68191 CSS minification: apply upstream performance/accuracy fix
There was a bug with the code to strip comments.
https://github.com/matthiasmullie/minify/issues/317

Applying the fix as a Moodle-specific change for now, because the
effect is significant.
2020-03-17 23:26:14 +00:00
Jun Pataleta 3af57b7321 Merge branch 'MDL-68056-master' of https://github.com/snake/moodle 2020-03-18 07:21:22 +08:00
David Mudrák 2d60593892 MDL-68183 auth: Fix the performance of get_complete_user_data search
When searching for the user by a case-insensitive field (email address
is the only one supported now), the performance may be very poor as the
DB cannot use the index due to the LOWER() operation and the full
sequential scan of all the user records is performed. On some DBs such
as MySQL, this can be significantly improved by pre-filtering the users
with accent-insensitive search.

So we first perform accent-insensitive search for potential candidates
in a subselect, which can use the index. Only then we perform the
additional accent-sensitive search on this limited set or records.
2020-03-17 14:52:32 +01:00
David Mudrák 3621b497d2 MDL-68183 auth: Fix the performance of signup_validate_data search query
When searching for other users with the same email address, we perform
the case-insensitive and accent-sensitive search. That may be expensive
as some DBs such as MySQL cannot use the index in that case. Instead,
sequential scan of all the user records is performed and the comparison
uses the LOWER function to filter the matching records. This leads to
significant performance heavy queries which in turn represent a surface
for DoS attacks.

For that reason, we first perform accent-insensitive search for
potential candidates in a subselect, which can use the index. Only then
we perform the additional accent-sensitive search on this limited set or
records.
2020-03-17 14:52:32 +01:00
David Mudrák 77bc884473 MDL-68183 auth: Fix the performance of forgotten password user search
When searching for the user matching the given email address, we perform
the case-insensitive and accent-sensitive search. That may be expensive
as some DBs such as MySQL cannot use the index in that case. Instead,
sequential scan of all the user records is performed and the comparison
uses the LOWER function to filter the matching records. This leads to
significant performance heavy queries which in turn represent a surface
for DoS attacks.

For that reason, we first perform accent-insensitive search for
potential candidates, which can use the index. Only then we perform the
additional accent-sensitive search on this limited set or records.
2020-03-17 14:52:32 +01:00
Sara Arjona 9d95fdf23f Merge branch 'MDL-67707-master' of git://github.com/ferranrecio/moodle 2020-03-17 09:03:12 +01:00
Adrian Greeve 1f0639ed04 Merge branch 'MDL-67907-master' of git://github.com/dpalou/moodle 2020-03-17 16:01:26 +08:00
Adrian Greeve cc00258669 Merge branch 'MDL-67970-master' of git://github.com/rezaies/moodle 2020-03-17 15:23:49 +08:00
Shamim Rezaie f064e11579 MDL-67970 course: More informative aria-label for 'more help' 2020-03-17 18:19:20 +11:00
Shamim Rezaie 99cac46162 MDL-67970 output: use div for content wraping instead of span
span is not a valid content wrapper tag.
Moreover, according to W3C validation service report, it is not valid to
have div elements as children of a span element.
We can safely replace span with div here because the element's css class
is .action and display of .action is set to flex in both boost and
classic themes.
2020-03-17 18:16:25 +11:00
Shamim Rezaie 604df144d2 MDL-67970 output: use fieldset in core/chooser instead of label 2020-03-17 18:16:25 +11:00
Shamim Rezaie 0499a8c24f MDL-67970 core: remove unnecessary roles
- The navigation role is unnecessary for element nav
- The textbox role is unnecessary for element textarea
2020-03-17 18:16:25 +11:00
Shamim Rezaie 4d0e97c781 MDL-67970 output: replace new-sections attribute with data-new-sections
new-sections is not a valid attribute name for the a element.
Replaced that with data-new-sections
2020-03-17 18:16:25 +11:00
Shamim Rezaie b48b4d2244 MDL-67970 output: fixed duplicate id attribute
action_menu::export_for_template generates the id attributes and send it
to core/action_menu_trigger template as part of the attributes variable.
2020-03-17 18:16:25 +11:00
Shamim Rezaie 668df7663f MDL-67970 search: fixed stray end tag (input) 2020-03-17 18:16:25 +11:00
Adrian Greeve 082153573c Merge branch 'MDL-67981' of https://github.com/timhunt/moodle 2020-03-17 11:30:33 +08:00
Ferran Recio 252e112376 MDL-67707 mod_h5pactivity: add plugin to standard list 2020-03-16 17:52:08 +01:00
Ferran Recio b7a416817f MDL-67707 mod_h5pactivity: plugin skeleton
AMOS BEGIN
 CPY [h5poptions,atto_h5p],[h5pdisplay,mod_h5pactivity]
 CPY [downloadbutton,atto_h5p],[displayexport,mod_h5pactivity]
 CPY [embedbutton,atto_h5p],[displayembed,mod_h5pactivity]
 CPY [copyrightbutton,atto_h5p],[displaycopyright,mod_h5pactivity]
AMOS END
2020-03-16 17:52:08 +01:00
Ferran Recio 40cef8afe7 MDL-67707 core_h5p: move shared h5p files to core fixtures 2020-03-16 17:52:08 +01:00
Ferran Recio f3c7e00f13 MDL-67707 core_h5p: add public H5P player methods 2020-03-16 17:52:08 +01:00
Ferran Recio 1e7e255d72 MDL-67707 course: add support for PARAM_ALPHANUM module names 2020-03-16 17:52:08 +01:00
Sara Arjona 0059b1f19c Merge branch 'MDL-67913-master' of git://github.com/lameze/moodle 2020-03-16 09:12:18 +01:00
Simey Lameze 8146335ff4 MDL-67913 core_user: refactor participants page to use new filter API 2020-03-16 11:44:31 +08:00
Simey Lameze 88ba207d2e MDL-67913 core_table: introduce dynamic table interface 2020-03-16 11:44:31 +08:00
Andrew Nicols c43bdf5e13 MDL-67913 user: Add participants table filterset 2020-03-16 11:44:31 +08:00
Andrew Nicols 44effcb419 MDL-67913 core_table: Add filter classes 2020-03-16 11:44:31 +08:00
Andrew Nicols 1142e1bc83 MDL-67913 core: Add new core_table component path 2020-03-16 11:44:31 +08:00
Jake Dallimore af0d644bea MDL-68056 core_course: remove feature test for non-js activity creation
We rely on JS now, so we don't need to keep this feature.
2020-03-16 08:36:38 +08:00
Jake Dallimore aa4d7e1391 MDL-68056 core_course: improve render performance when editing
Only generate the non-ajax controls in cases where we know we need
them. Otherwise, only generate the new link style control. This patch
includes a behat check as many of our tests use the 'I add "Page" to
section "1"' syntax, which runs without JS.
2020-03-16 08:36:38 +08:00
Jonathon Fowler 2a0645b195 MDL-67442 assign: expand/contract text works in all browsers now 2020-03-16 08:55:55 +10:00
Mihail Geshoski 0525ee5825 MDL-60817 mod_workshop: Fix behat tests 2020-03-13 13:17:44 +08:00
Mihail Geshoski 17ddce9676 MDL-60817 core_repository: Show a warning if file extension is modified 2020-03-13 13:17:44 +08:00
Mathew May 6354ead666 MDL-67924 core: Changes to features for Goutte & editing button 2020-03-13 08:50:29 +08:00
Mathew May ddd387ef68 MDL-67924 core: Now show the editing button everywhere 2020-03-13 08:50:14 +08:00
Tim Hunt f2393804bf MDL-67934 questions: give a sensible default idnumber when duplicating 2020-03-12 18:07:11 +00:00
Victor Deniz Falcon 73f8c56dfc weekly release 3.9dev 2020-03-12 14:22:06 +00:00
Victor Deniz Falcon 97f4721885 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-03-12 14:22:00 +00:00
Eloy Lafuente (stronk7) d1feae1cb9 Merge branch 'MDL-66607-master' of git://github.com/andrewnicols/moodle 2020-03-12 10:08:22 +01:00
Andrew Nicols 8fd1dfc795 Merge branch 'MDL-68030-master' of https://github.com/Chocolate-lightning/moodle 2020-03-12 12:42:17 +08:00
Mathew May d2695ab2f3 MDL-68030 core_course: Relocate chooser templates 2020-03-12 12:05:20 +08:00
Mathew May c515848ce0 MDL-68030 core_course: Update behat 2020-03-12 11:51:45 +08:00
Mathew May 4883aabf0d MDL-68030 core_course: Tuncate long module names 2020-03-12 11:51:45 +08:00
Mathew May 486abbcb74 MDL-68030 core_course: Set focus onto the help area header 2020-03-12 11:51:45 +08:00
Mathew May c368657153 MDL-68030 core_course: Properly size elements in the chooser 2020-03-12 11:51:45 +08:00
Eloy Lafuente (stronk7) 41f191b341 Merge branch 'MDL-68125-regression' of https://github.com/brendanheywood/moodle 2020-03-12 01:19:23 +01:00
Eloy Lafuente (stronk7) 0b698cb00b Merge branch 'MDL-67752-master-userstats' of git://github.com/mudrd8mz/moodle 2020-03-12 00:23:30 +01:00
Eloy Lafuente (stronk7) a17bdbd5cf Merge branch 'MDL-68019-master' of git://github.com/peterRd/moodle 2020-03-11 23:47:43 +01:00
Brendan Heywood 17b04bdb25 MDL-68125 core: Fixed $CFG->reverseproxyignore install regression 2020-03-12 09:36:17 +11:00
Eloy Lafuente (stronk7) d950188c19 Merge branch 'MDL-68061-master' of git://github.com/mickhawkins/moodle 2020-03-11 22:56:13 +01:00
Tim Hunt 511801eaa9 MDL-68153 qbank: question of unknown type should not cause fatal error
Regression casued by MDL-67153
2020-03-11 20:40:51 +00:00
Eloy Lafuente (stronk7) 9d6e37b3ef Merge branch 'MDL-67063-master-fix' of github.com:sarjona/moodle 2020-03-11 19:40:14 +01:00
Sara Arjona 7ae4a58229 MDL-67063 core_h5p: return the correct default handler 2020-03-11 18:18:09 +01:00
Tim Hunt 9440b54f8a MDL-68149 qtype_match: correctly distinguish 0 and 0.0 answers
Also added a test for backup & restore (which was working).
2020-03-11 13:43:21 +00:00
Tim Hunt b060e7495c MDL-68149 qtype_match: Updatey tests to follow make_question() pattern 2020-03-11 13:41:13 +00:00
kritisingh1 02c350947f MDL-68081 Groups: Fixes string error in member removal function 2020-03-11 17:28:54 +05:30
Andrew Nicols 56bcfae31f MDL-66607 message: Add pendingJS checks 2020-03-11 16:23:16 +08:00
Andrew Nicols efeaa51edc MDL-66607 message: Resolve race conditions in message deletion process
This commit makes several changes:
1) Explicitly stop polling for messages when a conversation is deleted;
2) Check for deleted conversations when displaying new messages;
3) Do not add a new empty conversation; and
4) Introduce pendingJS checks to ensure that Behat waits for messags to finish rendering.
2020-03-11 16:23:16 +08:00
Andrew Nicols 63e821fb41 Merge branch 'MDL-67063-master' of git://github.com/sarjona/moodle 2020-03-11 16:06:00 +08:00
Sara Arjona 08fda3e0f8 MDL-67063 h5p: new h5plib plugintype for supporting multi coreAPI
A new plugintype has been created for having more than one installed
third-party H5P libraries. Existing libraries have been moved from
lib/h5p to the new h5plib_v124 plugin.
2020-03-11 08:46:16 +01:00
Andrew Nicols e55d14e8d2 Merge branch 'MDL-68146' of https://github.com/stronk7/moodle 2020-03-11 11:33:25 +08:00
Eloy Lafuente (stronk7) 8aee741e24 MDL-68146 forms: remove duped help and advanced icons in checkboxes
They are exceptionally shown later, after the checkbox text already.

This is a fix for the regression introduced by MDL-63424.
2020-03-10 22:59:36 +01:00
Eloy Lafuente (stronk7) 5900253c79 Merge branch 'MDL-65724-master-3' of git://github.com/peterRd/moodle 2020-03-10 13:44:03 +01:00
Eloy Lafuente (stronk7) c3afb828b3 Merge branch 'MDL-67337-master' of git://github.com/aanabit/moodle 2020-03-10 12:56:23 +01:00
Amaia Anabitarte 885d481749 MDL-67337 filter_displayh5p: Apply filter inside <a> tags 2020-03-10 12:10:35 +01:00
Eloy Lafuente (stronk7) c30cddf43b Merge branch 'MDL-67189-master' of git://github.com/dpalou/moodle 2020-03-10 11:28:44 +01:00
Dani Palou 096c46bb4e MDL-67189 external: Add test to catch PHP exceptions 2020-03-10 08:26:43 +01:00
Dani Palou 2603034e0a MDL-67189 external: Catch Throwable in call_external_function 2020-03-10 08:26:43 +01:00
Shamim Rezaie 32ec05466a MDL-68135 output: remove the presentation role from user pic
"presentation" is not a valid role for the img element.
Moreover, it doesn't make sense to have both role="presentation" and
aria-hidden="true" for an element at the same time.
For more info please see:
https://timwright.org/blog/2016/11/19/difference-rolepresentation-aria-hiddentrue/
2020-03-10 16:30:08 +11:00
Eloy Lafuente (stronk7) 9dc5d5ce0b Merge branch 'MDL-67827-master' of git://github.com/andrewnicols/moodle 2020-03-09 20:36:09 +01:00
Sara Arjona 6185f1ce24 Merge branch 'MDL-66671-master' of https://github.com/dthies/moodle 2020-03-09 18:49:02 +01:00
Sara Arjona cd717e8ba8 Merge branch 'MDL-67968-master' of git://github.com/rezaies/moodle 2020-03-09 18:16:56 +01:00
Sara Arjona 19766ef9ad Merge branch 'MDL-67902-master' of git://github.com/rezaies/moodle 2020-03-09 15:06:35 +01:00
AMOS bot 8608c4b0b3 Automatically generated installer lang files 2020-03-09 00:11:44 +00:00
Sara Arjona 32a05b5625 MDL-67063 core: fix error for supporting numbers in component
Component names should always support numbers (but the first character).
This patch will add PARAM_COMPONENT the expected regular expression
to validate the expected format.
2020-03-06 20:21:31 +01:00
Sara Arjona 06299fc604 MDL-67063 output: make public get_jsrev method 2020-03-06 20:21:31 +01:00
Tim Hunt 1b6b554118 MDL-67981 questions: avoid errors deleting contextless questions 2020-03-06 17:57:11 +00:00
Shamim Rezaie f63fd51189 MDL-67968 calendar: use aria-label instead of the abbr tag 2020-03-07 03:27:35 +11:00
Shamim Rezaie 863814c64a MDL-67968 calendar: explain weekday abbreviations 2020-03-06 19:58:25 +11:00
Shamim Rezaie acbbe930eb MDL-67968 form: not to put empty label when no label is available 2020-03-06 19:58:25 +11:00
Shamim Rezaie a728edcb0c MDL-67968 question: do not display sr-only legends
.accesshide was removed because:
 1. It was only kept in case it's still used somewhere, in a custom form
 field for instance.
 2. It was broken since 3.5 where we integrated
 https://github.com/bmbrands/moodle/compare/ab65b87f3d...MDL-62419-master
 So it's been ages that the reason mentioned on point 1 was not being
 satisfied
2020-03-06 19:58:25 +11:00
Shamim Rezaie 8fe311a3a5 MDL-67968 form: grouped element label fix 2020-03-06 19:58:25 +11:00
Peter 74d95c7bf9 MDL-65724 core: Force restore to use the settings from the plan
When importing use the import settings.
2020-03-06 13:43:39 +08:00
Andrew Nicols 604887ce8f MDL-67827 behat: Pending JS improvements for dialogues 2020-03-06 12:59:38 +08:00
Andrew Nicols ae8d60c4a1 MDL-67827 behat: Add missing exception use 2020-03-06 12:59:38 +08:00
AMOS bot 8219570973 Automatically generated installer lang files 2020-03-06 00:10:41 +00:00
Sara Arjona 9df2f66fb4 weekly release 3.9dev 2020-03-05 17:31:15 +01:00
Sara Arjona 2a17d4371d Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-03-05 17:31:12 +01:00
Sara Arjona 546d9047b8 MDL-33671 behat: fix error with Select all/none checkbox 2020-03-05 15:58:56 +01:00
Dani Palou fbe3178a55 MDL-67907 airnotifier: Warn if some settings disabled after get key 2020-03-05 11:58:56 +01:00
Sara Arjona 1654b2fb46 Merge branch 'MDL-33671-master-fix' of git://github.com/andrewnicols/moodle 2020-03-05 09:05:52 +01:00
Michael Hawkins c02a85c786 MDL-67861 core: Fix getremoteaddr unit test to match new proxy setup 2020-03-05 14:39:24 +08:00
Andrew Nicols 0e09bc932d MDL-33671 behat: Check current fieldtype and parent 2020-03-05 14:16:18 +08:00
Peter Dias 006d348624 MDL-68014 lti: Remove alt text for image 2020-03-05 13:37:00 +08:00
Andrew Nicols ff1a10333d Merge branch 'MDL-67263-master' of git://github.com/mihailges/moodle 2020-03-05 13:22:40 +08:00
Mihail Geshoski ae0e9801bd MDL-67263 course: Add behat tests 2020-03-05 11:57:14 +08:00
Mihail Geshoski f152b71dd4 MDL-67263 course: Add search functionality in the activity chooser 2020-03-05 11:56:39 +08:00
Andrew Nicols 4deee83a98 Merge branch 'MDL-67504-Master' of https://github.com/tuanngocnguyen/moodle 2020-03-05 10:46:37 +08:00
Andrew Nicols ba3263332d Merge branch 'MDL-65298' of https://github.com/Chocolate-lightning/moodle 2020-03-05 10:39:25 +08:00
Mathew May f3c47c9ca8 MDL-65298 core_course: Remove unused function parameters 2020-03-05 10:36:41 +08:00
Andrew Nicols 85b9ecdbd9 Merge branch 'master_MDL-67872' of https://github.com/danmarsden/moodle 2020-03-05 09:45:37 +08:00
Brendan Heywood c2366b85b3 MDL-67861 core: Added $CFG->reverseproxyignore IP subnet list
If your server is behind multiple reverse proxies that append to the
X-Forwarded-For header then you will need to specify a comma separated
list of ip addresses or subnets of the reverse proxies to be ignored
in order to find the users correct IP address.
2020-03-05 01:28:05 +01:00
Brendan Heywood 516c8aa506 MDL-67861 libraries: Refactor is_ip_in_subnet_list in ip_utils 2020-03-05 01:28:04 +01:00
Brendan Heywood 1186275685 MDL-67861 admin: Default $CFG->getremoteaddrconf to only use REMOTE_ADDR 2020-03-05 01:28:04 +01:00
Brendan Heywood df0619c7b6 MDL-67861 core: Use last ip in X-Forwarded-For list 2020-03-05 01:28:04 +01:00
Andrew Nicols 534488abfe MDL-65106 theme_classic: Remove unused variable 2020-03-05 08:15:34 +08:00
Andrew Nicols 499f9002da Merge branch 'MDL-65106-master' of git://github.com/bmbrands/moodle 2020-03-05 08:12:56 +08:00
Andrew Nicols 4288e2ca14 MDL-33671 core_files: Correct behat grammar 2020-03-05 07:59:51 +08:00
Andrew Nicols b11c9c19a5 Merge branch 'MDL-33671-master-3' of git://github.com/peterRd/moodle 2020-03-05 07:57:05 +08:00
Eloy Lafuente (stronk7) f41bec72bf Merge branch 'MDL-62768' of https://github.com/paulholden/moodle 2020-03-04 18:33:00 +01:00
Sara Arjona 5cc0ef48c0 Merge branch 'MDL-67696-master' of https://github.com/JayChurchward/moodle 2020-03-04 17:55:27 +01:00
Sara Arjona 92499808cb Merge branch 'MDL-67767-master' of git://github.com/dpalou/moodle 2020-03-04 15:04:47 +01:00
Dani Palou 12da324fc0 MDL-67767 tool_mobile: Allow using more characters in forcedurlscheme 2020-03-04 14:22:22 +01:00
Sara Arjona 4767b7bff1 Merge branch 'MDL-67863-master' of git://github.com/bmbrands/moodle 2020-03-04 14:05:17 +01:00
Sara Arjona 03a4964277 Merge branch 'MDL-67969-master' of git://github.com/rezaies/moodle 2020-03-04 12:58:04 +01:00
Marina Glancy 99b3ce9669 MDL-56287 gradereport_history: Separate groups queries improved 2020-03-04 11:46:52 +01:00
Jun Pataleta 29ddc8ff32 MDL-56287 gradereport_history: Show users from groups that can be viewed 2020-03-04 11:46:52 +01:00
Eloy Lafuente (stronk7) e9e4f9c737 Merge branch 'MDL-67641-master' of git://github.com/dpalou/moodle 2020-03-04 10:47:45 +01:00
Sara Arjona e0a2f774df Merge branch 'MDL-68008-master' of git://github.com/ferranrecio/moodle 2020-03-04 08:40:43 +01:00
Sara Arjona b71604b058 Merge branch 'MDL-68055-master' of https://github.com/snake/moodle 2020-03-04 08:16:47 +01:00
Dani Palou 5a56d34063 MDL-67641 auth: Fix shortname type in get_signup_settings WS 2020-03-04 08:11:11 +01:00
Peter Dias 06dc3a6c27 MDL-33671 core: Remove custom behat selectors
Co-authored-by: Andrew Nicols <andrew@nicols.co.uk>
2020-03-04 13:38:49 +08:00
Jake Dallimore d86274c64b MDL-68055 core_course: export content item description as markdown 2020-03-04 11:44:26 +08:00
AMOS bot 7e62a19127 Automatically generated installer lang files 2020-03-04 00:11:05 +00:00
Eloy Lafuente (stronk7) a2d4ea5f12 Merge branch 'MDL-67728-master' of git://github.com/crazyserver/moodle 2020-03-03 19:50:08 +01:00
Eloy Lafuente (stronk7) 2ff7b7b0da Merge branch 'MDL-68038-master' of git://github.com/sarjona/moodle 2020-03-03 19:45:05 +01:00
Eloy Lafuente (stronk7) bc988c0600 Merge branch 'MDL-67971-master' of git://github.com/sarjona/moodle 2020-03-03 19:02:22 +01:00
Sara Arjona d0b087efa1 Merge branch 'MDL-67993-master' of git://github.com/lameze/moodle 2020-03-03 18:06:23 +01:00
Ferran Recio de5cc3662b MDL-68008 tool_capability: shows multiple contexts when overrides exists 2020-03-03 17:46:11 +01:00
Sara Arjona 07b6ae5f3a Merge branch 'MDL-68048-master-behatnotfound' of git://github.com/mudrd8mz/moodle 2020-03-03 17:01:33 +01:00
Sara Arjona 47f825b3d1 Merge branch 'MDL-68060-master-huburlcompare' of git://github.com/mudrd8mz/moodle 2020-03-03 13:10:00 +01:00
Sara Arjona ae2b9f4814 Merge branch 'MDL-67891' of https://github.com/paulholden/moodle 2020-03-03 12:48:03 +01:00
Sara Arjona bcfab3d736 Merge branch 'MDL-63316' of https://github.com/azito122/moodle 2020-03-03 11:10:36 +01:00
Sara Arjona bcea0d8340 Merge branch 'MDL-67945-master' of git://github.com/ferranrecio/moodle 2020-03-03 10:10:32 +01:00
Sara Arjona dc55029bca Merge branch 'MDL-67749-master' of git://github.com/dpalou/moodle 2020-03-03 09:29:18 +01:00
Peter 3d7d25afce MDL-68019 favourites: Unit test 2020-03-03 13:19:46 +08:00
Peter a216d86c6c MDL-33671 core: Add ability to download selected items
Utilise the new checkbox-toggleall functionality
2020-03-03 07:20:35 +08:00
Peter 5c567c1421 MDL-33671 core: Toggable checkboxes on filepickers 2020-03-03 07:20:35 +08:00
Peter 2f03923602 MDL-33671 core: Allow for bulk delete of files
* Enable bulk delete in a details view
* Behat tests for new functionality
* Unit test for new function
2020-03-03 07:20:35 +08:00
Sara Arjona 564f01694d Merge branch 'MDL-67988-jws-base64url' of https://github.com/cengage/moodle 2020-03-02 13:59:48 +01:00
Paul Holden 07d93d27a0 MDL-67891 tool_cohortroles: move upgrade step inside plugin.
The step added in MDL-67458 was added to core, which broke the upgrade
process if this plugin had been uninstalled prior.
2020-03-02 08:50:43 +00:00
Sara Arjona 2f45b6f7cf MDL-67971 core_badges: review issuer URL 2020-03-02 08:02:08 +01:00
Sara Arjona 3e3b656795 MDL-68038 core_h5p: rename can_update_library test 2020-03-02 08:00:42 +01:00
Nathan Nguyen 464bd7ecd5 MDL-67504 antivirus_clamav: Add scanning tries option 2020-03-02 08:54:02 +11:00
Andrew Zito 1e67849c1f MDL-63316 participants: lastname sort for participants table 2020-02-28 14:34:18 -05:00
Daniel Thies 158898254c MDL-66671 enrol_lti: Skip grade sync when cm deleted 2020-02-28 09:32:24 -06:00
Eloy Lafuente (stronk7) d7374522ed weekly release 3.9dev 2020-02-28 12:22:30 +01:00
Peter b3b2d72c1e MDL-68019 course: Performance improvement with component favourites
Add the ability to get all/select itemtypes within a component
2020-02-28 11:28:15 +08:00
Bas Brands 8ad4255fbe MDL-67863 theme_boost: change keyboard tab order
Move navdrawer up in the dom for a more logical tab order
Hide navdrawer links for tab / screenreader when navdrawer is closed
2020-02-27 17:11:03 +01:00
Eloy Lafuente (stronk7) 5767ceda85 Merge branch 'MDL-67062-master-fix-oracle' of https://github.com/sarjona/moodle 2020-02-27 13:18:58 +01:00
David Mudrák 4e907e7be4 MDL-67752 course: Provide the active user stats during the registration
These new stats provide better insight as they only consider recently
active users and active enrolments only.
2020-02-27 13:14:39 +01:00
David Mudrák c268c1bd3f MDL-67752 course: Improve the average_number_of_participants function
The patch adds two new optional parameters that control the function
behaviour. With default values, the function is backwards compatible and
it simply uses the number of enrolment records. The new parameters allow
to include only active enrolments and/or only recently active users.
2020-02-27 13:14:39 +01:00
Sara Arjona 770cfadd68 MDL-67062 core_h5p: fix oracle distinct error 2020-02-27 13:12:52 +01:00
Eloy Lafuente (stronk7) df6071af65 Merge branch 'MDL-67062-master-fix' of https://github.com/sarjona/moodle 2020-02-27 12:54:30 +01:00
Sara Arjona 91ae2593d6 MDL-67062 core_h5p: behat fix for delete library test 2020-02-27 12:32:21 +01:00
Bas Brands e06b302ed5 MDL-67901 type_multichoice: clear my choice accessibility
Improve the accessibility for the clear my choice option. The
extra radio input controlling the reset feature was removed and
resetting the choice is now controlled by JavaScript.
This fixes the missing label reported in Accessibility audit and W3C
validation of the reset link

By this change this issue also fixes MDL-67280
2020-02-27 10:24:12 +01:00
Michael Hawkins b34f2c75c9 MDL-68061 gradereport_history: Restrict per page config value to int 2020-02-27 13:38:37 +08:00
Jun Pataleta 9585a6fdf7 Merge branch 'MDL-67584-integration-2' of https://github.com/Chocolate-lightning/moodle 2020-02-27 12:36:33 +08:00
Mathew May 6e1a4477d8 MDL-67584 core_course: Activity chooser favouriting frontend 2020-02-27 12:13:35 +08:00
Eloy Lafuente (stronk7) 3bc090db2a Merge branch 'MDL-67865-master' of git://github.com/rezaies/moodle 2020-02-26 23:36:26 +01:00
Eloy Lafuente (stronk7) 6304e6a380 Merge branch 'MDL-64686-master' of git://github.com/lucaboesch/moodle 2020-02-26 23:25:23 +01:00
Eloy Lafuente (stronk7) 01689c8fe4 Merge branch 'MDL-67062-master' of git://github.com/sarjona/moodle 2020-02-26 22:44:47 +01:00
Sara Arjona 64a2bd19b0 MDL-67062 core_h5p: delete libraries
New feature to let admins to remove H5P libraries/content types.

Thanks Ferran Recio for your contribution with the renderer!

AMOS BEGIN
 CPY [actions,core],[actions,core_h5p]
AMOS END
2020-02-26 19:55:34 +01:00
Sara Arjona 2b8d97326d MDL-67062 core_h5p: delete cache assets when removing libraries
The cache assets linked to a library have to be removed also when a
library is deleted, in order to rebuild them again next time they are
required.
2020-02-26 19:55:34 +01:00
Eloy Lafuente (stronk7) 9e5331c331 Merge branch 'MDL-67758-master' of git://github.com/dpalou/moodle 2020-02-26 17:35:38 +01:00
Eloy Lafuente (stronk7) bc418341fe Merge branch 'MDL-67132-LTI-Adv-TriggerCalc' of https://github.com/cengage/moodle 2020-02-26 17:15:50 +01:00
Eloy Lafuente (stronk7) d2ac7726eb Merge branch 'MDL-67979-master-enfix' of git://github.com/mudrd8mz/moodle 2020-02-26 17:13:12 +01:00
Anthony Forth bcc3a463f6 MDL-67945 enrol: missing $DB in edit_instance_form 2020-02-26 16:22:36 +01:00
David Mudrák 2606485ab2 MDL-68060 registration: Improve the sites directory location check
This allows to define the custom HUB_MOODLEORGHUBURL with HTTP Basic
Auth credentials so that the registration features can be tested against
our staging site.
2020-02-26 10:59:15 +01:00
Jun Pataleta 47fd698541 Merge branch 'MDL-67921-master' of git://github.com/sarjona/moodle 2020-02-26 16:51:19 +08:00
Jun Pataleta 042753b27f Merge branch 'master_MDL-67980' of https://github.com/golenkovm/moodle 2020-02-26 14:30:49 +08:00
David Balch 50850003e5 MDL-67993 roles: Fix pix_icon() calls. 2020-02-26 12:01:45 +08:00
Claude Vervoort ae46b7442c MDL-67132 mod_lti: document new param 2020-02-25 21:22:45 -05:00
Eloy Lafuente (stronk7) 392e270c93 Merge branch 'MDL-67950-passwordpolicy-callback' of https://github.com/brendanheywood/moodle 2020-02-26 00:20:49 +01:00
Eloy Lafuente (stronk7) 8e933354a6 Merge branch 'MDL-67644-master' of git://github.com/dpalou/moodle 2020-02-25 23:59:41 +01:00
Eloy Lafuente (stronk7) d1658a47eb Merge branch 'MDL-67806-master' of git://github.com/dpalou/moodle 2020-02-25 23:57:15 +01:00
Eloy Lafuente (stronk7) a32e7f7933 Merge branch 'MDL-67237-master' of git://github.com/dpalou/moodle 2020-02-25 23:53:19 +01:00
Eloy Lafuente (stronk7) b5220abb0f Merge branch 'MDL-67920-master' of git://github.com/aanabit/moodle 2020-02-25 23:32:17 +01:00
Eloy Lafuente (stronk7) db7861cf7a Merge branch 'MDL-67131-master' of git://github.com/cescobedo/moodle 2020-02-25 23:30:41 +01:00
Paul Holden 95f2f7cc9f MDL-62768 tool_policy: add page title & breadcrumb navigation. 2020-02-25 22:03:09 +00:00
Paul Holden bff97f158e MDL-62768 tool_dataprivacy: add page breadcrumbs to navigation. 2020-02-25 21:36:37 +00:00
David Mudrák 930d9782e1 MDL-67979 lang: Reflect the new string wording in the Behat test
This effectively only adds the full stop and would not break the test
but still.
2020-02-25 12:21:09 +01:00
Helen Foster a753f4f9a1 MDL-67979 lang: Import fixed English strings (en_fix)
Significant string changes:

* configcustommenuitems,core_admin - corrected example
* custommenuitems_desc,tool_mobile - fallback behaviour of custom menu
  items in the app
2020-02-25 12:21:09 +01:00
Eloy Lafuente (stronk7) 5ea7d1b205 Merge branch 'MDL-67862-master' of git://github.com/junpataleta/moodle 2020-02-25 12:09:33 +01:00
Eloy Lafuente (stronk7) 8b64627235 Merge branch 'MDL-67364-master' of git://github.com/mickhawkins/moodle 2020-02-25 12:05:33 +01:00
David Mudrák e84ca4fb22 MDL-68048 behat: Fix the ElementNotFoundException message wording
The exception class itself adds the "not found" to the error message.
2020-02-25 11:33:57 +01:00
Jun Pataleta 88fb49b657 Merge branch 'MDL-67846-master' of git://github.com/lameze/moodle 2020-02-25 16:52:45 +08:00
Simey Lameze 041ff27245 MDL-67846 mod_forum: export user full name 2020-02-25 15:26:22 +08:00
Jun Pataleta 6b6705a8ad Merge branch 'MDL-67586-integration' of https://github.com/Chocolate-lightning/moodle 2020-02-25 14:25:16 +08:00
Mathew May e04b4be619 MDL-67586 core_course: Recommended modules frontend 2020-02-25 14:07:40 +08:00
Jun Pataleta b5b7e88caa Merge branch 'MDL-67262' of git://github.com/stronk7/moodle 2020-02-25 09:37:38 +08:00
Eloy Lafuente (stronk7) 30206d545e MDL-67262 core_course: fix behat looking for non-existing page 2020-02-24 23:15:28 +01:00
Shamim Rezaie 032b9d15cb MDL-67902 calendar: keyboard users should be able to toggle day popover 2020-02-25 03:38:35 +11:00
Shamim Rezaie ac0ae31953 MDL-67902 calendar: informative aria label for event days in mini cals 2020-02-25 03:38:35 +11:00
Shamim Rezaie 369fc01391 MDL-67902 calendar: informative aria label for event days in calendar 2020-02-25 03:38:30 +11:00
Shamim Rezaie d24f97c456 MDL-67902 calendar: Fix label of the course filter in calendar 2020-02-24 23:43:10 +11:00
Jun Pataleta c31085bb66 MDL-67262 core_course: Rebuild recommended activities JS module 2020-02-24 16:04:06 +08:00
Jun Pataleta 326527c25b Merge branch 'MDL-67262-master-2' of git://github.com/snake/moodle 2020-02-24 15:56:04 +08:00
Jake Dallimore b3fe33ac75 MDL-67262 core_course: integration review changes 2020-02-24 13:13:49 +08:00
Adrian Greeve ebdbe8736e MDL-67262 core_course: Unit and behat tests for recommendations. 2020-02-24 11:00:44 +08:00
Adrian Greeve cd09777dbd MDL-67262 core_course: Added the ability to recommend activities.
This allows an adminsitrator or a user with
'moodle/course:recommendactivity' to recommend activities in the
activity chooser.
2020-02-24 10:59:55 +08:00
Mikhail Golenkov e63040d02b MDL-67980 tasks: Sort ad-hoc tasks by nextruntime. 2020-02-24 09:30:09 +11:00
Adrian Hutchinson 9c66d72779 MDL-67988 mod_lti: remove padding from JWS base64url encoding 2020-02-21 08:42:41 -08:00
Pau Ferrer Ocaña c6d2e5c5ab MDL-67728 behat: Increase app start timeout 2020-02-21 12:45:05 +01:00
Pau Ferrer Ocaña ab892ccb7a MDL-67728 behat: Improve behat app selectors 2020-02-21 12:45:05 +01:00
cescobedo 5d81efd1f7 MDL-67131 core_h5p: Allow use webservice/pluginfile|tokenpluginfile url
With this fix the player accepts webservice/pluginfile.php, pluginfile.php
and tokenpluginfile.php URLs to find the h5p files.
Also, we allow to build fileurl with the proper endpoint if
the URL is webservice/pluginfile, tokenpluginfile.php or pluginfile.php
as Mobile App needs.
2020-02-21 09:46:23 +01:00
Sara Arjona 92ad6bd901 MDL-67921 core_h5p: re-implement framework->getOption
The implementation done for getOption was not correct because it
was only taking into account the displayoptions for download and
embed.
Besides, setOption implementation has been added.
2020-02-21 09:29:07 +01:00
Amaia Anabitarte f531a30252 MDL-67920 core_h5p: Move upload button into form and fix title
Minor bugs in Site administration > H5P > Manage H5P content types admin page'
2020-02-21 08:59:27 +01:00
Luca Bösch 8398273dfd MDL-64686 theme: align course search form for small screens sizes. 2020-02-21 06:38:08 +01:00
Jun Pataleta 37b2ee3f64 weekly release 3.9dev 2020-02-21 11:02:08 +08:00
Jun Pataleta dd8144ebff Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-02-21 11:01:17 +08:00
Eloy Lafuente (stronk7) a1a5f87093 Merge branch 'MDL-67727-master' of git://github.com/crazyserver/moodle 2020-02-20 16:12:23 +01:00
Jun Pataleta 5a4c63aa4f Merge branch 'MDL-67585-master-4' of git://github.com/snake/moodle 2020-02-20 11:58:02 +08:00
Adrian Greeve a7b2378d72 MDL-67585 core_course: Added legacyitem to exporter.
Legacy items have no id and so can not be favourited nor
recommended. We needed a way to easily determine whether to show
these features in the templates.
2020-02-20 11:42:24 +08:00
Adrian Greeve 54561c885e MDL-67585 core_course: Removing functions introduced this release.
For the initial rewrite of the activity chooser we had some
temporary functions to make everything work. These have been replaced
with different functions and so these functions are now being removed.
2020-02-20 11:42:23 +08:00
Adrian Greeve 618d310663 MDL-67585 core_course: Update to provider to add favourites info.
This adds information to the privacy report about the user being
able to favourite activities in the activity chooser.
2020-02-20 11:42:23 +08:00
Adrian Greeve 5c78541f80 MDL-67585 core_course: Service factory for course content items. 2020-02-20 11:42:23 +08:00
Jake Dallimore 806e736a7c MDL-67585 core_course: use new content item service to load the chooser 2020-02-20 11:42:23 +08:00
Jake Dallimore 85b4eec5b7 MDL-67585 core_course: new web service to return course content items 2020-02-20 11:42:23 +08:00
Jake Dallimore a826857844 MDL-67585 core_course: added web services for content item favourites
Two new services:
add_content_item_to_user_favourites
remove_content_item_from_user_favourites
2020-02-20 11:42:23 +08:00
Jake Dallimore f09e9b887e MDL-67585 core_course: add favouriting to the content item service class 2020-02-20 11:42:22 +08:00
Jake Dallimore 57dfcf951d MDL-67585 core_course: add hook get_all_content_items
Returns all content items which are provided by the plugin, irrespective
of whether or not a user can see an item in a particular course. This is
used to generate a global list of content items, allowing for admin
level features to be added.
2020-02-20 11:42:22 +08:00
Jake Dallimore 520add19d6 MDL-67585 core_course: deprecate the callback get_shortcuts()
This involves a few changes:
- The callback is still called by the repository but only if the
replacement callback get_course_content_items is not implemented.
- Debugging is called when the get_shortcuts callback is called.
- We leave lti's implementation of get_shortcuts alone, in order to
maintain the output of get_module_metadata during its deprecation life
span.
2020-02-20 11:42:21 +08:00
Jake Dallimore 39b9e293e7 MDL-67585 core_course: only accept content items from mods and submods
This matches the prior behaviour in core.
2020-02-20 09:28:57 +08:00
Jake Dallimore 8fc7d83f38 MDL-67585 core_course: add get_course_content_items hook
Plugins use this to report which content items relate to a user in
a course.
2020-02-20 09:28:57 +08:00
Jake Dallimore 38a9d717a9 MDL-67585 format_singleactivity: fix hassubtype to use the service data
TODO: really need to properly work out subtypes lower down in the repo.
2020-02-20 09:28:57 +08:00
Jake Dallimore 12f73788b4 MDL-67585 core_course: deprecate get_module_metadata() from course/lib 2020-02-20 09:28:57 +08:00
Jake Dallimore 2f040002ee MDL-67585 core_course: Use the content_item_service to build the picker
Replace get_module_metadata calls with calls to the new
content_item_service class.
2020-02-20 09:28:57 +08:00
Jake Dallimore dd494a41a4 MDL-67585 core_course: add content_item_service class
The service object encapsulates access control logic and allows
consumers to query content items in different contexts/scopes.
2020-02-20 09:28:57 +08:00
Jake Dallimore 8210186372 MDL-67585 core_course: add user param to course_allowed_module
We want to be able to call this for a user, not rely on a global.
2020-02-20 09:28:57 +08:00
Jake Dallimore eec2d09f84 MDL-67585 core_course: add exporter for course content items
An exporter will allow let us add calculated fields like 'favourited'
to the data being transferred.
2020-02-20 09:28:57 +08:00
Jake Dallimore 7c7ae1bd6f MDL-67585 core_course: add caching_content_item_repository class
A repository object which caches results for a user and course. This
allows this repository to be called many time in a single request - a
pattern we expect when objects of this type replace the existing
get_module_metadata() method.
2020-02-20 09:28:57 +08:00
Jake Dallimore 92715acd0c MDL-67585 core: add course content item cache
To be indexed by userid_courseid.
2020-02-20 09:28:57 +08:00
Jake Dallimore e843336ee6 MDL-67585 core_course: add content_item_readonly_repository class
Add a read-only repository, which returns the list of content items
which can be added to a course. This class does not handle access
control nor user-related data pertaining to to core content_items.
This will be handled in a future commit in any calling code using
the repositories.
2020-02-20 09:28:57 +08:00
Jake Dallimore 94420851a5 MDL-67585 core_course: add support for custom titles to content_item
Plugins have always been able to return either a string or a lang string
when implementing the hook, 'get_shortcuts'. Since content_items will
be the replacement for that stdClass implementation, we need a way
for plugins to continue to have this flexibility. This just provides
a small contract and some classes that plugins can use in future.
2020-02-20 09:28:57 +08:00
Jake Dallimore dd8048e350 MDL-67585 core_course: add the content_item class
Objects of this class represent items able to be added to a course,
including modules and submodules.
2020-02-20 09:28:57 +08:00
Eloy Lafuente (stronk7) a21ba663fd Merge branch 'MDL-67899-master' of git://github.com/rezaies/moodle 2020-02-20 00:41:19 +01:00
Luke Tucker 785271c6d9 MDL-50455: tool_capability: Use static cache when loading context data 2020-02-20 00:27:33 +01:00
Eloy Lafuente (stronk7) 287c044f9c Merge branch 'MDL-67942-master' of https://github.com/HuongNV13/moodle 2020-02-19 19:17:09 +01:00
Eloy Lafuente (stronk7) 2b97ab8adb Merge branch 'MDL-67947' of https://github.com/timhunt/moodle 2020-02-19 17:48:14 +01:00
Tim Hunt 887daf932c MDL-67947 questions: questions_in_use should ask all components
Previously it was only checking mods.
2020-02-19 11:55:04 +00:00
Dani Palou 956232db1d MDL-67749 ws: Set private token when reset or manual create token 2020-02-19 12:03:48 +01:00
Shamim Rezaie 768c318ad6 MDL-67969 lib: Fix duplicate blockinstanceid for fake blocks 2020-02-19 21:20:01 +11:00
Huong Nguyen fbad7a5170 MDL-67942 Quiz: Quiz attempt report delete_selected_attempts issue 2020-02-19 15:34:34 +07:00
Jun Pataleta 56a73a3f1e Merge branch 'MDL-67321-latest' of https://github.com/Chocolate-lightning/moodle 2020-02-19 14:44:13 +08:00
Mathew May c58c23d6c6 MDL-67321 core_course: Add support for tabbing activities in the chooser 2020-02-19 13:28:54 +08:00
Eloy Lafuente (stronk7) 751189a83a Merge branch 'MDL-67471_master' of https://github.com/t-schroeder/moodle 2020-02-18 23:54:35 +01:00
Brendan Heywood 648e20ab6d MDL-67950 core: check_password_policy only fires when passwordpolicy = 1 2020-02-19 09:46:21 +11:00
Eloy Lafuente (stronk7) 39696f9e66 Merge branch 'MDL-61390-master' of git://github.com/junpataleta/moodle 2020-02-18 19:07:05 +01:00
Eloy Lafuente (stronk7) aced9967cc Merge branch 'MDL-67953-master' of git://github.com/andrewnicols/moodle 2020-02-18 17:09:17 +01:00
Eloy Lafuente (stronk7) 29e0c1c85f Merge branch 'MDL-67949-master' of git://github.com/andrewnicols/moodle 2020-02-18 10:20:07 +01:00
Shamim Rezaie c2fa370b0e MDL-67865 output: Fix id of the dropdown trigger 2020-02-18 16:14:45 +11:00
Andrew Nicols d1a7806094 MDL-67949 grunt: normalise component paths 2020-02-18 08:10:24 +08:00
Eloy Lafuente (stronk7) 03a897c038 Merge branch 'MDL-61389-master' of git://github.com/junpataleta/moodle 2020-02-17 23:29:28 +01:00
Eloy Lafuente (stronk7) 245ac91748 Merge branch 'MDL-67309' of https://github.com/Peterburnett/moodle 2020-02-17 22:40:45 +01:00
Eloy Lafuente (stronk7) 1a5a87c4f3 Merge branch 'MDL-67817-master' of https://github.com/dthies/moodle 2020-02-17 22:08:09 +01:00
Eloy Lafuente (stronk7) 82ca0e2afd Merge branch 'MDL-67712-master' of git://github.com/andrewnicols/moodle 2020-02-17 12:28:05 +01:00
Tim Schroeder be8cfe6bcc MDL-67471 message: fixed mark_notification_read with messaging disabled 2020-02-17 09:15:19 +01:00
Bas Brands 46ff4741a1 MDL-65106 theme_classic: set custom navigationitem icon 2020-02-17 09:01:11 +01:00
Jun Pataleta dff9f9564b MDL-61390 mod_forum: Create template for forum search results 2020-02-17 15:55:56 +08:00
Jun Pataleta 904bc48b16 MDL-61389 mod_forum: Descriptive aria-label for "Discuss this topic" 2020-02-17 15:51:23 +08:00
Peter Burnett 59298ccebc MDL-67309 login: Added check for password policy at login time. 2020-02-17 09:55:07 +10:00
Andrew Nicols 843cf97bf6 MDL-67949 grunt: Add debugging information 2020-02-16 11:31:12 +08:00
Andrew Nicols 91434142a4 MDL-67712 grunt: Ensure that more-specific matches are first 2020-02-16 11:03:51 +08:00
AMOS bot 5f581dc9bb Automatically generated installer lang files 2020-02-16 00:11:04 +00:00
Daniel Thies a632739617 MDL-67817 core_date: Add test for timezone localization strings 2020-02-14 11:48:38 -06:00
Daniel Thies bf270d13fa MDL-67817 core_lang: Update timezone strings deprecating old identifiers 2020-02-14 11:48:38 -06:00
Sara Arjona 2c0b08c5a7 weekly release 3.9dev 2020-02-14 12:12:02 +01:00
Sara Arjona 5b21f101ee NOBUG: Fixed SVG browser compatibility 2020-02-14 12:12:00 +01:00
Sara Arjona f8a3ba1c86 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-02-14 12:11:59 +01:00
Jun Pataleta ed683f5f24 Merge branch 'MDL-67965-master' of git://github.com/andrewnicols/moodle 2020-02-14 11:16:42 +01:00
Andrew Nicols cdf6bf03c6 Merge branch 'MDL-67878' of https://github.com/timhunt/moodle 2020-02-14 11:16:39 +01:00
Andrew Nicols 166a314a0c Merge branch 'MDL-67264-review-squashed' of https://github.com/Chocolate-lightning/moodle 2020-02-14 11:16:31 +01:00
Eloy Lafuente (stronk7) d4758fd646 Merge branch 'MDL-67876' of https://github.com/timhunt/moodle 2020-02-14 11:15:33 +01:00
Sara Arjona 4bbf8716fa Merge branch 'MDL-63032-master' of git://github.com/peterRd/moodle 2020-02-14 11:15:30 +01:00
Andrew Nicols c74532c8b3 Merge branch 'MDL-67857' of https://github.com/timhunt/moodle 2020-02-14 11:15:27 +01:00
Eloy Lafuente (stronk7) 49e895a587 Merge branch 'MDL-67532' of https://github.com/paulholden/moodle 2020-02-14 11:15:24 +01:00
Eloy Lafuente (stronk7) 7b98ff28c6 Merge branch 'MDL-67675-master' of git://github.com/rezaies/moodle 2020-02-14 11:15:21 +01:00
Eloy Lafuente (stronk7) f9d0d67d52 Merge branch 'MDL-67690-master' of git://github.com/merrill-oakland/moodle 2020-02-14 11:15:18 +01:00
Andrew Nicols afe13dfe9c MDL-67965 behat: Get theme-specific context classes correctly 2020-02-14 10:15:49 +08:00
Claude Vervoort 4da02a6824 MDL-67132 mod_lti: call grade api to trigger course total computation 2020-02-13 15:20:04 -05:00
Michael Hawkins 2c78a8f479 MDL-67364 output: Add unit testing for editor_scss_to_css 2020-02-13 17:20:32 +08:00
Michael Hawkins 1c10c542f3 MDL-67364 output: Allow child themes to use parent editor_scss config
This still allows child themes to override editor_scss, but will fall
back to what the parent is using if they do not specify it. This
negates the need for every child them to have the config duplicated
in order to utilise it.
2020-02-13 14:01:55 +08:00
Andrew Nicols 48b5817e88 MDL-67953 grunt: Work around spawn length limits 2020-02-13 13:29:28 +08:00
Mathew May e6a5298394 MDL-67264 lib modal: Add deffered promises to content promises 2020-02-13 09:15:41 +08:00
Peter 37cf89b34a MDL-67264 core_course: Activity chooser behat
Update the selectors to use a button
Add new tests to cover new functionality
Add new new step definitions to minimise usage of xpaths

Co-authored-by: Mathew May <mathewm@hotmail.co.nz>
Co-authored-by: Mihail Geshoski <mihail@moodle.com>
Co-authored-by: Peter <peterrolanddias@gmail.com>
2020-02-13 09:15:40 +08:00
Dan Marsden c61619fd1f MDL-67872 lib: fix code compliance with guidelines. 2020-02-13 12:15:02 +13:00
Dan Marsden de8d91ce38 MDL-67872 lib: correct plagiarism config frankenstyle naming. 2020-02-13 12:14:58 +13:00
Tim Hunt 35e1470e06 MDL-67878 grunt: make it works on Windows
To be honest, all the real skill here is Andrew Nicols, but I made the patch, so the credit is mine! All mine!
2020-02-12 15:03:25 +00:00
Dani Palou 29aeab4eee MDL-67644 tool_mobile: Add OAuth 2 providers in disabled features 2020-02-12 14:11:45 +01:00
Tim Hunt ae5d5f2085 MDL-67876 forms: not all field types need validation JS 2020-02-12 10:06:58 +00:00
Tim Hunt a5b56c4da5 MDL-67876 forms: scroll to any invalid element if form cannot submit 2020-02-12 09:32:21 +00:00
Mathew May 05b27f2118 MDL-67264 core_course: Activity chooser new feature
Roll in the base for the new activity chooser
It renders all modules into a modal
Gives the user to add from either the base or help screens
All checked by accessability tools with great coverage
Adds minimal overhead to the course edit setup time

Co-authored-by: Mathew May <mathewm@hotmail.co.nz>
Co-authored-by: Mihail Geshoski <mihail@moodle.com>
2020-02-12 12:35:03 +08:00
Shamim Rezaie cd4c44bea4 MDL-67899 message: Add aria-label to the emoji picker button 2020-02-12 01:01:22 +11:00
Sara Arjona 6b506621a6 Merge branch 'MDL-59303' of https://github.com/paulholden/moodle 2020-02-11 13:52:19 +01:00
Sara Arjona 799c3955e4 Merge branch 'MDL-67635-filesystem-cleanup' of https://github.com/brendanheywood/moodle 2020-02-11 13:22:54 +01:00
Sara Arjona c002fbf3db Merge branch 'MDL-66847-master' of git://github.com/lucaboesch/moodle 2020-02-11 12:28:24 +01:00
Luca Bösch c3fe18506b MDL-66847 webservice: Correct breadcrumb + title for ws documentation. 2020-02-11 12:17:39 +01:00
Sara Arjona a7cd3a17fc Merge branch 'MDL-66834-master' of https://github.com/kepeter/moodle 2020-02-11 11:54:12 +01:00
Sara Arjona 5963c3c8f0 Merge branch 'MDL-67060-master' of git://github.com/aanabit/moodle 2020-02-11 11:40:18 +01:00
Tim Hunt 007d13f147 MDL-67857 formchangechecker: support form submits that dont save 2020-02-11 10:25:45 +00:00
Amaia Anabitarte 78f0e17127 MDL-67060 core_h5p: Behats for H5P tools Overview 2020-02-11 10:26:57 +01:00
Amaia Anabitarte 4e7a035f68 MDL-67060 core_h5p: Improvements to Manage H5P setting page
Co-authored by: Adrian Greeve <adrian@moodle.com>

AMOS BEGIN
 CPY [description,moodle],[description,core_h5p]
 CPY [status,moodle],[status,core_h5p]
AMOS END
2020-02-11 10:26:57 +01:00
Amaia Anabitarte d3ee08dba3 MDL-67060 core_h5p: Improving H5P libraries list 2020-02-11 10:26:57 +01:00
Sara Arjona 855d4db87a Merge branch 'bugfix-MDL-67142' of https://github.com/AngadSethi/moodle 2020-02-11 10:18:49 +01:00
Sara Arjona 4b1d922967 Merge branch 'MDL-67894-master' of https://github.com/grabs/moodle 2020-02-11 08:20:29 +01:00
Peter Dias 1cb6c0bb31 MDL-63032 core: Update the timezone to the latest windows list 2020-02-11 07:17:23 +08:00
Sara Arjona 6ec4ed6f74 Merge branch 'MDL-67192-master' of git://github.com/vmdef/moodle 2020-02-10 17:59:22 +01:00
Dani Palou f95afbaf48 MDL-67758 airnotifier: Send wwwroot to airnotifier 2020-02-10 11:46:40 +01:00
Jun Pataleta 3a836cc110 MDL-66245 privacy: Encode each part of the data URL instead of the whole 2020-02-10 16:55:11 +08:00
Víctor Déniz Falcón fe9bb50cb5 MDL-67192 core_h5p: remove redundant assignment 2020-02-10 08:40:13 +00:00
Víctor Déniz Falcón a23969a5fa MDL-67192 core_h5p: get site UUID from H5P using the API 2020-02-10 08:40:12 +00:00
Jun Pataleta fb31e3da0b MDL-67862 message: Render dialogue header only when necessary 2020-02-10 13:08:31 +08:00
Mihail Geshoski cd2efd12ca MDL-67264 core_course: Begin set up for Activity chooser 2020-02-10 08:14:16 +08:00
Mathew May d6b95b8642 MDL-67264 core_templates: If classes exists render it out 2020-02-10 08:14:16 +08:00
Angad Sethi 86127e774f MDL-67142 quiz: fixed error when deleting saved questions long-name-quiz
An error was showing up while deleting questions
(in the question_save_from_deletion method) which had been saved
and which belonged to a quiz with a super long name, not exceeding 255
characters, as the 'name' field in 'question_categories' table had a
max size of 255 characters. The shorten_text function was used to
shorten the string to 255 characters and a unit test was added with
the name test_question_save_from_deletion_quiz_with_long_name to test
the patch.
2020-02-08 19:40:44 +05:30
AMOS bot b1d076192b Automatically generated installer lang files 2020-02-08 00:11:45 +00:00
Andreas Grabs 20fea5522c MDL-67894 mod_feedback: database error on show responses 2020-02-07 18:48:38 +01:00
Paul Holden 1e89b1d686 MDL-59303 auth_shibboleth: consistent readme URL. 2020-02-07 14:25:15 +00:00
Paul Holden 5253834d03 MDL-67532 badges: better default for new badge language. 2020-02-07 09:46:56 +00:00
Sara Arjona 4e90332195 weekly release 3.9dev 2020-02-07 09:44:47 +01:00
Sara Arjona dc557fa4fd Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-02-07 09:44:44 +01:00
Brendan Heywood f070dd126f MDL-67726 tool_phpunit: Removed webrunner tool 2020-02-07 08:08:48 +08:00
Andrew Nicols af3de26941 Merge branch 'MDL-67175-master' of git://github.com/andrewnicols/moodle 2020-02-07 08:08:43 +08:00
Ferran Recio 312a9317fa MDL-67175 mod_scorm: fixing js eslint errors 2020-02-07 08:05:14 +08:00
Sam Hemelryk 841d855993 MDL-67175 mod_scorm: sync XHR requests use sendBeacon when available
Totara reference TL-22621 (original code by Sam Hemelryk)
https://github.com/moodle/moodle/commit/2add402f8183c50bc1238ef2da5ea9cd06cb1dd9
2020-02-07 08:05:14 +08:00
Brendan Cox 86b082cece MDL-67175 session: set SameSite=None for Chrome 78 and above
Totara reference TL-22311 (original code by Brendan Cox and Sam Hemelryk)
https://github.com/moodle/moodle/commit/a3f4de2b7efe66de6617a67ce7c87f2862e76ac6
2020-02-07 08:05:14 +08:00
Dani Palou 2ccdc21b36 MDL-67237 tool_mobile: Add H5P offline option in disabled features 2020-02-06 11:33:15 +01:00
Eloy Lafuente (stronk7) 986c5283cf Merge branch 'MDL-67832' of https://github.com/timhunt/moodle
(fixed a couple of typos in the merge commit)
2020-02-06 00:01:07 +01:00
Eloy Lafuente (stronk7) a411ab8825 Merge branch 'MDL-67387-master' of git://github.com/cescobedo/moodle 2020-02-05 19:18:11 +01:00
Eloy Lafuente (stronk7) 3c87f49f79 Merge branch 'MDL-67830' of https://github.com/timhunt/moodle 2020-02-05 19:07:55 +01:00
Sara Arjona 53be27e4fb Merge branch 'MDL-66463-master' of git://github.com/ferranrecio/moodle 2020-02-05 13:10:59 +01:00
Ferran Recio 303df89df6 MDL-66463 theme_boost: IE and Edge go to top link compatibility 2020-02-05 11:44:59 +01:00
Eloy Lafuente (stronk7) a8976119dc Merge branch 'MDL-46542' of https://github.com/timhunt/moodle 2020-02-05 09:32:32 +01:00
Andrew Nicols 097677f765 Merge branch 'MDL-49103-master' of git://github.com/sarjona/moodle 2020-02-05 13:48:29 +08:00
Andrew Nicols bc51efe54b Merge branch 'MDL-58584-master' of git://github.com/rezaies/moodle 2020-02-05 13:45:34 +08:00
Eloy Lafuente (stronk7) 4cbba6d108 Merge branch 'MDL-67842' of https://github.com/timhunt/moodle 2020-02-04 22:44:24 +01:00
Eloy Lafuente (stronk7) 3ed74c3f93 Merge branch 'MDL-63424-master' of git://github.com/lucaboesch/moodle 2020-02-04 19:28:36 +01:00
Eloy Lafuente (stronk7) ce7f5ac4b9 Merge branch 'MDL-66875-master' of git://github.com/lucaboesch/moodle 2020-02-04 19:02:26 +01:00
Sara Arjona f8d9b1eb8c MDL-49103 badges: bake badges with iTXt chunk instead of tEXt
The final OB 1.0 specification changed the baking badges method
from tEXt to iTXt. Besides, the iTXt chunk should be a signed
assertion or the raw JSON (instead of the assertion URL).
This has been changed in order to make Moodle OB compliant.

Yuliya Bozhko, thanks for the patch! :-)
2020-02-04 18:49:39 +01:00
Shamim Rezaie 94e25092b2 MDL-58584 core_ddl: delete te loft over table in the test 2020-02-04 23:15:32 +11:00
Sara Arjona ceaa04ffea Merge branch 'MDL-67681_master' of https://github.com/marxjohnson/moodle 2020-02-04 12:16:39 +01:00
Andrew Nicols 7be4a3fba1 Merge branch 'MDL-60126-master-3' of git://github.com/mihailges/moodle 2020-02-04 10:33:19 +08:00
Andrew Nicols 5f21e45f9f Merge branch 'MDL-58584-master' of git://github.com/rezaies/moodle 2020-02-04 10:30:32 +08:00
Peter 7d6f66b422 MDL-60126 competency: Unit tests 2020-02-04 08:36:21 +08:00
Simey Lameze 507c34820c MDL-60126 core: upgrade step to clean user comp 2020-02-04 08:36:21 +08:00
AMOS bot 4534c489a9 Automatically generated installer lang files 2020-02-04 00:11:08 +00:00
Simey Lameze 2595d450e0 MDL-60126 competency: delete content upon user delete 2020-02-04 08:00:19 +08:00
Eloy Lafuente (stronk7) fbde0a7798 Merge branch 'MDL-67052-mysql-locks' of https://github.com/brendanheywood/moodle 2020-02-03 19:32:58 +01:00
JayChurchward 72eaa3c916 MDL-67696 mod_forum: Changed invalid count() to loop counter. 2020-02-03 09:31:28 -05:00
Sara Arjona eac589d8ab Merge branch 'MDL-67721-master' of git://github.com/rezaies/moodle 2020-02-03 14:52:16 +01:00
Sara Arjona 473634a450 Merge branch 'MDL-67511-master' of git://github.com/andrewnicols/moodle 2020-02-03 14:10:15 +01:00
Peter Eliyahu Kornfeld 3ab494b154 MDL-66834 Questions: add transaction, move trigger 2020-02-03 12:29:43 +02:00
Shamim Rezaie 934c2ee1b6 MDL-58584 core_ddl: getDropTableSQL should not do more than what it says 2020-02-03 15:07:15 +11:00
Shamim Rezaie b4d062c6be MDL-58584 core: remove duplications from get_columns functions 2020-02-03 15:07:15 +11:00
Andrew Nicols 4d4409437a MDL-67511 core: Adjust spacing at top of toast-wrapper 2020-02-03 07:38:07 +08:00
Tim Hunt 1aacbb72d3 MDL-67832 quiz: fix lots of PHPdoc in attemptlib.php 2020-01-31 19:09:03 +00:00
Ferran Recio 1b5630a01f MDL-66463 theme_boost: go to top link 2020-01-31 12:37:10 +01:00
Tim Hunt 2569fb5d2c MDL-67842 questions: Cannot remove the idnumber from a question 2020-01-30 17:24:59 +00:00
Tim Hunt 87554981f0 MDL-46542 formslib: duration field option for which units to show
Based on the original work of Itamar Tzadok.
2020-01-30 17:08:29 +00:00
cescobedo 14324f84af MDL-67387 libraries: Upgrade PhpSpreadsheet to version 1.10.1 2020-01-30 17:25:47 +01:00
Eloy Lafuente (stronk7) cb38ab1e39 weekly release 3.9dev 2020-01-30 16:10:59 +01:00
Eloy Lafuente (stronk7) 4f4e408d99 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-01-30 16:10:56 +01:00
Mark Johnson d62ce1d419 MDL-67681 Cache: Store coursecattree array in a single key 2020-01-30 13:21:22 +00:00
Jun Pataleta 961833b477 Merge branch 'MDL-67353_reset' of https://github.com/stronk7/moodle 2020-01-30 12:35:56 +08:00
Adrian Greeve f494e9e6c0 Merge branch 'MDL-67351-master_required_setting' of https://github.com/catalyst/moodle 2020-01-30 08:11:33 +08:00
Andrew Madden 4a63a5b875 MDL-67351 quiz: Change advanced quiz settings types to use flags.
Change all 'with_advanced' setting types in quiz/settings to their
regular counterparts and apply the 'advanced' admin flag to them
instead. Settings that extend with_advanced setting types are
unchanged.
2020-01-30 10:50:59 +11:00
Andrew Madden b5d1151574 MDL-67351 quiz: Move quiz form defaults logic out of form.
By including the mod_form:apply_admin_defaults() method in the quiz
moodle_form, each element does not need to set default and advanced
states individually.
2020-01-30 10:50:01 +11:00
Andrew Madden 948a951a4e MDL-67351 admin: Create new 'required' admin flag setting.
Extend the admin flag options, that currently allow the 'advanced' and 'locked' states
of a form setting to be controlled by a plugins admin settings, to also include
the 'required' state. These options appear as a list of checkboxes next to the admin
setting.
2020-01-30 10:49:14 +11:00
Eloy Lafuente (stronk7) 4af44dbc8e MDL-67353 course: move form tearDown() to reset_all_data()
We are already cleaning all sort of caches, statics, singletons
there and it's better to ensure they are always reset to avoid
myterious failures @ distance.
2020-01-29 23:43:57 +01:00
Brendan Heywood 262061d661 MDL-67052 locks: Added a native MySQL / MariaDB lock implementation 2020-01-30 09:20:10 +11:00
Brendan Heywood 9e27807bed MDL-67052 locks: Fixed backwards unit tests for unstacked locks 2020-01-30 09:19:41 +11:00
Michelle Melton b5fc2892df MDL-64169 course: fix padding when display on one section per page
(amended to keep the $o.= consistent with surrounding code)
2020-01-29 22:34:35 +01:00
Tim Hunt a33e0b4d84 MDL-67830 quiz: notice in grade details redirect script 2020-01-29 18:34:39 +00:00
Eloy Lafuente (stronk7) fd27c57901 Merge branch 'wip-MDL-67545-master' of https://github.com/Beedell/moodle 2020-01-29 19:28:56 +01:00
Jun Pataleta 4ef4e10194 Merge branch 'MDL-67626_master' of git://github.com/adpe/moodle 2020-01-29 21:36:12 +08:00
Adrian Greeve aa78c654ba Merge branch 'MDL-67768-master-componentdirs' of git://github.com/mudrd8mz/moodle 2020-01-29 10:01:08 +08:00
Eloy Lafuente (stronk7) 492f3b71bb Merge branch 'MDL-67472-master' of git://github.com/bmbrands/moodle 2020-01-28 22:56:37 +01:00
Eloy Lafuente (stronk7) f5cb242afd Merge branch 'MDL-52189' of https://github.com/jonof/moodle 2020-01-28 22:43:22 +01:00
Eloy Lafuente (stronk7) db325421a3 Merge branch 'MDL-67447-master-autocomplete' of git://github.com/mudrd8mz/moodle 2020-01-28 22:23:43 +01:00
Eloy Lafuente (stronk7) 14de866897 Merge branch 'MDL-67722-master' of git://github.com/mickhawkins/moodle 2020-01-28 20:13:08 +01:00
Shamim Rezaie 2c4be2ebfd MDL-67675 atto_h5p: No need to manually clear the H5P placeholder 2020-01-28 22:28:57 +11:00
Eloy Lafuente (stronk7) dae0a8c405 Merge branch 'MDL-56389' of https://github.com/paulholden/moodle 2020-01-28 11:04:05 +01:00
Eloy Lafuente (stronk7) 2aa92150a6 Merge branch 'MDL-57755_master' of https://github.com/t-schroeder/moodle 2020-01-28 10:26:32 +01:00
David Mudrák 3f82b17927 MDL-67768 core: Add some common dirs to core_component::$ignoreddirs
The core_component::$ignoreddirs lists all directories that are reserved
and cannot be used as valid plugin names. This is particularly important
for some plugin types such as 'webservice' that share the same root
location as the core subsystem of the same name.
2020-01-28 10:18:25 +01:00
Adrian Greeve 3d1943b46d Merge branch 'MDL-67740-master-behatstepsfilter' of git://github.com/mudrd8mz/moodle 2020-01-28 15:05:45 +08:00
Adrian Greeve f9bc06ed16 Merge branch 'master_MDL-67746' of https://github.com/golenkovm/moodle 2020-01-28 13:11:41 +08:00
Adrian Greeve 2b45f8bbad Merge branch 'MDL-38511-bulk-actions' of https://github.com/brendanheywood/moodle 2020-01-28 11:10:17 +08:00
AMOS bot f487663f43 Automatically generated installer lang files 2020-01-28 00:11:35 +00:00
Adrian Greeve 067fbebf04 Merge branch 'MDL-67691' of https://github.com/stronk7/moodle 2020-01-28 07:52:21 +08:00
Shamim Rezaie 974db580df MDL-67721 mod_forum: See 'view grade' button on single discussion forums 2020-01-28 05:02:05 +11:00
Eloy Lafuente (stronk7) cefcb68f63 Merge branch 'MDL-64531-master-questiondeletejson' of git://github.com/mudrd8mz/moodle 2020-01-27 17:07:33 +01:00
Eloy Lafuente (stronk7) 58abdda2ea Merge branch 'MDL-67577-master' of git://github.com/bmbrands/moodle 2020-01-27 16:15:21 +01:00
Eloy Lafuente (stronk7) 8cc31f604d Merge branch 'MDL-67730-master' of git://github.com/rezaies/moodle 2020-01-27 12:21:21 +01:00
Eloy Lafuente (stronk7) 6e90244ac1 Merge branch 'm39_MDL-67414_Add_PostgreSQL_12x_Support_v2' of https://github.com/scara/moodle 2020-01-27 12:16:08 +01:00
Bas Brands 77e5b4462e MDL-67577 core_message: navbar_output order
* moved the logic from core_message_popup_render_navbar_output to
message_popup_render_navbar_output in message/output/popup/lib.php

* using float: left instead of float: right in theme
2020-01-27 12:14:16 +01:00
Matteo Scaramuccia a8a4eac163 MDL-67414 database: Fixed PostgreSQL 12.x support 2020-01-26 09:37:17 +01:00
David Mudrák 7630b42232 MDL-67447 form: Fix the duplicate autocomplete selection node
When the autocomplete selection is updated, the content of the selection
wrapper is replaced with the new list of selected items. We must replace
only the content of the selection wrapper and not to nest it into
itself.
2020-01-25 05:39:01 +01:00
AMOS bot 68a14fac34 Automatically generated installer lang files 2020-01-25 00:11:31 +00:00
Luca Bösch 7287834c11 MDL-66875 calendar: allow the use of day, mon and year again. 2020-01-25 00:56:39 +01:00
Luca Bösch ee2bcf3645 MDL-63424 form: allow checkboxes to have req icon. 2020-01-24 17:34:48 +01:00
Dani Palou 887f7a96a1 MDL-67806 tool_mobile: Add Dark mode option in disabled features
We must allow site admins to remotely disable that feature in the app
2020-01-24 15:53:21 +01:00
John Beedell 7aa3444d72 MDL-67545 Antivirus: new option for clam scan failure 2020-01-24 13:05:45 +00:00
Eloy Lafuente (stronk7) e46a9874a5 MDL-67353 filters: fix filterlib tests
- move resetAfterTest() to test units.
- remove setUp(), moving code to remove_all_filters_from_config().
- remove class properties, moving to return values of own setup_xxx() methods.
2020-01-24 11:26:56 +01:00
Eloy Lafuente (stronk7) 7899cd4f6c MDL-67353 favourites: Random DB id matching solved
Depending on the tests executed it was possible to arrive
to favourites tests with 2 "concepts" (say userid and contextid,
or userid and itemid) having the same ID.

Then, the array_diff() operations used by some mock stuff in the
tests wrongly was returning matches by value, ultimately causing
the test to fail.

Now, the matching is performed using array_diff_assoc() that takes
keys into considation when performing the match.
2020-01-24 11:26:56 +01:00
Andrew Nicols 6a0cdf26ee MDL-67353 course: Fix more broken unit tests 2020-01-24 11:26:56 +01:00
Andrew Nicols 1d44ac9ec6 MDL-67353 course: Fix broken unit test 2020-01-24 11:26:56 +01:00
David Mudrák 933db17d1e MDL-67740 behat: Show info as collapsed at the acceptance testing page
The static information with the links to Behat documentation is quite
long an irrelevant for experienced developers returning to this page. No
need to waste the prominent screen place with it - better to offer it
only when needed via collapsible form section.
2020-01-24 10:40:30 +01:00
David Mudrák 72c33dc8b1 MDL-67740 behat: Improve the layout of the acceptance testing page
- The CSS contains more specific selectors.
- Make use of the whole screen width for the list of found steps.
- Visually distinguish found steps from each other.
- Make it look less like a unicorn rainbow.
2020-01-24 10:40:30 +01:00
David Mudrák 8008cb3885 MDL-67740 behat: Fix the name of the class in the inline documentation
The said class is provided by the moodlehq/behat-extension composer
package and was renamed as a part of upgrade to Behat 3.0.x (MDL-46891).
2020-01-24 10:40:30 +01:00
David Mudrák 25d7262707 MDL-67740 behat: Allow multiple words filter at acceptance testing page
Because of the too strict input param type, the form did not allow to
search for Behat steps containing the given phrase. The patch sets the
param type to match the one in the form definition, and makes sure that
the submitted value can be safely used as a CLI script argument.
2020-01-24 10:40:29 +01:00
Tim Schroeder 1ccc7e6600 MDL-57755 message: fix notificaiton read status when messaging disabled 2020-01-24 08:59:12 +01:00
Mikhail Golenkov 8dff481193 MDL-67746 Tasks: Cleanup task logs in chunks. 2020-01-24 13:53:34 +11:00
Adrian Greeve 4e41ace0be weekly release 3.9dev 2020-01-24 10:16:48 +08:00
Adrian Greeve fd7764deb8 NOBUG: Fixed file access permissions 2020-01-24 10:16:48 +08:00
Adrian Greeve 7b55fab97a Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-01-24 10:16:39 +08:00
Paul Holden b486073a9a MDL-56389 message_popup: less greedy marking of notifications as read.
Only mark those notifications that were returned in the last query as
read, based on the time they were requested.
2020-01-23 22:16:35 +00:00
Paul Holden df2544ee7b MDL-56389 message: allow marking notifications as read up to given time. 2020-01-23 22:16:30 +00:00
Eric Merrill 2d2189ae1f MDL-67690 block_myoverview: Update starred to favourites to fix prefs
Core libs use favourites, so need to use that consistently for user
preferences to be remembered properly.
2020-01-23 14:09:48 -05:00
Eloy Lafuente (stronk7) 84ba4b8feb Merge branch 'MDL-51225-master' of git://github.com/junpataleta/moodle 2020-01-23 11:13:33 +01:00
Jun Pataleta dfa6dcd80c MDL-51225 mod_forum: Revert @javascript tag removal
Put back the removed  @javascript tag to prevent random goutte
fails.
2020-01-23 15:26:56 +08:00
Jun Pataleta a762f048b8 Merge branch 'MDL-67118' of https://github.com/stronk7/moodle 2020-01-23 15:12:58 +08:00
Jun Pataleta 21b0f581e1 Merge branch 'MDL-67115' of https://github.com/stronk7/moodle 2020-01-23 15:12:56 +08:00
Adrian Greeve c3c0d06651 Merge branch 'MDL-67703-master' of git://github.com/lameze/moodle 2020-01-23 15:11:02 +08:00
Adrian Greeve e2c5315b5c Merge branch 'MDL-65775-master' of git://github.com/ferranrecio/moodle 2020-01-23 15:11:02 +08:00
Jun Pataleta 32113d7a9b Merge branch 'MDL-65952' of https://github.com/fabiendallet/moodle 2020-01-23 15:11:02 +08:00
Shamim Rezaie 206a3bfc9d MDL-67730 lib: Fix to make the library php74 compliant. 2020-01-23 15:04:11 +11:00
Eloy Lafuente (stronk7) cb701f77b4 Merge branch 'MDL-67296-master' of git://github.com/vmdef/moodle 2020-01-22 23:46:06 +01:00
Víctor Déniz Falcón e942844d76 MDL-67296 core_h5p: tests modified to use exttests 2020-01-22 20:40:12 +00:00
Jun Pataleta 1e38b94c8e Merge branch 'MDL-66897-master-1' of git://github.com/mihailges/moodle 2020-01-22 23:17:14 +08:00
Víctor Déniz Falcón d8fe1eddf9 MDL-67296 core_h5p: minor changes
core.php-Avoid to use the factory for each content type
h5p_get_content_types_task-new method to simplify test execution
framework.php-returns error if you get a 404 response after requesting a file
2020-01-22 14:48:16 +00:00
Brendan Heywood b2eec32733 MDL-38511 admin: Allow plugins to define custom bulk actions 2020-01-23 00:29:54 +11:00
Adrian Greeve dbeca9f5ca Merge branch 'MDL-67424-master' of git://github.com/rezaies/moodle 2020-01-22 13:56:33 +08:00
Mihail Geshoski 9f9a3ddebe MDL-66897 mod_assign: Properly display error messages in quick grading 2020-01-22 13:37:07 +08:00
Adrian Greeve f40115043c Merge branch 'MDL-67438' of https://github.com/stronk7/moodle 2020-01-22 13:29:01 +08:00
Adrian Greeve 595b52fda4 Merge branch 'MDL-67456' of https://github.com/stronk7/moodle 2020-01-22 13:12:27 +08:00
Adrian Greeve 66a8939518 Merge branch 'MDL-67653' of https://github.com/timhunt/moodle 2020-01-22 11:02:35 +08:00
Adrian Greeve e33b86507d Merge branch 'MDL-67660-master-v2' of https://github.com/TobiGa/moodle 2020-01-22 10:41:03 +08:00
Jun Pataleta 48298a9b3a Merge branch 'MDL-67684-master' of git://github.com/andrewnicols/moodle 2020-01-22 10:38:13 +08:00
Shamim Rezaie dba1d09e33 MDL-67730 lib: Upgrade ADODB to version 5.20.16 2020-01-22 13:34:20 +11:00
Adrian Greeve 67925e5b88 Merge branch 'MDL-67680-master' of git://github.com/marinaglancy/moodle 2020-01-22 10:28:23 +08:00
Colin Campbell eeca35e4ad MDL-52189 file: skip deleting temp files that appear during cleanup 2020-01-22 12:10:00 +10:00
Adrian Greeve 883687a9fd Merge branch 'MDL-67656-master' of git://github.com/andrewnicols/moodle 2020-01-22 09:44:17 +08:00
Eloy Lafuente (stronk7) 7d574d8af5 Merge branch 'MDL-66858' of https://github.com/stronk7/moodle 2020-01-22 01:57:18 +01:00
Michael Milette a75fe2f1b5 MDL-66858 master: Enable <header> tags in Atto editor.
(amended to add the src/editor/js/clean.js
file that was originally missing)
2020-01-22 00:04:23 +01:00
Eloy Lafuente (stronk7) 703f2b625b Merge branch 'MDL-51225-master' of git://github.com/junpataleta/moodle 2020-01-21 23:33:19 +01:00
Adrian Greeve 790735f3e4 Merge branch 'MDL-66237-master' of git://github.com/mickhawkins/moodle 2020-01-21 11:08:27 +08:00
Jun Pataleta 13c5806a2f Merge branch 'MDL-66108' of https://github.com/paulholden/moodle 2020-01-21 09:51:24 +08:00
Eloy Lafuente (stronk7) 1c610609cc Merge branch 'MDL-66024' of https://github.com/paulholden/moodle 2020-01-20 22:47:17 +01:00
Eloy Lafuente (stronk7) a445417935 Merge branch 'MDL-66220-master' of git://github.com/junpataleta/moodle 2020-01-20 22:33:45 +01:00
Eloy Lafuente (stronk7) a05b402c12 Merge branch 'MDL-66712-master-selfautounenrol' of git://github.com/mudrd8mz/moodle 2020-01-20 22:27:20 +01:00
Eloy Lafuente (stronk7) f81d6fa319 Merge branch 'MDL-65884' of https://github.com/paulholden/moodle 2020-01-20 20:13:29 +01:00
David Mudrák 8c1d645351 MDL-64531 course: Add Behat test for deleting a quiz with own questions
Teachers can delete Quiz activities that have a question in their own
context via AJAX request with the course recycle bin disabled. This used
to lead to "Unexpected token < in JSON" because of the extra HTML in the
output.
2020-01-20 18:20:57 +01:00
Tim Hunt 1d67458783 MDL-64531 course: course_delete_module shouldn't output during AJAX
Committer's note: This change was originally part of a bigger patchset
submitted by the author. This is a stripped-down version that does not
use phpunit tests for the new behaviour.
2020-01-20 17:15:55 +01:00
Eloy Lafuente (stronk7) 70bc6d5e0c Merge branch 'MDL-67724-master' of git://github.com/junpataleta/moodle 2020-01-20 10:53:18 +01:00
Jun Pataleta 34cdacbfff Merge branch 'MDL-66883-master' of git://github.com/bmbrands/moodle 2020-01-20 16:36:40 +08:00
Sara Arjona a8638365af Merge branch 'MDL-67245' of https://github.com/paulholden/moodle 2020-01-20 08:18:49 +01:00
Simey Lameze c7027c037b MDL-67312 core_user: clean subs events on user deletion 2020-01-20 08:09:16 +01:00
Simey Lameze f35e360a3b MDL-67312 calendar: upgrade step to delete orphaned events 2020-01-20 08:08:56 +01:00
Simey Lameze 3364e18b46 MDL-67312 core: change db upgrade step to use get_fieldset_sql 2020-01-20 08:07:27 +01:00
Adrian Greeve 5a775f5703 Merge branch 'MDL-66761-master' of git://github.com/mickhawkins/moodle 2020-01-20 14:40:19 +08:00
Adrian Greeve 5608de8bf2 Merge branch 'MDL-67583-master' of https://github.com/KietChan/moodle 2020-01-20 13:34:31 +08:00
Adrian Greeve c282319a35 Merge branch 'MDL-59594-SIGINT' of https://github.com/brendanheywood/moodle 2020-01-20 10:39:20 +08:00
Adrian Greeve d29c986d9d Merge branch 'MDL-62815_mod_lti' of git://github.com/davosmith/moodle 2020-01-20 09:53:27 +08:00
Simey Lameze 858f41a113 MDL-67703 calendar: change manage subscription form to hideIf 2020-01-20 07:48:05 +08:00
Eloy Lafuente (stronk7) 881545513e MDL-67691 behat: inform about the_following_exist() removal
behat_data_generators::the_following_exist() has been removed, please use
behat_data_generators::the_following_entities_exist() instead.

See MDL-67691 for more info.
2020-01-20 00:05:41 +01:00
Eloy Lafuente (stronk7) 87861d94e3 MDL-67115 google: php74 params order for implode()
Passing parameters to implode() in reverse order is deprecated, use
implode($glue, $parts) instead of implode($parts, $glue).

This commit corresponds to general search of wrong cases.
2020-01-19 18:47:28 +01:00
Eloy Lafuente (stronk7) 9cdbacf387 MDL-67115 htmlpurifier: php74 params order for implode()
Passing parameters to implode() in reverse order is deprecated, use
implode($glue, $parts) instead of implode($parts, $glue).

This commit corresponds to general search of wrong cases.
2020-01-19 18:47:28 +01:00
Eloy Lafuente (stronk7) 05f6cb9262 MDL-67115 minify: php74 params order for implode()/join()
Passing parameters to implode() in reverse order is deprecated, use
implode($glue, $parts) instead of implode($parts, $glue).

This commit corresponds to phpunit detections, minify library.
2020-01-19 18:47:20 +01:00
Eloy Lafuente (stronk7) ee439d017e MDL-67115 core: php74 params order for implode()/join()
Passing parameters to implode() in reverse order is deprecated, use
implode($glue, $parts) instead of implode($parts, $glue).

This commit corresponds to phpunit and manual detections, core files.
2020-01-19 18:47:07 +01:00
hanna 078705538c MDL-67456 admin: Update Maximum number of backups kept 2020-01-18 19:35:34 +01:00
Adrian Perez cec13638b6 MDL-67626 assign: fix view full/view summary control in IE 2020-01-18 14:15:24 +01:00
AMOS bot 74c6bc1a9b Automatically generated installer lang files 2020-01-18 00:10:41 +00:00
fdallet f6cd1cc153 MDL-65952 mod_scorm: Fix unwanted changes to require status 2020-01-17 17:19:55 +01:00
Paul Holden 47ff771e80 MDL-66108 course: fix false positives when bulk moving categories. 2020-01-17 16:19:07 +00:00
Pau Ferrer Ocaña d60b6af9b9 MDL-67727 behat: Reset ionic app properly 2020-01-17 15:30:23 +01:00
Paul Holden 7eeea538d2 MDL-67245 group: Behat updates to account for member identity fields. 2020-01-17 12:42:20 +00:00
Paul Holden 6e8ed1a8fb MDL-67245 group: observe viewfullnames capability. 2020-01-17 12:42:17 +00:00
Paul Holden 21253ed622 MDL-67245 group: display user identity fields for group members. 2020-01-17 12:41:10 +00:00
Eloy Lafuente (stronk7) a5e3c4e5f3 MDL-67438 wiki: Formating changes (file doc block + whitespace fixes)
Also:
- change 2 variable/property names, both internal.
- format empty function.

Towards getting it fully phpcs compliant. Note this does not
fix the missing (in all methods) phpdoc blocks.
2020-01-17 12:34:30 +01:00
Jun Pataleta 1ed7527b4c MDL-67724 mod_glossary: Improve Behat test
Improve the "Glossary entries are not always editable" scenario by:
* No need to use the @javascript tag
* The maxediting time can be set to a lower value to
reduce the overall wait time.
2020-01-17 17:49:58 +08:00
Tobias Garske 951b7d8fc5 MDL-67660 core_message: Messages search change input focus 2020-01-17 09:36:23 +01:00
Sara Arjona 43b995c490 Merge branch 'MDL-67372-master' of git://github.com/rezaies/moodle 2020-01-17 09:30:11 +01:00
Michael Hawkins 66fa0c91ff MDL-67722 mod_forum: Reduce wait time on time limit expires behat test 2020-01-17 15:44:15 +08:00
Jun Pataleta 7cce925f9b MDL-51225 mod_forum: Use can_view_post to determine whether to show post
Use \mod_forum\local\managers\capability::can_view_post() to
consistently determine whether a forum post will be rendered in the
recent activity block.
This helps the recent activity block to provide a more consistent
behaviour with the forum's discussion view itself.
2020-01-17 14:44:26 +08:00
Jun Pataleta e68e49da01 MDL-51225 mod_forum: Create behat tests for forum recent activity 2020-01-17 14:44:22 +08:00
Michael Hawkins 5588922265 MDL-66761 forumreport_summary: Added groups filter behat testing 2020-01-17 10:34:07 +08:00
Michael Hawkins a967e56d2e MDL-66761 mod_forum: Behat support group ID in bulk discussion adding 2020-01-17 10:34:06 +08:00
Jun Pataleta 61a90c4510 MDL-51225 mod_forum: New behat step for creating question discussion 2020-01-17 10:25:22 +08:00
AMOS bot 68526623c5 Automatically generated installer lang files 2020-01-17 00:12:11 +00:00
Eloy Lafuente (stronk7) 011d55dd62 MDL-67118 enrol_ldap: add pagesize/subcontexts provider
With that provider we'll be explicitly checking that any
pagesize and subcontexts search is returning results consistently
so the internal paging/servercontrols work as expected.
2020-01-16 19:16:14 +01:00
Eloy Lafuente (stronk7) ba62f54ef2 MDL-67118 enrol_ldap: paged results functions deprecated php74 and up
Starting with php74 the following functions are deprecated:
- ldap_control_paged_result()
- ldap_control_paged_result_response()

Starting with php73, ldap servercontrols were included. One of those
servercontrols, LDAP_CONTROL_PAGEDRESULTS, is the one in charge of
controlling paged results.

So, we are going to add some conditional code here:

1) if php < 7.3, use old paged result functions.
2) if php >= 7.3, switch to LDAP_CONTROL_PAGEDRESULTS servercontrol.

With a TODO about removing 1) in Moodle 4.1, once php73 becomes required.
2020-01-16 19:16:14 +01:00
Eloy Lafuente (stronk7) 49d1ce3ac2 MDL-67118 auth_ldap: add pagesize/subcontexts test provider
With that provider we'll be explicitly covering that any
pagesize and subcontexts search is returning results consistently
so the internal paging/servercontrols work as expected.
2020-01-16 19:16:14 +01:00
Eloy Lafuente (stronk7) 988f9bf5b5 MDL-67118 auth_ldap: paged results functions deprecated php74 and up
Starting with php74 the following functions are deprecated:
- ldap_control_paged_result()
- ldap_control_paged_result_response()

Starting with php73, ldap servercontrols were included. One of those
servercontrols, LDAP_CONTROL_PAGEDRESULTS, is the one in charge of
controlling paged results.

So, we are going to add some conditional code here:

1) if php < 7.3, use old paged result functions.
2) if php >= 7.3, switch to LDAP_CONTROL_PAGEDRESULTS servercontrol.

With a TODO about removing 1) in Moodle 4.1, once php73 becomes required.
2020-01-16 19:16:14 +01:00
Sara Arjona fd126006b0 weekly release 3.9dev 2020-01-16 17:19:10 +01:00
Sara Arjona 3a95e15de1 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-01-16 17:19:07 +01:00
David Mudrák 0845825659 MDL-66712 enrol: Fix the reported days of inactivity on unenrolment
There were two problems here. Firstly, the $days was not correctly
calculated due to missing parentheses. Secondly, the sentence had
grammar issues.
2020-01-16 13:35:01 +01:00
Jun Pataleta 3dfc8be974 MDL-66220 mod_forum: Prevent from replying to a post the user can't see 2020-01-16 14:32:20 +08:00
Jun Pataleta 49801df749 MDL-66220 mod_forum: Cache result of forum_user_can_see_post()
* Cache the result of this function to avoid doing multiple DB calls
for the same post when loading posts in a discussion.
2020-01-16 14:32:20 +08:00
Jun Pataleta bf7a6ff4d7 MDL-66220 mod_forum: Additional unit test for can_reply_to_post 2020-01-16 14:32:20 +08:00
Andrew Nicols 4aa4d44a41 Merge branch 'mdl-59562' of https://github.com/Peterburnett/moodle 2020-01-16 12:10:31 +08:00
Andrew Nicols 76810eb2c0 Merge branch 'wip-MDL-66918-master' of https://github.com/Beedell/moodle 2020-01-16 11:42:16 +08:00
Shamim Rezaie 28bc46092e MDL-67372 libraries: Upgrade HTML Purifier to version 4.12.0 2020-01-16 14:21:40 +11:00
Peter Burnett 72aac06304 MDL-59562 core: updated type hint of new function 2020-01-16 13:05:30 +10:00
Andrew Nicols 836060be8b Merge branch 'MDL-67384-master' of git://github.com/rezaies/moodle 2020-01-16 10:24:40 +08:00
Eloy Lafuente (stronk7) 1fe94722ae Merge branch 'MDL-67631' of git://github.com/timhunt/moodle 2020-01-16 00:29:09 +01:00
Eloy Lafuente (stronk7) caa722a04b Merge branch 'MDL-67625-master' of git://github.com/lucaboesch/moodle 2020-01-16 00:26:13 +01:00
Eloy Lafuente (stronk7) 2b12a3668f Merge branch 'MDL-67040_master' of git://github.com/dmonllao/moodle 2020-01-16 00:06:30 +01:00
Sara Arjona 6e2c4af47d Merge branch 'MDL-67379-master' of git://github.com/rezaies/moodle 2020-01-15 22:12:15 +01:00
Víctor Déniz Falcón 8f9bf12206 Merge branch 'MDL-67377-master' of git://github.com/ferranrecio/moodle 2020-01-15 20:51:41 +00:00
Eloy Lafuente (stronk7) 1586b3adf7 Merge branch 'MDL-67622_master' of git://github.com/dmonllao/moodle 2020-01-15 18:55:45 +01:00
Shamim Rezaie ff25eb0fb0 MDL-67424 mod_forum: error on complete report when no rating or grade 2020-01-16 03:16:58 +11:00
Shamim Rezaie 56d5a50483 MDL-67424 report_outline: behat user report with a no-grade forum 2020-01-16 03:15:42 +11:00
Shamim Rezaie af2c779418 MDL-67379 libraries: Upgrade scssphp to 1.0.6 2020-01-16 00:24:09 +11:00
Sara Arjona e278bd6f90 Merge branch 'MDL-67617-master' of git://github.com/lucaboesch/moodle 2020-01-15 12:43:00 +01:00
Sara Arjona daa7107bfb Merge branch 'MDL-67638_master' of https://github.com/nguyenphuctien/moodle 2020-01-15 12:19:34 +01:00
Andrew Nicols 2bdad64e48 Merge branch 'MDL-67486-swap-cron-lock' of https://github.com/brendanheywood/moodle 2020-01-15 13:53:22 +08:00
Andrew Nicols 30afac71d3 Merge branch 'mdl-59562' of https://github.com/Peterburnett/moodle 2020-01-15 13:51:04 +08:00
Peter Burnett 4fac690ace MDL-59562 core: changed branch behaviour during initial install. 2020-01-15 15:46:46 +10:00
Andrew Nicols 20a7746b1e Merge branch 'mdl-59562' of https://github.com/Peterburnett/moodle 2020-01-15 12:40:19 +08:00
[Peter Burnett] 147a895ad0 MDL-59562 upgrade: Plugins can declare supported moodle versions
* Plugins can now explicitly declare supported and incompatible Moodle
  versions in version.php
  - $plugin->supported[37,39];
    supported takes an array of ascending numbers, that correspond to a
    range of branch numbers of supported versions, inclusive. Moodle
    versions that are outside of this range will produce a message
    notifying at install time, but will allow for installation.

  - $plugin->incompatible = 36;
    incompatible takes a single int corresponding to the first incompatible
    branch. Any Moodle versions including and below this will be prevented
    from installing the plugin, and a message will be given when
    attempting installation.
2020-01-15 14:38:27 +10:00
Mark Johnson 96e440493b MDL-67674 Cache: Lock rebuilding of the course category tree cache 2020-01-15 00:00:54 +01:00
Rossco Hellmans 383b0f95ab MDL-64310 backup: allow session to be released during backup/restore
Amended to fix a wrong call to backup_controller() constructor,
originally not passing USER->id
2020-01-14 23:54:42 +01:00
Sara Arjona 8d529d0a2d Merge branch 'MDL-66213-master-fixcap' of github.com:sarjona/moodle 2020-01-14 19:50:58 +01:00
Eloy Lafuente (stronk7) 52d16feebe MDL-66253 update: bump version (missed that on the review) 2020-01-14 19:46:17 +01:00
Eloy Lafuente (stronk7) a756630e44 Merge branch 'MDL-66253' of https://github.com/NeillM/moodle 2020-01-14 19:44:27 +01:00
Sara Arjona 1962f743dc MDL-66213 roles: review new site:viewanonymousevents capability
Instead of PROHIBIT this capability for teachers, the
RISK_PERSONAL has been added.
2020-01-14 16:42:31 +01:00
Andrew Nicols 16d4515411 MDL-66213 report_loglive: Do not look up course 0 2020-01-14 13:20:02 +01:00
Sara Arjona f6fe70d075 Merge branch 'MDL-65573-master-2' of git://github.com/peterRd/moodle 2020-01-14 12:20:00 +01:00
Neill Magill 2fc2dfbb37 MDL-66253 calendar: New indexes to reduce full table scans
The eventtype index will stop full table scans when the Event API
retrieves events for a group or category and there are a large number
of groups or categories so it cannot use the groupid or categoryid
indexes efficiently.

The modulename-instance index will improve the performance of queries
used by activity backup, deletion and visibility changes where all
the events for an individual activity need to be found.
2020-01-14 08:47:32 +00:00
Andrew Nicols 6813b79f81 Merge branch 'MDL-64075' of https://github.com/OdyX/moodle 2020-01-14 14:15:46 +08:00
Andrew Nicols 47d18a7303 Merge branch 'MDL-66721-master' of git://github.com/bmbrands/moodle 2020-01-14 14:06:57 +08:00
Andrew Nicols 9c71a497c3 MDL-67684 core: Add missing li tag 2020-01-14 08:46:43 +08:00
Andrew Nicols ea990a38eb Merge branch 'MDL-35971-master' of git://github.com/junpataleta/moodle 2020-01-14 08:23:56 +08:00
AMOS bot 5a6dead4f9 Automatically generated installer lang files 2020-01-14 00:10:17 +00:00
Peter 18cd2efd44 MDL-65573 mod_forum: Set userid properly after split
* Set the discussion's userid properly when splitting a discussion.
* Update step to correct existing incorrect records.
2020-01-14 07:34:18 +08:00
Eloy Lafuente (stronk7) f2e7a54f2a Merge branch 'MDL-65649' of https://github.com/paulholden/moodle 2020-01-13 18:56:38 +01:00
Eloy Lafuente (stronk7) 41fed86e18 Merge branch 'MDL-65987-master' of git://github.com/andrewnicols/moodle 2020-01-13 18:28:35 +01:00
Eloy Lafuente (stronk7) c8ba91cb12 Merge branch 'MDL-66833-master' of git://github.com/andrewnicols/moodle 2020-01-13 18:18:56 +01:00
Eloy Lafuente (stronk7) da700974d8 Merge branch 'MDL-65812-editable-timeout' of https://github.com/brendanheywood/moodle 2020-01-13 17:09:14 +01:00
Marina Glancy a79da4f1bb MDL-67680 core: Catch PHP exceptions in the after_config callback 2020-01-13 16:43:59 +01:00
Sara Arjona b758ba96e5 Merge branch 'MDL-59817-master' of git://github.com/andrewnicols/moodle 2020-01-13 14:26:41 +01:00
Kiet.Chan ed561c801e MDL-67583 themes: Popover placement should react to scroll event 2020-01-13 17:30:43 +07:00
Sara Arjona e3f29b01c0 Merge branch 'patch_view_anon_event_MDL-66213' of git://github.com/Dave-B/moodle 2020-01-13 10:10:10 +01:00
Bas Brands e097ddcd4f MDL-67472 theme_boost: configurable sass variable for drawer bgcolour 2020-01-13 09:12:47 +01:00
Andrew Nicols 48dffcb9e1 Merge branch 'MDL-67382-master' of git://github.com/vmdef/moodle 2020-01-13 12:59:28 +08:00
Tien Nguyen Phuc bc6efcb437 MDL-67638 Course: update course timemodified on bulk category move 2020-01-13 10:38:12 +07:00
Andrew Nicols 628604e69a Merge branch 'MDL-67204-master' of https://github.com/mwehr/moodle 2020-01-13 08:37:26 +08:00
Brendan Heywood b15c53f4fa MDL-59594 cron: Allow graceful exit of cron and adhoc task cli's 2020-01-12 01:24:03 +11:00
Brendan Heywood 176b5202e0 MDL-59594 cli: Introduce cli helpers for graceful exits
\core\local\cli\shutdown::script_supports_graceful_exit();

    Sets up interception of exit signals and keep the script running.

    \core\local\cli\shutdown::should_gracefully_exit();

    Use this to check whether you should exit, often inside a long running loop.
2020-01-12 01:20:04 +11:00
Brendan Heywood 29e3a223f5 MDL-59594 core: Allow custom signal handlers 2020-01-12 01:20:04 +11:00
Brendan Heywood b0544ce211 MDL-67486 cron: Improve throughput by holding cron lock for less time 2020-01-12 01:02:57 +11:00
Brendan Heywood 859ed92f9d MDL-65812 session: Increase default timeout and allow larger periods 2020-01-11 23:17:35 +11:00
Tim Hunt 76a49e4a1e MDL-67653 questions: prevent the flag flickering as the page loads 2020-01-10 14:27:42 +00:00
David Balch 9cce07111e MDL-66213 report_loglive: Show anonymous events when capability allows. 2020-01-10 13:48:59 +00:00
David Balch 51c4efa29f MDL-66213 report_log: Show anonymous events when capability allows. 2020-01-10 13:48:59 +00:00
David Balch 50cc80fd3b MDL-66213 roles: Add capability for viewing anonymous events. 2020-01-10 13:48:51 +00:00
Neill Magill 28c30ffece MDL-66253 calendar: Allow event retrival queries to use indexes
Before this change in most cases the queries generated by the API
would not be able to use an index as the subquery would use
conditions that coulde not be satisfied by a signle index.

By changing it to use UNIONs the database will be able to use an
appropriate index for each query in most cases.
2020-01-10 08:27:10 +00:00
Andrew Nicols 43aa3cbe44 MDL-59817 atto_accessibilitychecker: Handle transparency properly
Some browsers, notably Firefox, do not return the computed style for
background colour in a computed RGB format. Instead they return the RGBA
where the alpha channel is set to fully transparent.

To solve this we need to work up the hierarchy and compute the
background colour for each parent node until we reach full alpha (1).

We can use a standard calculation to approximate the value for the
resultant element background by multiplying the alpha of the current
transparent (or semi-transparent) node with the R, G, or B channel in
question, and that of the parent node's background colour.

There are cases where this will not be 100% accurate - notably where
there is some additional content in addition to the parent background,
but this gives us a reasoable approximation for the majority of cases.
Additionally the code has never considered the full set of node content
when calculating this information.
2020-01-10 15:26:51 +08:00
Andrew Nicols 9b1e5805d9 MDL-67656 behat: Removed nested spin 2020-01-10 13:34:17 +08:00
Andrew Nicols c7807a10b4 MDL-67656 behat: Fix usleep call in spin 2020-01-10 13:34:12 +08:00
AMOS bot a4da8ad02a Automatically generated installer lang files 2020-01-10 00:12:04 +00:00
Ferran Recio 18f3df06dc MDL-67377 lib: Moodle changes to mustache upgrade 2020-01-09 17:32:56 +01:00
Ferran Recio d009801075 MDL-67377 lib: Update mustache to 2.13.0 2020-01-09 17:32:56 +01:00
Luca Bösch d4bca909c2 MDL-67625 quiz: only section titles should be large when editing. 2020-01-09 17:23:20 +01:00
Mario Wehr a3a1b61b03 MDL-67204 assign task: Use lastruntime from task_scheduled 2020-01-09 17:09:22 +01:00
John Beedell 2bb9afeaf7 MDL-66918 behat: Behat app step failing 2020-01-09 15:54:16 +00:00
Luca Bösch 8f2a32ed95 MDL-67617 gradereport_singleview: Style the form element with bs classes 2020-01-09 16:51:18 +01:00
Sara Arjona 77d1c41502 weekly release 3.9dev 2020-01-09 15:42:44 +01:00
Jun Pataleta 16f2eaec8a Merge branch 'MDL-67544-master' of git://github.com/andrewnicols/moodle 2020-01-09 15:22:27 +08:00
Andrew Nicols 3b1c8dfd67 MDL-67544f= mod_forum: Correct "for" attribute on private checkbox 2020-01-09 14:55:52 +08:00
Andrew Nicols 350edf7567 MDL-67544 mod_forum: Ensure post actions menu id is unique 2020-01-09 14:08:12 +08:00
Andrew Nicols 217a9b1ca0 Merge branch 'master_MDL-67485' of https://github.com/golenkovm/moodle 2020-01-09 12:39:28 +08:00
Mikhail Golenkov 6b2e15f6c5 MDL-67485 task: Release the task runner lock before throwing exception. 2020-01-09 14:29:58 +11:00
Andrew Nicols 452f568dca Merge branch 'MDL-67596-cron-ramp-up' of https://github.com/brendanheywood/moodle 2020-01-09 08:11:10 +08:00
Eloy Lafuente (stronk7) fd25850a8d Merge branch 'MDL-67544-master' of git://github.com/andrewnicols/moodle 2020-01-08 16:35:39 +01:00
Eloy Lafuente (stronk7) 1b987615d9 Merge branch 'MDL-67533-master' of git://github.com/junpataleta/moodle 2020-01-08 16:31:25 +01:00
Sara Arjona da5f054d6e Merge branch 'MDL-66752-master-2' of git://github.com/junpataleta/moodle 2020-01-08 14:40:01 +01:00
Jake Dallimore 4e80934653 MDL-67637 core_message: only preview lastmessage text if safe to do so
If any html/script tags are found in the text() value, don't display it.
2020-01-08 12:31:09 +01:00
Davo Smith b791ed15e2 MDL-62815 mod_lti: fix error when clicking 'Select content' option 2020-01-08 09:46:41 +00:00
Davo Smith dcb0f01f58 MDL-62815 mod_lti: fix javascript error + bump version number 2020-01-08 09:46:38 +00:00
Davo Smith 3a69044fb3 MDL-62815 mod_lti: fix logic around content button and launch container 2020-01-08 09:45:06 +00:00
Jun Pataleta b93c99aa54 MDL-62815 mod_lti: Conditionally execute JS related to tool type 2020-01-08 09:45:05 +00:00
Davo Smith 477e87170b MDL-62815 mod_lti: adjust new capabilities
MDL-62815 mod_lti: improve lang strings + use clonepermissionsfrom

MDL-62815 mod_lti: prevent changing from manual instance without cap
2020-01-08 09:45:05 +00:00
yair.spielmann e3b82acdc1 MDL-62815 mod_lti: Capabilities for adding default and preconfigured 2020-01-08 09:45:05 +00:00
Jun Pataleta 85770120f6 MDL-67533 mod_forum: Remove duplicate Re in experimental view subject 2020-01-08 16:29:20 +08:00
Jun Pataleta 010a253a23 MDL-35971 mod_forum: Add proper discussion list table description 2020-01-08 15:37:42 +08:00
Sara Arjona f914f99a76 Merge branch 'MDL-67417-master' of https://github.com/KietChan/moodle 2020-01-08 08:26:37 +01:00
Andrew Nicols d0c026b563 MDL-67544 mod_forum: Ensure that private reply checkbox has unique id 2020-01-08 15:26:03 +08:00
Sara Arjona 9fea68644e Merge branch 'MDL-67510-master' of git://github.com/junpataleta/moodle 2020-01-08 08:10:52 +01:00
Brendan Heywood 286cc88c8c MDL-67596 cron: Allow runners to ramp up instantly 2020-01-08 15:03:56 +11:00
Andrew Nicols 1bb7d46966 Merge branch 'MDL-67378-master' of git://github.com/rezaies/moodle 2020-01-08 11:11:45 +08:00
Brendan Heywood 2d98ebb9de MDL-67635 file_storage: Speedup file storage cleanup cron 2020-01-08 14:00:48 +11:00
Andrew Nicols bc47535677 Merge branch 'MDL-67376-master' of git://github.com/rezaies/moodle 2020-01-08 10:40:25 +08:00
Andrew Nicols 379e26bfba Merge branch 'MDL-63734-master_hidepassword' of https://github.com/ledship/moodle 2020-01-08 09:39:06 +08:00
Andrew Nicols 5e34719d7e Merge branch 'MDL-65948-master' of git://github.com/junpataleta/moodle 2020-01-08 08:50:03 +08:00
Andrew Nicols 52aa532e64 Merge branch 'MDL-64764' of git://github.com/paulholden/moodle 2020-01-08 08:30:02 +08:00
Eloy Lafuente (stronk7) f28fab4e59 Merge branch 'MDL-67449-master' of git://github.com/andrewnicols/moodle 2020-01-07 23:43:43 +01:00
Eloy Lafuente (stronk7) 2aad3ce228 Merge branch 'MDL-67469-master' of git://github.com/junpataleta/moodle 2020-01-07 22:59:17 +01:00
Tim Hunt 74f3415483 MDL-67631 quiz editing: add random dialogue should offer all numbers 2020-01-07 13:59:39 +00:00
Marina Glancy 95dfd8e0de MDL-64764 core_admin: allow to submit empty list of allowed roles.
Co-authored-by: Paul Holden <paulh@moodle.com>
2020-01-07 10:01:23 +00:00
Didier 'OdyX' Raboud fba44e2fed MDL-64075 antivirus_clamav: refactor scan_file for tcpsocket
- Deprecate \antivirus_clamav\scanner::scan_file_execute_unixsocket()
2020-01-07 08:41:37 +01:00
Didier 'OdyX' Raboud 90c6f0cfea MDL-64075 antivirus_clamav: refactor scan_data for tcpsocket
- Fix whitespace accross scanner_test for codechecker
- Deprecate \antivirus_clamav\scanner::scan_data_execute_unixsocket()
2020-01-07 08:41:37 +01:00
Didier 'OdyX' Raboud 22b617569c MDL-64075 antivirus_clamav: separate socket destination in function 2020-01-07 08:41:36 +01:00
Didier 'OdyX' Raboud a0d871f3f3 MDL-64075 antivirus_clamav: Add TCP socket admin settings 2020-01-07 08:41:35 +01:00
Didier 'OdyX' Raboud 0acf1bae8b MDL-64075 antivirus_clamav: fix array_search usage
If 'unix' is the first element of the stream_get_transports() result
array, array_search() will return `0` as index result which, when
negated, will result as true.
2020-01-07 08:41:34 +01:00
Andrew Nicols 7bb70ad19b Merge branch 'MDL-65849-master' of git://github.com/rezaies/moodle 2020-01-07 13:17:08 +08:00
Andrew Nicols 032fbdc746 Merge branch 'MDL-66938-master' of https://github.com/grabs/moodle 2020-01-07 12:40:52 +08:00
Andrew Nicols 9d0192e9ce Merge branch 'MDL-58281-file-missing-500' of https://github.com/brendanheywood/moodle 2020-01-07 11:30:30 +08:00
Paul Holden 8725ac5f42 MDL-66237 message_popup: Get redirecturl from notification contexturl 2020-01-07 11:16:13 +08:00
Andrew Nicols e3bc4eb7a9 MDL-67114 mod_wiki: Whitespace fix 2020-01-07 11:04:41 +08:00
Andrew Nicols 1429ca06a4 Merge branch 'MDL-67114' of https://github.com/stronk7/moodle 2020-01-07 09:37:05 +08:00
Andrew Nicols 58618290fe Merge branch 'MDL-66871-master-v2' of git://github.com/lameze/moodle 2020-01-07 08:00:01 +08:00
Bas Brands a3f7695f07 MDL-66721 core_chooser: height correction for chooser modal 2020-01-06 10:07:16 +01:00
Andrew Nicols f04c327222 MDL-67544 form: Ensure that form errors have a unique id 2020-01-06 15:01:08 +08:00
Andrew Nicols 8092e7cfa2 MDL-67544 mod_forum: Add missing label for discussion move 2020-01-06 15:01:08 +08:00
Andrew Nicols 3cefa1b733 MDL-67544 mod_forum: Add missing menuitem roles 2020-01-06 15:01:08 +08:00
Andrew Nicols 10999d33e5 MDL-67544 mod_forum: Correct aria-labelledby node 2020-01-06 15:01:07 +08:00
Andrew Nicols 17133749ab MDL-67544 mod_forum: Correct aria-controls to point to valid node 2020-01-06 15:01:07 +08:00
Andrew Nicols 72622f240e MDL-67544 mod_forum: Add missing aria label for grade search 2020-01-06 15:01:07 +08:00
Andrew Nicols 87eba94faf MDL-67544 core: Ensure unique IDs for YUI dialogues 2020-01-06 15:01:07 +08:00
Andrew Nicols 37856e466e MDL-67544 theme: Ensure that search box is in valid li 2020-01-06 15:01:07 +08:00
Andrew Nicols 0726d7ea1e MDL-67544 mod_forum: Add default role for favourite toggle 2020-01-06 15:01:07 +08:00
Andrew Nicols 92c23c26b2 MDL-67544 mod_forum: Add missing aria label for discussion actions 2020-01-06 15:01:07 +08:00
Andrew Nicols 07662b4f4e MDL-67544 mod_forum: Correct aria-role => aria-live 2020-01-06 15:01:06 +08:00
Andrew Nicols 20d4ec87dd MDL-67544 mod_forum: Correct aria-role => role 2020-01-06 15:01:06 +08:00
David Monllaó 6429236fcf MDL-67040 mlbackend_python: Adapt python ML to small datasets 2020-01-06 13:41:17 +08:00
Andrew Nicols fca2851fce Merge branch 'MDL-67138-customlang-failures' of https://github.com/brendanheywood/moodle 2020-01-06 12:57:02 +08:00
David Monllaó e45b42cb3f MDL-67622 mlbackend_python: Fix f1score calculation 2020-01-06 12:54:43 +08:00
Jun Pataleta 12c1e8b2ff MDL-66752 tool_dataprivacy: Add automatic data request approval feature 2020-01-06 11:40:31 +08:00
Jun Pataleta a6b236326b MDL-67510 tool_dataprivacy: Fix the reply-to name of the privacy officer 2020-01-06 11:36:09 +08:00
Jake Dallimore dc3b14399b Merge branch 'master_MDL-64610' of https://github.com/golenkovm/moodle 2020-01-06 10:50:36 +08:00
Simey Lameze 26b683e798 MDL-66871 calendar: fix deprecated parameter in the phpDoc 2020-01-06 10:36:42 +08:00
Simey Lameze eaf623c5bf MDL-66871 calendar: add unit test coverage for ics importing 2020-01-06 10:36:35 +08:00
Simey Lameze 5b3b975e3f MDL-66871 calendar: fix ics importing logic 2020-01-06 09:49:59 +08:00
Luca Bösch 4870144cb2 MDL-65987 mod_forum: Add string 'Advanced' for the advanced editor.
AMOS BEGIN
    CPY [advanced,moodle],[showadvancededitor,moodle]
   AMOS END
2020-01-06 09:42:12 +08:00
Jake Dallimore d3383e635b Merge branch 'MDL-67336-master' of https://github.com/roland04/moodle 2020-01-06 09:36:36 +08:00
Andrew Nicols d7678ab3ce MDL-67449 grunt: Build ignorefiles from component list 2020-01-06 09:29:11 +08:00
Andrew Nicols 093be5c6e2 MDL-67449 grunt: Refactor CSS generation 2020-01-06 09:29:11 +08:00
Andrew Nicols ba8a53d030 MDL-67449 grunt: Refactor gherkinlint 2020-01-06 09:29:11 +08:00
Andrew Nicols b86930457f MDL-67449 grunt: Refactor YUI commands 2020-01-06 09:29:11 +08:00
Andrew Nicols a84d52363b MDL-67449 grunt: Refactor watch to use component list 2020-01-06 09:29:11 +08:00
Andrew Nicols a8109e759d MDL-67449 grunt: Refactor path calculation for AMD 2020-01-06 09:29:11 +08:00
Andreas Grabs 5385f5a8af MDL-66938 mod_feedback: Export includes unwanted html in field names 2020-01-05 19:33:35 +01:00
Eloy Lafuente (stronk7) 4621917c62 MDL-67114 core: php74 fix. Fix use of scalar as array in core
There are various places where it's not guaranteed that the
variable being used is array, and instead, can be null, bool, int...

We need to check that because php74 warns about it.

Where possible we have used the coalesce operator as
replacement for isset() ternary operations.
2020-01-03 11:33:15 +01:00
Eloy Lafuente (stronk7) a6e544e825 MDL-67114 scssphp: php74 compatibility local fixes
Note they are already available upstream, versions 1.0.4 and up so,
in next upgrade they will be fixed.
2020-01-03 11:33:15 +01:00
Eloy Lafuente (stronk7) 309912cfca MDL-67114 mustache: php74 fix. Fix use of scalar as array
Trying to use values of type null, bool, int, float or resource as an
array (such as $null["key"]) will now generate a notice. This does not
affect array accesses performed by list().

RFC: https://wiki.php.net/rfc/notice-for-non-valid-array-container
2020-01-03 11:33:15 +01:00
Jake Dallimore c55402486b weekly release 3.9dev 2020-01-03 11:24:56 +08:00
Jake Dallimore 931fa40a66 NOBUG: Fixed file access permissions 2020-01-03 11:24:56 +08:00
Jake Dallimore e5876cc1f4 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2020-01-03 11:24:53 +08:00
Andrew Nicols 27b26d7035 MDL-66833 core: Make print_object play nice with WS 2020-01-03 08:23:12 +08:00
AMOS bot 9a918f64ae Automatically generated installer lang files 2020-01-03 00:12:04 +00:00
Adrian Greeve 741a3431c1 Merge branch 'MDL-67599-master' of https://github.com/snake/moodle 2020-01-02 15:15:00 +08:00
Jake Dallimore 00444b07c7 MDL-67599 behat: fix behat tests assuming Jan 2020 is a future date 2020-01-02 13:46:47 +08:00
Mikhail Golenkov 1d0b74b2a3 MDL-64610 task: Add support for per-task concurrency limits. 2020-01-02 16:05:47 +11:00
Jun Pataleta 88fbee25d9 Merge branch 'MDL-65835-master' of git://github.com/abgreeve/moodle 2020-01-02 11:52:10 +08:00
Adrian Greeve d0d65b498c MDL-65835 plagiarism: Initial deprecation of old functions.
This is the initial deprecation of:
* plagiarism_save_form_elements
* plagiarism_get_form_elements_module
* plagiarism_plugin::get_form_elements_module
* plagiarism_plugin::save_form_elements
2020-01-02 11:38:49 +08:00
Jake Dallimore bc1a06618c Merge branch 'MDL-67598' of https://github.com/stronk7/moodle 2020-01-02 10:19:07 +08:00
Brendan Heywood a8dd576608 MDL-67138 tool_customlang: Expose errors writing lang files 2020-01-02 12:17:09 +11:00
AMOS bot 5884dff4f9 Automatically generated installer lang files 2020-01-02 00:10:15 +00:00
Eloy Lafuente (stronk7) 5afac432f5 MDL-67598 unit tests: Pass day of month without leading zero
Note this fixes the unit tests. Still the calendar API itself
should be able to manage this cases, both casting (int) or
being stricter about what's allowed there (param hinting).

But that falls out from this issue and the code that introduced
the failures, so the pure unit-test fix has been applied.
2020-01-02 00:06:40 +01:00
Eloy Lafuente (stronk7) f1d12af73a Merge branch 'MDL-67403-x-redirect-by' of https://github.com/brendanheywood/moodle 2019-12-31 12:46:20 +01:00
Eloy Lafuente (stronk7) b3ee90ab4b Merge branch 'MDL-67385-master' of git://github.com/rezaies/moodle 2019-12-31 12:44:58 +01:00
Eloy Lafuente (stronk7) cba5cccebd Merge branch 'MDL-67593-master' of https://github.com/snake/moodle 2019-12-31 10:45:11 +01:00
Jake Dallimore dbf29da73f MDL-67593 core_iplookup: update lang string describing download process
Let users know they need to register on maxmind before granted download
access.
2019-12-31 15:34:06 +08:00
Jun Pataleta 53384db822 Merge branch 'MDL-63996-master' of git://github.com/andrewnicols/moodle 2019-12-31 15:19:24 +08:00
Jake Dallimore b145fe216c MDL-67593 core_iplookup: use MaxMind test database in unit tests
Instead of downloading a live database (now not available publicly)
use a local test database.
2019-12-31 15:01:51 +08:00
Jun Pataleta 629f6d7e70 Merge branch 'MDL-67487-master' of git://github.com/lucaboesch/moodle 2019-12-31 11:56:07 +08:00
Jun Pataleta a8ef370daf Merge branch 'MDL-67470-master' of git://github.com/junpataleta/moodle 2019-12-31 11:29:58 +08:00
Bas Brands 6dadb71bba MDL-67470 theme_boost: settings_menu_proxy correct background
the .region_main_settings_proxy was introduced in MDL-56582 using the
wrong bootstrap variable for the background color
2019-12-31 09:55:50 +08:00
Brendan Heywood 1fef1de592 MDL-58281 files: Correctly handle missing files in readfile_accel 2019-12-30 17:18:49 +11:00
Jun Pataleta e4e9e56882 MDL-65948 core_grade: Use category names as master checkbox labels
Use the name of the grade categories as label to distinguish master
checkboxes from regular ones.
2019-12-30 14:13:35 +08:00
Jun Pataleta 2f848616c7 MDL-65948 core_grade: Use new core/checkbox-toggleall 2019-12-30 14:13:35 +08:00
Adrian Greeve a67ca1e0de Merge branch 'MDL-67233-master' of git://github.com/peterRd/moodle 2019-12-30 12:50:52 +08:00
Jun Pataleta 33a9d82e81 Merge branch 'MDL-67491-master' of git://github.com/junpataleta/moodle 2019-12-30 12:41:49 +08:00
Adrian Greeve 02b0844de9 Merge branch 'MDL-67416' of https://github.com/stronk7/moodle 2019-12-30 10:48:35 +08:00
Jake Dallimore 92b9f472bc Merge branch 'MDL-67380-master' of git://github.com/aanabit/moodle 2019-12-30 10:40:28 +08:00
Jun Pataleta bb54bd1896 Merge branch 'MDL-63650-master' of git://github.com/aanabit/moodle 2019-12-30 10:39:05 +08:00
Jake Dallimore 857fabb618 Merge branch 'master-MDL-67467' of https://github.com/yao9394/moodle 2019-12-30 09:59:20 +08:00
Eloy Lafuente (stronk7) c5fb4dc40f Merge branch 'MDL-67523-master' of git://github.com/marinaglancy/moodle 2019-12-29 23:31:59 +01:00
Eloy Lafuente (stronk7) a0ba8feef6 Merge branch 'MDL-67527-master-enfix' of git://github.com/mudrd8mz/moodle 2019-12-29 23:26:52 +01:00
Adrian Greeve b970666610 Merge branch 'MDL-63107-master' of git://github.com/bmbrands/moodle 2019-12-27 16:32:59 +08:00
Adrian Greeve ae22b2a268 Merge branch 'MDL-65809-master-travisphpbump' of https://github.com/snake/moodle 2019-12-27 15:43:03 +08:00
Jake Dallimore c9c1654166 MDL-65809 core: travis min php version set to 7.2 to match requirements 2019-12-27 15:21:09 +08:00
Adrian Greeve 42d7f7f9e4 Merge branch 'MDL-65809-master' of git://github.com/sarjona/moodle 2019-12-24 14:53:03 +08:00
Jake Dallimore c39da484f2 Merge branch 'MDL-60985-master' of git://github.com/lucaboesch/moodle 2019-12-24 14:44:04 +08:00
Adrian Greeve f00542c485 Merge branch 'MDL-66999-master' of git://github.com/bmbrands/moodle 2019-12-23 14:26:39 +08:00
John Yao 9514c1ac35 MDL-67467 Reports: sortable date format in pregress csv report
date format in csv report should be sortable by date.
2019-12-23 15:39:41 +11:00
Adrian Greeve bd287fa694 Merge branch 'master-MDL-67524' of https://github.com/yao9394/moodle 2019-12-23 10:28:50 +08:00
Jake Dallimore 69eb5980b1 Merge branch 'MDL-67374-master' of git://github.com/rezaies/moodle 2019-12-23 10:12:01 +08:00
Alexander 6ed86eca7a MDL-63734 adminlib: Hide password when defined in config.php
This will hide the password on admin_setting_configpasswordunmask fields when it is already defined in config.php
2019-12-23 14:42:53 +13:00
Adrian Greeve 0c75251509 Merge branch 'MDL-59487' of https://github.com/brendanheywood/moodle 2019-12-23 09:41:04 +08:00
John Yao 978570637d MDL-67524 book: fixing view hidden chapter issue
* Users who has permission should be able to view after turning editing off
2019-12-23 09:49:51 +11:00
AMOS bot 6d6dea612f Automatically generated installer lang files 2019-12-21 00:10:48 +00:00
Eloy Lafuente (stronk7) 78999d9c41 MDL-67416 composer: bump to moodle-behat-extension 3.39.1
that version already requires php72. The lock file has been
created using that php72 version.
2019-12-20 17:18:51 +01:00
Didier 'OdyX' Raboud b7d80e9450 MDL-67491 core_message: Primary'fy the contact request counts 2019-12-20 15:16:24 +01:00
Luca Bösch 3bd2e330ab MDL-60985 tool_usertours: Hide next on last, prev on first and primary. 2019-12-20 13:53:18 +01:00
Luca Bösch 4631f8b000 MDL-67487 forms: align "Custom" checkbox for course section name. 2019-12-20 13:50:32 +01:00
Sara Arjona a26cfe71d3 MDL-65809 upgrade: clean < 3.5.0 upgrade steps
This just deletes all the upgrade steps previous to 3.5.0. Some
small adjustments, like tweaking globals can also be applied
when needed.

Also includes an upgrade step to prevent upgrading from any
version < 2018051700 (v3.5.0) as anti-cheating measure.

Previous commits have removed/deprecated all the upgradelib functions
not used anymore in codebase. Deletion has been documented in corresponding
upgrade.txt files:

- upgrade_fix_block_instance_configuration()
- upgrade_theme_is_from_family(), upgrade_find_theme_location()
and linkcoursesectionsupgradescriptwasrun setting
- upgrade_block_positions
- upgrade_fix_config_auth_plugin_names()
 and upgrade_fix_config_auth_plugin_defaults()
- format_xxx_upgrade_remove_numsections(), format_xxx_upgrade_hide_extra_sections()
and format_xxx_upgrade_add_empty_sections()
- filter_mathjaxloader_upgrade_cdn_cloudflare()
and filter_mathjaxloader_upgrade_mathjaxconfig_equal()
- get_assignments_with_rescaled_null_grades()

These have been kept because continue being used by restore:

- \core\task\refresh_mod_calendar_events_task
2019-12-20 12:20:43 +01:00
Sara Arjona d2b7f6f556 MDL-65809 upgrade: remove get_assignments_with_rescaled_null_grades
This function was used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
it internal. Deletion has been documented in corresponding
upgrade.txt files.
2019-12-20 12:20:43 +01:00
Sara Arjona 08bc1f11db MDL-65809 upgrade: remove filter_mathjaxloader_upgrade_xxx
These functions were used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
them internal. Deletion has been documented in corresponding
upgrade.txt files:

    - filter_mathjaxloader_upgrade_cdn_cloudflare()
    - filter_mathjaxloader_upgrade_mathjaxconfig_equal()
2019-12-20 12:20:43 +01:00
Sara Arjona 3f224a1a41 MDL-65809 upgrade: remove format_xxx_upgrade_remove_numsections
These functions were used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
them internal. Deletion has been documented in corresponding
upgrade.txt files:

    - format_topics_upgrade_remove_numsections()
    - format_topics_upgrade_hide_extra_sections()
    - format_topics_upgrade_add_empty_sections()
    - format_weeks_upgrade_remove_numsections()
    - format_weeks_upgrade_hide_extra_sections()
    - format_weeks_upgrade_add_empty_sections()
2019-12-20 12:20:43 +01:00
Sara Arjona 089e918033 MDL-65809 upgrade: remove upgrade_fix_config_auth_plugin_names
These functions were used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
them internal. Deletion has been documented in corresponding
upgrade.txt files:

- upgrade_fix_config_auth_plugin_names()
- upgrade_fix_config_auth_plugin_defaults()
2019-12-20 12:20:43 +01:00
Sara Arjona 6f46aa2040 MDL-65809 upgrade: remove upgrade_block_positions
This function was used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
it internal. Deletion has been documented in corresponding
upgrade.txt files.
2019-12-20 12:20:43 +01:00
Sara Arjona f0d3d50273 MDL-65809 upgrade: remove upgrade_theme_is_from_family
These functions and setting were used only by deleted upgrade steps
so it's safe to proceed with straight deletion, considering
them internal. Deletion has been documented in corresponding
upgrade.txt files:

- upgrade_theme_is_from_family()
- upgrade_find_theme_location()
- linkcoursesectionsupgradescriptwasrun setting
2019-12-20 12:20:43 +01:00
Sara Arjona c230306957 MDL-65809 upgrade: remove upgrade_fix_block_instance_configuration
The upgrade_fix_block_instance_configuration() function was used
only by deleted upgrade steps so it's safe to proceed with straight
deletion, considering it internal. Deletion has been documented in
corresponding upgrade.txt files.
2019-12-20 12:19:03 +01:00
Sara Arjona ad7fcff3b7 MDL-65809 environment: mbstring extension required 2019-12-20 12:19:02 +01:00
Sara Arjona 64f2200a7d MDL-65809 environment: PHP 7.2 required 2019-12-20 12:19:02 +01:00
Sara Arjona 2e151145e8 MDL-65809 environment: postgres requirement up to 9.5 2019-12-20 12:19:02 +01:00
Sara Arjona d83a2d7f55 MDL-65809 environment: mariadb requirement up to 10.2 2019-12-20 12:19:02 +01:00
Sara Arjona 70f279bec9 MDL-65809 environment: 3.5 (LTS) required 2019-12-20 12:19:02 +01:00
Sara Arjona 14557b5a84 MDL-65809 environment: 3.9 base information
This is a direct copy of the 3.8 branch to have changes
under control easier in next commits.
2019-12-20 12:19:02 +01:00
Amaia Anabitarte 23033ff48b MDL-63650 core_message: Final deprecation of mark_all_read_for_user 2019-12-20 11:52:45 +01:00
Amaia Anabitarte 650f0f0829 MDL-67380 lib: Upgrade GeoIP2 lib to 2.10.0 2019-12-20 11:42:00 +01:00
Amaia Anabitarte 04485c2404 MDL-67380 lib: Upgrade MixMind DB reader lib to 1.5.1 2019-12-20 11:42:00 +01:00
Amaia Anabitarte e0c03d919a MDL-67380 lib: Update GeoIP2 and MaxMind DB reader versions in Moodle 2019-12-20 11:42:00 +01:00
Eloy Lafuente (stronk7) 7850f76a93 weekly release 3.9dev 2019-12-20 11:01:55 +01:00
Eloy Lafuente (stronk7) 5c6813f151 NOBUG: Fixed SVG browser compatibility 2019-12-20 11:01:54 +01:00
Eloy Lafuente (stronk7) 25fbd365d7 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-12-20 11:01:52 +01:00
Eloy Lafuente (stronk7) c59f22da37 Merge branch 'MDL-67151-master' of git://github.com/rezaies/moodle 2019-12-19 23:01:10 +01:00
Shamim Rezaie 6d1eb00445 MDL-67151 qtype_numerical: convert the tolerance to string before saving
Fix the sqlserver issue when saving a number into a text field
2019-12-20 01:11:59 +11:00
Bas Brands becd940c6c MDL-66883 theme_boost: behat enable custom switches 2019-12-19 13:03:32 +01:00
Bas Brands dc38af73e6 MDL-66883 theme_boost: use bootstrap native switches 2019-12-19 13:03:24 +01:00
Marina Glancy 4e4e6311a5 MDL-67523 core_admin: do not require admin to view category
Revert changes from MDL-58439 (in this file only)
2019-12-19 10:13:38 +01:00
Jun Pataleta b369b9dae9 Merge branch 'master_MDL-63795_core_setting_defaults' of https://github.com/mattporritt/moodle 2019-12-19 11:17:47 +08:00
Jake Dallimore 24c2106293 Merge branch 'MDL-67483-qos-perf' of https://github.com/brendanheywood/moodle 2019-12-19 09:31:28 +08:00
Matt Porritt 4be93382eb MDL-63795 Administration: CLI upgrade apply all settings
This patch fixes a regression caused by MDL-62777.  MDL-62777 added output to inform
administrators of new default settings.  However, the recursion in the code did not
handle new settings made available as the result of the defaults of other settings
being set.
This patch fixes the issue, now all defaults are correctly set, even those exposed
after other defaults are set.
2019-12-19 12:17:11 +11:00
Brendan Heywood c7ce7601a3 MDL-67483 tasks: Improvements to adhoc task queue at very high scale 2019-12-19 10:49:16 +10:00
Eloy Lafuente (stronk7) b4b4c895b2 Merge branch 'MDL-67151-master' of git://github.com/rezaies/moodle 2019-12-18 23:04:40 +01:00
Eloy Lafuente (stronk7) 8fa4764935 Merge branch 'MDL-54554-master' of git://github.com/abgreeve/moodle 2019-12-18 22:44:35 +01:00
Eloy Lafuente (stronk7) 8eb5cee15f Merge branch 'MDL-67244-master' of git://github.com/ferranrecio/moodle 2019-12-18 22:30:28 +01:00
David Mudrák 6aff025cad MDL-67527 lang: Propagate the string fixes to Behat and other places 2019-12-18 21:23:46 +01:00
Helen Foster 824c87f370 MDL-67527 lang: Import fixed English strings (en_fix) 2019-12-18 21:23:46 +01:00
Eloy Lafuente (stronk7) cc8e0d5074 Merge branch 'MDL-64695' of https://github.com/paulholden/moodle 2019-12-18 19:55:52 +01:00
Eloy Lafuente (stronk7) a9e4fa8e95 Merge branch 'master_MDL-66972_Streaming_file_types' of https://github.com/mattporritt/moodle 2019-12-18 19:39:18 +01:00
Eloy Lafuente (stronk7) b2e4577c61 Merge branch 'MDL-67388-master-2' of git://github.com/rezaies/moodle 2019-12-18 18:59:38 +01:00
Shamim Rezaie 11a799bbdf MDL-67388 lib: Upgrade babel polyfill to version 7.7.0 2019-12-19 04:12:07 +11:00
Eloy Lafuente (stronk7) 153fd2688c Merge branch 'MDL-66332-master' of git://github.com/ferranrecio/moodle 2019-12-18 17:53:00 +01:00
Eloy Lafuente (stronk7) 92302a6faa Merge branch 'master_MDL-67433' of https://github.com/golenkovm/moodle 2019-12-18 16:23:43 +01:00
Eloy Lafuente (stronk7) 077fa38a32 Merge branch 'MDL-67381-master' of git://github.com/rezaies/moodle 2019-12-18 16:19:57 +01:00
ferran.recio 178be88e97 MDL-66332 tool_capability: adding acceptance tests 2019-12-18 14:24:38 +01:00
ferran.recio e96bbb53af MDL-66332 too_capability: add show differences option 2019-12-18 14:23:41 +01:00
Brendan Heywood b07fdd1d6c MDL-67403 weblib: Add support for X-Redirect-By header 2019-12-18 15:02:32 +10:00
Andrew Nicols 0bc0fa8795 MDL-63996 core/tags: Pending JS for all tag code 2019-12-18 12:02:40 +08:00
Mikhail Golenkov 4234159ecd MDL-67433 tool_task: Add limits to adhoc CLI runner. 2019-12-18 11:58:43 +11:00
Eloy Lafuente (stronk7) 105de97f35 Merge branch 'MDL-60854-master' of git://github.com/aanabit/moodle 2019-12-18 00:29:02 +01:00
Eloy Lafuente (stronk7) 08f3363bd0 Merge branch 'MDL-60855-master' of git://github.com/aanabit/moodle
Amended a couple of "depecated" typos
2019-12-18 00:25:11 +01:00
Eloy Lafuente (stronk7) a12befdcf7 Merge branch 'MDL-67464-master' of git://github.com/sarjona/moodle 2019-12-17 19:34:39 +01:00
Ferran Recio 69d8c40c5b MDL-65775 atto_html: upgrade codemirror to 5.49.2 2019-12-17 16:24:11 +01:00
Mikel Martín e9049ac8e3 MDL-67336 mod_forum: Fixing forum inline reply filtering before saving 2019-12-17 13:20:14 +01:00
Eloy Lafuente (stronk7) acfba73137 Merge branch 'MDL-65722-no-lock-db' of https://github.com/brendanheywood/moodle 2019-12-17 10:10:15 +01:00
Jake Dallimore d170ca5f8b Merge branch 'MDL-67304_master' of git://github.com/dmonllao/moodle 2019-12-17 13:46:27 +08:00
Jake Dallimore 27ead4552f Merge branch 'master_MDL-67502' of https://github.com/golenkovm/moodle 2019-12-17 13:36:44 +08:00
Jake Dallimore ca78ab6a35 Merge branch 'MDL-65735' of https://github.com/paulholden/moodle 2019-12-17 13:25:02 +08:00
Jake Dallimore 79bd1e7fad Merge branch 'MDL-67165' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-12-17 11:08:56 +08:00
Mathew May 97ba6091ab MDL-67165 core_grade: Add the grader name to webservices 2019-12-17 10:46:02 +08:00
Eloy Lafuente (stronk7) d4a13bb4b2 Merge branch 'MDL-67522-master' of git://github.com/marinaglancy/moodle 2019-12-17 00:22:01 +01:00
Eloy Lafuente (stronk7) 2beb0ddc7e Merge branch 'MDL-67410-master' of https://github.com/felicemcc/moodle 2019-12-16 19:18:03 +01:00
Bas Brands 5d80184dfd MDL-63107 mod_book: rewrite styles for book chapter block
* using flexbox to position titles
* fix for title overlap on edit mode
* show correct bullets, number or indent
2019-12-16 13:26:53 +01:00
Shamim Rezaie c1c74c7562 MDL-67378 libraries: Add Moodle modifications for Mustache 2019-12-16 18:54:06 +11:00
Shamim Rezaie ce05b89997 MDL-67378 libraries: Upgrade mustache.js to 3.1.0 2019-12-16 18:52:14 +11:00
Jake Dallimore 70a19cc9dd Merge branch 'MDL-58827' of https://github.com/paulholden/moodle 2019-12-16 15:32:31 +08:00
Jake Dallimore a7710625c1 Merge branch 'MDL-67327-master' of git://github.com/andrewnicols/moodle 2019-12-16 15:11:23 +08:00
Shamim Rezaie 02c64a4c1b MDL-67385 libraries: Upgrde mongodb to version 1.5.1 2019-12-16 17:42:08 +11:00
Shamim Rezaie 5a28e4ec05 MDL-67385 libraries: Move readme_moodle.txt out of the library directory 2019-12-16 16:58:51 +11:00
Andrew Nicols 9b3343adc2 MDL-63996 behat: Fix multi-tag autocomplete usage 2019-12-16 13:57:00 +08:00
Shamim Rezaie 0a534718df MDL-67374 libraries: Update the upgrade instructions 2019-12-16 16:27:07 +11:00
Shamim Rezaie 0df71b23a2 MDL-67374 libraries: Upgrade SimplePie to version 1.5.3 2019-12-16 16:27:07 +11:00
Jake Dallimore a20b64aaef Merge branch 'MDL-63048-master' of git://github.com/abgreeve/moodle 2019-12-16 10:02:47 +08:00
Zig Tan 1395442474 MDL-54554 files: Improve unoconv error logging & sanity checks 2019-12-16 09:52:51 +08:00
Jake Dallimore 71e5dc3274 Merge branch 'MDL-66503-master' of git://github.com/abgreeve/moodle 2019-12-16 09:11:18 +08:00
AMOS bot 919de0d539 Automatically generated installer lang files 2019-12-14 00:10:46 +00:00
Marina Glancy 092acd53f2 MDL-67522 core_lock: fix mistype in config-dist 2019-12-13 19:34:44 +01:00
Víctor Déniz Falcón 1cfbaab373 MDL-67382 auth_cas: update phpCAS to 1.3.8 2019-12-13 12:34:06 +00:00
Jun Pataleta 41e7fe1d49 MDL-67469 tool_dataprivacy: Put back missing test code
This patch simply brings back the missing test code for
\tool_dataprivacy_api_testcase::test_approve_data_request_non_dpo_user()
2019-12-13 10:04:29 +08:00
AMOS bot a84fbcf103 Automatically generated installer lang files 2019-12-13 00:11:00 +00:00
Mikhail Golenkov 97324e082a MDL-67502 backup: Fix moodle_exception path. 2019-12-13 09:40:38 +11:00
Felice Candilio 4a4a73467c MDL-67410 Enrolments: Casting the perpage parameter to INT
On the course's Participants page, when manually enrolling users
the AJAX call might get excesively slow, due to the treatment
of the perpage parameter as a string, which gets concatenated with the
number 1 (perpage: parseInt(perpage) + 1) instead of performing a
numerical addition.

If there are for example 1500+ users on the site, the method
core_enrol_get_potential_users will be executed with a value of 15001
for the perpage parameter, rendering painfully slow.
2019-12-12 22:21:58 +01:00
Paul Holden d05078d023 MDL-65735 report_progress: reset URL start parameter in initials bars. 2019-12-12 18:23:56 +00:00
Paul Holden d7367ecafa MDL-64695 tool_dataprivacy: filter site fullname in outgoing messages. 2019-12-12 18:20:13 +00:00
Paul Holden 07dc0cad34 MDL-64695 privacy: filter site fullname in data export. 2019-12-12 18:20:13 +00:00
Amaia Anabitarte e9ec67dcad MDL-60854 general: Remove strings deprecated in 3.5 2019-12-12 18:13:36 +01:00
Amaia Anabitarte 2ead888f45 MDL-60855 general: Phase 2 in lib/deprecatedlib.php for 3.5 deprecations 2019-12-12 17:46:36 +01:00
Sara Arjona d273944857 MDL-67464 core_h5p: use h5p.com URLs in behat tests
The H5P content used in behat for validating external URLs
behaviour shouldn't point h5p.org because it may stop working
(it's not for real content). These content have been moved to
moodle.h5p.com (payment account).
Besides, the scenarios loading content from external URLs
have been labelel with @external.
2019-12-12 16:03:52 +01:00
Eloy Lafuente (stronk7) 6aacd8d6d1 weekly release 3.9dev 2019-12-12 13:26:15 +01:00
Eloy Lafuente (stronk7) c6fc8e441b NOBUG: Fixed SVG browser compatibility 2019-12-12 13:26:12 +01:00
Eloy Lafuente (stronk7) 01b183a7b9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-12-12 13:26:11 +01:00
Bas Brands 072fcde3ee MDL-66999 theme_boost: @extend phpunit fixes 2019-12-12 11:27:59 +01:00
Bas Brands 2b34870dbb MDL-66999 theme_boost: @extend extends from bs2compat 2019-12-12 11:27:59 +01:00
Bas Brands 55193f70d8 MDL-66999 theme_boost: @extend remove extends for users 2019-12-12 11:27:59 +01:00
Bas Brands aa100b767f MDL-66999 theme_boost: @extend remove extends for questions 2019-12-12 11:27:58 +01:00
Bas Brands cacf692578 MDL-66999 theme_boost: @extend remove extends for grades 2019-12-12 11:27:58 +01:00
Bas Brands 40ea67534c MDL-66999 theme_boost: @extend remove extends for tables 2019-12-12 11:27:56 +01:00
Andrew Nicols 5fc84028e9 MDL-67327 js: Make requirejs.php more fault tolerant 2019-12-12 15:58:19 +08:00
Ferran Recio f222c62d09 MDL-67154 theme_classic: fixing firefox printing 2019-12-12 09:04:10 +08:00
AMOS bot 69c3feb751 Automatically generated installer lang files 2019-12-11 13:49:59 +00:00
Shamim Rezaie 4bee39d31c MDL-67376 libraries: Upgrade loglevel.js to version 1.6.6 2019-12-11 21:28:52 +11:00
Kiet.Chan aa8a719049 MDL-67417 theme_boost: Tooltip icon stop working after closing using ESC 2019-12-11 15:01:35 +07:00
Andrew Nicols f316987483 Merge branch 'MDL-67458-master' of https://github.com/snake/moodle 2019-12-11 10:05:40 +08:00
Brendan Heywood cdf3fe7b7e MDL-65722 core_lock: Avoid DB calls in postgres lock by using a hash 2019-12-11 12:49:03 +11:00
Jake Dallimore ae0263de2b MDL-67458 core: removing stale cohortroles and role assignments 2019-12-11 09:34:29 +08:00
Jake Dallimore 94eabe36df MDL-67458 tool_cohortroles: remove role mapping for deleted roles
Before syncing anything, clean up records pointing to deleted roles.
2019-12-11 09:33:10 +08:00
Adrian Greeve 4d1d3eeade MDL-66503 themes: Set the embed page to display block. 2019-12-11 09:26:07 +08:00
Eloy Lafuente (stronk7) c865cceb6b Merge branch 'MDL-67371-master' of git://github.com/rezaies/moodle 2019-12-10 12:49:36 +01:00
Andrew Nicols d10d00a161 Merge branch 'MDL-67434-master' of git://github.com/junpataleta/moodle 2019-12-10 17:28:49 +08:00
Shamim Rezaie d2dcb0d082 MDL-67384 tool_policy: Upgrade jQuery EU Cookie Law popups to 1.1.3 2019-12-10 18:38:08 +11:00
Jake Dallimore 37588be383 Merge branch 'MDL-66936-master' of git://github.com/marinaglancy/moodle 2019-12-10 15:26:41 +08:00
Jake Dallimore 16beda9e63 Merge branch 'MDL-67179' of git://github.com/Chocolate-lightning/moodle 2019-12-10 15:01:40 +08:00
Andrew Nicols 9c18bff160 Merge branch 'MDL-67277-master-strongtopics' of git://github.com/mudrd8mz/moodle 2019-12-10 12:48:54 +08:00
Jake Dallimore 88c7484310 Merge branch 'MDL-67154-master' of git://github.com/ferranrecio/moodle 2019-12-10 11:53:29 +08:00
Jake Dallimore 25137ded9e Merge branch 'MDL-67362-antivirus-config-log' of https://github.com/brendanheywood/moodle 2019-12-10 11:21:49 +08:00
Jake Dallimore b42481597e Merge branch 'MDL-67451-master' of git://github.com/sarjona/moodle 2019-12-10 10:36:54 +08:00
Jake Dallimore 80c13fed94 Merge branch 'MDL-67432-master_quizaccess_settings' of https://github.com/catalyst/moodle 2019-12-10 09:30:36 +08:00
Jake Dallimore bf747f86c2 Merge branch 'MDL-66708-KeyGenCache' of https://github.com/Cengage/moodle 2019-12-10 09:11:56 +08:00
Andrew Nicols 56cabb839c Merge branch 'MDL-67373-master' of git://github.com/rezaies/moodle 2019-12-10 08:39:28 +08:00
Andrew Nicols fd58e6dc62 MDL-67152 calendar: Documentation fix 2019-12-10 08:19:12 +08:00
Andrew Nicols 349141c85b Merge branch 'MDL-67152-master' of git://github.com/rezaies/moodle 2019-12-10 08:12:31 +08:00
Paul Holden a679ae31a5 MDL-65649 backup: ensure valid course URL for async mode. 2019-12-09 23:34:18 +00:00
Andrew Madden e2c5d41a6b MDL-67432 quiz: Load all quiz subplugin settings from quiz settings.
Quiz quizaccess and report subplugins should have greater control over their own settings.
Remove the condition that they are only included when in the full admin tree which doesn't
include admin search page. The $ADMIN->fulltree condition should be handled by subplugin
settings.
2019-12-10 09:17:44 +11:00
Shamim Rezaie 0ab57f8128 MDL-67152 calendar: Rewrite core_calendar/view_manager using ES6 syntax 2019-12-10 06:46:38 +11:00
Shamim Rezaie eaa0439eca MDL-67152 calendar: Rewrite core_calendar/repository using ES6 syntax 2019-12-09 23:24:57 +11:00
Shamim Rezaie f046b70355 MDL-67152 calendar: The day view should start from the current day 2019-12-09 22:37:21 +11:00
Bas Brands 80465b8785 MDL-66999 theme_boost: @extend replace extends in forms
The css for .form-buttons, .path-admin... has been removed completely
The extend was used to add a grey container which is no longer works
2019-12-09 10:49:39 +01:00
Bas Brands 828a659728 MDL-66999 theme_boost: @extend use custom styles for filepicker buttons
The extended button classes can be replaced with custom styles
2019-12-09 10:49:39 +01:00
Bas Brands 6c4dbbf061 MDL-66999 theme_boost: @extend use .table classes in badges renderer
The table.collection class is not needed if the bootstrap classes
for tables are used in the badges renderer
2019-12-09 10:49:39 +01:00
Bas Brands 807e52442c MDL-66999 theme_boost: @extend remove .modal- styles for YUI modals
Use custom styles which will also fix the close button design in
MDL-67295
2019-12-09 10:49:39 +01:00
Bas Brands 5cb07eed0f MDL-66999 theme_boost: @extend remove page-enrol-users styles
The styles and the included @extend rules are no longer needed
The enrol users page was removed in MDL-59370
2019-12-09 10:49:39 +01:00
Bas Brands 4381739778 MDL-66999 theme_boost: @extend get colours from map 2019-12-09 10:49:39 +01:00
Bas Brands 4f77082d29 MDL-66999 theme_boost: @extend replace chat .p0 with css 2019-12-09 10:49:39 +01:00
Bas Brands 30b71a91fa MDL-66999 theme_boost: @extend remove .h2 from calendar
The calendar monthname is already in a <h2>, no additional .h2
styles are needed
2019-12-09 10:49:39 +01:00
Bas Brands 1714b6e7f0 MDL-66999 theme_boost: @extend remove .btn-block and .btn-link
Replace the extended .btn classes with custom css
Remove unused arrow_button styles
2019-12-09 10:49:39 +01:00
Bas Brands 9396731e94 MDL-66999 theme_boost: @extend replace .col-xs-*
Remove legacy col-xs-* classes. They are changed in upstream
Bootstrap 4 stable with just col-*.
2019-12-09 10:49:39 +01:00
Bas Brands 6ac38de8d0 MDL-66999 theme_boost: @extend .table-warning
Use .table-warning classes directly instead of using custom styles
2019-12-09 10:49:39 +01:00
Bas Brands 579ca95f1d MDL-66999 theme_boost: @extend replace .alert
use bs4 .alert .alert-type classes instead of extending .alert
2019-12-09 10:49:39 +01:00
Bas Brands 37949c189b MDL-66999 theme_boost: @extend remove .form-control-*
In MDL-56597 the .error and .warning classes were replaced with
.alert-error and alert-warning.
2019-12-09 10:49:39 +01:00
Bas Brands 098687e55d MDL-66999 theme_boost: @extend remove .small
Remove specific CSS and use bs4 classes in mustache instead
2019-12-09 10:49:39 +01:00
Bas Brands 6239d80855 MDL-66999 theme_boost: @extend text-muted
replace all instances of @extend .text-muted with
color: $text-muted
2019-12-09 10:49:39 +01:00
Bas Brands 2af7619b86 MDL-66999 theme_boost: @extend remove unused admin css 2019-12-09 10:49:38 +01:00
Bas Brands 275f690f11 MDL-66999 theme_boost: @extend for admin warnings 2019-12-09 10:49:38 +01:00
Shamim Rezaie 07cc70073b MDL-67381 atto_recordrtc: Fix the preview issue after recording 2019-12-09 20:28:32 +11:00
Shamim Rezaie 4fa17ba99b MDL-67381 lib: Upgrade to 7.3.0 2019-12-09 20:28:25 +11:00
Jake Dallimore d8b0718dc5 Merge branch 'MDL-67392-master' of git://github.com/rezaies/moodle 2019-12-09 14:46:35 +08:00
Adrian Greeve 1be93dffe1 MDL-63048 lib: Remove renamed classes. 2019-12-09 13:52:36 +08:00
Andrew Nicols 9423348ed4 Merge branch 'MDL-60975-master' of https://github.com/Kathrin84/moodle 2019-12-09 12:16:35 +08:00
Shamim Rezaie 5bd8f1dc4a MDL-67371 lib: Upgrade ADODB to version 5.20.15 2019-12-09 14:47:39 +11:00
Frédéric Massart ef1a9a2135 MDL-67434 javascript: Use static get_string after recycling promise 2019-12-09 10:04:18 +08:00
Matt Porritt bdf62bba35 MDL-66972 Files API: Add Streaming file mime type support
Adds file type support for the streaming .fmp4, .ts, .m3u8, and .mpd media formats,
so that correct mime type is stored in the database and sent in
headers when files are served. Also update existing mime types for
stored files.
2019-12-08 06:10:01 +11:00
David Monllaó b1a6b2def2 MDL-67304 analytics: Add missing png svg incorrect icon
Credit to jaked for the icons and the testing instructions
2019-12-06 10:19:08 +08:00
AMOS bot ecfa900fa8 Automatically generated installer lang files 2019-12-06 00:09:41 +00:00
Eloy Lafuente (stronk7) 8cf4c97217 weekly release 3.9dev 2019-12-05 13:24:04 +01:00
Eloy Lafuente (stronk7) 3978b8a1d4 NOBUG: Fixed SVG browser compatibility 2019-12-05 13:24:03 +01:00
Kathrin Osswald 4805a5b96f MDL-60975 behat tests: Added search for admin setting filepickers 2019-12-05 11:12:00 +01:00
Paul Holden 714343c06a MDL-66024 tool_uploadcourse: validate shortname/fullname field length. 2019-12-05 07:47:07 +00:00
Adrian Greeve 75890f29ed Merge branch 'MDL-65620-master' of git://github.com/aanabit/moodle 2019-12-05 09:25:16 +08:00
Eloy Lafuente (stronk7) 97d5eeda32 Merge branch 'MDL-41958-master' of git://github.com/lucaboesch/moodle 2019-12-04 23:24:46 +01:00
Sara Arjona d03d11095f MDL-67451 badges: use the site OB version as default 2019-12-04 21:01:09 +01:00
Eloy Lafuente (stronk7) baa833c667 Merge branch 'MDL-62757-master' of git://github.com/bmbrands/moodle 2019-12-04 20:25:59 +01:00
Bas Brands 8040fafaa8 MDL-62757 themes: validate theme preset files
Preset files need to be validated to ensure compiling SCSS does not
break.
2019-12-04 19:12:44 +01:00
Sara Arjona 04b52780eb Merge branch 'MDL-29693' of https://github.com/paulholden/moodle 2019-12-04 11:40:22 +01:00
Sara Arjona 8a685a3a3f Merge branch 'MDL-67404' of https://github.com/stronk7/moodle 2019-12-04 11:24:46 +01:00
Paul Holden fdd3ccaf07 MDL-29693 report_configlog: implement report search filtering. 2019-12-04 10:19:22 +00:00
Paul Holden a00801c071 MDL-29693 report_configlog: re-factor output to use renderers.
AMOS BEGIN
 MOV [value,report_configlog],[valuenew,report_configlog]
 MOV [oldvalue,report_configlog],[valueold,report_configlog]
AMOS END
2019-12-04 10:17:41 +00:00
Sara Arjona 03299347e7 Merge branch 'MDL-57635-38_tool_usertours_filter_shown' of https://github.com/tomdickman/moodle 2019-12-04 10:48:11 +01:00
Amaia Anabitarte 82ed7b3867 MDL-65620 core_message: Notification preferences behat tests 2019-12-04 10:30:36 +01:00
Amaia Anabitarte ebe53aca51 MDL-65620 core_message: User preference generator 2019-12-04 09:49:21 +01:00
Amaia Anabitarte f7af919bdf MDL-65620 core_message: Default notification preferences 2019-12-04 09:49:21 +01:00
Adrian Greeve 528b979a60 Merge branch 'master-MDL-65729' of https://github.com/yao9394/moodle 2019-12-04 14:11:51 +08:00
John Yao d0734df404 MDL-65729 Backup: Split individual backups into ad-hoc tasks
* refactor run automated backup
* new backup status of Queued
* adhoc task for backing up a course
* course locking for course backup adhoc task
* use Moodle locking instead of custom locking for run automated backup task
* add unit tests to extracted methods
2019-12-04 15:10:23 +11:00
Adrian Greeve 2311ae10a6 Merge branch 'MDL-40360-master' of git://github.com/lucaboesch/moodle 2019-12-04 11:49:11 +08:00
Andrew Nicols 96302b7aec Merge branch 'MDL-67359' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-12-04 10:32:03 +08:00
Eloy Lafuente (stronk7) 26aff51b7a Merge branch 'MDL-46123' of https://github.com/stronk7/moodle 2019-12-03 23:15:28 +01:00
Tim Hunt 45c4d4aa8c MDL-46123 accesslib: improve get_component_string 2019-12-03 23:11:11 +01:00
David Mudrák 9446b17d88 MDL-67277 forum: Replace the HTML comments with Mustache comments
It does not seem necessary to have the actual HTML sent to browsers full
of these developer-focused comments.
2019-12-03 20:36:05 +01:00
David Mudrák 3eb2ff093c MDL-67277 forum: Remove the pinned class from the first cell
There should be no need to have it, and the name is confusing here.
2019-12-03 20:36:05 +01:00
David Mudrák 33eadfeccb MDL-67277 forum: Do not display discussion topics in bold
The topics are now inside a table header cell, which shows them in bold
by default.
2019-12-03 20:36:05 +01:00
David Mudrák 91a28c219a MDL-67277 forum: Apply CSS class describing the discussion status
This is to allow the themes to style pinned, favourited, subscribed and
discussions with unread replies.
2019-12-03 20:36:05 +01:00
Ferran Recio e06f9a8385 MDL-67154 theme_boost: fixing firefox printing 2019-12-03 16:44:23 +01:00
Sara Arjona 7ad7505e2f Merge branch 'MDL-66925-adhoc-keep-alive' of https://github.com/brendanheywood/moodle 2019-12-03 14:29:19 +01:00
Marina Glancy 3b0168ce7f MDL-66936 mod_url: revert MDL-65024 adding fullurl to modinfo
This reverts commit cc56e409c3, reversing
changes made to 01cdf16c0e.
2019-12-03 12:24:25 +01:00
Jonathon Fowler ec0d17b543 MDL-66936 url: fix error when modinfo cache is rebuilt non-interactively 2019-12-03 12:23:47 +01:00
Sara Arjona d3b25ffaa0 Merge branch 'MDL-67363-adhoc-qos' of https://github.com/brendanheywood/moodle 2019-12-03 12:08:29 +01:00
Shamim Rezaie 83a7336f57 MDL-67373 lib: Upgrade PHPmailer to 6.1.3 2019-12-03 21:11:40 +11:00
Andrew Nicols 28ce554e10 Merge branch 'MDL-65229-stop-cron' of https://github.com/brendanheywood/moodle 2019-12-03 14:59:30 +08:00
Brendan Heywood 0bcc273f63 MDL-65229 cron: Add cli option --stop to notify all cron to stop 2019-12-03 17:51:56 +11:00
Andrew Nicols 45dfcd1755 Merge branch 'MDL-66087-master' of git://github.com/bmbrands/moodle 2019-12-03 14:35:39 +08:00
Shamim Rezaie 9173b83e58 MDL-67151 qtype_calculatedsimple: Support for the scientific format 2019-12-03 16:52:22 +11:00
Shamim Rezaie a1f10c5ec5 MDL-67151 qtype_calculated: Support for the scientific format 2019-12-03 16:52:22 +11:00
Shamim Rezaie bb8d19b885 MDL-67151 qtype_numerical: Support for the scientific format 2019-12-03 16:52:22 +11:00
Shamim Rezaie 35ca1475b5 MDL-67151 core_question: Support scientific format at question preview 2019-12-03 16:52:22 +11:00
Shamim Rezaie 2bfc16ad2a MDL-67151 forms: Support for the scientific format in the float element 2019-12-03 16:52:22 +11:00
Shamim Rezaie ac384d1d88 MDL-67151 core: format_float can auto detect number of decimal points 2019-12-03 16:52:17 +11:00
Andrew Nicols 47bede0d5d Merge branch 'MDL-67155' of https://github.com/timhunt/moodle 2019-12-03 12:12:28 +08:00
Jake Dallimore cdf835e9b5 Merge branch 'MDL-65693-http-head' of https://github.com/brendanheywood/moodle 2019-12-03 11:22:47 +08:00
Mathew May c7a7f88a0f MDL-67179 core: Add missing grading pix 2019-12-03 10:40:43 +08:00
Mathew May 6b55b28e38 MDL-67359 mod_forum: Relocate notification templates to reallign it 2019-12-03 10:35:33 +08:00
Adrian Greeve e6d8792369 Merge branch 'MDL-54799-master' of git://github.com/crazyserver/moodle 2019-12-03 09:35:53 +08:00
Brendan Heywood 4971da0bfa MDL-67363 task: Add adhoc task quality of service balancing 2019-12-03 12:21:10 +11:00
Sara Arjona 3cbede6e40 Merge branch 'wip-MDL-67339-master' of https://github.com/Beedell/moodle 2019-12-02 18:06:15 +01:00
John Beedell 82ee6f0d3c MDL-67339 behat: Enhance Behat exception message 2019-12-02 09:46:08 +00:00
Shamim Rezaie c15cd04c48 MDL-67392 mod_forum: Fix unescaped quotes issue in template 2019-12-02 20:44:44 +11:00
Jake Dallimore 842e0a027e Merge branch 'MDL-66581-master' of git://github.com/junpataleta/moodle 2019-12-02 16:12:00 +08:00
Jun Pataleta 658676adc0 MDL-66581 auth: Properly assign the link attribute 2019-12-02 15:28:23 +08:00
Iñigo Zendegi befbe2838f MDL-66581 auth: Do string concatenation for the password change URL
This reverts the change introduced by MDL-59298 where the password
change URL data is being assigned with a moodle_url object instead
of concatenating it.
2019-12-02 15:20:44 +08:00
Jake Dallimore 398bda4f12 Merge branch 'MDL-67160' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-12-02 11:25:08 +08:00
Jake Dallimore 9d06a24393 Merge branch 'MDL-66877-master' of git://github.com/jleyva/moodle 2019-12-02 10:01:53 +08:00
Luca Bösch 292b987c5c MDL-41958 import: Constistently showing progress steps. 2019-11-30 10:07:56 +01:00
Luca Bösch b7e3c2495f MDL-40360 gradingform_rubric: remove unused class 'label' for a label. 2019-11-30 09:42:44 +01:00
Brendan Heywood d46dba32d4 MDL-65693 files: Honor http HEAD requests for files 2019-11-30 16:02:23 +11:00
Brendan Heywood ad17190dc7 MDL-66925 cron: Add cli option to keep adhoc task runner alive 2019-11-30 16:01:01 +11:00
Shamim Rezaie 53b5c4f581 MDL-65849 mod_forum: Add course param to the author's profile url 2019-11-29 20:50:16 +11:00
Eloy Lafuente (stronk7) 784977de20 MDL-67404 composer: update to newer versions
(using php71 for this branch)

Without changing any requirement, just an update
to get latest versions onboard, some fixing known
php 7.4 issues.
2019-11-29 10:02:11 +01:00
Pau Ferrer Ocaña 4ed6010a61 MDL-54799 webservice: Handle exception in WS format ASAP 2019-11-29 09:44:09 +01:00
Eloy Lafuente (stronk7) 800563e415 weekly release 3.9dev 2019-11-29 00:45:41 +01:00
Juan Leyva f02178c481 MDL-66877 mod: Fix unfiltered activity names in page headings 2019-11-28 17:18:29 +01:00
Juan Leyva 62ff1b954f MDL-66877 mod: Fix WebServices returning unfiltered activity names 2019-11-28 17:18:29 +01:00
Bas Brands 9a6ff378d1 MDL-66087 themes: use variable color for dashboard background 2019-11-27 15:35:08 +01:00
Adrian Greeve f88437b468 Merge branch 'MDL-67348-master' of git://github.com/andrewnicols/moodle 2019-11-27 10:35:30 +08:00
Eloy Lafuente (stronk7) 21418c9942 Merge branch 'MDL-67300-master' of https://github.com/sammarshallou/moodle
(fix trailing whitespace case)
2019-11-26 22:30:05 +01:00
Jun Pataleta 9a37e86c6b Merge branch 'master_MDL-56886' of https://github.com/golenkovm/moodle 2019-11-26 22:32:48 +08:00
Sara Arjona ae2746b6b2 Merge branch 'MDL-67210-master' of git://github.com/lucaboesch/moodle 2019-11-26 08:29:45 +01:00
Jake Dallimore d0a4c05dda Merge branch 'MDL-67307' of https://github.com/stronk7/moodle 2019-11-26 14:14:50 +08:00
Jake Dallimore afc430c90b Merge branch 'MDL-67042-master' of git://github.com/sarjona/moodle 2019-11-26 11:59:08 +08:00
Jun Pataleta 7d9c97ae80 Merge branch 'MDL-66966' of https://github.com/stronk7/moodle 2019-11-26 11:42:25 +08:00
Brendan Heywood 10a1c1b577 MDL-67362 antivirus: Add enabling and order changes to config_log 2019-11-26 14:35:00 +11:00
Peter 4a27182b5c MDL-67233 mod_timeline: Allow events with only open dates in the future 2019-11-26 11:25:15 +08:00
Jake Dallimore 5906251ed2 Merge branch 'MDL-67222-master' of git://github.com/bmbrands/moodle 2019-11-26 10:12:29 +08:00
Mikhail Golenkov ac8e6f8e19 MDL-56886 navigation: Allow local plugins to modify navigation via AJAX. 2019-11-26 12:11:00 +11:00
Andrew Nicols d950843a6e MDL-67348 theme: Return CSS from localcache if available 2019-11-26 07:24:45 +08:00
Claude Vervoort 2a6ea30ef4 MDL-66708 lti adv: fix check for key in config 2019-11-25 14:14:33 -05:00
Sara Arjona f871370c55 Merge branch 'MDL-67342-master' of git://github.com/marinaglancy/moodle 2019-11-25 15:58:54 +01:00
Sara Arjona ad0a95cc47 Merge branch 'MDL-66627-master' of git://github.com/mickhawkins/moodle 2019-11-25 15:41:47 +01:00
Bas Brands cb4542b868 MDL-67222 tool_lp: update css classes for Bootstrap 4.3 2019-11-25 13:33:21 +01:00
Jun Pataleta 1eac44f128 Merge branch 'MDL-67217_master' of git://github.com/dmonllao/moodle 2019-11-25 16:13:01 +08:00
Sara Arjona c1bd4a6760 Merge branch 'MDL-67168-master' of git://github.com/andrewnicols/moodle 2019-11-25 08:54:51 +01:00
Jun Pataleta f05914739d Merge branch 'MDL-65956-master-1' of git://github.com/mihailges/moodle 2019-11-25 14:23:18 +08:00
Mihail Geshoski 68bd26ef2a MDL-65956 mod_assign: Add behat tests 2019-11-25 10:49:36 +08:00
Mihail Geshoski 8dc45b37b7 MDL-65956 mod_assign: Add proper capability checks and error handling 2019-11-25 10:49:21 +08:00
Adrian Greeve cab756604b Merge branch 'MDL-67285-master' of git://github.com/andrewnicols/moodle 2019-11-25 10:28:56 +08:00
Jake Dallimore d35fd6ee1b Merge branch 'MDL-67049' of https://github.com/stronk7/moodle 2019-11-25 09:33:42 +08:00
Luca Bösch 2e7f4fcefd MDL-67210 tool_uploadcourse: Allow only 0 and 1 for visible value. 2019-11-24 18:29:47 +01:00
Marina Glancy 4d2b8ece29 MDL-67342 theme_boost: Do not hardcode tooltip container 2019-11-24 13:42:48 +01:00
Syed Nayab Bukhari 55d0cd969c MDL-59487 task: Add run again button.
Co-authored-by: Brendan Heywood <brendan@catalyst-au.net>
2019-11-24 16:58:30 +11:00
Sara Arjona e49543e8e9 MDL-67042 customfield: Add behat tests to check hidden fields
Fields with the visibility different to Everyone should
be never displayed in the available filters custom field.
2019-11-22 09:57:10 +01:00
Sara Arjona 5a119f31f4 MDL-67042 customfield: Display only fields visible to everybody
When defining the available filters for the Dashboard, only the
fields visible to everyone should be displayed in the Custom field
filter.
2019-11-22 09:10:52 +01:00
Eloy Lafuente (stronk7) 88d88bd92e MDL-67307 core: Fix onject creation from empty value cases
The "creating default object from empty value" warning is now consistently
thrown if a falsy value is promoted into an stdClass object. Previously some
cases like `$null->prop[0] = $val` missed this warning.
2019-11-22 01:40:42 +01:00
Eloy Lafuente (stronk7) 8e98f82f12 MDL-67049 grading: options are array, ensure json_decode() knows it
By default json_decode() returns object for associative arrays. That
was not a problem till now becuause array_key_exists() worked with
objects too. But in php74 that emits a warning.

So we need to ensure that the information arriving to it is
an array, allowing everything to continue working ok.
2019-11-22 01:40:18 +01:00
Eloy Lafuente (stronk7) 544924eb90 MDL-66966 tcpdf: Update readme to point to manual commits to review
Apart from the main import of the library, there are a couple of
commits (with corresponding PRs upstream) that have been added to
provide php74 compatibility.

This commit addes them to the instructions, to ensure that they
will be reviewed on next import.
2019-11-22 01:40:09 +01:00
Eloy Lafuente (stronk7) 59a97b235f MDL-66966 tcpdf: Silence non-existing K_PATH_CACHE
I was fixing this adding a extra dir_exists() check that
is better than the silence operator but that was that already
there was a PR using @. So went to it.

This is https://git.io/JeKft
2019-11-22 01:40:09 +01:00
Eloy Lafuente (stronk7) 034988a10c MDL-66966 tcpdf: Some more curly braces to fix
This is https://git.io/JeKfT
2019-11-22 01:40:09 +01:00
Eloy Lafuente (stronk7) 3dc2e85e7f MDL-66966 tcpdf: PHP 7.4 - cannot use array offset on integers
This is https://git.io/JeKfU
2019-11-22 01:40:09 +01:00
Eloy Lafuente (stronk7) fe503a3cfb MDL-66966 tcpdf: Bump to tcpdf 6.3.2
Bug fixes and php74 support.
2019-11-22 01:40:09 +01:00
David Monllaó e477e1350a MDL-67217 unittest: usleep and windows don't get along well 2019-11-22 07:41:07 +08:00
Eloy Lafuente (stronk7) a5f618d6a9 weekly on-sync release 3.9dev 2019-11-22 00:17:41 +01:00
sam marshall 584500d5ba MDL-67300 Calendar: Inconsistent behaviour of managegroupentries
When calling the calendar_get_allowed_event_types function with
no course id, it is supposed to return true if you have the
relevant permissions in any course.

For users who have the managegroupentries permission, this was not
the case - even though it works correctly if you call the function
with a supplied course id.

This change makes behaviour with and without a supplied course id
consistent.
2019-11-21 10:51:35 +00:00
Andrew Nicols 916d611684 MDL-67168 forum: Correct behaviour of viewfullnames 2019-11-21 15:42:42 +08:00
Jake Dallimore e9b0505720 Merge branch 'MDL-67035' of https://github.com/stronk7/moodle 2019-11-21 11:55:07 +08:00
Jun Pataleta d7fc8bda21 Merge branch 'MDL-66964' of https://github.com/stronk7/moodle 2019-11-21 11:36:33 +08:00
Tim Hunt 285c703685 MDL-48024 behat: allow plugins to have data generators
This extends the step
Given the following "users" exist:
to also support things like
Given the following "mod_quiz > user overrides" exist:

Instructions are on the behat_data_generators and
behat_generator_base classes.
2019-11-21 09:18:35 +08:00
Jake Dallimore 6f407fba72 Merge branch 'MDL-67030' of https://github.com/stronk7/moodle 2019-11-21 08:18:46 +08:00
Eloy Lafuente (stronk7) c22af12f03 MDL-66964 markdown: add details to readme
The commit to apply, from upstream repo, is:

https://github.com/michelf/php-markdown/commit/a35858f0409e5f01474f5cd562d17289fe8e5435

But it doesn't apply clean to our current 1.8.0 version.

So we have ended a slightly different version in core reproducing the same changes.
2019-11-20 10:57:51 +01:00
Jake Dallimore 88b2d7b1a1 Merge branch 'MDL-67031' of https://github.com/stronk7/moodle 2019-11-20 16:21:47 +08:00
Jun Pataleta 6e35779a63 Merge branch 'MDL-67077' of https://github.com/stronk7/moodle 2019-11-20 16:08:30 +08:00
Michael Hawkins cb532f5c7e MDL-66627 forumreport_summary: Added content access behat tests 2019-11-20 14:53:49 +08:00
Jake Dallimore bfd43d4351 Merge branch 'MDL-67034' of https://github.com/stronk7/moodle 2019-11-20 13:16:28 +08:00
Jake Dallimore 364d927bc4 Merge branch 'MDL-67029' of https://github.com/stronk7/moodle 2019-11-20 11:45:10 +08:00
Adrian Greeve 230ed37d49 Merge branch 'MDL-67017' of https://github.com/stronk7/moodle 2019-11-20 09:57:50 +08:00
Eloy Lafuente (stronk7) 20d4ecc409 MDL-67034 lti_provider: php74 fix (curly braces) for LTI Provider lib 2019-11-19 10:03:12 +01:00
Jake Dallimore 48bec7814c Merge branch 'MDL-67274-master' of https://github.com/sammarshallou/moodle 2019-11-19 10:51:05 +08:00
Andrew Nicols 04e67878f9 MDL-67285 core: YUI dialogues must use focuslock
YUI Dialogues were using an older method for locking focus to modals,
but this way conflicts with the way in which we lock focus for AMD
modules.

As a result, when an AMD dialogue launches a YUI dialogue the focus is
not correctly locked and it is not possible to focus on anything in the
YUI dialogue.

This includes a minor changes to the focuslock AMD module to ensure that
it is possible to loop the focus in both directions. Many of our older
YUI dialogues are themselves focusable. As a result we need to include
the lock region in the calculation when calculating the possible
descendants.
If we do not do so then the reverse looping does not work.
2019-11-19 07:40:36 +08:00
Mathew May 6ebf994c23 MDL-67160 mod_forum: Show the users grading status in the grader 2019-11-19 10:17:00 +13:00
Eloy Lafuente (stronk7) 7cccf31ce8 Merge branch 'MDL-67148-master' of git://github.com/junpataleta/moodle 2019-11-18 18:42:37 +01:00
sam marshall b4e2b99c85 MDL-67274 Tasks: Log display fails with memory errors 2019-11-18 13:46:32 +00:00
Jun Pataleta 3299602276 Merge branch 'MDL-67073-master' of git://github.com/marinaglancy/moodle 2019-11-18 16:02:05 +08:00
Jake Dallimore 36ad925edc Merge branch 'MDL-67284' of https://github.com/stronk7/moodle 2019-11-18 11:27:00 +08:00
Jake Dallimore d84bf35fd1 Merge branch 'MDL-67283' of https://github.com/stronk7/moodle 2019-11-18 11:20:28 +08:00
Eloy Lafuente (stronk7) 59540b861e MDL-67284 mod_feedback: Add missing file phpdoc block 2019-11-17 12:46:31 +01:00
Eloy Lafuente (stronk7) 953a5844ef MDL-67283 backup: Bump release to 3.9 2019-11-17 11:41:30 +01:00
Eloy Lafuente (stronk7) 492d047d11 MDL-67284 upgrade: add 3.8.0 separation line to all upgrade scripts 2019-11-17 11:40:19 +01:00
Eloy Lafuente (stronk7) 712a321db2 MDL-67077 h5p: php74 fix (curly braces) for the H5P lib
This has been sent also upstream @ https://github.com/h5p/h5p-php-library/pull/69
2019-11-16 20:04:04 +01:00
Eloy Lafuente (stronk7) 6783adc239 MDL-67035 tags: fix nested ternary operators to be php74 compliant
Nesting ternary operators without explicit parentheses is deprecated:

    // Code like
    $a ? $b : $c ? $d : $e
    // should be replaced by (current interpretation)
    ($a ? $b : $c) ? $d : $e
    // or (likely intended interpretation)
    $a ? $b : ($c ? $d : $e)
2019-11-16 20:03:47 +01:00
Eloy Lafuente (stronk7) b69028e626 MDL-67034 google: php74 fix (curly braces) for the Google-Client lib 2019-11-16 20:03:37 +01:00
Eloy Lafuente (stronk7) 15c8da60d4 MDL-67034 adodb: php74 fix (curly braces) for the AdoDB lib 2019-11-16 20:03:37 +01:00
Eloy Lafuente (stronk7) 6b83451251 MDL-67034 horde: php74 fix (curly braces) for the Horde lib 2019-11-16 20:03:37 +01:00
Eloy Lafuente (stronk7) 9e458d8fe8 MDL-67031 s3: php74 fixup for class S3 v0.5.1 2019-11-16 20:03:27 +01:00
Eloy Lafuente (stronk7) 30e5aca81d MDL-67030 htmlpurifier: add details to readme 2019-11-16 20:03:18 +01:00
Eloy Lafuente (stronk7) 9fbe33a6a2 MDL-67030 htmlpurifier: php74 fixup for htmlpurifier v4.10.0
This simply applies this pull request:

https://github.com/ezyang/htmlpurifier/pull/224

straight to our library. Once there is some new htmlpurifier
release available (>v4.11.0) we'll be back upstream because
the fix will be included.
2019-11-16 20:03:18 +01:00
Eloy Lafuente (stronk7) f94b2e7ade MDL-67029 bennu: add details to readme 2019-11-16 20:03:08 +01:00
Eloy Lafuente (stronk7) ce17207715 MDL-67029 bennu: php74 fixup for bennu lib 0.1-custom 2019-11-16 20:03:08 +01:00
Eloy Lafuente (stronk7) ba5aa5fe19 MDL-67017 typo3: add details to readme 2019-11-16 20:02:59 +01:00
Eloy Lafuente (stronk7) 052a282ec4 MDL-67017 typo3: php74 fixup for typo3 lib 4.7.19
We are using a really outdated Typo3 library (2014) already patched
for php73 support. Plus, probably, we'll be soon removing it from core.

So we have decided to, instead of upgrade, apply the needed php74 fixes.
2019-11-16 20:02:59 +01:00
Eloy Lafuente (stronk7) c3d8c419e5 MDL-66964 markdown: php74 fixup for markdown lib 1.8.0
Note this is different from the upstream commit:

https://github.com/michelf/php-markdown/commit/a35858f0409e5f01474f5cd562d17289fe8e5435

because it was conflicting so only the cases corresponding
to our current 1.8.0 version have been modified.

This commit is trivial, just a pure curly to square replacement.
2019-11-16 20:02:42 +01:00
Eloy Lafuente (stronk7) d547735f2f weekly back-to-dev release 3.9dev 2019-11-16 18:03:02 +01:00
Eloy Lafuente (stronk7) bc4c075960 NOBUG: Change travis.yml back to master 2019-11-16 17:54:08 +01:00
Eloy Lafuente (stronk7) f968cd44e8 Moodle release 3.8 2019-11-16 17:54:08 +01:00
Eloy Lafuente (stronk7) 4da834dcdc NOBUG: Change travis.yml to MOODLE_38_STABLE 2019-11-16 17:54:08 +01:00
Jun Pataleta dc51037136 Merge branch 'MDL-67281' of https://github.com/stronk7/moodle 2019-11-16 17:44:05 +08:00
Eloy Lafuente (stronk7) 12f310e545 MDL-67281 forum: don't show discussion creation time twice
The discussion creation time (or first post) is being shown
both in the "started by" and "last post" columns in forum
discussions list.

Just let's change the former to show the discussion modification
time (or last post) instead.
2019-11-15 19:11:34 +01:00
Eloy Lafuente (stronk7) 52d3d6f540 Moodle release 3.8rc1 2019-11-15 12:30:52 +01:00
Jun Pataleta e716c1ea9e Merge branch 'MDL-67269-master' of git://github.com/andrewnicols/moodle 2019-11-15 12:38:54 +08:00
Andrew Nicols fb803f8854 Merge branch 'MDL-67268-master' of git://github.com/mihailges/moodle 2019-11-15 12:08:33 +08:00
Mihail Geshoski c7cb3b297b MDL-67268 mod_forum: Group and label radio buttons in forum grader 2019-11-15 12:05:59 +08:00
Andrew Nicols 630a1b0e01 MDL-67269 mod_forum: Capture form submission in grading panel 2019-11-15 11:47:37 +08:00
Andrew Nicols f45a2860e5 Merge branch 'MDL-67265' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-15 10:35:00 +08:00
Mathew May 4e796e2205 MDL-67265 core: Set max-height on toast wrapper 2019-11-15 09:21:06 +08:00
Jake Dallimore 891e027cf1 Merge branch 'MDL-67241-master' of git://github.com/lameze/moodle 2019-11-14 16:34:28 +08:00
Jake Dallimore 324258e5f5 Merge branch 'MDL-67144-integration' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-14 15:17:24 +08:00
Mathew May fc741e030e MDL-67144 mod_forum: If no users exist do not show the grading interface 2019-11-14 15:00:30 +08:00
Jun Pataleta ff175fce22 Merge branch 'MDL-67246-master' of git://github.com/jleyva/moodle 2019-11-14 14:34:17 +08:00
Jake Dallimore 0460d21b28 Merge branch 'MDL-67207-master' of git://github.com/andrewnicols/moodle 2019-11-14 14:27:42 +08:00
Jun Pataleta e9f63f3fc0 Merge branch 'MDL-67116-master' of git://github.com/andrewnicols/moodle 2019-11-14 12:37:22 +08:00
Andrew Nicols c3777543a6 MDL-67116 course: Restore removed line
This line was inadvertently removed in a previous commit.
2019-11-14 11:43:37 +08:00
Andrew Nicols 8a0b9b1830 Merge branch 'MDL-67250-master-httpswwwroot' of git://github.com/mudrd8mz/moodle 2019-11-14 10:54:14 +08:00
Simey Lameze 0e287a0e7b MDL-67241 mod_forum: raise memory limit when exporting 2019-11-14 10:12:15 +08:00
Adrian Greeve b6343156f9 Merge branch 'MDL-67116-master' of git://github.com/andrewnicols/moodle 2019-11-14 09:03:31 +08:00
Andrew Nicols 0a5a2ca89b MDL-67116 course: Strict empty string check required
In PHP the following are true:

    assert('' == '');
    assert(0 == '');
    assert(null == '');

The options in the course completion settings are now:

    ''    => none selected
    [int] => itemnumber of activity course completion item.

In the case where the itemnumber was 0  this was being incorrectly
evaluated as an empty string due to the implicit cast to int of the
empty string:

    (int) '' === 0

As a result, the non-strict comparison means that the following are
identical:

    assert(0 == '');
    assert(0 == (int) '');
    assert(0 == '0');

Changing the comparison to a strict comparison is correct because it
ensures the type consitency between the empty string value, and the int
of itemnumber 0. It is safe because the value always comes from the
form, where an int is always returned, and not the DB, where a string is
returned.
2019-11-14 08:59:56 +08:00
Eloy Lafuente (stronk7) ccd5f606c3 Merge branch 'MDL-67248-master' of git://github.com/cescobedo/moodle 2019-11-14 01:12:01 +01:00
David Mudrák 469d4b7f35 MDL-67250 setup: Revert removal of the httpswwwroot setting
It is still used widely in the plugins that would stop working suddenly
without being warned via a debugging message. We must keep it forever as
an alias for the wwwroot.
2019-11-13 19:58:10 +01:00
cescobedo f12d708e61 MDL-67248 filter_displayh5p: Add new description on filter 2019-11-13 18:36:09 +01:00
Juan Leyva 666de97917 MDL-67246 admin: Return course color settings for external clients 2019-11-13 15:33:20 +01:00
Ferran Recio 8a664a65fa MDL-67244 filter_mediaplugin: fix html5 player width for lowres videos 2019-11-13 15:02:41 +01:00
Jun Pataleta f136aa1933 Merge branch 'MDL-67231-master' of git://github.com/andrewnicols/moodle 2019-11-13 16:00:16 +08:00
Jun Pataleta 289c9e14c4 Merge branch 'MDL-67116-master' of git://github.com/andrewnicols/moodle 2019-11-13 15:31:03 +08:00
Andrew Nicols 799418ad12 MDL-67207 forum: Reset focus after closing grade viewer 2019-11-13 14:30:54 +08:00
Andrew Nicols 21900f035e MDL-67207 forum: Return focus when closing expanded discussion 2019-11-13 14:30:54 +08:00
Andrew Nicols c50bc1bf7c MDL-67207 core: Use focus lock manager in modals 2019-11-13 14:30:54 +08:00
Andrew Nicols 4395ef464d MDL-67207 forum: Reset focus after closing grader 2019-11-13 14:30:54 +08:00
Andrew Nicols 7ede47b738 MDL-67207 forum: Lock focus in grader 2019-11-13 14:30:48 +08:00
Andrew Nicols dcdcc12cb2 MDL-67207 core: Add new ARIA focus locker
This is based on code and examples provided in the ARIA specification
https://www.w3.org/TR/wai-aria-practices/examples/dialog-modal/dialog.html
2019-11-13 14:30:32 +08:00
Adrian Greeve 23ac81e396 Merge branch 'MDL-67178' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-13 14:30:06 +08:00
Andrew Nicols 8bd3e49cc9 MDL-67231 h5p: Correct naming of h5p unit test files 2019-11-13 14:24:28 +08:00
Jun Pataleta 783897e56f Merge branch 'MDL-67232-master' of git://github.com/lameze/moodle 2019-11-13 13:49:22 +08:00
Mathew May 2cac67a016 MDL-67178 mod_forum: Allow users to backup forum grades 2019-11-13 13:25:54 +08:00
Andrew Nicols c035141971 MDL-67116 course: Fix completion disabled for gradable items
The default value is an empty string (""), which in PHP evaluates to 0 when
cast to a string in our DML layer.

The fix is to forcibly make it null which is not cast to string in DML
for optional strings.
2019-11-13 12:49:59 +08:00
Jun Pataleta 2e08e15065 Merge branch 'MDL-67199' of https://github.com/stronk7/moodle 2019-11-13 11:20:02 +08:00
Jun Pataleta ec99ffd352 Merge branch 'MDL-67218-master' of git://github.com/andrewnicols/moodle 2019-11-13 11:00:22 +08:00
Simey Lameze e28388735c MDL-67232 mod_forum: remove initialuserid data attr from template 2019-11-13 10:33:55 +08:00
Jake Dallimore df8fff9f34 Merge branch 'MDL-66812-master' of git://github.com/bmbrands/moodle 2019-11-13 10:25:42 +08:00
Adrian Greeve c3044a19b9 Merge branch 'MDL-67215-master' of git://github.com/peterRd/moodle 2019-11-13 10:18:59 +08:00
Andrew Nicols fe795b59e4 MDL-67116 form: Require grade in multi-grade-item activities
AMOS BEGIN
  CPY [rating,rating],[grade_rating_name,rating]
AMOS END
2019-11-13 10:14:37 +08:00
Ryan Wyllie a492f69caf MDL-67116 course: allow grading completion for non ratings grade item 2019-11-13 10:11:44 +08:00
Andrew Nicols d21ba3f6a8 MDL-67218 form: Do not clear grade when rescaling not enabled 2019-11-13 10:11:44 +08:00
Andrew Nicols 09ab002746 Merge branch 'MDL-67194-master' of git://github.com/vmdef/moodle 2019-11-13 08:38:34 +08:00
Andrew Nicols 003c856a7e Merge branch 'wip_MDL-67205_master' of git://github.com/gjb2048/moodle 2019-11-13 08:31:25 +08:00
Eloy Lafuente (stronk7) adc5449399 MDL-67199 versions: main version bump 2019-11-12 17:58:42 +01:00
Eloy Lafuente (stronk7) d5be859063 MDL-67199 versions: bump all versions and requires near release
version = 2019111800 release version
requires= 2019111200 current beta (week7roll1) version
2019-11-12 17:57:08 +01:00
Eloy Lafuente (stronk7) 1633a6035d Moodle release 3.8beta 2019-11-12 16:50:55 +01:00
Jun Pataleta bbb7cb2173 Merge branch 'MDL-66906-master-fix' of git://github.com/andrewnicols/moodle 2019-11-12 22:01:37 +08:00
Andrew Nicols 49d5920ac6 MDL-66906 gradingform_rubric: Add back missing field 2019-11-12 21:04:54 +08:00
Jun Pataleta 134f11e15a Merge branch 'MDL-66906-integration-3' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-12 16:38:58 +08:00
Mathew May 07d8669dbf MDL-66906 mod_forum: Show learners their grades in a Modal 2019-11-12 16:17:04 +08:00
Jun Pataleta fb99cef5f1 Merge branch 'MDL-66360-master-fix' of git://github.com/andrewnicols/moodle 2019-11-12 16:10:38 +08:00
Andrew Nicols 0e32b5ae41 MDL-66360 grading: Validate notifyuser 2019-11-12 16:00:50 +08:00
Andrew Nicols 656f2e5a38 MDL-66360 grade: Correct argument order in params 2019-11-12 15:59:53 +08:00
Andrew Nicols 3c150de283 MDL-67218 form: Do not clear grade when rescaling not enabled 2019-11-12 11:29:34 +08:00
Andrew Nicols 237ddb313f Merge branch 'MDL-66360-master-fix' of git://github.com/lameze/moodle 2019-11-12 10:16:12 +08:00
Simey Lameze 254fc008a7 MDL-66360 forum: rename sendstudentnotifications_forum to forum_grade_notify 2019-11-12 10:15:41 +08:00
Peter 5c137f610b MDL-67215 core: Revert update from lib upgrade 2019-11-12 09:55:18 +08:00
Víctor Déniz Falcón b7c307f33d MDL-67194 core_h5p: save core API version that content types require 2019-11-11 21:09:50 +00:00
Jun Pataleta 5f1307ef9a Merge branch 'MDL-67187_master' of git://github.com/dmonllao/moodle 2019-11-11 22:22:08 +08:00
Bas Brands f2ace4d45a MDL-66812 core_message: update custom checkbox for message dialogue 2019-11-11 15:06:47 +01:00
Gareth Barnard 6097e14b0f MDL-67205 themes: Incorrect information in theme/upgrade.txt. 2019-11-11 12:55:17 +00:00
Eloy Lafuente (stronk7) 25878b786a Merge branch 'MDL-66405-master-fix' of https://github.com/sarjona/moodle 2019-11-11 12:11:41 +01:00
Sara Arjona 9bb296deb0 MDL-66405 core_h5p: Fix behat tests 2019-11-11 12:01:47 +01:00
Eloy Lafuente (stronk7) 6b69013461 MDL-66360 grade: whitespace fix 2019-11-11 10:49:31 +01:00
Andrew Nicols 9359533972 MDL-66360 forum: Fix unit tests in integration 2019-11-11 17:38:02 +08:00
Andrew Nicols c2dc453f07 MDL-66360 forum: Add missing var from merge conflict 2019-11-11 17:27:35 +08:00
Andrew Nicols 63e3409bc2 Merge branch 'MDL-66360-master' of git://github.com/lameze/moodle 2019-11-11 17:16:48 +08:00
Simey Lameze c189319e9c MDL-66360 mod_forum: fix cibot issues 2019-11-11 16:08:08 +08:00
Simey Lameze d543b01b1f MDL-66360 mod_forum: change notifyuser parameter order 2019-11-11 16:08:07 +08:00
Simey Lameze 3f609c8a44 MDL-66360 grade: add missing gradenotifications defaults 2019-11-11 15:39:28 +08:00
Simey Lameze 6143a75136 MDL-66360 grade: fix unit tests failures and errors 2019-11-11 15:39:28 +08:00
Simey Lameze 86ea1d8375 MDL-66360 lang: fix typo on gradenotificationsubjects string 2019-11-11 15:39:28 +08:00
Simey Lameze 91946f8c7d MDL-66360 mod_forum: add missing notifyuser to doc block 2019-11-11 15:39:28 +08:00
Simey Lameze 66216aa052 MDL-66360 mod_forum: remove debug code from template 2019-11-11 15:37:19 +08:00
Simey Lameze 175fd687b4 MDL-66360 grade: fix user grade notification sending errors 2019-11-11 15:37:19 +08:00
Shamim Rezaie c67a54e619 MDL-66360 mod_forum: Notify the student when the marker choose to notify 2019-11-11 15:37:19 +08:00
Shamim Rezaie fff089e80d MDL-66360 gradingform_rubric: support sending grading notifications 2019-11-11 15:34:43 +08:00
Shamim Rezaie 62df27d2d5 MDL-66360 gradingform_guide: Support sending grading notifications 2019-11-11 15:30:27 +08:00
Shamim Rezaie f0744fa0ff MDL-66360 core_grade: grade notifications for scale-based marking 2019-11-11 15:27:05 +08:00
Shamim Rezaie 4fe3ce8f64 MDL-66360 core_grade: grade notifications for simple direct grading 2019-11-11 15:24:16 +08:00
Shamim Rezaie 9672c8aa08 MDL-66360 core_grade: New method to send grade notifications to students 2019-11-11 15:16:19 +08:00
Shamim Rezaie 9666372644 MDL-66360 core_grade: New message handler for grade notifications 2019-11-11 15:16:19 +08:00
Shamim Rezaie b6bf1e8e2a MDL-66360 mod_forum: display notification option pre-set to default 2019-11-11 15:16:19 +08:00
Shamim Rezaie aa73424c66 MDL-66360 mod_forum: Save the sendstudentnotifications setting 2019-11-11 15:12:33 +08:00
Shamim Rezaie de3e28635e MDL-66360 mod_forum: phpdoc fixes 2019-11-11 15:12:33 +08:00
Shamim Rezaie 77580567a3 MDL-66360 mod_forum: added settings for send notifications default val
AMOS BEGIN
 CPY [sendstudentnotifications, mod_assign],[sendstudentnotifications, mod_forum]
 CPY [sendstudentnotifications_help, mod_assign],[sendstudentnotifications_help, mod_forum]
AMOS END
2019-11-11 15:12:33 +08:00
Jake Dallimore 3ab419ad5a Merge branch 'MDL-67137-master' of git://github.com/andrewnicols/moodle 2019-11-11 14:56:52 +08:00
Andrew Nicols 1c997df371 Merge branch 'MDL-66958' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-11 11:26:08 +08:00
Mathew May 8827e573db MDL-66958 core_grade: Add hasgrade to all external fetch webservices 2019-11-11 11:25:17 +08:00
Mathew May 63cd8d45db MDL-66958 core_grade: Add grade status abstract
Also implement the new abstract in Forum
2019-11-11 11:25:17 +08:00
Mathew May 8b04be120b MDL-66958 core_grade: Only save scale on form change 2019-11-11 11:25:17 +08:00
Mathew May 08f11b07b4 MDL-66958 core_grade: Only save point on form change 2019-11-11 11:25:17 +08:00
Mathew May e659dc651e MDL-66958 gradingform_guide: Only save on form change 2019-11-11 11:25:17 +08:00
Mathew May 9769ba08b3 MDL-66958 gradingform_rubric: Only save on form change 2019-11-11 11:25:17 +08:00
David Monllaó a461d36010 MDL-67187 analytics: Fix broken text comparison 2019-11-11 11:00:28 +08:00
Andrew Nicols 13965d30fe Merge branch 'MDL-66447' of https://github.com/Chocolate-lightning/moodle_forum-project 2019-11-11 10:55:46 +08:00
Michael Hawkins a25f9cc357 MDL-66447 forumreport_summary: Added event logging 2019-11-11 10:49:09 +08:00
Mathew May f418c08c31 MDL-66958 core_grade: Add comparison js for grade saves 2019-11-11 10:44:09 +08:00
Mathew May 80dcc83400 MDL-66958 core_grade: Correct documentation in normalise js 2019-11-11 09:57:53 +08:00
Adrian Greeve 65d053ec0d Merge branch 'MDL-67129-master-2' of git://github.com/bmbrands/moodle 2019-11-11 08:07:03 +08:00
Eloy Lafuente (stronk7) 9367922f09 MDL-66405 filter_h5p: fix trailing-lines gherkinlint problem 2019-11-11 00:58:03 +01:00
Eloy Lafuente (stronk7) a1e0f47fe9 Merge branch 'MDL-66405-master' of git://github.com/aanabit/moodle 2019-11-11 00:33:16 +01:00
Sara Arjona c9f0abc25a Merge branch 'MDL-67184-master' of git://github.com/cescobedo/moodle 2019-11-10 21:48:48 +01:00
cescobedo 64e97710a3 MDL-67184 filter_displayh5p: Move upper than urltolink & activityname 2019-11-10 21:40:25 +01:00
Sara Arjona f529720e07 Merge branch 'MDL-67196' of https://github.com/stronk7/moodle 2019-11-09 20:06:11 +01:00
Sara Arjona 1cb3493ab1 Merge branch 'MDL-67156-master' of git://github.com/vmdef/moodle 2019-11-09 19:53:27 +01:00
Sara Arjona 5e7d8b42ce Merge branch 'MDL-67158-master' of git://github.com/mihailges/moodle 2019-11-09 19:23:39 +01:00
Mihail Geshoski d68be5b209 MDL-67158 core_h5p: Unit test fixes 2019-11-10 01:37:44 +08:00
Eloy Lafuente (stronk7) 8585294d5c Merge branch 'MDL-67098-master' of git://github.com/junpataleta/moodle 2019-11-09 16:14:45 +01:00
Eloy Lafuente (stronk7) acfbb4bf44 Merge branch 'MDL-67146-master-enfix-2' of git://github.com/mudrd8mz/moodle 2019-11-09 16:11:39 +01:00
Sara Arjona b80c1e015a Merge branch 'MDL-67061-master' of https://github.com/aanabit/moodle 2019-11-09 13:22:03 +01:00
Amaia Anabitarte 2c679b6ea8 MDL-67061 core_h5p: Behat tests for H5P content-types admin settings 2019-11-09 11:11:07 +01:00
Bas Brands c43f99ca47 MDL-67061 core_h5p: List installed contenttypes/libraries 2019-11-09 11:11:07 +01:00
Sara Arjona 76b6e6ca08 Merge branch 'MDL-67174' of https://github.com/paulholden/moodle 2019-11-09 08:59:41 +01:00
Sara Arjona 3b381bd2da Merge branch 'MDL-67173-master' of git://github.com/cescobedo/moodle 2019-11-09 08:55:47 +01:00
Sara Arjona 75bf9a3ab8 Merge branch 'MDL-67167-master' of git://github.com/jleyva/moodle 2019-11-09 08:50:15 +01:00
David Mudrák cf36114501 MDL-67146 lang: Update behat scenario files with the new string wording 2019-11-09 06:36:25 +01:00
Helen Foster fda41f4588 MDL-67146 lang: Import fixed English strings (en_fix)
Significant string changes:

* configallowemojipicker,core_admin - including emoji picker button in
  Atto
* viewconversation,mod_forum - 'conversation' changed to 'discussion'
2019-11-09 06:35:22 +01:00
Eloy Lafuente (stronk7) 544f8625ba MDL-67196 behat: Increase allowed max report size 2019-11-09 01:11:14 +01:00
Víctor Déniz Falcón 47627abe9d MDL-67156 core_h5p: change DIRECTORY_SEPARATOR by slashes
In Windows, the value of DIRECTORY_SEPARATOR is "\", causing failures in
the tests when compared to the path strings that use "/".
2019-11-08 22:18:11 +00:00
Amaia Anabitarte ba70ec2666 MDL-66405 filter_h5p: Behat tests for H5P filter 2019-11-08 17:08:58 +01:00
Amaia Anabitarte 7d8af94f86 MDL-66405 atto_h5p: Behat tests for H5P atto button 2019-11-08 17:08:57 +01:00
Amaia Anabitarte 0d97e6103f MDL-66405 core_h5p: New behat steps and selectors for H5P tools 2019-11-08 17:08:57 +01:00
Sara Arjona f9db5892ec weekly release 3.8dev+ 2019-11-08 15:39:36 +01:00
Sara Arjona 7347347e84 NOBUG: Fixed SVG browser compatibility 2019-11-08 15:39:33 +01:00
Sara Arjona 71528112b9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-11-08 15:39:33 +01:00
Andrew Nicols fc0ded848c MDL-67058 h5p: Correct PHPUNIT_LONGTEST usage 2019-11-08 15:48:58 +08:00
Andrew Nicols fd9333ca93 MDL-67058 h5p: Content fetch should use save_h5p API 2019-11-08 15:48:58 +08:00
Jun Pataleta 6846ba70a2 MDL-67098 forumreport_summary: Drop temp table at the end of processing 2019-11-08 15:28:23 +08:00
Andrew Nicols ab8f1c3b8c MDL-67058 h5p: System user has permission 2019-11-08 15:20:17 +08:00
Jun Pataleta 2e809ec27c Merge branch 'MDL-66893-master-3' of https://github.com/ryanwyllie/moodle 2019-11-08 11:59:44 +08:00
Andrew Nicols 8948ebb7ac Merge branch 'MDL-66297-master' of git://github.com/mickhawkins/moodle 2019-11-08 11:17:38 +08:00
Michael Hawkins d3ae8d42ea MDL-66297 mod_forum: Added word/char count column headings to export 2019-11-08 11:13:37 +08:00
Michael Hawkins 64da1d093a MDL-66297 forumreport_summary: Added filter data to forum export links
From/to date filter timestamps, as well as discussion IDs of any
filtered groups.
2019-11-08 11:13:36 +08:00
Michael Hawkins 2e7a16b954 MDL-66297 mod_forum: Prepared export to handle URL filters
Added the ability for discussion IDs and from/to timestamps to be
passed in via URL (to match filters available in the summary report,
which will link to the export). Also fixed a bug where "all users"
would fail as an optional array param.
2019-11-08 11:13:36 +08:00
Shamim Rezaie 1743d4a3e9 MDL-66297 forumreport_summary: add export links to the report 2019-11-08 11:13:36 +08:00
Shamim Rezaie 84ed2320dd MDL-66297 mod_forum: The export form can take params from URL 2019-11-08 11:13:36 +08:00
Adrian Greeve fee88f39c5 Merge branch 'MDL-67169' of https://github.com/stronk7/moodle 2019-11-08 10:43:05 +08:00
Jake Dallimore 9560facb35 Merge branch 'MDL-67016-master-user-profile-see-own-courses' of https://github.com/danowar2k/moodle 2019-11-08 10:22:02 +08:00
Andrew Nicols a50e27c7bd Merge branch 'MDL-67149-master' of https://github.com/sammarshallou/moodle 2019-11-08 10:09:58 +08:00
Jun Pataleta e2ba123d1c Merge branch 'MDL-67122-master' of https://github.com/mickhawkins/moodle 2019-11-08 09:57:20 +08:00
Andrew Nicols 1e96159444 Merge branch 'MDL-66404-master' of git://github.com/cescobedo/moodle 2019-11-08 09:24:10 +08:00
Andrew Nicols 284af93b5e MDL-67043 h5p: Whitespace fix 2019-11-08 08:27:13 +08:00
Andrew Nicols 6f1b145ea8 Merge branch 'MDL-67043-master' of git://github.com/cescobedo/moodle 2019-11-08 08:25:14 +08:00
Eloy Lafuente (stronk7) ed2fb5710f Merge branch 'MDL-67048_master' of https://github.com/adpe/moodle 2019-11-08 00:45:05 +01:00
Eloy Lafuente (stronk7) f34c8e86e7 Merge branch 'MDL-67058-master' of git://github.com/vmdef/moodle 2019-11-08 00:30:08 +01:00
cescobedo 3b85322940 MDL-67173 core_h5p: Translate non-localURL in WS to invalidurl
The WebService should return invalidurl when the coding error is
"Coding error detected, it must be fixed by a programmer: out_al_local_url called on a non-local URL"
So, we translate the error to be used by Mobile App.
2019-11-07 23:05:41 +01:00
Eloy Lafuente (stronk7) 9eda724470 Merge branch 'MDL-67153' of https://github.com/timhunt/moodle 2019-11-07 19:49:42 +01:00
Paul Holden afaf64b334 MDL-67174 core: update standard plugins list.
Add Forum summary report and Atto emoji picker.
2019-11-07 16:45:50 +00:00
Sara Arjona 3a9c515057 Merge branch 'MDL-66683-master' of git://github.com/cescobedo/moodle 2019-11-07 17:41:22 +01:00
cescobedo 5d69038bb6 MDL-66683 core: Revert MDL-66181 because created regressions
This reverts commit ed080a580f.
This issue reverts the behaviour modified in MDL-66181, as that change
negatively impacted course-creation workflows. As this appears to be
the intended functionality, the Security team has agreed to revert
this change.
2019-11-07 17:29:30 +01:00
Michael Hawkins 209cfe64fb MDL-67122 forumreport_summary: Fix template context eg and line length
The template context needed updating now it populates a single select
and the summary_table constructor params should be broken over 2 lines
2019-11-08 00:15:48 +08:00
Jake Dallimore 78d65acd54 MDL-66257 tool_cohortroles: unit test for users in multiple cohorts 2019-11-07 23:47:18 +08:00
cescobedo 7b5f4a62c1 MDL-66257 tool_cohortroles: Unassign the role on removal cohortroles. 2019-11-07 23:47:17 +08:00
Michael Hawkins 30fc34761b MDL-67122 forumreport_summary: Apply filters to report download 2019-11-07 23:42:34 +08:00
Sara Arjona 830eab425c Merge branch 'MDL-67166-master' of git://github.com/bmbrands/moodle 2019-11-07 16:30:18 +01:00
Bas Brands fda23bf7cd MDL-67129 atto_h5p: uneditable .h5p-placeholder container 2019-11-07 14:06:38 +01:00
Eloy Lafuente (stronk7) a5cd14e4d8 MDL-67169 phpunit: fix clear flaw in unit test provider
Basically the provider is ignoring the CRLF to LF normalization
results and loading the original file again.

This doesn't have any impact normally, because all moodle
files are LF ones and people using other systems have their
git configurations set to work that way (not modify or force LF).

But there may be checkouts out there (for example travis) where
the git configuration by defult is to convert to the OS, causing
windows runs to fail badly there. See the issue for more info
and links.
2019-11-07 13:44:06 +01:00
Juan Leyva ff490afbff MDL-67167 block: Force returned configuration values to be JSON encoded
Contributed plugins may set non-scalar values as valid instance configuration values (the core RSS client block does the same)
2019-11-07 13:29:52 +01:00
Jun Pataleta af9a491478 Merge branch 'MDL-67084-master' of git://github.com/junpataleta/moodle 2019-11-07 19:40:55 +08:00
Marina Glancy 9f2c665999 MDL-67084 core_form: duration element should export arrays 2019-11-07 19:21:16 +08:00
Jun Pataleta c4e1c9d167 MDL-66598 auth_oauth2: OAuth2 upgrade step
This basically does two things:
1. Updates all non-Facebook/Google/Microsoft issuers and sets their
'requireconfirmation' field to 1 so that future OAuth2 logins on these
issuers will always have an email confirmation sent to them.
2. Deletes the linked logins of users with non-Facebook/Google/Microsoft
OAuth2 issuers.
2019-11-07 18:42:07 +08:00
Jun Pataleta 8a3316bd9b MDL-66598 auth_oauth2: Add warning messages in confirm emails 2019-11-07 18:42:07 +08:00
Jun Pataleta df6092d65c MDL-66598 tool_oauth2: Make account confirmation required by default
* Only Facebook, Google, and Microsoft issuers can optionally offer to
require account confirmation via email. We will require email
confirmation for the rest of the issuers.
2019-11-07 18:42:07 +08:00
Bas Brands 5092133b8f MDL-67166 theme_classic: H5P embedded styles 2019-11-07 10:57:39 +01:00
cescobedo 0477e526e4 MDL-66404 core_h5p: Add new h5p_deleted event 2019-11-07 10:43:20 +01:00
cescobedo fba5bba829 MDL-66404 core_h5p: Add new h5p_viewed event 2019-11-07 10:43:13 +01:00
Amaia Anabitarte 21cb97560a MDL-67110 filter_h5p: Removing wildcard characters 2019-11-07 10:27:53 +01:00
Amaia Anabitarte b57e1c9590 MDL-67059 core_h5p: UI to manually upload H5P content type libraries
Co-authored by: Mihail Geshoski <mihail@moodle.com>
2019-11-07 16:54:28 +08:00
cescobedo 65ae2441f3 MDL-67043 core_h5p: Add new ws to get the H5P trusted file 2019-11-07 08:47:25 +01:00
Jun Pataleta cf29a4857a Merge branch 'MDL-66701_master' of git://github.com/dmonllao/moodle 2019-11-07 15:41:45 +08:00
David Monllaó d7d52aae15 MDL-66701 report_insights: Target's extra info on the insights report 2019-11-07 15:09:15 +08:00
emdalton 05b0e3158c MDL-66701 analytics: Insights report descriptions 2019-11-07 15:09:14 +08:00
Ryan Wyllie 2667acf121 MDL-66893 mod_forum: move grade button into region main 2019-11-07 14:53:38 +08:00
Ryan Wyllie 69848e719b MDL-66893 mod_forum: add nested v2 support to grader 2019-11-07 14:53:38 +08:00
Ryan Wyllie 8404c2b101 MDL-66893 mod_forum: update grader search 2019-11-07 14:53:38 +08:00
Ryan Wyllie 8a09616bc2 MDL-66893 mod_forum: add grader status to grader UI 2019-11-07 14:53:37 +08:00
Ryan Wyllie def5f14939 MDL-66893 mod_forum: update user picker in grader UI 2019-11-07 14:53:37 +08:00
Ryan Wyllie 035bd996cb MDL-66893 mod_forum: show expand conversation in nested view 2019-11-07 14:53:37 +08:00
Ryan Wyllie d9fedf3dc8 MDL-66893 mod_forum: update user content region in grader UI 2019-11-07 14:53:37 +08:00
Ryan Wyllie 4c98e56c96 MDL-66893 mod_forum: update navigation bar in grader UI 2019-11-07 14:53:37 +08:00
Ryan Wyllie 46d51c8ca9 MDL-66893 mod_forum: update grading panel UI in grader 2019-11-07 14:53:37 +08:00
Jun Pataleta ae05752048 Merge branch 'MDL-66372' of https://github.com/Chocolate-lightning/moodle_forum-project 2019-11-07 13:22:32 +08:00
Michael Hawkins cf8393be4b MDL-66372 forumreport_summary: Tidy up per page and bulk ops handling 2019-11-07 12:58:02 +08:00
Michael Hawkins 20b064beb0 MDL-66372 forumreport_summary: Added ability to select pagination size
This also includes some refactoring of the bulk actions menu, so both
elements are correctly position within the page, as well as fixing the
alignment of the bulk dropdown with the download dropdown.
2019-11-07 12:58:02 +08:00
Michael Hawkins d418bda8c7 MDL-66372 forumreport_summary: Improved generate with filters override
Previously this override simply appended any GET params from the
action it was overriding to the final action URL, now it can handle
overriding param values, so that they are updated or added as needed
2019-11-07 12:58:02 +08:00
Michael Hawkins 0d8cd4af31 MDL-66372 forumreport_summary: Report template cleanup 2019-11-07 12:58:02 +08:00
Adrian Greeve d5e303f8e3 Merge branch 'MDL-67057-master' of git://github.com/andrewnicols/moodle 2019-11-07 11:59:00 +08:00
Andrew Nicols 1c66ef98ed MDL-67057 h5p: Set framework file when saving package 2019-11-07 11:56:12 +08:00
Andrew Nicols 5730749f5d Merge branch 'MDL-66359-master' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-07 10:48:33 +08:00
Mathew May 546bf3c68e MDL-66359 mod_forum: Restrict grader by groups 2019-11-07 10:47:45 +08:00
Mathew May e3bb3da406 MDL-66359 core_course: Modify get_enrolled_users_by_cmid
We need to also provide a user's group along with the current information
2019-11-07 10:47:45 +08:00
Jun Pataleta a65873c37d Merge branch 'MDL-66592_master' of git://github.com/dmonllao/moodle 2019-11-07 10:35:21 +08:00
Adrian Greeve 634485c56f Merge branch 'MDL-66890-master' of https://github.com/Chocolate-lightning/moodle_forum-project 2019-11-07 10:08:54 +08:00
Andrew Nicols 6f44f09495 Merge branch 'MDL-67076-master' of git://github.com/sarjona/moodle 2019-11-07 09:44:35 +08:00
Andrew Nicols 7edf0138fb MDL-67057 h5p: Language string fix 2019-11-07 09:37:27 +08:00
Andrew Nicols 884ba60a50 Merge branch 'MDL-67057-master' of git://github.com/andrewnicols/moodle 2019-11-07 09:20:27 +08:00
Andrew Nicols 021c180c83 MDL-67057 h5p: Remove unreachable code 2019-11-07 09:13:25 +08:00
Mihail Geshoski 6ac0f57073 MDL-66762 tool_dataprivacy: Sanitize the extra fields in the webservice 2019-11-07 09:00:19 +08:00
Paul Holden 7455b741c9 MDL-66762 user: escape extra/email user fields. 2019-11-07 09:00:19 +08:00
Paul Holden eb9f830604 MDL-66762 user: stricter email validation. 2019-11-07 09:00:19 +08:00
David Monllaó 9846b5f8c5 MDL-66592 analytics: Split text and link 2019-11-07 08:25:35 +08:00
David Monllaó 279f370b3f MDL-66592 report_insights: Help icon for indicator calculations desc 2019-11-07 08:25:35 +08:00
Tim Hunt 550599e001 MDL-67155 quiz: first attempt_step should record the student's userid 2019-11-07 00:08:49 +00:00
Sara Arjona c07f31ae2c MDL-67057 core_h5p: Add capability to update content-type libraries 2019-11-07 07:19:59 +08:00
Sara Arjona 7a0d9bd5e4 MDL-67057 core_h5p: New method to get latest library version 2019-11-07 07:19:59 +08:00
Sara Arjona 285976f1bd MDL-67057 core_h5p: Improve displaying errors 2019-11-07 07:19:59 +08:00
Sara Arjona 5a266a579c MDL-67057 core_h5p: Add helper class 2019-11-07 07:19:58 +08:00
Eloy Lafuente (stronk7) d6c704bf8e Merge branch 'MDL-42638-master' of https://github.com/lucaboesch/moodle 2019-11-06 22:32:56 +01:00
Eloy Lafuente (stronk7) c1f5154a10 Merge branch 'MDL-67127-master' of git://github.com/ferranrecio/moodle 2019-11-06 22:31:15 +01:00
Tim Hunt c9491626ab MDL-67153 question bank: let qtype add actions to the edit menu 2019-11-06 19:32:15 +00:00
Victor Deniz Falcon 5315acb47c MDL-67058 core_h5p: task to get latest content types version from H5P 2019-11-06 18:17:34 +00:00
Sara Arjona 56f6e1d970 Merge branch 'MDL-67140' of https://github.com/paulholden/moodle 2019-11-06 18:53:22 +01:00
sam marshall 81305c3bbe MDL-67149 Accessibility: Help popups fail WCAG 1.4.13 (Dismissable)
It must be possible to dismiss the help popups (popovers) with the
Escape key, without changing focus.
2019-11-06 16:24:30 +00:00
Jun Pataleta aaadb53649 MDL-67148 tool_mobile: Set auth_cas|auth_name config value in unit test
Thanks to Renaat Debleu for the fix suggestion!
2019-11-07 00:01:20 +08:00
Michael Hawkins 46fbfb98fe MDL-66890 forumreport_summary: Improved filter close keyboard response 2019-11-06 17:10:09 +08:00
Jun Pataleta 42001cdb91 Merge branch 'MDL-67097-master-2' of https://github.com/snake/moodle 2019-11-06 16:12:46 +08:00
Sara Arjona 43c584a7cc Merge branch 'MDL-66984-change_password_url-with-user' of https://github.com/brendanheywood/moodle 2019-11-06 08:30:41 +01:00
Michael Hawkins b2aa354d30 MDL-66890 forumreport_summary: Added the ability to close filters
Previously, filters could only be closed by saving/submitting them.
Now, you are able to close and reopen them by opening another filter,
using the escape key, or clicking outside of the filter.
As per UX recommendations, filters retain any changes until the page
is reloaded (either via refresh or by saving a different filter).
2019-11-06 15:27:51 +08:00
Ryan Wyllie 4e53672929 MDL-66893 grade: update rubric template for grader 2019-11-06 13:29:52 +08:00
Ryan Wyllie bf7018b6bd MDL-66893 grade: update marking guide template for grader 2019-11-06 13:29:52 +08:00
cescobedo c0c489bb06 MDL-67082 core_h5p: Add new contexts to check h5p file permissions 2019-11-06 12:51:04 +08:00
cescobedo 3f6c7446ff MDL-67082 core_h5p: Check component_callback called for right context 2019-11-06 12:51:04 +08:00
Jake Dallimore 827735ef26 Merge branch 'MDL-67074-master' of git://github.com/andrewnicols/moodle 2019-11-06 11:48:21 +08:00
Jake Dallimore b63cb5b496 MDL-67097 libraries: add unit test verifying rtl directive failure case
When a closing comment is used, such as when we wrap css with the
rtl:begin:ignore and rtl:end:ignore (the latter being the closing),
it is ignored in the following case:
- If the closing comment is the last item in a csslist like:
div {/*rtl:begin:ignore*/left:20px; text-align:left/*rtl:end:ignore*/}
in which case there is no css rule following the comment for it to be
associated with. It is therefore not seen and registered, meaning we
continue ignoring rtl (a bug).
In such cases, we should either:
- ensure the comment is not the final element in the css list
- use self-closing (/*rtl:ignore*/) comments for each rule instead.
- use a self-closing comment on the entire css list, if applicable.
2019-11-06 08:57:27 +08:00
Jake Dallimore e968eb1e8c MDL-67097 libraries: update upgrade notes for sabberworm/php-css-parser
Until the upstream patch is accepted, we need to patch this locally.
2019-11-06 08:57:27 +08:00
Jake Dallimore 88267b1c68 MDL-67097 libraries: fix comment parsing in php-css-parser library
This fixes a bug when parsing the following rule-level and list-level
comments.

div {/*rtl:ignore*/left:10px;/*rtl:ignore*/ display:inline;}
/*rtl:ignore*/div {left:10px;} /*rtl:ignore*/ a {left:10px}

The latter rtl directive was being swallowed by the parser in these
cases and was not being properly allocated as a property of the rule
or csslist.

This restores the correct behaviour of the rtlcss library, which depends
on php-css-parser.
2019-11-06 08:57:27 +08:00
Jake Dallimore 5aa7d19615 MDL-67097 libraries: add unit tests for the core_rtlcss class
The core_rtlcss class extends the \MoodleHQ\RTLCSS\RTLCSS class. This
upstream library had tests, but these were not included in core. This
change uses those test cases to test core_rtlcss, to make sure future
lib changes don't break the css parsing.
2019-11-06 08:57:26 +08:00
AMOS bot d6c1c81752 Automatically generated installer lang files 2019-11-06 00:16:18 +00:00
Adrian Perez a40cb785b0 MDL-67048 progressbar: use bootstrap component to fix invert colors 2019-11-05 22:33:27 +01:00
Tom Dickman 9d9e3a3da2 MDL-57635 tool_usertours: Restrict tours by user account details
This feature adds a filter for determining if a tour can be shown to a user based on when their account
was created, when they first accessed Moodle, when they last logged in to Moodle, or when the tour was
last updated.
This will allow the prevention of tour display to experienced Moodle users, allowing a tour to be
targetted at those who have been using Moodle for a shortened period and presumably require tour
information more.
2019-11-06 08:32:56 +11:00
Paul Holden dcab750551 MDL-67140 calendar: fix selector switching between days. 2019-11-05 16:41:12 +00:00
Luca Bösch c8f78f7106 MDL-42638 filters: Have emoticons respect <pre>. 2019-11-05 16:06:46 +01:00
Michael Hawkins aa86441b87 MDL-66161 output: Escaping fatal error message and URL strings 2019-11-05 13:44:37 +01:00
Juan Leyva 6d51e13f72 MDL-66377 user: Only allow active users to retrieve files via tokenpluginfile.php 2019-11-05 13:44:37 +01:00
Paul Holden 6330d48813 MDL-66228 mod_lesson: ensure return URL parameters are always local. 2019-11-05 13:44:37 +01:00
Eloy Lafuente (stronk7) 01aa126848 on-demand release 3.8dev+ 2019-11-05 13:34:51 +01:00
Eloy Lafuente (stronk7) d01d18cad8 NOBUG: Fixed SVG browser compatibility 2019-11-05 13:34:50 +01:00
Eloy Lafuente (stronk7) a42fec7739 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-11-05 13:34:49 +01:00
Ferran Recio fb2775c429 MDL-67127 mimetypes: add H5P to the default mime types list 2019-11-05 13:25:59 +01:00
Sara Arjona 40ea02e3ce Merge branch 'MDL-66399-master-fix' of git://github.com/andrewnicols/moodle 2019-11-05 11:06:14 +01:00
Andrew Nicols 2665f35cf0 MDL-67137 javascript: Add missing polyfills 2019-11-05 15:26:14 +08:00
Andrew Nicols 408eb5e0d9 MDL-66399 editor: Only set h5p settings if user can deploy 2019-11-05 14:19:08 +08:00
Adrian Greeve 2907f45106 Merge branch 'MDL-67047-master' of git://github.com/jleyva/moodle 2019-11-05 13:09:06 +08:00
Andrew Nicols b655690b04 MDL-67074 forum: Add a new toast region when in full screen mode 2019-11-05 12:10:51 +08:00
Andrew Nicols e943e7d56f Merge branch 'MDL-66381-master' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-11-05 11:58:56 +08:00
Mathew May bdcf8908ae MDL-66381 mod_forum: User search and dropdown 2019-11-05 11:58:28 +08:00
Jake Dallimore 7296c718a1 Merge branch 'MDL-66455-master' of git://github.com/lameze/moodle 2019-11-05 11:42:48 +08:00
Paul Holden 8d09b8cab6 MDL-58827 user: add institution & department filters. 2019-11-05 00:16:13 +00:00
AMOS bot 3f59f2693b Automatically generated installer lang files 2019-11-05 00:10:17 +00:00
Eloy Lafuente (stronk7) ea07527210 Merge branch 'MDL-67117-master-2' of git://github.com/marinaglancy/moodle 2019-11-05 01:03:58 +01:00
Jun Pataleta 08636b8524 Merge branch 'MDL-66582-master' of git://github.com/jleyva/moodle 2019-11-04 19:39:24 +08:00
Adrian Greeve f025022d62 Merge branch 'MDL-66679-master' of https://github.com/sammarshallou/moodle 2019-11-04 19:21:42 +08:00
Jake Dallimore f33ea855bf Merge branch 'MDL-67093-master' of git://github.com/andrewnicols/moodle 2019-11-04 19:21:41 +08:00
Adrian Greeve b00b51aab6 Merge branch 'MDL-66770-master-2' of https://github.com/ryanwyllie/moodle 2019-11-04 19:21:41 +08:00
Jun Pataleta fd8c021447 Merge branch 'MDL-67039_master' of git://github.com/dmonllao/moodle 2019-11-04 19:21:41 +08:00
Jun Pataleta fcc1facdca Merge branch 'MDL-66373-master-2' of https://github.com/Chocolate-lightning/moodle_forum-project 2019-11-04 19:21:40 +08:00
Adrian Greeve 385d07f6af Merge branch 'MDL-43189-master' of git://github.com/snake/moodle 2019-11-04 19:21:40 +08:00
Eloy Lafuente (stronk7) fa6c694baf Merge branch 'MDL-66990-master-enfix' of git://github.com/mudrd8mz/moodle 2019-11-04 19:21:40 +08:00
Adrian Greeve 69ff7df008 Merge branch 'MDL-46779-master' of https://github.com/ryanwyllie/moodle 2019-11-04 19:21:40 +08:00
Adrian Greeve f87a2e6fa0 Merge branch 'MDL-46779-master' of https://github.com/ryanwyllie/moodle 2019-11-04 19:21:39 +08:00
Adrian Greeve 0de5da02eb Merge branch 'MDL-66770-master-2' of https://github.com/ryanwyllie/moodle 2019-11-04 19:21:39 +08:00
Andrew Nicols 691c570776 Merge branch 'MDL-67087-master' of git://github.com/marinaglancy/moodle 2019-11-04 19:21:39 +08:00
Ryan Wyllie 9cec5dcaae MDL-66770 mod_forum: fix subscription behat tests 2019-11-04 11:29:29 +08:00
Michael Hawkins a949653167 MDL-66373 forumreport_summary: Introduced dates filter
Added the dates data filter, and refactored summaryreport_table to
handle passing filter content into the base SQL. Previously it was only
possible to add filter content into a separate part of the query.
2019-11-04 10:04:57 +08:00
Michael Hawkins 23affd76c2 MDL-66373 calendar: Added datetimes to timestamps conversion web service 2019-11-04 10:04:57 +08:00
Elizabeth Dalton 7229c5e6b5 MDL-66592 analytics: Descriptions for indicator calculations 2019-11-04 09:49:59 +08:00
David Monllaó b92c764872 MDL-67039 analytics: Unit tests for unidimensional arrays 2019-11-04 09:33:50 +08:00
David Monllaó 47b506e2f7 MDL-67039 analytics: Unidimensional array if no predictions 2019-11-04 09:32:05 +08:00
Marina Glancy 553b17a2c0 MDL-67117 filter_mathjaxloader: do not position to hash 2019-11-03 14:48:23 +01:00
AMOS bot a1d18d0218 Automatically generated installer lang files 2019-11-02 00:09:21 +00:00
Helen Foster 7ac4c9c1f6 MDL-66990 lang: Import fixed English strings (en_fix)
Significant string changes:

* hidegrader_help,mod_assign - note about setting having no effect on
  comments box
* configdefaultrequestcategory, configenablecourserequests,
  configlockrequestcategory, lockrequestcategory, core_admin - clearer
  explanation
* configenablecompletion,core_completion - including reason for setting
  activity completion conditions
* emailstop,core - clearer wording
* setuplink_desc,tool_mobile - including where the app download page
  link is displayed and leaving the setting empty
2019-11-01 11:16:10 +01:00
Shamim Rezaie fffb043eae MDL-43189 core: improve validating db settings during cli install 2019-11-01 15:44:40 +08:00
Shamim Rezaie 6def9cd253 MDL-43189 core: Validate db prefix during installation 2019-11-01 15:44:40 +08:00
Ryan Wyllie ef2afe4c3d MDL-46779 editor: fix case of emoji picker lang string 2019-11-01 14:34:14 +08:00
Ryan Wyllie 667e5fd93f MDL-66770 mod_forum: put nested v2 display mode behind user preference 2019-11-01 13:17:24 +08:00
Ryan Wyllie 2602c7bfb5 MDL-66770 mod_forum: rename modern display mode to nested v2 2019-11-01 13:17:24 +08:00
Ryan Wyllie 787762b17a MDL-66770 mod_forum: move view selector out of settings drawer 2019-11-01 13:17:24 +08:00
Ryan Wyllie 1aac58b280 MDL-66770 mod_forum: move permalink into menu in modern display 2019-11-01 13:17:24 +08:00
Ryan Wyllie 1dced2a410 MDL-66770 theme: change switch styling from iOS to Material Design 2019-11-01 13:17:24 +08:00
Ryan Wyllie 9aa3a11d0e MDL-66770 mod_forum: change columns in discussion list table
Show the last post user, remove discussion author image, and fix
column widths to the size of the content.
2019-11-01 13:17:24 +08:00
Ryan Wyllie 454d76f689 MDL-66770 mod_forum: move subscription from menu into toggle 2019-11-01 13:17:24 +08:00
Ryan Wyllie 11786e6688 MDL-46779 editor: add emoji picker atto plugin 2019-11-01 12:43:34 +08:00
Mathew May 9d752481fc MDL-66381 core_course: Modify get_enrolled_users_by_cmid
We need to also provide a user's picture along with the current information
2019-11-01 11:46:37 +08:00
Andrew Nicols f18ab990f2 Merge branch 'MDL-67100-master' of git://github.com/sarjona/moodle 2019-11-01 11:07:40 +08:00
Andrew Nicols 760a745afc Merge branch 'MDL-66399-master-6' of git://github.com/bmbrands/moodle 2019-11-01 10:45:22 +08:00
Andrew Nicols cd0a9144b4 Merge branch 'MDL-66398-master' of git://github.com/aanabit/moodle 2019-11-01 10:39:08 +08:00
Jun Pataleta eb13152579 Merge branch 'MDL-67067-master' of git://github.com/mihailges/moodle 2019-11-01 10:07:13 +08:00
Ryan Wyllie 7a2d4f546f MDL-66770 mod_forum: general UI tweaks 2019-11-01 09:59:11 +08:00
Andrew Nicols f2a901173e MDL-67093 grading: Fetch cm with get_fast_modinfo 2019-11-01 08:49:12 +08:00
Eloy Lafuente (stronk7) 6e4cee745b Merge branch 'MDL-66807_master' of git://github.com/dmonllao/moodle 2019-11-01 00:08:16 +01:00
Daniel Poggenpohl a009aad404 MDL-67016 profile: current user should see his own courses 2019-10-31 14:35:56 +01:00
Juan Leyva 52e0935691 MDL-67047 block_myoverview: Return custom fields selector values 2019-10-31 14:24:25 +01:00
Eloy Lafuente (stronk7) e04a73ccc0 on-demand release 3.8dev+ 2019-10-31 13:35:27 +01:00
Eloy Lafuente (stronk7) c3f2976047 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-31 13:35:20 +01:00
Juan Leyva 62a08b1df8 MDL-66582 tool_mobile: Clean URLs from auth plugins
In order to avoid the WebService to break we must double check that URLs coming from auth plugins are valid.
2019-10-31 12:03:39 +01:00
Johan Dobbelstein 5b39bf184d MDL-66582 auth: Fix empty auth_logo in CAS/Shibboleth auth plugins
* set $idp['iconurl'] = null if no auth_logo
* lib/templates/loginform.mustache will skip NULL iconurls
* lib/ajax/service?info=tool_mobile_get_public_config will validate the NULL values
2019-10-31 12:03:39 +01:00
Simey Lameze 65137025ff MDL-66455 calendar: add coverage for event types in subscription page 2019-10-31 18:44:14 +08:00
Simey Lameze 19bea57b90 MDL-66455 calendar: show site level subscriptions 2019-10-31 18:44:14 +08:00
Jake Dallimore 817dee3337 MDL-67086 css: Reverting MDL-66982, causing global RTL problems
Revert "Merge branch 'MDL-66982_master' of https://github.com/nadavkav/moodle"

This reverts commit 7ddf5ab75e, reversing
changes made to 32b625b6de.
2019-10-31 11:13:30 +01:00
Sara Arjona ca7de4b6d7 MDL-67100 core_h5p: Add autoloader to the h5p_file_storage_test 2019-10-31 11:07:16 +01:00
Bas Brands 59e87e6274 MDL-66399 atto_h5p: allow h5p file uploads in atto 2019-10-31 10:58:37 +01:00
Adrian Greeve fcad5ca254 Merge branch 'MDL-66074-OCT28' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-10-31 15:33:37 +08:00
Mathew May b1909eebed MDL-66074 mod_forum: Correct 0 length styles 2019-10-31 15:30:48 +08:00
Adrian Greeve be153c65d9 Merge branch 'MDL-66247-master' of git://github.com/andrewnicols/moodle 2019-10-31 14:34:52 +08:00
Adrian Greeve d0d78c36f8 Merge branch 'MDL-66074-OCT28' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-10-31 13:38:49 +08:00
Mathew May fdf26fea78 MDL-66074 tool_dataprivacy: Raise the expected download file size 2019-10-31 12:55:55 +08:00
David Monllaó 87e5342a5b MDL-66807 analytics: Fix templates for gmail 2019-10-31 11:41:53 +08:00
Andrew Nicols 9bacc49d78 Merge branch 'MDL-67088-master' of git://github.com/marinaglancy/moodle 2019-10-31 11:07:56 +08:00
Andrew Nicols d1529dc66d MDL-66247 accessibility: Correct notification alert role support 2019-10-31 07:29:58 +08:00
Eloy Lafuente (stronk7) 61bf77ff9a Merge branch 'MDL-67038_master' of git://github.com/dmonllao/moodle 2019-10-31 00:28:45 +01:00
Marina Glancy 02282f8c49 MDL-67088 mod_assign: compare time without case for MacOS compat 2019-10-30 19:23:38 +01:00
Eloy Lafuente (stronk7) 54b3ffa0f5 MDL-66074 mod_forum: fix SQL whitespace causing oracle to fail 2019-10-30 19:19:12 +01:00
Marina Glancy bcfa5e248c MDL-67087 cachestore_redis: fix warning in phpunit 2019-10-30 18:52:22 +01:00
Marina Glancy 943e3f04d5 MDL-67073 core_course: fix capability context 2019-10-30 18:36:03 +01:00
sam marshall 225eb7b27e MDL-66679 Forms: Submit button remains disabled after file download
When you download a file directly from a Moodle form submit button,
the submit button disables when you click it, but you remain on that
page so we need to re-enable the button.

This commit causes it to re-enable once the file download finishes,
setting a temporary cookie to indicate this to the JavaScript code.

It also adds a method to disable the system on a given form by
setting data-double-submit-protection="off".
2019-10-30 16:36:28 +00:00
Amaia Anabitarte acae15c710 MDL-66398 filter_displayh5p: Enabled by default. Fixing Unit tests 2019-10-30 12:14:27 +01:00
Amaia Anabitarte 6d2c5025b2 MDL-66398 filter_h5p: Improve H5P filter to allow internal file URLs 2019-10-30 12:14:27 +01:00
Eloy Lafuente (stronk7) 9554d68ddf Merge branch 'MDL-66593-master' of git://github.com/cescobedo/moodle 2019-10-30 11:19:40 +01:00
Sara Arjona 743462111f MDL-67076 core_h5p: Add preventredirect parameter to embed 2019-10-30 10:04:26 +01:00
Mihail Geshoski ab02687e30 MDL-67067 core_h5p: Fix coding style issues and undocumented functions 2019-10-30 15:22:40 +08:00
Mihail Geshoski b54ab19093 MDL-67067 core_h5p: Remove unused method in framework implementation 2019-10-30 15:22:25 +08:00
Mihail Geshoski abf6d1c395 MDL-67067 core_h5p: Load cached assets by default 2019-10-30 15:21:57 +08:00
Jake Dallimore f3b08d9994 Merge branch 'MDL-64254-master' of git://github.com/jleyva/moodle 2019-10-30 14:35:42 +08:00
cescobedo e24f4a2ecd MDL-66593 core_backup: Replace h5p/embed.php url for H5PEMBED@$ 2019-10-30 06:46:35 +01:00
Adrian Greeve 51cc5e1789 Merge branch 'MDL-66074-OCT28' of git://github.com/Chocolate-lightning/moodle_forum-project 2019-10-30 13:44:59 +08:00
Mathew May c38eb13585 MDL-66074 mod_forum: Forum grading GDPR provider 2019-10-30 13:03:59 +08:00
Mathew May a62c68fb5f MDL-66074 mod_forum: Mustache and PHP documentation for grading 2019-10-30 13:03:59 +08:00
Mathew May 61d508be0a MDL-66074 mod_forum: Add sorting in WS for discussion fetching 2019-10-30 13:03:59 +08:00
Mathew May a3a3a4f80c MDL-66074 mod_forum: Grader module documentation 2019-10-30 13:03:59 +08:00
Mathew May cc1a7689cd MDL-66074 mod_forum: Grader interface documentation 2019-10-30 13:03:59 +08:00
Mathew May 046ebd3ac3 MDL-66074 mod_forum: Grader documentation 2019-10-30 13:03:59 +08:00
Mathew May 4ab14bbb00 MDL-66074 mod_forum: Documentation and hiding conversation elements 2019-10-30 13:03:59 +08:00
Mathew May e0bc21946a MDL-66074 core_toast: Documentation 2019-10-30 13:03:59 +08:00
Mathew May 072ee7f750 MDL-66074 core_form: Foce point value to always be 100 2019-10-30 13:03:59 +08:00
Mathew May 9f1195fa66 MDL-66074 core_grade: Documentation 2019-10-30 13:03:59 +08:00
Mathew May 47919bbe78 MDL-66074 gradingform_rubric: Documentation and selectors 2019-10-30 13:03:59 +08:00
David Monllaó ef05f29267 MDL-67038 analytics: Remove null strings from the DB 2019-10-30 12:40:32 +08:00
Jun Pataleta 0a0dfc4475 Merge branch 'MDL-67054' of https://github.com/stronk7/moodle 2019-10-30 10:38:20 +08:00
Mathew May 9c2c79f5fb MDL-66074 gradingform_guide: Documentation and selectors 2019-10-30 10:23:41 +08:00
Mathew May dc0145b19e MDL-66074 core_course: Correct documentation 2019-10-30 10:23:41 +08:00
Mathew May eb9df053eb MDL-66697 gradingform_rubric: Support new grading panel
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols ce1c470167 MDL-66841 forum: Display grade update errors to user
Part of MDL-66074

This change modifies the return val for all of the grading functions to
allow them to add additional information.
This means that a grading service can suppress a Grade saved message if
there were no changes, for example.

This also adds a distinction between:
- Errored (Exception thrown in the WS call)
- Failed (Warning in the output of the WS call)
- Success (Grade actually saved)
- None of the above (No save, no fail, no change)
2019-10-30 10:23:41 +08:00
Mathew May 18dd283a0e MDL-66074 mod_forum: Implement spinner for user change 2019-10-30 10:23:41 +08:00
Mathew May 1d709d7678 MDL-66074 mod_forum: Relocate the grader button
Also adding capability checks to the button.
2019-10-30 10:23:41 +08:00
Andrew Nicols aa04b722f3 MDL-66074 mod_forum: Make initial user id optional 2019-10-30 10:23:41 +08:00
Andrew Nicols eaee64778b MDL-66845 mod_forum: Hook up save button
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols 45c0584c55 MDL-66845 mod_forum: Convert user picker to class
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols c72f5e33c5 MDL-66845 core: YUI Dialogues should have the same zIndex as bootstrap
Part of MDL-66074

This change allows YUI Modals to sit in the same space above the
fullscreen modal and other such elements.
2019-10-30 10:23:41 +08:00
Mathew May 3d58c1be3d MDL-66365 mod_forum: Add a modal to show a selected post in context
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols 77ee8778a8 MDL-66828 mod_forum: Display notification on grade save
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols 224ea04e68 MDL-66828 core: Add toast-style notifications
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols b253a4f21d MDL-66809 core_grades: Implement scale-based marking
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols 38f3bd93af MDL-66700 gradingform_guide: Support new grading panel
Part of MDL-66074
2019-10-30 10:23:41 +08:00
Andrew Nicols 57732a1c8e MDL-66700 theme: Add form inset capabiity
Part of MDL-66074

This allows a button to be insert into the left or right of a form
element.
2019-10-30 10:23:40 +08:00
Simey Lameze d3b890f85e MDL-66362 mod_forum: Add forum name to the grading panel breadcrumb
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols f281c61642 MDL-66722 mod_forum: Pull grader into UI
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 09f92d6644 MDL-66722 forum: Add the grading component information
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 9adedccd2b MDL-66722 core_grades: Add simple direct grading to gradingpanel
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols f8da1b9353 MDL-66722 forum: Add gradeitem storage handler
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 65903bd414 MDL-66722 grade: Add coverage files
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 94d5227916 MDL-66696 forum: Add forum_grades table
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 92b229c5f4 MDL-66079 mod_forum: Add forum grade support
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols dc86a0f1c6 MDL-66079 mod_forum: Add field to support whole forum grading
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 629726dd3f MDL-66079 assign: Switch to new gradeitem API
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols 1adda7ada6 MDL-66079 workshop: Switch to new gradeitem API
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Andrew Nicols fcc88fddba MDL-66079 core_grades: Add support for multiple grade items in an activity
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Mathew May bae674695f MDL-66077 mod_forum: Basic forum grader implementation
Part of MDL-66074
2019-10-30 10:23:40 +08:00
Mathew May 34e6dd2475 MDL-66078 mod_forum: Add webservice to pull discussion data for user
Part of MDL-66074
2019-10-30 10:23:40 +08:00
AMOS bot 5b9b24dfee Automatically generated installer lang files 2019-10-30 00:10:46 +00:00
Eloy Lafuente (stronk7) 25676441b3 MDL-67054 upgrade: prevent potential PHP notice
In some sites $CFG->requestcategoryselection may be not defined.

So this just wraps the use within empty, keeping the spirit intact,
aka, invert whatever the precious setting was storing.

null, 0, false, '0' => 1
1, true, '1' => 0
2019-10-29 23:27:26 +01:00
Eloy Lafuente (stronk7) d7699706da on-demand release 3.8dev+ 2019-10-29 21:03:47 +01:00
Eloy Lafuente (stronk7) 9eebe2c0bd NOBUG: Fixed file access permissions 2019-10-29 21:03:47 +01:00
Eloy Lafuente (stronk7) 229ce2a754 NOBUG: Fixed SVG browser compatibility 2019-10-29 21:03:41 +01:00
Eloy Lafuente (stronk7) 2474ed002c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-29 21:03:40 +01:00
Juan Leyva 0a063e6dea MDL-64254 mod_forum: New WS mod_forum_update_discussion_post 2019-10-29 13:52:07 +01:00
Juan Leyva 131bfaa8cd MDL-64254 mod_forum: New WS mod_forum_prepare_draft_area_for_post 2019-10-29 12:13:23 +01:00
Juan Leyva 9a023ef3b4 MDL-64254 mod_forum: New WS mod_forum_get_discussion_post 2019-10-29 12:13:20 +01:00
Jake Dallimore 82ed166c1f Merge branch 'MDL-66945' of git://github.com/stronk7/moodle 2019-10-29 14:55:43 +08:00
Jake Dallimore 72a5ab2130 Merge branch 'MDL-66965' of https://github.com/stronk7/moodle 2019-10-29 14:13:00 +08:00
Andrew Nicols b57c47ce2e MDL-66609 core_h5p: Trailing whitespace fix 2019-10-29 11:27:44 +08:00
Andrew Nicols 884670687f MDL-66609 core_h5p: Whitespacep fix 2019-10-29 11:23:07 +08:00
Andrew Nicols 6850374bf5 MDL-66609 core: Version bump for h5p 2019-10-29 10:45:55 +08:00
Andrew Nicols 08460f270f Merge branch 'MDL-66609-master' of git://github.com/andrewnicols/moodle 2019-10-29 10:44:31 +08:00
Sara Arjona 8fda136dc8 MDL-66609 core_h5p: Add capability to deploy H5P content 2019-10-29 10:22:44 +08:00
Amaia Anabitarte a3cdaa8dd9 MDL-66609 core_h5p: Autoload for H5P third party library classes 2019-10-29 10:22:44 +08:00
Mihail Geshoski df74cd4aea MDL-66609 core_h5p: Use factory methods instead of framework::instance() 2019-10-29 10:22:44 +08:00
Sara Arjona 5da7a7fc31 MDL-66609 core_h5p: Change core files when upgrading lib
This commit contains the changes required when upgrading the H5P
PHP library.
2019-10-29 10:22:44 +08:00
Sara Arjona 6415316646 MDL-66609 core_h5p: Upgrade H5P library to 1.24 2019-10-29 10:22:43 +08:00
Sara Arjona 810d7a3d2e MDL-66609: core_h5p: Add <component>_get_path_from_pluginfile method
This method has been added to all the components having some exceptions
with the way they treat the itemid in the pluginfile paths.
2019-10-29 10:22:43 +08:00
Andrew Nicols 9e67f5e366 MDL-66609 core_h5p: Make use of upstream change for getting itemid 2019-10-29 10:22:43 +08:00
Andrew Nicols 6faafc0c8e MDL-66609 core_h5p: Add getDependencyPath to H5P library 2019-10-29 10:22:43 +08:00
Amaia Anabitarte e96569cc1e MDL-66609 core_h5p: Unit test coverage 2019-10-29 10:22:43 +08:00
Sara Arjona f41a75f6f0 MDL-66609 core_h5p: Update the h5p-resizer.js in the filter 2019-10-29 10:22:43 +08:00
Sara Arjona 01923a07aa MDL-66609 core_h5p: Add new strings 2019-10-29 10:22:43 +08:00
Sara Arjona 35221a2e15 MDL-66609 core_h5p: Add some H5P styles to themes 2019-10-29 10:22:43 +08:00
Sara Arjona 360755cc56 MDL-66609 core_h5p: New capability h5p:setdisplayoptions 2019-10-29 10:22:43 +08:00
Sara Arjona 60bd7a8021 MDL-66609 core_h5p: Update phpunit.xml.dist 2019-10-29 10:22:43 +08:00
Sara Arjona b6fb5f0362 MDL-66609 core_h5p: Update the h5p-resizer.js reference in Atto 2019-10-29 10:22:43 +08:00
Mihail Geshoski 27fa4ba3d4 MDL-66609 core_h5p: Unit test framework interface implementation 2019-10-29 10:22:43 +08:00
Mihail Geshoski 09d8143d84 MDL-66609 core_h5p: Framework interface implementation 2019-10-29 10:22:43 +08:00
Sara Arjona 35b62d00b8 MDL-66609 core_h5p: Player and embed.php implementation 2019-10-29 10:22:43 +08:00
Adrian Greeve 9ea303e773 MDL-66609 core_h5p: Unit tests for file_storage. 2019-10-29 10:22:43 +08:00
Adrian Greeve e55cc513f4 MDL-66609 core_h5p: Implement the file_storage interface. 2019-10-29 10:22:43 +08:00
Amaia Anabitarte bb4f59f80f MDL-66609 core_h5p: Creating new H5P tables 2019-10-29 10:22:43 +08:00
Amaia Anabitarte 45899564b3 MDL-66609 core_h5p: New core_h5p subsystem
New H5P libraries have been added to Moodle core_h5p in /lib/h5p.
2019-10-29 10:22:43 +08:00
Andrew Nicols 501c568e3e Merge branch 'MDL-67027' of https://github.com/paulholden/moodle 2019-10-29 08:43:12 +08:00
Eloy Lafuente (stronk7) 7ddf5ab75e Merge branch 'MDL-66982_master' of https://github.com/nadavkav/moodle 2019-10-28 20:12:20 +01:00
Eloy Lafuente (stronk7) 32b625b6de Merge branch 'MDL-66956' of https://github.com/timhunt/moodle 2019-10-28 19:41:58 +01:00
Eloy Lafuente (stronk7) 9cc98e2af1 Merge branch 'MDL-66989-master' of git://github.com/mihailges/moodle 2019-10-28 19:34:56 +01:00
Andrew Nicols 7e50ca7645 MDL-66945 composer: Update behat extension
(using php71 for this branch)

This uses a new version of the moodlehq-behat-extension which ensures
that a node is visible and in the view port before it is clicked on.

This resolves an issue with Firefox on Ubuntu 18.04 whereby the node is
only brought into the viewport instead of clicked on.
2019-10-28 13:14:27 +01:00
Andrew Nicols 5123b5c9d7 MDL-66722 forum: Add grade capability
Part of MDL-66074
2019-10-28 13:55:50 +08:00
Andrew Nicols 1e8184f022 MDL-66370 mod_forum: Make a full screen layout
Part of MDL-66074
2019-10-28 13:55:13 +08:00
Mathew May 06e50afd5e MDL-66077 course: Add WS to get list of users in a cmid
Part of MDL-66074
2019-10-28 13:55:12 +08:00
Andrew Nicols af9ca2a658 MDL-66077 core: Loadingicon needs jQuery nodes
Part of MDL-66074
2019-10-28 13:55:12 +08:00
Andrew Nicols 373d43aef1 MDL-66074 core: Add a renderForPromise function
Promises only take a single argument so this makes it easier to chain
promises and use them with await.
2019-10-28 13:55:12 +08:00
Jun Pataleta 46f1284768 Merge branch 'm38_MDL-65811_Fix_Incorrect_ORDER_BY_Search' of https://github.com/scara/moodle 2019-10-28 11:37:27 +08:00
AMOS bot 1a96f38ad0 Automatically generated installer lang files 2019-10-28 00:09:09 +00:00
AMOS bot 4cd736ceec Automatically generated installer lang files 2019-10-27 00:09:06 +00:00
Matteo Scaramuccia aa0a602b10 MDL-65811 database: Fix subsetting in MSSQL 2019-10-25 23:00:32 +02:00
Paul Holden c0c9cf32f2 MDL-67027 calendar: fix event update form validation. 2019-10-25 17:30:47 +01:00
Eloy Lafuente (stronk7) 88d29a1bb8 MDL-66965 core: php74 curly 2 square braces changes
Note this only modified core files, still there are a lot
of curly brace uses but all them are within 3rd part
libraries and will be handled apart.
2019-10-25 17:41:10 +02:00
Eloy Lafuente (stronk7) 50a1d9372f on-demand release 3.8dev+ 2019-10-25 15:30:04 +02:00
Eloy Lafuente (stronk7) 5306a066d0 NOBUG: Fixed SVG browser compatibility 2019-10-25 15:30:02 +02:00
Eloy Lafuente (stronk7) db105a5fe6 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-25 15:30:01 +02:00
Mihail Geshoski 8cc2a8c780 MDL-66989 tool_uploaduser: Fix incorrect 'More help' link in help popup 2019-10-25 11:49:03 +08:00
Jake Dallimore 6cc1190638 Merge branch 'master_MDL-66973' of https://github.com/golenkovm/moodle 2019-10-25 11:09:49 +08:00
Jun Pataleta c23313f6e8 Merge branch 'MDL-66968' of https://github.com/stronk7/moodle 2019-10-25 10:20:05 +08:00
Adrian Greeve 7067db2847 Merge branch 'MDL-62485' of https://github.com/willianmano/moodle 2019-10-25 09:32:22 +08:00
Adrian Greeve b3e6241737 Merge branch 'MDL-65017-master-fix' of git://github.com/junpataleta/moodle 2019-10-25 08:58:48 +08:00
Jun Pataleta acdce3a0e4 MDL-65017 mod_forum: Test based on event type and not objectid
* Plus fix warning about \test_capability_manager::can_delete_post()
2019-10-25 08:39:32 +08:00
Jake Dallimore c5d333efe8 Merge branch 'MDL-66493-readstring_accel' of https://github.com/brendanheywood/moodle 2019-10-25 08:25:41 +08:00
Eloy Lafuente (stronk7) f4feabb83f MDL-66968 php74: array_key_exists() for objects is deprecated
Replace it for correct property_exists() when the element
being inspected is a property of object/class.

Amended and squased changes:
- keep mongo unmodified. The information is array, hence correct.
- fix a couple of messaging phpdocs that were incorrect.

Amended take#2:
- As far as mongo resturns BSONDocument that is ArrayObject, aka
implements ArrayAccess, we have decided to explicitly cast results
to array so existing array_key_exists() and other accesses will
continue working the same.
2019-10-25 00:49:04 +02:00
Willian Mano 7a27c90102 MDL-62485 enrol: Success message after enroll/unenroll user in a course 2019-10-24 13:43:27 -03:00
Jun Pataleta 9f1af3771d Merge branch 'MDL-66543-master' of git://github.com/tobiasreischmann/moodle 2019-10-24 23:08:43 +08:00
Tobias Reischmann 556c4f3309 MDL-66543 forms: Make (hard) frozen textareas readonly (or disabled) 2019-10-24 13:44:15 +02:00
Brendan Heywood d6f5fbb720 MDL-66493 filelib: readstring_accel should never use xsendfile 2019-10-24 21:30:46 +11:00
Eloy Lafuente (stronk7) 2ffdd72618 Merge branch 'MDL-66935-lock-clashes' of https://github.com/brendanheywood/moodle 2019-10-24 09:59:19 +02:00
Adrian Greeve 4c4413922f Merge branch 'MDL-66876-master' of git://github.com/jleyva/moodle 2019-10-24 15:14:45 +08:00
Adrian Greeve e1aebcfdd8 Merge branch 'MDL-65017-master' of git://github.com/jleyva/moodle 2019-10-24 13:53:01 +08:00
Jun Pataleta ff7cf74d6d Merge branch 'MDL-66927-run-new-adhoc' of https://github.com/brendanheywood/moodle 2019-10-24 13:45:27 +08:00
Brendan Heywood 7e086935e3 MDL-66935 core_lock: Fix resource key clashes in db and postgres locks 2019-10-24 15:04:56 +11:00
Jun Pataleta 68a65b0039 Merge branch 'MDL-65896-int-fix-1' of https://github.com/ryanwyllie/moodle 2019-10-24 12:00:45 +08:00
Ryan Wyllie 7b8d852929 MDL-65896 core: more IE11 fixes for emoji picker 2019-10-24 10:41:52 +08:00
Jake Dallimore ebca610a44 Merge branch 'MDL-65400-master' of git://github.com/jleyva/moodle 2019-10-24 09:28:31 +08:00
AMOS bot bf36f7defb Automatically generated installer lang files 2019-10-24 00:09:17 +00:00
Eloy Lafuente (stronk7) e0ad4189a5 Merge branch 'MDL-64298-master' of git://github.com/jleyva/moodle 2019-10-23 22:21:39 +02:00
Eloy Lafuente (stronk7) aedd166c67 Merge branch 'MDL-67001-master' of https://github.com/lucaboesch/moodle 2019-10-23 22:16:22 +02:00
Eloy Lafuente (stronk7) 2a724095bd Merge branch 'MDL-67004-master' of git://github.com/dpalou/moodle 2019-10-23 19:50:38 +02:00
Eloy Lafuente (stronk7) d020e1b779 Merge branch 'MDL-65349-profile-match-greedy' of https://github.com/brendanheywood/moodle 2019-10-23 18:35:46 +02:00
Juan Leyva 016cffb936 MDL-64298 gradereport_user: Fix WS returned parameter description
feedbackformat must be optional always
2019-10-23 17:56:09 +02:00
Sara Arjona 8321ecbfcd Merge branch 'master_MDL-66225_async_backup_state' of https://github.com/mattporritt/moodle 2019-10-23 17:39:10 +02:00
Juan Leyva e613b1ff43 MDL-66876 core_filter: Fix context in Web Service warning 2019-10-23 17:06:56 +02:00
Juan Leyva bc72a54cb1 MDL-65400 block: Support returning settings for core blocks 2019-10-23 15:33:56 +02:00
Juan Leyva c9acdfb6dc MDL-65400 block: Support getting block settings via WS 2019-10-23 15:33:56 +02:00
Dani Palou 187b11f40d MDL-67004 enrol: Include core_enrol_search_users in the mobile service 2019-10-23 12:59:34 +02:00
Sara Arjona 344bb67df3 Merge branch 'MDL-66676_master' of https://github.com/nadavkav/moodle 2019-10-23 12:07:24 +02:00
Luca Bösch f68616d750 MDL-67001 question: alignment and form spaces. 2019-10-23 10:59:24 +02:00
Ryan Wyllie 628b4ca262 MDL-65896 core: fix emoji picker IE11 support 2019-10-23 15:25:27 +08:00
Jun Pataleta b9b10b900d MDL-65896 admin: Fix checking for full unicode support
Instead of checking whether the charset is set to 'utf8' when
determining full unicode support, it should be checking whether the
charset is set to 'utf8mb4'.
2019-10-23 15:25:27 +08:00
Jun Pataleta b412069977 Merge branch 'MDL-66971-master' of git://github.com/peterRd/moodle 2019-10-23 14:55:46 +08:00
Matt Porritt 698222f6cb MDL-66225 Backup: fix irrecoverable state
Fix condition where if an asynchronous backup
completes via the UI and the user refreshes the
page a new backup was created with a mismatched
backup id.
This caused a permanently failing ad-hoc task
and blocked further backups for that course.
2019-10-23 04:20:00 +00:00
Jun Pataleta b6fcec009e Merge branch 'MDL-65896-master' of https://github.com/ryanwyllie/moodle 2019-10-23 11:13:27 +08:00
Adrian Greeve 3a8b78b19f Merge branch 'MDL-63125' of https://github.com/paulholden/moodle 2019-10-23 11:00:40 +08:00
Ryan Wyllie e0d798477a MDL-65896 core: add emoji data to thirdpartylibs 2019-10-23 10:59:59 +08:00
Ryan Wyllie 4060fcc662 MDL-65896 admin: add admin setting to show emoji picker
Added an admin setting to show/hide the emoji picker in messaging
because some versions of MySQL don't have full unicode support so
emojis won't save in the dabase.

If we detect that the site is running an unsupported version of MySQL
then the setting can not be enabled. Instead the admin will see a
message explaining that they will need to upgrade their database
before they can enable the emoji picker.
2019-10-23 10:59:59 +08:00
Ryan Wyllie 9f536ec696 MDL-65896 message: add emoji auto complete to message app 2019-10-23 10:59:59 +08:00
Ryan Wyllie 75962db917 MDL-65896 core: create emoji auto complete 2019-10-23 10:59:59 +08:00
Ryan Wyllie 8f80d18766 MDL-65896 message: add emoji picker to message app 2019-10-23 10:59:58 +08:00
Ryan Wyllie db65ba4564 MDL-65896 core: create emoji picker 2019-10-23 10:59:58 +08:00
Brendan Heywood 60dc024201 MDL-65349 xhprof: Removed greedy matching from wildcard parsing 2019-10-23 11:08:27 +11:00
Nadav Kavalerchik 96964edf0b MDL-66982 media_videojs: Fix RTL display issues (progress bar) 2019-10-23 01:34:24 +03:00
Sara Arjona 9f997f9bd7 on-demand release 3.8dev+ 2019-10-22 14:49:05 +02:00
Sara Arjona c6a11a31cf NOBUG: Fixed SVG browser compatibility 2019-10-22 14:49:03 +02:00
Sara Arjona 631aaad19f Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-22 14:49:03 +02:00
Jake Dallimore 6de90c84f4 Merge branch 'MDL-64739_master-fix' of git://github.com/dmonllao/moodle 2019-10-22 11:13:43 +08:00
David Monllaó 5da60daa1a MDL-64739 analytics: No need for a fully set model on edit 2019-10-22 10:48:29 +08:00
Brendan Heywood 319577dbbb MDL-66984 auth: Allow $USER to be used in change_password_url 2019-10-22 13:39:25 +11:00
Peter 0320040469 MDL-66971 core: Update the convenience date grade getter to allow nulls 2019-10-22 10:30:17 +08:00
Paul Holden d25223a5c4 MDL-63125 forms: Behat test for form autocomplete element. 2019-10-21 23:24:30 +01:00
Eloy Lafuente (stronk7) a188424bb4 Merge branch 'MDL-66970_master' of git://github.com/dmonllao/moodle 2019-10-21 23:59:18 +02:00
Eloy Lafuente (stronk7) 4019ae73f9 MDL-66954 filter_displayh5p: add it to the list of standard plugins 2019-10-21 23:34:19 +02:00
Eloy Lafuente (stronk7) be3d6c3f5f Merge branch 'MDL-66954-master' of git://github.com/aanabit/moodle 2019-10-21 23:31:37 +02:00
David Monllaó b4bb8688a5 MDL-66970 analytics: Extra testing for active enrolments
I sneaked in an unrelated change to enrol-partly-active-ends-afterwards
test case as the endtime and enrolment timestart values were swapped.
The case when the enrolment start is after the analysis end is already
tested in enrol-after-end test case.
2019-10-22 05:13:26 +08:00
David Monllaó b00d35a6fc MDL-66970 analytics: Fix incorrect use of ?? 2019-10-22 05:13:26 +08:00
Nadav Kavalerchik 22ae1807a5 MDL-66676 theme/boost: Fix form select element icon in RTL mode 2019-10-21 21:34:05 +03:00
Eloy Lafuente (stronk7) 3c75bfa457 Merge branch 'MDL-66980' of https://github.com/timhunt/moodle 2019-10-21 20:26:34 +02:00
Sara Arjona f3281837b8 Merge branch 'MDL-61121-master-5' of git://github.com/mihailges/moodle 2019-10-21 14:46:17 +02:00
Eloy Lafuente (stronk7) 7ba9c635c5 Merge branch 'MDL-64739_master' of git://github.com/dmonllao/moodle 2019-10-21 13:31:12 +02:00
Juan Leyva 56444a606c MDL-65017 forum: New WS mod_forum_delete_post 2019-10-21 13:09:56 +02:00
Juan Leyva b12dbcd4d5 MDL-65017 forum: Initial API refactor 2019-10-21 13:09:56 +02:00
Sara Arjona 78ee7b9a65 Merge branch 'MDL-66631-master-test' of git://github.com/rezaies/moodle 2019-10-21 12:18:19 +02:00
Tim Hunt 471c39b361 MDL-66980 question bank: fix load_many_for_cache missing record check 2019-10-21 11:18:12 +01:00
Eloy Lafuente (stronk7) 6b0374e510 Merge branch 'MDL-65774-master2' of git://github.com/peterRd/moodle 2019-10-21 10:48:12 +02:00
Eloy Lafuente (stronk7) 325a451018 Merge branch 'MDL-66808-master' of git://github.com/rezaies/moodle 2019-10-21 10:32:23 +02:00
Jun Pataleta 7769168f38 Merge branch 'MDL-66912-master' of https://github.com/snake/moodle 2019-10-21 16:26:28 +08:00
Jun Pataleta a5b431455a Merge branch 'MDL-66009-master' of https://github.com/grabs/moodle 2019-10-21 16:15:20 +08:00
Jake Dallimore c3f726a0e5 Merge branch 'MDL-66612-master' of git://github.com/crazyserver/moodle 2019-10-21 16:06:50 +08:00
Jake Dallimore d501428ff8 Merge branch 'MDL-66915-master' of https://github.com/MartinGauk/moodle 2019-10-21 15:54:12 +08:00
David Monllaó 06579b18cc MDL-64739 analytics: Contexts autocomplete with ajax 2019-10-21 15:33:29 +08:00
Pau Ferrer Ocaña 375d82cafc MDL-66612 calendar: Change global events to site events
AMOS BEGIN
 CPY [category,moodle],[category,calendar]
 CPY [site,notes],[eventtypesite,calendar]
 CPY [site,moodle],[site,calendar]
 MOV [typesite,moodle],[siteevent,calendar]
AMOS END
2019-10-21 09:33:01 +02:00
Mikhail Golenkov 17fed0d1cc MDL-66973 search: Reset Content writer after test. 2019-10-21 17:55:30 +11:00
Andrew Nicols 80cb0f6a1f Merge branch 'MDL-66962-master' of https://github.com/lucaboesch/moodle 2019-10-21 14:22:57 +08:00
Luca Bösch 19b1afd146 MDL-66962 questions: Question bank table T title non breaking. 2019-10-21 08:16:05 +02:00
Andrew Nicols 8edb6d15f1 Merge branch 'MDL-66944_master' of https://github.com/t-schroeder/moodle 2019-10-21 13:47:42 +08:00
Andrew Nicols 532b240244 Merge branch 'MDL-66946' of https://github.com/timhunt/moodle 2019-10-21 12:54:06 +08:00
Jake Dallimore d2982a1c11 Merge branch 'MDL-66930-master' of https://github.com/lucaboesch/moodle 2019-10-21 11:55:00 +08:00
Jake Dallimore 95852a343d Merge branch 'MDL-66960-master' of https://github.com/lucaboesch/moodle 2019-10-21 10:41:10 +08:00
David Monllaó 76b5ee4545 MDL-64739 tool_analytics: Restrict models to specific contexts 2019-10-21 09:54:39 +08:00
Mitxel Moriana c345aa721c MDL-64739 core_analytics: New db field for model contexts 2019-10-21 09:54:39 +08:00
David Monllaó 86a092b61d MDL-64739 tool_analytics: Remove filter option from evaluate CLI script
It can be considered that we replaced it with the new contexts field.
2019-10-21 09:54:39 +08:00
David Monllaó c22fb4bd4b MDL-64739 core_analytics: Contexts param for get_analysables_iterator 2019-10-21 09:54:34 +08:00
Jake Dallimore d76c433b3d Merge branch 'MDL-66816' of https://github.com/timhunt/moodle 2019-10-21 09:36:19 +08:00
AMOS bot ae5ee23622 Automatically generated installer lang files 2019-10-19 00:09:08 +00:00
Tim Hunt 4d32558974 MDL-66946 quiz reports: incorrectly show teachers sometimes 2019-10-18 17:37:49 +01:00
Luca Bösch 55c75f91e9 MDL-66960 questions: Top align all question bank titles exc "select all" 2019-10-18 16:32:43 +02:00
Amaia Anabitarte 826e76edc9 MDL-66954 filter_displayh5p: Rename filter_h5p to filter_displayh5p
We are renaming existing h5p_filter in 3.8dev to h5p_displayh5p to avoid collisions with filter_h5p plugin
in Moodle plugin directory.
Everybody having a 3.8dev installation with filter_h5p plugin should drop the old filter or re-install from scratch.
2019-10-18 15:35:15 +02:00
Tim Hunt c11c88928e MDL-66956 question bank: move edit menu to improve usability 2019-10-18 14:27:51 +01:00
Tim Hunt 701ae1eb4b MDL-66816 question bank: replace row of edit icons with an Edit menu 2019-10-18 14:27:50 +01:00
Sara Arjona 5d657c410b MDL-65774 mod_assign: Update FPDI class to inherit pdf 2019-10-18 20:34:23 +08:00
Luca Bösch 87174e0a92 MDL-66930 quiz: Question type icon size/alignment in Boost and Classic. 2019-10-18 13:54:29 +02:00
Eloy Lafuente (stronk7) aaff6692a1 on-demand release 3.8dev+ 2019-10-18 10:31:55 +02:00
Mihail Geshoski 6ddcb2122c MDL-61121 assign: Declare variables in the local scope 2019-10-18 13:57:56 +08:00
Mihail Geshoski 70b10bcd8c MDL-61121 assign: Improve accessibility in quick grading page tables 2019-10-18 13:57:56 +08:00
Mihail Geshoski d53a80d5e9 MDL-61121 assign: Improve accessibility - view full/view summary control 2019-10-18 13:57:56 +08:00
Andrew Nicols 2265397db6 Merge branch 'MDL-66767' of https://github.com/Chocolate-lightning/moodle_forum-project 2019-10-18 12:37:50 +08:00
Michael Hawkins a575ab1516 MDL-66767 forumreport_summary: Improved groups only SQL 2019-10-18 12:35:53 +08:00
Michael Hawkins 2970b8fa2e MDL-66767 forumreport_summary: Control groups filter content
Control the groups filter options based on forum groups mode and groups
visible to the user viewing the report.
2019-10-18 12:23:49 +08:00
Michael Hawkins 5e43937c7f MDL-66767 forumreport_summary: Updated groups filter to apply to data
Previously, the groups filter was only filtering by user, it now
filters the data by group, as well as limiting the users displayed
to those with access to the relevant combination.
2019-10-18 12:23:49 +08:00
Adrian Greeve 6d98de3fc1 Merge branch 'MDL-66740-master' of git://github.com/marinaglancy/moodle 2019-10-18 11:06:55 +08:00
Simey Lameze 8074b23f56 MDL-66631 mod_forum: unit tests for date filters 2019-10-18 12:37:58 +11:00
Simey Lameze 77c01b42c6 MDL-66631 mod_forum: unit tests refactoring 2019-10-18 12:37:58 +11:00
Simey Lameze 6e23f294b8 MDL-66631 mod_forum: make get_from_discussion_ids use new fn 2019-10-18 12:37:58 +11:00
Simey Lameze 718d7a43b9 MDL-66631 mod_forum: add date filters to export 2019-10-18 12:37:58 +11:00
Jun Pataleta 95946a3294 Merge branch 'MDL-66806_master' of git://github.com/dmonllao/moodle 2019-10-18 09:36:51 +08:00
Andrew Nicols b9da7233a1 Merge branch 'MDL-66919' of https://github.com/stronk7/moodle 2019-10-18 08:26:38 +08:00
Eloy Lafuente (stronk7) e0fa8a5140 Merge branch 'mdl-66173' of https://github.com/Peterburnett/moodle 2019-10-18 01:49:31 +02:00
Jun Pataleta 36a8ae571a Merge branch 'MDL-66625-master' of git://github.com/rezaies/moodle 2019-10-18 06:39:01 +08:00
Jun Pataleta 52f1b2ebfa Merge branch 'MDL-56549-master' of https://github.com/kabalin/moodle 2019-10-18 06:27:21 +08:00
Ruslan Kabalin d5d3c27ad1 MDL-56549 test: Add tests covering core_media_player_native 2019-10-17 22:15:48 +01:00
Ruslan Kabalin 5bc03f13db MDL-56549 medialib_test: Move fixture to dedicated subdir. 2019-10-17 22:15:48 +01:00
Ruslan Kabalin 12ce73a1a2 MDL-56549 media_html5video: Add test for native extensions support.
This is to verify that all files of html_video mime type extensions are
passing list_supported_urls method correctly.
2019-10-17 22:15:47 +01:00
Ruslan Kabalin 4d8b88fd63 MDL-56549 media_html5audio: Add test for native extensions support.
This is to verify that all files of html_audio mime type extensions are
passing list_supported_urls method correctly.
2019-10-17 22:15:47 +01:00
Ruslan Kabalin 043ba1b221 MDL-56549 lib: Add flac audio extension to html5 support list.
This is now supported by most browsers:
https://en.wikipedia.org/wiki/HTML5_audio
https://caniuse.com/#feat=flac
2019-10-17 22:15:46 +01:00
Eloy Lafuente (stronk7) 7d21639465 Merge branch 'MDL-64064' of https://github.com/NeillM/moodle 2019-10-17 23:08:58 +02:00
Shamim Rezaie f54cb5a708 MDL-66625 forumreport_summary: Adding behat 2019-10-18 05:46:39 +11:00
Tim Schroeder d9d041e867 MDL-66944 course: fixed copy-paste-error in comment 2019-10-17 18:15:08 +02:00
Jun Pataleta 8b2b47f733 Merge branch 'MDL-66694-master' of git://github.com/junpataleta/moodle 2019-10-17 22:48:16 +08:00
Jun Pataleta 10cc5e8100 MDL-66694 mod_forum: Fix unit test
* Set $forum1's displaywordcount to true in
  test_mod_forum_get_discussion_posts() so that the word and char counts
  will be returned.
* Use count_words() and count_letters() instead of hard coding the
  expected values for the word and char counts.
2019-10-17 22:39:36 +08:00
Michael Hawkins 97aeba56ba MDL-66694 mod_forum: Refactored post counts scheduled task 2019-10-17 17:07:05 +08:00
Pau Ferrer Ocaña e75b4e41b1 MDL-66612 calendar: Fix calendar icons 2019-10-17 10:34:34 +02:00
Michael Hawkins d21d6baac6 MDL-66694 mod_forum: Word/char count tidy ups & add task config option
The chunk size used by the existing post word/char count calculation
ad-hoc task can now be set as a $CFG parameter. Also improved the way
the ad-hoc task is re-queued and tidied up some redundant code.
2019-10-17 16:13:23 +08:00
Andreas Grabs ea100476d7 MDL-66009 mod_feedback: Nested dependency fails again 2019-10-17 09:19:55 +02:00
Michael Hawkins 3c36cdb150 MDL-66694 mod_forum: Updated adhoc task to requeue until completion
The adhoc task run during upgrade will now be requeued until no more
word/char counts require updating. Previously it was only run once,
so only the first 5000 posts would be updated.
2019-10-17 15:05:57 +08:00
David Monllaó 7d8f604b3c MDL-66694 mod_forum: Upgrade forum post word and char counts 2019-10-17 15:05:57 +08:00
Michael Hawkins 3eb0a82fef MDL-66694 mod_forum: Word & char count update consistency fixes
Charcount logic is now consistent with wordcount in the post exporter.
Counts update now called in forum_udpate_instance since it is updating
the data.
2019-10-17 15:05:57 +08:00
David Monllaó 591dd68790 MDL-66694 mod_forum: Update word & char counts on db save 2019-10-17 15:05:57 +08:00
Michael Hawkins 68f2d677ae MDL-66694 forumreport_summary: String update and method tidy up
Replaced 'Char' with full word 'Character' in the charcount string.
Also tidied up show_word_char_counts code and set to protected instead
of private.
2019-10-17 15:05:57 +08:00
David Monllaó 74f94dfc26 MDL-66694 mod_forum: Word count and char count columns 2019-10-17 15:05:57 +08:00
Ryan Wyllie a81651afa1 MDL-65896 javascript: add throttle and debounce util functions 2019-10-17 13:51:05 +08:00
Andrew Nicols bcce0270fe MDL-66496 mod_data: Fixes during integration 2019-10-17 12:20:54 +08:00
Andrew Nicols a7139f7600 Merge branch 'MDL-66496-master' of git://github.com/tobiasreischmann/moodle 2019-10-17 11:05:34 +08:00
Shamim Rezaie bfe6cfc9ab MDL-66808 mod_forum: set the format col to FORMAT_PLAIN when it is plain 2019-10-17 13:21:05 +11:00
Shamim Rezaie c98f448866 MDL-66808 mod_forum: Added export options 2019-10-17 12:47:11 +11:00
Brendan Heywood 4e7dcd01a8 MDL-66927 cron: Process new adhoc tasks immediately 2019-10-16 20:25:02 +11:00
[Peter Burnett] dc25b71d8b MDL-66173 login: Added form injection, validation and post action hooks 2019-10-16 15:01:56 +10:00
Shamim Rezaie 354cbf48b8 MDL-66625 forumreport_summary: Handling private replies 2019-10-16 12:00:51 +11:00
Jake Dallimore 7591d8c498 Merge branch 'MDL-66020-master' of git://github.com/marinaglancy/moodle 2019-10-16 08:37:07 +08:00
Eloy Lafuente (stronk7) d1729ce196 Merge branch 'MDL-66790-master' of git://github.com/junpataleta/moodle 2019-10-16 00:55:48 +02:00
Eloy Lafuente (stronk7) ab74c7ad56 Merge branch 'MDL-66705-master' of git://github.com/abgreeve/moodle 2019-10-16 00:52:52 +02:00
Eloy Lafuente (stronk7) f8038edd3a MDL-66919 behat: fix typo in error message
Also fix a couple of phpdocs that were incorrect.
2019-10-16 00:48:35 +02:00
Eloy Lafuente (stronk7) c77052fb2b on-demand release 3.8dev+ 2019-10-15 23:01:00 +02:00
Eloy Lafuente (stronk7) df089ac562 NOBUG: Fixed SVG browser compatibility 2019-10-15 23:00:54 +02:00
Martin Gauk 8d5b7fc6cd MDL-66915 assign: Notify only if grade was updated in past 24 hours
Send notifications only if a grade was updated in the past 24 hours,
whether marking workflow is enabled or not.
2019-10-15 17:06:03 +02:00
Eloy Lafuente (stronk7) e7fad4ac6a Merge branch 'MDL-66553-master-fix' of git://github.com/junpataleta/moodle 2019-10-15 16:42:15 +02:00
Jun Pataleta 0aa17f2631 MDL-66553 question: Behat fixes
1. Fix sortable key for the qname/idnumber/tags column
2. Fix the default sort
3. Fix Behat test for sorting by idnumber. Added ID numbers for both
question A and question C in order for us to get consistent sorting
across DBs.
2019-10-15 20:22:12 +08:00
Jun Pataleta 80d7651534 MDL-66790 quizreport: Prevent sorting for checkbox column 2019-10-15 17:25:16 +08:00
Jake Dallimore 3f7382aa73 MDL-66912 core_message: improve media matching js for content previews
Rather than matching 'src' string, use a dummy node and check for a src
attribute.
2019-10-15 14:37:51 +08:00
Jun Pataleta c2e4e6d588 Merge branch 'MDL-66226-master-2' of https://github.com/snake/moodle 2019-10-15 11:56:05 +08:00
Adrian Greeve 56ad15fc06 MDL-66705 tool_uploaduser: Add an example csv file. 2019-10-15 10:56:29 +08:00
Jake Dallimore 164e879156 Merge branch 'MDL-66796' of git://github.com/timhunt/moodle 2019-10-15 10:52:45 +08:00
Jun Pataleta d75eb57daa Merge branch 'MDL-66821' of https://github.com/timhunt/moodle 2019-10-15 07:35:36 +08:00
Andrew Nicols f124a49259 Merge branch 'MDL-66335' of https://github.com/stronk7/moodle 2019-10-15 07:21:52 +08:00
Eloy Lafuente (stronk7) c461c96d25 MDL-66335 behat: Avoid double processing the page type
resolve_page_instance_helper() already processes the type, returning
the correct context that should be processing the navigation URL.

With that extra call to parse_page_name() the 2nd call always returns
"core", ultimately leading to tons of behat failures because "core" is
not aware of those (plugin, quiz for now) pages typology.
2019-10-14 23:52:28 +02:00
Eloy Lafuente (stronk7) 82d71a5c83 Merge branch 'MDL-66335' of https://github.com/timhunt/moodle 2019-10-14 18:53:44 +02:00
Paul Holden 9cbeaec26f MDL-63125 forms: allow item removal from single-select autocomplete. 2019-10-14 17:07:59 +01:00
Eloy Lafuente (stronk7) 1b8a7f86d5 Merge branch 'MDL-66559-master' of git://github.com/andrewnicols/moodle 2019-10-14 16:33:46 +02:00
Tim Hunt 468d7ead0a MDL-66796 question bank: fix more bugs with category editing 2019-10-14 15:29:53 +01:00
Tim Hunt 9c4f0fa746 MDL-66796 question bank: 0 is a valid question category idnumber 2019-10-14 14:33:36 +01:00
Sara Arjona 5b91deed2c Merge branch 'MDL-63349-Master' of github.com:tuanngocnguyen/moodle 2019-10-14 13:58:09 +02:00
Tim Hunt 9c14b28d0b MDL-66821 question behat: new step for acting on questions in the bank
There is a proposed change MDL-66816 which will change the question
bank UI. This will break any Behat tests which uses low-level steps
like

    When I click on "Duplicate" "link" in the "Test question" "table_row"

to perform an action on a question in the question bank. This commit
introduces a new step:

    When I choose "Duplicate" action for "Test question" in the question bank

This commit also converts all core Behat tests to use the new step.
2019-10-14 11:36:12 +01:00
Sara Arjona ef2f26b8b1 Merge branch 'MDL-66836-master' of https://github.com/sammarshallou/moodle 2019-10-14 12:26:49 +02:00
Marina Glancy 959e4f0e97 MDL-66740 core_course: change defaults for course request settings 2019-10-14 12:22:16 +02:00
Tim Hunt 4e1ebf8cde MDL-66335 quiz behat: using the new generic navigation steps
This converts all the navigation to quiz pages when that is not
the thing under test. Also, I decided that the Quiz settings form
belonged to the course, so did not do that here.
2019-10-14 11:21:22 +01:00
Tim Hunt 9bcc357107 MDL-66335 behat: new step to log in and go straight to a particular page
I did not think thought through if this new URL parameter would be a
potential security hole. The simple cop-out option is to make it only
work on Behat sites for now.
2019-10-14 11:21:22 +01:00
Tim Hunt 4024556b98 MDL-66335 behat: generic step for navigating direct to specific pages 2019-10-14 11:19:13 +01:00
Marina Glancy 3e15abe500 MDL-66740 core_course: Add context to capabilities to request course 2019-10-14 11:38:13 +02:00
Eloy Lafuente (stronk7) 25494613f4 Merge branch 'MDL-66304' of https://github.com/golenkovm/moodle 2019-10-14 10:53:24 +02:00
Eloy Lafuente (stronk7) 70d33bc399 Merge branch 'MDL-66874-master' of git://github.com/junpataleta/moodle 2019-10-14 10:05:27 +02:00
Jake Dallimore 050f048e26 Merge branch 'MDL-66659' of https://github.com/paulholden/moodle 2019-10-14 15:33:10 +08:00
Andrew Nicols e99a3cca93 MDL-66559 behat: Register component selectors earlier 2019-10-14 14:24:05 +08:00
Andrew Nicols cd5382b298 MDL-66559 behat: Update running suite 2019-10-14 14:17:47 +08:00
Jun Pataleta 8da83f6c51 Merge branch 'MDL-66796-master-fix' of https://github.com/snake/moodle 2019-10-14 13:48:34 +08:00
Jake Dallimore f79a974435 MDL-66796 mod_quiz: only update the id number if changed
If the idnumber is present in the DB, it's set to null. In this case,
don't update the value.
2019-10-14 13:38:20 +08:00
Jun Pataleta 5a85b7fc13 MDL-66874 mod_feedback: Use correct option attribute 'classes' 2019-10-14 11:27:19 +08:00
Jun Pataleta 4f71255e61 MDL-66874 mod_data: Explicitly add btn-secondary class to select all
* Plus use correct option attribute 'classes' for the slave
  checkboxes
2019-10-14 11:27:19 +08:00
Jun Pataleta bc003428bc MDL-66874 mod_choice: Explicitly add btn-secondary class to select all 2019-10-14 11:27:19 +08:00
Jun Pataleta 0b0527cced MDL-66874 core: Allow master button checkbox toggle to be customisable
* Plus, add labelclasses data for template context in master and slave
checkbox templates.
2019-10-14 11:26:47 +08:00
Jake Dallimore e7ac8db8a1 Merge branch 'MDL-66768-master' of git://github.com/rezaies/moodle 2019-10-14 11:21:03 +08:00
Jake Dallimore 7f518ce451 Merge branch 'MDL-66559-master' of git://github.com/andrewnicols/moodle 2019-10-14 11:09:44 +08:00
Shamim Rezaie bf2e1bec4e MDL-66768 forumreport_summary: remove the select column when downloading 2019-10-14 13:07:17 +11:00
Shamim Rezaie a90b8056ba MDL-66768 forumreport_summary: move back bulk action menu to the bottom 2019-10-14 13:07:16 +11:00
Simey Lameze 850ce97425 MDL-66768 forumreport_summary: add ability to download report 2019-10-14 13:05:04 +11:00
Jun Pataleta 75c49ad291 Merge branch 'MDL-66553' of https://github.com/timhunt/moodle 2019-10-14 09:42:03 +08:00
Jake Dallimore df09316ebd Merge branch 'MDL-66796' of git://github.com/timhunt/moodle 2019-10-14 07:41:19 +08:00
Eloy Lafuente (stronk7) 88e0d75b93 Merge branch 'MDL-66792' of https://github.com/paulholden/moodle 2019-10-13 17:08:31 +02:00
Eloy Lafuente (stronk7) 847848909e Merge branch 'MDL-66851-master' of git://github.com/mihailges/moodle 2019-10-13 16:34:50 +02:00
Eloy Lafuente (stronk7) 4e202d91e7 Merge branch 'MDL-65243-master' of git://github.com/mihailges/moodle 2019-10-13 16:31:14 +02:00
Eloy Lafuente (stronk7) 1069a44975 Merge branch 'MDL-65515-master' of git://github.com/mihailges/moodle 2019-10-13 16:12:47 +02:00
Eloy Lafuente (stronk7) 1eb34211f7 Merge branch 'MDL-66779-master' of git://github.com/andrewnicols/moodle 2019-10-13 02:11:38 +02:00
Eloy Lafuente (stronk7) 0b30d47973 Merge branch 'master_MDL-66864' of https://github.com/golenkovm/moodle 2019-10-13 02:08:10 +02:00
Eloy Lafuente (stronk7) 266591de00 Merge branch 'MDL-65584' of https://github.com/paulholden/moodle 2019-10-13 01:49:19 +02:00
Eloy Lafuente (stronk7) 8111abc331 on-demand release 3.8dev+ 2019-10-11 22:44:39 +02:00
Eloy Lafuente (stronk7) 0a23dd8c57 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-11 22:44:24 +02:00
Tim Hunt 5aacd5e70e MDL-66553 questions: add $CFG->questionbankcolumns to config-dist.php 2019-10-11 13:59:26 +01:00
Tim Hunt c2200bd5dc MDL-66553 quiz/questions: show idnumber and tags when adding from qbank 2019-10-11 13:59:26 +01:00
Tim Hunt 61cc1e6494 MDL-66553 question bank: show tags and idnumbers in question list 2019-10-11 13:59:26 +01:00
Tim Hunt d4b47c5442 MDL-66553 question bank: show idnumbers on the edit categories screen 2019-10-11 13:59:26 +01:00
Tim Hunt a3f42f998c MDL-66553 question bank: show idnumbers in category drop-down 2019-10-11 13:59:26 +01:00
Neill Magill af9a834d74 MDL-64064 block_timeline: Confusing when event is not in this year
If an event is not in the current year it can be confusing as the
months and days may appear to be in the wrong order.

This change adds the year to the displayed date to make the reason
for the order clear.
2019-10-11 08:37:31 +01:00
Tim Hunt 33da028c27 MDL-66559 behat: Documentation for component selectors 2019-10-11 12:58:16 +08:00
Andrew Nicols 5c783f140e MDL-66559 message: Move behat selectors to message subsystem 2019-10-11 12:58:16 +08:00
Andrew Nicols 61832faefd MDL-66559 behat: Allow per-component selectors and replacements 2019-10-11 12:58:16 +08:00
Nathan Nguyen 4a6edc5767 MDL-63349 assignfeedback_editpdf: Rotate submitted image automatically 2019-10-11 15:26:53 +11:00
Jun Pataleta ad01d8bed5 Merge branch 'MDL-66076-master-2' of git://github.com/junpataleta/moodle 2019-10-11 11:16:37 +08:00
Jake Dallimore b663c71560 Merge branch 'MDL-66804' of https://github.com/paulholden/moodle 2019-10-11 11:16:17 +08:00
Jun Pataleta ce8a2d11d8 MDL-66076 forumreport_summary: filter JS and template optimisations 2019-10-11 11:09:50 +08:00
Michael Hawkins fb599f32d6 MDL-66076 message: Add copy of template plus JS comment fix 2019-10-11 11:09:50 +08:00
Michael Hawkins aa4b62baac MDL-66076 forumreport_summary: Filter styles update 2019-10-11 11:09:50 +08:00
Michael Hawkins 9523f0e040 MDL-66076 forumreport_summary: Added missing SQL group by fields
Also removed a redundant variable declaration.
2019-10-11 11:09:50 +08:00
Michael Hawkins d4d9b8c67c MDL-66076 forumreport_summary: Template example context fixes 2019-10-11 11:09:50 +08:00
Michael Hawkins b9669dd319 MDL-66076 forumreport_summary: Always show viewcount column
Previously this was hidden if filtering by groups, but will now be
visible, along with a disclaimer that the data is not filtered
(since the groups cannot be determined from the logs used).
2019-10-11 11:09:50 +08:00
Michael Hawkins cc15134c7b MDL-66076 forumreport_summary: Groups filter made accessible 2019-10-11 11:09:50 +08:00
Shamim Rezaie 14f92164f1 MDL-66076 forumreport_summary: Minor cleanup of report code
Removed some unnecessary code and added the current page to breadcrumbs
2019-10-11 11:09:50 +08:00
Shamim Rezaie 0942e58c91 MDL-66298 forumreport_summary: Added ability to bulk message users
Part of MDL-66076.
2019-10-11 11:09:50 +08:00
Shamim Rezaie cc97038258 MDL-66298 forumreport_summary: Moved table generation out of renderer
Part of MDL-66076.
2019-10-11 11:09:50 +08:00
Shamim Rezaie 8ffe06b9aa MDL-66298 javascript: Introduced new core AMD for sending bulk messages
Part of MDL-66076.
2019-10-11 11:09:50 +08:00
Shamim Rezaie 806d634359 MDL-66298 forumreport_summary: Display full names consistently
Part of MDL-66076. Display full names and profile links consistent
with other areas of Moodle.
2019-10-11 11:09:50 +08:00
Michael Hawkins 9eebd58aa2 MDL-66695 forumreport_summary: Added handling for all groups view count
Part of MDL-66076.
2019-10-11 11:10:41 +08:00
David Monllaó 235a6db7fb MDL-66695 forumreport_summary: New viewcount column
Part of MDL-66076.
2019-10-11 11:10:33 +08:00
Michael Hawkins b29de56dd7 MDL-66268 forumreport_summary: Add filters handling incl groups filter
Part of MDL-66076.
2019-10-11 11:10:27 +08:00
Michael Hawkins 90f2b0a905 MDL-66268 forumreport_summary: Introduce filter scss
Part of MDL-66076.
2019-10-11 11:10:17 +08:00
Michael Hawkins 382168a0aa MDL-66594 forumreport_summary: Added first/last post date columns
Part of MDL-66076.
2019-10-11 11:10:14 +08:00
Michael Hawkins d0e125cfc7 MDL-66299 forumreport_summary: Added attachments count column
Part of MDL-66076.
2019-10-11 11:10:10 +08:00
Michael Hawkins 90107b6f38 MDL-66299 mod_forum: Created new behat steps for bulk post creation
New behat steps created for adding bulk discussions and
replies in forums. Also includes private methods to prepare the
required information.

Part of MDL-66076.
2019-10-11 11:10:06 +08:00
Michael Hawkins 6388b6572c MDL-66153 mod_forum: Introduced summary report sub-plugin
Part of MDL-66076.
2019-10-11 11:09:50 +08:00
AMOS bot 7eb95ad2e5 Automatically generated installer lang files 2019-10-11 00:11:27 +00:00
Eloy Lafuente (stronk7) 212764c4af Merge branch 'master-MDL-66805-search' of https://github.com/kristian-94/moodle 2019-10-11 00:55:36 +02:00
Eloy Lafuente (stronk7) d58331eaaf Merge branch 'MDL-66815' of https://github.com/timhunt/moodle 2019-10-11 00:50:31 +02:00
Davo Smith 629699355c MDL-66017 block_myoverview: Oracle compatibility fix 2019-10-11 00:09:56 +02:00
Sara Arjona b968900509 Merge branch 'MDL-66017_course_filter_rebase' of git://github.com/davosmith/moodle 2019-10-10 08:33:07 +02:00
Jake Dallimore d979e33acc Merge branch 'MDL-65585_master' of git://github.com/dmonllao/moodle 2019-10-10 10:20:09 +08:00
David Monllaó f589788af1 MDL-66806 analytics: No predictions for hidden courses 2019-10-10 10:09:10 +08:00
David Monllaó bf25fb166c MDL-65585 analytics: Global on/off switch 2019-10-10 10:06:31 +08:00
AMOS bot 9edb97268c Automatically generated installer lang files 2019-10-10 00:09:17 +00:00
sam marshall cb0656a5ff MDL-66836 Behat: Reset unknown config variables between scenarios
In the Behat CLI run (not in the individual web requests), if you
modified an existing $CFG variable then this would be reset at the
start of the next scenario. However, if you added a completely new
one, it would not be reset. This change removes those variables.
2019-10-09 17:48:36 +01:00
Davo Smith 8d166d7745 MDL-66017 block_myoverview: filter by custom course field 2019-10-09 14:25:52 +01:00
Jun Pataleta 108bc23b70 Merge branch 'MDL-66835' of https://github.com/timhunt/moodle 2019-10-09 20:44:45 +08:00
Jun Pataleta c628e6021a Merge branch 'MDL-66450-master' of git://github.com/bmbrands/moodle 2019-10-09 20:40:28 +08:00
Tim Hunt 7ba73d16a0 MDL-66553 tags: option to accesshide label when displaying a taglist 2019-10-09 13:26:12 +01:00
Bas Brands 86ea9e6392 MDL-66450 themes: form autocomplete truncate listitems 2019-10-09 14:26:12 +02:00
Tim Hunt d30c6cdc17 MDL-66553 question bank: fix lots of phpdoc and other warnings 2019-10-09 13:26:12 +01:00
Tim Hunt 920a3500dc MDL-66835 behat: steps for setting/checking fields in containers 2019-10-09 13:26:05 +01:00
Sara Arjona 137befc2bd Merge branch 'MDL-66852-master' of github.com:lucaboesch/moodle 2019-10-09 12:58:00 +02:00
Jake Dallimore 2cee7e2dfc Merge branch 'MDL-64745-master-1' of git://github.com/mihailges/moodle 2019-10-09 15:58:50 +08:00
Jake Dallimore 9b0cf01d47 Merge branch 'MDL-66371-master' of git://github.com/rezaies/moodle 2019-10-09 13:33:17 +08:00
Shamim Rezaie 4f3d1266e3 MDL-66371 mod_forum: Improving behat tests 2019-10-09 15:19:11 +11:00
Andrew Nicols d31b5c431d Merge branch 'MDL-66753-master' of git://github.com/abias/moodle 2019-10-09 12:00:57 +08:00
Damyon Wiese b0213770d2 MDL-65243 badges: Use real time api
Never add or subtract timestamps - use the time api to do it correctly.
2019-10-09 11:51:45 +08:00
Simey Lameze 3222469ca8 MDL-66371 mod_forum: add behat coverage for export
Part of MDL-66075.
2019-10-09 14:46:56 +11:00
Mihail Geshoski 9ad5cff41f MDL-65515 badges: Split install/upgrade
Use badges/upgradelib.php for functions that only affect install/upgrade.

All credit goes to Damyon Wiese.
2019-10-09 11:15:28 +08:00
Andrew Nicols 5dc69b9bbe Merge branch 'MDL-66166' of https://github.com/brendanheywood/moodle 2019-10-09 11:14:09 +08:00
Adrian Greeve d50978de2c Merge branch 'MDL-66011-master' of git://github.com/andrewnicols/moodle 2019-10-09 10:40:02 +08:00
Jun Pataleta fa278f052b Merge branch 'MDL-66725-master' of https://github.com/snake/moodle 2019-10-09 10:31:18 +08:00
Andrew Nicols bfdeae2afd MDL-66779 phpunit: Correct component name for core_grades 2019-10-09 09:34:47 +08:00
Andrew Nicols 13ef95e3de Merge branch 'MDL-66118-master-byebyemoodlenet' of git://github.com/mudrd8mz/moodle 2019-10-09 07:43:33 +08:00
Eloy Lafuente (stronk7) c35f47d8ed Merge branch 'MDL-66428_master' of git://github.com/markn86/moodle 2019-10-09 00:28:30 +02:00
Eloy Lafuente (stronk7) d693378bf9 Merge branch 'MDL-63127_master' of git://github.com/markn86/moodle 2019-10-08 23:50:14 +02:00
Alexander Bias 8471a0db42 MDL-61804 admin: Add setting for course visibility sorting 2019-10-08 11:58:39 +02:00
Luca Bösch 57987d7088 MDL-66852 quiz: Style "Try another question like this one" button. 2019-10-08 11:28:39 +02:00
Eloy Lafuente (stronk7) a31719f91a on-demand release 3.8dev+ 2019-10-08 10:43:51 +02:00
Eloy Lafuente (stronk7) 796db6cbc8 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-10-08 10:43:45 +02:00
Mihail Geshoski 0b802432ca MDL-66851 block_starredcourses: Hide 'hidden' courses from students
Thanks to Mark Sharp for the bug report and fix suggestion.
2019-10-08 09:52:37 +08:00
AMOS bot d63e8ee703 Automatically generated installer lang files 2019-10-08 00:09:56 +00:00
Eloy Lafuente (stronk7) 38417fa421 Merge branch 'MDL-66801' of https://github.com/timhunt/moodle 2019-10-08 01:16:46 +02:00
Paul Holden d95812cb39 MDL-65584 blog: safer deletion of associations in privacy provider.
It's possible that the given context list contains no posts, which caused
an exception to be thrown when passing an empty array to get_in_or_equal.
2019-10-08 00:12:32 +01:00
Eloy Lafuente (stronk7) af59994f4f Merge branch 'MDL-66628_master' of git://github.com/dmonllao/moodle 2019-10-08 00:54:03 +02:00
Eloy Lafuente (stronk7) 10ab0770ab Merge branch 'MDL-66764' of https://github.com/timhunt/moodle 2019-10-07 22:50:57 +02:00
Eloy Lafuente (stronk7) 9c5796a3f0 Merge branch 'MDL-66754' of https://github.com/timhunt/moodle 2019-10-07 22:33:02 +02:00
Eloy Lafuente (stronk7) c29715f3d7 Merge branch 'MDL-66743' of https://github.com/timhunt/moodle 2019-10-07 22:26:53 +02:00
Eloy Lafuente (stronk7) ec829c6070 Merge branch 'MDL-66709' of https://github.com/timhunt/moodle 2019-10-07 22:25:12 +02:00
Eloy Lafuente (stronk7) f3bb36720b Merge branch 'MDL-66749-master' of git://github.com/bmbrands/moodle 2019-10-07 22:03:08 +02:00
Eloy Lafuente (stronk7) d4f52fc831 Merge branch 'MDL-66750' of https://github.com/timhunt/moodle 2019-10-07 21:55:32 +02:00
Mark Nelson de0b6d938c MDL-66428 cachestore_redis: add Zstd compression support 2019-10-07 19:03:43 +01:00
Mark Nelson 493295e326 MDL-63127 cachestore_redis: dont use compression unless specified 2019-10-07 18:23:10 +01:00
Eloy Lafuente (stronk7) f232409e13 MDL-63127 cachestore_redis: cover combinations without compressor
To verify that, internally, everything is stored as expected
and there aren't hidden regressions
2019-10-07 18:23:10 +01:00
Sara Arjona 9ee83d1d98 Merge branch 'MDL-66775-master' of git://github.com/jleyva/moodle 2019-10-07 16:14:43 +02:00
Mark Nelson 182a0698e1 MDL-63127 cachestore_redis: clean up compressor_test.php 2019-10-07 12:12:48 +01:00
Mark Nelson 4ccbb67474 MDL-63127 cachestore_redis: do not return early without unserialisation 2019-10-07 12:12:48 +01:00
Mark Nelson 3ad56eee9f MDL-63127 cachestore_redis: add check before using igbinary_serialize
Redis::SERIALIZER_IGBINARY is undefined if redis is not compiled
with this option.
2019-10-07 12:12:48 +01:00
Mark Nelson 54a659a5bd MDL-63127 cachestore_redis: delegate functionality to specific areas
These functions should not have to worry about compression logic.
2019-10-07 12:12:48 +01:00
Mark Nelson ac19c888b0 MDL-63127 cachestore_redis: set pair value correctly 2019-10-07 12:12:48 +01:00
Daniel Thee Roperto cda3e431ca MDL-63127 cachestore_redis: Implemented compression 2019-10-07 12:12:48 +01:00
Alexander Bias 1ce19cc3ed MDL-66753 blocks: Remove references in core to block_participants 2019-10-07 08:34:20 +02:00
Alexander Bias 7ce941a455 MDL-66753 blocks: Remove block_participants from core 2019-10-07 08:34:20 +02:00
Adrian Greeve 1b70f4c1d5 Merge branch 'master-MDL-66794' of https://github.com/golenkovm/moodle 2019-10-07 14:28:59 +08:00
Mikhail Golenkov 9c7a5526ba MDL-66864 upgrade: Delete non-mutual contacts in chunks. 2019-10-07 16:32:20 +11:00
Adrian Greeve 3ae7d678fa Merge branch 'MDL-65187-master' of git://github.com/marinaglancy/moodle 2019-10-07 11:12:21 +08:00
Mihail Geshoski 0a9150c009 MDL-64745 block_online_users: Add behat tests 2019-10-07 09:00:33 +08:00
Mihail Geshoski e94de2d6d3 MDL-64745 block_online_users: Add unit tests 2019-10-07 09:00:33 +08:00
Mihail Geshoski e1fb8e4aec MDL-64745 block_online_users: Option to disable users to set visibility 2019-10-07 09:00:33 +08:00
David Mudrák 254b579375 MDL-66118 hub: Replace the unregister form with a confirmation
Now that unpublishalladvertisedcourses and unpublishalluploadedcourses
became irrelevant, there is no reason for an empty form.
2019-10-04 21:23:11 +02:00
David Mudrák 3d2aa2ebef MDL-66118 hub: Remove the mentions of moodle.net
This is an update of the site registration admin page and some relevant
backend code to remove the mentions of moodle.net.

AMOS BEGIN
 CPY [registerwithmoodleorg,core_admin],[registerwithmoodleorg,core_hub]
AMOS END
2019-10-04 21:23:11 +02:00
David Mudrák ecc9960ead MDL-66118 hub: Stop using the hub URL as the setting name suffix
Site indicators shared with the registration hub used to have the hub
URL in the relevant setting names - such as site_name_httpsmoodlenet.
This upgrade step converts all such settings and drops the URL suffix
because we do not support alternative hubs any more.

Additionally the upgrade step renames the official hub and updates its
URL so that existing registrations with https://moodle.net are still
valid.
2019-10-04 21:23:11 +02:00
David Mudrák ffecbefb06 MDL-66118 hub: Drop support for the hub's display_homepage callback
There should never be any exceptional hacks like this for any particular
plugin. The hub sites can make use of a wide range of other and cleaner
mechanisms - such as a custom theme or the customfrontpageinclude
directive - to implement a customized front page.

Plus, we've dropped support for alternative hubs anyway.
2019-10-04 21:17:06 +02:00
David Mudrák 6d015e29cc MDL-66118 hub: Define the new sites directory URL
The Moodle sites now register with stats.moodle.org so use that as a new
official hub's URL. Beside that, allow for the alternative value be
provided in config.php for development and testing purposes.
2019-10-04 21:17:06 +02:00
David Mudrák a08c238f9e MDL-66118 hub: Remove legacy constants, not relevant any more
Both the following constants are no longer needed as Moodle does not
support multiple hubs any more.

* HUB_HUBDIRECTORYURL is no longer valid as Moodle no longer supports
  the listing of community hubs.
* HUB_OLDMOODLEORGHUBURL was used in the past for the transition
  purposes.
2019-10-04 21:17:06 +02:00
Tobias Reischmann d9b8e3554b MDL-66496 mod_data: Add tests for import functionality 2019-10-04 19:35:18 +02:00
Tobias Reischmann 8bb0d5fb5f MDL-66496 mod_data: Make import functionality testable 2019-10-04 19:34:53 +02:00
Justus Dieckmann ba2fc8bd94 MDL-66496 mod_data: Import author information on csv import 2019-10-04 19:33:54 +02:00
Eloy Lafuente (stronk7) 6ec1078469 on-demand release 3.8dev+ 2019-10-04 16:02:03 +02:00
Eloy Lafuente (stronk7) f7b87e1a79 NOBUG: Fixed file access permissions 2019-10-04 16:02:02 +02:00
Eloy Lafuente (stronk7) 2aa5e7e892 NOBUG: Fixed SVG browser compatibility 2019-10-04 16:01:57 +02:00
Ryan Wyllie 7754fa54d6 MDL-66226 core_message: convert formatMessagePreview to async function
Uses the nicer syntax of sync/await, removing some of the promises
clutter.
2019-10-04 16:50:30 +08:00
Jake Dallimore f11b8ec5a0 MDL-66226 core: add fallback pixicons for the messagecontent fa icons
If $THEME->iconsystem is not set to font awesome, we need to fall back
to either svg or png images.
2019-10-04 16:49:48 +08:00
Jake Dallimore c11baac4b4 MDL-66226 core_message: wrap promise chains in pending for behat
Fixes random failures by forcing behat to wait for the pane to render.
2019-10-04 14:37:25 +08:00
Jake Dallimore 545e8988c3 MDL-66226 core_message: don't display html as text in overview section
Instead of displaying the source code, as text, display a content
indicator which tells the user what sort of content the message might
contain.
2019-10-04 14:34:19 +08:00
Ryan Wyllie f9d76e4905 MDL-66477 core: only render region main settings if no settings block
We added a change to allow the region main settings menu to be
rendered in the header rather that the top of the body however
this also meant that the settings were shown on themes (e.g. Classic)
that didn't otherwise show the region main settings.

The simplest solution seems to be to not render the region main
settings in the header if the settings block is on the page.
2019-10-04 11:31:14 +08:00
Jun Pataleta e5277f0a7f Merge branch 'MDL-65315-master' of git://github.com/peterRd/moodle 2019-10-04 10:25:16 +08:00
Andrew Nicols fe0944987e MDL-66011 test: remove magic @covers lines 2019-10-04 09:40:34 +08:00
Andrew Nicols 8847ec4791 MDL-66011 tests: Stop forcing coverage annoation 2019-10-04 09:39:50 +08:00
Eloy Lafuente (stronk7) c41f4e56d3 Merge branch 'MDL-66476_master' of git://github.com/dmonllao/moodle 2019-10-04 01:59:14 +02:00
Eloy Lafuente (stronk7) 04c0050dcc Merge branch 'MDL-66397-master-embed' of git://github.com/vmdef/moodle 2019-10-03 23:25:21 +02:00
David Monllaó f5c65ba37f MDL-66476 mlbackend: Use F1 as the main accuracy metric 2019-10-04 05:20:49 +08:00
David Monllaó ebec727cd3 MDL-66004 mlbackend_python: Purge testing output dirs properly 2019-10-04 05:19:45 +08:00
Eloy Lafuente (stronk7) ef7aded996 Merge branch 'MDL-56649-master' of git://github.com/bmbrands/moodle 2019-10-03 19:37:05 +02:00
Eloy Lafuente (stronk7) 40763810d9 Merge branch 'MDL-65327_master' of https://github.com/marxjohnson/moodle 2019-10-03 19:27:49 +02:00
Eloy Lafuente (stronk7) 0036173459 Merge branch 'MDL-66004_master-delete_fix' of git://github.com/dmonllao/moodle 2019-10-03 18:41:36 +02:00
Adrian Greeve 8515fbfbaa Merge branch 'MDL-65919-master' of git://github.com/marinaglancy/moodle 2019-10-03 15:59:03 +08:00
Jun Pataleta 27c648a095 Merge branch 'MDL-61450-master' of git://github.com/lameze/moodle 2019-10-03 15:42:19 +08:00
Jun Pataleta ec720611d5 MDL-61450 calendar: Unit test for calendar_view_event_allowed()
* Unit test for calendar_view_event_allowed() when dealing with course
events.
2019-10-03 15:38:43 +08:00
Juan Leyva 12a289c7a4 MDL-66775 tool_mobile: Return additional app data
We need this information for creating a link to the app store listing for updating.
2019-10-03 09:29:38 +02:00
Juan Leyva 4bf08f5b4d MDL-66775 tool_mobile: New force minimum app version setting 2019-10-03 09:29:38 +02:00
Simey Lameze ec482557a8 MDL-61450 calendar: fix course event type permissions 2019-10-03 13:20:33 +08:00
David Monllaó 63c15f6c58 MDL-66004 mlbackend_python: Purge testing output dirs properly 2019-10-03 09:45:57 +08:00
Peter 8c95b7d9bb MDL-65774 mod_assign: Updated pdf to include FPDI upgrades 2019-10-03 07:47:11 +08:00
Peter 68713f585f MDL-65774 mod_assign: Update fpdi library to 2.2.0 2019-10-03 07:47:11 +08:00
Eloy Lafuente (stronk7) aab2b2103e Merge branch 'MDL-66774-master-macedonia' of git://github.com/mudrd8mz/moodle 2019-10-03 00:57:21 +02:00
Eloy Lafuente (stronk7) 846521d817 Merge branch 'MDL-63453-38_media_videojs_upgrade' of https://github.com/mattporritt/moodle 2019-10-03 00:48:56 +02:00
Eloy Lafuente (stronk7) 5260feb506 Merge branch 'MDL-66197-master' of git://github.com/marinaglancy/moodle 2019-10-03 00:45:31 +02:00
Eloy Lafuente (stronk7) 20502fa30c Merge branch 'MDL-66004_master' of git://github.com/dmonllao/moodle 2019-10-02 20:53:24 +02:00
Eloy Lafuente (stronk7) 35da660ab0 Merge branch 'MDL-66254_master' of git://github.com/dmonllao/moodle 2019-10-02 17:00:39 +02:00
Eloy Lafuente (stronk7) d25ece5ed9 Merge branch 'MDL-65957-master' of git://github.com/mihailges/moodle 2019-10-02 16:49:30 +02:00
Eloy Lafuente (stronk7) 637707bcb0 Merge branch 'MDL-64588-master-2' of git://github.com/snake/moodle 2019-10-02 16:39:44 +02:00
Jun Pataleta 31b4ff1db3 Merge branch 'MDL-62191_master' of git://github.com/dmonllao/moodle 2019-10-02 16:35:50 +08:00
Adrian Greeve 8fec1626d0 Merge branch 'MDL-66477-master' of git://github.com/junpataleta/moodle 2019-10-02 16:15:13 +08:00
Jun Pataleta 83e1b0e7f1 MDL-66477 mod_forum: Enclose setting switch in div 2019-10-02 16:12:44 +08:00
Jake Dallimore 0c3eaf9ee6 MDL-64588 core_comment: fix unnecessary type check in add_comments
We should rely on the return type, else an exception with be thrown.
2019-10-02 09:23:43 +08:00
Jake Dallimore 93ea6612bd MDL-64588 core_comment: make external test code use helper method
Instead of using setUp to create testing objects, use a helper.
2019-10-02 09:23:43 +08:00
Jake Dallimore ae94d477a6 MDL-64588 core_comment: fix get_comment ordering when timestamps match
Include id in the sorting, to be sure that we always get the correct
record in cases where the comment timestamps are the same.
2019-10-02 09:23:43 +08:00
Jake Dallimore 6cd3d398a9 MDL-64588 core_comment: use comment structure in external get_comments
Other minor changes include:
- added the since tag to newly added external functions
- Changed 'web service' to 'external function' in comment/upgrade.txt
2019-10-02 09:23:33 +08:00
David Monllaó 463b63db2a MDL-66004 analytics: mlbackend_python tested just once
Either running locally from the web server or using a server if
TEST_MLBACKEND_* vars are set. The tests will still be skipped if
the python backend is not available in the web server.
2019-10-02 08:41:14 +08:00
David Monllaó fea66a0854 MDL-66004 mlbackend_python: Bump the required python package version 2019-10-02 08:41:14 +08:00
David Monllaó aa5b705607 MDL-66004 mlbackend_python: Package installed on a separate server 2019-10-02 08:41:14 +08:00
David Monllaó 7bde26ed9f MDL-66254 analytics: Requires active enrolments for most of analysis 2019-10-02 08:12:56 +08:00
David Monllaó ea30943119 MDL-66254 course: Unit tests for the new restrictions 2019-10-02 08:12:56 +08:00
Eloy Lafuente (stronk7) 5e58b43ca7 Merge branch 'MDL-65096-m' of https://github.com/micaherne/moodle 2019-10-02 00:01:37 +02:00
Eloy Lafuente (stronk7) 7dbc1041b3 Merge branch 'MDL-65335_master' of https://github.com/marxjohnson/moodle 2019-10-01 23:21:51 +02:00
Tim Hunt 6e73157a3c MDL-66815 behat: question category generator must find right parent id
This is implemented in a bit of a hacky way, because the only other
alternative would be a large rewrite of the whole class, which is
not feasible for me right now. Note that many other types of thing
that can be generated suffer from the same issue. (E.g. if you ever
wanted to generate two groups with the same name in two different
courses and then add group memebers.)

It is worth doing a special-case fix for question categories, because
way Moodle works, it is inevitable that we end up with many categories
called 'top' in the database.
2019-10-01 16:43:25 +01:00
Eloy Lafuente (stronk7) ba9110e1c8 Merge branch 'MDL-65522' of https://github.com/NeillM/moodle 2019-10-01 16:09:57 +02:00
Eloy Lafuente (stronk7) 13b85c61c6 Merge branch 'MDL-66542_master' of https://github.com/t-schroeder/moodle 2019-10-01 15:56:08 +02:00
Marina Glancy 57876874c3 MDL-66020 core_form: add date selector js only when rendered 2019-10-01 12:20:24 +02:00
Paul Holden d99bbd8e80 MDL-66659 core: observe viewfullnames capability in flexible_table. 2019-10-01 10:07:29 +01:00
Jake Dallimore 9a820e0af9 MDL-66725 core: fix language in str.js
When ommitted from the get_string() or get_strings() calls, it should be
inferring from the page language.
2019-10-01 13:53:59 +08:00
Kristian Ringer 5bd72dd661 MDL-66805 search: Close session early during searches 2019-10-01 12:30:13 +10:00
Mihail Geshoski e8edca25b8 MDL-65957 repository_upload: Throw exception if @_file_upload is missing 2019-10-01 09:35:53 +08:00
Mihail Geshoski 56932a19b4 MDL-65957 mod_imscp: Add required @file_upload tag in behat scenarios 2019-10-01 09:35:53 +08:00
Juan Leyva 09899abc55 MDL-64588 comment: New WebService core_comment_delete_comment 2019-10-01 09:26:01 +08:00
Juan Leyva 8e4a9ed854 MDL-64588 comment: New WebService core_comment_add_comment 2019-10-01 09:26:01 +08:00
Juan Leyva 2234b6c9dc MDL-64588 comment: Return whether the user can post in a comments area 2019-10-01 09:25:36 +08:00
Paul Holden aa5e150172 MDL-66792 tool_dataprivacy: correct fa classes in privacy registry. 2019-09-30 23:49:14 +01:00
Eloy Lafuente (stronk7) 12c377bbb6 Merge branch 'MDL-65876-master' of https://github.com/lucaboesch/moodle 2019-10-01 00:07:30 +02:00
Paul Holden 8208292f65 MDL-66804 user: consistent user access times in privacy export. 2019-09-30 23:02:50 +01:00
Tim Hunt e247068d72 MDL-66801 questions: XML import/export should include category idnumbers 2019-09-30 18:59:23 +01:00
Brendan Heywood 3bc082dd07 MDL-66166 core_useragent: Update MoodleBot UA and treat as web crawler 2019-09-30 23:30:20 +10:00
Tim Hunt e740085116 MDL-66796 question bank: 0 is a valid question category idnumber 2019-09-30 14:18:35 +01:00
Marina Glancy ec8453c122 MDL-65187 core_hub: truncate registration request, use post 2019-09-30 13:05:19 +02:00
Marina Glancy 04645f4e9b MDL-65187 core_hub: send more important info first to moodle.net
Rumor has it that some browsers may truncate the GET request to 2000 characters,
make sure that all important info is sent first
Everything else will be updated on the first registration update request.
2019-09-30 13:05:19 +02:00
Marina Glancy b51bfaf594 MDL-65919 core: add test for table download 2019-09-30 12:00:37 +02:00
Alberto Lara Hernández 40a6b502ae MDL-65919 core: Skip send headers during phpunit exec in dataformats 2019-09-30 12:00:33 +02:00
Tim Schroeder f8f04b773d MDL-66542 lib: Fix quote escaping in JS quote helper 2019-09-30 10:09:07 +02:00
Neill Magill b3a0f15444 MDL-65522 block_social_activities: Improve behat steps documentation
The documentation for these steps was not helpful in the Acceptance
testing admin tool page.
2019-09-30 08:56:31 +01:00
Mikhail Golenkov 15136147ba MDL-66794 core_customfield: Reset Course handler after unit tests run. 2019-09-30 10:56:04 +10:00
Mikhail Golenkov 1a15925240 MDL-66304 files: Allow xsendfile support in alternative file system. 2019-09-30 09:00:57 +10:00
Luca Bösch b284ab6935 MDL-65876 forum: same arrows forum/activity navigation 2019-09-27 14:20:17 +02:00
Victor Deniz Falcon e83fd27717 MDL-66397 filter_h5p: converts H5P URLs to embed code 2019-09-27 11:01:12 +01:00
Ryan Wyllie 49f5b16c61 MDL-66477 mod_forum: remove duplicate listeners in settings drawer 2019-09-27 15:50:03 +08:00
Ryan Wyllie b53f15b111 MDL-66477 theme: add some core styling
Add a generic colour-inherit class and fix styling for icon
buttons and reset-style class.
2019-09-27 15:46:15 +08:00
Ryan Wyllie b17bb71e88 MDL-66477 javascript: add toggle functionality to drawer 2019-09-27 15:46:15 +08:00
Ryan Wyllie 6d9c93560b MDL-66477 core: remove snakeCase block regions from drawer.mustache 2019-09-27 15:46:15 +08:00
Jun Pataleta 959b996c50 MDL-66477 mod_forum: Create the discussion settings drawer 2019-09-27 15:46:13 +08:00
Ryan Wyllie c77d1ae40f MDL-66477 mod_forum: move region main settings menu to header
Add a generic way to render actions in the page content header
and then moved the region main settings menu there for the forum.
2019-09-27 15:38:54 +08:00
Jun Pataleta 8aca1807ae MDL-66477 message: Use the generic drawer for the message drawer 2019-09-27 15:38:54 +08:00
Jun Pataleta a2517225dc MDL-66477 core: Create a generic drawer template 2019-09-27 15:38:54 +08:00
David Monllaó 386d109172 MDL-62191 analytics: Support for bulk actions 2019-09-27 14:13:52 +08:00
David Monllaó af29098a2e MDL-62191 course: Remove predictiondetails leftover
The no_teaching model initially had just 1 indicator, the removed
code was deleting the action using an unexisting key.
2019-09-27 14:12:48 +08:00
David Monllaó 95fcf8769b MDL-62191 output: No secondary buttons trigger if no buttons 2019-09-27 14:12:48 +08:00
David Monllaó ca81e906e0 MDL-62191 output: New extra attributes for single_button
Useful for data- attributes.
2019-09-27 14:12:48 +08:00
David Monllaó 4463a4ae92 MDL-66628 tool_analytics: Effectiveness report to insights report 2019-09-27 14:05:36 +08:00
Jun Pataleta 9528b1ff5b weekly release 3.8dev 2019-09-27 11:12:09 +08:00
Jun Pataleta 46a8d27028 NOBUG: Fixed SVG browser compatibility 2019-09-27 11:12:09 +08:00
Jun Pataleta 725151ad4c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-09-27 11:12:08 +08:00
Jun Pataleta 2e72a52145 Merge branch 'MDL-66075-master-fix' of https://github.com/snake/moodle 2019-09-27 10:11:44 +08:00
Jake Dallimore f5e6bcf026 MDL-66075 mod_forum: reduce DB reads in forum settings generation
Instead of fetching the DB record AND then fetching it again (as
part of the vault->get_from_id() call, just use the legacy data
mapper and remove the DB call.
2019-09-27 09:50:23 +08:00
Jake Dallimore d310bf92b2 Merge branch 'MDL-64821' of https://github.com/stronk7/moodle 2019-09-27 09:40:23 +08:00
Ruslan Kabalin a742b03d8c MDL-63453 media_videojs: Use media_source mimetype group in the player. 2019-09-27 00:13:29 +00:00
Ruslan Kabalin 037124bf1c MDL-63453 filetypes: Introduce media_source mimetype group.
This is required to group together media streaming techniques that are
handled by Media Source Extensions (MSE) in the browser.

https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API
2019-09-27 00:13:09 +00:00
Eloy Lafuente (stronk7) cc28bff60e MDL-64821 mod_forum: increase data privacy export expected size
Some new styles added have caused the resulting zip
file to go beyond that accepted limit of 135000. So
increasing to 140000.
2019-09-26 19:35:54 +02:00
Eloy Lafuente (stronk7) c2c1cbd40a Merge branch 'MDL-66570-master' of git://github.com/andrewnicols/moodle 2019-09-26 15:56:38 +02:00
David Mudrák f5155c7526 MDL-66774 lang: Update the list of countries as per ISO 3166-1
Source: https://www.iso.org/obp/ui/

Two significant changes are:

* North Macedonia
* Eswatini

All other changes are formal, such as changing the letter case of the
"And" (the current ISO uses the lower case "and").  Our own existing
modifications of the list (such as having just "United States" and
"United Kingdom" instead of the full long name) were kept.
2019-09-26 09:49:16 +02:00
Jake Dallimore 57054fc66b Merge branch 'MDL-66481-master-6' of git://github.com/junpataleta/moodle 2019-09-26 11:57:51 +08:00
Jun Pataleta 8dc1505374 Merge branch 'MDL-66262' of git://github.com/stronk7/moodle 2019-09-26 11:34:45 +08:00
Jun Pataleta 0f3e5a9b8d MDL-66481 forum: Show notification on toggled subscription
For usability, after selecting the subscription toggle action menu item,
a notification message will be shown to the user.
2019-09-26 10:47:05 +08:00
Jun Pataleta 5132de054c MDL-66481 forum: Remove the YUI subscribe link
* Remove the subscribe link that's powered by YUI and
  subscribe_ajax.php. This will be replaced by the subscribe action
  menu item which utilises the subscription toggle template
  and calls the proper WS function for toggling discussion subscription.
* Nuke YUI module for toggling subscription and subscribe_ajax.php
  (about time!)
2019-09-26 10:47:05 +08:00
Jun Pataleta 2b8e4f2e4b MDL-66481 mod_forum: Peer review fixes 2019-09-26 10:47:05 +08:00
Jun Pataleta dff565b32c MDL-66481 mod_forum: Move "Mark as read" into the discussion menu 2019-09-26 10:47:05 +08:00
Jun Pataleta bc23cbaf54 MDL-66481 mod_forum: Implement additional column sorting
Implement sorting for the following columns:
* Discussion name
* Discussion starter name
* Group
2019-09-26 10:47:05 +08:00
Jun Pataleta a78070aa1b MDL-66481 mod_forum: Move timed discussion indicator
* Move it under the discussion column.
* Change it to look like a label
* Plus limit the group name to 15 characters
* Plus some accessibility fixes:
  - Add labels to column headings.
  - Set discussion name as a row heading.
2019-09-26 10:47:05 +08:00
Jun Pataleta 1a9e5cb230 MDL-66481 mod_forum: Update discussion list UI
* Remove striped table row style
* Move subscribe icon to the action menu
* Update the action menu icon
* Remove the Last post column
* Removed the "Created" column and moved the date under "Started by"
* Added "Locked" and "Subscribed" indicators under discussion names.
* Added group name with the group picture. For groups without pictures,
  a default placeholder picture is now shown.
2019-09-26 10:47:05 +08:00
Jun Pataleta 5bfde48125 MDL-66481 mod_forum: Switch action menu trigger to <a> tag
* This is how the usual moodle action menu is built.
* Removed the 'type="button"' attribute as it is not necessary.
* Added template context so it renders in the template library.
2019-09-26 10:47:05 +08:00
Jun Pataleta 0aba625a9c MDL-66481 lang: Add additional date display formats
* Day, abbreviated month, and year (e.g. 28 Aug 2019)
* Day and abbreviated month (e.g. 28 Aug)
2019-09-26 10:47:05 +08:00
Jake Dallimore c3122dfcf5 Merge branch 'MDL-64821-master-2' of https://github.com/ryanwyllie/moodle 2019-09-26 10:45:44 +08:00
Eloy Lafuente (stronk7) 07fd11f488 Merge branch 'MDL-66106-master' of https://github.com/snake/moodle 2019-09-26 00:54:36 +02:00
Eloy Lafuente (stronk7) e8a2d532fa Merge branch 'MDL-66169-master' of https://github.com/snake/moodle 2019-09-26 00:47:23 +02:00
Eloy Lafuente (stronk7) 31b822ee2f Merge branch 'MDL-66653-master' of git://github.com/andrewnicols/moodle 2019-09-26 00:29:07 +02:00
Eloy Lafuente (stronk7) dd52ef0b64 Merge branch 'MDL-51327-master' of git://github.com/mihailges/moodle 2019-09-26 00:04:33 +02:00
Eloy Lafuente (stronk7) d910c26e69 Merge branch 'MDL-66685' of https://github.com/timhunt/moodle 2019-09-25 23:57:42 +02:00
Eloy Lafuente (stronk7) b57e984398 Merge branch 'MDL-66675-master' of git://github.com/andrewnicols/moodle 2019-09-25 20:05:21 +02:00
Marina Glancy 54f2d0c49e MDL-66197 core: correct get parent language 2019-09-25 16:49:11 +02:00
Bas Brands 736faf86c5 MDL-66749 core_message: remove background from notifications 2019-09-25 12:46:32 +02:00
Tim Hunt b04b6ae1ab MDL-66764 quiz: redo question should not repeat random questions
Before this fix, it was only considering questions seen in previous attempts.

It should avoid the questions in the current attmept too.
2019-09-25 11:04:38 +01:00
Bas Brands 61085ebfda MDL-56649 themes: filepicker file exists buttons spacing 2019-09-25 12:03:37 +02:00
Jun Pataleta ba623918f6 Merge branch 'MDL-66354-master' of http://github.com/dravek/moodle 2019-09-25 16:43:15 +08:00
Ryan Wyllie 15ecfac435 MDL-64821 mod_forum: fix modern view in single discussion forum 2019-09-25 15:36:51 +08:00
Ryan Wyllie a5f88ccca2 MDL-64821 theme_classic: disable some boost general page styling
Disable the reset and fixed width content styling from the Boost
theme for the classic theme because it doesn't work well with
blocks.
2019-09-25 15:36:51 +08:00
Ryan Wyllie 23e0ceca16 MDL-64821 mod_forum: don't show name of deleted user
When a user account is deleted don't render the user's name in
the forum. Instead we render "Deleted user".
2019-09-25 15:36:51 +08:00
Ryan Wyllie b97622a01c MDL-64821 mod_forum: fix keyboard nav for discussion 2019-09-25 15:36:51 +08:00
Ryan Wyllie 7902e4dc55 MDL-64821 mod_forum: add show/hide reply toggle for modern view 2019-09-25 15:36:51 +08:00
David Matamoros 21ad9531d0 MDL-66354 core_calendar: Notices in error.log on calendar events 2019-09-25 09:08:41 +02:00
Jun Pataleta 84e66f0932 Merge branch 'MDL-66644-master-versionrequires' of git://github.com/mudrd8mz/moodle 2019-09-25 14:54:29 +08:00
Jun Pataleta e5e95d913f Merge branch 'MDL-66710-master' of git://github.com/abgreeve/moodle 2019-09-25 14:38:23 +08:00
Ryan Wyllie 38d96b6540 MDL-64821 mod_forum: add in page reply to modern display mode 2019-09-25 14:35:59 +08:00
Matt Porritt 411bbe6ba0 MDL-63453 media_videojs: Upgrade Video.JS to 7.6.5.
Upgrade videojs media player to version 7.6.5 as well
as a general update this adds MPEG-DASH and HLS playlist
support to the Video.JS media player.
2019-09-25 05:52:38 +00:00
Ryan Wyllie fe8e8ad4c4 MDL-64821 mod_forum: render new forum display mode when selected 2019-09-25 13:12:53 +08:00
Adrian Greeve 91577e2d54 Merge branch 'wip_MDL-66656_master' of git://github.com/gjb2048/moodle 2019-09-25 11:39:57 +08:00
Adrian Greeve 0417f5429c Merge branch 'MDL-65406-master_navmenu_list_accessibility' of https://github.com/andrewmadden/moodle 2019-09-25 11:22:50 +08:00
Adrian Greeve 1b84061049 Merge branch 'MDL-66388-master-2' of git://github.com/bmbrands/moodle 2019-09-25 11:08:50 +08:00
Ryan Wyllie 7255378b0a MDL-64821 mod_forum: add templates for modern display mode 2019-09-25 10:47:56 +08:00
Ryan Wyllie b7c27c2158 MDL-64821 mod_forum: add modern display mode option
Add the "modern" display mode option to the view selector.
2019-09-25 10:42:19 +08:00
Ryan Wyllie 4dd2570dd7 MDL-64821 output: add wrapping class for ratings label
Add a span tag with a class that wraps the ratings label and popup
link so that it can be styled.
2019-09-25 10:42:19 +08:00
Ryan Wyllie e81be9a8b1 MDL-64821 files: increase icon image size for stored file exporter
The default size for the stored file icon was only 16px by 16px which
wasn't suitable for display in the new forum layout. I've increased
the default size to 128px by 128px so that it looks better scaled up.
2019-09-25 10:42:19 +08:00
Ryan Wyllie 060da692b6 MDL-64821 theme_boost: enable bootstrap tooltips 2019-09-25 10:42:19 +08:00
Ryan Wyllie 5ca0958d2f MDL-64821 theme_boost: add general core styling
Added some classes to reset the content styling to a flatter
look and fix the content width.

Also fixed up the toggle styling which was previously broken.
2019-09-25 10:42:19 +08:00
Eloy Lafuente (stronk7) 4544d9dc46 Merge branch 'MDL-66748-master' of git://github.com/andrewnicols/moodle 2019-09-24 23:26:51 +02:00
Andrew Nicols 14d8cdcc35 MDL-66748 core_grading: Use new gradingform data providers 2019-09-24 21:04:14 +08:00
Andrew Nicols d6576ca229 MDL-66748 gradingform_rubric: Add data generators 2019-09-24 21:04:14 +08:00
Andrew Nicols c71d5bbbba MDL-66748 gradingform_guide: Add data generators 2019-09-24 21:04:14 +08:00
Tim Hunt 824d1f8f52 MDL-66754 question engine: fix lots of PHPdoc errors
This fixes essentially all the things PHPstorm was warning about in
question/engine/datalib.php and question/engine/questionusage.php.
2019-09-24 10:25:29 +01:00
Andrew Madden 1ea3940c62 MDL-65406 theme_boost: Add list markup to nav drawer for accessibility
To take advantage of native accessibility features of lists such as counting
the number of items in the list for screen readers, the nav menu should
wrap it's links in unordered list markup.
2019-09-24 14:46:21 +10:00
Jun Pataleta 844d27b2cd Merge branch 'MDL-65968-master' of git://github.com/jleyva/moodle 2019-09-24 12:01:10 +08:00
Andrew Nicols 62b45c66ad MDL-66748 core_grading: Add generator 2019-09-24 11:26:41 +08:00
Mihail Geshoski efe8c3c663 MDL-51327 core_course: Allow subdirs in edit section form 2019-09-24 09:08:14 +08:00
Peter e6445c5bd9 MDL-65315 badges: Update the class and issuer OBv2.0 url 2019-09-24 07:33:13 +08:00
Eloy Lafuente (stronk7) ef6a958dfb Merge branch 'MDL-66733-master' of git://github.com/andrewnicols/moodle 2019-09-23 23:35:42 +02:00
Eloy Lafuente (stronk7) 08a6375507 Merge branch 'MDL-65588_master' of git://github.com/dmonllao/moodle 2019-09-23 22:51:10 +02:00
Tim Hunt c7a6488fad MDL-66743 backup: reports should be able to backup module-level data 2019-09-23 19:24:33 +01:00
Tim Hunt e05d99b94f MDL-66709 backup: move question attempt data helpers to a trait
This lets plugins other than activity modules backup and restore
question attempt data.

The old backup_questions_activity_structure_step and
restore_questions_activity_structure_step base classes still exist
and work exactly the same way they did before (because they use the
trait) so this change is completely backwards compatible.

To make this work fully, a few other things in the code had to be tweaked:

* Adding restore path elements had to consider the possibility of grouped
  parents in more places.

* I needed to add protected get_task() to the restore_plugin class.
  I don't think that is a problem.

* In the restore trait, the process_question_... methods needed to be
  changed to public for some reasons to do with PHP traits that I don't
  fully understand. However, I don't think this change is a problem.

* The way question_usage restore got the new contextid had to be changed
  (or it did not work in activity contexts), but the new code looks like
  a better way to do it anyway so that is good.
2019-09-23 19:24:32 +01:00
Tim Hunt 118d62a266 MDL-66709 quiz: add a Behat test for backup/restore of quiz attempts 2019-09-23 19:21:36 +01:00
Tim Hunt a6a4034b38 MDL-66709 backup: improve some PHPdoc type hints
I hope these are right. They seem to be, and made the autocomplete
better in some backup/restore code I was writing.
2019-09-23 19:21:09 +01:00
Tim Hunt 7b1b478761 MDL-66754 question engine: make $slots argument optional
Sometimes there is not a fixed list of slots, and you just want all data.
2019-09-23 18:03:23 +01:00
Bas Brands 297f7e411c MDL-66388 h5p: add h5p atto button 2019-09-23 16:32:23 +02:00
Tim Hunt 36f90f3ef0 MDL-66750 formslib selects: handle size attribute properly 2019-09-23 12:14:11 +01:00
Jake Dallimore 74e9aeca79 Merge branch 'MDL-66075-master' of git://github.com/lameze/moodle 2019-09-23 14:14:55 +08:00
Simey Lameze 0d2b3212d6 MDL-66075 mod_forum: unit tests for get_from_discussion_ids_and_user_ids 2019-09-23 13:48:48 +08:00
Simey Lameze 6d76fc107a MDL-66075 enrol: add unit tests for search_users webservice 2019-09-23 13:07:40 +08:00
Simey Lameze 1de4baf1f1 MDL-66075 core: various fixes & code polishing
* Removes unnecessary comment in search_users() WS.
* Replaces DB call by get_course() in search_users() WS.
* Fix discussionids handling on export.php.
* Coding style fix in test_search_users unit test.
* Add missing version bump.
* phpDOc fixes in post vault.
* Fix in the dataformat callback to handle different data types.
2019-09-23 13:07:30 +08:00
Jun Pataleta 8b09690540 Merge branch 'MDL-66645' of git://github.com/stronk7/moodle 2019-09-23 11:58:43 +08:00
AMOS bot f58b8a0162 Automatically generated installer lang files 2019-09-22 00:09:11 +00:00
Gareth Barnard f254cef989 MDL-66656 format_social: Edit Summary Icon leads to 'File not found'. 2019-09-20 21:44:33 +01:00
Eloy Lafuente (stronk7) d1e051d0c7 MDL-66645 install: update the list of stale files for 3.8 2019-09-20 16:16:31 +02:00
Sara Arjona c2b4ebe9cf Merge branch 'MDL-46978-Master' of github.com:tuanngocnguyen/moodle 2019-09-20 13:07:27 +02:00
Sara Arjona 1445f82315 Merge branch 'MDL-66090_master' of git://github.com/dmonllao/moodle 2019-09-20 12:46:16 +02:00
Mark Johnson d91aa1e760 MDL-65327 performance: Lazy-load module name strings 2019-09-20 08:59:34 +01:00
Mark Johnson f3c9599e1f MDL-65335 auth: Make oauth2 enabled check more efficient 2019-09-20 08:54:40 +01:00
Jake Dallimore 564a6e8650 Merge branch 'MDL-65970-master' of git://github.com/jleyva/moodle 2019-09-20 14:27:57 +08:00
Jake Dallimore 24ddc6dc64 MDL-66075 mod_forum: add more coverage of get_from_discussion_ids
Specifically, this is now testing the $canseeprivatereplies param for
different users and over a more complete range of cases.
2019-09-20 12:16:18 +08:00
Andrew Nicols 4bb39eabc7 MDL-66733 grade: Add helper to get correct user date for grade 2019-09-20 09:50:17 +08:00
Tom Dickman 4487612c4a MDL-63453 media_videojs: Upgrade Video.JS to 7.5.5.
Upgrade Video.JS to 7.5.5
Upgrade videojs-youtube plugin to 2.6.0
Upgrade videojs-flash plugin to 2.2.2

Added additional AMD modules for bootstrapping the DOM
window and document objects to Video.JS in line with the
updates made to Video.JS.
2019-09-20 01:29:19 +00:00
Jake Dallimore 5120087808 MDL-66106 core_form: fix client side validation bug caused by MDL-65217
Forms with randomised ids need to support client side validation.
2019-09-20 09:03:25 +08:00
Jake Dallimore cddbdb20b2 MDL-66169 admin: properly set debugsmtp, which is a config.php only var
This may not be set, so care must be taken to conditionally reinstate
the value, once the test email has been sent.
2019-09-20 09:01:13 +08:00
Simey Lameze babc6bf707 MDL-66075 mod_forum: coverage for ordering in test_get_from_discussion_ids 2019-09-20 08:29:47 +08:00
Simey Lameze d72d47c115 MDL-66443 mod_forum: fix error when exporting in pdf format
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Simey Lameze 30eeb2a528 MDL-66604 mod_forum: add missing exportforum lang string
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 90093eecc1 MDL-66269 mod_forum: filter export based on user and discussion ids
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie ff0c5bbed9 MDL-66269 mod_forum: added get_from_discussion_ids_and_user_ids
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 1ff734a47d MDL-66269 mod_forum: refactor post vault class to remove duplications
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie e61a41b425 MDL-66269 mod_forum: added filters to the export form
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 32e4c582f0 MDL-66269 mod_forum: AMD module to fetch and format users
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 0f308fcda7 MDL-66269 enrol: A new webservice to search course participants
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 151ef39cd8 MDL-66269 enrol: added search_users method to course_enrolment_manager
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie c3ac38129d MDL-66269 mod_forum: removed the unnecessary hidden element
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie 078ac3aa3c MDL-66269 mod_forum: Cancelling the export should take us back to forum
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Shamim Rezaie a0185ef7b3 MDL-66269 mod_forum: the export form to use automatic class loading
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Simey Lameze fbdef95112 MDL-66314 mod_forum: fix error when exporting forum in HTML table
Part of MDL-66075.
2019-09-20 08:19:01 +08:00
Simey Lameze 75af28c73f MDL-9469 mod_forum: add exportforum capability and checks
Part of MDL-66075
2019-09-20 08:19:01 +08:00
Simey Lameze f7b7f4e679 MDL-9469 mod_forum: create basic forum export structure
Part of MDL-66075
2019-09-20 08:19:01 +08:00
Simey Lameze 357d74fda9 MDL-9469 mod_forum: add export node to settings menu
Part of MDL-66075
2019-09-20 08:19:01 +08:00
David Monllaó 2d9280e0df MDL-65588 analytics: New models for student accesses 2019-09-20 08:14:13 +08:00
David Monllaó 7d8ed90757 MDL-65588 analytics: Unit tests for any_course_access 2019-09-20 08:14:13 +08:00
David Monllaó 7b8a5bfd50 MDL-65588 tool_analytics: Alternative method to pass data to JS
The more time-splitting methods we have in core the more data we pass to
the amd module as an argument. There is a limit of 1024 characters and
a debugging message is triggered by js_call_amd if we surpass it.
2019-09-20 08:14:13 +08:00
Sara Arjona 6735197cc2 weekly release 3.8dev 2019-09-19 21:19:12 +02:00
Huong Nguyen 0fd6032ce8 MDL-66633 Quiz: Improve preview user checking 2019-09-19 16:20:42 +02:00
Nathan Nguyen 2aaac3f670 MDL-46978 core_grades: preserve category total visibility 2019-09-19 14:05:01 +10:00
Adrian Greeve f05c426357 MDL-66710 privacy: Update to template to reference js file right. 2019-09-19 10:42:48 +08:00
Andrew Nicols 1162e2c958 MDL-66675 behat: Fix typo in step function name 2019-09-19 07:30:15 +08:00
Andrew Nicols 0b07ea423b MDL-66675 behat: Add option to pause on behat failures 2019-09-19 07:30:15 +08:00
Eloy Lafuente (stronk7) 5a14a1c422 Merge branch 'MDL-66548-master' of git://github.com/bmbrands/moodle 2019-09-19 01:00:59 +02:00
Eloy Lafuente (stronk7) 0059a5e52e Merge branch 'MDL-40669' of https://github.com/paulholden/moodle 2019-09-18 23:15:13 +02:00
Paul Holden 51539ba383 MDL-40669 tool_uploaduser: set emailstop during upload Behat test. 2019-09-18 21:41:28 +01:00
Eloy Lafuente (stronk7) 502639bd3c Merge branch 'MDL-66641' of https://github.com/timhunt/moodle 2019-09-18 20:29:53 +02:00
Eloy Lafuente (stronk7) 699a12eeca Merge branch 'MDL-65878-master' of https://github.com/lucaboesch/moodle 2019-09-18 20:07:48 +02:00
Huong Nguyen 8dc015050e MDL-66633 quiz: allow to create attempts for different users
By adding a new optional param to quiz_prepare_and_start_new_attempt()
it can be used by the surrounding code to create an attempt for anybody
else (different from current $USER)

quiz attempt API should let you create an attempt for a different user
2019-09-18 19:52:09 +02:00
Eloy Lafuente (stronk7) 74241346c0 Merge branch 'MDL-65323-master' of https://github.com/snake/moodle 2019-09-18 18:15:19 +02:00
Eloy Lafuente (stronk7) 6f278d21b9 Merge branch 'MDL-63895-master' of git://github.com/vmdef/moodle 2019-09-18 17:33:17 +02:00
Eloy Lafuente (stronk7) 0fd2fd7442 Merge branch 'MDL-66536_master' of git://github.com/dmonllao/moodle 2019-09-18 16:51:40 +02:00
Eloy Lafuente (stronk7) 402966c77c Merge branch 'MDL-66091_master' of git://github.com/dmonllao/moodle 2019-09-18 16:46:51 +02:00
Sara Arjona d62447ee91 Merge branch 'MDL-63293' of https://github.com/paulholden/moodle 2019-09-18 13:39:55 +02:00
Eloy Lafuente (stronk7) 0709dfcf8b Merge branch 'MDL-40669' of https://github.com/paulholden/moodle 2019-09-18 13:13:15 +02:00
Sara Arjona 84d613deee Merge branch 'MDL-64438-master-4' of git://github.com/mihailges/moodle 2019-09-18 12:52:12 +02:00
Sara Arjona 286f876114 Merge branch 'MDL-66156-master' of https://github.com/snake/moodle 2019-09-18 12:25:36 +02:00
Mihail Geshoski 60983cc2a6 MDL-64438 block_starredcourses: Optionally show course category
AMOS BEGIN
CPY [displaycategories,block_myoverview],[displaycategories,block_starredcourses]
AMOS END
2019-09-18 17:58:24 +08:00
Mihail Geshoski d0b237b306 MDL-64438 block_recentlyaccessedcourses: Optionally show course category
AMOS BEGIN
CPY [displaycategories,block_myoverview],[displaycategories,block_recentlyaccessedcourses]
AMOS END
2019-09-18 17:57:47 +08:00
Mihail Geshoski 93ad530e8f MDL-64438 block_myoverview: Optionally display course category 2019-09-18 17:55:46 +08:00
Mihail Geshoski 704f93f46f MDL-64438 core_course: Optionally display course category 2019-09-18 17:52:20 +08:00
Jake Dallimore 61de432241 MDL-66156 block_myoverview: remove orphaned course favourite records 2019-09-18 14:33:06 +08:00
Jake Dallimore 2ab6f8a87e MDL-66156 block_myoverview: purge course favourites on course deletion. 2019-09-18 14:30:54 +08:00
David Monllaó 3581813348 MDL-66536 course: No teaching model renamed 2019-09-18 13:07:21 +08:00
David Monllaó 41db25935c MDL-66536 course: Custom message for students at risk
AMOS BEGIN
    MOV [insightinfomessage,analytics],[insightinfomessageplain,analytics]
AMOS END
2019-09-18 13:07:21 +08:00
David Monllaó 16cb4f32a0 MDL-66536 analytics: Indicators can add extra data for targets 2019-09-18 13:07:21 +08:00
David Monllaó b024720499 MDL-66536 analytics: Bulk-fetch samples data
For one_sample_per_analysable models.
2019-09-18 13:04:30 +08:00
David Monllaó 93e71c712d MDL-66091 report_insights: Unify contextwithinsights cache sets 2019-09-18 13:00:06 +08:00
Eloy Lafuente (stronk7) 1b22fec64f Merge branch 'MDL-65026-master' of git://github.com/jleyva/moodle 2019-09-18 00:49:21 +02:00
Juan Leyva 57e4faa094 MDL-65970 airnotifier: Set lower timeout for Push curl requests 2019-09-17 16:50:53 +02:00
Juan Leyva dcadc8c54c MDL-65968 notifications: Use f1 size avatars for Push notifications 2019-09-17 16:29:02 +02:00
Eloy Lafuente (stronk7) facf2f80b0 Merge branch 'MDL-62915' of https://github.com/paulholden/moodle 2019-09-17 16:21:41 +02:00
Sara Arjona 2bad312ada Merge branch 'MDL-66113-master' of git://github.com/jleyva/moodle 2019-09-17 12:03:42 +02:00
Andrew Nicols 3b4717ea4b MDL-66675 CLI: Add ANSI formatting options 2019-09-17 14:38:32 +08:00
Andrew Nicols e044c3debe MDL-66570 admin: Add setting to hide captured cron log output 2019-09-17 14:03:31 +08:00
David Monllaó 486e797c5f MDL-66091 analytics: Targets choose if there should be a report or not 2019-09-17 13:58:55 +08:00
David Monllaó 21202090f7 MDL-66091 report_insights: Usability improvements
- More feedback provided for the user once they click on useful/notuseful from the email.
- Replace the indicator calculations table headers for the table caption and
  replace the text by just "Indicators"
- Replace "System" for the site name for insights generated at system
  level
- Replace "$modelname prediction" for "$modelname" in report/insights/prediction.php
  heading

MDL-66091
2019-09-17 13:57:36 +08:00
David Monllaó d3d1615eee MDL-66090 analytics: Support user for notifications 2019-09-17 07:54:01 +08:00
Eloy Lafuente (stronk7) 37b017af3d Merge branch 'MDL-65025-master' of git://github.com/jleyva/moodle 2019-09-17 00:01:51 +02:00
Eloy Lafuente (stronk7) 164597248c Merge branch 'MDL-66293-master' of git://github.com/rezaies/moodle 2019-09-16 20:34:23 +02:00
Bas Brands 3c336f516c MDL-66548 theme_classic: secure layout block position fixes
- the secure layout for theme classic used an icorrect layout for blocks
and content. A fix has been submitted by G J Barnard.
2019-09-16 16:02:30 +02:00
Tim Hunt a3624fdf0f MDL-66685 questions: should able to save an empty question usage 2019-09-16 14:35:18 +01:00
Juan Leyva dfd4881589 MDL-65026 course: Fix modules intro formatting in WS
The Web Service seems to be doing excessive text cleaning.
2019-09-16 13:04:26 +02:00
Juan Leyva 0b9f2215d0 MDL-66113 assign: Apply user overrides in get_submission_status WS 2019-09-16 12:05:55 +02:00
Paul Holden b15bb419ba MDL-63293 enrol_manual: observe user paging config in enrol dialog. 2019-09-15 21:48:03 +01:00
Paul Holden c4e79fc604 MDL-40669 tool_uploaduser: allow emailstop to be set during upload. 2019-09-15 21:43:55 +01:00
Paul Holden 3903a26896 MDL-62915 tool_dataprivacy: don't let primary admin delete themselves. 2019-09-15 21:36:07 +01:00
Eloy Lafuente (stronk7) c2617a2878 MDL-66262 env: Moodle 3.6.x and 3.7.x do not support PHP 7.4 2019-09-13 17:41:53 +02:00
Luca Bösch 7b525dd73d MDL-65878 core_output: Move button not sticky to select field. 2019-09-13 17:21:43 +02:00
Jake Dallimore 1c3efe48f8 weekly release 3.8dev 2019-09-13 11:30:09 +08:00
Jake Dallimore c83656a6fd Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-09-13 11:30:08 +08:00
Jake Dallimore 35500af896 MDL-65323 core_favourites: replace use of deprecated phpunit methods 2019-09-13 10:21:06 +08:00
Eloy Lafuente (stronk7) ecfac20187 Merge branch 'MDL-66550-master' of git://github.com/andrewnicols/moodle 2019-09-12 15:28:06 +02:00
Andrew Nicols 419b269c9e MDL-66550 admin: The execute wrapper MUST be used in behat 2019-09-12 20:58:10 +08:00
Andrew Nicols 5034f0a12b MDL-66550 theme: Wrap JS calls in pendingJS 2019-09-12 20:58:10 +08:00
Víctor Déniz Falcón a98192b8c0 MDL-63895 user: Hide suspended enrolments to user without capability
Users without course:viewsuspendedusers capability should not view suspended
users on the participant list
2019-09-12 12:04:43 +01:00
Shamim Rezaie 74051d3b4b MDL-66293 javascript: set maximum paging bar size to 10 2019-09-12 14:23:56 +10:00
Shamim Rezaie ffa329986c MDL-66293 javascript: Added support to set bar size for paging bars 2019-09-12 14:23:56 +10:00
Andrew Nicols 82704b0d2e Merge branch 'MDL-66498_master' of git://github.com/dmonllao/moodle 2019-09-12 11:15:21 +08:00
Jake Dallimore b75e563777 Merge branch 'MDL-64917-Master' of https://github.com/tuanngocnguyen/moodle 2019-09-12 09:27:45 +08:00
Nathan Nguyen 5b54a1c726 MDL-64917 filepicker: change event dispatch 2019-09-12 10:57:21 +10:00
AMOS bot 2bf9f55af2 Automatically generated installer lang files 2019-09-12 00:09:11 +00:00
Andrew Nicols dd3e427d88 Merge branch 'MDL-66489-master' of git://github.com/rezaies/moodle 2019-09-12 07:05:50 +08:00
Eloy Lafuente (stronk7) 99c0463c0c MDL-55751 themes: document the removal of the css chunker in upgrade.txt 2019-09-11 23:25:56 +02:00
Eloy Lafuente (stronk7) 6cbc3be766 Merge branch 'MDL-55751-master' of git://github.com/bmbrands/moodle 2019-09-11 23:16:51 +02:00
Eloy Lafuente (stronk7) 61e82de3ee Merge branch 'MDL-65205-master' of git://github.com/bmbrands/moodle 2019-09-11 22:55:01 +02:00
Eloy Lafuente (stronk7) 3e9a7db3bd Merge branch 'MDL-66563' of https://github.com/timhunt/moodle 2019-09-11 20:10:33 +02:00
Andrew Nicols 76e0b6315a Merge branch 'MDL-66552-master' of https://github.com/snake/moodle 2019-09-11 21:19:51 +08:00
Shamim Rezaie 3919150d37 MDL-66489 enrol: prevent warning when the duration field is disabled 2019-09-11 20:18:43 +10:00
Shamim Rezaie 2d4ce64dde MDL-66489 enrol: Send all form data to WS and do all busines logic there
It is discouraged to use JS Date functions. We should pass all raw data to PHP.
2019-09-11 20:18:26 +10:00
Andrew Nicols 15f13cb74c Merge branch 'MDL-65429-master' of git://github.com/peterRd/moodle 2019-09-11 14:21:42 +08:00
Andrew Nicols 78b0a0c201 MDL-66653 javascript: Support ES6 dynamic imports 2019-09-11 14:06:32 +08:00
Jake Dallimore 6739739100 Merge branch 'MDL-65493-master' of git://github.com/andrewnicols/moodle 2019-09-11 13:45:19 +08:00
David Monllaó abc745fbd0 MDL-66498 analytics: get_samples() with no params limit 2019-09-11 12:44:55 +08:00
David Monllaó 4fd74fba6f MDL-66498 analytics: Avoid get_in_or_equal for big arrays
Also, join directly with context table.
2019-09-11 12:44:55 +08:00
David Monllao 500111c5d3 MDL-66498 analytics: SQL IN in chunks 2019-09-11 12:44:55 +08:00
Andrew Nicols 5f6ac2017a Merge branch 'MDL-66328' of https://github.com/timhunt/moodle 2019-09-11 12:21:14 +08:00
Andrew Nicols 20cc24e684 Merge branch 'MDL-65935-master' of git://github.com/junpataleta/moodle 2019-09-11 12:16:57 +08:00
Jake Dallimore 28be82a6a6 Merge branch 'MDL-66550-master' of git://github.com/andrewnicols/moodle 2019-09-11 10:39:17 +08:00
Eloy Lafuente (stronk7) 3c96a88cb4 Merge branch 'MDL-66436-master' of https://github.com/lucaboesch/moodle 2019-09-11 01:21:16 +02:00
Eloy Lafuente (stronk7) 6511a64fa5 Merge branch 'MDL-65310-master' of https://github.com/tsmilan/moodle 2019-09-11 00:41:22 +02:00
David Mudrák ac0a4b568b MDL-66644 admin: Display required moodle version only when declared
The minimum required Moodle version specified in the plugin's
version.php file is not a mandatory field. If it is not declared, do not
display "Moodle {$a}".
2019-09-10 18:11:09 +02:00
Andrew Nicols bb6315f281 MDL-66550 forum: Target fields in a fieldset for behat test 2019-09-10 21:29:03 +08:00
Andrew Nicols 2920155a31 MDL-66550 behat: Transform fields to search in a fieldset 2019-09-10 21:29:03 +08:00
Andrew Nicols d10ed4d240 MDL-66550 behat: Standardise finding in core functionality 2019-09-10 21:29:03 +08:00
Andrew Nicols b983ae4ab8 MDL-66550 behat: Add ability to transform a specific selector 2019-09-10 21:29:00 +08:00
Andrew Nicols 700682dc40 MDL-66550 behat: Normalise selectors better 2019-09-10 21:28:47 +08:00
Tim Hunt 287134e1dd MDL-66641 quiz stats: discriminativeefficiency is already out of 100 2019-09-10 12:11:27 +01:00
Jake Dallimore dd68a81958 Merge branch 'MDL-64094' of https://github.com/NeillM/moodle 2019-09-10 14:42:58 +08:00
Jake Dallimore 42bce7a965 Merge branch 'MDL-58992_master' of git://github.com/dmonllao/moodle 2019-09-10 13:40:23 +08:00
Jake Dallimore 527595f3f8 Merge branch 'MDL-66409-edit-numerical/master' of https://github.com/RaAstons/moodle 2019-09-10 13:34:36 +08:00
Andrew Nicols add66da52d Merge branch 'MDL-63250-master' of https://github.com/Kathrin84/moodle 2019-09-10 12:33:20 +08:00
Andrew Nicols 158df6275e Merge branch 'MDL-66537-master' of git://github.com/peterRd/moodle 2019-09-10 12:18:16 +08:00
Jake Dallimore e524921353 Merge branch 'MDL-66599_master' of git://github.com/dmonllao/moodle 2019-09-10 10:46:28 +08:00
Peter 44ad3e5171 MDL-66537 assign: Force rotate buttons to keep positioning in RTL langs 2019-09-10 10:23:13 +08:00
Andrew Nicols 95d3a87dd4 Merge branch 'MDL-66502-master' of git://github.com/junpataleta/moodle 2019-09-10 09:35:08 +08:00
Tim Hunt f1f3101b4e MDL-66328 groups: overview page can require lots of memory 2019-09-09 11:18:23 +01:00
Bas Brands 8ea1e39f4c MDL-55751 themes: remove the css chunker
The css chunker is a workaround a browser bug for old IE versions
2019-09-09 11:18:05 +02:00
Frédéric Massart f3847964b6 MDL-66502 javascript: Remove extension from AMD module names 2019-09-09 16:25:17 +08:00
Raphaël Santos 21d6123fbd MDL-66409 mod_lesson: Fix editing of numerical pages
This avoids using the "magic" `isset` function implemented
within the lesson_base class (which returns the `empty` function).
In the case of the answer beeing `0`, the test fails and the answer
is considered to be deleted.
2019-09-09 09:39:34 +02:00
Andrew Nicols 259467d283 Merge branch 'MDL-66488' of https://github.com/willob99/moodle 2019-09-09 09:07:07 +08:00
Vlad Apetrei 8cb90066d4 MDL-58992 analytics: add multi-classification to predictors
Adds multi-class capabilities to prediction processors
as well as multi-classification unit tests
2019-09-09 08:49:56 +08:00
David Monllaó f5583e9718 MDL-66599 analytics: New index for analytics_used_analysables 2019-09-09 08:30:50 +08:00
Jun Pataleta 0aa833de2e MDL-65935 mod_feedback: Use new core/checkbox_toggleall
Plus:
* Add labels for each nonrespondent's checkbox to improve
accessibility.
* Remove the now-unused mod/feedback/feedback.js
2019-09-08 10:01:05 +08:00
Will O'Brien 163750f3e5 MDL-66488 mod_assign: make submission comments textarea expandable
Allow submission comments textarea on assignment "View all submissions"
page to expand both ways, rather than just vertically.
2019-09-06 23:15:52 +01:00
Neill Magill d2262ecea5 MDL-64094 dashboard: Remove unnecesary behat steps
We do not need to explicitly log out at the end of a behat test, the
browser session is killed automatically during the scenario teardown.
2019-09-06 08:59:18 +01:00
Neill Magill 74d7ab50fd MDL-64094 dashboard: Improve the nomenclature
The use of hidden for the course tiles on the course overview is
causing some users to confuse it with course visibility to students
this change aims to make it clear that the functionality only affects
the user's own instance of the block.
2019-09-06 08:59:18 +01:00
Trisha Milan ff649d7bd4 MDL-65310 block_timeline: Hide activities without due date 2019-09-06 13:46:19 +10:00
Andrew Nicols 05abf2cf2f MDL-65493 core: Add pendingJS around pubsub.publish 2019-09-06 08:40:56 +08:00
Andrew Nicols 2cd63188aa MDL-65493 message: The execute wrapper MUST be used 2019-09-06 08:40:56 +08:00
Andrew Nicols 11970d0a7f MDL-65493 message: JS fixes for random behat fails 2019-09-06 08:40:56 +08:00
Luca Bösch fd5903ef8d MDL-66436 glossary: Edit and delete categories form styles. 2019-09-05 18:03:52 +02:00
Eloy Lafuente (stronk7) a672f021ea weekly release 3.8dev 2019-09-05 17:14:21 +02:00
Eloy Lafuente (stronk7) 245cc67078 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-09-05 17:14:18 +02:00
Jake Dallimore a7e33b03a4 Merge branch 'MDL-56223-master' of git://github.com/lameze/moodle 2019-09-05 17:20:03 +08:00
Simey Lameze 1db417c2f2 MDL-56223 calendar: fix wrong create_calendar_events WS phpdoc 2019-09-05 17:15:17 +08:00
Simey Lameze 2d132fda75 MDL-56223 calendar: show the number of deleted events 2019-09-05 17:15:14 +08:00
Bas Brands a4ae06306d MDL-65205 themes: message interface message styles
* change shadow for hovering over messages
* remove dependancy on the sass secondary color
2019-09-05 10:47:43 +02:00
Simey Lameze d5727ed3ba MDL-56223 calendar: skip events updating if nothing has changed 2019-09-05 16:18:37 +08:00
Andrew Nicols 413172521a Merge branch 'MDL-65550-master' of git://github.com/jleyva/moodle 2019-09-05 11:38:36 +08:00
Jake Dallimore cd1bdc7946 Merge branch 'MDL-66551-master' of git://github.com/lameze/moodle 2019-09-05 11:12:35 +08:00
Andrew Nicols 506a0f4bc0 MDL-66340 setup; Whitepace fix 2019-09-05 10:50:25 +08:00
Andrew Nicols bca45d08fd Merge branch 'MDL-66340' of https://github.com/brendanheywood/moodle 2019-09-05 10:45:55 +08:00
Simey Lameze 8c07d7d760 MDL-66551 core_user: remove orphaned calendar subscriptions 2019-09-05 10:21:05 +08:00
Andrew Nicols 3af598c75c Merge branch 'MDL-66391-master' of https://bitbucket.org/isprynt/moodle 2019-09-05 09:59:01 +08:00
Jake Dallimore 2796356278 Merge branch 'MDL-66367_master' of git://github.com/markn86/moodle 2019-09-05 09:26:28 +08:00
Eloy Lafuente (stronk7) 9533156775 Merge branch 'MDL-66072-master-3' of git://github.com/peterRd/moodle 2019-09-05 02:48:00 +02:00
Eloy Lafuente (stronk7) 1e248a654e Merge branch 'MDL-66560-master' of https://github.com/lucaboesch/moodle 2019-09-05 02:15:15 +02:00
AMOS bot cf39122c79 Automatically generated installer lang files 2019-09-05 00:11:50 +00:00
Mahmoud.Kassaei 1d89daf329 MDL-66563 Questions: Drag and Drop qtypes in high-contrast 2019-09-04 15:32:16 +01:00
Segun Babalola 85d142f56a MDL-66391 core_course: Fix to send correct Ajax parameter for userid 2019-09-04 12:10:53 +01:00
Mark Nelson af8a70756f MDL-66367 core: don't cache templates if templaterev is invalid 2019-09-04 12:54:02 +02:00
Mark Nelson 9e5edc7f68 MDL-66367 core: use templaterev as the cache key when getting templates 2019-09-04 12:54:02 +02:00
Mark Nelson 988482f077 MDL-66367 core: make templaterev available in JS 2019-09-04 12:54:02 +02:00
Mark Nelson e63395bbed MDL-66367 core: added templaterev variable 2019-09-04 12:54:02 +02:00
Mark Nelson 5beb388516 MDL-66367 core: added new cachetemplates setting 2019-09-04 12:54:02 +02:00
Andrew Nicols eb70a00163 Merge branch 'MDL-66137-38_mod_assign_marking_workflow_incorrect_grade_display' of https://github.com/tomdickman/moodle 2019-09-04 13:44:49 +08:00
Tom Dickman 028c5ed5f9 MDL-66137 mod_assign: fixed marking workflow incorrect grade display
Aligned logic between quick grading changes and set marking workflow state changes to accurately
finalise or remove final grade from the gradebook, depending on the marking workflow state if
being used.
2019-09-04 14:29:30 +10:00
Andrew Nicols f37035cb04 Merge branch 'MDL-66554-master' of git://github.com/jleyva/moodle 2019-09-04 12:24:02 +08:00
Andrew Nicols 38d2c992e4 Merge branch 'MDL-66500-master-unoconvwarning' of git://github.com/mudrd8mz/moodle 2019-09-04 12:14:00 +08:00
Ryan Wyllie 3fb0cbd4bb MDL-62284 javascript: prevent nested JS mustache handler calls
Prevent the JS mustache helper from being executed from within
the render call of another mustache helper because it can allow
users to inject JS into the page.
2019-09-04 11:22:51 +08:00
Ryan Wyllie f9664b0c19 MDL-62284 output: prevent nested JS mustache handler calls
Prevent the JS mustache helper from being executed from within
the render call of another mustache helper because it can allow
users to inject JS into the page.
2019-09-04 11:22:51 +08:00
Jake Dallimore 52a74c46ba Merge branch 'MDL-66265-master' of git://github.com/andrewnicols/moodle 2019-09-04 11:02:27 +08:00
Andrew Nicols 324f76308d MDL-66265 javascript: More specific overrides in eslintrc 2019-09-04 10:47:21 +08:00
AMOS bot 8fca8c140c Automatically generated installer lang files 2019-09-04 00:10:59 +00:00
Eloy Lafuente (stronk7) 9483886459 Merge branch 'MDL-66265-master' of git://github.com/andrewnicols/moodle 2019-09-04 02:07:42 +02:00
Eloy Lafuente (stronk7) 700e5ca69c Merge branch 'MDL-66532-master' of git://github.com/andrewnicols/moodle 2019-09-04 01:46:11 +02:00
Peter 14db737452 MDL-66072 core: Remove ancillary sharing functions and code 2019-09-04 07:09:43 +08:00
Peter 020bad738a MDL-66072 core: Remove course sharing and related capabilities 2019-09-04 07:09:05 +08:00
Andrew Nicols 9ec0cbe9ee MDL-66265 javascript: Ignore camelcase in Gruntfile 2019-09-04 06:48:11 +08:00
Andrew Nicols f59ac4166c MDL-66265 javascript: Add jshint ignore for ES6 files in root dir 2019-09-04 06:48:11 +08:00
Andrew Nicols b5fbca8f4a MDL-66265 javascript: Add basic jshint ignores 2019-09-04 06:48:11 +08:00
Andrew Nicols ad2574f770 MDL-66265 javascript: Bump jshint version 2019-09-04 06:48:11 +08:00
Andrew Nicols d2c0f54cea MDL-66532 javascript: Lock NPM version for NVM 2019-09-04 06:45:51 +08:00
Eloy Lafuente (stronk7) 3085a5843a Merge branch 'MDL-63315-master' of https://github.com/sammarshallou/moodle 2019-09-04 00:14:53 +02:00
Eloy Lafuente (stronk7) 3213963f96 MDL-66120 block_community: make upgrade steps match current version 2019-09-03 12:32:13 +02:00
Eloy Lafuente (stronk7) ea1283ddca Merge branch 'MDL-66120-master' of git://github.com/peterRd/moodle 2019-09-03 12:27:34 +02:00
Andrew Nicols 9bb085dd1a Merge branch 'MDL-66434-master' of https://github.com/lucaboesch/moodle 2019-09-03 12:40:38 +08:00
Andrew Nicols fce4664899 Merge branch 'MDL-62161' of https://github.com/paulholden/moodle 2019-09-03 11:26:19 +08:00
Jake Dallimore 3f64863d22 Merge branch 'MDL-38555-master' of https://github.com/sammarshallou/moodle 2019-09-03 11:07:10 +08:00
Peter 1d6f041a2e MDL-66120 block_community: Remove community block and related caps
With the sunsetting of moodle.net, the community block will no longer
be functional, so removing the block and related caps
2019-09-03 09:30:50 +08:00
Andrew Nicols ebd30140dc Merge branch 'MDL-65042-master' of git://github.com/jleyva/moodle 2019-09-03 09:29:00 +08:00
AMOS bot b453627935 Automatically generated installer lang files 2019-09-03 00:11:24 +00:00
AMOS bot ecf1234950 Automatically generated installer lang files 2019-09-03 00:11:23 +00:00
Andrew Nicols 76b5fd3e11 Merge branch 'MDL-66504' of git://github.com/stronk7/moodle 2019-09-03 07:04:18 +08:00
Andrew Nicols 932d89250d Merge branch 'MDL-66229-master' of git://github.com/jleyva/moodle 2019-09-03 07:02:40 +08:00
Eloy Lafuente (stronk7) 5795785472 Merge branch 'MDL-66457-master' of git://github.com/andrewnicols/moodle 2019-09-03 00:54:42 +02:00
Eloy Lafuente (stronk7) 1bf2b6d52a MDL-66504 lang: Apply cantblockuser changes to behat tests 2019-09-02 19:00:28 +02:00
Juan Leyva d4985a7739 MDL-66501 tool_mobile: Prevent URLs in custom scheme 2019-09-02 17:04:35 +02:00
Jun Pataleta b4c92fb75b MDL-66187 format_singleactivity: Make sure available types is not empty 2019-09-02 17:04:35 +02:00
Andrew Nicols 208397c120 MDL-66187 course: Respect :addinstance in single activity format 2019-09-02 17:04:35 +02:00
Andrew Nicols ed080a580f MDL-66181 course: Only assign roles that the user is allowed to assign 2019-09-02 17:04:35 +02:00
Andrew Nicols 8cb4578de8 MDL-66181 behat: You check checkboxes, not click them 2019-09-02 17:04:35 +02:00
Michael Hawkins 32e2e06a87 MDL-55451 mod_forum: Limit subscription redirect to internal URLs 2019-09-02 17:04:35 +02:00
David Monllaó d3253b73c4 MDL-66069 mlbackend_python: Bump to a new version of the package 2019-09-02 17:04:35 +02:00
sam marshall 46875866c6 MDL-63315 DB: Postgres - Clear cursors in persistent connection
If there is a PHP fatal error and destructors do not run (this can
happen in out-of-memory errors, and maybe if there is an error in a
previous destructor) then Postgres cursors may be left open.

Usually this does not cause a problem because the connection is
closed anyway, but if using persistent connections, a future
request may reuse the connection with a cursor open. It then gets
errors when it tries to create a new cursor with the same name.

This change closes all cursors at the start of a persistent
connection.
2019-09-02 14:08:57 +01:00
sam marshall 109c77d37d MDL-38555 Forms: Prevent multiple clicking of submit button 2019-09-02 11:46:12 +01:00
Jake Dallimore b9679e69ec MDL-66552 core: move and rename relativedatestimediffformat string
AMOS BEGIN
    MOV [relativedatestimediffformat,moodle],[dateintervaldayshoursmins,langconfig]
AMOS END
2019-09-02 10:55:37 +08:00
Simey Lameze 5a1fd6e854 MDL-66551 core_user: delete_user() should remove users calendar subs 2019-09-02 10:24:06 +08:00
Eloy Lafuente (stronk7) 563888202e Merge branch 'MDL-66575-master' of https://github.com/snake/moodle 2019-09-01 16:52:34 +02:00
Jake Dallimore d2c09e8ffd MDL-66575 mod_assign: fix first day of current month behat edge case
What we really want to test in this behat test is the 2 extremes:
the user who started a long time ago and doesn't have access any more
and the user who started recently, who does have access. To fix all
problems with datetime clashes, it's probably better to just use
'yesterday' for the current student's enrolment start time.
2019-09-02 13:11:49 +08:00
Andrew Nicols 867dc0b4a2 Merge branch 'MDL-33087' of https://github.com/paulholden/moodle 2019-09-02 10:47:42 +08:00
Jake Dallimore 726a8284af Merge branch 'MDL-66376-master' of git://github.com/jleyva/moodle 2019-09-02 10:32:28 +08:00
David Mudrák da0dbeeb99 MDL-66504 lang: Use the new strings in the Behat scenario 2019-09-01 12:33:24 +02:00
Helen Foster 7ee90659ee MDL-66504 lang: Import fixed English strings (en_fix)
Significant string changes:

- configgeneralfiles,core_backup - includes explanation of implications
  of settings
- mobilenotificationsdisabledwarning,tool_mobile - location corrected
- statsreport14,core - 'views/posts' corrected to 'posts/views'
- err_nousers,core_completion - explanation of who completion
- information is displayed for errorcourselisting,block_community - note
  about sunsetting moodle.net
2019-09-01 12:31:15 +02:00
Paul Holden d19a7b2794 MDL-62161 user: preserve all selected users between searches. 2019-08-30 14:37:11 +01:00
Paul Holden 580ed1a252 MDL-33087 tool_capability: correct role override link. 2019-08-30 14:34:25 +01:00
Luca Bösch 5b48fefa56 MDL-66560 import: Format course search UI elements. 2019-08-30 11:25:17 +02:00
Andrew Nicols 605550a2d8 MDL-66457 behat: simplify selector search 2019-08-30 15:13:07 +08:00
Luca Bösch 20f166cf55 MDL-66434 mod_data: Align 'Field description' field as all other fields. 2019-08-30 07:58:52 +02:00
Jake Dallimore 310d6901f9 weekly release 3.8dev 2019-08-30 13:12:04 +08:00
Adrian Greeve f69543d741 Merge branch 'MDL-66558-master' of https://github.com/snake/moodle 2019-08-30 10:41:45 +08:00
Jake Dallimore cb14d4d811 MDL-66558 core_course: fix edge case in relative dates behat feature 2019-08-30 10:19:42 +08:00
Peter 474a96d707 MDL-65429 mod_forum: Indicate subs fetch completion with no subs
Unit tests updated to make sure only a single query is executed after
multiple reads
2019-08-30 09:07:22 +08:00
Eloy Lafuente (stronk7) 78168d7c9b MDL-66326 Global search: Unit test fix for Oracle 2019-08-30 00:17:12 +02:00
Juan Leyva 7a30377dc0 MDL-66554 mod_scorm: Set module viewed in WS 2019-08-29 20:45:43 +01:00
Juan Leyva cd43240d77 MDL-66376 webservice: Return user private access key for fetching files 2019-08-29 20:02:48 +01:00
Jake Dallimore 9e93b2f20e Merge branch 'MDL-66139' of https://github.com/stronk7/moodle 2019-08-29 11:51:06 +08:00
Adrian Greeve 5872c4d43e Merge branch 'MDL-65969-master' of git://github.com/jleyva/moodle 2019-08-29 11:14:07 +08:00
Netica Informática d17bf23e8a MDL-66139 cachestore_redis: Fix connection problems when port is not set
Due to some changes in Redis 5 php extension Moodle fails to connect via TCP when
no port is set. It's fixed upstream in phpredis repo (version 5.0.0, 5.0.1 and
5.0.2 affected so far), but with this patch we'll send the right port anyway.
2019-08-28 20:57:40 +02:00
Eloy Lafuente (stronk7) 998f605d5c Merge branch 'MDL-66133-master' of git://github.com/abias/moodle 2019-08-28 17:38:25 +02:00
Eloy Lafuente (stronk7) fd3e11a6de Merge branch 'MDL-66326-master' of https://github.com/sammarshallou/moodle 2019-08-28 17:24:35 +02:00
Eloy Lafuente (stronk7) e15f301404 Merge branch 'master_MDL-65116' of https://github.com/yao9394/moodle 2019-08-28 16:39:49 +02:00
Eloy Lafuente (stronk7) 84c2a4ec54 Merge branch 'MDL-60341_master' of git://github.com/markn86/moodle 2019-08-28 15:46:09 +02:00
Jake Dallimore abe72d078e Merge branch 'MDL-66244-master' of git://github.com/jleyva/moodle 2019-08-28 17:42:07 +08:00
Juan Leyva 47138d9157 MDL-66244 message: Include group sender images in payload
Android 9 notifications now displays two image icons in conversations.
The group and the sender.
2019-08-28 10:33:59 +01:00
Adrian Greeve 34859ec08e Merge branch 'MDL-66230' of https://github.com/paulholden/moodle 2019-08-28 14:54:36 +08:00
Mark Nelson 8e86a8d2db MDL-60341 core_cache: show cache definitions that can use local store 2019-08-28 14:00:38 +08:00
Adrian Greeve 06888cfef9 Merge branch 'MDL-66374-master' of git://github.com/jleyva/moodle 2019-08-28 13:54:03 +08:00
Adrian Greeve db0fb28b4a Merge branch 'MDL-66375-master' of git://github.com/jleyva/moodle 2019-08-28 13:33:05 +08:00
Adrian Greeve ed06cb4ecf Merge branch 'MDL-66458-master' of git://github.com/crazyserver/moodle 2019-08-28 11:25:16 +08:00
Adrian Greeve 1e9040f239 Merge branch 'MDL-66461-master' of git://github.com/jleyva/moodle 2019-08-28 11:15:28 +08:00
Adrian Greeve ef848e0aa8 Merge branch 'MDL-66468-master' of git://github.com/jleyva/moodle 2019-08-28 08:54:26 +08:00
Eloy Lafuente (stronk7) 1f1c48047f Merge branch 'MDL-66446-master' of git://github.com/junpataleta/moodle 2019-08-28 00:24:51 +02:00
Adrian Greeve a08fb2388c Merge branch 'MDL-65653-master' of git://github.com/jleyva/moodle 2019-08-27 15:07:50 +08:00
Brendan Heywood 4ed105a9fd MDL-66340 setup: Add after_config for after setup.php is loaded 2019-08-27 13:24:15 +10:00
Adrian Greeve 1084baf811 Merge branch 'MDL-66016-master' of git://github.com/abias/moodle 2019-08-27 09:32:42 +08:00
Eloy Lafuente (stronk7) 0b5990ab60 MDL-66184 core: Update composer to apply for php 7.1.0 as min
With behat extension v3.38.2 we started requiring php 7.1.0
(same requirement than core 3.8.x). This bumps all the components
in the lock file to suit that requirement.

Generated with php 7.1.x.
2019-08-27 00:42:30 +02:00
David Mudrák b49bf4299c MDL-66500 lang: Add the unoconvwarning string back
It has been deprecated and removed by mistake.
2019-08-26 21:26:38 +02:00
Eloy Lafuente (stronk7) 40e0d6c4a7 Merge branch 'MDL-66309-master' of https://github.com/sammarshallou/moodle 2019-08-26 20:15:11 +02:00
Eloy Lafuente (stronk7) 6d6431fa23 Merge branch 'MDL-66312-master' of git://github.com/andrewnicols/moodle 2019-08-26 19:38:45 +02:00
Eloy Lafuente (stronk7) 4ae788399e Merge branch 'MDL-66061-master' of git://github.com/jleyva/moodle 2019-08-26 16:29:16 +02:00
Alexander Bias 8196aa4437 MDL-66016 block_myoverview: Improve settings page 2019-08-23 20:44:19 +02:00
Alexander Bias 2276614cd8 MDL-66016 block_myoverview: Make course filter options configurable 2019-08-23 20:44:19 +02:00
Alexander Bias cd4abbc740 MDL-66016 block_myoverview: Add 'All' course filter 2019-08-23 20:44:19 +02:00
Alexander Bias ee47c8fd96 MDL-66016 block_myoverview: Add missing template example context items 2019-08-23 20:44:19 +02:00
Alexander Bias 535cec788e MDL-66016 block_myoverview: Rename 'all courses except hidden' in AMOS
AMOS BEGIN
 MOV [allexcepthidden,block_myoverview],[all,block_myoverview]
 MOV [aria:allcoursesexcepthidden,block_myoverview],[aria:allcourses,block_myoverview]
AMOS END
2019-08-23 20:44:19 +02:00
Alexander Bias 5345004301 MDL-66016 block_myoverview: Rename unused 'all courses' in AMOS
AMOS BEGIN
 MOV [all,block_myoverview],[allincludinghidden,block_myoverview]
 MOV [aria:allcourses,block_myoverview],[aria:allcoursesincludinghidden,block_myoverview]
AMOS END
2019-08-23 20:44:19 +02:00
Alexander Bias 7e00bfd9f1 MDL-66133 user: Fix code style for existing comments 2019-08-23 20:43:27 +02:00
Alexander Bias a292ed5472 MDL-66133 user: Add setting to configure user filters 2019-08-23 20:43:26 +02:00
Eloy Lafuente (stronk7) 0dca957716 weekly release 3.8dev 2019-08-23 19:16:21 +02:00
Jun Pataleta d602fc0de1 Merge branch 'MDL-66483' of git://github.com/stronk7/moodle 2019-08-23 20:15:45 +08:00
sam marshall 7ba2a20166 MDL-66326 Global search: Delete from index when courses are deleted
Adds new API support within search engines for optional methods to
delete data for courses and contexts, and implements this for the
two core search plugins (simpledb and solr).

The new API is automatically called when courses or contexts are
deleted. When a whole course is deleted, it only sends the course
delete rather than sending 1,000 separate context deletions as
each activity/block is deleted.
2019-08-23 11:51:50 +01:00
sam marshall b174e5d03b MDL-66309 block_recentlyaccesseditems: Improve upgrade performance 2019-08-23 11:34:32 +01:00
Eloy Lafuente (stronk7) 9900a6dd47 MDL-66483 lib: remove recent xmlize dep on setuplib/CFG
This removes the dependency added by MDL-66110 (aiming to fix
a CI job). So we keep things as they were and will fix the
CI job separately.
2019-08-23 11:21:28 +02:00
Jun Pataleta 50987d04ea MDL-66446 course: Make sure tags are on when logging updated settings 2019-08-23 15:57:52 +08:00
Pau Ferrer Ocaña 2ddbc651df MDL-66458 forum: Fix noviewdiscussionspermission string 2019-08-23 08:31:11 +02:00
Adrian Greeve 9e4178a465 weekly release 3.8dev 2019-08-23 12:55:05 +08:00
Adrian Greeve ebbf41f9f8 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-08-23 12:54:56 +08:00
John Yao 62f1640df2 MDL-65116 mod_assign : Assignment due date does not update for groups.
This commit fixes the assignment due date not showing correctly according to groups selected by users who can view grades
2019-08-23 13:08:53 +10:00
Jun Pataleta 6e40de2d46 Merge branch 'MDL-66110-master-fix' of git://github.com/junpataleta/moodle 2019-08-23 10:21:17 +08:00
Jun Pataleta 343ffc1000 MDL-66110 core: Require setuplib.php once as it's required by xmlize.php 2019-08-23 10:14:38 +08:00
Juan Leyva 418a86c660 MDL-66468 file: Return text content when using IGNORE_FILE_MERGE 2019-08-22 13:10:39 +01:00
Jun Pataleta 191d4bc191 Merge branch 'MDL-66110-master-fix' of git://github.com/junpataleta/moodle 2019-08-22 16:24:10 +08:00
Jun Pataleta 669de78352 MDL-66110 dml: Undo table name fix when table name's used as parameter 2019-08-22 16:16:08 +08:00
Ryan Wyllie f12c591807 MDL-66110 dml: use fix_table_name for all mysql table names
Changed all of the places that were manually prefixing the table
name to instead fix the table name with the fix_table_name
function.
2019-08-22 16:03:33 +08:00
Adrian Greeve 2c0d8377a6 Merge branch 'MDL-66378-master' of git://github.com/andrewnicols/moodle 2019-08-22 09:27:57 +08:00
Andrew Nicols 519e17a763 MDL-66378 behat: Increase window size for rubric tests 2019-08-22 07:56:19 +08:00
Andrew Nicols dbcbee4133 MDL-66378 behat: Change screen size to small to work around UI bugs 2019-08-22 07:56:19 +08:00
Jun Pataleta ad534481f8 Merge branch 'MDL-66336_master' of https://github.com/marxjohnson/moodle 2019-08-21 22:41:41 +08:00
Juan Leyva 10b1b82911 MDL-66461 forum: Use correct component for forum strings 2019-08-21 13:21:32 +01:00
Jun Pataleta 74a9ee3277 Merge branch 'MDL-66241_master' of git://github.com/dmonllao/moodle 2019-08-21 19:52:03 +08:00
Juan Leyva b0c785e271 MDL-66461 forum: Use correct notification class 2019-08-21 12:50:30 +01:00
Jun Pataleta 7c50f31dad Merge branch 'MDL-66210_master' of git://github.com/dmonllao/moodle 2019-08-21 19:48:10 +08:00
Jun Pataleta 2b29298f92 Merge branch 'MDL-65993_master' of git://github.com/dmonllao/moodle 2019-08-21 19:32:03 +08:00
Juan Leyva 20570e5d9f MDL-65550 webservice: Return in get_site_info WS if user is admin 2019-08-21 12:31:49 +01:00
Adrian Greeve 0052d1b666 Merge branch 'MDL-65443' of https://github.com/NeillM/moodle 2019-08-21 16:35:34 +08:00
Neill Magill 1f445d1625 MDL-65443 core: Improve class descriptions for locking events 2019-08-21 09:02:03 +01:00
Adrian Greeve 6f35cc69a0 Merge branch 'MDL-66369-master' of git://github.com/aanabit/moodle 2019-08-21 13:53:15 +08:00
Adrian Greeve 4ca1664c9f Merge branch 'MDL-66384-master' of git://github.com/andrewnicols/moodle 2019-08-21 13:25:35 +08:00
Jun Pataleta ff6a7345f7 Merge branch 'MDL-66110-master' of https://github.com/ryanwyllie/moodle 2019-08-21 09:57:49 +08:00
Adrian Greeve 148620381c Merge branch 'MDL-66311-master' of git://github.com/vmdef/moodle 2019-08-21 09:47:44 +08:00
Adrian Greeve 700adfb9cf Merge branch 'MDL-66378-master' of git://github.com/andrewnicols/moodle 2019-08-21 08:54:34 +08:00
Andrew Nicols 6fd975cc07 MDL-66378 behat: Correct grammar of resize step 2019-08-21 08:39:51 +08:00
Andrew Nicols 8a0d0cb4b1 MDL-66378 grade: Set window size to large for rubric tests 2019-08-21 08:39:28 +08:00
Andrew Nicols a6df6800d4 MDL-66378 behat: All args are required for document.evaluate 2019-08-21 08:24:08 +08:00
AMOS bot e36a1d4bdd Automatically generated installer lang files 2019-08-21 00:11:07 +00:00
Víctor Déniz Falcón 93c539d220 MDL-66311 core_analytics: better handling of action menus in behat tests 2019-08-20 22:58:33 +01:00
Jun Pataleta 089d387a31 Merge branch 'MDL-66148-master' of https://github.com/ryanwyllie/moodle 2019-08-20 17:07:59 +08:00
Adrian Greeve aabd022d2a Merge branch 'MDL-65972-master' of git://github.com/bmbrands/moodle 2019-08-20 16:49:34 +08:00
Neill Magill e3ec42093a MDL-65443 core: Log when a context is locked or unlocked 2019-08-20 08:52:35 +01:00
Jun Pataleta d9c910a76f Merge branch 'MDL-64437-master' of git://github.com/mihailges/moodle 2019-08-20 14:19:34 +08:00
Adrian Greeve 5074882e13 Merge branch 'MDL-66378-master' of git://github.com/andrewnicols/moodle 2019-08-20 13:43:11 +08:00
Jun Pataleta fa8be3f4fb Merge branch 'MDL-65507-master' of git://github.com/mihailges/moodle 2019-08-20 11:57:30 +08:00
Adrian Greeve f9faab7779 MDL-65404 core_user: Removal of additional empty line. 2019-08-20 10:27:02 +08:00
Adrian Greeve 0ee9c67dfb Merge branch 'MDL-65404-master' of https://github.com/aanabit/moodle 2019-08-20 10:13:31 +08:00
Adrian Greeve 98d1ac3caf Merge branch 'MDL-65083-master' of git://github.com/bmbrands/moodle 2019-08-20 10:03:25 +08:00
Amaia Anabitarte 6ba44c5f49 MDL-65404 tool_uploaduser: Changing When and Then steps 2019-08-20 10:01:44 +08:00
Adrian Greeve 6e6cfab790 Merge branch 'MDL-65561-master' of git://github.com/bmbrands/moodle 2019-08-20 09:36:11 +08:00
AMOS bot 10194bb830 Automatically generated installer lang files 2019-08-20 00:10:35 +00:00
François Moreau 6ab44bdbc6 MDL-65404 tool_uploaduser: Add a column for enrolment time start. 2019-08-19 14:25:24 -04:00
Jun Pataleta 11b05b07c9 Merge branch 'MDL-46317-master' of git://github.com/rezaies/moodle 2019-08-19 23:32:41 +08:00
Juan Leyva 48f5ca7bee MDL-66061 comments: Support pagination and sorting in get_comments WS 2019-08-19 10:42:25 +01:00
Adrian Greeve d9ae0fdd96 Merge branch 'MDL-65604-master' of git://github.com/andrewnicols/moodle 2019-08-19 16:26:34 +08:00
Bas Brands b14d92a844 MDL-65972 course: add a bigger margin above the activity navigation
* this will help making it easier to distinguish between form and
activity navigation
2019-08-19 08:28:04 +02:00
Bas Brands 549a45808d MDL-65561 themes: user date filters display fixes 2019-08-19 08:24:04 +02:00
Bas Brands d470c68b1f MDL-65083 theme_boost: update uses of pull-xs-right 2019-08-19 08:16:47 +02:00
Adrian Greeve 52070868a8 Merge branch 'MDL-65886-MOODLE-master' of https://github.com/kristian-94/moodle 2019-08-19 14:13:45 +08:00
Mihail Geshoski 5efafb8d2d MDL-64437 assignment: Fix element overlaping in low screen resolution 2019-08-19 13:31:01 +08:00
Mihail Geshoski c8a14cb8ba MDL-65507 mod_data: Remove unnecessary record created event 2019-08-19 13:26:36 +08:00
Adrian Greeve ee8f44db8c Merge branch 'MDL-66327-master' of git://github.com/andrewnicols/moodle 2019-08-19 10:32:39 +08:00
Andrew Nicols dafa2c6aa5 MDL-66378 competency: Add pending promises to competency chooser 2019-08-19 08:16:41 +08:00
Andrew Nicols 460a0a74c4 MDL-66378 behat: JS does not work with newlines in an xpath 2019-08-19 08:16:40 +08:00
Andrew Nicols 221bfed37b MDL-66378 behat: Fix use of before/after selectors 2019-08-19 08:16:40 +08:00
Andrew Nicols 989f380089 MDL-66378 behat: Add partial named selector for whole autocomplete field 2019-08-17 11:44:48 +08:00
Andrew Nicols 7d6d23294f MDL-66378 behat: Before/after detection should be constrainable
The default before/after detection checks the entire body. Any match of
the text will therefore be found.

Add support for specification of a container for the nodes.
2019-08-17 11:44:48 +08:00
Andrew Nicols 17a7dc9da5 MDL-66378 behat: Add non-JS fallback for before/after 2019-08-17 11:44:48 +08:00
sam marshall 5298a6bc11 MDL-66378 Behat: Speed up 'before/after' step in Chrome
On some Chrome versions the xpath used for before/after is slow
and (sometimes) uses a lot of memory. This change uses pure
JavaScript to do the before/after calculation, which should always
be fast.
2019-08-17 11:44:48 +08:00
Andrew Nicols 44de5278a5 MDL-66378 behat: Correct invalid uses of selection from dropdown 2019-08-17 11:44:48 +08:00
Andrew Nicols beae3feb54 MDL-66378 report_participation: Correct label for target 2019-08-17 11:44:48 +08:00
Andrew Nicols db89a31d2e MDL-66378 gradereport_singleview: Add missing label for dropdown 2019-08-17 11:44:48 +08:00
Juan Leyva a927fcdc7b MDL-65042 rating: Fix incorrect image generated for user in rating 2019-08-16 15:41:21 +01:00
Juan Leyva 29cc69f3c0 MDL-65025 forum: Fix text formatting (check messagetrust) in WS 2019-08-16 12:58:47 +01:00
Mark Johnson 3b75d14315 MDL-66336 courses: Show an error when no course categories are visible 2019-08-16 08:24:48 +01:00
Kristian Ringer 8aaa2b5de7 MDL-65886 assign: Reset numfiles to 0 when removing a file submission 2019-08-16 15:04:42 +10:00
Amaia Anabitarte c0375ba73f MDL-66369 libraries: Remove [modname]_scale_used functions
These functions were only used by the deprecated function
which was deprecated in 3.1, and removed in 3.6.
2019-08-16 11:56:17 +08:00
Andrew Nicols 3d18e5cfd6 MDL-66378 behat: Update screen sizes to Y2K standards 2019-08-16 11:42:45 +08:00
Andrew Nicols 5a44daadf9 MDL-66378 behat: Update dependencies for chrome webdriver fix 2019-08-16 11:42:45 +08:00
Andrew Nicols 6654ac1151 MDL-66312 js: Autocomplete promises were inside out
The pending promise should nott be resolved until the changes are
complete.
Previously the resolution of the pendingPromise was triggering the other
changes.
2019-08-16 11:40:16 +08:00
Andrew Nicols 7e16c70b52 weekly release 3.8dev 2019-08-16 11:06:51 +08:00
Andrew Nicols 4cb6508adb Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-08-16 11:06:49 +08:00
Juan Leyva 62b40d2743 MDL-65969 course: Indicate when the module is not linking to a new page 2019-08-15 20:33:08 +01:00
Juan Leyva d0342c8ec9 MDL-65653 book: Display hidden chapters in the structure content 2019-08-15 14:01:27 +01:00
Mihail Geshoski 89d8dec35f MDL-65653 book: Update unit tests 2019-08-15 13:39:54 +01:00
Mihail Geshoski 794604db6d MDL-65653 book: Display hidden chapters in WS when user has capability 2019-08-15 13:39:36 +01:00
Juan Leyva 77cfbb626e MDL-66229 tool_mobile: New return field "disabled" in get_content WS 2019-08-15 13:29:16 +01:00
Juan Leyva 88932e49df MDL-66375 tool_mobile: Add new option in the disabled features selector
We must allow site admins to remotely disable that feature in the mobile app
2019-08-15 12:08:43 +01:00
Juan Leyva 578586703f MDL-66374 group: Add existing WS to the mobile service 2019-08-15 11:55:57 +01:00
Andrew Nicols 3d46346094 Merge branch 'MDL-35939-master' of git://github.com/rezaies/moodle 2019-08-15 12:02:11 +08:00
Jun Pataleta 5611d0cb1a Merge branch 'm38_MDL-66140_Mitigate_PECL_Solr_issue_Ref_72740' of https://github.com/scara/moodle 2019-08-15 10:59:29 +08:00
Shamim Rezaie c7a5ffc483 MDL-35939 mod_quiz: deprecate unused strings 2019-08-15 12:07:38 +10:00
Shamim Rezaie eaa1d6aad7 MDL-35939 mod_quiz: use descriptive titles for pages 2019-08-15 12:07:38 +10:00
Shamim Rezaie 5641b98133 MDL-35939 mod_quiz: phpdoc fix 2019-08-15 12:07:38 +10:00
Shamim Rezaie 41bfed56fc MDL-35939 mod_quiz: new functions to generate title for attempt pages 2019-08-15 12:07:34 +10:00
AMOS bot bbd1409821 Automatically generated installer lang files 2019-08-15 00:12:44 +00:00
Jun Pataleta 4d56b58787 Merge branch 'MDL-65129-master-2' of git://github.com/peterRd/moodle 2019-08-14 15:31:07 +08:00
Jun Pataleta 7da3ab8359 Merge branch 'MDL-65925-grade-page-broken-for-deleted-submission-master' of https://github.com/ilya-catalyst/moodle 2019-08-14 15:28:14 +08:00
Peter 87c71d18de MDL-65129 mod_forum: Behat test for favourited search 2019-08-14 14:59:35 +08:00
Peter dd223096b8 MDL-65129 mod_forum: Ability to search based on favourite status 2019-08-14 14:59:30 +08:00
Adrian Greeve 523e51ff4d Merge branch 'MDL-65621-dimmed-courses' of https://github.com/stopfstedt/moodle 2019-08-14 14:56:07 +08:00
David Monllaó 2bbe76bf06 MDL-66210 analytics: Unit test for reuseprevanalysed 2019-08-14 14:31:54 +08:00
David Monllaó ca61e4d4f0 MDL-66210 analytics: Update references to ->options 2019-08-14 14:31:54 +08:00
David Monllaó d1af71c35d MDL-65993 analytics: Fix --filter option for by_course models 2019-08-14 14:30:20 +08:00
David Monllaó 6981d823a2 MDL-66241 analytics: Verify that activities_due works on at-risk 2019-08-14 14:29:16 +08:00
David Monllaó d7ef852c83 MDL-66241 analytics: activities_due compatible with at-risk models 2019-08-14 14:29:16 +08:00
Andrew Nicols 9311a83b45 Merge branch 'patch-1' of https://github.com/aspark21/moodle 2019-08-14 11:33:57 +08:00
Ryan Wyllie c872ec0cbd MDL-66148 mod_assign: update override page for relative dates mode 2019-08-14 10:40:55 +08:00
Andrew Nicols 59008247db Merge branch 'MDL-60916-master_replace_course_search_wth_global_search' of https://github.com/gmrsagar/moodle 2019-08-14 10:35:22 +08:00
Andrew Nicols d120bbcef6 Merge branch 'MDL-65950-master' of git://github.com/junpataleta/moodle 2019-08-14 10:17:00 +08:00
Adrian Greeve 0a28a2f074 Merge branch 'MDL-52849-master' of git://github.com/peterRd/moodle 2019-08-14 09:03:37 +08:00
Jun Pataleta 1648b5ac6e Merge branch 'MDL-66147-master' of https://github.com/snake/moodle 2019-08-13 16:34:34 +08:00
Jun Pataleta 1cac0870b8 MDL-65950 core_user: Add hidden labels for the user checkboxes
* And update Behat tests accordingly and nuke the steps that are using
xpath.
2019-08-13 16:02:02 +08:00
Jun Pataleta df92be9d67 MDL-65950 core_user: Use new core/checkbox-toggleall 2019-08-13 15:21:34 +08:00
Jake Dallimore 9ce55a8668 MDL-66147 mod_assign: behat test covering relative due date field
Tests that each student has a fixed amount of time, relative to their
course start date, in which to submit the assignment, and that teachers
are shown the dates relative to each student when grading.
2019-08-13 15:09:13 +08:00
Jake Dallimore d0cff2367a MDL-66147 mod_assign: external get_participant supports relative dates 2019-08-13 15:09:13 +08:00
Jake Dallimore c0bb682756 MDL-66147 mod_assign: grading table duedate column updates
Couple of changes:
- The duedate, cutoffdate and allowsubmissionsfromdate are now always
shown for relative dates courses.
- When relative dates mode is enabled, calculate and apply the enrolment
start offset to the due date in SQL. No changes to col_duedate needed.
Sorting is supported.
2019-08-13 15:09:13 +08:00
Jake Dallimore 9bf91ea832 MDL-66147 mod_assign: grading table status col shows relative dates
The 'Status' column is sorted using 'status ASC/DESC, userid ASC',
where status does not contain the due date. Overdue assignments
have additional information displayed, but this is unrelated to
the sort, meaning we don't need to change anything with sorting.
2019-08-13 15:09:13 +08:00
Jake Dallimore 9e719b81d4 MDL-66147 mod_assign: submissions overview page shows time interval
Use get_time_interval_string() on the teacher only page, to show how
long after the course start the assignment is due for each user.
2019-08-13 15:09:11 +08:00
Andrew Nicols 9abc0ed875 Merge branch 'MDL-65949-master' of git://github.com/junpataleta/moodle 2019-08-13 14:39:48 +08:00
Adrian Greeve 2217ca91ee Merge branch 'MDL-57623' of git://github.com/Chocolate-lightning/moodle 2019-08-13 14:27:30 +08:00
Mathew May 09dedee2e1 MDL-57623 behat: Remove deprecated step from 3.3 2019-08-13 14:24:34 +08:00
Jun Pataleta 29c5579db9 Merge branch 'MDL-62034-master' of git://github.com/andrewnicols/moodle 2019-08-13 14:20:42 +08:00
Andrew Nicols 24d2a49e21 MDL-62034 assign: Add hint for user tour reset 2019-08-13 14:12:29 +08:00
Andrew Nicols c188ddfe93 Merge branch 'MDL-59524-master' of git://github.com/cescobedo/moodle 2019-08-13 12:56:32 +08:00
Andrew Nicols 0bbdef98ea MDL-66384 core: Limit explode to allow subdirs in template names 2019-08-13 11:29:40 +08:00
Adrian Greeve 5918473134 Merge branch 'MDL-66008-master-fix' of https://github.com/lameze/moodle 2019-08-13 10:27:31 +08:00
Simey Lameze 4d98566939 MDL-66008 core_calendar: fix behat failures 2019-08-13 09:50:48 +08:00
Ryan Wyllie 30d2b9cd31 MDL-66110 dml: Fix MySQL v8 compatibility with groups table
MySQL v8 has added "groups" to the reserved word list. That is used
as a table name in Moodle so we have to quote it with backticks in the
SQL so that MySQL knows it's being used as an identifier.
2019-08-13 09:35:19 +08:00
Jun Pataleta 1946261fb3 Merge branch 'MDL-66288-master' of git://github.com/lameze/moodle 2019-08-12 15:15:14 +08:00
Andrew Nicols 92afad61ae Merge branch 'MDL-65937-master' of git://github.com/junpataleta/moodle 2019-08-12 14:54:20 +08:00
Jun Pataleta a7faa3f1c5 Merge branch 'MDL-66104' of git://github.com/stronk7/moodle 2019-08-12 14:51:59 +08:00
Simey Lameze bcd0583e68 MDL-66008 calendar: Remove duplicated call to library funciton
A duplicated call to calendar_get_allowed_event_types has
been removed.
2019-08-12 14:49:40 +08:00
Shamim Rezaie 9175a97822 MDL-46317 admin: minor coding style fixes 2019-08-12 14:44:12 +10:00
Shamim Rezaie 7a8dd5664f MDL-46317 admin: deprecating configuserquota,core_admin lang string 2019-08-12 14:44:12 +10:00
Shamim Rezaie e945b883fa MDL-46317 admin: convert userquota config from text to filesize widget 2019-08-12 14:44:10 +10:00
Shamim Rezaie e2d97a4659 MDL-46317 admin: Added admin\local\settings\filesize class 2019-08-12 13:22:24 +10:00
Peter d439fac53c MDL-52849 core: Focus reader onto popup with ajax errors 2019-08-12 10:45:08 +08:00
Jake Dallimore 612b210d76 MDL-66147 core: add get_time_interval_string()
Returns a formatted string representation of the difference between two
timestamps, defaulting to 'Xd Xh Xm' format, but supporting custom
format strings containing any chars from:
https://www.php.net/manual/en/dateinterval.format.php.
2019-08-12 09:35:51 +08:00
Jake Dallimore db381d5c87 MDL-66147 mod_assign: Change assign to return calculated instance data
Changes include:
- Added a private method calculate_properties(), which calculates
per-user instance properties and stores them in an instance var.
- get_instance() now takes a userid param, and calls the
calculate_properties() method, allowing per-user instances to be
returned.
- Added a public method get_default_instance(), which returns the
non-augmented instance data (no per-user properties), so we can
still get back the raw instance data when needed.
- The get_course method has been changed to make sure we always have an
object property, not a string - which happened in some cases (when
commenting on the assign submission page, for example).
2019-08-12 09:35:51 +08:00
Simey Lameze e4b1c14a37 MDL-66288 dataformat: prettify exported JSON data 2019-08-12 07:29:31 +08:00
Ilya Tregubov 64ce596f8c MDL-65925 assign: Grade page broken if submission was deleted. 2019-08-12 09:28:50 +10:00
cescobedo 0504254f1d MDL-59524 general: Remove strings deprecated in 3.4 2019-08-12 00:13:08 +02:00
Matteo Scaramuccia 463421144f MDL-66140 search: Mitigate PECL solr extension regression
Refs:
- https://bugs.php.net/bug.php?id=72740
- https://bugs.php.net/bug.php?id=75631
- https://github.com/php/pecl-search_engine-solr/pull/16
2019-08-11 20:03:25 +02:00
Andrew Nicols f75cb25c86 MDL-65604 repository: Kill off missing param errors
The file picker template included an img with a src of "#". When the
template was loaded into the modal, the browser fetches the img src, but
it's immediately removed as that section is only used as an in-place
template. The src tag does not need to be present.
2019-08-11 14:51:18 +08:00
AMOS bot 3d9aa96892 Automatically generated installer lang files 2019-08-10 00:11:06 +00:00
AMOS bot ad52b7de3f Automatically generated installer lang files 2019-08-10 00:11:05 +00:00
Jun Pataleta 8e9e9a5f7e weekly release 3.8dev 2019-08-09 16:23:53 +08:00
Jun Pataleta e2e7fdb4df Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-08-09 16:23:51 +08:00
Jun Pataleta a6489fabbf Merge branch 'MDL-65679-master-fix' of git://github.com/andrewnicols/moodle 2019-08-09 11:38:59 +08:00
Andrew Nicols 7be52eb255 MDL-65679 assignfeedback_editpdf: Adjust z-indexes for editpdf 2019-08-09 08:34:29 +08:00
Andrew Nicols 66fa73d84e MDL-66327 pgsql DML: Update get_records_sql to consume less memory
It's more memory efficient to use `pg_fetch_assoc` for each row than to
call `pg_fetch_all` and release memory immediately. This is because we
can treat the assoc fetch like an iterator and it only fetches the
current record into memory one at a time, whilst the all fetch fetches
all records and never unsets them. Attempting to unset them is extremely
time consuming.
2019-08-08 15:48:12 +08:00
Jun Pataleta 7f18f22fac Merge branch 'MDL-66272-master' of git://github.com/vmdef/moodle 2019-08-08 12:43:51 +08:00
Amaia Anabitarte 82ca410f23 MDL-60636 behat: Fixing modified xpath 2019-08-08 11:58:03 +08:00
Andrew Nicols 419a67aad3 Merge branch 'MDL-65933-master' of git://github.com/junpataleta/moodle 2019-08-08 11:41:50 +08:00
Jun Pataleta d3455c0da1 Merge branch 'MDL-59470' of https://github.com/Chocolate-lightning/moodle 2019-08-08 10:40:51 +08:00
Mathew May 7456bf413b MDL-59470 admin: Add Behat test for duplicating a tour 2019-08-08 10:30:12 +08:00
Andrew Nicols 9f0cf3e855 Merge branch 'MDL-65595-master' of git://github.com/peterRd/moodle 2019-08-08 10:28:15 +08:00
Jun Pataleta 07d00f0548 Merge branch 'MDL-64032-master-fix' of https://github.com/andrewnicols/moodle 2019-08-08 10:23:10 +08:00
Andrew Nicols b6a226f96f MDL-64032 user: Comment out failing behat tests
These are failing because of an unrelated issue which is possibly quite
an edge case.
2019-08-08 09:31:00 +08:00
Mathew May 71fd7b1139 MDL-59470 behat: Add a element comtains x occurrences step 2019-08-08 09:16:19 +08:00
Mathew May c48fbb6c9b MDL-59470 admin: A user tour can now be duplicated 2019-08-08 09:16:17 +08:00
Jun Pataleta 7fda7cf71b Merge branch 'MDL-57239' of https://github.com/timhunt/moodle 2019-08-08 08:49:56 +08:00
Jun Pataleta 30c8bf169e Merge branch 'MDL-50346-master' of git://github.com/andrewnicols/moodle 2019-08-07 17:11:31 +08:00
Andrew Nicols 08bec34297 Merge branch 'MDL-66039-master' of git://github.com/bmbrands/moodle 2019-08-07 15:31:43 +08:00
Brendan Heywood 32f805e079 MDL-66278 core: Add callback to show other password checks on signup 2019-08-07 14:12:04 +08:00
Jun Pataleta 9897d03d95 Merge branch 'MDL-56789-master' of git://github.com/rezaies/moodle 2019-08-07 14:01:39 +08:00
Sara Arjona 96d497204f Merge branch 'MDL-61649-master' of git://github.com/aanabit/moodle 2019-08-07 13:33:04 +08:00
Shamim Rezaie f73b22a3ac MDL-56789 core: Improve unit tests 2019-08-07 15:25:16 +10:00
Shamim Rezaie 36272110ba MDL-56789 core: Recycle bin warn only if a grade item is being deleted 2019-08-07 15:25:11 +10:00
Shamim Rezaie 6cdf0207ff MDL-56789 core: Added unit test for course_modules_pending_deletion 2019-08-07 14:18:11 +10:00
Andrew Nicols 0261d1effa MDL-50346 core: Allow sub-directories in template names 2019-08-07 11:44:49 +08:00
Jun Pataleta cb6e7dc70c Merge branch 'MDL-59639-master' of git://github.com/bmbrands/moodle 2019-08-07 11:29:32 +08:00
Amaia Anabitarte c7f88457cd MDL-61649 email: Send plain/html format emails based on user preference 2019-08-07 11:20:02 +08:00
Sara Arjona ab1fa2dbac Merge branch 'MDL-63198-master' of git://github.com/rezaies/moodle 2019-08-07 11:07:50 +08:00
Andrew Nicols 638097810d Merge branch 'mdl-66280' of https://github.com/Peterburnett/moodle 2019-08-07 10:22:04 +08:00
Sara Arjona 600d8df255 Merge branch 'MDL-60636-master' of git://github.com/bmbrands/moodle 2019-08-07 10:00:44 +08:00
Alistair Spark fa3f8625e1 MDL-66071 user: username is required with non-internal auth method 2019-08-07 00:55:10 +02:00
Andrew Nicols 91d50e2eda Merge branch 'MDL-57618-master' of git://github.com/cescobedo/moodle 2019-08-06 15:56:07 +08:00
Sara Arjona a12718673a Merge branch 'MDL-64598-master' of https://github.com/lucaboesch/moodle 2019-08-06 15:29:52 +08:00
Bas Brands fbd99bbb00 MDL-59639 theme_boost: remember last visited tab 2019-08-06 08:54:23 +02:00
Andrew Nicols c0535be52a Merge branch 'MDL-66234_master' of git://github.com/dmonllao/moodle 2019-08-06 14:25:20 +08:00
Sara Arjona e9fc5a7381 Merge branch 'MDL-65786-master' of git://github.com/rezaies/moodle 2019-08-06 14:19:17 +08:00
Jun Pataleta 9744897d27 Merge branch 'MDL-66306-master' of git://github.com/lameze/moodle 2019-08-06 14:03:17 +08:00
Simey Lameze 02523182f9 MDL-66306 lib: upgrade moodle lib docs 2019-08-06 13:59:37 +08:00
Simey Lameze f0f88f7f2b MDL-66306 lib: update phpmailer to 6.0.7 2019-08-06 13:48:28 +08:00
Andrew Nicols c79835aef9 Merge branch 'MDL-64953' of https://github.com/Chocolate-lightning/moodle 2019-08-06 13:20:54 +08:00
Andrew Nicols f6666a7064 Merge branch 'MDL-65679-master' of git://github.com/mihailges/moodle 2019-08-06 13:17:43 +08:00
Andrew Nicols 9a74e4008a Merge branch 'MDL-65651-master' of https://github.com/lucaboesch/moodle 2019-08-06 11:57:56 +08:00
Mathew May 28cbff4a2d MDL-64953 templates: Add example contexts & documentation
This is a follow up from CiBot warnings from MDL-58428
2019-08-06 10:56:16 +08:00
Andrew Nicols 1108ccba62 Merge branch 'MDL-66034-master' of git://github.com/lameze/moodle 2019-08-06 09:30:14 +08:00
Andrew Nicols f8c927a25b Merge branch 'MDL-66178' of https://github.com/paulholden/moodle 2019-08-06 09:17:29 +08:00
Andrew Nicols 8b6e767094 Merge branch 'MDL-65992' of git://github.com/Chocolate-lightning/moodle 2019-08-06 09:13:15 +08:00
Eloy Lafuente (stronk7) 0e5f6317c1 Merge branch 'MDL-66307' of https://github.com/timhunt/moodle 2019-08-05 13:30:46 +02:00
Eloy Lafuente (stronk7) 09287bf893 Merge branch 'MDL-64757-38_core_output_nested_template_block_string_language' of https://github.com/tomdickman/moodle 2019-08-05 13:13:33 +02:00
Andrew Nicols 6bfdb36e0b Merge branch 'MDL-33884' of https://github.com/timhunt/moodle 2019-08-05 14:33:11 +08:00
Sagar Ghimire 36667548b5 MDL-60916 core_course: Replace course search with global search 2019-08-05 16:05:10 +10:00
Sara Arjona 1c49217088 Merge branch 'MDL-66281-master' of git://github.com/junpataleta/moodle 2019-08-05 13:41:12 +08:00
Simey Lameze 2d526dcb33 MDL-66034 core_role: improve role events php unit coverage 2019-08-05 13:09:19 +08:00
Simey Lameze 3a18032dbf MDL-66034 core: delete role_capabilities_updated event triggers 2019-08-05 13:09:19 +08:00
Simey Lameze e9b88bcb73 MDL-66034 core: deprecate role_capabilities_updated event 2019-08-05 13:09:19 +08:00
Simey Lameze 32306e8390 MDL-66034 core_role: add more detail to role allow event classes 2019-08-05 13:09:19 +08:00
Simey Lameze de4dc81b24 MDL-66034 core_role: implement role updated event 2019-08-05 13:09:19 +08:00
Simey Lameze a98bafa163 MDL-66034 core_role: implement capability unassigned event 2019-08-05 13:09:18 +08:00
Simey Lameze 7b0afca816 MDL-66034 core_role: implement capability assigned event 2019-08-05 13:09:18 +08:00
Andrew Nicols 6047801767 Merge branch 'MDL-64032-master' of https://github.com/HuongNV13/moodle 2019-08-05 12:55:35 +08:00
Andrew Nicols 0fdef2d2cf Merge branch 'MDL-66279-master' of git://git.cameron1729.xyz/moodle 2019-08-05 11:48:13 +08:00
Shamim Rezaie e75bf41538 MDL-63198 forms: click on scrollbar should not close the suggestions box 2019-08-05 13:13:45 +10:00
Paul Holden 90ce66a9ce MDL-66178 user: filter course participants for users with no roles. 2019-08-02 16:42:10 +01:00
Tim Hunt 1f60ddcebc MDL-57239 qbehaviour_interactive: fix Try again button when reviewing 2019-08-02 11:44:51 +01:00
Luca Bösch 766bb9a563 MDL-65651 forum: Middle align last post column entries. 2019-08-02 12:01:57 +02:00
Luca Bösch 41432a2d30 MDL-64598 pix: Adding width/height information to emoji SVG images. 2019-08-02 11:56:14 +02:00
cescobedo 959457c392 MDL-57618 general: Remove strings deprecated in 3.3 2019-08-02 11:06:32 +02:00
Jun Pataleta e274f1b29e MDL-65933 mod_data: Use new core/checkbox_toggleall 2019-08-02 16:30:39 +08:00
Jun Pataleta e773533258 MDL-65949 report_participation: Use new core/checkbox-toggleall 2019-08-02 16:30:26 +08:00
Jun Pataleta 32c7889212 MDL-65937 mod_lesson: Replace concatenated strings with lang strings 2019-08-02 16:24:56 +08:00
Jun Pataleta ae612a5334 MDL-65937 mod_lesson: Use new core/checkbox_toggleall
Plus some refactoring on the cell of the attempts column.
2019-08-02 16:24:56 +08:00
[Peter Burnett] d82b6004bf MDL-66280 core: Added unit tests for print_password_policy 2019-08-02 11:34:23 +10:00
[Peter Burnett] e40ea418f4 MDL-66280 core: Added checks for empty password minimum length 2019-08-02 11:34:23 +10:00
AMOS bot 009206154d Automatically generated installer lang files 2019-08-02 00:11:13 +00:00
AMOS bot 749062fad1 Automatically generated installer lang files 2019-08-02 00:11:13 +00:00
Mihail Geshoski bda31461db MDL-65679 assign: Collapsing comments
The comments should appear above everything else when expanded, and expanding/collapsing comments
should not affect the position of anything else in the page.

All credit goes to Damyon Wiese.
2019-08-02 07:39:27 +08:00
Eloy Lafuente (stronk7) 764167136f MDL-66104 output: HTMLPurifier to allow <nolink> tags everywhere
Before the patch, HTMLPurifier was instructed to handle <nolink>
tags in block mode. That implies that any block tag enclosing it
had to be closed for HTML compliance.

But <noscript> tags are not part of the final output (they are
removed) but just internally used to skip filtering certain areas.

So they can be virtually everywhere, HTMLPurifier just should allow
them without any change, both to parent or children tags.
2019-08-01 17:52:33 +02:00
Eloy Lafuente (stronk7) 414eca8923 weekly release 3.8dev 2019-08-01 17:06:55 +02:00
Eloy Lafuente (stronk7) adcad4ead2 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-08-01 17:06:51 +02:00
Tim Hunt ac1a91bf47 MDL-66307 js: fix path handling on Windows 2019-08-01 14:54:05 +01:00
Andrew Nicols 2c28ba8888 MDL-66307 js: Add missing plugintypes structure in subplugin read 2019-08-01 20:52:02 +08:00
Adrian Greeve 4e569b1b98 Merge branch 'MDL-65093' of git://github.com/stronk7/moodle 2019-08-01 16:07:26 +08:00
Sara Arjona c5f3e92498 MDL-66123 core: update upgrade.txt with check_password_policy changes 2019-08-01 10:08:03 +08:00
Sara Arjona 117d2fd56e Merge branch 'mdl_66123' of https://github.com/Peterburnett/moodle 2019-08-01 09:59:08 +08:00
Sara Arjona ac7505be43 Merge branch 'MDL-42451' of git://github.com/Chocolate-lightning/moodle 2019-08-01 09:53:05 +08:00
Adrian Greeve f1cb94488e Merge branch 'MDL-58974-master' of git://github.com/vmdef/moodle 2019-08-01 09:02:52 +08:00
Eloy Lafuente (stronk7) b119595510 Merge branch 'MDL-50472' of git://github.com/Chocolate-lightning/moodle 2019-08-01 00:27:31 +02:00
Eloy Lafuente (stronk7) 1ccc9461aa Merge branch 'MDL-66192-master' of git://github.com/andrewnicols/moodle 2019-08-01 00:22:14 +02:00
Eloy Lafuente (stronk7) d8b3c365ab Merge branch 'MDL-57342' of git://github.com/Chocolate-lightning/moodle 2019-07-31 18:49:21 +02:00
Eloy Lafuente (stronk7) 22c95e393a Merge branch 'MDL-65766-master' of git://github.com/mihailges/moodle 2019-07-31 18:38:39 +02:00
Tim Hunt b65db96d8c MDL-33884 question export: raise memory limit
Question exports can be quite big, just like imports can. Therefore, we
should raise memory limits in the same way.

(Of course, eventually we should change the API, so that it writes one
questoin at a time, rather than building the whole export file contents
in RAM first, but that would be a much bigger change, and we need a
quick fix now.)
2019-07-31 16:18:16 +01:00
Victor Deniz Falcon a9e58c14f9 MDL-58974 core_analytics: Add behat tests
Behat testing to cover model management and predictions generation
and visualization.
2019-07-31 11:13:05 +01:00
Mathew May 65fd840be8 MDL-42451 installation: Allow enter key to proceed 2019-07-31 14:22:42 +08:00
Mathew May e0f0f76344 MDL-65992 travis: Migrate to Xenial distro and default MySQL service 2019-07-31 12:56:39 +08:00
Jun Pataleta 3c84d36f94 Merge branch 'MDL-65831-master' of git://github.com/aanabit/moodle 2019-07-31 10:55:58 +08:00
Sara Arjona 408689d5ae Merge branch 'MDL-57208' of https://github.com/paulholden/moodle 2019-07-31 10:25:04 +08:00
Peter 02754b5165 MDL-65595 core: Remove the nowrap from the form's radio template 2019-07-31 08:15:00 +08:00
AMOS bot a18439bc6f Automatically generated installer lang files 2019-07-31 00:09:06 +00:00
Victor Deniz Falcon 6097d3e7ff MDL-66272 core_renderer: fix favicon method PHPDoc 2019-07-30 16:01:38 +01:00
Eloy Lafuente (stronk7) eaaef6d621 MDL-65093 core_message: remove some "dupe" tests
With the deprecation of can_post_message() in favor of
can_send_message() all the new test_can_send_message_xxx()
were created from the original test_can_post_message_xxx() ones.

So, really we don't need all the old ones. Just ensure that
debugging is being called and done. New tests are already covering
the new method.

Note this is not strictly needed but in practice is allowing
MySQL + PHP 7.3 to stop segfaulting (because of some sort of limit /
overflow happening somewhere else). So this is just a practical
fix to avoid that while all the messaging tests are reorganizaed
@ MDL-63670. There are some good things to fix there.
2019-07-30 12:37:27 +02:00
Paul Holden 719f76313c MDL-57208 user: select default homepage from user preferences page. 2019-07-30 08:53:18 +01:00
Paul Holden a1ab8ec216 MDL-66230 tool_usertours: account for deleted tours in privacy export. 2019-07-30 07:58:40 +01:00
Sara Arjona fd59fa7494 Merge branch 'MDL-64860-38_block_myoverview_improve_pagination' of https://github.com/tomdickman/moodle 2019-07-30 14:52:20 +08:00
Cameron Ball 315e4342f1 MDL-66279 task: Test if logger is_a database_logger 2019-07-30 14:49:27 +08:00
Jun Pataleta 91a8e1894b MDL-66281 tool_dataprivacy: Set sensitive data processing default value 2019-07-30 13:58:36 +08:00
Sara Arjona b5b11a1543 Merge branch 'MDL-63458' of https://github.com/rlorenzo/moodle 2019-07-30 11:59:18 +08:00
David Monllaó c430def90d MDL-66234 analytics: Extra GC during analysis 2019-07-29 18:36:42 +02:00
Adrian Greeve 647c6da2b8 Merge branch 'MDL-66174-master' of git://github.com/peterRd/moodle 2019-07-29 14:38:35 +08:00
Adrian Greeve 6aa6d5b113 Merge branch 'mdl-66119' of https://github.com/Peterburnett/moodle 2019-07-29 14:06:32 +08:00
[Peter Burnett] ad9c96e531 MDL-66123 core: check_password_policy takes $user argument 2019-07-29 14:37:50 +10:00
Jake Dallimore a12f9f93c4 Merge branch 'MDL-46267-master' of git://github.com/junpataleta/moodle 2019-07-29 11:37:56 +08:00
Mathew May c5d1c2dcf8 MDL-50472 auth: Add maintenance message to the login page. 2019-07-29 10:45:28 +08:00
Adrian Greeve 9f236d63e6 Merge branch 'MDL-65093_master-deprecate' of git://github.com/markn86/moodle 2019-07-29 10:43:52 +08:00
Mark Nelson 386634bab3 MDL-65093 core_message: show 'OK' dialogue 2019-07-29 10:39:57 +08:00
Mark Nelson 66fffdbce5 MDL-65093 core_message: dont show users with cap as blocked
It is possible that before this patch the user blocked a
teacher from messaging them, even though this would have
no effect. It is also possible for a user to block a user,
then that user gets 'promoted' to a teacher role and the
block becoming ineffective. In these cases we dont show the
user's status as blocked.
2019-07-29 10:39:57 +08:00
Mark Nelson 90403c5d9d MDL-65093 core_message: users can't block any user they want
If blocking will have no effect (ie. you are attempting to block
the admin) the 'Block' button will not be shown and instead a
message will be shown explaining why you can not block the user.
2019-07-29 10:39:57 +08:00
Mark Nelson 06d046c1ff MDL-65093 core_message: deprecate can_post_message() 2019-07-29 10:39:57 +08:00
Adrian Greeve dcc3f54e24 Merge branch 'MDL-64887-master-3' of git://github.com/bmbrands/moodle 2019-07-29 10:16:01 +08:00
Amaia Anabitarte c9469fb488 MDL-65831 behat: New steps to switch offline mode for moodle app behats 2019-07-29 09:50:41 +08:00
Mihail Geshoski 3d980e5be7 MDL-65766 libraries: Upgrade WebRTC to 6.4.0 2019-07-29 09:05:01 +08:00
Tom Dickman c0add7c713 MDL-64860 block_myoverview: added additional pagination options
Added additional pagination options based on the amount of courses the user is enrolled in.
This will allow the user to display all courses on one page if they wish, and scale based on their total
courses up to pages of 96 courses, now defaults to `All` if they have less than 12 courses and hides the
dropdown menu as there is only one choice.
2019-07-29 09:12:07 +10:00
Jake Dallimore d4fc7d756a Merge branch 'MDL-35773_master' of git://github.com/markn86/moodle 2019-07-26 17:32:29 +08:00
Mark Nelson 56e28c3bf1 MDL-35773 core_backup: controller has full responsibility for files 2019-07-26 17:00:40 +08:00
Jake Dallimore 1f16f4115d Merge branch 'MDL-65219-master' of https://github.com/ryanwyllie/moodle 2019-07-26 15:20:10 +08:00
Mark Nelson 9bfdfbb389 MDL-35773 tool_recyclebin: ensure backups always contain files 2019-07-26 11:59:57 +08:00
Mark Nelson 2124100194 MDL-35773 core_backup: ensure we restore with new itemid 2019-07-26 11:59:57 +08:00
Mark Nelson 7c1a42adb4 MDL-35773 core_backup: only include files when necessary 2019-07-26 11:59:56 +08:00
Mark Nelson 420384ae36 MDL-35773 core_backup: removed unnecessary set_samesite_notification() 2019-07-26 11:59:56 +08:00
Mark Nelson 8e83e54815 MDL-35773 core_backup: removed introduction of 'set_mode' 2019-07-26 11:59:56 +08:00
Mark Nelson 94c71056a3 MDL-35773 core_backup: use existing API to recover files 2019-07-26 11:59:56 +08:00
Mark Nelson 88031d35de MDL-35773 core: revert introduction of new recover_file() method
Also -

1. Reverted recover_file() in file_system_filedir back to its
   original state.
2. Removed no longer needed method create_recovery_record().
2019-07-26 11:59:56 +08:00
Mark Nelson 8490a4ab7b MDL-35773 core: move 'backup_auto_files' for consistency 2019-07-26 11:59:56 +08:00
Matt Porritt d7e4481e98 MDL-35773 Backup: API should have option to not backup files
Allow both UI and automated backups to be created without
including files.  Instead include only file references.
This is essentially implementing "SAMESITE" to backup files
instead of only for import and export functionality.
A new backup setting to include files (defaults to yes)
has been included.

The restore process will also look for and attempt to
restore files from the trashdir as part of restoring
backups.  Additionally to support this process the
ammount of time files are kept in trashdir before they
are cleaned up via cron is also adjustable via admin
setting.
2019-07-26 11:59:56 +08:00
Jake Dallimore 795baec988 Merge branch 'MDL-65918-master' of git://github.com/junpataleta/moodle 2019-07-26 10:57:01 +08:00
David Monllaó e38c016f80 MDL-58974 tool_analytics: Adding missing absolute paths 2019-07-26 00:50:29 +01:00
[Peter Burnett] 442eeac33c MDL-66119 core: Add check for uninstalling plugins from the admin gui 2019-07-26 09:27:32 +10:00
Andrew Nicols 9ea892d216 MDL-66192 javascript: Allow subdirs in AMD module names 2019-07-26 07:04:08 +08:00
Bas Brands 9f08292f4f MDL-64887 theme_boost: prevent drop downs from flipping up 2019-07-25 15:24:03 +02:00
Eloy Lafuente (stronk7) f622ee97e3 weekly release 3.8dev 2019-07-25 13:44:42 +02:00
Jake Dallimore 506fc5178b Merge branch 'MDL-65858_master' of git://github.com/markn86/moodle 2019-07-25 14:51:54 +08:00
Adrian Greeve 852bf8fa58 Merge branch 'MDL-65078-master' of git://github.com/peterRd/moodle 2019-07-25 14:49:40 +08:00
Eloy Lafuente (stronk7) 8b9c0616b3 Merge branch 'MDL-65994-master' of git://github.com/junpataleta/moodle 2019-07-25 14:49:12 +08:00
Eloy Lafuente (stronk7) 857431ed72 Merge branch 'MDL-65946-master' of git://github.com/junpataleta/moodle 2019-07-25 14:41:15 +08:00
Eloy Lafuente (stronk7) 2db07ee59c Merge branch 'MDL-65938-master' of git://github.com/junpataleta/moodle 2019-07-25 14:41:15 +08:00
Adrian Greeve 57d42d0598 Merge branch 'MDL-65633_master' of git://github.com/dmonllao/moodle 2019-07-25 14:41:15 +08:00
Adrian Greeve 700baa8409 Merge branch 'MDL-65740-master' of git://github.com/peterRd/moodle 2019-07-25 14:41:14 +08:00
Adrian Greeve a35b6a775a Merge branch 'MDL-66021-master' of git://github.com/peterRd/moodle 2019-07-25 14:41:14 +08:00
Damyon Wiese bde97497ef MDL-65078 competencies: webservices
The webservice list_course_module_competencies calls a function that does not exist and
is not exposed as a webservice.
2019-07-24 09:14:28 +08:00
Huong Nguyen 0fc30827dc MDL-64032 enrol_manual: Make consistent the UI for setting enrolment
Add end date/duration for the UI for setting enrolment should be consistent
2019-07-23 14:21:43 +07:00
Mathew May 0c18745424 MDL-57342 admin: confightml will check if returned data is empty 2019-07-23 13:35:14 +08:00
Ryan Wyllie 5d61b3b331 MDL-65219 message: default disable contact request notifications for web
Set the default state to disabled for message contact request
notifications for the web process. The user is notified about contact
requests in the message drawer so it's unnecessary to also generate
a notification in the notification popover for them.
2019-07-23 13:24:09 +08:00
Ryan Wyllie 6cb33ce774 MDL-65219 message: add message/pendingcontactrequests.php page back
We previously had this page when contact requests were first introduced
and unfortunately we created a bunch of notifications that reference
this URL directly which now won't work because the page has been removed.

I've added it back but set it to redirect to the message/index.php page
and load the contact requests page there.
2019-07-23 11:37:55 +08:00
Jun Pataleta 09267294bd MDL-65918 auth_oauth2: Require profile library once
Thanks to Jason Grimes for the bug report and fix suggestion!
2019-07-23 10:11:17 +08:00
Eloy Lafuente (stronk7) 9da4b1821f Merge branch 'MDL-65788' of git://github.com/Chocolate-lightning/moodle 2019-07-22 21:38:20 +02:00
Eloy Lafuente (stronk7) 797ef87344 Merge branch 'MDL-66132-master' of https://github.com/sammarshallou/moodle 2019-07-22 20:56:29 +02:00
Jake Dallimore c5b9f7fd70 Merge branch 'MDL-66144-master' of https://github.com/ryanwyllie/moodle 2019-07-22 15:19:17 +08:00
Bas Brands 10425e7347 MDL-64887 theme_boost: update bootstrap to 4.3.1 2019-07-22 08:57:04 +02:00
Jake Dallimore e255959e76 Merge branch 'MDL-66143-master' of git://github.com/junpataleta/moodle 2019-07-22 13:47:17 +08:00
Mark Nelson e1c484c745 MDL-65858 core_backup: increase the delay with each fail 2019-07-22 13:20:49 +08:00
Matt Porritt 133c131fc0 MDL-65858 core_backup: added timeout to ajax calls 2019-07-22 13:20:06 +08:00
Matt Porritt 00d214bca2 MDL-65858 backup: Improve behaviour of ajax calls
When a backup (or restore) is in progress and the user
has another tab open that is taking time to generate and
holding the session lock, a condition arises where
multiple ajax calls are "queued" because the long page
is holding the session lock. When this lock is released,
the queued ajax requests complete.  However, as the ajax
requests also lock this can block other requests until they
complete. This patch decreases the frequency of ajax calls
and stops them from holding the session lock.
2019-07-22 12:54:10 +08:00
Jun Pataleta b850ddfdd5 MDL-66143 course: Integration review fixes 2019-07-22 11:52:41 +08:00
Jun Pataleta a676250f97 MDL-66143 course: Behat tests for the relative dates mode field 2019-07-22 11:52:41 +08:00
Jun Pataleta f96623cb74 MDL-66143 course: Relative dates mode handling
* On course creation, make sure that we can enable relative dates mode
  only when the site setting is enabled.
* On course update, make sure that the relative dates mode setting
  cannot be changed.
2019-07-22 11:52:41 +08:00
Jun Pataleta 9d8cdb9ba8 MDL-66143 course: Add relativedatesmode course setting 2019-07-22 11:52:38 +08:00
Jun Pataleta afc87005cb MDL-66143 admin: Create setting for courses to support relative dates 2019-07-22 11:14:51 +08:00
Jun Pataleta 9320787005 MDL-46267 core: Remove $CFG->httpswwwroot
* It's unnecessary since $CFG->loginhttps has already been removed and
  it's no longer being used in core anymore.
2019-07-22 10:59:42 +08:00
Jun Pataleta b6e465c870 MDL-46267 core: https_required, verify_https_required final deprecation 2019-07-22 10:59:38 +08:00
Adrian Greeve 70f1d11338 Merge branch 'MDL-66136-master' of git://github.com/mihailges/moodle 2019-07-22 10:40:30 +08:00
Mihail Geshoski b7e4229187 MDL-66136 assign: Verify presence of resources in online text submission 2019-07-22 07:55:54 +08:00
Mihail Geshoski 911d164dcb MDL-66136 assignfeedback_comments: Extend testcase 2019-07-22 07:55:54 +08:00
Andrew Nicols de2976e548 MDL-62497 js: Pass strings through get_string 2019-07-21 15:06:25 +08:00
Eloy Lafuente (stronk7) 81aaf369b6 Merge branch 'MDL-50733' of git://github.com/stronk7/moodle 2019-07-20 00:24:27 +02:00
Mathew May 3373a429d4 MDL-50733 core: Update composer to updated behat-extension 2019-07-19 16:06:34 +02:00
Andrew Nicols 05d940a8ee Merge branch 'MDL-62497-master-final' of git://github.com/andrewnicols/moodle 2019-07-19 14:22:44 +08:00
Ryan Wyllie 3e5811aff2 MDL-62497 javascript: npm-shrinkwrap change 2019-07-19 14:12:49 +08:00
Andrew Nicols 73d3dfecc6 MDL-62497 javascript: lazy load js modules when cachejs is disabled 2019-07-19 14:12:49 +08:00
Ryan Wyllie 3095c3f6b0 MDL-62497 admin_tool: change user tours from third party lib to core 2019-07-19 14:12:49 +08:00
Ryan Wyllie 6466e89946 MDL-62497 javascript: rewrite core/str using ES6 syntax 2019-07-19 14:12:49 +08:00
Ryan Wyllie 38d4f754ca MDL-62497 javascript: add watchman support to grunt watch command 2019-07-19 14:12:49 +08:00
Ryan Wyllie 78610b53c7 MDL-62497 javascript: fix truncate.js
There was some code in the charLengthAt function which was requiring
that the "this" context not be null however it was unnecessary
because it never uses "this" and for some reason it was being set to
null after the ES6 transpiling.
2019-07-19 14:12:49 +08:00
Ryan Wyllie 195ea4480b MDL-62497 javascript: build AMD modules with new transpiler 2019-07-19 14:12:49 +08:00
Ryan Wyllie c53f86d408 MDL-62497 javascript: add babel transpiling to Grunt for ES6 support 2019-07-19 14:12:48 +08:00
Ryan Wyllie 67b2262938 MDL-62497 javascript: add babel polyfill for es6 support 2019-07-19 14:12:48 +08:00
Jun Pataleta 62e72577b5 MDL-65938 mod_quiz: Use new core/checkbox-toggleall
Plus:
* On the attempts report pages, the "Regrade selected attempts"
and "Delete selected attempts" buttons are now only enabled when
there's at least one item selected.
* Behat fixes for quiz edit feature after this patch
2019-07-19 13:14:11 +08:00
Jun Pataleta cbd8641a8a MDL-65994 question: Convert checkboxes to checkbox-toggleall element 2019-07-19 10:29:18 +08:00
Jun Pataleta 0b88a8bccc MDL-65946 mod_scorm: Use new core/checkbox-toggleall 2019-07-19 10:21:30 +08:00
David Monllaó 5ef49c591a MDL-65633 tool_analytics: Notification for invalid analysis intervals 2019-07-18 18:38:13 +02:00
David Monllaó 3cb0aaaa8c MDL-65633 analytics: New interfaces for time-splitting methods 2019-07-18 18:38:13 +02:00
Eloy Lafuente (stronk7) 8d9614b341 weekly release 3.8dev 2019-07-18 17:11:32 +02:00
Eloy Lafuente (stronk7) 8cc72cc764 NOBUG: Fixed file access permissions 2019-07-18 17:11:32 +02:00
Eloy Lafuente (stronk7) 2629c3d3a9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-07-18 17:11:30 +02:00
Kathrin Osswald 3b7ef98824 MDL-63250 mediaplugin: Fixed video player size in specific tables 2019-07-18 13:51:59 +02:00
Peter 9573f50ad1 MDL-66174 mod_assign: Remove the strict widths on the annotation menu 2019-07-18 12:55:40 +08:00
Mathew May 90117cefb8 MDL-65788 tool_policy: Move accept_policy JS call into an array 2019-07-18 10:47:18 +08:00
Andrew Nicols e2142cec0c Merge branch 'MDL-65757-master' of git://github.com/lameze/moodle 2019-07-18 09:20:38 +08:00
Andrew Nicols 23f2f3d8eb Merge branch 'MDL-65768-master' of git://github.com/lameze/moodle 2019-07-18 09:08:52 +08:00
Andrew Nicols 201c689b20 Merge branch 'MDL-59911-conv_cleanup_check' of git://github.com/leonstr/moodle 2019-07-18 08:25:07 +08:00
AMOS bot f8f249f0c7 Automatically generated installer lang files 2019-07-18 00:08:56 +00:00
Andrew Nicols 9b5b40031c Merge branch 'MDL-66163-master' of git://github.com/marinaglancy/moodle 2019-07-18 07:44:54 +08:00
Eloy Lafuente (stronk7) efbd73b91c Merge branch 'MDL-66115_master' of https://github.com/dvdcastro/moodle 2019-07-17 23:08:53 +02:00
Eloy Lafuente (stronk7) bcaf538116 Merge branch 'MDL-65742-master' of git://github.com/mihailges/moodle 2019-07-17 22:45:12 +02:00
Eloy Lafuente (stronk7) d637fc7238 Merge branch 'MDL-65753' of git://github.com/Chocolate-lightning/moodle 2019-07-17 19:40:28 +02:00
Bas Brands b101ce581e MDL-60636 themes: form autocomplete chevron down on mobile 2019-07-17 12:28:13 +02:00
Ryan Wyllie 48272cb849 MDL-66144 course: make course format weeks show relative dates 2019-07-17 15:52:51 +08:00
Ryan Wyllie 00a66396c7 MDL-66144 course: add function to calculate user course dates 2019-07-17 15:52:51 +08:00
Andrew Nicols 9b12c927aa Merge branch 'MDL-63612-master' of git://github.com/bmbrands/moodle 2019-07-17 15:47:41 +08:00
Andrew Nicols 3e35647f3f Merge branch 'MDL-65751-master' of git://github.com/mihailges/moodle 2019-07-17 15:22:27 +08:00
Andrew Nicols d744d8fd2c Merge branch 'MDL-65758' of git://github.com/Chocolate-lightning/moodle 2019-07-17 15:20:15 +08:00
Jake Dallimore 400eb6af80 Merge branch 'MDL-60405-master' of git://github.com/peterRd/moodle 2019-07-17 13:11:43 +08:00
Tom Dickman a8561c38b8 MDL-64757 core_output: fixed incorrect string language mustache blocks
Mustache blocks nested in parent templates where incorrectly rendering the default language Moodle.
This fix correctly passes the current language preference to all nested mustache templates such as blocks
which are children of another template.
2019-07-17 14:28:29 +10:00
Andrew Nicols 8958115663 Merge branch 'MDL-65538-master' of git://github.com/sarjona/moodle 2019-07-17 10:55:43 +08:00
Peter 1a9699012f MDL-66021 restore: Additional restore unit tests with async mode 2019-07-17 10:52:53 +08:00
Andrew Nicols 4f320d1d7f Merge branch 'MDL-65762-master' of git://github.com/abgreeve/moodle 2019-07-17 10:34:20 +08:00
Andrew Nicols e68e7280c4 Merge branch 'MDL-65928-master-2' of git://github.com/junpataleta/moodle 2019-07-17 10:21:37 +08:00
Andrew Nicols bd056d1e4b Merge branch 'MDL-65750-master' of git://github.com/lameze/moodle 2019-07-17 10:10:52 +08:00
Mihail Geshoski a6c735031a MDL-65751 lib: Replace deprecated jQuery functions 2019-07-17 09:59:44 +08:00
Jun Pataleta ea382408ce MDL-65928 mod_choice: Use correct options attribute
* Should be 'classes', not 'class'.
2019-07-17 09:54:03 +08:00
Andrew Nicols e8136fe3ca Merge branch 'MDL-65357-master' of git://github.com/bmbrands/moodle 2019-07-17 09:39:58 +08:00
Andrew Nicols 4165860739 Merge branch 'MDL-65769-master' of git://github.com/lameze/moodle 2019-07-17 09:30:43 +08:00
Andrew Nicols 4de3b06d4b Merge branch 'MDL-65763-master' of git://github.com/mihailges/moodle 2019-07-17 09:21:33 +08:00
Jake Dallimore fa2d9e57dc Merge branch 'MDL-60013-master-fix' of git://github.com/andrewnicols/moodle 2019-07-17 09:12:57 +08:00
Andrew Nicols 8f3f25e21a MDL-60013 report_progress: Stop using deprecated modal type 2019-07-17 08:26:27 +08:00
Eloy Lafuente (stronk7) c010001b90 Merge branch 'MDL-66032-master_awarded_badges_criteria' of https://github.com/andrewmadden/moodle 2019-07-17 01:31:46 +02:00
Eloy Lafuente (stronk7) 23e357f1a0 Merge branch 'MDL-65908-master' of git://github.com/peterRd/moodle 2019-07-17 01:04:33 +02:00
Marina Glancy da501ae93d MDL-66163 mod_forum: Add component to unittest sql queries
files from other components may exist in the files table
2019-07-16 20:36:05 +03:00
Leon Stringer 50960244d8 MDL-59911 fileconverter_unoconv: Fix: test PDF fails after upgrade
When generating the PDF of unoconv_test.docx this file's previous conversions
are removed from mdl_file_conversion.  But these may also be removed by
\core_files\task\conversion_cleanup_task in which case an error occurs as
delete() is invoked with a NULL id.  Added check for non-NULL id prior to
invoking delete().
2019-07-16 16:44:09 +01:00
Eloy Lafuente (stronk7) d764acc2cf Merge branch 'MDL-65555-Master' of https://github.com/tuanngocnguyen/moodle 2019-07-16 12:34:23 +02:00
Eloy Lafuente (stronk7) 62f4e8b60b Merge branch 'MDL-65761' of git://github.com/Chocolate-lightning/moodle 2019-07-16 12:27:43 +02:00
Eloy Lafuente (stronk7) 415ce83bcb Merge branch 'MDL-65744' of git://github.com/Chocolate-lightning/moodle 2019-07-16 11:20:58 +02:00
Mathew May f305ffc933 MDL-65744 lib: Modify minify test to check properly 2019-07-16 17:06:06 +08:00
Mathew May ad4d9cf745 MDL-65744 lib: Modify minify test to check properly 2019-07-16 17:05:33 +08:00
Mathew May b4e39ff24e MDL-65744 lib: Update minify pathconverter lib 2019-07-16 17:05:33 +08:00
Mathew May 0918e156a0 MDL-65744 lib: Update minify minify lib 2019-07-16 17:05:33 +08:00
Andrew Nicols e752e12971 Merge branch 'MDL-65954-master' of git://github.com/junpataleta/moodle 2019-07-16 15:13:41 +08:00
Andrew Nicols c8898e74a1 Merge branch 'MDL-65794_master' of git://github.com/markn86/moodle 2019-07-16 14:26:55 +08:00
Mark Nelson e81107fa25 MDL-65794 core: use themerev as the cache key when getting font icons 2019-07-16 14:23:34 +08:00
Mark Nelson 76669f0f51 MDL-65794 core: use langrev as the cache key when getting strings 2019-07-16 14:23:34 +08:00
Mark Nelson f88e607429 MDL-65794 core: make langrev available in JS 2019-07-16 14:23:34 +08:00
Mark Nelson 3f7360f07d MDL-65794 core: use themerev as the cache key when getting templates 2019-07-16 14:23:34 +08:00
Mark Nelson 6a1ad7c677 MDL-65794 core: allow ajax calls to specify a cache key
This allows for better caching capabilities on servers. If a
cache key is passed and the web service call does not require
the user to be logged in we will attempt to use GET for the
request. This allows for things like proxy caching on URLs.
The cache key must be changed if we do not want to retrieve
what has been cached and want to perform the request again.
2019-07-16 14:23:34 +08:00
Andrew Nicols ce4e052209 Merge branch 'MDL-60013-master' of git://github.com/junpataleta/moodle 2019-07-16 14:21:18 +08:00
Andrew Nicols 94d9aeade7 Merge branch 'MDL-65744' of git://github.com/Chocolate-lightning/moodle 2019-07-16 12:57:24 +08:00
Andrew Nicols d42df9f5a7 Merge branch 'master_MDL-65517' of https://github.com/yao9394/moodle 2019-07-16 11:50:58 +08:00
Andrew Nicols 417e334b91 Merge branch 'MDL-65409-master' of git://github.com/mihailges/moodle 2019-07-16 11:35:23 +08:00
Jake Dallimore e83765bcf1 Merge branch 'MDL-66158-master' of git://github.com/andrewnicols/moodle 2019-07-16 10:30:52 +08:00
Andrew Nicols 444f85aaa9 MDL-66158 calendar: Events should be space separated not an array 2019-07-16 09:46:02 +08:00
Mathew May d7b43fd9cf MDL-65761 lib: Update scssphp to 1.0.2 2019-07-16 09:29:37 +08:00
Mathew May f619e305a0 MDL-65761 lib: Update scssphp to 1.0.0 2019-07-16 09:16:44 +08:00
Nathan Nguyen a81f5d0b1a MDL-65555 mod_lesson: fix group override backup and restore 2019-07-16 11:16:03 +10:00
Nathan Nguyen 4d3bc85866 MDL-65555 mod_quiz: fix group override backup and restore 2019-07-16 11:16:03 +10:00
Mathew May 358d571156 MDL-65761 lib: Update scssphp to 0.8.3 2019-07-16 09:15:21 +08:00
Andrew Madden 7599223a1c MDL-66032 badges: Prevent empty awarded badges criteria being created.
When creating or editing the awarded badges criteria, the select element should be
required to prevent empty criteria from being created. In addition, if there are
already badges created with the empty criteria, there should be not be an exception
thrown when assessing whether the criteria has been completed.
2019-07-16 09:31:25 +10:00
Andrew Nicols a21f471e12 Merge branch 'MDL-65928-master-2' of git://github.com/junpataleta/moodle 2019-07-16 07:18:17 +08:00
Eloy Lafuente (stronk7) c4e14e535e Merge branch 'MDL-62836-master' of git://github.com/sarjona/moodle 2019-07-15 23:56:39 +02:00
Sara Arjona 3e8f9b2869 MDL-65538 competency: fix behat errors with firefox
There is a random behat error when executing the "Go to the competency
course competencies page." scenario: "Moodle exception: A required parameter
(courseid) was missing More information about this error".
It happens because sometimes the form is sent before the JS and it hasn't
the needed parameters defined. So they have been added as hidden to the
form to avoid the error (which I couldn't reproduce manually).
2019-07-15 13:48:56 +02:00
Eloy Lafuente (stronk7) e9514b4df9 Merge branch 'MDL-58026-master' of https://github.com/MartinGauk/moodle 2019-07-15 13:38:44 +02:00
Bas Brands c5b2ab4786 MDL-63612 core_admin: make course card colours configurable 2019-07-15 11:01:20 +02:00
David Monllaó 2ffdcd78d3 MDL-66026 analytics: No notification if not necessary 2019-07-15 14:24:21 +08:00
Jun Pataleta c5681f7ff1 MDL-60013 amd: Final removal of core/modal_confirm 2019-07-15 13:37:01 +08:00
Peter ee1062686c MDL-66021 backup: Clear course if required before restore 2019-07-15 13:16:50 +08:00
Jun Pataleta b3f4d77e00 MDL-65954 dataformat_pdf: Convert object records to array
* count() doesn't work quite as expected when the record being written
to the PDF is an object. So make sure to convert the record to an array.
* In addition, instead of comparing the total vs the current cell
counter, it would be more reliable to determine whether we're at the
last element of the array by getting the key for the last element and
comparing it with the key for the element that's currently being
processed.
2019-07-15 10:29:59 +08:00
Mihail Geshoski 88d2bc81c8 MDL-65751 lib: Update jQuery version in Moodle files 2019-07-15 08:45:34 +08:00
Mihail Geshoski c40548366b MDL-65751 lib: Upgrade jQuery lib to 3.4.1 2019-07-15 08:45:34 +08:00
Mihail Geshoski 324aa89ac4 MDL-65742 lib: Update HTMLPurifier version in Moodle related files 2019-07-15 08:43:16 +08:00
Mihail Geshoski e80855b0da MDL-65742 lib: Upgrade HTMLPurifier lib to 4.10.0 2019-07-15 08:43:16 +08:00
Peter e35cc9fea9 MDL-65908 mod_assign: Remove scroll repositioning.
Absolute positioned elements do not require repositioning on scroll as long as
their immediate parent is relatively positioned.
2019-07-15 08:35:58 +08:00
Mathew May 25d31d43b7 MDL-65788 tool_policy: Prevent two modals rendering for guests.
With the Guest registration calling policyactions.js the [data-action="view"]
was having two click handlers set on the inital policy modal trgger.
With this commit we state what we want the click event to be set on.
2019-07-14 18:52:27 +08:00
AMOS bot bf11226094 Automatically generated installer lang files 2019-07-14 00:08:42 +00:00
David Castro 39260e3ead MDL-66115 qtype_ddimageortext: Fixing choice deletion.
Summarising responses fails when question choices have been removed.

AMOS BEGIN
CPY [deletedchoice,qtype_match],[deletedchoice,qtype_ddimageortext]
AMOS END

(cherry picked from commit f0265e6db16caa6d13f8bce291e7da91b0eabb53)
2019-07-12 14:36:32 -05:00
Silvia Pinheiro ae1556ad93 MDL-62836 badges: Add behat test for the new group selector 2019-07-12 18:13:37 +02:00
Silvia Pinheiro b1e63fc7e2 MDL-62836 badges: Potential badge recipients by group
This affects the case when a badge is setup with the criteria "manual issue by role".
The non-editing teacher can see all participants of the course, when awarding a badge, even with SEPARATE GROUPS mode enabled.
With this change, when the non-editing teacher chooses a group, and searches for a user, the results are filtered for that group.
The same happens for "Existing badge recipients by group" when revoking a badge.
2019-07-12 18:13:37 +02:00
sam marshall ed73ff2b0e MDL-66132 Search: Behat tests should use simpledb, fix mock count
When searching using mock results (the 'global search expects the
query' step), the result count is not correctly set. As a result, the
page incorrectly reports that there are no results and doesn't
correctly show the first page of multi-page results.

Additionally, some of the core Behat tests can now be moved to use
real searching with the simpledb engine, rather than using mock
results at all. This gives better tests.

Unfortunately it was not possible to move all of the core Behat tests
and deprecate the mock step, because some of the tests are related to
the UI for 'special' features searching by user or group, neither of
which are supported by the simpledb engine.
2019-07-12 15:31:30 +01:00
Jun Pataleta 622d83d7bc MDL-65928 mod_choice: Use proper string for 'select/deselect all' labels
* Because string concatenation is bad!
2019-07-12 16:33:35 +08:00
Jun Pataleta 05b25140d0 MDL-65928 core: Use 'starts with' for non-exact toggle group matching
* Use the 'starts with' selector when matching toggle groups by name in
  non-exact mode to avoid potential conflicts with other toggle groups.
* Note down the required data attributes for JS in the template
  documentations.
* Add a note of this output component in upgrade.txt.
* Add doc blocks for the core/checkbox-toggleall attributes and methods.
2019-07-12 16:33:29 +08:00
Jun Pataleta 71eadbec62 MDL-65928 mod_choice: Add select/deselect all master button 2019-07-12 14:36:35 +08:00
Jun Pataleta c7ad9f3439 MDL-65928 mod_choice: Use core/checkbox_toggleall 2019-07-12 14:36:35 +08:00
Jun Pataleta 2abd969cc5 MDL-65928 core: Split toggle-all elements into separate templates
For cleaner templates, split checkbox toggle-all elements into three
templates:
* master checkbox (master control rendered as a checkbox)
* master button (master control rendered as a button)
* slave checkbox
2019-07-12 14:36:35 +08:00
Jun Pataleta 5943fc3f95 MDL-65928 core: Render master element as button too 2019-07-12 14:36:35 +08:00
Jun Pataleta 6259a9d065 MDL-65928 core: Create a checkbox_toggleall renderable 2019-07-12 14:36:35 +08:00
Jun Pataleta 0a3d306358 MDL-65928 core_amd: Let checkboxes belong to multiple toggle groups 2019-07-12 14:36:35 +08:00
Jun Pataleta 686ab8cc74 MDL-65928 core_amd: Add support for action elements
Enable/disable action elements that are associated with the toggle
group.
2019-07-12 14:36:35 +08:00
Mark Nelson 7fa4e41052 MDL-65794 core: no need for sesskey when login not required 2019-07-12 13:03:43 +08:00
Peter e349db4b4a MDL-65908 assign: Overflow and positioning updates
Draw all annotation within the drawing canvas instead of the region
2019-07-12 09:56:31 +08:00
Peter 2269b06cbc MDL-65908 assign: Revert overflow scroll fix
Revert "MDL-65484 assign: Scrolling overflow CSS"

This reverts commit 5bda066caa.
2019-07-12 09:56:31 +08:00
Damyon Wiese 27b67f6b5a MDL-65409 files: Allow location header
Allow incorrect capitals in location header response.
2019-07-12 08:42:20 +08:00
Mihail Geshoski 247206c970 MDL-65763 lib: Update GeoIP2 and MaxMind DB reader versions in Moodle 2019-07-12 08:17:46 +08:00
Mihail Geshoski b55260fcfb MDL-65763 lib: Upgrade MixMind DB reader lib to 1.4.1 2019-07-12 08:17:46 +08:00
Mihail Geshoski e952e8a425 MDL-65763 lib: Upgrade GeoIP2 lib to 2.9.0 2019-07-12 08:17:46 +08:00
John Yao 96e444665e MDL-65517 block_timeline: Hide completed course modules in Timeline
When some activities are manually completed by students, some are still showing in students' timeline.
This commit fix that for module assign,chat,choice,feedback,lesson,quiz,scorm and workshop.
2019-07-12 09:16:40 +10:00
David Monllaó b209893dd0 MDL-65769 mlbackend_php: Proper algo init & unit test fix 2019-07-12 06:28:31 +08:00
Simey Lameze 3e99b44088 MDL-65769 lib: update PHP-ML thirdpartylibs.xml 2019-07-12 06:28:31 +08:00
Simey Lameze e6c25fb057 MDL-65769 lib: update PHP-ML to 0.8.0 2019-07-12 06:28:31 +08:00
Eloy Lafuente (stronk7) f7e108438f weekly release 3.8dev 2019-07-11 23:33:29 +02:00
Eloy Lafuente (stronk7) f795e2008f NOBUG: Fixed file access permissions 2019-07-11 23:33:29 +02:00
Eloy Lafuente (stronk7) 2cb2a818e2 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-07-11 23:33:27 +02:00
Jun Pataleta 42255de5bc Merge branch 'MDL-65926-master_lowercase_username_sql_query' of https://github.com/andrewmadden/moodle 2019-07-11 20:57:29 +02:00
Bas Brands 8c2bbe5caa MDL-66039 themes: remove duplicate css
* removed duplicate #page { margin-top: 50px };
2019-07-11 14:52:40 +02:00
Simey Lameze da99fb56f6 MDL-65757 lib: update moodle thirdpartylibs.xml 2019-07-11 16:18:43 +08:00
Simey Lameze 9e3dca0a55 MDL-65757 lib: upgrade loglevel.js to 1.6.2 2019-07-11 16:18:04 +08:00
AMOS bot ddb3755c35 Automatically generated installer lang files 2019-07-11 00:08:53 +00:00
Eloy Lafuente (stronk7) 65b10696c5 Merge branch 'MDL-65931-master' of https://github.com/sammarshallou/moodle 2019-07-11 00:33:57 +02:00
sam marshall 107ab4b97b MDL-65931 Web services: get_courses_by_field minor inefficiency
When called with a list of course IDs, this change makes it preload
the contexts and categories before further processing. This saves a
number of queries, depending on how many courses you call it for.

(Typically the function is called with a list of all your enrolled
courses.)

The change may also improve performance for other web services that
call the validate_courses function.
2019-07-10 18:27:42 +01:00
Eloy Lafuente (stronk7) e6bfe3f32b Merge branch 'MDL-66114-master-fix' of git://github.com/marinaglancy/moodle 2019-07-10 12:42:04 +02:00
Marina Glancy de08f8b2ba MDL-66114 core_calendar: normalise categoryid value 2019-07-10 11:28:26 +02:00
Andrew Nicols 2c860ec20e Merge branch 'MDL-65747' of git://github.com/Chocolate-lightning/moodle 2019-07-10 14:33:10 +08:00
Andrew Nicols aeac7a10bc Merge branch 'MDL-66114-master-2' of git://github.com/marinaglancy/moodle 2019-07-10 14:28:27 +08:00
Jun Pataleta 1b81ed2f97 Merge branch 'MDL-66012-master' of git://github.com/lameze/moodle 2019-07-10 12:17:44 +08:00
Simey Lameze 7bfe4a52a3 MDL-66012 calendar: fix no event message on calendar views
Ahhh Jun. Thanks legend :)
2019-07-10 11:34:35 +08:00
Jun Pataleta b17040fdfc Merge branch 'MDL-64002-master-rebased' of git://github.com/ryanwyllie/moodle 2019-07-10 11:01:51 +08:00
Simey Lameze 9ed1114f27 MDL-65750 lib: update of moodle documentation
Update of readme_moodle.txt and thirdpartylibs.xml
with information about the update to 1.5.2
2019-07-10 08:48:22 +08:00
Simey Lameze 4155b7a40b MDL-65750 lib: update simplepie to 1.5.2 2019-07-10 08:48:22 +08:00
Mathew May 062dc67e4e MDL-65747 libraries: Remove the pear/CHAP library 2019-07-10 08:42:19 +08:00
Andrew Nicols 3034726dc9 Merge branch 'MDL-65562_master' of git://github.com/dmonllao/moodle 2019-07-10 08:09:25 +08:00
Andrew Nicols 511edea98f Merge branch 'MDL-65741-master' of git://github.com/sarjona/moodle 2019-07-10 08:07:43 +08:00
Eloy Lafuente (stronk7) 884bd3da36 Merge branch 'MDL-56835_master-coursetimecreated' of git://github.com/markn86/moodle 2019-07-10 00:07:46 +02:00
Eloy Lafuente (stronk7) d0df20d88b Merge branch 'MDL-64811_group_submission_warning' of git://github.com/davosmith/moodle 2019-07-09 17:57:37 +02:00
Marina Glancy 1f37e37356 MDL-66114 core_calendar: events without category 2019-07-09 17:52:07 +02:00
David Monllaó 1d5cb38292 MDL-65562 analytics: New get_prediction_actions API 2019-07-09 13:36:11 +02:00
David Monllaó 4de032eba3 MDL-65562 tool_analytics: Effectiveness report base 2019-07-09 13:36:11 +02:00
Jun Pataleta 28ebbfd77e Merge branch 'MDL-66081-master' of git://github.com/lameze/moodle 2019-07-09 17:11:41 +08:00
Davo Smith 07aafc9f80 MDL-64811 mod_assign: add webservice return type change to upgrade.txt 2019-07-09 09:01:44 +01:00
Andrew Nicols b25bcc45dc Merge branch 'MDL-64258-master' of https://github.com/HuongNV13/moodle 2019-07-09 14:26:13 +08:00
Ryan Wyllie 18cb44460b MDL-64002 message: add error handling for failed messages
Add inline error messages when messages fail to send. Also add
support for deleting messages that failed to send.
2019-07-09 13:49:24 +08:00
Andrew Nicols b6bbcd6ecb Merge branch 'MDL-65936' of git://github.com/Chocolate-lightning/moodle 2019-07-09 13:29:42 +08:00
Andrew Nicols c30d15814a Merge branch 'MDL-65965-master-fix' of git://github.com/junpataleta/moodle 2019-07-09 10:59:14 +08:00
Jun Pataleta 5fb766da14 MDL-65965 behat: Do not fetch grouping IDs for empty grouping idnumbers 2019-07-09 10:47:53 +08:00
Mark Nelson 11362b4aaf MDL-56835 report_participation: remove unreachable if condition 2019-07-09 09:14:15 +08:00
Andrew Nicols dbeada6f27 Merge branch 'MDL-65772-master' of git://github.com/vmdef/moodle 2019-07-09 08:44:48 +08:00
Mark Nelson 2604998150 MDL-56835 report_participation: initialise action variables 2019-07-09 08:27:17 +08:00
Mark Nelson 5a9e1bc18e MDL-56835 report_participation: use course timecreated as minlog 2019-07-09 08:27:17 +08:00
Eloy Lafuente (stronk7) d94c54f092 Merge branch 'MDL-66054-master' of git://github.com/rezaies/moodle 2019-07-09 00:57:07 +02:00
Eloy Lafuente (stronk7) b062e4c4cb Merge branch 'MDL-65965-master' of git://github.com/junpataleta/moodle 2019-07-09 00:54:56 +02:00
Eloy Lafuente (stronk7) 33b511bbc7 Merge branch 'MDL-60949_master' of git://github.com/dmonllao/moodle 2019-07-09 00:52:49 +02:00
Eloy Lafuente (stronk7) cb153cfe80 Merge branch 'MDL-65915' of https://github.com/timhunt/moodle 2019-07-09 00:51:12 +02:00
Martin Gauk 09fd8aec27 MDL-58026 question: fix regrading in progress attempt
Do not convert autosave steps to true steps when regrading.

Thanks Eric Merrill for providing the unit test code.
2019-07-08 09:35:34 +00:00
David Monllaó 35b10d09eb MDL-60949 analytics: Sort models by name 2019-07-08 08:19:47 +02:00
Mathew May 9193075486 MDL-65936 libraries: Remove duplicate fontawesome scss 2019-07-08 11:07:13 +08:00
AMOS bot 76fb9df69b Automatically generated installer lang files 2019-07-08 00:09:57 +00:00
AMOS bot d315eb9956 Automatically generated installer lang files 2019-07-07 00:08:47 +00:00
Stefan Topfstedt 1606fb6812 MDL-65621 block_myoverview: tag courses as "hidden from students"
This is intended to visually separate hidden course from open
courses in the course overview block
by applying a "Hidden from students" tag to the various views in
this block.
To achive this, the course summary exporter's output must be
augmented with a "visiblity" attribute,
carrying the given course's corresponding visibility setting.
Since the exporter now expects this data point as part of its input,
the output of the course_get_recent_courses()
function had to also be augmented with the course visibility setting
to provide this value.
2019-07-05 14:41:46 -07:00
Sara Arjona fe3bec8a5e MDL-65741 libraries: Fix coding style errors in Excel lib 2019-07-05 15:59:37 +02:00
Sara Arjona 0238ea21c4 MDL-65741 libraries: Replace PHPExcel with PHPSpreadsheet 2019-07-05 15:59:36 +02:00
Simey Lameze 316412beb4 MDL-66081 calendar: fix typo in attribute description 2019-07-05 17:04:13 +08:00
Matt Porritt d00715e410 MDL-56835 report_participation: release session lock 2019-07-05 10:33:13 +08:00
Ryan Wyllie 485ebc9b67 MDL-64002 message: buffer send messages in UI for slow connections 2019-07-05 10:10:08 +08:00
AMOS bot 05eb5122dc Automatically generated installer lang files 2019-07-05 00:09:35 +00:00
Andrew Madden 907be50c42 MDL-65926 moodlelib: Convert username to lowercase prior to SQL query
Within a very large project, it was found that searching for a user with their username in the user table using a case insensitive
search was inefficient. Instead it is proposed that the username input is made to be lowercase prior to executing a database query
as the username for each user in the database must be lowercase. This allows for a case sensitive query to find the user data.
Essentially we are moving a case insensitive search for a user from SQL into PHP to increase performance.
2019-07-05 09:02:56 +10:00
Eloy Lafuente (stronk7) fac49f8f72 weekly release 3.8dev 2019-07-04 16:50:36 +02:00
Eloy Lafuente (stronk7) 6855aeda7c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-07-04 16:50:31 +02:00
AMOS bot 56398bc1fc Automatically generated installer lang files 2019-07-04 00:08:30 +00:00
Shamim Rezaie 5018a004ef MDL-61114 mod_assign: Check if the teacher can access the override 2019-07-03 18:00:11 +02:00
Shamim Rezaie 9cb135db20 MDL-61114 mod_assign: assignment overrides to observe group membership 2019-07-03 18:00:11 +02:00
Shamim Rezaie eb70df6f4b MDL-61115: mod_lesson: Check if the teacher can access the override 2019-07-03 15:17:22 +02:00
Shamim Rezaie b392686a65 MDL-61115 mod_lesson: Lesson overrides to observe group membership 2019-07-03 15:17:22 +02:00
Sara Arjona f7b0d0fe7f Merge branch 'MDL-65105-master' of git://github.com/bmbrands/moodle 2019-07-03 15:05:32 +02:00
Sara Arjona 3eb551e809 Merge branch 'MDL-65958-master-v3' of git://github.com/lameze/moodle 2019-07-03 14:53:17 +02:00
Simey Lameze da6ed25999 MDL-65958 calendar: cover students default event type visibility 2019-07-03 20:39:58 +08:00
Simey Lameze 26d6404315 MDL-65958 calendar: students should not see course event type 2019-07-03 20:28:09 +08:00
Simey Lameze 47177cd6bc MDL-65958 calendar: add behat to test calendar_adminseesall behaviour 2019-07-03 20:27:59 +08:00
Sara Arjona 8a2ec04df3 Merge branch 'MDL-64794' of https://github.com/stronk7/moodle 2019-07-03 11:15:30 +02:00
Huong Nguyen afcc7a723d MDL-64258 Group: Performance problem on the enrol group members page 2019-07-03 15:08:51 +07:00
Huong Nguyen 53f796b91a MDL-64258 Group: Unit Test for find_users function 2019-07-03 15:08:49 +07:00
Simey Lameze 7abf78fc41 MDL-65958 calendar: fix adminseesall logic in the event form 2019-07-03 16:05:55 +08:00
Eloy Lafuente (stronk7) 843618cecd Merge branch 'MDL-65845_master' of git://github.com/dmonllao/moodle 2019-07-03 02:25:22 +02:00
Eloy Lafuente (stronk7) 5daeae8867 Merge branch 'MDL-65656-master-2' of git://github.com/andrewnicols/moodle 2019-07-03 02:16:35 +02:00
AMOS bot 9848f7391f Automatically generated installer lang files 2019-07-03 00:08:38 +00:00
AMOS bot 489ab2de53 Automatically generated installer lang files 2019-07-03 00:08:38 +00:00
Eloy Lafuente (stronk7) 45a8249431 Merge branch 'MDL-63268-master' of https://github.com/lucaboesch/moodle 2019-07-03 00:02:07 +02:00
Sara Arjona a1f0042e06 Merge branch 'MDL-64614' of git://github.com/stronk7/moodle 2019-07-02 21:21:18 +02:00
Luca Bösch d4beb21162 MDL-63268 tool_uploadcourse: Keep source course section number. 2019-07-02 19:44:22 +02:00
Eloy Lafuente (stronk7) b56dad81b7 Merge branch 'MDL-65707-master' of git://github.com/lameze/moodle 2019-07-02 16:40:02 +02:00
Sara Arjona 492b51a349 Merge branch 'MDL-66062' of git://github.com/stronk7/moodle 2019-07-02 15:15:49 +02:00
Sara Arjona ec089cc4f7 Merge branch 'MDL-65101_master' of git://github.com/markn86/moodle 2019-07-02 14:50:04 +02:00
Eloy Lafuente (stronk7) 3b07f13d52 MDL-66062 travis: Force PHP 7.1.30 to avoid some unit test failures
Make this sticky because current default version (7.1.11)
has a bug with redis-extension outputting information and breaking
tests.
2019-07-02 12:57:52 +02:00
Eloy Lafuente (stronk7) 7384dd3e2c Merge branch 'MDL-65728-master' of git://github.com/rezaies/moodle 2019-07-02 12:13:46 +02:00
Sara Arjona aa6a50cccc Merge branch 'MDL-65839_master' of git://github.com/dmonllao/moodle 2019-07-02 10:41:35 +02:00
Eloy Lafuente (stronk7) ca79f78948 Merge branch 'MDL-65853_master' of git://github.com/gjb2048/moodle 2019-07-02 10:25:23 +02:00
Shamim Rezaie 1ba1235eb1 MDL-34411 mod_quiz: Check if the teacher can access the override 2019-07-02 08:54:36 +02:00
Shamim Rezaie cb64dfbeb1 MDL-34411 groups: copy/paste error in test_groups_user_groups_visible 2019-07-02 08:54:36 +02:00
Shamim Rezaie ce1fd00203 MDL-34411 mod_quiz: quiz overrides to observe group membership 2019-07-02 08:54:36 +02:00
Damyon Wiese 043b38d580 MDL-64623 glossary: Check the entry id
The entry must match the glossary before you can do any action on it.
2019-07-02 08:54:36 +02:00
Damyon Wiese ea1ac3c7ef MDL-53689 xmldb: Require a sesskey to load xml
Loading and unloading xml files is not protected from XSS with a sesskey.
2019-07-02 08:54:36 +02:00
Sara Arjona af1fce5cb9 Merge branch 'MDL-48610-master_always_visible_alphabet_filter' of https://github.com/gmrsagar/moodle 2019-07-02 08:45:56 +02:00
Sara Arjona 7576bcbe9a Merge branch 'MDL-66049-master-workshopnamespace' of git://github.com/mudrd8mz/moodle 2019-07-02 08:28:53 +02:00
Sara Arjona a3729cbf6b Merge branch 'MDL-65901-master' of https://github.com/lucaboesch/moodle 2019-07-02 08:10:11 +02:00
Jun Pataleta 3e287c3bee Merge branch 'MDL-66022-master-fix' of git://github.com/andrewnicols/moodle 2019-07-02 15:58:51 +10:00
Andrew Nicols 7fdefd3184 MDL-66022 core: subplugins.php moved to json 2019-07-02 15:55:12 +10:00
AMOS bot 1433a8b03a Automatically generated installer lang files 2019-07-02 00:09:18 +00:00
Eloy Lafuente (stronk7) 671313b32d Merge branch 'MDL-64935-master' of git://github.com/bmbrands/moodle 2019-07-02 00:05:03 +02:00
Eloy Lafuente (stronk7) d1f430d160 Merge branch 'MDL-66022' of git://github.com/Chocolate-lightning/moodle 2019-07-01 23:55:14 +02:00
Shamim Rezaie 1d26a183bb MDL-66054 behat: typo fix 2019-07-02 04:04:28 +10:00
Eloy Lafuente (stronk7) 6e990b0c6b Merge branch 'MDL-64511' of https://github.com/paulholden/moodle 2019-07-01 18:52:06 +02:00
Sara Arjona 90f59ece67 Merge branch 'MDL-65297' of https://github.com/paulholden/moodle 2019-07-01 18:34:38 +02:00
Sara Arjona 2233fcbedd Merge branch 'MDL-65892-master-inlinereply' of git://github.com/mudrd8mz/moodle 2019-07-01 15:49:54 +02:00
David Mudrák 2bb03c59e8 MDL-66049 workshop: Fix the fully qualified class name
Because of the missing slash, the class 'workshop' was not found in the
current namespace and the cron failed to work.
2019-07-01 14:48:45 +02:00
Víctor Déniz Falcón 8b7d951046 MDL-65772 cachestore_mongodb: fix the version number of the library 2019-07-01 12:40:59 +01:00
Sara Arjona 3ee94b8dee Merge branch 'MDL-65973-master' of git://github.com/jleyva/moodle 2019-07-01 13:13:26 +02:00
Davo Smith 8773296b77 MDL-64811 mod_assign: fix webservice return type 2019-07-01 11:22:57 +01:00
Dan Marsden 22dfa6d31d MDL-60347 core: debugsmtp should be a developer only setting. 2019-07-01 12:15:05 +02:00
Sara Arjona 7d12c365ca Merge branch 'MDL-57884' of https://github.com/timhunt/moodle 2019-07-01 09:57:34 +02:00
AMOS bot 008bb06ece Automatically generated installer lang files 2019-06-30 00:09:09 +00:00
AMOS bot 069bc65d61 Automatically generated installer lang files 2019-06-30 00:09:08 +00:00
Eloy Lafuente (stronk7) a993013a33 MDL-64614 environment: mssql requirement up to 2012 (11.0) 2019-06-29 16:26:36 +02:00
Eloy Lafuente (stronk7) 502d2c8a48 MDL-64614 environment: 3.8 base information
This is a direct copy of the 3.7 branch to have
changes under control easier for next commits.
2019-06-29 11:52:00 +02:00
AMOS bot 86aca4f8b3 Automatically generated installer lang files 2019-06-29 00:09:09 +00:00
AMOS bot 693f54d0b5 Automatically generated installer lang files 2019-06-29 00:09:08 +00:00
David Monllaó a5d8d2ce9f MDL-65845 mod_lesson: Fix wrong pointer to an object
We should be pointing to the array of timecreated values instead.
2019-06-28 21:06:00 +02:00
David Monllaó 39db57c3ee MDL-65839 core_analytics: New indicator instances for each analysable 2019-06-28 21:00:04 +02:00
Paul Holden b4d999a5a6 MDL-64511 privacy: encode data URL when loading content.
Previously paths that included ? or # characters would break loading.
2019-06-28 13:16:16 +01:00
Paul Holden 8e7b3d4ede MDL-65297 atto_managefiles: improve filename decoding.
Filenames containing # character would previously be missed.
2019-06-28 13:12:04 +01:00
Sara Arjona 5528d03217 Merge branch 'MDL-65506-master' of git://github.com/rezaies/moodle 2019-06-28 12:16:14 +02:00
Mark Nelson 4ad162667d MDL-65101 core_message: add Behat test 2019-06-28 18:12:05 +08:00
Mark Nelson a9fd9c7909 MDL-65101 core_message: 'canmessage' should trump 'requirescontract' 2019-06-28 14:58:24 +08:00
AMOS bot 267a6475ef Automatically generated installer lang files 2019-06-28 00:09:39 +00:00
Gareth Barnard 5f3d948aaf MDL-65853 format_base: Labels counted in section activity summary. 2019-06-27 23:32:35 +01:00
Luca Bösch 242dad037f MDL-65901 forum: Style advanced search form properly. 2019-06-27 22:00:05 +02:00
Eloy Lafuente (stronk7) 7ec1804935 weekly release 3.8dev 2019-06-27 18:54:22 +02:00
Eloy Lafuente (stronk7) 730e779b0c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-06-27 18:54:19 +02:00
Jake Dallimore c0cc1ebe85 Merge branch 'MDL-65995' of git://github.com/stronk7/moodle 2019-06-27 13:37:50 +08:00
Andrew Nicols bf2d94e3c9 Merge branch 'MDL-53778' of https://github.com/stronk7/moodle 2019-06-27 08:35:56 +08:00
Mathew May e63a35dcff MDL-66022 core: Remove unused subplugin files 2019-06-27 08:18:24 +08:00
Eloy Lafuente (stronk7) 4421d3d127 Merge branch 'MDL-59502-master' of git://github.com/aanabit/moodle 2019-06-27 01:25:13 +02:00
Eloy Lafuente (stronk7) f88261eb49 Merge branch 'MDL-57632-master' of git://github.com/sarjona/moodle 2019-06-27 01:23:09 +02:00
Eloy Lafuente (stronk7) ee47095dbb MDL-53778 quiz: ensure completion deps are fulfilled by behat
Behat backgrounds and scenarios must observe the new
interdependencies between quiz completion settings.

This commits just applies that to the tests missing it.
2019-06-27 01:11:43 +02:00
Eloy Lafuente (stronk7) dcb8f5fefb MDL-53778 quiz: ensure completion deps are fulfilled by generator uses
There are some mod_quiz generator issues where the new chain
of dependencies between completion settings was not being observed.

This patch just ensures that the now 3 chained settings are
enabled together (or new quiz options logic will proceed to
disable them).
2019-06-27 01:11:43 +02:00
Eloy Lafuente (stronk7) 6f5990024c Merge branch 'MDL-66003-master-enfix' of git://github.com/mudrd8mz/moodle 2019-06-26 23:04:18 +02:00
Nicolas Dunand 713934f9b4 MDL-63458 core_user: Remove send message if messaging is disabled 2019-06-26 11:24:08 -07:00
Sara Arjona bdc12b0bd8 Merge branch 'MDL-65996' of git://github.com/stronk7/moodle 2019-06-26 19:16:07 +02:00
Sara Arjona d6c15a77a2 Merge branch 'MDL-60088' of git://github.com/Chocolate-lightning/moodle 2019-06-26 18:10:58 +02:00
Eloy Lafuente (stronk7) 3de633589c Merge branch 'MDL-59525' of git://github.com/Chocolate-lightning/moodle 2019-06-26 17:57:23 +02:00
Eloy Lafuente (stronk7) 504d1ee098 Merge branch 'MDL-57617' of git://github.com/Chocolate-lightning/moodle 2019-06-26 17:55:15 +02:00
Eloy Lafuente (stronk7) 51208845bf Merge branch 'MDL-53778' of https://github.com/anieminen/moodle 2019-06-26 17:49:53 +02:00
Bas Brands 33389741a3 MDL-65357 themes: position enrolment icons in course listing 2019-06-26 15:25:24 +02:00
Shamim Rezaie 706c5b3acd MDL-65506 forms: get the correct value for advcheckbox fields in js 2019-06-26 20:56:42 +10:00
Eloy Lafuente (stronk7) 61cd6fe9b0 Merge branch 'MDL-65249-master-fix' of https://github.com/snake/moodle 2019-06-26 10:28:08 +02:00
Jake Dallimore 93872a9a2f MDL-65249 session: use redis host constant in unit tests 2019-06-26 16:26:19 +08:00
Jake Dallimore 9b879d0bb7 Merge branch 'MDL-65249-redis-catch-exception-after-retry-master' of https://github.com/ilya-catalyst/moodle 2019-06-26 14:48:03 +08:00
Jake Dallimore ea64059672 Merge branch 'MDL-60978-master' of git://github.com/andrewnicols/moodle 2019-06-26 13:16:36 +08:00
AMOS bot 46f9914b31 Automatically generated installer lang files 2019-06-26 00:09:16 +00:00
Eloy Lafuente (stronk7) 56b66b1449 Merge branch 'MDL-65181' of https://github.com/paulholden/moodle 2019-06-26 00:37:56 +02:00
Eloy Lafuente (stronk7) b25890aa13 Merge branch 'MDL-65797-Master' of https://github.com/tuanngocnguyen/moodle 2019-06-26 00:31:39 +02:00
David Mudrák d201dba655 MDL-66003 lang: Use the updated strings in the tests 2019-06-25 18:05:03 +02:00
Helen Foster 08a114cf40 MDL-66003 lang: Import fixed English strings (en_fix)
Significant string changes:

* moodleorghubname,core_admin and
  sitemustberegistered,message_airnotifier - 'Moodle.net' changed to
  'Moodle'

* registration_help,core_admin and registermoochtips,core_hub - removed
  erroneous 'access to Moodle.net our course sharing platform'

* trackingtype_help,mod_forum and formnotavailable,core_grading and
  showgrades_help,core and rolewarning_help,core_rating -
  'Administration block' changed to 'Actions menu or admin block',
  'navigation block' changed to 'navigation drawer or block'
2019-06-25 18:00:51 +02:00
David Mudrák 703ad1a84e MDL-65892 forum: Fix styling of the inline reply textarea 2019-06-25 14:48:10 +02:00
Arto Nieminen 9147273640 MDL-53778 quiz settings: Ensure that disabled checkboxes have value 0 2019-06-25 13:23:12 +03:00
Ilya Tregubov 4120908e19 MDL-65249 Session: Throw exception if number of attempts exceeded. 2019-06-25 15:09:42 +10:00
Simey Lameze ce715ce556 MDL-65707 calendar: behat scenario to test default event type 2019-06-25 09:50:27 +08:00
Simey Lameze 419b868ae7 MDL-65707 calendar: set the correct event type on site calendar 2019-06-25 09:50:22 +08:00
Jake Dallimore 567289e29a Merge branch 'MD-64901-master-fix' of https://github.com/andrewnicols/moodle 2019-06-25 09:36:05 +08:00
Andrew Nicols a3f254053e MDL-64901 block_myoverview: Correct CSS selector in behat 2019-06-25 09:17:22 +08:00
AMOS bot 57ca66d594 Automatically generated installer lang files 2019-06-25 00:09:11 +00:00
Eloy Lafuente (stronk7) a1c3ebd3eb Merge branch 'MDL-64340-master' of git://github.com/rezaies/moodle 2019-06-25 00:53:52 +02:00
Eloy Lafuente (stronk7) c5390ec39c Merge branch 'MDL-65922-master' of https://github.com/dmitriim/moodle 2019-06-25 00:35:28 +02:00
Bas Brands df92689612 MDL-64935 theme: prevent activitynavigation link overflowing container 2019-06-24 14:45:25 +02:00
Bas Brands 987c70f544 MDL-65105 theme_classic: use $dark variable for navbar-dark 2019-06-24 11:42:58 +02:00
Shamim Rezaie 8a0f2e954e MDL-65728 tool_customlang: Escape html on the original translation field 2019-06-24 18:23:59 +10:00
Sagar Ghimire a57a585cd2 MDL-48610 tablelib: Always show alphabet filter in grader report 2019-06-24 14:51:01 +10:00
Jake Dallimore 4a4a3e0e27 Merge branch 'MDL-65893-master' of https://github.com/nicoroeser/moodle 2019-06-24 11:41:37 +08:00
Andrew Nicols 760938e39e Merge branch 'MDL-64998' of git://github.com/Chocolate-lightning/moodle 2019-06-24 08:16:14 +08:00
Mathew May cddcfccc36 MDL-64998 libraries: Remove references to lessphpc 2019-06-24 08:13:43 +08:00
AMOS bot 0b939813d6 Automatically generated installer lang files 2019-06-24 00:08:09 +00:00
Andrew Nicols 60f3e0f61d Merge branch 'MDL-64901-37_block_myoverview_layout_settings' of https://github.com/tomdickman/moodle 2019-06-24 06:44:11 +08:00
Eloy Lafuente (stronk7) 3a1522b1a4 MDL-65995 components: Too early to use debugging()
components are loaded very early in Moodle bootstrap/warmup
process. So, basically, core_component must be vanilla php
and moodlelib/weblib facilitites are not available yet.

So, changing debugging() call to error_log(), to make it
consistent with the rest of the calls in the method.
2019-06-22 12:06:25 +02:00
Eloy Lafuente (stronk7) df272345ba MDL-65996 exceptions: Make exception handler early-errors compliant
Some errors can happen really early in Moodle bootstrap/warmup
(basically when executing setup.php stuff, before general libraries
are loaded and available).

That's called "early errors" and there are good parts within
setuplib.php that must be able to run without any dependency
other than vanilla php code.

It seems that, along the years, some dependencies have been
added (calls to debugging(), to s()....) and they worked mostly
ok because early errors are rare.

This commit just makes all those dependencies conditional so,
if an early error is detected... the exception handler will
return real information about he error happening and not
handler own errors (like it's happening now).
2019-06-22 11:38:43 +02:00
Sara Arjona c2c5f08c09 MDL-57632 core_media: final deprecation core_media_manager::setup 2019-06-21 12:10:36 +02:00
Jun Pataleta e2b0e62f6e MDL-65965 behat: Map grouping for activity data generator 2019-06-21 15:38:28 +08:00
Jun Pataleta f512a662f5 MDL-65965 availability: Behat test for activity grouping restriction 2019-06-21 15:36:35 +08:00
Mathew May d3e61fdf72 MDL-60088 travis: add dist:trusty to travis
We are doing this because travis changed its default release to xenial.
So this is a stop gap and we will add xenial support moving forward.
2019-06-21 14:50:29 +08:00
Andrew Nicols e9aaf755d2 MDL-60978 travis: Re-enable Redis session tests 2019-06-21 14:36:13 +08:00
Andrew Nicols 96161a706b MDL-60978 session: Run redis tests in isolation 2019-06-21 14:36:13 +08:00
Andrew Nicols fc1785b086 MDL-60978 testing: Support ability to run phpunit in isolated process 2019-06-21 14:36:13 +08:00
Mathew May 655b994a4a MDL-64998 libraries: Remove PHP LESSc 2019-06-21 07:18:59 +08:00
Mathew May db9f122fbc MDL-59525 libraries: Throw errors on functions deprecated in 3.4 2019-06-21 07:12:48 +08:00
Mathew May 27607e6ac8 MDL-57617 Libraries: Throw errors on functions deprecated in 3.3 2019-06-21 07:08:21 +08:00
Dmitrii Metelkin f82931c169 MDL-65922 core: add grade_item_updated event 2019-06-21 08:54:37 +10:00
Shamim Rezaie 3840540790 MDL-64340 mod_quiz: not display "add random question" when no permission 2019-06-21 08:52:14 +10:00
Amaia Anabitarte c5b2f2b306 MDL-59502 Global Search: deprecate add_documents 4 arg implementation
In MDL-59039 we introduced changes to add_documents and should return an extra $partial boolean.
We still supported implementations returning 4 elements since then,
but  this issue is about removing this 4 returned elements compatibility.
2019-06-20 18:58:17 +02:00
Eloy Lafuente (stronk7) f1a8db6911 weekly release 3.8dev 2019-06-20 17:42:54 +02:00
Eloy Lafuente (stronk7) 96fdfb2b2e Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-06-20 17:42:50 +02:00
Juan Leyva bb0ce4793e MDL-65973 calendar: Avoid sesskey checks in WS
External function submit_create_update_form should avoid any sesskey checks.
2019-06-20 15:02:33 +02:00
Eloy Lafuente (stronk7) b84d2d6e04 Merge branch 'MDL-65759' of git://github.com/Chocolate-lightning/moodle 2019-06-20 11:41:00 +02:00
Jake Dallimore 98e54827d0 Merge branch 'MDL-65084' of https://github.com/NeillM/moodle 2019-06-20 09:37:42 +08:00
Jake Dallimore 7e72fd7b9f Merge branch 'MDL-65883-master' of git://github.com/lameze/moodle 2019-06-20 09:12:46 +08:00
Mathew May c04b8fbe40 MDL-65759 library: Add patch #115 for php-css-parser
Patch taken from Sabberworm/PHP-CSS-Parser#115 as specified in
moodle_readme.txt
2019-06-20 08:20:17 +08:00
Mathew May 376eb15617 MDL-65759 library: Update php-css-parser to 8.3.0 2019-06-20 08:16:13 +08:00
Andrew Nicols ab4324f42e Merge branch 'MDL-61319-master' of git://github.com/bmbrands/moodle 2019-06-20 08:09:24 +08:00
Eloy Lafuente (stronk7) 21406f66e0 Merge branch 'MDL-65646-master' of git://github.com/andrewnicols/moodle 2019-06-20 00:29:56 +02:00
Eloy Lafuente (stronk7) 0f7e873c30 Merge branch 'MDL-65770' of git://github.com/Chocolate-lightning/moodle 2019-06-20 00:26:06 +02:00
Eloy Lafuente (stronk7) 734c113027 Merge branch 'MDL-64975-master' of https://github.com/nicoroeser/moodle 2019-06-20 00:10:46 +02:00
Eloy Lafuente (stronk7) 90b01a0015 Merge branch 'MDL-57487-master' of git://github.com/sarjona/moodle 2019-06-19 23:05:50 +02:00
Eloy Lafuente (stronk7) 3831934241 Merge branch 'MDL-65151-master' of git://github.com/aanabit/moodle 2019-06-19 22:52:32 +02:00
Eloy Lafuente (stronk7) 094ac2d51a Merge branch 'MDL-65910-master' of git://github.com/junpataleta/moodle 2019-06-19 20:54:28 +02:00
Eloy Lafuente (stronk7) 1824ffab0d Merge branch 'MDL-65752' of git://github.com/Chocolate-lightning/moodle 2019-06-19 20:49:43 +02:00
Eloy Lafuente (stronk7) db339012f5 Merge branch 'MDL-65665-master-2' of git://github.com/mihailges/moodle 2019-06-19 20:29:09 +02:00
Eloy Lafuente (stronk7) 5759f72d8b Merge branch 'MDL-65666-master' of git://github.com/rezaies/moodle 2019-06-19 18:37:56 +02:00
Eloy Lafuente (stronk7) 220d29d46e Merge branch 'MDL-65806-master' of https://github.com/sammarshallou/moodle 2019-06-19 18:27:05 +02:00
Eloy Lafuente (stronk7) 59cfb582f6 Merge branch 'MDL-65864' of git://github.com/timhunt/moodle 2019-06-19 18:08:19 +02:00
Eloy Lafuente (stronk7) b3bbf6adf8 Merge branch 'MDL-55821-master' of git://github.com/damyon/moodle 2019-06-19 18:05:10 +02:00
Neill Magill 8b78e4cf49 MDL-65084 recent items: Handle deleted courses
The method should not cause errors when a course with activities
that the user has visited no longer exists.

Ensuring that we only get records for courses still in the database
will stop any course not found erros from get_fast_modinfo()
2019-06-19 09:07:34 +01:00
Neill Magill 29a0e5c4a4 MDL-65084 recent items: Test handling of deleted courses 2019-06-19 09:07:31 +01:00
Jake Dallimore 1d73e8c3be Merge branch 'MDL-65904-master' of git://github.com/merrill-oakland/moodle 2019-06-19 14:56:11 +08:00
Simey Lameze 58e601bf8b MDL-65883 mod_quiz: replace all hardcoded urls to proper params 2019-06-19 14:48:06 +08:00
Simey Lameze 6970450643 MDL-65883 mod_quiz: change attemptlib_test to use data generators 2019-06-19 14:48:01 +08:00
Tim Hunt b3c6c89b35 MDL-57884 quiz: autosave should not send the value of submit buttons 2019-06-18 17:46:47 +01:00
Bas Brands da26d7b6ea MDL-61319 themes: prevent using @extend rules for complex classes
* the settings and navigation blocks scss extended .fa which caused
issues with native fontawesome classes like fa-pull-left.
2019-06-18 13:37:07 +02:00
Tim Hunt dd6efc8b7b MDL-65915 quiz regrading: refactor some almost duplicate code 2019-06-18 11:37:15 +01:00
Tim Hunt 9a3af544ff MDL-65915 quiz regrading: better progress information
This makes it easier to diagnose problems if the regrade fails in the
middle.

Along the way, I added one un-declared field to the class, and
converted some SQL-construction code to $DB->get_in_or_equal().

I also added the ability to set attributes on the label in
html_writer::checkbox.
2019-06-18 11:37:12 +01:00
Simey Lameze d6884bb3d5 MDL-65768 auth_cas: update of moodle documentation
Update of readme_moodle.txt and thirdpartylibs.xml
with information about the update to 1.3.7
2019-06-18 13:54:27 +08:00
Simey Lameze 97133133cd MDL-65768 auth_cas: update phpCAS to 1.3.7 2019-06-18 13:49:48 +08:00
Peter 0e5f79e80c MDL-65740 lib: Adodb library update 2019-06-18 10:05:17 +08:00
Andrew Nicols 4e85b8b367 Merge branch 'MDL-65840' of https://github.com/mkassaei/moodle 2019-06-18 09:43:52 +08:00
Andrew Nicols dcab557adf Merge branch 'MDL-65469' of git://github.com/stronk7/moodle 2019-06-18 09:17:35 +08:00
AMOS bot 4234722cdb Automatically generated installer lang files 2019-06-18 00:08:29 +00:00
Eloy Lafuente (stronk7) ca582dc947 Merge branch 'MDL-65869-master' of git://github.com/aanabit/moodle 2019-06-18 00:14:03 +02:00
Eloy Lafuente (stronk7) 0307a98545 Merge branch 'MDL-64383-master' of git://github.com/damyon/moodle 2019-06-17 23:02:41 +02:00
Eloy Lafuente (stronk7) e7bf69e057 MDL-65469 mod_forum: Check for existence before operating 2019-06-17 17:14:55 +02:00
Davo Smith 74ddcaaa6f MDL-64811 mod_assign: warn about 'Default group' submissions 2019-06-17 16:01:47 +01:00
Andrew Nicols 0f2b29242e Merge branch 'MDL-65469-master' of git://github.com/peterRd/moodle 2019-06-17 14:18:40 +08:00
Peter 9c3e3a904b MDL-65469 mod_forum: Use the formchange checker initializer 2019-06-17 12:29:48 +08:00
Peter dfd0021749 MDL-65469 core: Expose formchecker to initialize current form state 2019-06-17 11:55:56 +08:00
Andrew Nicols e29530fe3c Merge branch 'MDL-65888-master' of git://github.com/mudrd8mz/moodle 2019-06-17 10:48:34 +08:00
Adrian Greeve 54968b15ec MDL-65762 lib: Update of Spout wrapper and docs. 2019-06-17 09:57:35 +08:00
Adrian Greeve 8f94f447f9 MDL-65762 lib: Upgrade the spout library to 3.0.1 2019-06-17 08:42:31 +08:00
AMOS bot d7557b791b Automatically generated installer lang files 2019-06-15 00:08:06 +00:00
Sara Arjona c128ccc142 MDL-57487 course: final deprecation external::get_activities_overview 2019-06-14 17:41:18 +02:00
Sara Arjona f65075f10f MDL-57487 mod_scorm: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona 9e2101a206 MDL-57487 mod_scorm: final deprecation xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona c023ce5873 MDL-57487 mod_quiz: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona a1bf1b04a5 MDL-57487 mod_quiz: final deprecation xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona 06c645a712 MDL-57487 mod_lesson: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona 18c1fdbb77 MDL-57487 mod_lesson: final deprecation xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona d4def03e98 MDL-57487 mod_forum: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona b18015c687 MDL-57487 mod_forum: final deprecation xxx_print_overview
Apart from deprecating forum_print_overview, the following method
has been also deprecated because it's not used anymore:
- forum_filter_user_groups_discussions
2019-06-14 17:42:59 +02:00
Sara Arjona 99a80e133a MDL-57487 mod_choice: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona ec22b5ed91 MDL-57487 mod_choice: final deprecation xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona c50f6c6bfd MDL-57487 mod_choice: final string deprecation for skipresultgraph
The final skipresultgraph should be done in 3.4 because it was
deprecated in 3.0 in MDL-49811.
2019-06-14 17:41:18 +02:00
Sara Arjona cd1d59a974 MDL-57487 mod_chat: final deprecation xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona 2af4a2c193 MDL-57487 mod_assign: deprecate strings used in xxx_print_overview 2019-06-14 17:41:18 +02:00
Sara Arjona 375e2ecea0 MDL-57487 mod_assign: final deprecation xxx_print_overview
Apart from deprecating assign_print_overview , the following methods
have been also deprecated because they are not used anymore:
- assign_get_mysubmission_details_for_print_overview
- assign_get_grade_details_for_print_overview
2019-06-14 17:41:18 +02:00
Nicolas Roeser 76a3cf95b7 MDL-64975 moodlelib: fix float formatting if decsep is ~ (tilde)
Commit 637da99edb has introduced changes
for removing trailing zeroes from the output of function format_float.
Due to a small omission, the function causes a PHP warning when the
string decsep is set to a tilde character ('~'). This is rarely the
case.

The bug lies in using PHP function preg_replace with a string that
contains external input (in this case, including decsep), but without
escaping it for PCRE processing.

This commit fixes the function to also support a tilde character in
string decsep. It also adds tests for having tilde as decimal separator.

Thanks-To:  Jake Dallimore <jake@moodle.com>
2019-06-14 13:05:39 +02:00
Paul Holden d0329e8413 MDL-65181 mod_data: show required field indicator for textarea fields. 2019-06-14 09:49:09 +01:00
Nicolas Roeser 591ece3093 MDL-65893 webservice: format site name (handle language tags etc.)
Allow web service clients (like the Moodle App) to benefit from a
formatted (filtered) site name. Select the filtered (localized etc.)
string on server side, before it is sent to the web service client.

For example, this translates a site name which uses language tags in
curly braces when using the filter_multilang2 plugin.

Thanks-To: Juan Leyva <juan@moodle.com>
Thanks-To: Kathrin Osswald <kathrin.osswald@uni-ulm.de>
2019-06-14 10:39:25 +02:00
M Kassaei 72d387254a MDL-65840 qtype_ddmarker: coordinates of cirle shape
The coordinates of a circle shape are not allowed to be smaller than its radius.
By default, set the coordinates to be the same as the radius.
2019-06-14 09:19:06 +01:00
Amaia Anabitarte 77e4d6f13b MDL-65151 core_course: Final deprecation of section_edit_controls() 2019-06-14 10:18:22 +02:00
Amaia Anabitarte b6bac30fdf MDL-65869 behat: Moving @app behat tests from core to moodlemobileapp
As described in MDL-65869 we are moving @app behat tests to
https://github.com/moodlehq/moodle-local_moodlemobileapp to be easier to maintain
and be sure are working with different mobile versions.
So we are not deprecating tests from core, just removing them because will be
in a different location.
2019-06-14 10:16:44 +02:00
Jun Pataleta fc97181924 MDL-65910 report_stats: Add stattype query condition for consistency 2019-06-14 13:00:31 +08:00
Peter 3359571e84 MDL-60405 lib_horde: Upgrade Horde library 2019-06-14 08:50:43 +08:00
Mihail Geshoski d411a1c10e MDL-65665 forum: WS does not respect subscribe on reply user preference 2019-06-14 08:44:28 +08:00
Mihail Geshoski e321b28236 MDL-65665 forum: Add unit test 2019-06-14 08:44:28 +08:00
Nathan Nguyen 86bc0ae4b9 MDL-65797 mod_assign: limit users to list of participants
Limit assign override union to list of participants in a course instead of users of the whole site.
2019-06-14 09:38:28 +10:00
Simey Lameze 589c4f9474 MDL-65883 mod_quiz: fix quiz navigation buttons href 2019-06-14 07:27:02 +08:00
Tim Hunt e900b2f34f MDL-65864 question engine: fix re-saving a new usage
Before this fix, test_repeated_usage_saving_new_usage was failing but
test_repeated_usage_saving_existing_usage was passing. Now the
behaviour is consistent and they both pass.
2019-06-13 18:04:02 +01:00
Eloy Lafuente (stronk7) 5dae8c0515 weekly release 3.8dev 2019-06-13 18:15:31 +02:00
Eloy Lafuente (stronk7) 4b1e452358 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-06-13 18:15:28 +02:00
Adrian Greeve f7203861d5 MDL-58439 admin: Fix missing page context. 2019-06-13 18:05:13 +02:00
Andrew Nicols ae321ea8fc Merge branch 'MDL-65814-master' of git://github.com/junpataleta/moodle 2019-06-13 18:05:09 +02:00
Adrian Greeve fba8e2cef3 Merge branch 'MDL-58439-admin-no-guest' of https://github.com/brendanheywood/moodle 2019-06-13 18:05:06 +02:00
Jun Pataleta 0d83964337 Merge branch 'MDL-55997-master' of git://github.com/peterRd/moodle 2019-06-13 18:05:03 +02:00
Adrian Greeve fa5bed66de Merge branch 'MDL-65369_master' of https://github.com/marxjohnson/moodle 2019-06-13 18:04:59 +02:00
Jun Pataleta 05931412a4 Merge branch 'MDL-65622-master' of https://github.com/dmitriim/moodle 2019-06-13 18:04:56 +02:00
Adrian Greeve 1caab625e7 Merge branch 'MDL-65492' of https://github.com/timhunt/moodle 2019-06-13 18:04:53 +02:00
Adrian Greeve d053310d6a Merge branch 'MDL-65671-master' of git://github.com/lameze/moodle 2019-06-13 18:04:49 +02:00
Shamim Rezaie a7174ddfec MDL-65666 mod_forum: Highlight unread posts count in the discussion list 2019-06-14 01:26:04 +10:00
Shamim Rezaie be1400c63c MDL-65786 mod_forum: mark posts as read when they are read 2019-06-13 23:33:35 +10:00
Mathew May 4828648258 MDL-65770 tool_policy: Add Moodle changes for guest policy popup 2019-06-13 13:25:35 +08:00
Andrew Nicols 29c442c558 MDL-65646 core: Move component storage to json 2019-06-13 12:26:00 +08:00
Mathew May fcdc822350 MDL-65770 tool_policy: Update guest policy popup 2019-06-13 11:52:55 +08:00
Jun Pataleta e46dd6d9e6 MDL-65814 block_timeline: Bring back item counts for action events 2019-06-13 11:31:35 +08:00
Peter 60eaa9bcb0 MDL-55997 core_reports: modify user stats query to fix duplicate rows 2019-06-13 07:39:03 +08:00
Eloy Lafuente (stronk7) f568841675 Merge branch 'MDL-64484' of https://github.com/paulholden/moodle 2019-06-12 19:43:52 +02:00
Shamim Rezaie e452c97f27 MDL-65786 mod_forum: re-adding the unread count to the social format 2019-06-13 03:13:19 +10:00
Eric Merrill 0f7f05379c MDL-65904 theme: Compile fallback css in the correct order 2019-06-12 13:05:40 -04:00
Paul Holden 52cf92277d MDL-64484 user: cross-DB compatible profile field ordering. 2019-06-12 16:55:44 +01:00
Paul Holden 60c55093ad MDL-65884 filters: update exclusive separator characters for tags.
The previous characters mangled the output of filtered text, exhibited
in the activity names filter for activities named '-' (single hyphen).
2019-06-12 16:13:29 +01:00
Tim Hunt 376b7fb857 MDL-65492 cache admin: make it easier to purge a cache repeatedly
This can be a big time-saver, e.g. during development.
2019-06-12 13:23:06 +01:00
Tim Hunt 1baf3af3e8 MDL-65492 cache admin: make the code easier to understand 2019-06-12 13:23:03 +01:00
Shamim Rezaie 24bc206b75 MDL-65786 mod_forum: pass parameter to str helper when loading strings
We should not concatenate strings. We should make use of the {$a}placeholder instead.
2019-06-12 19:49:52 +10:00
Mark Johnson 288d6ebb54 MDL-65369 events: Include changed course settings in course_updated 2019-06-12 09:54:30 +01:00
Simey Lameze e5ab472810 MDL-65671 calendar: add event listener to three month block 2019-06-12 15:54:25 +08:00
Simey Lameze fed1cc738d MDL-65671 calendar: tidy up calendar header 2019-06-12 15:54:24 +08:00
Simey Lameze 859bc931d8 MDL-65671 calendar: remove course selector label from exporters 2019-06-12 15:54:24 +08:00
Simey Lameze 4cc9d7c83a MDL-65671 calendar: add listener to day link in month view 2019-06-12 15:54:12 +08:00
Jun Pataleta 5b8b2ca465 Merge branch 'MDL-65803-master' of git://github.com/peterRd/moodle 2019-06-12 13:58:51 +08:00
Mathew May d712127f34 MDL-65758 library: Add Moodle modifications for Mustache 2019-06-12 13:34:27 +08:00
Andrew Nicols 92198c5b9e Merge branch 'MDL-65703-master' of git://github.com/lameze/moodle 2019-06-12 12:33:34 +08:00
Peter 39498b6833 MDL-65803 recentlyaccesseditems: Restrict response to valid courses.
* Additional hooks to cleanup data when a course or module is deleted
* Augmented unit tests to cover the situation when a course is deleted
* Upgrade step to cleanup existing data
2019-06-12 12:10:50 +08:00
Mathew May a5410e13bf MDL-65758 library: Update mustache.js to 3.0.1 2019-06-12 10:58:58 +08:00
Andrew Nicols e36bbb4c24 Merge branch 'MDL-65829_master' of git://github.com/dmonllao/moodle 2019-06-12 10:20:15 +08:00
Andrew Nicols 1967e07175 Merge branch 'MDL-65754' of git://github.com/Chocolate-lightning/moodle 2019-06-12 09:45:36 +08:00
Mathew May e2ffa09fdc MDL-65754 mod_feedback: Remove unused v1 recaptcha 2019-06-12 09:38:39 +08:00
Mathew May 6cefd826e5 MDL-65754 auth_email: Remove unused v1 recaptcha 2019-06-12 09:35:54 +08:00
Mathew May 8048c981b9 MDL-65752 lib: Update html2text to 4.2.1 2019-06-12 08:58:26 +08:00
Andrew Nicols e10b3106f4 Merge branch 'MDL-64484' of https://github.com/paulholden/moodle 2019-06-12 08:56:28 +08:00
Andrew Nicols 871679c9e0 Merge branch 'MDL-65509-master' of git://github.com/rezaies/moodle 2019-06-12 08:47:55 +08:00
Mathew May 90ca6fad47 MDL-65744 lib: Modify minify test to check properly 2019-06-12 07:33:22 +08:00
sam marshall c207289127 MDL-65806 Search: Solr does not find words in italic 2019-06-11 16:40:15 +01:00
David Mudrák 1ecf0397bb MDL-65888 forum: Do not send notifications to unconfirmed users
Under certain conditions, users marked as not confirmed yet may be
returned as forum notification recipients. Such users are considered as
inactive though and the delivery adhoc task cannot be run as these
users, throwing an exception.

The solution is to make sure that fetch_subscribed_users() does not
include unconfirmed users, similarly to what was done for suspended
users and nologin users.

The added unit test also checks for deleted users. But these should
never be returned as subscribed because we consider enrolled users only
and deleted users are filtered out implicitly.
2019-06-11 09:53:23 +02:00
Adrian Greeve 205f0cedaf Merge branch 'MDL-63878-master' of git://github.com/damyon/moodle 2019-06-11 13:30:04 +08:00
Mathew May 8ae5a16743 MDL-65744 lib: Update minify pathconverter lib 2019-06-11 13:08:29 +08:00
Mathew May a62074ba7d MDL-65744 lib: Update minify minify lib 2019-06-11 13:06:19 +08:00
Andrew Nicols 6b4a254d74 Merge branch 'MDL-65779-master' of git://github.com/peterRd/moodle 2019-06-11 12:07:40 +08:00
Jun Pataleta 79edcde3f6 Merge branch 'MDL-7339-master' of git://github.com/mickhawkins/moodle 2019-06-11 11:49:36 +08:00
Brendan Heywood 1fc0c4bd4e MDL-58439 admin: Ignore guest logins for all admin pages 2019-06-11 13:44:58 +10:00
Andrew Nicols ba0426176b Merge branch 'MDL-65817' of git://github.com/stronk7/moodle 2019-06-11 11:05:03 +08:00
Mathew May a98a2b2444 MDL-65753 lib: Update Markdown to 1.8.0 2019-06-11 10:56:10 +08:00
Andrew Nicols c005b2f7a4 Merge branch 'MDL-65183-MOODLE-master' of https://github.com/kristian-94/moodle 2019-06-11 10:34:13 +08:00
Andrew Nicols 61b0df5716 Merge branch 'MDL-65754' of git://github.com/Chocolate-lightning/moodle 2019-06-11 10:15:43 +08:00
Adrian Greeve 7223ef7979 Merge branch 'MDL-64743-master' of git://github.com/abias/moodle 2019-06-11 10:05:39 +08:00
Michael Hawkins 76d0192e0b MDL-7339 admin: Replaced "open to google" references to be more generic
AMOS BEGIN
 MOV [configopentogoogle,admin],[configopentowebcrawlers,admin]
 MOV [opentogoogle,admin],[opentowebcrawlers,admin]
 MOV [check_google_details,report_security],[check_crawlers_details,report_security]
 MOV [check_google_error,report_security],[check_crawlers_error,report_security]
 MOV [check_google_info,report_security],[check_crawlers_info,report_security]
 MOV [check_google_name,report_security],[check_crawlers_name,report_security]
 MOV [check_google_ok,report_security],[check_crawlers_ok,report_security]
AMOS END
2019-06-11 10:04:01 +08:00
Andrew Nicols 94bce858b4 Merge branch 'MDL-65746' of git://github.com/Chocolate-lightning/moodle 2019-06-11 09:49:18 +08:00
Adrian Greeve 192ad8dcc8 Merge branch 'MDL-65208-cli-upgrade-is-pending' of https://github.com/brendanheywood/moodle 2019-06-11 09:42:08 +08:00
Jun Pataleta 68c723efdf Merge branch 'MDL-65336-master' of git://github.com/aanabit/moodle 2019-06-10 19:37:25 +08:00
Jun Pataleta 34129ea9bd Merge branch 'MDL-55592-master' of git://github.com/damyon/moodle 2019-06-10 15:25:12 +08:00
Andrew Nicols 10dba71fe3 Merge branch 'MDL-58268-master' of git://github.com/cescobedo/moodle 2019-06-10 15:03:05 +08:00
Andrew Nicols cd653ba77c Merge branch 'm38_MDL-61038_Fix_uuid_extensions_usage_v2' of https://github.com/scara/moodle 2019-06-10 14:05:36 +08:00
Adrian Greeve 5b9027a83a Merge branch 'MDL-65438-master' of git://github.com/bmbrands/moodle 2019-06-10 13:56:51 +08:00
Adrian Greeve 317950fa65 Merge branch 'MDL-65639_master' of git://github.com/dmonllao/moodle 2019-06-10 13:10:02 +08:00
Simey Lameze dbccdae8f5 MDL-65671 calendar: add the calendar view selector 2019-06-10 13:09:57 +08:00
Adrian Greeve 27e2aba473 Merge branch 'MDL-65782-master' of git://github.com/marinaglancy/moodle 2019-06-10 11:11:44 +08:00
Mathew May b71e734b27 MDL-65746 libraries: Remove pear/RADIUS lib 2019-06-10 08:28:43 +08:00
Matteo Scaramuccia c7321899c9 MDL-61038 setuplib: Fixed PECL UUID extension support
generate_uuid() has been refactored into \core\uuid::generate()
2019-06-09 23:24:26 +02:00
Paul Holden 03098df6ef MDL-64484 user: show full profile field name in filter element. 2019-06-07 14:04:32 +01:00
Amaia Anabitarte f0e8f0a5b8 MDL-65336 core_message: New muted conversation generator and selectors 2019-06-07 10:38:49 +02:00
Amaia Anabitarte 8c933bde87 MDL-65336 core_message: Behat tests for mute/unmute conversations 2019-06-07 10:38:49 +02:00
Damyon Wiese 574b2f1f11 MDL-63878 assign: Show download feedback links
In the grading interface provide a link to download the generated pdf
containing the feedback for this submission attempt.
2019-06-07 10:39:41 +08:00
AMOS bot 8cffb3fe56 Automatically generated installer lang files 2019-06-07 00:09:38 +00:00
Kristian Ringer 6c97045e5e MDL-65183 block_timeline: escape newline characters 2019-06-07 09:37:34 +10:00
Dmitrii Metelkin 657cc33be9 MDL-65622 core: add grade_item_created event 2019-06-07 07:38:41 +10:00
Eloy Lafuente (stronk7) 9954f5391d MDL-65817 behat: switch to forked repo towards php73 compatibility
It seems that https://github.com/instaclick/php-webdriver/pull/91
is being ignored (in fact the repository itself doesn't show much
activity). So we have decided to fork it and apply any fix able
to keep our (non-marionette) runs working.

Hopefully, soon, the new W3C drivers will be supported by our
behat->mink stack... and we'll be able to move to it (from current
JSonwire drivers). So all this will be hostory.
2019-06-06 19:51:01 +02:00
David Monllaó 692d691da5 MDL-65639 analytics: Rewording time-splitting methods 2019-06-06 19:07:55 +02:00
David Monllaó 5045c4d491 MDL-65639 tool_analytics: Reworded language strings
Some language strings have been reworded to clarify functionalities.

AMOS BEGIN
  MOV [getpredictionsresults,tool_analytics],[scheduledanalysisresults,tool_analytics]
  CPY [getpredictionsresultscli,tool_analytics],[scheduledanalysisresultscli,tool_analytics]
AMOS END
2019-06-06 19:07:55 +02:00
David Monllaó 21cf3ec8d4 MDL-65639 analytics: From time-splitting method to analysis interval
This change only affects the Moodle UI.
2019-06-06 19:07:55 +02:00
David Monllaó c182a67fa0 MDL-65829 analytics: Accept enrol start time after analysis time 2019-06-06 19:05:48 +02:00
Eloy Lafuente (stronk7) f3507273e9 weekly release 3.8dev 2019-06-06 16:46:31 +02:00
Eloy Lafuente (stronk7) 971b4c11ce NOBUG: Fixed SVG browser compatibility 2019-06-06 16:46:29 +02:00
Eloy Lafuente (stronk7) bb14c03ffe Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-06-06 16:46:28 +02:00
Eloy Lafuente (stronk7) 11cdea3fad MDL-65201 backup: amend tests to apply for the final agreed criteria
backup nextstarttime ASC
course timemodified DESC
2019-06-06 11:16:01 +02:00
Eloy Lafuente (stronk7) bcd4862e84 MDL-65201 backup: fix wrong sorting that was missed on integration 2019-06-06 10:08:02 +02:00
Damyon Wiese 018266f6f3 MDL-55821 assign: Show assign grade
When marking workflow is enabled and the grade is not released yet,
it would be helpful to show the assignment grade in the grading form.
2019-06-06 14:26:28 +08:00
Damyon Wiese f5348ae301 MDL-64383 user: Make username required
Username is a required field, we should indicate this even if it has a help icon.
2019-06-06 13:26:51 +08:00
Jun Pataleta 4e1ee0bbb5 Merge branch 'MDL-34498-master' of git://github.com/damyon/moodle 2019-06-06 10:50:56 +08:00
Damyon Wiese 00fd749041 MDL-34498 session: Do not extend expired session
After showing a warning, if the "extend session" button is clicked too late,
tell them their session is expired so they can collect any unsaved data in the page.
2019-06-06 09:35:35 +08:00
Damyon Wiese ceacef1bd8 MDL-34498 grade: rubric session timeout
Allow a longer session timeout when editing a grading rubric form.
2019-06-06 09:31:07 +08:00
Damyon Wiese 7aeeb44463 MDL-34498 session: Add a checker to warn before session expiry
Replaces old yui module checknet.
2019-06-06 09:31:01 +08:00
Eloy Lafuente (stronk7) ba2473e4e4 weekly release 3.8dev 2019-06-06 09:06:22 +08:00
AMOS bot 6438d80ce9 Automatically generated installer lang files 2019-06-06 09:06:21 +08:00
AMOS bot b91f66b3c6 Automatically generated installer lang files 2019-06-06 09:06:21 +08:00
AMOS bot 5e7d561393 Automatically generated installer lang files 2019-06-06 09:06:21 +08:00
AMOS bot d89de5e15e Automatically generated installer lang files 2019-06-06 00:08:10 +00:00
Eloy Lafuente (stronk7) e867ffd689 Merge branch 'MDL-65344_master' of git://github.com/markn86/moodle 2019-06-05 21:06:15 +02:00
Eloy Lafuente (stronk7) 7e573716bf Merge branch 'MDL-65421-master' of https://github.com/lucaboesch/moodle 2019-06-05 20:19:11 +02:00
Eloy Lafuente (stronk7) 433968283a Merge branch 'master_MDL-65201_Automated_backup_course_ordering' of https://github.com/mattporritt/moodle 2019-06-05 16:16:39 +02:00
Jun Pataleta 7068d7be88 Merge branch 'MDL-65787-master' of git://github.com/sarjona/moodle 2019-06-05 17:24:27 +08:00
Sara Arjona 4221e36b16 MDL-65787 badges: fix warning count() with PHP 7.2 2019-06-05 11:02:53 +02:00
Shamim Rezaie a875f3f513 MDL-65509 output: use translated strings when showing a fatal error 2019-06-05 18:44:46 +10:00
Luca Bösch d60d3b9ec6 MDL-65421 core_grades: Move here icon width. 2019-06-05 10:39:33 +02:00
Jun Pataleta 9e5dc79f38 Merge branch 'MDL-63643-master' of git://github.com/lameze/moodle 2019-06-05 15:43:35 +08:00
Shamim Rezaie dc468ac523 MDL-65509 javascript: Make core dialogues translatable 2019-06-05 17:36:02 +10:00
Sara Arjona 020e7b9447 Merge branch 'MDL-65777-master' of git://github.com/mihailges/moodle 2019-06-05 09:00:40 +02:00
Mihail Geshoski 415133885c MDL-65777 assignment: Respect user full name in downloaded submissions 2019-06-05 11:12:57 +08:00
Adrian Greeve 6bda2498d6 Merge branch 'MDL-65731' of https://github.com/timhunt/moodle 2019-06-05 10:39:29 +08:00
AMOS bot 22ce5f9e1c Automatically generated installer lang files 2019-06-05 00:08:11 +00:00
Matt Porritt c2716719a6 MDL-65201 Backup: Automated backup course ordering
This patch adds sort ordering to the way courses are
automatically backed up. It sets the following preference:

Backup courses that do not have an entry in backup_courses first,
as they are likely new and never been backed up.
Backup courses that have the oldest next start time in backup_courses.
Give preference to most recently modified courses over other courses.
2019-06-04 23:09:57 +00:00
Eloy Lafuente (stronk7) 28e6fa3885 Merge branch 'MDL-65510_master' of https://github.com/t-schroeder/moodle 2019-06-05 00:06:34 +02:00
Eloy Lafuente (stronk7) ceee04cfb7 Merge branch 'MDL-65689-master' of git://github.com/rezaies/moodle 2019-06-04 23:31:51 +02:00
Eloy Lafuente (stronk7) 19e9ba22b6 Merge branch 'MDL-65578-master' of git://github.com/peterRd/moodle 2019-06-04 23:29:12 +02:00
Eloy Lafuente (stronk7) 1be6251b14 Merge branch 'MDL-65576-master' of git://github.com/andrewnicols/moodle 2019-06-04 21:39:01 +02:00
Eloy Lafuente (stronk7) bf5ed19cb4 Merge branch 'm38_MDL-65686_Fix_Incorrect_Function_Call' of https://github.com/scara/moodle 2019-06-04 20:04:41 +02:00
Simey Lameze 6b2fca2f3d MDL-65703 calendar: do not add course param for site calendar 2019-06-04 19:33:45 +08:00
Andreas Grabs 5d384053b0 MDL-65703 core_calendar: fix user event type filtering logic 2019-06-04 19:33:22 +08:00
Marina Glancy 5ecbc5d9f7 MDL-65782 roles: allow several roles with user/frontpage archetype 2019-06-04 11:49:23 +02:00
Mathew May dd287e7df0 MDL-65658 mod_forum: Update the group image titles 2019-06-04 11:48:17 +02:00
Jun Pataleta 34b6079e6b Merge branch 'MDL-65696-MOODLE-master' of https://github.com/kristian-94/moodle 2019-06-04 16:55:06 +08:00
Jun Pataleta 6058e44ff8 Merge branch 'MDL-65810' of git://github.com/stronk7/moodle 2019-06-04 15:25:18 +08:00
Jun Pataleta a271b8ce20 Merge branch 'MDL-62835-master-1' of git://github.com/mihailges/moodle 2019-06-04 14:18:21 +08:00
Mihail Geshoski 03e9b0766f MDL-62835 resource: Display description for book, lesson and imscp 2019-06-04 13:26:28 +08:00
Mathew May 061524de15 MDL-65754 libraries: Remove unused v1 recaptcha 2019-06-04 12:58:19 +08:00
Peter bbc722366a MDL-65779 mod_forum: Add privatereplies to the backup process 2019-06-04 12:20:24 +08:00
Andrew Nicols a2f81b201e MDL-65656 analytics: Stop covering memory-intensive tests 2019-06-04 10:16:50 +08:00
AMOS bot a245490ef5 Automatically generated installer lang files 2019-06-04 00:08:07 +00:00
Tom Dickman 5f59a4c063 MDL-64901 block_myoverview: admin settings to control available layouts
Added an admin setting which allows the administrator to set the available layouts for users and which
defaults to all layouts being available, or the card layout only if no layouts are enabled.
If only one layout is enabled, the dropdown `nav-display-selector` template will not be displayed as
it can no longer be utilised.
If the user preference is set to a layout that is no longer available, this is ignored and the first
available layout defaulted to.
2019-06-04 08:34:52 +10:00
Eloy Lafuente (stronk7) 6f62aa2d2b Merge branch 'MDL-63240-master' of https://github.com/Kathrin84/moodle 2019-06-03 17:56:51 +02:00
Eloy Lafuente (stronk7) cbf768ba89 Merge branch 'MDL-65660-master' of git://github.com/peterRd/moodle 2019-06-03 17:48:04 +02:00
Eloy Lafuente (stronk7) 944df31cc0 Merge branch 'MDL-65675-master' of git://github.com/andrewnicols/moodle 2019-06-03 17:37:13 +02:00
Sara Arjona 87d4624b1f Merge branch 'MDL-65658-master' of git://github.com/Chocolate-lightning/moodle 2019-06-03 12:33:16 +02:00
Brendan Heywood 8918cc75c1 MDL-65208 admin: Add upgrade cli --is-pending option 2019-06-03 14:33:07 +10:00
AMOS bot 44f8551903 Automatically generated installer lang files 2019-06-03 00:08:10 +00:00
Kristian Ringer 2620bc973b MDL-65696 assign: Fix width of editpdf comments 2019-06-03 09:30:58 +10:00
cescobedo e094614d7c MDL-58268 enrol_ldap: Remove enrol/ldap/cli/sync deprecated in 3.3 2019-05-31 09:40:47 +02:00
Andrew Nicols 4b6e032890 MDL-65578 forum: Hide action menu where no actions exist 2019-05-31 12:43:22 +08:00
Mathew May c939a043bf MDL-65658 mod_forum: Group images links and titles groups
After a change in Moodle 3.6 some links & titles went missing.
Here I am adding them back & incresing the output image to 100x100px
2019-05-31 08:14:20 +08:00
Andrew Nicols 17f0579797 MDL-65576 behat: Reset Selenium driver between scorm scenarios 2019-05-31 08:08:26 +08:00
Peter 92ba55ee4f MDL-65660 mod_forum: Allow guest users to view post buttons and links
For a self enrolment enabled course allow guest users to see the add
discussion and reply buttons
2019-05-31 07:06:32 +08:00
Eloy Lafuente (stronk7) 46855d025e MDL-64794 tcpdf: Bump to tcpdf 6.2.26 2019-05-30 23:47:54 +02:00
Matteo Scaramuccia 69a1afd9b9 MDL-65686 setuplib: Fix missing round brackets 2019-05-30 22:41:37 +02:00
Eloy Lafuente (stronk7) d8ddd509e8 MDL-65810 behat: Update master to use 3.38.0 behat extension tag 2019-05-30 20:48:26 +02:00
Eloy Lafuente (stronk7) 29c395187f weekly release 3.8dev 2019-05-30 12:18:18 +02:00
Eloy Lafuente (stronk7) 472d152fcf Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-05-30 12:18:15 +02:00
Tim Hunt 12eb2c2bf4 MDL-65731 quiz manual grading: fix ambiguous order by idnumber 2019-05-29 16:51:41 +01:00
Kathrin Osswald ca0e331cde MDL-63240 theme Boost: Removed z-indexes for border styling in navdrawer 2019-05-29 17:46:48 +02:00
Marina Glancy ff51af495f MDL-65726 core_roles: allow to create roles in install.php 2019-05-29 10:48:51 +02:00
Damyon Wiese e14f112bd0 MDL-55592 lti: Forget the key and secret
When the "Enter your consumer key and shared secret" form is displayed,
it should not contain the same values it had the last time it was opened.
2019-05-29 13:59:22 +08:00
Adrian Greeve c0542b8a08 Merge branch 'MDL-57729-master' of git://github.com/mihailges/moodle 2019-05-29 11:39:38 +08:00
Adrian Greeve 2ff6a2a58b Merge branch 'MDL-65726-master' of git://github.com/marinaglancy/moodle 2019-05-29 11:06:30 +08:00
Mihail Geshoski 1fc5c588a4 MDL-57729 enrol_lti: Escape the property values of the xpath elements 2019-05-29 09:55:23 +08:00
Jake Dallimore ab8c94ea0d Merge branch 'MDL-65326-master' of https://github.com/dmitriim/moodle 2019-05-29 09:27:17 +08:00
AMOS bot b2602dcd39 Automatically generated installer lang files 2019-05-29 00:09:11 +00:00
Marina Glancy f2c00a6f22 MDL-65726 role: do not fail unittest if plugins create their roles 2019-05-28 19:06:35 +02:00
Tim Schroeder c07e039c84 MDL-65510 messages: fixed defines not being used in code 2019-05-28 13:46:23 +02:00
Adrian Greeve c970eef862 Merge branch 'MDL-65705-master' of git://github.com/sarjona/moodle 2019-05-28 16:27:29 +08:00
Sara Arjona 39f4caf351 MDL-65705 badges: fix issued date for external badges
The preg_match('~^[1-9][0-9]*$~', x) calls have been replaced to
is_numeric(x).
2019-05-28 09:23:35 +02:00
Jake Dallimore 4f8e82111e Merge branch 'MDL-65657-int-fix-1' of https://github.com/ryanwyllie/moodle 2019-05-28 14:05:32 +08:00
Ryan Wyllie 95a445b360 MDL-65657 message: reduce message poll timer for behat tests 2019-05-28 13:33:31 +08:00
Jun Pataleta 83cdcd99f2 Merge branch 'MDL-65697-master' of git://github.com/lameze/moodle 2019-05-28 13:31:41 +08:00
Jake Dallimore 4c6b2bea57 Merge branch 'MDL-65692-master' of git://github.com/abgreeve/moodle 2019-05-28 13:26:44 +08:00
Simey Lameze b24ac2c47f MDL-63643 core_users: add behat for users last IP filtering 2019-05-28 11:12:36 +08:00
Simey Lameze 1fefa3ce7a MDL-63643 core_test: make possible to change users last ip field 2019-05-28 11:11:29 +08:00
Dmitrii Metelkin 2c7636490a MDL-65326 backup: check caps exist before assigning 2019-05-28 11:09:51 +10:00
Simey Lameze 9c576559ea MDL-63643 core_user: allow filter by last ip address 2019-05-28 06:53:30 +08:00
Jun Pataleta 70eaad836e Merge branch 'MDL-65606' of https://github.com/Chocolate-lightning/moodle 2019-05-27 16:27:58 +08:00
Jake Dallimore 30e194757f Merge branch 'MDL-64330-master' of git://github.com/andrewnicols/moodle 2019-05-27 15:20:31 +08:00
Andrew Nicols 281474a5fe MDL-64330 course: Correct course test assumptions 2019-05-27 15:07:47 +08:00
Adrian Greeve c583718448 Merge branch 'MDL-65699-master' of http://github.com/dravek/moodle 2019-05-27 14:52:13 +08:00
Andrew Nicols 412eb4cdf6 Merge branch 'MDL-65708-master' of git://github.com/Chocolate-lightning/moodle 2019-05-27 14:46:41 +08:00
Mathew May 2ddd7605d8 MDL-65606 mod_data: Add approvalstatusclass to template 2019-05-27 13:38:25 +08:00
Jake Dallimore 3d9ffc97c6 Merge branch 'MDL-65657-master' of https://github.com/ryanwyllie/moodle 2019-05-27 13:22:45 +08:00
Mathew May 4028ffd8f6 MDL-65708 output: Get a base config from Boost
As a part of the removal of bootstrapbase & clean
I removed some logic that got the base config of bootstrapbase,
this should of been changed to get boosts config.
See: e00f1c663c
2019-05-27 13:22:35 +08:00
Andrew Nicols 9ba09a1244 MDL-65675 forum: Remove duplicate Re in subjects 2019-05-27 12:21:30 +08:00
Ryan Wyllie 8be24909bc MDL-65657 message: revert polling timeout back to old algorithm 2019-05-27 11:57:22 +08:00
Adrian Greeve 6a4076fa2b Merge branch 'MDL-64523-master' of git://github.com/rezaies/moodle 2019-05-27 10:48:06 +08:00
Andrew Nicols fb33169a05 Merge branch 'MDL-65680_master' of git://github.com/dmonllao/moodle 2019-05-27 08:42:40 +08:00
AMOS bot 29ae25e0c3 Automatically generated installer lang files 2019-05-25 00:08:26 +00:00
Shamim Rezaie db632485ab MDL-65689 task: fix typo in help string 2019-05-25 04:57:22 +10:00
Shamim Rezaie f12bc65f1d MDL-64523 core_access: replace .delegate with .on
As of jQuery 3.0, .delegate() has been deprecated. It was superseded by
the .on() method since jQuery 1.7, so its use was already discouraged.
2019-05-25 04:23:41 +10:00
Shamim Rezaie b1078b18c8 MDL-64523 core_access: Fix js racing issue when overriding permissions 2019-05-25 04:23:33 +10:00
Shamim Rezaie 6786f6b6cc MDL-64523 core_access: Improve the title of the delete role links 2019-05-25 04:08:56 +10:00
Sara Arjona d68718a7db Merge branch 'MDL-65060-master' of git://github.com/aanabit/moodle 2019-05-24 12:34:23 +02:00
Amaia Anabitarte 6d96a3dc33 MDL-65060 core_message: Delete messages behat test 2019-05-24 12:16:37 +02:00
David Monllaó 73f8085f3f MDL-65680 analytics: Fix random failure on slow test environments 2019-05-24 10:59:13 +02:00
AMOS bot a6d8aa903f Automatically generated installer lang files 2019-05-24 00:15:06 +00:00
Simey Lameze e72e711b82 MDL-65697 qtype_missingtype: include missing class 2019-05-24 07:01:24 +08:00
Eloy Lafuente (stronk7) 383aec8a01 weekly on-sync release 3.8dev 2019-05-23 20:36:19 +02:00
Eloy Lafuente (stronk7) 54d03e1df3 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2019-05-23 20:36:16 +02:00
David Matamoros 79b9f905b1 MDL-65699 core_calendar: Check string exists for event types 2019-05-23 17:21:27 +02:00
Amaia Anabitarte 8922d78b75 MDL-65060 core_message: Group message data generator 2019-05-23 15:30:12 +02:00
Eloy Lafuente (stronk7) 22ae44f322 Merge branch 'MDL-65695-master' of git://github.com/andrewnicols/moodle 2019-05-23 10:48:25 +02:00
David Mudrák 07839e6af3 MDL-65694 grade: Fix missing gradelib library
In the be8f453b74 the gradelib loading was removed by mistake. So
the library may not be loaded and executing the task may end with
the exception - class 'grade_grade' not found.
2019-05-23 10:45:55 +02:00
Adrian Greeve 3ef9c2dcf0 MDL-65692 backup: Default settings set on install and upgrade.
Asynchronous backup settings are now filled out with the defaults
on installation and upgrade.
2019-05-23 14:22:13 +08:00
Andrew Nicols 4655adf8f3 MDL-65695 forum: Bump digest time to next day if in past 2019-05-23 14:22:01 +08:00
Jun Pataleta 9e7100cfd1 Merge branch 'MDL-55197' of https://github.com/timhunt/moodle 2019-05-23 11:58:14 +08:00
Andrew Nicols a37fa5c443 Merge branch 'MDL-59650-master' of git://github.com/lameze/moodle 2019-05-23 10:19:55 +08:00
Adrian Greeve a8d20b0fa9 Merge branch 'MDL-65549_master' of git://github.com/dmonllao/moodle 2019-05-23 10:09:09 +08:00
Adrian Greeve c37a446ac4 Merge branch 'MDL-65634_master' of git://github.com/dmonllao/moodle 2019-05-23 09:53:47 +08:00
Andrew Nicols aec03b8c0a Merge branch 'MDL-65654-master' of https://github.com/danielneis/moodle 2019-05-23 09:35:17 +08:00
Adrian Greeve 8dd2b752cd Merge branch 'MDL-64530' of git://github.com/stronk7/moodle 2019-05-23 09:21:59 +08:00
AMOS bot 7503e4b98f Automatically generated installer lang files 2019-05-23 00:12:44 +00:00
Amaia Anabitarte c961389b81 MDL-65060 core_message: Group_message_message_content selector 2019-05-22 18:59:58 +02:00
Ryan Wyllie 2d2dfb6ed9 MDL-65060 core_message: add render buffer to conversations
Change the conversation logic to render using a buffer so that we can
immediately save state. The render patches are based on the state so
the UI will always reach eventual consistency with the state since the
patches are processed in order.
2019-05-22 18:59:58 +02:00
Sara Arjona f78e30fef2 Merge branch 'MDL-65661-master' of git://github.com/peterRd/moodle 2019-05-22 14:57:39 +02:00
Jun Pataleta 10780409b8 Merge branch 'MDL-65636' of https://github.com/timhunt/moodle 2019-05-22 19:36:11 +08:00
Peter 577ccff6c2 MDL-65661 block_myoverview: Truncate category name 2019-05-22 19:30:48 +08:00
Peter bdd3681504 MDL-65661 core_course: Truncate long course names 2019-05-22 19:29:39 +08:00
Tim Hunt 41bf80a69d MDL-55197 filter_multilang: handle 'en' as parent lang better 2019-05-22 11:14:17 +01:00
Tim Hunt 587c0772e6 MDL-55197 filter_multilang: move preg_callback fn into class 2019-05-22 11:07:05 +01:00
Tim Hunt 173377e529 MDL-65636 filter_multilang: add some basic unit tests
This commit includes suggestions from Jun Pataleta on how to improve the
unit tests.
2019-05-22 11:01:51 +01:00
Adrian Greeve 467af62e35 Merge branch 'MDL-65067_master' of https://github.com/dmonllao/moodle 2019-05-22 16:29:52 +08:00
Adrian Greeve bcc1ec54d2 Merge branch 'MDL-64784' of https://github.com/paulholden/moodle 2019-05-22 14:48:28 +08:00
Andrew Nicols 97d791bf3a Merge branch 'MDL-65590-master' of git://github.com/rezaies/moodle 2019-05-22 13:52:14 +08:00
Jun Pataleta f8a6990a46 Merge branch 'MDL-65591-master' of git://github.com/rezaies/moodle 2019-05-22 11:06:31 +08:00
Andrew Nicols 6598c0bce0 Merge branch 'MDL-65630-master' of git://github.com/rezaies/moodle 2019-05-22 09:43:13 +08:00
David Monllaó 8d19264bc0 MDL-65549 tool_analytics: Reduce the context name length in models_view 2019-05-21 17:26:22 +02:00
David Monllaó ed1a2e8a54 MDL-65634 analytics: Discard late and early student enrolments 2019-05-21 17:24:49 +02:00
Sara Arjona c13d1d2518 Merge branch 'MDL-65605-master' of git://github.com/rezaies/moodle 2019-05-21 13:47:31 +02:00
Jun Pataleta e3e5c1f659 Merge branch 'MDL-65274-master' of git://github.com/jleyva/moodle 2019-05-21 18:49:33 +08:00
Jun Pataleta 1525b9626e Merge branch 'MDL-60407-master' of git://github.com/vmdef/moodle 2019-05-21 18:44:52 +08:00
Simey Lameze 2b815157c9 MDL-59650 core_calendar: remove limit from calendar UI 2019-05-21 15:22:13 +08:00
Simey Lameze e099259a46 MDL-59650 core_calendar: remove limit from event exporter 2019-05-21 15:22:09 +08:00
Adrian Greeve 2c0ac767c6 Merge branch 'MDL-65572-master' of git://github.com/damyon/moodle 2019-05-21 15:19:29 +08:00
Andrew Nicols 5b16520936 Merge branch 'MDL-65644' of git://github.com/stronk7/moodle 2019-05-21 12:49:32 +08:00
Shamim Rezaie 26206ddc78 MDL-65590 tool_customlang: Escape html on the standard text field 2019-05-21 14:20:16 +10:00
Adrian Greeve 04de0e85a0 Merge branch 'MDL-65655-37-forumcroninactiveusers' of git://github.com/mudrd8mz/moodle 2019-05-21 11:42:13 +08:00
AMOS bot f2f1dcb56e Automatically generated installer lang files 2019-05-21 00:12:47 +00:00
AMOS bot 21637e54c9 Automatically generated installer lang files 2019-05-21 00:12:47 +00:00
Eloy Lafuente (stronk7) a8b2f03d8b MDL-64530 travis: Enabble PHP 7.3 and redis cache
This commit performs a number of changes:

- Enables PHP 7.3, replacing PHP 7.2 (max/min approach).
- Enables back the redis service
- Configures redis cache store tests to be run.
- Disables redis session tests for PHP 7.2 and up (MDL-60978)
2019-05-21 01:24:11 +02:00
Eloy Lafuente (stronk7) 3572a25cc3 MDL-65644 upgrade: add 3.7.0 separation line to all upgrade scripts 2019-05-20 19:35:05 +02:00
Shamim Rezaie 1806f70cbb MDL-65591 tool_customlang: Re-adding the save buttons at the bottom 2019-05-21 02:20:20 +10:00
Daniel Neis Araujo 3cbec0b81a MDL-65654 tool_uploaduser: Fix undefined variable warning 2019-05-20 12:44:05 -03:00
Juan Leyva ee766461b4 MDL-65274 mod_quiz: Do not return a translated string
We should be returning proper error codes and the translated string can be part of the debug information.
2019-05-20 15:50:46 +02:00
Shamim Rezaie c7ac83ca0a MDL-65605 core_question: Fix the issue when get_draft_files returns nul 2019-05-20 23:44:02 +10:00
Shamim Rezaie a9d62c4513 MDL-65605 mod_lesson: Fix the issue when get_draft_files returns null 2019-05-20 23:43:59 +10:00
Shamim Rezaie 80c360d573 MDL-65630 mod_quiz: Allow redo within an attempt with random questions 2019-05-20 23:10:30 +10:00
Shamim Rezaie 2e68255609 MDL-65630 mod_quiz: Move logging in to the start of tests
The background is for set up, the scenario is for the test. Logging in
to start the test is the start of the test and the end of the background
itself.
2019-05-20 23:10:11 +10:00
Andrew Nicols 8053b88145 Merge branch 'MDL-65643' of git://github.com/stronk7/moodle 2019-05-20 14:24:49 +08:00
Damyon Wiese e7f9ae50e5 MDL-65572 messaging: Loginas upgrade check
When using login as, we also need to check if there are legacy messages that
need updating and set the user preference if required.
2019-05-20 09:12:40 +08:00
Eloy Lafuente (stronk7) 795304597f MDL-65643 backup: Bump release to 3.8 2019-05-19 21:11:05 +02:00
Eloy Lafuente (stronk7) a866c5c238 weekly back-to-dev release 3.8dev 2019-05-19 11:24:14 +02:00
Eloy Lafuente (stronk7) 374c1763ba NOBUG: Change travis.yml back to master 2019-05-19 11:18:34 +02:00
David Monllaó a9db4f903d MDL-65067 tool_analytics: Limit update_end_date to format_weeks 2019-05-17 16:57:46 +02:00
Didier 'OdyX' Raboud 62e1b79cb0 MDL-65067 analytics: Strengthen format_weeks detection
The public function get_section_dates($section, $startdate = false) is
only defined in format_weeks, not in format_base.

As other formats can (and format_topcoll has) declare a different
get_section_dates public method, merely checking that it exists is not
sufficient to guarantee that it can be called with just a section object.

Check that the format either is, or is a subclass of format_weeks.
2019-05-17 13:24:47 +02:00
Víctor Déniz Falcón 8dd1ebaaba MDL-60407 report_insights: Fix redirect when action on last prediction
When an actions is taken on the last prediction, the predictions
list page is reloaded.
2019-05-14 01:06:00 +01:00
Bas Brands 66bd0f6c2a MDL-65438 core_themes: allow themes to change the css url
Themes that have the function theme_themename_alter_css_urls() in lib.php
can change the css url from theme/styles.php to a local script like
theme/themename/css.php. The local css.php file can be used to serve
various versions of the theme css, for example versions compiled using
different scss variables.
2019-05-08 15:20:53 +02:00
Mark Nelson 57532ad680 MDL-65344 core_message: deprecate get_individual_conversations_between_users() 2019-04-30 10:35:55 +08:00
Paul Holden 821614d87c MDL-64784 core: update tablelib tests for explicit sort direction. 2019-04-05 11:53:33 +01:00
Paul Holden 3c92b1d4e5 MDL-64784 core: consistent column sort direction in flexible_table. 2019-04-04 16:08:26 +01:00
Michael Aherne bf93e13abe MDL-65096 docs: Use static return type in persistent 2019-03-18 10:30:48 +00:00
Alexander Bias 8f68ec5ae3 MDL-64743 block_myoverview: Remove icons in context menu 2019-03-11 13:27:53 +01:00
8004 changed files with 604990 additions and 308480 deletions
+21 -17
View File
@@ -4,12 +4,13 @@
node_modules/
vendor/
admin/tool/policy/amd/src/jquery-eu-cookie-law-popup.js
admin/tool/usertours/amd/src/tour.js
auth/cas/CAS/
cache/stores/mongodb/MongoDB/
enrol/lti/ims-blti/
filter/algebra/AlgParser.pm
filter/tex/mimetex.*
h5p/h5plib/v124/joubel/core/
h5p/h5plib/v124/joubel/editor/
lib/editor/atto/plugins/html/yui/src/codemirror/
lib/editor/atto/plugins/html/yui/src/beautify/
lib/editor/atto/yui/src/rangy/js/*.*
@@ -20,15 +21,12 @@ lib/mlbackend/php/phpml/
lib/adodb/
lib/bennu/
lib/evalmath/
lib/lessphp/
lib/phpexcel/
lib/phpspreadsheet/
lib/google/
lib/htmlpurifier/
lib/jabber/
lib/minify/matthiasmullie-minify/
lib/minify/matthiasmullie-pathconverter/
lib/pear/Auth/RADIUS.php
lib/pear/Crypt/CHAP.php
lib/pear/HTML/Common.php
lib/pear/HTML/QuickForm.php
lib/pear/HTML/QuickForm/
@@ -42,7 +40,6 @@ lib/yuilib/gallery/
lib/jquery/
lib/html2text/
lib/markdown/
lib/recaptchalib.php
lib/xhprof/
lib/horde/
lib/requirejs/
@@ -65,6 +62,10 @@ lib/validateurlsyntax.php
lib/amd/src/popper.js
lib/geopattern-php/
lib/php-jwt/
lib/babel-polyfill/
lib/polyfills/
lib/emoji-data/
lib/plist/
media/player/videojs/amd/src/video-lazy.js
media/player/videojs/amd/src/Youtube-lazy.js
media/player/videojs/videojs/
@@ -73,16 +74,19 @@ media/player/videojs/videojs/video-js.swf
mod/assign/feedback/editpdf/fpdi/
repository/s3/S3.php
theme/boost/scss/bootstrap/
theme/boost/amd/src/alert.js
theme/boost/amd/src/button.js
theme/boost/amd/src/carousel.js
theme/boost/amd/src/collapse.js
theme/boost/amd/src/dropdown.js
theme/boost/amd/src/modal.js
theme/boost/amd/src/popover.js
theme/boost/amd/src/scrollspy.js
theme/boost/amd/src/tab.js
theme/boost/amd/src/tooltip.js
theme/boost/amd/src/util.js
theme/boost/amd/src/bootstrap/alert.js
theme/boost/amd/src/bootstrap/button.js
theme/boost/amd/src/bootstrap/carousel.js
theme/boost/amd/src/bootstrap/collapse.js
theme/boost/amd/src/bootstrap/dropdown.js
theme/boost/amd/src/bootstrap/index.js
theme/boost/amd/src/bootstrap/modal.js
theme/boost/amd/src/bootstrap/popover.js
theme/boost/amd/src/bootstrap/tools/sanitizer.js
theme/boost/amd/src/bootstrap/scrollspy.js
theme/boost/amd/src/bootstrap/tab.js
theme/boost/amd/src/bootstrap/toast.js
theme/boost/amd/src/bootstrap/tooltip.js
theme/boost/amd/src/bootstrap/util.js
theme/boost/amd/src/tether.js
theme/boost/scss/fontawesome/
+37 -2
View File
@@ -1,5 +1,6 @@
{
'plugins': [
'babel',
'promise',
],
'env': {
@@ -203,11 +204,45 @@
}
},
{
files: ["**/amd/src/*.js"],
files: ["**/amd/src/*.js", "**/amd/src/**/*.js", "Gruntfile*.js", "babel-plugin-add-module-to-define.js"],
// We support es6 now. Woot!
env: {
es6: true
},
// We're using babel transpiling so use their parser
// for linting.
parser: 'babel-eslint',
// Check AMD with some slightly stricter rules.
rules: {
'no-unused-vars': 'error',
'no-implicit-globals': 'error'
'no-implicit-globals': 'error',
// Disable all of the rules that have babel versions.
'new-cap': 'off',
// Not using this rule for the time being because it isn't
// compatible with jQuery and ES6.
'no-invalid-this': 'off',
'object-curly-spacing': 'off',
'quotes': 'off',
'semi': 'off',
'no-unused-expressions': 'off',
// Enable all of the babel version of these rules.
'babel/new-cap': ['warn', { 'properties': false }],
// Not using this rule for the time being because it isn't
// compatible with jQuery and ES6.
'babel/no-invalid-this': 'off',
'babel/object-curly-spacing': 'warn',
// This is off in the original style int.
'babel/quotes': 'off',
'babel/semi': 'error',
'babel/no-unused-expressions': 'error',
// === Promises ===
// We have Promise now that we're using ES6.
'promise/no-native': 'off',
'promise/avoid-new': 'off'
},
parserOptions: {
'ecmaVersion': 9,
'sourceType': 'module'
}
}
]
+7 -3
View File
@@ -3,6 +3,8 @@
"Feature": 0,
"Background": 2,
"Scenario": 2,
"Examples": 4,
"example": 6,
"Step": 4,
"given": 4,
"and": 4
@@ -14,7 +16,9 @@
"no-multiple-empty-lines": "on",
"no-partially-commented-tag-lines": "on",
"no-trailing-spaces": "on",
"no-unamed-features": "on",
"no-unamed-scenarios": "on",
"no-scenario-outlines-without-examples": "on"
"no-unnamed-features": "on",
"no-unnamed-scenarios": "on",
"no-scenario-outlines-without-examples": "on",
"no-examples-in-scenarios": "on",
"new-line-at-eof": ["on", "yes"]
}
+2
View File
@@ -0,0 +1,2 @@
# Primary donations pages.
custom: ["https://moodle.com/donations/", moodle.org]
+2
View File
@@ -0,0 +1,2 @@
**/amd/**
/*.js
+1
View File
@@ -0,0 +1 @@
v14.0.0
+21 -17
View File
@@ -5,12 +5,13 @@ theme/classic/style/moodle.css
node_modules/
vendor/
admin/tool/policy/amd/src/jquery-eu-cookie-law-popup.js
admin/tool/usertours/amd/src/tour.js
auth/cas/CAS/
cache/stores/mongodb/MongoDB/
enrol/lti/ims-blti/
filter/algebra/AlgParser.pm
filter/tex/mimetex.*
h5p/h5plib/v124/joubel/core/
h5p/h5plib/v124/joubel/editor/
lib/editor/atto/plugins/html/yui/src/codemirror/
lib/editor/atto/plugins/html/yui/src/beautify/
lib/editor/atto/yui/src/rangy/js/*.*
@@ -21,15 +22,12 @@ lib/mlbackend/php/phpml/
lib/adodb/
lib/bennu/
lib/evalmath/
lib/lessphp/
lib/phpexcel/
lib/phpspreadsheet/
lib/google/
lib/htmlpurifier/
lib/jabber/
lib/minify/matthiasmullie-minify/
lib/minify/matthiasmullie-pathconverter/
lib/pear/Auth/RADIUS.php
lib/pear/Crypt/CHAP.php
lib/pear/HTML/Common.php
lib/pear/HTML/QuickForm.php
lib/pear/HTML/QuickForm/
@@ -43,7 +41,6 @@ lib/yuilib/gallery/
lib/jquery/
lib/html2text/
lib/markdown/
lib/recaptchalib.php
lib/xhprof/
lib/horde/
lib/requirejs/
@@ -66,6 +63,10 @@ lib/validateurlsyntax.php
lib/amd/src/popper.js
lib/geopattern-php/
lib/php-jwt/
lib/babel-polyfill/
lib/polyfills/
lib/emoji-data/
lib/plist/
media/player/videojs/amd/src/video-lazy.js
media/player/videojs/amd/src/Youtube-lazy.js
media/player/videojs/videojs/
@@ -74,16 +75,19 @@ media/player/videojs/videojs/video-js.swf
mod/assign/feedback/editpdf/fpdi/
repository/s3/S3.php
theme/boost/scss/bootstrap/
theme/boost/amd/src/alert.js
theme/boost/amd/src/button.js
theme/boost/amd/src/carousel.js
theme/boost/amd/src/collapse.js
theme/boost/amd/src/dropdown.js
theme/boost/amd/src/modal.js
theme/boost/amd/src/popover.js
theme/boost/amd/src/scrollspy.js
theme/boost/amd/src/tab.js
theme/boost/amd/src/tooltip.js
theme/boost/amd/src/util.js
theme/boost/amd/src/bootstrap/alert.js
theme/boost/amd/src/bootstrap/button.js
theme/boost/amd/src/bootstrap/carousel.js
theme/boost/amd/src/bootstrap/collapse.js
theme/boost/amd/src/bootstrap/dropdown.js
theme/boost/amd/src/bootstrap/index.js
theme/boost/amd/src/bootstrap/modal.js
theme/boost/amd/src/bootstrap/popover.js
theme/boost/amd/src/bootstrap/tools/sanitizer.js
theme/boost/amd/src/bootstrap/scrollspy.js
theme/boost/amd/src/bootstrap/tab.js
theme/boost/amd/src/bootstrap/toast.js
theme/boost/amd/src/bootstrap/tooltip.js
theme/boost/amd/src/bootstrap/util.js
theme/boost/amd/src/tether.js
theme/boost/scss/fontawesome/
+48 -33
View File
@@ -2,8 +2,6 @@
# process (which uses our internal CI system) this file is here for the benefit
# of community developers git clones - see MDL-51458.
sudo: required
# We currently disable Travis notifications entirely until https://github.com/travis-ci/travis-ci/issues/4976
# is fixed.
notifications:
@@ -11,21 +9,21 @@ notifications:
language: php
os: linux
dist: xenial
services:
- mysql
- docker
php:
# We only run the highest and lowest supported versions to reduce the load on travis-ci.org.
- 7.4
- 7.2
- 7.1
addons:
postgresql: "9.6"
packages:
- mysql-server-5.6
- mysql-client-core-5.6
- mysql-client-5.6
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# services:
# - redis-server
env:
# Although we want to run these jobs and see failures as quickly as possible, we also want to get the slowest job to
@@ -35,9 +33,6 @@ env:
# CI Tests should be second-highest in priority as these only take <= 60 seconds to run under normal circumstances.
# Postgres is significantly is pretty reasonable in its run-time.
# Run unit tests on MySQL
- DB=mysqli TASK=PHPUNIT
# Run CI Tests without running PHPUnit.
- DB=none TASK=CITEST
@@ -47,39 +42,40 @@ env:
# Perform an upgrade test too.
- DB=pgsql TASK=UPGRADE
matrix:
jobs:
# Enable fast finish.
# This will fail the build if a single job fails (except those in allow_failures).
# It will not stop the jobs from running.
fast_finish: true
include:
# Run grunt/npm install on highest version ('node' is an alias for the latest node.js version.)
- php: 7.2
# Run mysql only on highest - it's just too slow
- php: 7.4
env: DB=mysqli TASK=PHPUNIT
# Run grunt/npm install on highest version too ('node' is an alias for the latest node.js version.)
- php: 7.4
env: DB=none TASK=GRUNT NVM_VERSION='lts/carbon'
exclude:
# MySQL - it's just too slow.
# Exclude it on all versions except for 7.2
- env: DB=mysqli TASK=PHPUNIT
php: 7.1
cache:
directories:
- $HOME/.composer/cache
- $HOME/.npm
before_install:
- docker run -d -p 127.0.0.1:8080:80 --name exttests moodlehq/moodle-exttests
# Avoid IPv6 default binding as service (causes redis not to start).
- sudo service redis-server start --bind 127.0.0.1
install:
- >
if [ "$DB" = 'mysqli' ];
then
sudo mkdir /mnt/ramdisk
sudo mount -t tmpfs -o size=1024m tmpfs /mnt/ramdisk
sudo stop mysql
sudo service mysql stop
sudo mv /var/lib/mysql /mnt/ramdisk
sudo ln -s /mnt/ramdisk/mysql /var/lib/mysql
sudo start mysql
sudo service mysql restart
fi
- >
if [ "$DB" = 'pgsql' ];
@@ -99,10 +95,8 @@ install:
echo 'auth.json' >> .git/info/exclude
fi
# Enable Redis.
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# echo 'extension="redis.so"' > /tmp/redis.ini
# phpenv config-add /tmp/redis.ini
echo 'extension="redis.so"' > /tmp/redis.ini
phpenv config-add /tmp/redis.ini
# Install composer dependencies.
# We need --no-interaction in case we hit API limits for composer. This causes it to fall back to a standard clone.
@@ -173,12 +167,25 @@ before_script:
mkdir -p "$HOME"/roots/phpunit
# The phpunit dataroot and prefix..
# Redis tests are currently failing on php 7.2 due to https://bugs.php.net/bug.php?id=75628
# -e "/require_once/i \\define('TEST_SESSION_REDIS_HOST', '127.0.0.1');" \
sed -i \
-e "/require_once/i \\\$CFG->phpunit_dataroot = '\/home\/travis\/roots\/phpunit';" \
-e "/require_once/i \\\$CFG->phpunit_prefix = 'p_';" \
config.php ;
# Enable test external resources
sed -i \
-e "/require_once/i \\define('TEST_EXTERNAL_FILES_HTTP_URL', 'http://127.0.0.1:8080');" \
-e "/require_once/i \\define('TEST_EXTERNAL_FILES_HTTPS_URL', 'http://127.0.0.1:8080');" \
config.php ;
# Redis cache store tests
sed -i \
-e "/require_once/i \\define('TEST_CACHESTORE_REDIS_TESTSERVERS', '127.0.0.1');" \
config.php ;
# Redis session tests, but not for PHP 7.2 and up. See MDL-60978 for more info.
redissession="define('TEST_SESSION_REDIS_HOST', '127.0.0.1');"
sed -i \
-e "/require_once/i \\${redissession}" \
config.php ;
# Initialise PHPUnit for Moodle.
php admin/tool/phpunit/cli/init.php
@@ -207,7 +214,7 @@ before_script:
# We need the official upstream for comparison
git remote add upstream https://github.com/moodle/moodle.git;
git fetch upstream MOODLE_37_STABLE;
git fetch upstream MOODLE_39_STABLE;
export GIT_PREVIOUS_COMMIT="`git merge-base FETCH_HEAD $TRAVIS_COMMIT`";
export GIT_COMMIT="$TRAVIS_COMMIT";
export UPSTREAM_FETCH_HEAD=`git rev-parse FETCH_HEAD`
@@ -285,3 +292,11 @@ script:
exit 1 ;
fi
fi
after_script:
- >
if [ "$TASK" = 'PHPUNIT' ];
then
EXTTESTS_HITS=$(docker logs exttests 2>&1 | grep -Fv -e 'AH00558' -e '[pid 1]' | wc -l)
echo -e "\nTest local resources number of hits: ${EXTTESTS_HITS}.\n"
fi
+600 -108
View File
@@ -20,18 +20,136 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Grunt configuration
*/
/* eslint-env node */
/**
* Calculate the cwd, taking into consideration the `root` option (for Windows).
*
* @param {Object} grunt
* @returns {String} The current directory as best we can determine
*/
const getCwd = grunt => {
const fs = require('fs');
const path = require('path');
let cwd = fs.realpathSync(process.env.PWD || process.cwd());
// Windows users can't run grunt in a subdirectory, so allow them to set
// the root by passing --root=path/to/dir.
if (grunt.option('root')) {
const root = grunt.option('root');
if (grunt.file.exists(__dirname, root)) {
cwd = fs.realpathSync(path.join(__dirname, root));
grunt.log.ok('Setting root to ' + cwd);
} else {
grunt.fail.fatal('Setting root to ' + root + ' failed - path does not exist');
}
}
return cwd;
};
/**
* Register any stylelint tasks.
*
* @param {Object} grunt
* @param {Array} files
* @param {String} fullRunDir
*/
const registerStyleLintTasks = (grunt, files, fullRunDir) => {
const getCssConfigForFiles = files => {
return {
stylelint: {
css: {
// Use a fully-qualified path.
src: files,
options: {
configOverrides: {
rules: {
// These rules have to be disabled in .stylelintrc for scss compat.
"at-rule-no-unknown": true,
}
}
}
},
},
};
};
const getScssConfigForFiles = files => {
return {
stylelint: {
scss: {
options: {syntax: 'scss'},
src: files,
},
},
};
};
let hasCss = true;
let hasScss = true;
if (files) {
// Specific files were passed. Just set them up.
grunt.config.merge(getCssConfigForFiles(files));
grunt.config.merge(getScssConfigForFiles(files));
} else {
// The stylelint system does not handle the case where there was no file to lint.
// Check whether there are any files to lint in the current directory.
const glob = require('glob');
const scssSrc = [];
glob.sync(`${fullRunDir}/**/*.scss`).forEach(path => scssSrc.push(path));
if (scssSrc.length) {
grunt.config.merge(getScssConfigForFiles(scssSrc));
} else {
hasScss = false;
}
const cssSrc = [];
glob.sync(`${fullRunDir}/**/*.css`).forEach(path => cssSrc.push(path));
if (cssSrc.length) {
grunt.config.merge(getCssConfigForFiles(cssSrc));
} else {
hasCss = false;
}
}
const scssTasks = ['sass'];
if (hasScss) {
scssTasks.unshift('stylelint:scss');
}
grunt.registerTask('scss', scssTasks);
const cssTasks = [];
if (hasCss) {
cssTasks.push('stylelint:css');
}
grunt.registerTask('rawcss', cssTasks);
grunt.registerTask('css', ['scss', 'rawcss']);
};
/**
* Grunt configuration.
*
* @param {Object} grunt
*/
module.exports = function(grunt) {
var path = require('path'),
tasks = {},
cwd = process.env.PWD || process.cwd(),
async = require('async'),
DOMParser = require('xmldom').DOMParser,
xpath = require('xpath'),
semver = require('semver');
const path = require('path');
const tasks = {};
const async = require('async');
const DOMParser = require('xmldom').DOMParser;
const xpath = require('xpath');
const semver = require('semver');
const watchman = require('fb-watchman');
const watchmanClient = new watchman.Client();
const fs = require('fs');
const ComponentList = require(path.resolve('GruntfileComponents.js'));
const sass = require('node-sass');
// Verify the node version is new enough.
var expected = semver.validRange(grunt.file.readJSON('package.json').engines.node);
@@ -40,22 +158,65 @@ module.exports = function(grunt) {
grunt.fail.fatal('Node version not satisfied. Require ' + expected + ', version installed: ' + actual);
}
// Windows users can't run grunt in a subdirectory, so allow them to set
// the root by passing --root=path/to/dir.
if (grunt.option('root')) {
var root = grunt.option('root');
if (grunt.file.exists(__dirname, root)) {
cwd = path.join(__dirname, root);
grunt.log.ok('Setting root to ' + cwd);
} else {
grunt.fail.fatal('Setting root to ' + root + ' failed - path does not exist');
}
// Detect directories:
// * gruntFilePath The real path on disk to this Gruntfile.js
// * cwd The current working directory, which can be overridden by the `root` option
// * relativeCwd The cwd, relative to the Gruntfile.js
// * componentDirectory The root directory of the component if the cwd is in a valid component
// * inComponent Whether the cwd is in a valid component
// * runDir The componentDirectory or cwd if not in a component, relative to Gruntfile.js
// * fullRunDir The full path to the runDir
const gruntFilePath = fs.realpathSync(process.cwd());
const cwd = getCwd(grunt);
const relativeCwd = path.relative(gruntFilePath, cwd);
const componentDirectory = ComponentList.getOwningComponentDirectory(relativeCwd);
const inComponent = !!componentDirectory;
const runDir = inComponent ? componentDirectory : relativeCwd;
const fullRunDir = fs.realpathSync(gruntFilePath + path.sep + runDir);
grunt.log.debug('============================================================================');
grunt.log.debug(`= Node version: ${process.versions.node}`);
grunt.log.debug(`= grunt version: ${grunt.package.version}`);
grunt.log.debug(`= process.cwd: '` + process.cwd() + `'`);
grunt.log.debug(`= process.env.PWD: '${process.env.PWD}'`);
grunt.log.debug(`= path.sep '${path.sep}'`);
grunt.log.debug('============================================================================');
grunt.log.debug(`= gruntFilePath: '${gruntFilePath}'`);
grunt.log.debug(`= relativeCwd: '${relativeCwd}'`);
grunt.log.debug(`= componentDirectory: '${componentDirectory}'`);
grunt.log.debug(`= inComponent: '${inComponent}'`);
grunt.log.debug(`= runDir: '${runDir}'`);
grunt.log.debug(`= fullRunDir: '${fullRunDir}'`);
grunt.log.debug('============================================================================');
if (inComponent) {
grunt.log.ok(`Running tasks for component directory ${componentDirectory}`);
}
var inAMD = path.basename(cwd) == 'amd';
let files = null;
if (grunt.option('files')) {
// Accept a comma separated list of files to process.
files = grunt.option('files').split(',');
}
// If the cwd is the amd directory in the current component then it will be empty.
// If the cwd is a child of the component's AMD directory, the relative directory will not start with ..
const inAMD = !path.relative(`${componentDirectory}/amd`, cwd).startsWith('..');
// Globbing pattern for matching all AMD JS source files.
var amdSrc = [inAMD ? cwd + '/src/*.js' : '**/amd/src/*.js'];
let amdSrc = [];
if (inComponent) {
amdSrc.push(componentDirectory + "/amd/src/*.js");
amdSrc.push(componentDirectory + "/amd/src/**/*.js");
} else {
amdSrc = ComponentList.getAmdSrcGlobList();
}
let yuiSrc = [];
if (inComponent) {
yuiSrc.push(componentDirectory + "/yui/src/**/*.js");
} else {
yuiSrc = ComponentList.getYuiSrcGlobList(gruntFilePath + '/');
}
/**
* Function to generate the destination for the uglify task
@@ -67,10 +228,9 @@ module.exports = function(grunt) {
* @param {String} srcPath the matched src path
* @return {String} The rewritten destination path.
*/
var uglifyRename = function(destPath, srcPath) {
var babelRename = function(destPath, srcPath) {
destPath = srcPath.replace('src', 'build');
destPath = destPath.replace('.js', '.min.js');
destPath = path.resolve(cwd, destPath);
return destPath;
};
@@ -81,49 +241,114 @@ module.exports = function(grunt) {
* @return {array} The list of thirdparty paths.
*/
var getThirdPartyPathsFromXML = function() {
var thirdpartyfiles = grunt.file.expand('*/**/thirdpartylibs.xml');
var libs = ['node_modules/', 'vendor/'];
const thirdpartyfiles = ComponentList.getThirdPartyLibsList(gruntFilePath + '/');
const libs = ['node_modules/', 'vendor/'];
thirdpartyfiles.forEach(function(file) {
var dirname = path.dirname(file);
const dirname = path.dirname(file);
var doc = new DOMParser().parseFromString(grunt.file.read(file));
var nodes = xpath.select("/libraries/library/location/text()", doc);
const doc = new DOMParser().parseFromString(grunt.file.read(file));
const nodes = xpath.select("/libraries/library/location/text()", doc);
nodes.forEach(function(node) {
var lib = path.join(dirname, node.toString());
if (grunt.file.isDir(lib)) {
// Ensure trailing slash on dirs.
lib = lib.replace(/\/?$/, '/');
}
nodes.forEach(function(node) {
let lib = path.posix.join(dirname, node.toString());
if (grunt.file.isDir(lib)) {
// Ensure trailing slash on dirs.
lib = lib.replace(/\/?$/, '/');
}
// Look for duplicate paths before adding to array.
if (libs.indexOf(lib) === -1) {
libs.push(lib);
}
});
// Look for duplicate paths before adding to array.
if (libs.indexOf(lib) === -1) {
libs.push(lib);
}
});
});
return libs;
};
/**
* Get the list of feature files to pass to the gherkin linter.
*
* @returns {Array}
*/
const getGherkinLintTargets = () => {
if (files) {
// Specific files were requested. Only check these.
return files;
}
if (inComponent) {
return [`${runDir}/tests/behat/*.feature`];
}
return ['**/tests/behat/*.feature'];
};
// Project configuration.
grunt.initConfig({
eslint: {
// Even though warnings dont stop the build we don't display warnings by default because
// at this moment we've got too many core warnings.
options: {quiet: !grunt.option('show-lint-warnings')},
amd: {src: amdSrc},
// To display warnings call: grunt eslint --show-lint-warnings
// To fail on warnings call: grunt eslint --max-lint-warnings=0
// Also --max-lint-warnings=-1 can be used to display warnings but not fail.
options: {
quiet: (!grunt.option('show-lint-warnings')) && (typeof grunt.option('max-lint-warnings') === 'undefined'),
maxWarnings: ((typeof grunt.option('max-lint-warnings') !== 'undefined') ? grunt.option('max-lint-warnings') : -1)
},
amd: {src: files ? files : amdSrc},
// Check YUI module source files.
yui: {src: ['**/yui/src/**/*.js', '!*/**/yui/src/*/meta/*.js']}
yui: {src: files ? files : yuiSrc},
},
uglify: {
amd: {
babel: {
options: {
sourceMaps: true,
comments: false,
plugins: [
'transform-es2015-modules-amd-lazy',
'system-import-transformer',
// This plugin modifies the Babel transpiling for "export default"
// so that if it's used then only the exported value is returned
// by the generated AMD module.
//
// It also adds the Moodle plugin name to the AMD module definition
// so that it can be imported as expected in other modules.
path.resolve('babel-plugin-add-module-to-define.js'),
'@babel/plugin-syntax-dynamic-import',
'@babel/plugin-syntax-import-meta',
['@babel/plugin-proposal-class-properties', {'loose': false}],
'@babel/plugin-proposal-json-strings'
],
presets: [
['minify', {
// This minification plugin needs to be disabled because it breaks the
// source map generation and causes invalid source maps to be output.
simplify: false,
builtIns: false
}],
['@babel/preset-env', {
targets: {
browsers: [
">0.25%",
"last 2 versions",
"not ie <= 10",
"not op_mini all",
"not Opera > 0",
"not dead"
]
},
modules: false,
useBuiltIns: false
}]
]
},
dist: {
files: [{
expand: true,
src: amdSrc,
rename: uglifyRename
}],
options: {report: 'none'}
src: files ? files : amdSrc,
rename: babelRename
}]
}
},
sass: {
@@ -134,6 +359,7 @@ module.exports = function(grunt) {
}
},
options: {
implementation: sass,
includePaths: ["theme/boost/scss/", "theme/classic/scss/"]
}
},
@@ -142,65 +368,72 @@ module.exports = function(grunt) {
nospawn: true // We need not to spawn so config can be changed dynamically.
},
amd: {
files: ['**/amd/src/**/*.js'],
files: inComponent
? ['amd/src/*.js', 'amd/src/**/*.js']
: ['**/amd/src/**/*.js'],
tasks: ['amd']
},
boost: {
files: [inComponent ? 'scss/**/*.scss' : 'theme/boost/scss/**/*.scss'],
tasks: ['scss']
},
rawcss: {
files: [
'**/*.css',
],
excludes: [
'**/moodle.css',
'**/editor.css',
],
tasks: ['rawcss']
},
yui: {
files: ['**/yui/src/**/*.js'],
files: inComponent
? ['yui/src/*.json', 'yui/src/**/*.js']
: ['**/yui/src/**/*.js'],
tasks: ['yui']
},
gherkinlint: {
files: ['**/tests/behat/*.feature'],
files: [inComponent ? 'tests/behat/*.feature' : '**/tests/behat/*.feature'],
tasks: ['gherkinlint']
}
},
shifter: {
options: {
recursive: true,
paths: [cwd]
// Shifter takes a relative path.
paths: files ? files : [runDir]
}
},
gherkinlint: {
options: {
files: ['**/tests/behat/*.feature'],
files: getGherkinLintTargets(),
}
},
stylelint: {
scss: {
options: {syntax: 'scss'},
src: ['*/**/*.scss']
},
css: {
src: ['*/**/*.css'],
options: {
configOverrides: {
rules: {
// These rules have to be disabled in .stylelintrc for scss compat.
"at-rule-no-unknown": true,
}
}
}
}
}
});
/**
* Generate ignore files (utilising thirdpartylibs.xml data)
*/
tasks.ignorefiles = function() {
// An array of paths to third party directories.
var thirdPartyPaths = getThirdPartyPathsFromXML();
// Generate .eslintignore.
var eslintIgnores = ['# Generated by "grunt ignorefiles"', '*/**/yui/src/*/meta/', '*/**/build/'].concat(thirdPartyPaths);
grunt.file.write('.eslintignore', eslintIgnores.join('\n'));
// Generate .stylelintignore.
var stylelintIgnores = [
'# Generated by "grunt ignorefiles"',
'**/yui/build/*',
'theme/boost/style/moodle.css',
'theme/classic/style/moodle.css',
].concat(thirdPartyPaths);
grunt.file.write('.stylelintignore', stylelintIgnores.join('\n'));
// An array of paths to third party directories.
const thirdPartyPaths = getThirdPartyPathsFromXML();
// Generate .eslintignore.
const eslintIgnores = [
'# Generated by "grunt ignorefiles"',
'*/**/yui/src/*/meta/',
'*/**/build/',
].concat(thirdPartyPaths);
grunt.file.write('.eslintignore', eslintIgnores.join('\n'));
// Generate .stylelintignore.
const stylelintIgnores = [
'# Generated by "grunt ignorefiles"',
'**/yui/build/*',
'theme/boost/style/moodle.css',
'theme/classic/style/moodle.css',
].concat(thirdPartyPaths);
grunt.file.write('.stylelintignore', stylelintIgnores.join('\n'));
};
/**
@@ -292,19 +525,32 @@ module.exports = function(grunt) {
};
tasks.gherkinlint = function() {
var done = this.async(),
options = grunt.config('gherkinlint.options');
const done = this.async();
const options = grunt.config('gherkinlint.options');
var args = grunt.file.expand(options.files);
args.unshift(path.normalize(__dirname + '/node_modules/.bin/gherkin-lint'));
grunt.util.spawn({
cmd: 'node',
args: args,
opts: {stdio: 'inherit', env: process.env}
}, function(error, result, code) {
// Propagate the exit code.
done(code === 0);
});
// Grab the gherkin-lint linter and required scaffolding.
const linter = require('gherkin-lint/dist/linter.js');
const featureFinder = require('gherkin-lint/dist/feature-finder.js');
const configParser = require('gherkin-lint/dist/config-parser.js');
const formatter = require('gherkin-lint/dist/formatters/stylish.js');
// Run the linter.
return linter.lint(
featureFinder.getFeatureFiles(grunt.file.expand(options.files)),
configParser.getConfiguration(configParser.defaultConfigFileName)
)
.then(results => {
// Print the results out uncondtionally.
formatter.printResults(results);
return results;
})
.then(results => {
// Report on the results.
// The done function takes a bool whereby a falsey statement causes the task to fail.
return results.every(result => result.errors.length === 0);
})
.then(done); // eslint-disable-line promise/no-callback-in-promise
};
tasks.startup = function() {
@@ -322,23 +568,264 @@ module.exports = function(grunt) {
}
};
/**
* This is a wrapper task to handle the grunt watch command. It attempts to use
* Watchman to monitor for file changes, if it's installed, because it's much faster.
*
* If Watchman isn't installed then it falls back to the grunt-contrib-watch file
* watcher for backwards compatibility.
*/
tasks.watch = function() {
var watchTaskDone = this.async();
var watchInitialised = false;
var watchTaskQueue = {};
var processingQueue = false;
// Grab the tasks and files that have been queued up and execute them.
var processWatchTaskQueue = function() {
if (!Object.keys(watchTaskQueue).length || processingQueue) {
// If there is nothing in the queue or we're already processing then wait.
return;
}
processingQueue = true;
// Grab all tasks currently in the queue.
var queueToProcess = watchTaskQueue;
// Reset the queue.
watchTaskQueue = {};
async.forEachSeries(
Object.keys(queueToProcess),
function(task, next) {
var files = queueToProcess[task];
var filesOption = '--files=' + files.join(',');
grunt.log.ok('Running task ' + task + ' for files ' + filesOption);
// Spawn the task in a child process so that it doesn't kill this one
// if it failed.
grunt.util.spawn(
{
// Spawn with the grunt bin.
grunt: true,
// Run from current working dir and inherit stdio from process.
opts: {
cwd: fullRunDir,
stdio: 'inherit'
},
args: [task, filesOption]
},
function(err, res, code) {
if (code !== 0) {
// The grunt task failed.
grunt.log.error(err);
}
// Move on to the next task.
next();
}
);
},
function() {
// No longer processing.
processingQueue = false;
// Once all of the tasks are done then recurse just in case more tasks
// were queued while we were processing.
processWatchTaskQueue();
}
);
};
const originalWatchConfig = grunt.config.get(['watch']);
const watchConfig = Object.keys(originalWatchConfig).reduce(function(carry, key) {
if (key == 'options') {
return carry;
}
const value = originalWatchConfig[key];
const taskNames = value.tasks;
const files = value.files;
let excludes = [];
if (value.excludes) {
excludes = value.excludes;
}
taskNames.forEach(function(taskName) {
carry[taskName] = {
files,
excludes,
};
});
return carry;
}, {});
watchmanClient.on('error', function(error) {
// We have to add an error handler here and parse the error string because the
// example way from the docs to check if Watchman is installed doesn't actually work!!
// See: https://github.com/facebook/watchman/issues/509
if (error.message.match('Watchman was not found')) {
// If watchman isn't installed then we should fallback to the other watch task.
grunt.log.ok('It is recommended that you install Watchman for better performance using the "watch" command.');
// Fallback to the old grunt-contrib-watch task.
grunt.renameTask('watch-grunt', 'watch');
grunt.task.run(['watch']);
// This task is finished.
watchTaskDone(0);
} else {
grunt.log.error(error);
// Fatal error.
watchTaskDone(1);
}
});
watchmanClient.on('subscription', function(resp) {
if (resp.subscription !== 'grunt-watch') {
return;
}
resp.files.forEach(function(file) {
grunt.log.ok('File changed: ' + file.name);
var fullPath = fullRunDir + '/' + file.name;
Object.keys(watchConfig).forEach(function(task) {
const fileGlobs = watchConfig[task].files;
var match = fileGlobs.some(function(fileGlob) {
return grunt.file.isMatch(`**/${fileGlob}`, fullPath);
});
if (match) {
// If we are watching a subdirectory then the file.name will be relative
// to that directory. However the grunt tasks expect the file paths to be
// relative to the Gruntfile.js location so let's normalise them before
// adding them to the queue.
var relativePath = fullPath.replace(gruntFilePath + '/', '');
if (task in watchTaskQueue) {
if (!watchTaskQueue[task].includes(relativePath)) {
watchTaskQueue[task] = watchTaskQueue[task].concat(relativePath);
}
} else {
watchTaskQueue[task] = [relativePath];
}
}
});
});
processWatchTaskQueue();
});
process.on('SIGINT', function() {
// Let the user know that they may need to manually stop the Watchman daemon if they
// no longer want it running.
if (watchInitialised) {
grunt.log.ok('The Watchman daemon may still be running and may need to be stopped manually.');
}
process.exit();
});
// Initiate the watch on the current directory.
watchmanClient.command(['watch-project', fullRunDir], function(watchError, watchResponse) {
if (watchError) {
grunt.log.error('Error initiating watch:', watchError);
watchTaskDone(1);
return;
}
if ('warning' in watchResponse) {
grunt.log.error('warning: ', watchResponse.warning);
}
var watch = watchResponse.watch;
var relativePath = watchResponse.relative_path;
watchInitialised = true;
watchmanClient.command(['clock', watch], function(clockError, clockResponse) {
if (clockError) {
grunt.log.error('Failed to query clock:', clockError);
watchTaskDone(1);
return;
}
// Generate the expression query used by watchman.
// Documentation is limited, but see https://facebook.github.io/watchman/docs/expr/allof.html for examples.
// We generate an expression to match any value in the files list of all of our tasks, but excluding
// all value in the excludes list of that task.
//
// [anyof, [
// [allof, [
// [anyof, [
// ['match', validPath, 'wholename'],
// ['match', validPath, 'wholename'],
// ],
// [not,
// [anyof, [
// ['match', invalidPath, 'wholename'],
// ['match', invalidPath, 'wholename'],
// ],
// ],
// ],
var matchWholeName = fileGlob => ['match', fileGlob, 'wholename'];
var matches = Object.keys(watchConfig).map(function(task) {
const matchAll = [];
matchAll.push(['anyof'].concat(watchConfig[task].files.map(matchWholeName)));
if (watchConfig[task].excludes.length) {
matchAll.push(['not', ['anyof'].concat(watchConfig[task].excludes.map(matchWholeName))]);
}
return ['allof'].concat(matchAll);
});
matches = ['anyof'].concat(matches);
var sub = {
expression: matches,
// Which fields we're interested in.
fields: ["name", "size", "type"],
// Add our time constraint.
since: clockResponse.clock
};
if (relativePath) {
/* eslint-disable camelcase */
sub.relative_root = relativePath;
}
watchmanClient.command(['subscribe', watch, 'grunt-watch', sub], function(subscribeError) {
if (subscribeError) {
// Probably an error in the subscription criteria.
grunt.log.error('failed to subscribe: ', subscribeError);
watchTaskDone(1);
return;
}
grunt.log.ok('Listening for changes to files in ' + fullRunDir);
});
});
});
};
// On watch, we dynamically modify config to build only affected files. This
// method is slightly complicated to deal with multiple changed files at once (copied
// from the grunt-contrib-watch readme).
var changedFiles = Object.create(null);
var onChange = grunt.util._.debounce(function() {
var files = Object.keys(changedFiles);
grunt.config('eslint.amd.src', files);
grunt.config('eslint.yui.src', files);
grunt.config('uglify.amd.files', [{expand: true, src: files, rename: uglifyRename}]);
grunt.config('shifter.options.paths', files);
grunt.config('gherkinlint.options.files', files);
changedFiles = Object.create(null);
var files = Object.keys(changedFiles);
grunt.config('eslint.amd.src', files);
grunt.config('eslint.yui.src', files);
grunt.config('shifter.options.paths', files);
grunt.config('gherkinlint.options.files', files);
grunt.config('babel.dist.files', [{expand: true, src: files, rename: babelRename}]);
changedFiles = Object.create(null);
}, 200);
grunt.event.on('watch', function(action, filepath) {
changedFiles[filepath] = action;
onChange();
changedFiles[filepath] = action;
onChange();
});
// Register NPM tasks.
@@ -347,17 +834,22 @@ module.exports = function(grunt) {
grunt.loadNpmTasks('grunt-sass');
grunt.loadNpmTasks('grunt-eslint');
grunt.loadNpmTasks('grunt-stylelint');
grunt.loadNpmTasks('grunt-babel');
// Rename the grunt-contrib-watch "watch" task because we're going to wrap it.
grunt.renameTask('watch', 'watch-grunt');
// Register JS tasks.
grunt.registerTask('shifter', 'Run Shifter against the current directory', tasks.shifter);
grunt.registerTask('gherkinlint', 'Run gherkinlint against the current directory', tasks.gherkinlint);
grunt.registerTask('ignorefiles', 'Generate ignore files for linters', tasks.ignorefiles);
grunt.registerTask('watch', 'Run tasks on file changes', tasks.watch);
grunt.registerTask('yui', ['eslint:yui', 'shifter']);
grunt.registerTask('amd', ['eslint:amd', 'uglify']);
grunt.registerTask('amd', ['eslint:amd', 'babel']);
grunt.registerTask('js', ['amd', 'yui']);
// Register CSS taks.
grunt.registerTask('css', ['stylelint:scss', 'sass', 'stylelint:css']);
// Register CSS tasks.
registerStyleLintTasks(grunt, files, fullRunDir);
// Register the startup task.
grunt.registerTask('startup', 'Run the correct tasks for the current directory', tasks.startup);
+188
View File
@@ -0,0 +1,188 @@
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Helper functions for working with Moodle component names, directories, and sources.
*
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
"use strict";
/* eslint-env node */
/** @var {Object} A list of subsystems in Moodle */
const componentData = {};
/**
* Load details of all moodle modules.
*
* @returns {object}
*/
const fetchComponentData = () => {
const fs = require('fs');
const path = require('path');
const glob = require('glob');
const gruntFilePath = process.cwd();
if (!Object.entries(componentData).length) {
componentData.subsystems = {};
componentData.pathList = [];
// Fetch the component definiitions from the distributed JSON file.
const components = JSON.parse(fs.readFileSync(`${gruntFilePath}/lib/components.json`));
// Build the list of moodle subsystems.
componentData.subsystems.lib = 'core';
componentData.pathList.push(process.cwd() + path.sep + 'lib');
for (const [component, thisPath] of Object.entries(components.subsystems)) {
if (thisPath) {
// Prefix "core_" to the front of the subsystems.
componentData.subsystems[thisPath] = `core_${component}`;
componentData.pathList.push(process.cwd() + path.sep + thisPath);
}
}
// The list of components incldues the list of subsystems.
componentData.components = componentData.subsystems;
// Go through each of the plugintypes.
Object.entries(components.plugintypes).forEach(([pluginType, pluginTypePath]) => {
// We don't allow any code in this place..?
glob.sync(`${pluginTypePath}/*/version.php`).forEach(versionPath => {
const componentPath = fs.realpathSync(path.dirname(versionPath));
const componentName = path.basename(componentPath);
const frankenstyleName = `${pluginType}_${componentName}`;
componentData.components[`${pluginTypePath}/${componentName}`] = frankenstyleName;
componentData.pathList.push(componentPath);
// Look for any subplugins.
const subPluginConfigurationFile = `${componentPath}/db/subplugins.json`;
if (fs.existsSync(subPluginConfigurationFile)) {
const subpluginList = JSON.parse(fs.readFileSync(fs.realpathSync(subPluginConfigurationFile)));
Object.entries(subpluginList.plugintypes).forEach(([subpluginType, subpluginTypePath]) => {
glob.sync(`${subpluginTypePath}/*/version.php`).forEach(versionPath => {
const componentPath = fs.realpathSync(path.dirname(versionPath));
const componentName = path.basename(componentPath);
const frankenstyleName = `${subpluginType}_${componentName}`;
componentData.components[`${subpluginTypePath}/${componentName}`] = frankenstyleName;
componentData.pathList.push(componentPath);
});
});
}
});
});
}
return componentData;
};
/**
* Get the list of paths to build AMD sources.
*
* @returns {Array}
*/
const getAmdSrcGlobList = () => {
const globList = [];
fetchComponentData().pathList.forEach(componentPath => {
globList.push(`${componentPath}/amd/src/*.js`);
globList.push(`${componentPath}/amd/src/**/*.js`);
});
return globList;
};
/**
* Get the list of paths to build YUI sources.
*
* @param {String} relativeTo
* @returns {Array}
*/
const getYuiSrcGlobList = relativeTo => {
const globList = [];
fetchComponentData().pathList.forEach(componentPath => {
const relativeComponentPath = componentPath.replace(relativeTo, '');
globList.push(`${relativeComponentPath}/yui/src/**/*.js`);
});
return globList;
};
/**
* Get the list of paths to thirdpartylibs.xml.
*
* @param {String} relativeTo
* @returns {Array}
*/
const getThirdPartyLibsList = relativeTo => {
const fs = require('fs');
const path = require('path');
return fetchComponentData().pathList
.map(componentPath => path.relative(relativeTo, componentPath) + '/thirdpartylibs.xml')
.map(componentPath => componentPath.replace(/\\/g, '/'))
.filter(path => fs.existsSync(path))
.sort();
};
/**
* Find the name of the component matching the specified path.
*
* @param {String} path
* @returns {String|null} Name of matching component.
*/
const getComponentFromPath = path => {
const componentList = fetchComponentData().components;
if (componentList.hasOwnProperty(path)) {
return componentList[path];
}
return null;
};
/**
* Check whether the supplied path, relative to the Gruntfile.js, is in a known component.
*
* @param {String} checkPath The path to check. This can be with either Windows, or Linux directory separators.
* @returns {String|null}
*/
const getOwningComponentDirectory = checkPath => {
const path = require('path');
// Fetch all components into a reverse sorted array.
// This ensures that components which are within the directory of another component match first.
const pathList = Object.keys(fetchComponentData().components).sort().reverse();
for (const componentPath of pathList) {
// If the componentPath is the directory being checked, it will be empty.
// If the componentPath is a parent of the directory being checked, the relative directory will not start with ..
if (!path.relative(componentPath, checkPath).startsWith('..')) {
return componentPath;
}
}
return null;
};
module.exports = {
getAmdSrcGlobList,
getComponentFromPath,
getOwningComponentDirectory,
getYuiSrcGlobList,
getThirdPartyLibsList,
};
+5 -4
View File
@@ -33,8 +33,7 @@ $confirm = optional_param('confirm', 0, PARAM_BOOL);
$PAGE->set_url('/admin/antiviruses.php', array('action' => $action, 'antivirus' => $antivirus));
$PAGE->set_context(context_system::instance());
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
$returnurl = "$CFG->wwwroot/$CFG->admin/settings.php?section=manageantiviruses";
@@ -99,8 +98,10 @@ switch ($action) {
default:
break;
}
$new = implode(',', $activeantiviruses);
add_to_config_log('antiviruses', $CFG->antiviruses, $new, 'core');
set_config('antiviruses', $new);
set_config('antiviruses', implode(',', $activeantiviruses));
core_plugin_manager::reset_caches();
redirect ($returnurl);
redirect ($returnurl);
+1 -2
View File
@@ -11,8 +11,7 @@ require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/tablelib.php');
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
$returnurl = new moodle_url('/admin/settings.php', array('section'=>'manageauths'));
-1
View File
@@ -30,7 +30,6 @@ $category = required_param('category', PARAM_SAFEDIR);
$return = optional_param('return','', PARAM_ALPHA);
$adminediting = optional_param('adminedit', -1, PARAM_BOOL);
/// no guest autologin
require_login(0, false);
$PAGE->set_context(context_system::instance());
$PAGE->set_url('/admin/category.php', array('category' => $category));
+1
View File
@@ -50,6 +50,7 @@ class purge_caches extends \moodleform {
$mform->createElement('advcheckbox', 'theme', '', get_string('purgethemecache', 'admin')),
$mform->createElement('advcheckbox', 'lang', '', get_string('purgelangcache', 'admin')),
$mform->createElement('advcheckbox', 'js', '', get_string('purgejscache', 'admin')),
$mform->createElement('advcheckbox', 'template', '', get_string('purgetemplates', 'admin')),
$mform->createElement('advcheckbox', 'filter', '', get_string('purgefiltercache', 'admin')),
$mform->createElement('advcheckbox', 'muc', '', get_string('purgemuc', 'admin')),
$mform->createElement('advcheckbox', 'other', '', get_string('purgeothercaches', 'admin'))
+194
View File
@@ -0,0 +1,194 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* File size admin setting.
*
* @package core_admin
* @copyright 2019 Shamim Rezaie <shamim@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace core_admin\local\settings;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/adminlib.php');
/**
* An admin setting to support entering and displaying of file sizes in Bytes, KB, MB or GB.
*
* @copyright 2019 Shamim Rezaie <shamim@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class filesize extends \admin_setting {
/** @var int The byte unit. Number of bytes in a byte */
const UNIT_B = 1;
/** @var int The kilobyte unit (number of bytes in a kilobyte) */
const UNIT_KB = 1024;
/** @var int The megabyte unit (number of bytes in a megabyte) */
const UNIT_MB = 1048576;
/** @var int The gigabyte unit (number of bytes in a gigabyte) */
const UNIT_GB = 1073741824;
/** @var int default size unit */
protected $defaultunit;
/**
* Constructor
*
* @param string $name unique ascii name, either 'mysetting' for settings that in config,
* or 'myplugin/mysetting' for ones in config_plugins.
* @param string $visiblename localised name
* @param string $description localised long description
* @param int|null $defaultvalue Value of the settings in bytes
* @param int|null $defaultunit GB, MB, etc. (in bytes)
*/
public function __construct(string $name, string $visiblename, string $description,
int $defaultvalue = null, int $defaultunit = null) {
$defaultsetting = self::parse_bytes($defaultvalue);
if ($defaultunit && array_key_exists($defaultunit, self::get_units())) {
$this->defaultunit = $defaultunit;
} else {
$this->defaultunit = self::UNIT_MB;
}
parent::__construct($name, $visiblename, $description, $defaultsetting);
}
/**
* Returns selectable units.
*
* @return array
*/
protected static function get_units(): array {
return [
self::UNIT_GB => get_string('sizegb'),
self::UNIT_MB => get_string('sizemb'),
self::UNIT_KB => get_string('sizekb'),
self::UNIT_B => get_string('sizeb'),
];
}
/**
* Converts bytes to some more user friendly string.
*
* @param int $bytes The number of bytes we want to convert from
* @return string
*/
protected static function get_size_text(int $bytes): string {
if (empty($bytes)) {
return get_string('none');
}
return display_size($bytes);
}
/**
* Finds suitable units for given file size.
*
* @param int $bytes The number of bytes
* @return array Parsed file size in the format of ['v' => value, 'u' => unit]
*/
protected static function parse_bytes(int $bytes): array {
foreach (self::get_units() as $unit => $unused) {
if ($bytes % $unit === 0) {
return ['v' => (int)($bytes / $unit), 'u' => $unit];
}
}
return ['v' => (int)$bytes, 'u' => self::UNIT_B];
}
/**
* Get the selected file size as array.
*
* @return array|null An array containing 'v' => xx, 'u' => xx, or null if not set
*/
public function get_setting(): ?array {
$bytes = $this->config_read($this->name);
if (is_null($bytes)) {
return null;
}
return self::parse_bytes($bytes);
}
/**
* Store the file size as bytes.
*
* @param array $data Must be form 'h' => xx, 'm' => xx
* @return string The error string if any
*/
public function write_setting($data): string {
if (!is_array($data)) {
return '';
}
if (!is_numeric($data['v']) || $data['v'] < 0) {
return get_string('errorsetting', 'admin');
}
$bytes = $data['v'] * $data['u'];
$result = $this->config_write($this->name, $bytes);
return ($result ? '' : get_string('errorsetting', 'admin'));
}
/**
* Returns file size text+select fields.
*
* @param array $data The current setting value. Must be form 'v' => xx, 'u' => xx.
* @param string $query Admin search query to be highlighted.
* @return string File size text+select fields and wrapping div(s).
*/
public function output_html($data, $query = ''): string {
global $OUTPUT;
$default = $this->get_defaultsetting();
if (is_number($default)) {
$defaultinfo = self::get_size_text($default);
} else if (is_array($default)) {
$defaultinfo = self::get_size_text($default['v'] * $default['u']);
} else {
$defaultinfo = null;
}
$inputid = $this->get_id() . 'v';
$units = self::get_units();
$defaultunit = $this->defaultunit;
$context = (object) [
'id' => $this->get_id(),
'name' => $this->get_full_name(),
'value' => $data['v'],
'options' => array_map(function($unit, $title) use ($data, $defaultunit) {
return [
'value' => $unit,
'name' => $title,
'selected' => ($data['v'] == 0 && $unit == $defaultunit) || $unit == $data['u']
];
}, array_keys($units), $units)
];
$element = $OUTPUT->render_from_template('core_admin/setting_configfilesize', $context);
return format_admin_setting($this, $this->visiblename, $element, $this->description, $inputid, '', $defaultinfo, $query);
}
}
+2 -1
View File
@@ -131,7 +131,8 @@ class task_log_table extends \table_sql {
}
$sql = "SELECT
tl.*,
tl.id, tl.type, tl.component, tl.classname, tl.userid, tl.timestart, tl.timeend,
tl.dbreads, tl.dbwrites, tl.result,
tl.dbreads + tl.dbwrites AS db,
tl.timeend - tl.timestart AS duration,
{$userfields}
+122
View File
@@ -0,0 +1,122 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Task executor for adhoc tasks.
*
* @package core
* @subpackage cli
* @copyright 2018 Andrew Nicols <andrew@nicols.co.uk>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once("{$CFG->libdir}/clilib.php");
require_once("{$CFG->libdir}/cronlib.php");
list($options, $unrecognized) = cli_get_params(
[
'execute' => false,
'help' => false,
'keep-alive' => 0,
'showsql' => false,
'showdebugging' => false,
'ignorelimits' => false,
], [
'h' => 'help',
'e' => 'execute',
'k' => 'keep-alive',
'i' => 'ignorelimits',
]
);
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
}
if ($options['help'] or empty($options['execute'])) {
$help = <<<EOT
Ad hoc cron tasks.
Options:
-h, --help Print out this help
--showsql Show sql queries before they are executed
--showdebugging Show developer level debugging information
-e, --execute Run all queued adhoc tasks
-k, --keep-alive=N Keep this script alive for N seconds and poll for new adhoc tasks
-i --ignorelimits Ignore task_adhoc_concurrency_limit and task_adhoc_max_runtime limits
Example:
\$sudo -u www-data /usr/bin/php admin/cli/adhoc_task.php --execute
EOT;
echo $help;
die;
}
if ($options['showdebugging']) {
set_debugging(DEBUG_DEVELOPER, true);
}
if ($options['showsql']) {
$DB->set_debug(true);
}
if (CLI_MAINTENANCE) {
echo "CLI maintenance mode active, cron execution suspended.\n";
exit(1);
}
if (moodle_needs_upgrading()) {
echo "Moodle upgrade pending, cron execution suspended.\n";
exit(1);
}
if (empty($options['execute'])) {
exit(0);
}
if (empty($options['keep-alive'])) {
$options['keep-alive'] = 0;
}
if (!empty($CFG->showcronsql)) {
$DB->set_debug(true);
}
if (!empty($CFG->showcrondebugging)) {
set_debugging(DEBUG_DEVELOPER, true);
}
$checklimits = empty($options['ignorelimits']);
core_php_time_limit::raise();
// Increase memory limit.
raise_memory_limit(MEMORY_EXTRA);
// Emulate normal session - we use admin account by default.
cron_setup_user();
$humantimenow = date('r', time());
$keepalive = (int)$options['keep-alive'];
\core\local\cli\shutdown::script_supports_graceful_exit();
mtrace("Server Time: {$humantimenow}\n");
cron_run_adhoc_tasks(time(), $keepalive, $checklimits);
+6 -1
View File
@@ -124,7 +124,12 @@ if ($options['unset'] || $options['set'] !== null) {
cli_error('The configuration variable is hard-set in the config.php, unable to change.', 4);
}
set_config($options['name'], $options['set'], $options['component']);
$new = $options['set'];
$old = get_config($options['component'], $options['name']);
if ($new !== $old) {
set_config($options['name'], $options['set'], $options['component']);
add_to_config_log($options['name'], $old, $new, $options['component']);
}
exit(0);
}
+171
View File
@@ -0,0 +1,171 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* CLI tool for system checks
*
* @package core
* @category check
* @copyright 2020 Brendan Heywood (brendan@catalyst-au.net)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once($CFG->libdir.'/clilib.php');
use core\check\result;
list($options, $unrecognized) = cli_get_params([
'help' => false,
'filter' => '',
'type' => 'status',
'verbose' => false,
], [
'h' => 'help',
'f' => 'filter',
'v' => 'verbose',
't' => 'type',
]);
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
}
$checks = \core\check\manager::get_checks($options['type']);
$types = join(', ', \core\check\manager::TYPES);
$help = "Run Moodle system checks
Options:
-h, --help Print out this help
-f, --filter Filter to a subset of checks
-t, --type Which set of checks? Defaults to 'status'
One of $types
-v, --verbose Show details of all checks, not just failed checks
Example:
sudo -u www-data php admin/cli/checks.php
sudo -u www-data php admin/cli/checks.php -v
sudo -u www-data php admin/cli/checks.php -v --filter=environment
";
if ($options['help']) {
echo $help;
die();
}
$filter = $options['filter'];
if ($filter) {
$checks = array_filter($checks, function($check, $key) use ($filter) {
$ref = $check->get_ref();
return (strpos($ref, $filter) !== false);
}, 1);
}
// These shell exit codes and labels align with the NRPE standard.
$exitcodes = [
result::NA => 0,
result::OK => 0,
result::INFO => 0,
result::UNKNOWN => 3,
result::WARNING => 1,
result::ERROR => 2,
result::CRITICAL => 2,
];
$exitlabel = [
result::NA => 'OK',
result::OK => 'OK',
result::INFO => 'OK',
result::UNKNOWN => 'UNKNOWN',
result::WARNING => 'WARNING',
result::ERROR => 'CRITICAL',
result::CRITICAL => 'CRITICAL',
];
$format = "% 10s| % -60s\n";
$spacer = "----------+--------------------------------------------------------------------\n";
$prefix = ' |';
$output = '';
$header = $exitlabel[result::OK] . ': ' . get_string('checksok', '', $options['type']) . "\n";
$exitcode = $exitcodes[result::OK];
foreach ($checks as $check) {
$ref = $check->get_ref();
$result = $check->get_result();
$status = $result->get_status();
$checkexitcode = $exitcodes[$status];
// Summary is treated as html.
$summary = $result->get_summary();
$summary = html_to_text($summary, 60, false);
if ($checkexitcode > $exitcode) {
$exitcode = $checkexitcode;
$header = $exitlabel[$status] . ': ' . $check->get_name() . " (" . $check->get_ref() . ")\n";
}
if (empty($messages[$status])) {
$messages[$status] = $result;
}
$len = strlen(get_string('status' . $status));
if ($options['verbose'] ||
$status == result::WARNING ||
$status == result::CRITICAL ||
$status == result::ERROR) {
$output .= sprintf(
$format,
$OUTPUT->check_result($result),
sprintf('%s (%s)', $check->get_name(), $ref)
);
$summary = str_replace("\n", "\n" . $prefix . ' ', $summary);
$output .= sprintf( $format, '', ' ' . $summary);
if ($options['verbose']) {
$actionlink = $check->get_action_link();
if ($actionlink) {
$output .= sprintf( $format, '', ' ' . $actionlink->url);
}
$output .= sprintf( $format, '', '');
}
}
}
// Print NRPE header.
print $header;
// Only show the table header if there is anything to show.
if ($output) {
print sprintf($format,
get_string('status'). ' ',
get_string('check')
) . $spacer;
print $output;
}
// NRPE shell exit code.
exit($exitcode);
+20 -2
View File
@@ -35,8 +35,16 @@ require_once($CFG->libdir.'/clilib.php'); // cli only functions
require_once($CFG->libdir.'/cronlib.php');
// now get cli options
list($options, $unrecognized) = cli_get_params(array('help'=>false),
array('h'=>'help'));
list($options, $unrecognized) = cli_get_params(
array(
'help' => false,
'stop' => false,
),
array(
'h' => 'help',
's' => 'stop',
)
);
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
@@ -49,6 +57,7 @@ if ($options['help']) {
Options:
-h, --help Print out this help
-s, --stop Notify all other running cron processes to stop after the current task
Example:
\$sudo -u www-data /usr/bin/php admin/cli/cron.php
@@ -58,4 +67,13 @@ Example:
die;
}
if ($options['stop']) {
// By clearing the caches this signals to other running processes
// to exit after finishing the current task.
\core\task\manager::clear_static_caches();
die;
}
\core\local\cli\shutdown::script_supports_graceful_exit();
cron_run();
+198 -181
View File
@@ -266,6 +266,7 @@ list($options, $unrecognized) = cli_get_params(
);
$interactive = empty($options['non-interactive']);
$skipdatabase = $options['skip-database'];
// set up language
$lang = clean_param($options['lang'], PARAM_SAFEDIR);
@@ -391,7 +392,6 @@ if ($interactive) {
$CFG->wwwroot = $wwwroot;
$CFG->httpswwwroot = $CFG->wwwroot;
//We need dataroot before lang download
$CFG->dataroot = $options['dataroot'];
if ($interactive) {
@@ -514,100 +514,105 @@ if ($interactive) {
$database = $databases[$CFG->dbtype];
// ask for db host
if ($interactive) {
cli_separator();
cli_heading(get_string('databasehost', 'install'));
if ($options['dbhost'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbhost']);
// We cannot do any validation until all DB connection data is provided.
$hintdatabase = '';
do {
echo $hintdatabase;
// Ask for db host.
if ($interactive) {
cli_separator();
cli_heading(get_string('databasehost', 'install'));
if ($options['dbhost'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbhost']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
$CFG->dbhost = cli_input($prompt, $options['dbhost']);
} else {
$prompt = get_string('clitypevalue', 'admin');
$CFG->dbhost = $options['dbhost'];
}
$CFG->dbhost = cli_input($prompt, $options['dbhost']);
} else {
$CFG->dbhost = $options['dbhost'];
}
// Ask for db name.
if ($interactive) {
cli_separator();
cli_heading(get_string('databasename', 'install'));
if ($options['dbname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbname']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
$CFG->dbname = cli_input($prompt, $options['dbname']);
// ask for db name
if ($interactive) {
cli_separator();
cli_heading(get_string('databasename', 'install'));
if ($options['dbname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbname']);
} else {
$prompt = get_string('clitypevalue', 'admin');
$CFG->dbname = $options['dbname'];
}
$CFG->dbname = cli_input($prompt, $options['dbname']);
} else {
$CFG->dbname = $options['dbname'];
}
// Ask for db prefix.
if ($interactive) {
cli_separator();
cli_heading(get_string('dbprefix', 'install'));
//TODO: solve somehow the prefix trouble for oci.
if ($options['prefix'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['prefix']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
$CFG->prefix = cli_input($prompt, $options['prefix']);
// ask for db prefix
if ($interactive) {
cli_separator();
cli_heading(get_string('dbprefix', 'install'));
//TODO: solve somehow the prefix trouble for oci
if ($options['prefix'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['prefix']);
} else {
$prompt = get_string('clitypevalue', 'admin');
$CFG->prefix = $options['prefix'];
}
$CFG->prefix = cli_input($prompt, $options['prefix']);
} else {
$CFG->prefix = $options['prefix'];
}
// Ask for db port.
if ($interactive) {
cli_separator();
cli_heading(get_string('databaseport', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbport']);
$CFG->dboptions['dbport'] = (int) cli_input($prompt, $options['dbport']);
// ask for db port
if ($interactive) {
cli_separator();
cli_heading(get_string('databaseport', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbport']);
$CFG->dboptions['dbport'] = (int)cli_input($prompt, $options['dbport']);
} else {
$CFG->dboptions['dbport'] = (int)$options['dbport'];
}
if ($CFG->dboptions['dbport'] <= 0) {
$CFG->dboptions['dbport'] = '';
}
// ask for db socket
if ($CFG->ostype === 'WINDOWS') {
$CFG->dboptions['dbsocket'] = '';
} else if ($interactive and empty($CFG->dboptions['dbport'])) {
cli_separator();
cli_heading(get_string('databasesocket', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbsocket']);
$CFG->dboptions['dbsocket'] = cli_input($prompt, $options['dbsocket']);
} else {
$CFG->dboptions['dbsocket'] = $options['dbsocket'];
}
// ask for db user
if ($interactive) {
cli_separator();
cli_heading(get_string('databaseuser', 'install'));
if ($options['dbuser'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbuser']);
} else {
$prompt = get_string('clitypevalue', 'admin');
$CFG->dboptions['dbport'] = (int) $options['dbport'];
}
if ($CFG->dboptions['dbport'] <= 0) {
$CFG->dboptions['dbport'] = '';
}
$CFG->dbuser = cli_input($prompt, $options['dbuser']);
} else {
$CFG->dbuser = $options['dbuser'];
}
// Ask for db socket.
if ($CFG->ostype === 'WINDOWS') {
$CFG->dboptions['dbsocket'] = '';
} else if ($interactive and empty($CFG->dboptions['dbport'])) {
cli_separator();
cli_heading(get_string('databasesocket', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbsocket']);
$CFG->dboptions['dbsocket'] = cli_input($prompt, $options['dbsocket']);
} else {
$CFG->dboptions['dbsocket'] = $options['dbsocket'];
}
// Ask for db user.
if ($interactive) {
cli_separator();
cli_heading(get_string('databaseuser', 'install'));
if ($options['dbuser'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbuser']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
$CFG->dbuser = cli_input($prompt, $options['dbuser']);
} else {
$CFG->dbuser = $options['dbuser'];
}
// Ask for db password.
if ($interactive) {
cli_separator();
cli_heading(get_string('databasepass', 'install'));
// ask for db password
if ($interactive) {
cli_separator();
cli_heading(get_string('databasepass', 'install'));
do {
if ($options['dbpass'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['dbpass']);
} else {
@@ -615,110 +620,118 @@ if ($interactive) {
}
$CFG->dbpass = cli_input($prompt, $options['dbpass']);
if (function_exists('distro_pre_create_db')) { // Hook for distros needing to do something before DB creation
$distro = distro_pre_create_db($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix, array('dbpersist'=>0, 'dbport'=>$CFG->dboptions['dbport'], 'dbsocket'=>$CFG->dboptions['dbsocket']), $distro);
if (function_exists('distro_pre_create_db')) { // Hook for distros needing to do something before DB creation.
$distro = distro_pre_create_db($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix,
array('dbpersist' => 0, 'dbport' => $CFG->dboptions['dbport'], 'dbsocket' => $CFG->dboptions['dbsocket']),
$distro);
}
$hint_database = install_db_validate($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix, array('dbpersist'=>0, 'dbport'=>$CFG->dboptions['dbport'], 'dbsocket'=>$CFG->dboptions['dbsocket']));
} while ($hint_database !== '');
$hintdatabase = install_db_validate($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix,
array('dbpersist' => 0, 'dbport' => $CFG->dboptions['dbport'], 'dbsocket' => $CFG->dboptions['dbsocket']));
} else {
$CFG->dbpass = $options['dbpass'];
$hint_database = install_db_validate($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix, array('dbpersist'=>0, 'dbport'=>$CFG->dboptions['dbport'], 'dbsocket'=>$CFG->dboptions['dbsocket']));
if ($hint_database !== '') {
cli_error(get_string('dbconnectionerror', 'install'));
}
}
// ask for fullname
if ($interactive) {
cli_separator();
cli_heading(get_string('fullsitename', 'moodle'));
if ($options['fullname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['fullname']);
} else {
$prompt = get_string('clitypevalue', 'admin');
$CFG->dbpass = $options['dbpass'];
$hintdatabase = install_db_validate($database, $CFG->dbhost, $CFG->dbuser, $CFG->dbpass, $CFG->dbname, $CFG->prefix,
array('dbpersist' => 0, 'dbport' => $CFG->dboptions['dbport'], 'dbsocket' => $CFG->dboptions['dbsocket']));
if ($hintdatabase !== '') {
cli_error(get_string('dbconnectionerror', 'install'));
}
}
} while ($hintdatabase !== '');
do {
$options['fullname'] = cli_input($prompt, $options['fullname']);
} while (empty($options['fullname']));
} else {
if (empty($options['fullname'])) {
$a = (object)array('option'=>'fullname', 'value'=>$options['fullname']);
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// If --skip-database option is provided, we do not need to ask for site fullname, shortname, adminuser, adminpass, adminemail.
// These fields will be requested during the database install part.
if (!$skipdatabase) {
// Ask for fullname.
if ($interactive) {
cli_separator();
cli_heading(get_string('fullsitename', 'moodle'));
// ask for shortname
if ($interactive) {
cli_separator();
cli_heading(get_string('shortsitename', 'moodle'));
if ($options['fullname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['fullname']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
if ($options['shortname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['shortname']);
do {
$options['fullname'] = cli_input($prompt, $options['fullname']);
} while (empty($options['fullname']));
} else {
$prompt = get_string('clitypevalue', 'admin');
if (empty($options['fullname'])) {
$a = (object)['option' => 'fullname', 'value' => $options['fullname']];
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
do {
$options['shortname'] = cli_input($prompt, $options['shortname']);
} while (empty($options['shortname']));
} else {
if (empty($options['shortname'])) {
$a = (object)array('option'=>'shortname', 'value'=>$options['shortname']);
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// Ask for shortname.
if ($interactive) {
cli_separator();
cli_heading(get_string('shortsitename', 'moodle'));
// ask for admin user name
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminusername', 'install'));
if (!empty($options['adminuser'])) {
$prompt = get_string('clitypevaluedefault', 'admin', $options['adminuser']);
if ($options['shortname'] !== '') {
$prompt = get_string('clitypevaluedefault', 'admin', $options['shortname']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
do {
$options['shortname'] = cli_input($prompt, $options['shortname']);
} while (empty($options['shortname']));
} else {
if (empty($options['shortname'])) {
$a = (object)['option' => 'shortname', 'value' => $options['shortname']];
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// Ask for admin user name.
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminusername', 'install'));
if (!empty($options['adminuser'])) {
$prompt = get_string('clitypevaluedefault', 'admin', $options['adminuser']);
} else {
$prompt = get_string('clitypevalue', 'admin');
}
do {
$options['adminuser'] = cli_input($prompt, $options['adminuser']);
} while (empty($options['adminuser']) or $options['adminuser'] === 'guest');
} else {
if ((empty($options['adminuser']) || $options['adminuser'] === 'guest')) {
$a = (object)['option' => 'adminuser', 'value' => $options['adminuser']];
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// Ask for admin user password.
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminpassword', 'install'));
$prompt = get_string('clitypevalue', 'admin');
do {
$options['adminpass'] = cli_input($prompt);
} while (empty($options['adminpass']) or $options['adminpass'] === 'admin');
} else {
if ((empty($options['adminpass']) or $options['adminpass'] === 'admin')) {
$a = (object)['option' => 'adminpass', 'value' => $options['adminpass']];
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
do {
$options['adminuser'] = cli_input($prompt, $options['adminuser']);
} while (empty($options['adminuser']) or $options['adminuser'] === 'guest');
} else {
if (empty($options['adminuser']) or $options['adminuser'] === 'guest') {
$a = (object)array('option'=>'adminuser', 'value'=>$options['adminuser']);
// Ask for the admin email address.
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminemail', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['adminemail']);
$options['adminemail'] = cli_input($prompt, $options['adminemail']);
}
// Validate that the address provided was an e-mail address.
if (!empty($options['adminemail']) && !validate_email($options['adminemail'])) {
$a = (object)['option' => 'adminemail', 'value' => $options['adminemail']];
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// ask for admin user password
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminpassword', 'install'));
$prompt = get_string('clitypevalue', 'admin');
do {
$options['adminpass'] = cli_input($prompt);
} while (empty($options['adminpass']) or $options['adminpass'] === 'admin');
} else {
if (empty($options['adminpass']) or $options['adminpass'] === 'admin') {
$a = (object)array('option'=>'adminpass', 'value'=>$options['adminpass']);
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
}
// Ask for the admin email address.
if ($interactive) {
cli_separator();
cli_heading(get_string('cliadminemail', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', $options['adminemail']);
$options['adminemail'] = cli_input($prompt, $options['adminemail']);
}
// Validate that the address provided was an e-mail address.
if (!empty($options['adminemail']) && !validate_email($options['adminemail'])) {
$a = (object) array('option' => 'adminemail', 'value' => $options['adminemail']);
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
// Ask for the upgrade key.
if ($interactive) {
cli_separator();
@@ -737,22 +750,26 @@ if ($options['upgradekey'] !== '') {
$CFG->upgradekey = $options['upgradekey'];
}
if ($interactive) {
if (!$options['agree-license']) {
cli_separator();
cli_heading(get_string('copyrightnotice'));
echo "Moodle - Modular Object-Oriented Dynamic Learning Environment\n";
echo get_string('gpl3')."\n\n";
echo get_string('doyouagree')."\n";
$prompt = get_string('cliyesnoprompt', 'admin');
$input = cli_input($prompt, '', array(get_string('clianswerno', 'admin'), get_string('cliansweryes', 'admin')));
if ($input == get_string('clianswerno', 'admin')) {
exit(1);
// The user does not also need to pass agree-license when --skip-database is provided as the user will need to accept
// the license again in the database install part.
if (!$skipdatabase) {
if ($interactive) {
if (!$options['agree-license']) {
cli_separator();
cli_heading(get_string('copyrightnotice'));
echo "Moodle - Modular Object-Oriented Dynamic Learning Environment\n";
echo get_string('gpl3')."\n\n";
echo get_string('doyouagree')."\n";
$prompt = get_string('cliyesnoprompt', 'admin');
$input = cli_input($prompt, '', array(get_string('clianswerno', 'admin'), get_string('cliansweryes', 'admin')));
if ($input == get_string('clianswerno', 'admin')) {
exit(1);
}
}
} else {
if (!$options['agree-license'] && !$skipdatabase) {
cli_error(get_string('climustagreelicense', 'install'));
}
}
} else {
if (!$options['agree-license']) {
cli_error(get_string('climustagreelicense', 'install'));
}
}
@@ -801,7 +818,7 @@ if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
if (!$options['skip-database']) {
if (!$skipdatabase) {
install_cli_database($options, $interactive);
// This needs to happen at the end to ensure it occurs after all caches
// have been purged for the last time.
+1 -1
View File
@@ -94,7 +94,7 @@ if ($options['password'] == '' ) {
$errmsg = '';//prevent eclipse warning
if (!$options['ignore-password-policy'] ) {
if (!check_password_policy($password, $errmsg)) {
if (!check_password_policy($password, $errmsg, $user)) {
cli_error(html_to_text($errmsg, 0));
}
}
+151
View File
@@ -0,0 +1,151 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* CLI task execution.
*
* @package core
* @subpackage cli
* @copyright 2014 Petr Skoda
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('CLI_SCRIPT', true);
require(__DIR__ . '/../../config.php');
require_once("$CFG->libdir/clilib.php");
require_once("$CFG->libdir/cronlib.php");
list($options, $unrecognized) = cli_get_params(
array('help' => false, 'list' => false, 'execute' => false, 'showsql' => false, 'showdebugging' => false),
array('h' => 'help')
);
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
}
if ($options['help'] or (!$options['list'] and !$options['execute'])) {
$help =
"Scheduled cron tasks.
Options:
--execute=\\some\\task Execute scheduled task manually
--list List all scheduled tasks
--showsql Show sql queries before they are executed
--showdebugging Show developer level debugging information
-h, --help Print out this help
Example:
\$sudo -u www-data /usr/bin/php admin/cli/scheduled_task.php --execute=\\core\\task\\session_cleanup_task
";
echo $help;
die;
}
if ($options['showdebugging']) {
set_debugging(DEBUG_DEVELOPER, true);
}
if ($options['showsql']) {
$DB->set_debug(true);
}
if ($options['list']) {
cli_heading("List of scheduled tasks ($CFG->wwwroot)");
$shorttime = get_string('strftimedatetimeshort');
$tasks = \core\task\manager::get_all_scheduled_tasks();
echo str_pad(get_string('scheduledtasks', 'tool_task'), 50, ' ') . ' ' . str_pad(get_string('runpattern', 'tool_task'), 17, ' ')
. ' ' . str_pad(get_string('lastruntime', 'tool_task'), 40, ' ') . get_string('nextruntime', 'tool_task') . "\n";
foreach ($tasks as $task) {
$class = '\\' . get_class($task);
$schedule = $task->get_minute() . ' '
. $task->get_hour() . ' '
. $task->get_day() . ' '
. $task->get_day_of_week() . ' '
. $task->get_month() . ' '
. $task->get_day_of_week();
$nextrun = $task->get_next_run_time();
$lastrun = $task->get_last_run_time();
$plugininfo = core_plugin_manager::instance()->get_plugin_info($task->get_component());
$plugindisabled = $plugininfo && $plugininfo->is_enabled() === false && !$task->get_run_if_component_disabled();
if ($plugindisabled) {
$nextrun = get_string('plugindisabled', 'tool_task');
} else if ($task->get_disabled()) {
$nextrun = get_string('taskdisabled', 'tool_task');
} else if ($nextrun > time()) {
$nextrun = userdate($nextrun);
} else {
$nextrun = get_string('asap', 'tool_task');
}
if ($lastrun) {
$lastrun = userdate($lastrun);
} else {
$lastrun = get_string('never');
}
echo str_pad($class, 50, ' ') . ' ' . str_pad($schedule, 17, ' ') .
' ' . str_pad($lastrun, 40, ' ') . ' ' . $nextrun . "\n";
}
exit(0);
}
if ($execute = $options['execute']) {
if (!$task = \core\task\manager::get_scheduled_task($execute)) {
mtrace("Task '$execute' not found");
exit(1);
}
if (moodle_needs_upgrading()) {
mtrace("Moodle upgrade pending, cannot execute tasks.");
exit(1);
}
// Increase memory limit.
raise_memory_limit(MEMORY_EXTRA);
// Emulate normal session - we use admin account by default.
cron_setup_user();
// Execute the task.
\core\local\cli\shutdown::script_supports_graceful_exit();
$cronlockfactory = \core\lock\lock_config::get_lock_factory('cron');
if (!$cronlock = $cronlockfactory->get_lock('core_cron', 10)) {
mtrace('Cannot obtain cron lock');
exit(129);
}
if (!$lock = $cronlockfactory->get_lock('\\' . get_class($task), 10)) {
$cronlock->release();
mtrace('Cannot obtain task lock');
exit(130);
}
$task->set_lock($lock);
if (!$task->is_blocking()) {
$cronlock->release();
} else {
$task->set_cron_lock($cronlock);
}
cron_run_inner_scheduled_task($task);
}
+9 -2
View File
@@ -52,7 +52,8 @@ list($options, $unrecognized) = cli_get_params(
'allow-unstable' => false,
'help' => false,
'lang' => $lang,
'verbose-settings' => false
'verbose-settings' => false,
'is-pending' => false,
),
array(
'h' => 'help'
@@ -88,6 +89,8 @@ Options:
--verbose-settings Show new settings values. By default only the name of
new core or plugin settings are displayed. This option
outputs the new values as well as the setting name.
--is-pending If an upgrade is needed it exits with an error code of
2 so it distinct from other types of errors.
-h, --help Print out this help
Example:
@@ -116,6 +119,10 @@ if (!moodle_needs_upgrading()) {
cli_error(get_string('cliupgradenoneed', 'core_admin', $newversion), 0);
}
if ($options['is-pending']) {
cli_error(get_string('cliupgradepending', 'core_admin'), 2);
}
// Test environment first.
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
if (!$envstatus) {
@@ -130,7 +137,7 @@ if (!$envstatus) {
// Test plugin dependencies.
$failed = array();
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed)) {
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed, $CFG->branch)) {
cli_problem(get_string('pluginscheckfailed', 'admin', array('pluginslist' => implode(', ', array_unique($failed)))));
cli_error(get_string('pluginschecktodo', 'admin'));
}
+84
View File
@@ -0,0 +1,84 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Content bank and its plugins settings.
*
* @package core
* @subpackage contentbank
* @copyright 2020 Amaia Anabitarte <amaia@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
$action = required_param('action', PARAM_ALPHANUMEXT);
$name = required_param('name', PARAM_PLUGIN);
$syscontext = context_system::instance();
$PAGE->set_url('/admin/contentbank.php');
$PAGE->set_context($syscontext);
require_admin();
require_sesskey();
$return = new moodle_url('/admin/settings.php', array('section' => 'managecontentbanktypes'));
$plugins = core_plugin_manager::instance()->get_plugins_of_type('contenttype');
$sortorder = array_flip(array_keys($plugins));
if (!isset($plugins[$name])) {
print_error('contenttypenotfound', 'error', $return, $name);
}
switch ($action) {
case 'disable':
if ($plugins[$name]->is_enabled()) {
set_config('disabled', 1, 'contentbank_'. $name);
}
break;
case 'enable':
if (!$plugins[$name]->is_enabled()) {
unset_config('disabled', 'contentbank_'. $name);
}
break;
case 'up':
if ($sortorder[$name]) {
$currentindex = $sortorder[$name];
$seq = array_keys($plugins);
$seq[$currentindex] = $seq[$currentindex - 1];
$seq[$currentindex - 1] = $name;
set_config('contentbank_plugins_sortorder', implode(',', $seq));
}
break;
case 'down':
if ($sortorder[$name] < count($sortorder) - 1) {
$currentindex = $sortorder[$name];
$seq = array_keys($plugins);
$seq[$currentindex] = $seq[$currentindex + 1];
$seq[$currentindex + 1] = $name;
set_config('contentbank_plugins_sortorder', implode(',', $seq));
}
break;
}
core_plugin_manager::reset_caches();
$cache = cache::make('core', 'contentbank_enabled_extensions');
$cache->purge();
$cache = cache::make('core', 'contentbank_context_extensions');
$cache->purge();
redirect($return);
+1 -2
View File
@@ -32,8 +32,7 @@ $syscontext = context_system::instance();
$PAGE->set_url('/admin/courseformats.php');
$PAGE->set_context($syscontext);
require_login();
require_capability('moodle/site:config', $syscontext);
require_admin();
require_sesskey();
$return = new moodle_url('/admin/settings.php', array('section' => 'manageformats'));
+1 -2
View File
@@ -32,8 +32,7 @@ $syscontext = context_system::instance();
$PAGE->set_url('/admin/customfields.php');
$PAGE->set_context($syscontext);
require_login();
require_capability('moodle/site:config', $syscontext);
require_admin();
require_sesskey();
$return = new moodle_url('/admin/settings.php', array('section' => 'managecustomfields'));
+1 -2
View File
@@ -33,8 +33,7 @@ $syscontext = context_system::instance();
$PAGE->set_url('/admin/dataformats.php');
$PAGE->set_context($syscontext);
require_login();
require_capability('moodle/site:config', $syscontext);
require_admin();
require_sesskey();
$return = new moodle_url('/admin/settings.php', array('section' => 'managedataformats'));
+1 -2
View File
@@ -15,8 +15,7 @@ $confirm = optional_param('confirm', 0, PARAM_BOOL);
$PAGE->set_url('/admin/editors.php', array('action'=>$action, 'editor'=>$editor));
$PAGE->set_context(context_system::instance());
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
$returnurl = "$CFG->wwwroot/$CFG->admin/settings.php?section=manageeditors";
+1 -2
View File
@@ -35,8 +35,7 @@ $confirm = optional_param('confirm', 0, PARAM_BOOL);
$PAGE->set_url('/admin/enrol.php');
$PAGE->set_context(context_system::instance());
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
require_sesskey();
$enabled = enrol_get_plugins(true);
+545
View File
@@ -2451,6 +2451,7 @@
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.0.0" level="required">
<RESTRICT function="restrict_php_version_74" message="unsupportedphpversion74" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
@@ -2632,6 +2633,7 @@
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.1.0" level="required">
<RESTRICT function="restrict_php_version_74" message="unsupportedphpversion74" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
@@ -2799,4 +2801,547 @@
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.8" requires="3.2">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="5.5.31" />
<VENDOR name="mysql" version="5.6" />
<VENDOR name="postgres" version="9.4" />
<VENDOR name="mssql" version="11.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.1.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.9" requires="3.5">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="10.2.29" />
<VENDOR name="mysql" version="5.6" />
<VENDOR name="postgres" version="9.5" />
<VENDOR name="mssql" version="11.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.2.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="required">
<FEEDBACK>
<ON_ERROR message="mbstringrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.10" requires="3.5">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mariadb" version="10.2.29" />
<VENDOR name="mysql" version="5.7" />
<VENDOR name="postgres" version="9.6" />
<VENDOR name="mssql" version="11.0" />
<VENDOR name="oracle" version="11.2" />
</DATABASE>
<PHP version="7.2.0" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_ERROR message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="required">
<FEEDBACK>
<ON_ERROR message="mbstringrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_ERROR message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="required">
<FEEDBACK>
<ON_ERROR message="opensslrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zlib" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="required">
<FEEDBACK>
<ON_ERROR message="gdrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_ERROR message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_ERROR message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlreader" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="required">
<FEEDBACK>
<ON_ERROR message="intlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
<PHP_EXTENSION name="fileinfo" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="96M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="opcache.enable" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="opcacherecommended" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
<CUSTOM_CHECKS>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_storage_engine" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbstorageengine" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="question/engine/upgrade/upgradelib.php" function="quiz_attempts_upgraded" level="required">
<FEEDBACK>
<ON_ERROR message="quizattemptsupgradedmessage" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_slasharguments" level="optional">
<FEEDBACK>
<ON_CHECK message="slashargumentswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_database_tables_row_format" level="optional">
<FEEDBACK>
<ON_CHECK message="unsupporteddbtablerowformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_unoconv_version" level="optional">
<FEEDBACK>
<ON_CHECK message="unoconvwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_libcurl_version" level="optional">
<FEEDBACK>
<ON_CHECK message="libcurlwarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_format" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfileformat" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_file_per_table" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddbfilepertable" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_large_prefix" level="required">
<FEEDBACK>
<ON_ERROR message="unsupporteddblargeprefix" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_is_https" level="optional">
<FEEDBACK>
<ON_CHECK message="ishttpswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_mysql_incomplete_unicode_support" level="optional">
<FEEDBACK>
<ON_CHECK message="incompleteunicodesupport" />
</FEEDBACK>
</CUSTOM_CHECK>
<CUSTOM_CHECK file="lib/upgradelib.php" function="check_sixtyfour_bits" level="optional">
<FEEDBACK>
<ON_CHECK message="sixtyfourbitswarning" />
</FEEDBACK>
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
</COMPATIBILITY_MATRIX>
+43 -16
View File
@@ -226,7 +226,7 @@ if (!core_tables_exist()) {
}
if (empty($confirmrelease)) {
require_once($CFG->libdir.'/environmentlib.php');
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
list($envstatus, $environmentresults) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
$strcurrentrelease = get_string('currentrelease');
$PAGE->navbar->add($strcurrentrelease);
@@ -235,13 +235,13 @@ if (!core_tables_exist()) {
$PAGE->set_cacheable(false);
$output = $PAGE->get_renderer('core', 'admin');
echo $output->install_environment_page($maturity, $envstatus, $environment_results, $release);
echo $output->install_environment_page($maturity, $envstatus, $environmentresults, $release);
die();
}
// check plugin dependencies
$failed = array();
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed)) {
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed, $CFG->branch)) {
$PAGE->navbar->add(get_string('pluginscheck', 'admin'));
$PAGE->set_title($strinstallation);
$PAGE->set_heading($strinstallation . ' - Moodle ' . $CFG->target_release);
@@ -358,9 +358,9 @@ if (!$cache and $version > $CFG->version) { // upgrade
echo $output->upgrade_confirm_page($a->newversion, $maturity, $testsite);
die();
} else if (empty($confirmrelease)){
} else if (empty($confirmrelease)) {
require_once($CFG->libdir.'/environmentlib.php');
list($envstatus, $environment_results) = check_moodle_environment($release, ENV_SELECT_RELEASE);
list($envstatus, $environmentresults) = check_moodle_environment($release, ENV_SELECT_RELEASE);
$strcurrentrelease = get_string('currentrelease');
$PAGE->navbar->add($strcurrentrelease);
@@ -368,7 +368,7 @@ if (!$cache and $version > $CFG->version) { // upgrade
$PAGE->set_heading($strcurrentrelease);
$PAGE->set_cacheable(false);
echo $output->upgrade_environment_page($release, $envstatus, $environment_results);
echo $output->upgrade_environment_page($release, $envstatus, $environmentresults);
die();
} else if (empty($confirmplugins)) {
@@ -508,8 +508,9 @@ if (!$cache and $version > $CFG->version) { // upgrade
} else {
// Always verify plugin dependencies!
$failed = array();
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed)) {
echo $output->unsatisfied_dependencies_page($version, $failed, $PAGE->url);
if (!core_plugin_manager::instance()->all_plugins_ok($version, $failed, $CFG->branch)) {
echo $output->unsatisfied_dependencies_page($version, $failed, new moodle_url($PAGE->url,
array('confirmplugincheck' => 0)));
die();
}
unset($failed);
@@ -533,7 +534,10 @@ if (!$cache and $branch <> $CFG->branch) { // Update the branch
if (!$cache and moodle_needs_upgrading()) {
$PAGE->set_url(new moodle_url($PAGE->url, array('confirmplugincheck' => $confirmplugins)));
$PAGE->set_url(new moodle_url($PAGE->url, array(
'confirmrelease' => $confirmrelease,
'confirmplugincheck' => $confirmplugins,
)));
check_upgrade_key($upgradekeyhash);
@@ -543,7 +547,21 @@ if (!$cache and moodle_needs_upgrading()) {
$pluginman = core_plugin_manager::instance();
$output = $PAGE->get_renderer('core', 'admin');
if (!$confirmplugins) {
if (empty($confirmrelease)) {
require_once($CFG->libdir . '/environmentlib.php');
list($envstatus, $environmentresults) = check_moodle_environment($release, ENV_SELECT_RELEASE);
$strcurrentrelease = get_string('currentrelease');
$PAGE->navbar->add($strcurrentrelease);
$PAGE->set_title($strcurrentrelease);
$PAGE->set_heading($strcurrentrelease);
$PAGE->set_cacheable(false);
echo $output->upgrade_environment_page($release, $envstatus, $environmentresults);
die();
} else if (!$confirmplugins) {
$strplugincheck = get_string('plugincheck');
$PAGE->navbar->add($strplugincheck);
@@ -682,9 +700,10 @@ if (!$cache and moodle_needs_upgrading()) {
// Make sure plugin dependencies are always checked.
$failed = array();
if (!$pluginman->all_plugins_ok($version, $failed)) {
if (!$pluginman->all_plugins_ok($version, $failed, $CFG->branch)) {
$output = $PAGE->get_renderer('core', 'admin');
echo $output->unsatisfied_dependencies_page($version, $failed, $PAGE->url);
echo $output->unsatisfied_dependencies_page($version, $failed, new moodle_url($PAGE->url,
array('confirmplugincheck' => 0)));
die();
}
unset($failed);
@@ -802,7 +821,7 @@ $SESSION->admin_critical_warning = ($insecuredataroot==INSECURE_DATAROOT_ERROR);
$adminroot = admin_get_root();
// Check if there are any new admin settings which have still yet to be set
if (any_new_admin_settings($adminroot)){
if (any_new_admin_settings($adminroot)) {
redirect('upgradesettings.php');
}
@@ -826,8 +845,9 @@ $errorsdisplayed = defined('WARN_DISPLAY_ERRORS_ENABLED');
$lastcron = get_config('tool_task', 'lastcronstart');
$cronoverdue = ($lastcron < time() - 3600 * 24);
$lastcroninterval = get_config('tool_task', 'lastcroninterval');
$expectedfrequency = $CFG->expectedcronfrequency ?? 200;
$croninfrequent = !$cronoverdue && ($lastcroninterval > $expectedfrequency || $lastcron < time() - $expectedfrequency);
$expectedfrequency = $CFG->expectedcronfrequency ?? MINSECS;
$croninfrequent = !$cronoverdue && ($lastcroninterval > ($expectedfrequency + MINSECS) || $lastcron < time() - $expectedfrequency);
$dbproblems = $DB->diagnose();
$maintenancemode = !empty($CFG->maintenance_enabled);
@@ -881,6 +901,12 @@ if (empty($CFG->disabledevlibdirscheck) && (is_dir($CFG->dirroot.'/vendor') || i
// Check if the site is being foced onto ssl.
$overridetossl = !empty($CFG->overridetossl);
// Check if moodle campaign content setting is enabled or not.
$showcampaigncontent = !isset($CFG->showcampaigncontent) || $CFG->showcampaigncontent;
// Encourage admins to enable the user feedback feature if it is not enabled already.
$showfeedbackencouragement = empty($CFG->enableuserfeedback);
admin_externalpage_setup('adminnotifications');
$output = $PAGE->get_renderer('core', 'admin');
@@ -888,4 +914,5 @@ $output = $PAGE->get_renderer('core', 'admin');
echo $output->admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed, $cronoverdue, $dbproblems,
$maintenancemode, $availableupdates, $availableupdatesfetch, $buggyiconvnomb,
$registered, $cachewarnings, $eventshandlers, $themedesignermode, $devlibdir,
$mobileconfigured, $overridetossl, $invalidforgottenpasswordurl, $croninfrequent);
$mobileconfigured, $overridetossl, $invalidforgottenpasswordurl, $croninfrequent,
$showcampaigncontent, $showfeedbackencouragement);
-57
View File
@@ -1,57 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Allows admin to configure licenses.
*/
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/licenselib.php');
require_login();
require_capability('moodle/site:config', context_system::instance());
$returnurl = "$CFG->wwwroot/$CFG->admin/settings.php?section=managelicenses";
$action = optional_param('action', '', PARAM_ALPHANUMEXT);
$license = optional_param('license', '', PARAM_SAFEDIR);
////////////////////////////////////////////////////////////////////////////////
// process actions
if (!confirm_sesskey()) {
redirect($returnurl);
}
$return = true;
switch ($action) {
case 'disable':
license_manager::disable($license);
break;
case 'enable':
license_manager::enable($license);
break;
default:
break;
}
if ($return) {
redirect ($returnurl);
}
+1 -2
View File
@@ -35,8 +35,7 @@ $confirm = optional_param('confirm', 0, PARAM_BOOL);
$PAGE->set_url('/admin/media.php');
$PAGE->set_context(context_system::instance());
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
require_sesskey();
$plugins = core_plugin_manager::instance()->get_plugins_of_type('media');
+31 -11
View File
@@ -33,13 +33,17 @@ $allprocessors = get_message_processors();
$processors = array_filter($allprocessors, function($processor) {
return $processor->enabled;
});
$disabledprocessors = array_filter($allprocessors, function($processor) {
return !$processor->enabled;
});
// Fetch message providers.
$providers = get_message_providers();
// Fetch the manage message outputs interface.
$preferences = get_message_output_default_preferences();
if (($form = data_submitted()) && confirm_sesskey()) {
$preferences = array();
$newpreferences = array();
// Prepare default message outputs settings.
foreach ($providers as $provider) {
$componentproviderbase = $provider->component.'_'.$provider->name;
@@ -47,9 +51,9 @@ if (($form = data_submitted()) && confirm_sesskey()) {
$providerdisabled = false;
if (!isset($form->$disableprovidersetting)) {
$providerdisabled = true;
$preferences[$disableprovidersetting] = 1;
$newpreferences[$disableprovidersetting] = 1;
} else {
$preferences[$disableprovidersetting] = 0;
$newpreferences[$disableprovidersetting] = 0;
}
foreach (array('permitted', 'loggedin', 'loggedoff') as $setting) {
@@ -75,20 +79,36 @@ if (($form = data_submitted()) && confirm_sesskey()) {
$form->{$componentproviderbase.'_loggedoff'}[$processor->name] = 1;
}
// Record the site preference.
$preferences[$processor->name.'_provider_'.$componentprovidersetting] = $value;
$newpreferences[$processor->name.'_provider_'.$componentprovidersetting] = $value;
}
} else if (array_key_exists($componentprovidersetting, $form)) {
// We must be processing loggedin or loggedoff checkboxes. Store
// defained comma-separated processors as setting value.
// Using array_filter eliminates elements set to 0 above.
$value = join(',', array_keys(array_filter($form->{$componentprovidersetting})));
} else {
$newsettings = array();
if (property_exists($form, $componentprovidersetting)) {
// We must be processing loggedin or loggedoff checkboxes.
// Store defained comma-separated processors as setting value.
// Using array_filter eliminates elements set to 0 above.
$newsettings = array_keys(array_filter($form->{$componentprovidersetting}));
}
// Let's join existing setting values for disabled processors.
$property = 'message_provider_'.$componentprovidersetting;
if (property_exists($preferences, $property)) {
$existingsetting = $preferences->$property;
foreach ($disabledprocessors as $disable) {
if (strpos($existingsetting, $disable->name) > -1) {
$newsettings[] = $disable->name;
}
}
}
$value = join(',', $newsettings);
if (empty($value)) {
$value = null;
}
}
if ($setting != 'permitted') {
// We have already recoded site preferences for 'permitted' type.
$preferences['message_provider_'.$componentprovidersetting] = $value;
$newpreferences['message_provider_'.$componentprovidersetting] = $value;
}
}
}
@@ -102,7 +122,7 @@ if (($form = data_submitted()) && confirm_sesskey()) {
\core_message\api::update_processor_status($processor, $enabled);
}
foreach ($preferences as $name => $value) {
foreach ($newpreferences as $name => $value) {
set_config($name, $value, 'message');
}
$transaction->allow_commit();
-3
View File
@@ -34,9 +34,6 @@ $step = optional_param('step', 'verify', PARAM_ALPHA);
$hostid = required_param('hostid', PARAM_INT);
$context = context_system::instance();
$mnet = get_mnet_environment();
$PAGE->set_url('/admin/mnet/delete.php');
+1 -1
View File
@@ -156,7 +156,7 @@ class mnet_review_host_form extends moodleform {
if ($mnet_peer && !empty($mnet_peer->deleted)) {
$radioarray = array();
$radioarray[] = $mform->createElement('static', 'deletedinfo', '',
$OUTPUT->container(get_string('deletedhostinfo', 'mnet'), 'deletedhostinfo'));
$OUTPUT->container(get_string('deletedhostinfo', 'mnet'), 'alert alert-warning'));
$radioarray[] = $mform->createElement('radio', 'deleted', '', get_string('yes'), 1);
$radioarray[] = $mform->createElement('radio', 'deleted', '', get_string('no'), 0);
$mform->addGroup($radioarray, 'radioar', get_string('deleted'), array(' ', ' '), false);
+1 -2
View File
@@ -43,9 +43,8 @@ $confirminstallupdate = optional_param('confirminstallupdate', false, PARAM_BOOL
// NOTE: do not use admin_externalpage_setup() here because it loads
// full admin tree which is not possible during uninstallation.
require_login();
require_admin();
$syscontext = context_system::instance();
require_capability('moodle/site:config', $syscontext);
// URL params we want to maintain on redirects.
$pageparams = array('updatesonly' => $updatesonly, 'contribonly' => $contribonly);
+2 -2
View File
@@ -31,7 +31,7 @@ require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/tablelib.php');
// Check permissions.
require_login();
require_login(null, false);
$systemcontext = context_system::instance();
require_capability('moodle/question:config', $systemcontext);
@@ -170,7 +170,7 @@ foreach ($sortedbehaviours as $behaviour => $behaviourname) {
if ($version) {
$row[] = $version;
} else {
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'disabled'));
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'text-muted'));
}
// Other question types required by this one.
+3 -3
View File
@@ -30,12 +30,12 @@ require_once($CFG->libdir . '/questionlib.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/tablelib.php');
// Check permissions.
admin_externalpage_setup('manageqtypes');
$systemcontext = context_system::instance();
require_capability('moodle/question:config', $systemcontext);
$canviewreports = has_capability('report/questioninstances:view', $systemcontext);
admin_externalpage_setup('manageqtypes');
$thispageurl = new moodle_url('/admin/qtypes.php');
$qtypes = question_bank::get_all_qtypes();
@@ -172,7 +172,7 @@ foreach ($sortedqtypes as $qtypename => $localname) {
if ($version) {
$row[] = $version;
} else {
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'disabled'));
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'text-muted'));
}
// Other question types required by this one.
+2 -2
View File
@@ -45,8 +45,8 @@ $error = optional_param('error', '', PARAM_ALPHANUM);
admin_externalpage_setup('registrationmoodleorg');
if ($url !== HUB_MOODLEORGHUBURL) {
// Allow other plugins to confirm registration on hubs other than moodle.net . Plugins implementing this
if (parse_url($url, PHP_URL_HOST) !== parse_url(HUB_MOODLEORGHUBURL, PHP_URL_HOST)) {
// Allow other plugins to confirm registration on custom hubs. Plugins implementing this
// callback need to redirect or exit. See https://docs.moodle.org/en/Hub_registration .
$callbacks = get_plugins_with_function('hub_registration');
foreach ($callbacks as $plugintype => $plugins) {
+1 -2
View File
@@ -32,5 +32,4 @@
defined('MOODLE_INTERNAL') || die();
debugging('Support for alternative hubs has been removed from Moodle in 3.4. For communication with moodle.net ' .
'see lib/classes/hub/ .', DEBUG_DEVELOPER);
debugging('Support for alternative hubs has been removed from Moodle in 3.4.', DEBUG_DEVELOPER);
+18 -16
View File
@@ -22,7 +22,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL
* @copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com
*
* This page displays the site registration form for Moodle.net.
* This page displays the site registration form.
* It handles redirection to the hub to continue the registration workflow process.
* It also handles update operation by web service.
*/
@@ -32,24 +32,25 @@ require_once($CFG->libdir . '/adminlib.php');
admin_externalpage_setup('registrationmoodleorg');
$unregistration = optional_param('unregistration', 0, PARAM_INT);
$unregistration = optional_param('unregistration', false, PARAM_BOOL);
$confirm = optional_param('confirm', false, PARAM_BOOL);
if ($unregistration && \core\hub\registration::is_registered()) {
$siteunregistrationform = new \core\hub\site_unregistration_form();
if ($confirm) {
require_sesskey();
\core\hub\registration::unregister(false, false);
if ($siteunregistrationform->is_cancelled()) {
redirect(new moodle_url('/admin/registration/index.php'));
} else if ($data = $siteunregistrationform->get_data()) {
\core\hub\registration::unregister($data->unpublishalladvertisedcourses,
$data->unpublishalluploadedcourses);
if (!\core\hub\registration::is_registered()) {
redirect(new moodle_url('/admin/registration/index.php'));
}
}
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('unregisterfrom', 'hub', 'Moodle.net'), 3, 'main');
$siteunregistrationform->display();
echo $OUTPUT->confirm(
get_string('registerwithmoodleorgremove', 'core_hub'),
new moodle_url(new moodle_url('/admin/registration/index.php', ['unregistration' => 1, 'confirm' => 1])),
new moodle_url(new moodle_url('/admin/registration/index.php'))
);
echo $OUTPUT->footer();
exit;
}
@@ -82,7 +83,7 @@ if ($fromform = $siteregistrationform->get_data()) {
echo $OUTPUT->header();
// Current status of registration on Moodle.net.
// Current status of registration.
$notificationtype = \core\output\notification::NOTIFY_ERROR;
if (\core\hub\registration::is_registered()) {
@@ -104,11 +105,11 @@ if (\core\hub\registration::is_registered()) {
// Heading.
if (\core\hub\registration::is_registered()) {
echo $OUTPUT->heading(get_string('updatesite', 'hub', 'Moodle.net'));
echo $OUTPUT->heading(get_string('registerwithmoodleorgupdate', 'core_hub'));
} else if ($isinitialregistration) {
echo $OUTPUT->heading(get_string('completeregistration', 'hub'));
echo $OUTPUT->heading(get_string('registerwithmoodleorgcomplete', 'core_hub'));
} else {
echo $OUTPUT->heading(get_string('registerwithmoodleorg', 'admin'));
echo $OUTPUT->heading(get_string('registerwithmoodleorg', 'core_hub'));
}
$renderer = $PAGE->get_renderer('core', 'admin');
@@ -119,8 +120,9 @@ $siteregistrationform->display();
if (\core\hub\registration::is_registered()) {
// Unregister link.
$unregisterhuburl = new moodle_url("/admin/registration/index.php", ['unregistration' => 1]);
echo html_writer::div(html_writer::link($unregisterhuburl, get_string('unregister', 'hub')), 'unregister');
echo html_writer::div(html_writer::link($unregisterhuburl, get_string('unregister', 'hub')), 'unregister mt-2');
} else if ($isinitialregistration) {
echo html_writer::div(html_writer::link(new moodle_url($returnurl), get_string('skipregistration', 'hub')), 'skipregistration');
echo html_writer::div(html_writer::link(new moodle_url($returnurl), get_string('skipregistration', 'hub')),
'skipregistration mt-2');
}
echo $OUTPUT->footer();
+3 -3
View File
@@ -39,8 +39,8 @@ $token = optional_param('token', '', PARAM_TEXT);
admin_externalpage_setup('registrationmoodleorg');
if ($url !== HUB_MOODLEORGHUBURL) {
// Allow other plugins to renew registration on hubs other than moodle.net . Plugins implementing this
if (parse_url($url, PHP_URL_HOST) !== parse_url(HUB_MOODLEORGHUBURL, PHP_URL_HOST)) {
// Allow other plugins to renew registration on custom hubs. Plugins implementing this
// callback need to redirect or exit. See https://docs.moodle.org/en/Hub_registration .
$callbacks = get_plugins_with_function('hub_registration');
foreach ($callbacks as $plugintype => $plugins) {
@@ -56,7 +56,7 @@ if ($url !== HUB_MOODLEORGHUBURL) {
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('renewregistration', 'hub'), 3, 'main');
$hublink = html_writer::tag('a', 'Moodle.net', array('href' => HUB_MOODLEORGHUBURL));
$hublink = html_writer::tag('a', HUB_MOODLEORGHUBURL, array('href' => HUB_MOODLEORGHUBURL));
$deletedregmsg = get_string('previousregistrationdeleted', 'hub', $hublink);
+166 -81
View File
@@ -253,7 +253,7 @@ class core_admin_renderer extends plugin_renderer_base {
$out .= $this->output->container(get_string('cancelinstallinfodir', 'core_plugin', $pluginfo->rootdir));
if ($repotype = $pluginman->plugin_external_source($pluginfo->component)) {
$out .= $this->output->container(get_string('uninstalldeleteconfirmexternal', 'core_plugin', $repotype),
'uninstalldeleteconfirmexternal');
'alert alert-warning mt-2');
}
}
@@ -282,6 +282,8 @@ class core_admin_renderer extends plugin_renderer_base {
* @param bool $overridetossl Whether or not ssl is being forced.
* @param bool $invalidforgottenpasswordurl Whether the forgotten password URL does not link to a valid URL.
* @param bool $croninfrequent If true, warn that cron hasn't run in the past few minutes
* @param bool $showcampaigncontent Whether the campaign content should be visible or not.
* @param bool $showfeedbackencouragement Whether the feedback encouragement content should be displayed or not.
*
* @return string HTML to output.
*/
@@ -289,7 +291,9 @@ class core_admin_renderer extends plugin_renderer_base {
$cronoverdue, $dbproblems, $maintenancemode, $availableupdates, $availableupdatesfetch,
$buggyiconvnomb, $registered, array $cachewarnings = array(), $eventshandlers = 0,
$themedesignermode = false, $devlibdir = false, $mobileconfigured = false,
$overridetossl = false, $invalidforgottenpasswordurl = false, $croninfrequent = false) {
$overridetossl = false, $invalidforgottenpasswordurl = false, $croninfrequent = false,
$showcampaigncontent = false, bool $showfeedbackencouragement = false) {
global $CFG;
$output = '';
@@ -312,6 +316,8 @@ class core_admin_renderer extends plugin_renderer_base {
$output .= $this->registration_warning($registered);
$output .= $this->mobile_configuration_warning($mobileconfigured);
$output .= $this->forgotten_password_url_warning($invalidforgottenpasswordurl);
$output .= $this->userfeedback_encouragement($showfeedbackencouragement);
$output .= $this->campaign_content($showcampaigncontent);
//////////////////////////////////////////////////////////////////////////////////////////////////
//// IT IS ILLEGAL AND A VIOLATION OF THE GPL TO HIDE, REMOVE OR MODIFY THIS COPYRIGHT NOTICE ///
@@ -361,14 +367,15 @@ class core_admin_renderer extends plugin_renderer_base {
$output = '';
if ($checker->enabled()) {
$output .= $this->container_start('checkforupdates');
$output .= $this->container_start('checkforupdates mb-4');
$output .= $this->single_button(
new moodle_url($reloadurl, array('fetchupdates' => 1)),
get_string('checkforupdates', 'core_plugin')
);
if ($timefetched = $checker->get_last_timefetched()) {
$timefetched = userdate($timefetched, get_string('strftimedatetime', 'core_langconfig'));
$output .= $this->container(get_string('checkforupdateslast', 'core_plugin', $timefetched), 'lasttimefetched');
$output .= $this->container(get_string('checkforupdateslast', 'core_plugin', $timefetched),
'lasttimefetched small text-muted mt-1');
}
$output .= $this->container_end();
}
@@ -432,7 +439,7 @@ class core_admin_renderer extends plugin_renderer_base {
if ($repotype = $pluginman->plugin_external_source($pluginfo->component)) {
$confirm .= $this->output->container(get_string('uninstalldeleteconfirmexternal', 'core_plugin', $repotype),
'uninstalldeleteconfirmexternal');
'alert alert-warning mt-2');
}
// After any uninstall we must execute full upgrade to finish the cleanup!
@@ -511,7 +518,7 @@ class core_admin_renderer extends plugin_renderer_base {
* @return string HTML to output.
*/
protected function warning($message, $type = 'warning') {
return $this->box($message, 'generalbox admin' . $type);
return $this->box($message, 'generalbox alert alert-' . $type);
}
/**
@@ -526,7 +533,7 @@ class core_admin_renderer extends plugin_renderer_base {
return $this->warning(get_string('datarootsecuritywarning', 'admin', $CFG->dataroot));
} else if ($insecuredataroot == INSECURE_DATAROOT_ERROR) {
return $this->warning(get_string('datarootsecurityerror', 'admin', $CFG->dataroot), 'error');
return $this->warning(get_string('datarootsecurityerror', 'admin', $CFG->dataroot), 'danger');
} else {
return '';
@@ -544,7 +551,7 @@ class core_admin_renderer extends plugin_renderer_base {
if ($devlibdir) {
$moreinfo = new moodle_url('/report/security/index.php');
$warning = get_string('devlibdirpresent', 'core_admin', ['moreinfourl' => $moreinfo->out()]);
return $this->warning($warning, 'error');
return $this->warning($warning, 'danger');
} else {
return '';
@@ -601,19 +608,9 @@ class core_admin_renderer extends plugin_renderer_base {
return '';
}
if (empty($CFG->cronclionly)) {
$url = new moodle_url('/admin/cron.php');
if (!empty($CFG->cronremotepassword)) {
$url = new moodle_url('/admin/cron.php', array('password' => $CFG->cronremotepassword));
}
return $this->warning(get_string('cronwarning', 'admin', $url->out()) . '&nbsp;' .
$this->help_icon('cron', 'admin'));
}
// $CFG->cronclionly is not empty: cron can run only from CLI.
return $this->warning(get_string('cronwarningcli', 'admin') . '&nbsp;' .
$this->help_icon('cron', 'admin'));
$check = new \tool_task\check\cronrunning();
$result = $check->get_result();
return $this->warning($result->get_summary() . '&nbsp;' . $this->help_icon('cron', 'admin'));
}
/**
@@ -629,9 +626,9 @@ class core_admin_renderer extends plugin_renderer_base {
return '';
}
$expectedfrequency = $CFG->expectedcronfrequency ?? 200;
return $this->warning(get_string('croninfrequent', 'admin', $expectedfrequency) . '&nbsp;' .
$this->help_icon('cron', 'admin'));
$check = new \tool_task\check\cronrunning();
$result = $check->get_result();
return $this->warning($result->get_summary() . '&nbsp;' . $this->help_icon('cron', 'admin'));
}
/**
@@ -721,7 +718,7 @@ class core_admin_renderer extends plugin_renderer_base {
return $this->warning(
$this->container(get_string('maturitycorewarning', 'admin', $maturitylevel)) .
$this->container($this->doc_link('admin/versions', get_string('morehelp'))),
'error');
'danger');
}
/*
@@ -737,7 +734,7 @@ class core_admin_renderer extends plugin_renderer_base {
}
$warning = (get_string('testsiteupgradewarning', 'admin', $testsite));
return $this->warning($warning, 'error');
return $this->warning($warning, 'danger');
}
/**
@@ -772,7 +769,7 @@ class core_admin_renderer extends plugin_renderer_base {
$level = 'warning';
if ($maturity == MATURITY_ALPHA) {
$level = 'error';
$level = 'danger';
}
$maturitylevel = get_string('maturity' . $maturity, 'admin');
@@ -823,7 +820,7 @@ class core_admin_renderer extends plugin_renderer_base {
}
}
$updateinfo .= $this->container_start('checkforupdates');
$updateinfo .= $this->container_start('checkforupdates mt-1');
$fetchurl = new moodle_url('/admin/index.php', array('fetchupdates' => 1, 'sesskey' => sesskey(), 'cache' => 0));
$updateinfo .= $this->single_button($fetchurl, get_string('checkforupdates', 'core_plugin'));
if ($fetch) {
@@ -887,6 +884,20 @@ class core_admin_renderer extends plugin_renderer_base {
return $output;
}
/**
* Display campaign content.
*
* @param bool $showcampaigncontent Whether the campaign content should be visible or not.
* @return string the campaign content raw html.
*/
protected function campaign_content(bool $showcampaigncontent): string {
if (!$showcampaigncontent) {
return '';
}
return $this->render_from_template('core/campaign_content', ['lang' => current_language()]);
}
/**
* Display a warning about the forgotten password URL not linking to a valid URL.
*
@@ -912,7 +923,7 @@ class core_admin_renderer extends plugin_renderer_base {
*/
protected function moodle_available_update_info(\core\update\info $updateinfo) {
$boxclasses = 'moodleupdateinfo';
$boxclasses = 'moodleupdateinfo mb-2';
$info = array();
if (isset($updateinfo->release)) {
@@ -932,7 +943,8 @@ class core_admin_renderer extends plugin_renderer_base {
}
if (isset($updateinfo->download)) {
$info[] = html_writer::link($updateinfo->download, get_string('download'), array('class' => 'info download'));
$info[] = html_writer::link($updateinfo->download, get_string('download'),
array('class' => 'info download btn btn-secondary'));
}
if (isset($updateinfo->url)) {
@@ -940,9 +952,9 @@ class core_admin_renderer extends plugin_renderer_base {
array('class' => 'info more'));
}
$box = $this->output->box_start($boxclasses);
$box .= $this->output->box(implode(html_writer::tag('span', ' ', array('class' => 'separator')), $info), '');
$box .= $this->output->box_end();
$box = $this->output->container_start($boxclasses);
$box .= $this->output->container(implode(html_writer::tag('span', ' | ', array('class' => 'separator')), $info), '');
$box .= $this->output->container_end();
return $box;
}
@@ -954,7 +966,7 @@ class core_admin_renderer extends plugin_renderer_base {
protected function release_notes_link() {
$releasenoteslink = get_string('releasenoteslink', 'admin', 'http://docs.moodle.org/dev/Releases');
$releasenoteslink = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $releasenoteslink); // extremely ugly validation hack
return $this->box($releasenoteslink, 'generalbox releasenoteslink');
return $this->box($releasenoteslink, 'generalbox alert alert-info');
}
/**
@@ -983,7 +995,7 @@ class core_admin_renderer extends plugin_renderer_base {
* @return string HTML code
*/
public function plugins_check_table(core_plugin_manager $pluginman, $version, array $options = array()) {
global $CFG;
$plugininfo = $pluginman->get_plugins();
if (empty($plugininfo)) {
@@ -1054,7 +1066,7 @@ class core_admin_renderer extends plugin_renderer_base {
$displayname = new html_table_cell(
$icon.
html_writer::span($plugin->displayname, 'pluginname').
html_writer::div($plugin->get_dir(), 'plugindir')
html_writer::div($plugin->get_dir(), 'plugindir text-muted small')
);
$versiondb = new html_table_cell($plugin->versiondb);
@@ -1069,8 +1081,10 @@ class core_admin_renderer extends plugin_renderer_base {
}
$coredependency = $plugin->is_core_dependency_satisfied($version);
$incompatibledependency = $plugin->is_core_compatible_satisfied($CFG->branch);
$otherpluginsdependencies = $pluginman->are_dependencies_satisfied($plugin->get_other_required_plugins());
$dependenciesok = $coredependency && $otherpluginsdependencies;
$dependenciesok = $coredependency && $otherpluginsdependencies && $incompatibledependency;
$statuscode = $plugin->get_status();
$row->attributes['class'] .= ' status-' . $statuscode;
@@ -1089,17 +1103,17 @@ class core_admin_renderer extends plugin_renderer_base {
break;
case core_plugin_manager::PLUGIN_STATUS_NODB:
case core_plugin_manager::PLUGIN_STATUS_UPTODATE:
$statusclass .= $dependenciesok ? '' : 'badge-warning';
$statusclass .= $dependenciesok ? 'badge-light' : 'badge-warning';
break;
}
$status = html_writer::span(get_string('status_' . $statuscode, 'core_plugin'), $statusclass);
if (!empty($installabortable[$plugin->component])) {
$status .= $this->output->single_button(
new moodle_url($this->page->url, array('abortinstall' => $plugin->component)),
new moodle_url($this->page->url, array('abortinstall' => $plugin->component, 'confirmplugincheck' => 0)),
get_string('cancelinstallone', 'core_plugin'),
'post',
array('class' => 'actionbutton cancelinstallone')
array('class' => 'actionbutton cancelinstallone d-block mt-1')
);
}
@@ -1108,7 +1122,7 @@ class core_admin_renderer extends plugin_renderer_base {
new moodle_url($this->page->url, array('abortupgrade' => $plugin->component)),
get_string('cancelupgradeone', 'core_plugin'),
'post',
array('class' => 'actionbutton cancelupgradeone')
array('class' => 'actionbutton cancelupgradeone d-block mt-1')
);
}
@@ -1120,8 +1134,11 @@ class core_admin_renderer extends plugin_renderer_base {
}
$status = new html_table_cell($sourcelabel.' '.$status);
$requires = new html_table_cell($this->required_column($plugin, $pluginman, $version));
if ($plugin->pluginsupported != null) {
$requires = new html_table_cell($this->required_column($plugin, $pluginman, $version, $CFG->branch));
} else {
$requires = new html_table_cell($this->required_column($plugin, $pluginman, $version));
}
$statusisboring = in_array($statuscode, array(
core_plugin_manager::PLUGIN_STATUS_NODB, core_plugin_manager::PLUGIN_STATUS_UPTODATE));
@@ -1178,7 +1195,7 @@ class core_admin_renderer extends plugin_renderer_base {
}
}
$out .= $this->output->container_start('actions');
$out .= $this->output->container_start('actions mb-2');
$installableupdates = $pluginman->filter_installable($pluginman->available_updates());
if ($installableupdates) {
@@ -1186,16 +1203,16 @@ class core_admin_renderer extends plugin_renderer_base {
new moodle_url($this->page->url, array('installupdatex' => 1)),
get_string('updateavailableinstallall', 'core_admin', count($installableupdates)),
'post',
array('class' => 'singlebutton updateavailableinstallall')
array('class' => 'singlebutton updateavailableinstallall mr-1')
);
}
if ($installabortable) {
$out .= $this->output->single_button(
new moodle_url($this->page->url, array('abortinstallx' => 1)),
new moodle_url($this->page->url, array('abortinstallx' => 1, 'confirmplugincheck' => 0)),
get_string('cancelinstallall', 'core_plugin', count($installabortable)),
'post',
array('class' => 'singlebutton cancelinstallall')
array('class' => 'singlebutton cancelinstallall mr-1')
);
}
@@ -1204,15 +1221,17 @@ class core_admin_renderer extends plugin_renderer_base {
new moodle_url($this->page->url, array('abortupgradex' => 1)),
get_string('cancelupgradeall', 'core_plugin', count($upgradeabortable)),
'post',
array('class' => 'singlebutton cancelupgradeall')
array('class' => 'singlebutton cancelupgradeall mr-1')
);
}
$out .= html_writer::div(html_writer::link(new moodle_url($this->page->url, array('showallplugins' => 0)),
get_string('plugincheckattention', 'core_plugin')).' '.html_writer::span($sumattention, 'badge'));
get_string('plugincheckattention', 'core_plugin')).' '.html_writer::span($sumattention, 'badge badge-light'),
'btn btn-link mr-1');
$out .= html_writer::div(html_writer::link(new moodle_url($this->page->url, array('showallplugins' => 1)),
get_string('plugincheckall', 'core_plugin')).' '.html_writer::span($sumtotal, 'badge'));
get_string('plugincheckall', 'core_plugin')).' '.html_writer::span($sumtotal, 'badge badge-light'),
'btn btn-link mr-1');
$out .= $this->output->container_end(); // End of .actions container.
$out .= $this->output->container_end(); // End of #plugins-check-info container.
@@ -1280,12 +1299,13 @@ class core_admin_renderer extends plugin_renderer_base {
}
}
$out = $this->output->container_start('plugins-check-dependencies');
$out = $this->output->container_start('plugins-check-dependencies mb-4');
if ($unavailable or $unknown) {
$out .= $this->output->heading(get_string('misdepsunavail', 'core_plugin'));
if ($unknown) {
$out .= $this->output->notification(get_string('misdepsunknownlist', 'core_plugin', implode($unknown, ', ')));
$out .= $this->output->render((new \core\output\notification(get_string('misdepsunknownlist', 'core_plugin',
implode(', ', $unknown))))->set_show_closebutton(false));
}
if ($unavailable) {
$unavailablelist = array();
@@ -1299,18 +1319,18 @@ class core_admin_renderer extends plugin_renderer_base {
}
$unavailablelist[] = $unavailablelistitem;
}
$out .= $this->output->notification(get_string('misdepsunavaillist', 'core_plugin',
implode($unavailablelist, ', ')));
$out .= $this->output->render((new \core\output\notification(get_string('misdepsunavaillist', 'core_plugin',
implode(', ', $unavailablelist))))->set_show_closebutton(false));
}
$out .= $this->output->container_start('plugins-check-dependencies-actions');
$out .= $this->output->container_start('plugins-check-dependencies-actions mb-4');
$out .= ' '.html_writer::link(new moodle_url('/admin/tool/installaddon/'),
get_string('dependencyuploadmissing', 'core_plugin'));
get_string('dependencyuploadmissing', 'core_plugin'), array('class' => 'btn btn-secondary'));
$out .= $this->output->container_end(); // End of .plugins-check-dependencies-actions container.
}
if ($available) {
$out .= $this->output->heading(get_string('misdepsavail', 'core_plugin'));
$out .= $this->output->container_start('plugins-check-dependencies-actions');
$out .= $this->output->container_start('plugins-check-dependencies-actions mb-2');
$installable = $pluginman->filter_installable($available);
if ($installable) {
@@ -1318,12 +1338,13 @@ class core_admin_renderer extends plugin_renderer_base {
new moodle_url($this->page->url, array('installdepx' => 1)),
get_string('dependencyinstallmissing', 'core_plugin', count($installable)),
'post',
array('class' => 'singlebutton dependencyinstallmissing')
array('class' => 'singlebutton dependencyinstallmissing d-inline-block mr-1')
);
}
$out .= html_writer::div(html_writer::link(new moodle_url('/admin/tool/installaddon/'),
get_string('dependencyuploadmissing', 'core_plugin')), 'dependencyuploadmissing');
get_string('dependencyuploadmissing', 'core_plugin'), array('class' => 'btn btn-link')),
'dependencyuploadmissing d-inline-block mr-1');
$out .= $this->output->container_end(); // End of .plugins-check-dependencies-actions container.
@@ -1364,7 +1385,7 @@ class core_admin_renderer extends plugin_renderer_base {
if ($CFG->branch == str_replace('.', '', $moodle->release)) {
$supportedmoodles[] = html_writer::span($moodle->release, 'badge badge-success');
} else {
$supportedmoodles[] = html_writer::span($moodle->release, 'label');
$supportedmoodles[] = html_writer::span($moodle->release, 'badge badge-light');
}
}
@@ -1378,7 +1399,7 @@ class core_admin_renderer extends plugin_renderer_base {
}
$info = html_writer::div(
get_string('requiredby', 'core_plugin', implode(', ', $requriedby)),
'requiredby'
'requiredby mb-1'
);
} else {
$info = '';
@@ -1389,38 +1410,39 @@ class core_admin_renderer extends plugin_renderer_base {
$info .= html_writer::div(
html_writer::link('https://moodle.org/plugins/view.php?plugin='.$plugin->component,
get_string('misdepinfoplugin', 'core_plugin')),
'misdepinfoplugin'
'misdepinfoplugin d-inline-block mr-3 mb-1'
);
$info .= html_writer::div(
html_writer::link('https://moodle.org/plugins/pluginversion.php?id='.$plugin->version->id,
get_string('misdepinfoversion', 'core_plugin')),
'misdepinfoversion'
'misdepinfoversion d-inline-block mr-3 mb-1'
);
$info .= html_writer::div(html_writer::link($plugin->version->downloadurl, get_string('download')), 'misdepdownload');
$info .= html_writer::div(html_writer::link($plugin->version->downloadurl, get_string('download')),
'misdepdownload d-inline-block mr-3 mb-1');
if ($pluginman->is_remote_plugin_installable($plugin->component, $plugin->version->version, $reason)) {
$info .= $this->output->single_button(
new moodle_url($this->page->url, array('installdep' => $plugin->component)),
get_string('dependencyinstall', 'core_plugin'),
'post',
array('class' => 'singlebutton dependencyinstall')
array('class' => 'singlebutton dependencyinstall mr-3 mb-1')
);
} else {
$reasonhelp = $this->info_remote_plugin_not_installable($reason);
if ($reasonhelp) {
$info .= html_writer::div($reasonhelp, 'reasonhelp dependencyinstall');
$info .= html_writer::div($reasonhelp, 'reasonhelp dependencyinstall d-inline-block mr-3 mb-1');
}
}
$info .= $this->output->container_end(); // End of .actions container.
$table->data[] = array(
html_writer::div($plugin->name, 'name').' '.html_writer::div($plugin->component, 'component'),
html_writer::div($plugin->name, 'name').' '.html_writer::div($plugin->component, 'component text-muted small'),
$plugin->version->release,
$plugin->version->version,
implode($supportedmoodles, ' '),
implode(' ', $supportedmoodles),
$info
);
}
@@ -1452,33 +1474,49 @@ class core_admin_renderer extends plugin_renderer_base {
* @param \core\plugininfo\base $plugin the plugin we are rendering the row for.
* @param core_plugin_manager $pluginman provides data on all the plugins.
* @param string $version
* @param int $branch the current Moodle branch
* @return string HTML code
*/
protected function required_column(\core\plugininfo\base $plugin, core_plugin_manager $pluginman, $version) {
protected function required_column(\core\plugininfo\base $plugin, core_plugin_manager $pluginman, $version, $branch = null) {
$requires = array();
$displayuploadlink = false;
$displayupdateslink = false;
foreach ($pluginman->resolve_requirements($plugin, $version) as $reqname => $reqinfo) {
$requirements = $pluginman->resolve_requirements($plugin, $version, $branch);
foreach ($requirements as $reqname => $reqinfo) {
if ($reqname === 'core') {
if ($reqinfo->status == $pluginman::REQUIREMENT_STATUS_OK) {
$class = 'requires-ok';
$class = 'requires-ok text-muted';
$label = '';
} else {
$class = 'requires-failed';
$label = html_writer::span(get_string('dependencyfails', 'core_plugin'), 'badge badge-danger');
}
$requires[] = html_writer::tag('li',
html_writer::span(get_string('moodleversion', 'core_plugin', $plugin->versionrequires), 'dep dep-core').
if ($branch != null && !$plugin->is_core_compatible_satisfied($branch)) {
$requires[] = html_writer::tag('li',
html_writer::span(get_string('incompatibleversion', 'core_plugin', $branch), 'dep dep-core').
' '.$label, array('class' => $class));
} else if ($branch != null && $plugin->pluginsupported != null) {
$requires[] = html_writer::tag('li',
html_writer::span(get_string('moodlebranch', 'core_plugin',
array('min' => $plugin->pluginsupported[0], 'max' => $plugin->pluginsupported[1])), 'dep dep-core').
' '.$label, array('class' => $class));
} else if ($reqinfo->reqver != ANY_VERSION) {
$requires[] = html_writer::tag('li',
html_writer::span(get_string('moodleversion', 'core_plugin', $plugin->versionrequires), 'dep dep-core').
' '.$label, array('class' => $class));
}
} else {
$actions = array();
if ($reqinfo->status == $pluginman::REQUIREMENT_STATUS_OK) {
$label = '';
$class = 'requires-ok';
$class = 'requires-ok text-muted';
} else if ($reqinfo->status == $pluginman::REQUIREMENT_STATUS_MISSING) {
if ($reqinfo->availability == $pluginman::REQUIREMENT_AVAILABLE) {
@@ -1532,13 +1570,14 @@ class core_admin_renderer extends plugin_renderer_base {
return '';
}
$out = html_writer::tag('ul', implode("\n", $requires));
$out = html_writer::tag('ul', implode("\n", $requires), array('class' => 'm-0'));
if ($displayuploadlink) {
$out .= html_writer::div(
html_writer::link(
new moodle_url('/admin/tool/installaddon/'),
get_string('dependencyuploadmissing', 'core_plugin')
get_string('dependencyuploadmissing', 'core_plugin'),
array('class' => 'btn btn-secondary btn-sm m-1')
),
'dependencyuploadmissing'
);
@@ -1548,12 +1587,20 @@ class core_admin_renderer extends plugin_renderer_base {
$out .= html_writer::div(
html_writer::link(
new moodle_url($this->page->url, array('sesskey' => sesskey(), 'fetchupdates' => 1)),
get_string('checkforupdates', 'core_plugin')
get_string('checkforupdates', 'core_plugin'),
array('class' => 'btn btn-secondary btn-sm m-1')
),
'checkforupdates'
);
}
// Check if supports is present, and $branch is not in, only if $incompatible check was ok.
if ($plugin->pluginsupported != null && $class == 'requires-ok' && $branch != null) {
if ($pluginman->check_explicitly_supported($plugin, $branch) == $pluginman::VERSION_NOT_SUPPORTED) {
$out .= html_writer::div(get_string('notsupported', 'core_plugin', $branch));
}
}
return $out;
}
@@ -1900,7 +1947,7 @@ class core_admin_renderer extends plugin_renderer_base {
get_string('status'),
);
$servertable->colclasses = array('centeralign name', 'centeralign info', 'leftalign report', 'leftalign plugin', 'centeralign status');
$servertable->attributes['class'] = 'admintable environmenttable generaltable';
$servertable->attributes['class'] = 'admintable environmenttable generaltable table-sm';
$servertable->id = 'serverstatus';
$serverdata = array('ok'=>array(), 'warn'=>array(), 'error'=>array());
@@ -1913,7 +1960,7 @@ class core_admin_renderer extends plugin_renderer_base {
get_string('status'),
);
$othertable->colclasses = array('aligncenter info', 'alignleft report', 'alignleft plugin', 'aligncenter status');
$othertable->attributes['class'] = 'admintable environmenttable generaltable';
$othertable->attributes['class'] = 'admintable environmenttable generaltable table-sm';
$othertable->id = 'otherserverstatus';
$otherdata = array('ok'=>array(), 'warn'=>array(), 'error'=>array());
@@ -2009,7 +2056,7 @@ class core_admin_renderer extends plugin_renderer_base {
if (empty($CFG->docroot) or $environment_result->plugin) {
$report = get_string($stringtouse, 'admin', $rec);
} else {
$report = $this->doc_link(join($linkparts, '/'), get_string($stringtouse, 'admin', $rec), true);
$report = $this->doc_link(join('/', $linkparts), get_string($stringtouse, 'admin', $rec), true);
}
// Enclose report text in div so feedback text will be displayed underneath it.
$report = html_writer::div($report);
@@ -2110,6 +2157,44 @@ class core_admin_renderer extends plugin_renderer_base {
* @return string
*/
public function moodleorg_registration_message() {
return format_text(get_string('registermoodlenet', 'admin'), FORMAT_HTML, ['noclean' => true]);
$out = format_text(get_string('registerwithmoodleorginfo', 'core_hub'), FORMAT_MARKDOWN);
$out .= html_writer::link(
new moodle_url('/admin/settings.php', ['section' => 'moodleservices']),
$this->output->pix_icon('i/info', '').' '.get_string('registerwithmoodleorginfoapp', 'core_hub'),
['class' => 'btn btn-link', 'role' => 'opener', 'target' => '_href']
);
$out .= html_writer::link(
HUB_MOODLEORGHUBURL,
$this->output->pix_icon('i/stats', '').' '.get_string('registerwithmoodleorginfostats', 'core_hub'),
['class' => 'btn btn-link', 'role' => 'opener', 'target' => '_href']
);
$out .= html_writer::link(
HUB_MOODLEORGHUBURL.'/sites',
$this->output->pix_icon('i/location', '').' '.get_string('registerwithmoodleorginfosites', 'core_hub'),
['class' => 'btn btn-link', 'role' => 'opener', 'target' => '_href']
);
return $this->output->box($out);
}
/**
* Display message about benefits of enabling the user feedback feature.
*
* @param bool $showfeedbackencouragement Whether the encouragement content should be displayed or not
* @return string
*/
protected function userfeedback_encouragement(bool $showfeedbackencouragement): string {
$output = '';
if ($showfeedbackencouragement) {
$settingslink = new moodle_url('/admin/settings.php', ['section' => 'userfeedback']);
$output .= $this->warning(get_string('userfeedbackencouragement', 'admin', $settingslink->out()), 'info');
}
return $output;
}
}
+2 -2
View File
@@ -123,13 +123,13 @@ if (($action == 'edit') || ($action == 'new')) {
}
$instanceoptionnames = repository::static_function($repository, 'get_instance_option_names');
if (!empty($instanceoptionnames)) {
if (array_key_exists('enablecourseinstances', $fromform)) {
if (property_exists($fromform, 'enablecourseinstances')) {
$settings['enablecourseinstances'] = $fromform->enablecourseinstances;
}
else {
$settings['enablecourseinstances'] = 0;
}
if (array_key_exists('enableuserinstances', $fromform)) {
if (property_exists($fromform, 'enableuserinstances')) {
$settings['enableuserinstances'] = $fromform->enableuserinstances;
}
else {
+2 -5
View File
@@ -36,15 +36,12 @@ if (!is_siteadmin()) {
}
$admisselector = new core_role_admins_existing_selector();
$admisselector->set_extra_fields(array('username', 'email'));
$potentialadmisselector = new core_role_admins_potential_selector();
$potentialadmisselector->set_extra_fields(array('username', 'email'));
if (optional_param('add', false, PARAM_BOOL) and confirm_sesskey()) {
if ($userstoadd = $potentialadmisselector->get_selected_users()) {
$user = reset($userstoadd);
$username = fullname($user) . " ($user->username, $user->email)";
$username = $potentialadmisselector->output_user($user);
echo $OUTPUT->header();
$yesurl = new moodle_url('/admin/roles/admins.php', array('confirmadd'=>$user->id, 'sesskey'=>sesskey()));
echo $OUTPUT->confirm(get_string('confirmaddadmin', 'core_role', $username), $yesurl, $PAGE->url);
@@ -58,7 +55,7 @@ if (optional_param('add', false, PARAM_BOOL) and confirm_sesskey()) {
if ($USER->id == $user->id) {
// Can not remove self.
} else {
$username = fullname($user) . " ($user->username, $user->email)";
$username = $admisselector->output_user($user);
echo $OUTPUT->header();
$yesurl = new moodle_url('/admin/roles/admins.php', array('confirmdel'=>$user->id, 'sesskey'=>sesskey()));
echo $OUTPUT->confirm(get_string('confirmdeladmin', 'core_role', $username), $yesurl, $PAGE->url);
-19
View File
@@ -46,25 +46,6 @@ $controller = new $classformode[$mode]();
if (optional_param('submit', false, PARAM_BOOL) && data_submitted() && confirm_sesskey()) {
$controller->process_submission();
$event = null;
// Create event depending on mode.
switch ($mode) {
case 'assign':
$event = \core\event\role_allow_assign_updated::create(array('context' => $syscontext));
break;
case 'override':
$event = \core\event\role_allow_override_updated::create(array('context' => $syscontext));
break;
case 'switch':
$event = \core\event\role_allow_switch_updated::create(array('context' => $syscontext));
break;
case 'view':
$event = \core\event\role_allow_view_updated::create(array('context' => $syscontext));
break;
}
if ($event) {
$event->trigger();
}
redirect($baseurl);
}
@@ -46,4 +46,8 @@ class core_role_allow_assign_page extends core_role_allow_role_page {
public function get_intro_text() {
return get_string('configallowassign', 'core_admin');
}
protected function get_eventclass() {
return \core\event\role_allow_assign_updated::class;
}
}
@@ -46,4 +46,8 @@ class core_role_allow_override_page extends core_role_allow_role_page {
public function get_intro_text() {
return get_string('configallowoverride2', 'core_admin');
}
protected function get_eventclass() {
return \core\event\role_allow_override_updated::class;
}
}
+30
View File
@@ -59,12 +59,36 @@ abstract class core_role_allow_role_page {
*/
public function process_submission() {
global $DB;
$context = context_system::instance();
$this->load_current_settings();
// Delete all records, then add back the ones that should be allowed.
$DB->delete_records($this->tablename);
foreach ($this->roles as $fromroleid => $notused) {
foreach ($this->roles as $targetroleid => $alsonotused) {
$isallowed = $this->allowed[$fromroleid][$targetroleid];
if (optional_param('s_' . $fromroleid . '_' . $targetroleid, false, PARAM_BOOL)) {
$this->set_allow($fromroleid, $targetroleid);
// Only trigger events if this role allow relationship did not exist and the checkbox element
// has been submitted.
if (!$isallowed) {
$eventclass = $this->get_eventclass();
$eventclass::create([
'context' => $context,
'objectid' => $fromroleid,
'other' => ['targetroleid' => $targetroleid, 'allow' => true]
])->trigger();
}
} else if ($isallowed) {
// When the user has deselect an existing role allow checkbox but it is in the list of roles
// allowances.
$eventclass = $this->get_eventclass();
$eventclass::create([
'context' => $context,
'objectid' => $fromroleid,
'other' => ['targetroleid' => $targetroleid, 'allow' => false]
])->trigger();
}
}
}
@@ -161,4 +185,10 @@ abstract class core_role_allow_role_page {
* @return string
*/
public abstract function get_intro_text();
/**
* Returns the allow class respective event class name.
* @return string
*/
protected abstract function get_eventclass();
}
@@ -58,4 +58,8 @@ class core_role_allow_switch_page extends core_role_allow_role_page {
public function get_intro_text() {
return get_string('configallowswitch', 'core_admin');
}
protected function get_eventclass() {
return \core\event\role_allow_switch_updated::class;
}
}
+4
View File
@@ -74,4 +74,8 @@ class core_role_allow_view_page extends core_role_allow_role_page {
public function get_intro_text() {
return get_string('configallowview', 'core_admin');
}
protected function get_eventclass() {
return \core\event\role_allow_view_updated::class;
}
}
@@ -43,7 +43,7 @@ abstract class core_role_capability_table_base {
protected $id;
/** Added to the class="" attribute on output. */
protected $classes = array('rolecap');
protected $classes = array('rolecap table-hover');
/** Default number of capabilities in the table for the search UI to be shown. */
const NUM_CAPS_FOR_SEARCH = 12;
@@ -50,6 +50,7 @@ class core_role_check_capability_table extends core_role_capability_table_base {
$this->contextname = $contextname;
$this->stryes = get_string('yes');
$this->strno = get_string('no');
$this->add_classes(['table-striped']);
}
protected function add_header_cells() {
@@ -55,6 +55,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
foreach ($levels as $level => $classname) {
$this->allcontextlevels[$level] = context_helper::get_level_name($level);
}
$this->add_classes(['table-striped']);
}
protected function load_current_permissions() {
@@ -157,19 +158,19 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
// Allowed roles.
$allow = optional_param_array('allowassign', null, PARAM_INT);
if (!is_null($allow)) {
$this->allowassign = $allow;
$this->allowassign = array_filter($allow);
}
$allow = optional_param_array('allowoverride', null, PARAM_INT);
if (!is_null($allow)) {
$this->allowoverride = $allow;
$this->allowoverride = array_filter($allow);
}
$allow = optional_param_array('allowswitch', null, PARAM_INT);
if (!is_null($allow)) {
$this->allowswitch = $allow;
$this->allowswitch = array_filter($allow);
}
$allow = optional_param_array('allowview', null, PARAM_INT);
if (!is_null($allow)) {
$this->allowview = $allow;
$this->allowview = array_filter($allow);
}
// Now read the permissions for each capability.
@@ -434,7 +435,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
}
public function save_changes() {
global $DB;
global $DB, $USER;
if (!$this->roleid) {
// Creating role.
@@ -444,6 +445,20 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
// Updating role.
$DB->update_record('role', $this->role);
// Trigger role updated event.
\core\event\role_updated::create([
'userid' => $USER->id,
'objectid' => $this->role->id,
'context' => $this->context,
'other' => [
'name' => $this->role->name,
'shortname' => $this->role->shortname,
'description' => $this->role->description,
'archetype' => $this->role->archetype,
'contextlevels' => $this->contextlevels
]
])->trigger();
// This will ensure the course contacts cache is purged so name changes get updated in
// the UI. It would be better to do this only when we know that fields affected are
// updated. But thats getting into the weeds of the coursecat cache and role edits
@@ -473,10 +488,17 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$addfunction = "core_role_set_{$type}_allowed";
$deltable = 'role_allow_'.$type;
$field = 'allow'.$type;
$eventclass = "\\core\\event\\role_allow_" . $type . "_updated";
$context = context_system::instance();
foreach ($current as $roleid) {
if (!in_array($roleid, $wanted)) {
$DB->delete_records($deltable, array('roleid'=>$this->roleid, $field=>$roleid));
$eventclass::create([
'context' => $context,
'objectid' => $this->roleid,
'other' => ['targetroleid' => $roleid, 'allow' => false]
])->trigger();
continue;
}
$key = array_search($roleid, $wanted);
@@ -488,6 +510,14 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
$roleid = $this->roleid;
}
$addfunction($this->roleid, $roleid);
if (in_array($roleid, $wanted)) {
$eventclass::create([
'context' => $context,
'objectid' => $this->roleid,
'other' => ['targetroleid' => $roleid, 'allow' => true]
])->trigger();
}
}
}
@@ -589,7 +619,9 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
if ($this->roleid == 0) {
$options[-1] = get_string('thisnewrole', 'core_role');
}
return html_writer::select($options, 'allow'.$type.'[]', $selected, false, array('multiple' => 'multiple',
return
html_writer::empty_tag('input', array('type' => 'hidden', 'name' => 'allow'.$type.'[]', 'value' => "")) .
html_writer::select($options, 'allow'.$type.'[]', $selected, false, array('multiple' => 'multiple',
'size' => 10, 'class' => 'form-control'));
}
@@ -623,7 +655,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
echo "</label>\n";
}
if ($helpicon) {
echo '<span class="pull-xs-right text-nowrap">'.$helpicon.'</span>';
echo '<span class="float-sm-right text-nowrap">'.$helpicon.'</span>';
}
echo '</div>';
if (isset($this->errors[$name])) {
@@ -66,9 +66,9 @@ class core_role_override_permissions_table_advanced extends core_role_capability
$rowattributes = parent::get_row_attributes($capability);
if ($this->permissions[$capability->name] !== 0) {
if (empty($rowattributes['class'])) {
$rowattributes['class'] = "overriddenpermission";
$rowattributes['class'] = "overriddenpermission table-warning";
} else {
$rowattributes['class'] .= " overriddenpermission";
$rowattributes['class'] .= " overriddenpermission table-warning";
}
}
return $rowattributes;
+2 -2
View File
@@ -96,7 +96,7 @@ class core_role_permissions_table extends core_role_capability_table_base {
"linkclass" => "preventlink", "adminurl" => $adminurl->out(), "icon" => "", "iconalt" => "");
if (isset($overridableroles[$id]) and ($allowoverrides or ($allowsafeoverrides and is_safe_capability($capability)))) {
$templatecontext['icon'] = 't/delete';
$templatecontext['iconalt'] = get_string('delete');
$templatecontext['iconalt'] = get_string('deletexrole', 'core_role', $name);
}
$neededroles[$id] = $renderer->render_from_template('core/permissionmanager_role', $templatecontext);
}
@@ -109,7 +109,7 @@ class core_role_permissions_table extends core_role_capability_table_base {
"icon" => "", "iconalt" => "");
if (isset($overridableroles[$id]) and prohibit_is_removable($id, $context, $capability->name)) {
$templatecontext['icon'] = 't/delete';
$templatecontext['iconalt'] = get_string('delete');
$templatecontext['iconalt'] = get_string('deletexrole', 'core_role', $name);
}
$forbiddenroles[$id] = $renderer->render_from_template('core/permissionmanager_role', $templatecontext);
}
+3 -14
View File
@@ -52,10 +52,12 @@ if ($return === 'manage') {
$returnurl = new moodle_url('/admin/roles/define.php', array('action'=>'view', 'roleid'=>$roleid));;
}
admin_externalpage_setup('defineroles', '', array('action' => $action, 'roleid' => $roleid),
new moodle_url('/admin/roles/define.php'));
// Check access permissions.
$systemcontext = context_system::instance();
require_capability('moodle/role:manage', $systemcontext);
admin_externalpage_setup('defineroles', '', array('action' => $action, 'roleid' => $roleid), new moodle_url('/admin/roles/define.php'));
// Export role.
if ($action === 'export') {
@@ -198,19 +200,6 @@ if (optional_param('cancel', false, PARAM_BOOL)) {
if (optional_param('savechanges', false, PARAM_BOOL) && confirm_sesskey() && $definitiontable->is_submission_valid()) {
$definitiontable->save_changes();
$tableroleid = $definitiontable->get_role_id();
// Trigger event.
$event = \core\event\role_capabilities_updated::create(
array(
'context' => $systemcontext,
'objectid' => $tableroleid
)
);
$event->set_legacy_logdata(array(SITEID, 'role', $action, 'admin/roles/define.php?action=view&roleid=' . $tableroleid,
$definitiontable->get_role_name(), '', $USER->id));
if (!empty($role)) {
$event->add_record_snapshot('role', $role);
}
$event->trigger();
if ($action === 'add') {
redirect(new moodle_url('/admin/roles/define.php', array('action'=>'view', 'roleid'=>$definitiontable->get_role_id())));
+2 -1
View File
@@ -46,10 +46,11 @@ if ($action) {
$baseurl = $CFG->wwwroot . '/' . $CFG->admin . '/roles/manage.php';
$defineurl = $CFG->wwwroot . '/' . $CFG->admin . '/roles/define.php';
admin_externalpage_setup('defineroles');
// Check access permissions.
$systemcontext = context_system::instance();
require_capability('moodle/role:manage', $systemcontext);
admin_externalpage_setup('defineroles');
// Get some basic data we are going to need.
$roles = role_fix_names(get_all_roles(), $systemcontext, ROLENAME_ORIGINAL);
-16
View File
@@ -134,22 +134,6 @@ $overridestable->read_submitted_permissions();
if (optional_param('savechanges', false, PARAM_BOOL) && confirm_sesskey()) {
$overridestable->save_changes();
$rolename = $overridableroles[$roleid];
// Trigger event.
$event = \core\event\role_capabilities_updated::create(
array(
'context' => $context,
'objectid' => $roleid,
)
);
$event->set_legacy_logdata(
array(
$course->id, 'role', 'override', 'admin/roles/override.php?contextid=' . $context->id . '&roleid=' . $roleid,
$rolename, '', $USER->id
)
);
$event->add_record_snapshot('role', $role);
$event->trigger();
redirect($returnurl);
}
+1 -1
View File
@@ -213,7 +213,7 @@ $arguments = array('contextid' => $contextid,
$PAGE->requires->strings_for_js(
array('roleprohibitinfo', 'roleprohibitheader', 'roleallowinfo', 'roleallowheader',
'confirmunassigntitle', 'confirmroleunprohibit', 'confirmroleprevent', 'confirmunassignyes',
'confirmunassignno'), 'core_role');
'confirmunassignno', 'deletexrole'), 'core_role');
$PAGE->requires->js_call_amd('core/permissionmanager', 'initialize', array($arguments));
$table = new core_role_permissions_table($context, $contextname, $allowoverrides, $allowsafeoverrides, $overridableroles);
echo $OUTPUT->box_start('generalbox capbox');
+1 -1
View File
@@ -45,7 +45,7 @@ $PAGE->set_pagelayout('admin');
// Check login and permissions.
if ($course->id == SITEID) {
require_login();
require_login(null, false);
$PAGE->set_context($usercontext);
} else {
require_login($course);
+1 -1
View File
@@ -24,7 +24,7 @@
defined('MOODLE_INTERNAL') || die();
if ($hassiteconfig) {
if ($hassiteconfig && \core_analytics\manager::is_analytics_enabled()) {
$settings = new admin_settingpage('analyticssite', new lang_string('analyticssiteinfo', 'analytics'));
$ADMIN->add('analytics', $settings);
+34
View File
@@ -25,6 +25,12 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) { // sp
$temp->add(new admin_setting_configcheckbox('allowcohortthemes', new lang_string('allowcohortthemes', 'admin'), new lang_string('configallowcohortthemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowthemechangeonurl', new lang_string('allowthemechangeonurl', 'admin'), new lang_string('configallowthemechangeonurl', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowuserblockhiding', new lang_string('allowuserblockhiding', 'admin'), new lang_string('configallowuserblockhiding', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('langmenuinsecurelayout',
new lang_string('langmenuinsecurelayout', 'admin'),
new lang_string('langmenuinsecurelayout_desc', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('logininfoinsecurelayout',
new lang_string('logininfoinsecurelayout', 'admin'),
new lang_string('logininfoinsecurelayout_desc', 'admin'), 0));
$temp->add(new admin_setting_configtextarea('custommenuitems', new lang_string('custommenuitems', 'admin'),
new lang_string('configcustommenuitems', 'admin'), '', PARAM_RAW, '50', '10'));
$temp->add(new admin_setting_configtextarea(
@@ -76,6 +82,24 @@ preferences,moodle|/user/preferences.php|t/preferences',
$ADMIN->add('appearance', $temp);
// Course colours section.
$temp = new admin_settingpage('coursecolors', new lang_string('coursecolorsettings', 'admin'));
$temp->add(new admin_setting_heading('coursecolorheading', '',
new lang_string('coursecolorheading_desc', 'admin')));
$basecolors = ['#81ecec', '#74b9ff', '#a29bfe', '#dfe6e9', '#00b894',
'#0984e3', '#b2bec3', '#fdcb6e', '#fd79a8', '#6c5ce7'];
foreach ($basecolors as $key => $color) {
$number = $key + 1;
$name = 'core_admin/coursecolor' . $number;
$title = get_string('coursecolor', 'admin', $number);
$setting = new admin_setting_configcolourpicker($name, $title, '', $color);
$temp->add($setting);
}
$ADMIN->add('appearance', $temp);
// Calendar settings.
$temp = new admin_settingpage('calendar', new lang_string('calendarsettings','admin'));
@@ -179,6 +203,10 @@ preferences,moodle|/user/preferences.php|t/preferences',
'idnumber' => new lang_string('sort_idnumber', 'admin'),
);
$temp->add(new admin_setting_configselect('navsortmycoursessort', new lang_string('navsortmycoursessort', 'admin'), new lang_string('navsortmycoursessort_help', 'admin'), 'sortorder', $sortoptions));
$temp->add(new admin_setting_configcheckbox('navsortmycourseshiddenlast',
new lang_string('navsortmycourseshiddenlast', 'admin'),
new lang_string('navsortmycourseshiddenlast_help', 'admin'),
1));
$temp->add(new admin_setting_configtext('navcourselimit', new lang_string('navcourselimit', 'admin'),
new lang_string('confignavcourselimit', 'admin'), 10, PARAM_INT));
$temp->add(new admin_setting_configcheckbox('usesitenameforsitepages', new lang_string('usesitenameforsitepages', 'admin'), new lang_string('configusesitenameforsitepages', 'admin'), 0));
@@ -257,4 +285,10 @@ preferences,moodle|/user/preferences.php|t/preferences',
$temp->add(new admin_setting_configtextarea('additionalhtmlfooter', new lang_string('additionalhtmlfooter', 'admin'), new lang_string('additionalhtmlfooter_desc', 'admin'), '', PARAM_RAW));
$ADMIN->add('appearance', $temp);
$setting = new admin_setting_configcheckbox('cachetemplates', new lang_string('cachetemplates', 'admin'),
new lang_string('cachetemplates_help', 'admin'), 1);
$setting->set_updatedcallback('template_reset_all_caches');
$temp = new admin_settingpage('templates', new lang_string('templates', 'admin'));
$temp->add($setting);
$ADMIN->add('appearance', $temp);
} // end of speedup
+5 -8
View File
@@ -59,8 +59,12 @@ if (($hassiteconfig || has_any_capability(array(
$backpacks = badges_get_site_backpacks();
$choices = array();
$defaultchoice = 0;
foreach ($backpacks as $backpack) {
$choices[$backpack->id] = $backpack->backpackweburl;
if ($backpack->backpackweburl == BADGRIO_BACKPACKWEBURL) {
$defaultchoice = $backpack->id;
}
}
$globalsettings->add(new admin_setting_configcheckbox('badges_allowcoursebadges',
@@ -103,14 +107,7 @@ if (($hassiteconfig || has_any_capability(array(
$backpacksettings->add(new admin_setting_configselect('badges_site_backpack',
new lang_string('sitebackpack', 'badges'),
new lang_string('sitebackpack_help', 'badges'),
1, $choices));
$warning = badges_verify_site_backpack();
if (!empty($warning)) {
$backpacksettings->add(new admin_setting_description('badges_site_backpack_verify',
new lang_string('sitebackpackverify', 'badges'),
$warning));
}
$defaultchoice, $choices));
$ADMIN->add('badges', $backpacksettings);
+86 -21
View File
@@ -163,9 +163,15 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
// "courserequests" settingpage.
$temp = new admin_settingpage('courserequest', new lang_string('courserequest'));
$temp->add(new admin_setting_configcheckbox('enablecourserequests', new lang_string('enablecourserequests', 'admin'), new lang_string('configenablecourserequests', 'admin'), 0));
$temp->add(new admin_settings_coursecat_select('defaultrequestcategory', new lang_string('defaultrequestcategory', 'admin'), new lang_string('configdefaultrequestcategory', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('requestcategoryselection', new lang_string('requestcategoryselection', 'admin'), new lang_string('configrequestcategoryselection', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enablecourserequests',
new lang_string('enablecourserequests', 'admin'),
new lang_string('configenablecourserequests', 'admin'), 1));
$temp->add(new admin_settings_coursecat_select('defaultrequestcategory',
new lang_string('defaultrequestcategory', 'admin'),
new lang_string('configdefaultrequestcategory', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('lockrequestcategory',
new lang_string('lockrequestcategory', 'admin'),
new lang_string('configlockrequestcategory', 'admin'), 0));
$temp->add(new admin_setting_users_with_capability('courserequestnotify', new lang_string('courserequestnotify', 'admin'), new lang_string('configcourserequestnotify2', 'admin'), array(), 'moodle/site:approvecourse'));
$ADMIN->add('courses', $temp);
@@ -175,6 +181,30 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$CFG->wwwroot . '/course/pending.php', array('moodle/site:approvecourse')));
}
// Add a category for the Activity Chooser.
$ADMIN->add('courses', new admin_category('activitychooser', new lang_string('activitychoosercategory', 'course')));
$temp = new admin_settingpage('activitychoosersettings', new lang_string('activitychoosersettings', 'course'));
$temp->add(
new admin_setting_configselect(
'activitychoosertabmode',
new lang_string('activitychoosertabmode', 'course'),
new lang_string('activitychoosertabmode_desc', 'course'),
0,
[
0 => new lang_string('activitychoosertabmodeone', 'course'),
1 => new lang_string('activitychoosertabmodetwo', 'course'),
2 => new lang_string('activitychoosertabmodethree', 'course'),
]
)
);
$ADMIN->add('activitychooser', $temp);
$ADMIN->add('activitychooser',
new admin_externalpage('activitychooserrecommended', new lang_string('activitychooserrecommendations', 'course'),
new moodle_url('/course/recommendations.php'),
array('moodle/course:recommendactivity')
)
);
// Add a category for backups.
$ADMIN->add('courses', new admin_category('backups', new lang_string('backups','admin')));
@@ -206,6 +236,11 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_role_assignments', new lang_string('generalroleassignments','backup'), new lang_string('configgeneralroleassignments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_activities', new lang_string('generalactivities','backup'), new lang_string('configgeneralactivities','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_blocks', new lang_string('generalblocks','backup'), new lang_string('configgeneralblocks','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock(
'backup/backup_general_files',
new lang_string('generalfiles', 'backup'),
new lang_string('configgeneralfiles', 'backup'),
array('value' => '1', 'locked' => 0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_filters', new lang_string('generalfilters','backup'), new lang_string('configgeneralfilters','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_comments', new lang_string('generalcomments','backup'), new lang_string('configgeneralcomments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_badges', new lang_string('generalbadges','backup'), new lang_string('configgeneralbadges','backup'), array('value'=>1,'locked'=>0)));
@@ -218,6 +253,11 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
new lang_string('generalgroups', 'backup'), new lang_string('configgeneralgroups', 'backup'),
array('value' => 1, 'locked' => 0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_competencies', new lang_string('generalcompetencies','backup'), new lang_string('configgeneralcompetencies','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_contentbankcontent',
new lang_string('generalcontentbankcontent', 'backup'),
new lang_string('configgeneralcontentbankcontent', 'backup'),
['value' => 1, 'locked' => 0])
);
$ADMIN->add('backups', $temp);
@@ -239,6 +279,12 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
new lang_string('generalgroups', 'backup'), new lang_string('configgeneralgroups', 'backup'),
array('value' => 1, 'locked' => 0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_import_competencies', new lang_string('generalcompetencies','backup'), new lang_string('configgeneralcompetencies','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock(
'backup/backup_import_contentbankcontent',
new lang_string('generalcontentbankcontent', 'backup'),
new lang_string('configgeneralcontentbankcontent', 'backup'),
['value' => 1, 'locked' => 0])
);
$ADMIN->add('backups', $temp);
@@ -265,6 +311,8 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$maxkeptoptions = array(
0 => new lang_string('all'), 1 => '1',
2 => '2',
3 => '3',
4 => '4',
5 => '5',
10 => '10',
20 => '20',
@@ -341,6 +389,10 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_role_assignments', new lang_string('generalroleassignments','backup'), new lang_string('configgeneralroleassignments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_activities', new lang_string('generalactivities','backup'), new lang_string('configgeneralactivities','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blocks', new lang_string('generalblocks','backup'), new lang_string('configgeneralblocks','backup'), 1));
$temp->add(new admin_setting_configcheckbox(
'backup/backup_auto_files',
new lang_string('generalfiles', 'backup'),
new lang_string('configgeneralfiles', 'backup'), '1'));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_filters', new lang_string('generalfilters','backup'), new lang_string('configgeneralfilters','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_comments', new lang_string('generalcomments','backup'), new lang_string('configgeneralcomments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_badges', new lang_string('generalbadges','backup'), new lang_string('configgeneralbadges','backup'), 1));
@@ -352,6 +404,12 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_groups', new lang_string('generalgroups', 'backup'),
new lang_string('configgeneralgroups', 'backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_competencies', new lang_string('generalcompetencies','backup'), new lang_string('configgeneralcompetencies','backup'), 1));
$temp->add(new admin_setting_configcheckbox(
'backup/backup_auto_contentbankcontent',
new lang_string('generalcontentbankcontent', 'backup'),
new lang_string('configgeneralcontentbankcontent', 'backup'),
1)
);
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_messages', new lang_string('messages', 'message'), new lang_string('backupmessageshelp','message'), 0));
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blogs', new lang_string('blogs', 'blog'), new lang_string('backupblogshelp','blog'), 0));
@@ -412,6 +470,9 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$temp->add(new admin_setting_configcheckbox_with_lock('restore/restore_general_competencies',
new lang_string('generalcompetencies', 'backup'),
new lang_string('configrestorecompetencies', 'backup'), array('value' => 1, 'locked' => 0)));
$temp->add(new admin_setting_configcheckbox_with_lock('restore/restore_general_contentbankcontent',
new lang_string('generalcontentbankcontent', 'backup'),
new lang_string('configrestorecontentbankcontent', 'backup'), array('value' => 1, 'locked' => 0)));
// Restore defaults when merging into another course.
$temp->add(new admin_setting_heading('mergerestoredefaults', new lang_string('mergerestoredefaults', 'backup'), ''));
@@ -459,27 +520,31 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
$ADMIN->add('backups', $temp);
// Create a page for asynchronous backup and restore configuration and defaults.
if (!empty($CFG->enableasyncbackup)) { // Only add settings if async mode is enable at site level.
$temp = new admin_settingpage('asyncgeneralsettings', new lang_string('asyncgeneralsettings', 'backup'));
$temp = new admin_settingpage('asyncgeneralsettings', new lang_string('asyncgeneralsettings', 'backup'));
$temp->add(new admin_setting_configcheckbox(
'backup/backup_async_message_users',
new lang_string('asyncemailenable', 'backup'),
new lang_string('asyncemailenabledetail', 'backup'), 0));
$temp->add(new admin_setting_configcheckbox('enableasyncbackup', new lang_string('enableasyncbackup', 'backup'),
new lang_string('enableasyncbackup_help', 'backup'), 0, 1, 0));
$temp->add(new admin_setting_configtext(
'backup/backup_async_message_subject',
new lang_string('asyncmessagesubject', 'backup'),
new lang_string('asyncmessagesubjectdetail', 'backup'),
new lang_string('asyncmessagesubjectdefault', 'backup')));
$temp->add(new admin_setting_configcheckbox(
'backup/backup_async_message_users',
new lang_string('asyncemailenable', 'backup'),
new lang_string('asyncemailenabledetail', 'backup'), 0));
$temp->hide_if('backup/backup_async_message_users', 'enableasyncbackup');
$temp->add(new admin_setting_confightmleditor(
'backup/backup_async_message',
new lang_string('asyncmessagebody', 'backup'),
new lang_string('asyncmessagebodydetail', 'backup'),
new lang_string('asyncmessagebodydefault', 'backup')));
$temp->add(new admin_setting_configtext(
'backup/backup_async_message_subject',
new lang_string('asyncmessagesubject', 'backup'),
new lang_string('asyncmessagesubjectdetail', 'backup'),
new lang_string('asyncmessagesubjectdefault', 'backup')));
$temp->hide_if('backup/backup_async_message_subject', 'backup/backup_async_message_users');
$ADMIN->add('backups', $temp);
}
$temp->add(new admin_setting_confightmleditor(
'backup/backup_async_message',
new lang_string('asyncmessagebody', 'backup'),
new lang_string('asyncmessagebodydetail', 'backup'),
new lang_string('asyncmessagebodydefault', 'backup')));
$temp->hide_if('backup/backup_async_message', 'backup/backup_async_message_users');
$ADMIN->add('backups', $temp);
}
+5 -2
View File
@@ -10,7 +10,6 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp = new admin_settingpage('experimentalsettings', new lang_string('experimentalsettings', 'admin'));
//TODO: Re-enable cc-import once re-implemented in 2.0.x
//$temp->add(new admin_setting_configcheckbox('enableimsccimport', new lang_string('enable_cc_import', 'imscc'), new lang_string('enable_cc_import_description', 'imscc'), 0));
$temp->add(new admin_setting_configcheckbox('enablesafebrowserintegration', new lang_string('enablesafebrowserintegration', 'admin'), new lang_string('configenablesafebrowserintegration', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('dndallowtextandlinks', new lang_string('dndallowtextandlinks', 'admin'), new lang_string('configdndallowtextandlinks', 'admin'), 0));
@@ -29,13 +28,17 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configcheckbox('forceclean', new lang_string('forceclean', 'core_admin'),
new lang_string('forceclean_desc', 'core_admin'), 0));
// Relative course dates mode setting.
$temp->add(new admin_setting_configcheckbox('enablecourserelativedates',
new lang_string('enablecourserelativedates', 'core_admin'),
new lang_string('enablecourserelativedates_desc', 'core_admin'), 0));
$ADMIN->add('experimental', $temp);
// "debugging" settingpage
$temp = new admin_settingpage('debugging', new lang_string('debugging', 'admin'));
$temp->add(new admin_setting_special_debug());
$temp->add(new admin_setting_configcheckbox('debugdisplay', new lang_string('debugdisplay', 'admin'), new lang_string('configdebugdisplay', 'admin'), ini_get_bool('display_errors')));
$temp->add(new admin_setting_configcheckbox('debugsmtp', new lang_string('debugsmtp', 'admin'), new lang_string('configdebugsmtp', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('perfdebug', new lang_string('perfdebug', 'admin'), new lang_string('configperfdebug', 'admin'), '7', '15', '7'));
$temp->add(new admin_setting_configcheckbox('debugstringids', new lang_string('debugstringids', 'admin'), new lang_string('debugstringids_desc', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugvalidators', new lang_string('debugvalidators', 'admin'), new lang_string('configdebugvalidators', 'admin'), 0));
+1 -1
View File
@@ -58,7 +58,7 @@ if (!during_initial_install()) { //do not use during installation
foreach ($roles as $role) {
if (empty($role->archetype) or $role->archetype === 'guest' or $role->archetype === 'frontpage' or $role->archetype === 'student') {
$options[$role->id] = $role->localname;
if ($role->archetype === 'frontpage') {
if ($role->archetype === 'frontpage' && !$defaultfrontpageroleid) {
$defaultfrontpageroleid = $role->id;
}
}
+44
View File
@@ -0,0 +1,44 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* H5P settings link.
*
* @package core_h5p
* @copyright 2019 Amaia Anabitarte <amaia@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
// H5P overview.
$ADMIN->add('h5p', new admin_externalpage('h5poverview', get_string('h5poverview', 'core_h5p'),
new moodle_url('/h5p/overview.php'), ['moodle/site:config']));
// Manage H5P libraries page.
$ADMIN->add('h5p', new admin_externalpage('h5pmanagelibraries', get_string('h5pmanage', 'core_h5p'),
new moodle_url('/h5p/libraries.php'), ['moodle/site:config', 'moodle/h5p:updatelibraries']));
// H5P settings.
$defaulth5plib = \core_h5p\local\library\autoloader::get_default_handler_library();
if (!empty($defaulth5plib)) {
// As for now this page only has this setting, it will be hidden if there isn't any H5P libraries handler defined.
$settings = new admin_settingpage('h5psettings', new lang_string('h5psettings', 'core_h5p'));
$ADMIN->add('h5p', $settings);
$settings->add(new admin_settings_h5plib_handler_select('h5plibraryhandler', new lang_string('h5plibraryhandler', 'core_h5p'),
new lang_string('h5plibraryhandler_help', 'core_h5p'), $defaulth5plib));
}
+45
View File
@@ -0,0 +1,45 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file defines the settings pages for licenses.
*
* @package core
* @copyright 2020 Tom Dickman <tomdickman@catalyst-au.net>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/licenselib.php');
if ($hassiteconfig) {
$temp = new admin_settingpage('licensesettings', new lang_string('licensesettings', 'admin'));
$licenses = license_manager::get_active_licenses_as_array();
$temp->add(new admin_setting_configselect('sitedefaultlicense',
new lang_string('configsitedefaultlicense', 'admin'),
new lang_string('configsitedefaultlicensehelp', 'admin'),
'unknown',
$licenses));
$temp->add(new admin_setting_configcheckbox('rememberuserlicensepref',
new lang_string('rememberuserlicensepref', 'admin'),
new lang_string('rememberuserlicensepref_help', 'admin'),
1));
$ADMIN->add('license', $temp);
}
+18 -12
View File
@@ -175,19 +175,12 @@ if ($hassiteconfig) {
$plugin->load_settings($ADMIN, 'antivirussettings', $hassiteconfig);
}
/// License types
$ADMIN->add('modules', new admin_category('licensesettings', new lang_string('licenses')));
$temp = new admin_settingpage('managelicenses', new lang_string('managelicenses', 'admin'));
require_once($CFG->libdir . '/licenselib.php');
$licenses = array();
$array = explode(',', $CFG->licenses);
foreach ($array as $value) {
$licenses[$value] = new lang_string($value, 'license');
// Machine learning backend plugins.
$ADMIN->add('modules', new admin_category('mlbackendsettings', new lang_string('mlbackendsettings', 'admin')));
$plugins = core_plugin_manager::instance()->get_plugins_of_type('mlbackend');
foreach ($plugins as $plugin) {
$plugin->load_settings($ADMIN, 'mlbackendsettings', $hassiteconfig);
}
$temp->add(new admin_setting_configselect('sitedefaultlicense', new lang_string('configsitedefaultlicense','admin'), new lang_string('configsitedefaultlicensehelp','admin'), 'allrightsreserved', $licenses));
$temp->add(new admin_setting_managelicenses());
$ADMIN->add('licensesettings', $temp);
/// Filter plugins
$ADMIN->add('modules', new admin_category('filtersettings', new lang_string('managefilters')));
@@ -650,6 +643,19 @@ if ($hassiteconfig) {
}
}
// Content bank content types.
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('contentbanksettings', new lang_string('contentbank')));
$temp = new admin_settingpage('managecontentbanktypes', new lang_string('managecontentbanktypes'));
$temp->add(new admin_setting_managecontentbankcontenttypes());
$ADMIN->add('contentbanksettings', $temp);
$plugins = core_plugin_manager::instance()->get_plugins_of_type('contenttype');
foreach ($plugins as $plugin) {
/** @var \core\plugininfo\contentbank $plugin */
$plugin->load_settings($ADMIN, 'contentbanksettings', $hassiteconfig);
}
}
/// Add all local plugins - must be always last!
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('localplugins', new lang_string('localplugins')));
+32 -7
View File
@@ -1,4 +1,29 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Adds security related settings links for security category to admin tree.
*
* @copyright 1999 Martin Dougiamas http://dougiamas.com
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use core_admin\local\settings\filesize;
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
@@ -17,7 +42,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configcheckbox('forcelogin', new lang_string('forcelogin', 'admin'), new lang_string('configforcelogin', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('forceloginforprofiles', new lang_string('forceloginforprofiles', 'admin'), new lang_string('configforceloginforprofiles', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('forceloginforprofileimage', new lang_string('forceloginforprofileimage', 'admin'), new lang_string('forceloginforprofileimage_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('opentogoogle', new lang_string('opentogoogle', 'admin'), new lang_string('configopentogoogle', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('opentowebcrawlers', new lang_string('opentowebcrawlers', 'admin'), new lang_string('configopentowebcrawlers', 'admin'), 0));
$temp->add(new admin_setting_configselect('allowindexing', new lang_string('allowindexing', 'admin'), new lang_string('allowindexing_desc', 'admin'),
0,
array(0 => new lang_string('allowindexingexceptlogin', 'admin'),
@@ -36,12 +61,9 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// maxbytes set to 0 will allow the maximum server limit for uploads
$temp->add(new admin_setting_configselect('maxbytes', new lang_string('maxbytes', 'admin'), new lang_string('configmaxbytes', 'admin'), 0, $max_upload_choices));
// 100MB
$defaultuserquota = 104857600;
$params = new stdClass();
$params->bytes = $defaultuserquota;
$params->displaysize = display_size($defaultuserquota);
$temp->add(new admin_setting_configtext('userquota', new lang_string('userquota', 'admin'),
new lang_string('configuserquota', 'admin', $params), $defaultuserquota, PARAM_INT, 30));
$defaultuserquota = 100 * filesize::UNIT_MB;
$temp->add(new filesize('userquota', new lang_string('userquota', 'admin'),
new lang_string('userquota_desc', 'admin'), $defaultuserquota));
$temp->add(new admin_setting_configcheckbox('allowobjectembed', new lang_string('allowobjectembed', 'admin'), new lang_string('configallowobjectembed', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enabletrusttext', new lang_string('enabletrusttext', 'admin'), new lang_string('configenabletrusttext', 'admin'), 0));
@@ -78,6 +100,9 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configtext('minpasswordupper', new lang_string('minpasswordupper', 'admin'), new lang_string('configminpasswordupper', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordnonalphanum', new lang_string('minpasswordnonalphanum', 'admin'), new lang_string('configminpasswordnonalphanum', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('maxconsecutiveidentchars', new lang_string('maxconsecutiveidentchars', 'admin'), new lang_string('configmaxconsecutiveidentchars', 'admin'), 0, PARAM_INT));
$temp->add(new admin_setting_configcheckbox('passwordpolicycheckonlogin',
new lang_string('passwordpolicycheckonlogin', 'admin'),
new lang_string('configpasswordpolicycheckonlogin', 'admin'), 0));
$temp->add(new admin_setting_configtext('passwordreuselimit',
new lang_string('passwordreuselimit', 'admin'),
+20 -11
View File
@@ -44,15 +44,10 @@ $temp = new admin_settingpage('sessionhandling', new lang_string('sessionhandlin
if (empty($CFG->session_handler_class) and $DB->session_lock_supported()) {
$temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 0));
}
$temp->add(new admin_setting_configselect('sessiontimeout', new lang_string('sessiontimeout', 'admin'), new lang_string('configsessiontimeout', 'admin'), 7200, array(14400 => new lang_string('numhours', '', 4),
10800 => new lang_string('numhours', '', 3),
7200 => new lang_string('numhours', '', 2),
5400 => new lang_string('numhours', '', '1.5'),
3600 => new lang_string('numminutes', '', 60),
2700 => new lang_string('numminutes', '', 45),
1800 => new lang_string('numminutes', '', 30),
900 => new lang_string('numminutes', '', 15),
300 => new lang_string('numminutes', '', 5))));
$temp->add(new admin_setting_configduration('sessiontimeout', new lang_string('sessiontimeout', 'admin'),
new lang_string('configsessiontimeout', 'admin'), 8 * 60 * 60));
$temp->add(new admin_setting_configtext('sessioncookie', new lang_string('sessioncookie', 'admin'), new lang_string('configsessioncookie', 'admin'), '', PARAM_ALPHANUM));
$temp->add(new admin_setting_configtext('sessioncookiepath', new lang_string('sessioncookiepath', 'admin'), new lang_string('configsessioncookiepath', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sessioncookiedomain', new lang_string('sessioncookiedomain', 'admin'), new lang_string('configsessioncookiedomain', 'admin'), '', PARAM_RAW, 50));
@@ -97,7 +92,10 @@ $options = array(
GETREMOTEADDR_SKIP_HTTP_CLIENT_IP => 'HTTP_X_FORWARDED_FOR, REMOTE_ADDR',
GETREMOTEADDR_SKIP_HTTP_X_FORWARDED_FOR => 'HTTP_CLIENT, REMOTE_ADDR',
GETREMOTEADDR_SKIP_HTTP_X_FORWARDED_FOR|GETREMOTEADDR_SKIP_HTTP_CLIENT_IP => 'REMOTE_ADDR');
$temp->add(new admin_setting_configselect('getremoteaddrconf', new lang_string('getremoteaddrconf', 'admin'), new lang_string('configgetremoteaddrconf', 'admin'), 0, $options));
$temp->add(new admin_setting_configselect('getremoteaddrconf', new lang_string('getremoteaddrconf', 'admin'),
new lang_string('configgetremoteaddrconf', 'admin'),
GETREMOTEADDR_SKIP_DEFAULT, $options));
$temp->add(new admin_setting_configtext('reverseproxyignore', new lang_string('reverseproxyignore', 'admin'), new lang_string('configreverseproxyignore', 'admin'), ''));
$temp->add(new admin_setting_heading('webproxy', new lang_string('webproxy', 'admin'), new lang_string('webproxyinfo', 'admin')));
$temp->add(new admin_setting_configtext('proxyhost', new lang_string('proxyhost', 'admin'), new lang_string('configproxyhost', 'admin'), '', PARAM_HOST));
@@ -172,7 +170,10 @@ $temp->add(new admin_setting_configselect('tempdatafoldercleanup', new lang_stri
$ADMIN->add('server', $temp);
$temp->add(new admin_setting_configduration('filescleanupperiod',
new lang_string('filescleanupperiod', 'admin'),
new lang_string('filescleanupperiod_help', 'admin'),
86400));
$ADMIN->add('server', new admin_externalpage('environment', new lang_string('environment','admin'), "$CFG->wwwroot/$CFG->admin/environment.php"));
$ADMIN->add('server', new admin_externalpage('phpinfo', new lang_string('phpinfo'), "$CFG->wwwroot/$CFG->admin/phpinfo.php"));
@@ -268,6 +269,14 @@ $temp->add(
]
)
);
$temp->add(
new admin_setting_configcheckbox(
'task_logtostdout',
new lang_string('task_logtostdout', 'admin'),
new lang_string('task_logtostdout_desc', 'admin'),
1
)
);
if (\core\task\logmanager::uses_standard_settings()) {
$temp->add(
+24 -4
View File
@@ -49,9 +49,29 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$optionalsubsystems->add(new admin_setting_configcheckbox('allowstealth', new lang_string('allowstealthmodules'),
new lang_string('allowstealthmodules_help'), 0, 1, 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablecoursepublishing',
new lang_string('enablecoursepublishing', 'hub'), new lang_string('enablecoursepublishing_help', 'hub'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableanalytics', new lang_string('enableanalytics', 'admin'),
new lang_string('configenableanalytics', 'admin'), 1, 1, 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableasyncbackup', new lang_string('enableasyncbackup', 'backup'),
new lang_string('enableasyncbackup_help', 'backup'), 0, 1, 0));
$fullunicodesupport = true;
if ($DB->get_dbfamily() == 'mysql') {
$collation = $DB->get_dbcollation();
$collationinfo = explode('_', $collation);
$charset = reset($collationinfo);
$fullunicodesupport = $charset === 'utf8mb4';
}
if ($fullunicodesupport) {
$optionalsubsystems->add(new admin_setting_configcheckbox(
'allowemojipicker',
new lang_string('allowemojipicker', 'admin'),
new lang_string('configallowemojipicker', 'admin'),
1
));
} else {
$optionalsubsystems->add(new admin_setting_description(
'allowemojipicker',
new lang_string('allowemojipicker', 'admin'),
new lang_string('configallowemojipickerincompatible', 'admin')
));
}
}
+5
View File
@@ -20,6 +20,9 @@ $moodleservices = new admin_settingpage('moodleservices', new lang_string('moodl
'admin'));
$ADMIN->add('root', $moodleservices);
$userfeedback = new admin_settingpage('userfeedback', new lang_string('feedbacksettings', 'admin'));
$ADMIN->add('root', $userfeedback);
if ($hassiteconfig) {
$optionalsubsystems = new admin_settingpage('optionalsubsystems', new lang_string('advancedfeatures', 'admin'));
$ADMIN->add('root', $optionalsubsystems);
@@ -31,6 +34,8 @@ $ADMIN->add('root', new admin_category('grades', new lang_string('grades')));
$ADMIN->add('root', new admin_category('analytics', new lang_string('analytics', 'analytics')));
$ADMIN->add('root', new admin_category('competencies', new lang_string('competencies', 'core_competency')));
$ADMIN->add('root', new admin_category('badges', new lang_string('badges'), empty($CFG->enablebadges)));
$ADMIN->add('root', new admin_category('h5p', new lang_string('h5p', 'core_h5p')));
$ADMIN->add('root', new admin_category('license', new lang_string('license')));
$ADMIN->add('root', new admin_category('location', new lang_string('location','admin')));
$ADMIN->add('root', new admin_category('language', new lang_string('language')));
$ADMIN->add('root', new admin_category('messaging', new lang_string('messagingcategory', 'admin')));
+49
View File
@@ -0,0 +1,49 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file contains call to feedback settings
*
* @package core
* @copyright 2020 Shamim Rezaie <shamim@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
if ($hassiteconfig) {
$userfeedback->add(new admin_setting_configcheckbox('enableuserfeedback',
new lang_string('enableuserfeedback', 'admin'),
new lang_string('enableuserfeedback_desc', 'admin'), 0, 1, 0));
$options = [
core_userfeedback::REMIND_AFTER_UPGRADE => new lang_string('userfeedbackafterupgrade', 'admin'),
core_userfeedback::REMIND_PERIODICALLY => new lang_string('userfeedbackperiodically', 'admin'),
core_userfeedback::REMIND_NEVER => new lang_string('never'),
];
$userfeedback->add(new admin_setting_configselect('userfeedback_nextreminder',
new lang_string('userfeedbacknextreminder', 'admin'),
new lang_string('userfeedbacknextreminder_desc', 'admin'), 1, $options));
$userfeedback->hide_if('userfeedback_nextreminder', 'enableuserfeedback');
$userfeedback->add(new admin_setting_configtext('userfeedback_remindafter',
new lang_string('userfeedbackremindafter', 'admin'),
new lang_string('userfeedbackremindafter_desc', 'admin'), 90, PARAM_INT));
$userfeedback->hide_if('userfeedback_remindafter', 'enableuserfeedback');
$userfeedback->hide_if('userfeedback_remindafter', 'userfeedback_nextreminder', 'eq', 3);
}
+59 -8
View File
@@ -1,6 +1,6 @@
<?php
// This file defines settingpages and externalpages under the "users" category
// This file defines settingpages and externalpages under the "users" category.
$ADMIN->add('users', new admin_category('accounts', new lang_string('accounts', 'admin')));
$ADMIN->add('users', new admin_category('roles', new lang_string('permissions', 'role')));
@@ -13,15 +13,47 @@ if ($hassiteconfig
or has_capability('moodle/role:manage', $systemcontext)
or has_capability('moodle/role:assign', $systemcontext)
or has_capability('moodle/cohort:manage', $systemcontext)
or has_capability('moodle/cohort:view', $systemcontext)) { // speedup for non-admins, add all caps used on this page
or has_capability('moodle/cohort:view', $systemcontext)) { // Speedup for non-admins, add all caps used on this page.
// stuff under the "accounts" subcategory
// Stuff under the "accounts" subcategory.
$ADMIN->add('accounts', new admin_externalpage('editusers', new lang_string('userlist','admin'), "$CFG->wwwroot/$CFG->admin/user.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('userbulk', new lang_string('userbulk','admin'), "$CFG->wwwroot/$CFG->admin/user/user_bulk.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('addnewuser', new lang_string('addnewuser'), "$CFG->wwwroot/user/editadvanced.php?id=-1", 'moodle/user:create'));
// "User default preferences" settingpage.
// User management settingpage.
$temp = new admin_settingpage('usermanagement', new lang_string('usermanagement', 'admin'));
if ($ADMIN->fulltree) {
$choices = array();
$choices['realname'] = new lang_string('fullnameuser');
$choices['lastname'] = new lang_string('lastname');
$choices['firstname'] = new lang_string('firstname');
$choices['username'] = new lang_string('username');
$choices['email'] = new lang_string('email');
$choices['city'] = new lang_string('city');
$choices['country'] = new lang_string('country');
$choices['confirmed'] = new lang_string('confirmed', 'admin');
$choices['suspended'] = new lang_string('suspended', 'auth');
$choices['profile'] = new lang_string('profilefields', 'admin');
$choices['courserole'] = new lang_string('courserole', 'filters');
$choices['anycourses'] = new lang_string('anycourses', 'filters');
$choices['systemrole'] = new lang_string('globalrole', 'role');
$choices['cohort'] = new lang_string('idnumber', 'core_cohort');
$choices['firstaccess'] = new lang_string('firstaccess', 'filters');
$choices['lastaccess'] = new lang_string('lastaccess');
$choices['neveraccessed'] = new lang_string('neveraccessed', 'filters');
$choices['timemodified'] = new lang_string('lastmodified');
$choices['nevermodified'] = new lang_string('nevermodified', 'filters');
$choices['auth'] = new lang_string('authentication');
$choices['idnumber'] = new lang_string('idnumber');
$choices['lastip'] = new lang_string('lastip');
$choices['mnethostid'] = new lang_string('mnetidprovider', 'mnet');
$temp->add(new admin_setting_configmultiselect('userfiltersdefault', new lang_string('userfiltersdefault', 'admin'),
new lang_string('userfiltersdefault_desc', 'admin'), array('realname'), $choices));
}
$ADMIN->add('accounts', $temp);
// User default preferences settingpage.
$temp = new admin_settingpage('userdefaultpreferences', new lang_string('userdefaultpreferences', 'admin'));
if ($ADMIN->fulltree) {
$choices = array();
@@ -62,9 +94,9 @@ if ($hassiteconfig
$ADMIN->add('accounts', new admin_externalpage('cohorts', new lang_string('cohorts', 'cohort'), $CFG->wwwroot . '/cohort/index.php', array('moodle/cohort:manage', 'moodle/cohort:view')));
// stuff under the "roles" subcategory
// Stuff under the "roles" subcategory.
// "userpolicies" settingpage
// User policies settingpage.
$temp = new admin_settingpage('userpolicies', new lang_string('userpolicies', 'admin'));
if ($ADMIN->fulltree) {
if (!during_initial_install()) {
@@ -138,7 +170,7 @@ if ($hassiteconfig
$temp->add(new admin_setting_configselect('restorernewroleid', new lang_string('restorernewroleid', 'admin'),
new lang_string('restorernewroleid_help', 'admin'), $defaultteacherid, $restorersnewrole));
// release memory
// Release memory.
unset($otherroles);
unset($guestroles);
unset($userroles);
@@ -154,6 +186,7 @@ if ($hassiteconfig
'email' => new lang_string('email'),
'city' => new lang_string('city'),
'country' => new lang_string('country'),
'moodlenetprofile' => new lang_string('moodlenetprofile', 'user'),
'timezone' => new lang_string('timezone'),
'webpage' => new lang_string('webpage'),
'icqnumber' => new lang_string('icqnumber'),
@@ -209,7 +242,7 @@ if ($hassiteconfig
$ADMIN->add('roles', new admin_externalpage('assignroles', new lang_string('assignglobalroles', 'role'), "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=".$systemcontext->id, 'moodle/role:assign'));
$ADMIN->add('roles', new admin_externalpage('checkpermissions', new lang_string('checkglobalpermissions', 'role'), "$CFG->wwwroot/$CFG->admin/roles/check.php?contextid=".$systemcontext->id, array('moodle/role:assign', 'moodle/role:safeoverride', 'moodle/role:override', 'moodle/role:manage')));
} // end of speedup
} // End of speedup.
// Privacy settings.
if ($hassiteconfig) {
@@ -228,10 +261,28 @@ if ($hassiteconfig) {
$temp->add($setting);
// See {@link https://gdpr-info.eu/art-8-gdpr/}.
// See {@link https://www.betterinternetforkids.eu/web/portal/practice/awareness/detail?articleId=3017751}.
$ageofdigitalconsentmap = implode(PHP_EOL, [
'*, 16',
'AT, 14',
'BE, 13',
'BG, 14',
'CY, 14',
'CZ, 15',
'DK, 13',
'EE, 13',
'ES, 14',
'FI, 13',
'FR, 15',
'GB, 13',
'GR, 15',
'IT, 14',
'LT, 14',
'LV, 13',
'MT, 13',
'NO, 13',
'PT, 13',
'SE, 13',
'US, 13'
]);
$setting = new admin_setting_agedigitalconsentmap('agedigitalconsentmap',
+7 -5
View File
@@ -40,15 +40,14 @@ $strheading = get_string('tasklogs', 'tool_task');
$PAGE->set_title($strheading);
$PAGE->set_heading($strheading);
require_login();
require_capability('moodle/site:config', context_system::instance());
admin_externalpage_setup('tasklogs');
$logid = optional_param('logid', null, PARAM_INT);
$download = optional_param('download', false, PARAM_BOOL);
if (null !== $logid) {
// Raise memory limit in case the log is large.
raise_memory_limit(MEMORY_HUGE);
$log = $DB->get_record('task_log', ['id' => $logid], '*', MUST_EXIST);
if ($download) {
@@ -56,16 +55,18 @@ if (null !== $logid) {
header("Content-Disposition: attachment; filename=\"{$filename}\"");
}
readstring_accel($log->output, 'text/plain', false);
readstring_accel($log->output, 'text/plain');
exit;
}
$renderer = $PAGE->get_renderer('tool_task');
echo $OUTPUT->header();
// Output the search form.
echo $OUTPUT->render_from_template('core_admin/tasklogs', (object) [
'action' => $pageurl->out(),
'filter' => $filter,
'filter' => htmlentities($filter),
'resultfilteroptions' => [
(object) [
'value' => -1,
@@ -85,6 +86,7 @@ echo $OUTPUT->render_from_template('core_admin/tasklogs', (object) [
],
]);
// Output any matching logs.
$table = new \core_admin\task_log_table($filter, $result);
$table->baseurl = $pageurl;
$table->out(100, false);
+35 -9
View File
@@ -49,15 +49,28 @@
}}
<div class="form-item row" id="{{id}}">
<div class="form-label col-sm-3 text-sm-right">
<label {{#labelfor}}for="{{labelfor}}"{{/labelfor}}>
{{{title}}}
{{#override}}
<div class="form-overridden">{{override}}</div>
{{/override}}
{{#warning}}
<div class="form-warning">{{warning}}</div>
{{/warning}}
</label>
{{#customcontrol}}
<p {{#labelfor}}id="{{labelfor}}_label"{{/labelfor}}>
{{{title}}}
{{#override}}
<div class="alert alert-info">{{override}}</div>
{{/override}}
{{#warning}}
<div class="alert alert-warning">{{warning}}</div>
{{/warning}}
</p>
{{/customcontrol}}
{{^customcontrol}}
<label {{#labelfor}}for="{{labelfor}}"{{/labelfor}}>
{{{title}}}
{{#override}}
<div class="alert alert-info">{{override}}</div>
{{/override}}
{{#warning}}
<div class="alert alert-warning">{{warning}}</div>
{{/warning}}
</label>
{{/customcontrol}}
<span class="form-shortname d-block small text-muted">{{{name}}}</span>
</div>
<div class="form-setting col-sm-9">
@@ -72,3 +85,16 @@
{{#dependenton}}<div class="form-dependenton mb-4 text-muted">{{{.}}}</div>{{/dependenton}}
</div>
</div>
{{#customcontrol}}
{{#js}}
require(['jquery'], function($) {
$('#{{id}}_label').css('cursor', 'default');
$('#{{id}}_label').click(function() {
$('#{{id}}')
.find('button, a, input:not([type="hidden"]), select, textarea, [tabindex]')
.filter(':not([disabled]):not([tabindex="0"]):not([tabindex="-1"])')
.first().focus();
});
});
{{/js}}
{{/customcontrol}}
@@ -0,0 +1,50 @@
{{!
This file is part of Moodle - http://moodle.org/
Moodle is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Moodle is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Moodle. If not, see <http://www.gnu.org/licenses/>.
}}
{{!
@template core_admin/setting_configfilesize
Admin file size setting template.
Context variables required for this template:
* name - form element name
* options - list of options for units containing name, value, selected
* value - yes
* id - element id
Example context (json):
{
"name": "test",
"value": "5",
"id": "test0",
"options": [ { "name": "KB", "value": "1024", "selected": true } ]
}
}}
{{!
Setting configfilesize.
}}
<div class="form-filesize defaultsnext">
<div class="form-inline">
<input type="text" size="5" id="{{id}}v" name="{{name}}[v]" value="{{value}}" class="form-control text-ltr">
<label class="sr-only" for="{{id}}u">{{#str}}filesizeunits, admin{{/str}}</label>
<select id="{{id}}u" name="{{name}}[u]" class="form-control custom-select">
{{#options}}
<option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
{{/options}}
</select>
</div>
</div>
@@ -24,15 +24,30 @@
* size - form element size
* value - form element value
* id - element id
* forced - has value been defined in config.php
Example context (json):
{
"name": "test",
"id": "test0",
"size": "8",
"value": "secret"
"value": "secret",
"forced": false
}
}}
{{#forced}}
<div class="form-password">
<input type="text"
name = "{{ name }}"
id="{{ id }}"
value="********"
size="{{ size }}"
class="form-control"
disabled
>
</div>
{{/forced}}
{{^forced}}
<div class="form-password">
<span data-passwordunmask="wrapper" data-passwordunmaskid="{{ id }}">
<span data-passwordunmask="editor">
@@ -61,3 +76,4 @@ require(['core_form/passwordunmask'], function(PasswordUnmask) {
new PasswordUnmask("{{ id }}");
});
{{/js}}
{{/forced}}
@@ -47,7 +47,7 @@
<h3 class="adminpagetitle"><a href="{{url}}">{{{title}}}</a></h3>
<ul class="adminpagepath" aria-label="{{#str}} pagepath, core {{/str}}">
{{#path}}
<li>{{.}}</li>
<li class="small text-muted">{{.}}</li>
{{/path}}
</ul>
<fieldset class="adminsettings">
+1 -1
View File
@@ -17,7 +17,7 @@
{{!
@template core_admin/tasklogs
Task Logs template.
This is the template for the search form which appears above the task logs report.
}}
<form class="form-inline" method="GET" action="{{{action}}}">
<label class="sr-only" for="tasklog-filter">{{#str}}filter{{/str}}</label>
+9 -3
View File
@@ -46,13 +46,14 @@ if ($data) {
$emailuser->email = $data->recipient;
$emailuser->id = -99;
$subject = get_string('testoutgoingmailconf_subject', 'admin', $SITE->fullname);
$subject = get_string('testoutgoingmailconf_subject', 'admin',
format_string($SITE->fullname, true, ['context' => context_system::instance()]));
$messagetext = get_string('testoutgoingmailconf_message', 'admin');
// Manage Moodle debugging options.
$debuglevel = $CFG->debug;
$debugdisplay = $CFG->debugdisplay;
$debugsmtp = $CFG->debugsmtp;
$debugsmtp = $CFG->debugsmtp ?? null; // This might not be set as it's optional.
$CFG->debugdisplay = true;
$CFG->debugsmtp = true;
$CFG->debug = 15;
@@ -66,7 +67,12 @@ if ($data) {
// Restore Moodle debugging options.
$CFG->debug = $debuglevel;
$CFG->debugdisplay = $debugdisplay;
$CFG->debugsmtp = $debugsmtp;
// Restore the debugsmtp config, if it was set originally.
unset($CFG->debugsmtp);
if (!is_null($debugsmtp)) {
$CFG->debugsmtp = $debugsmtp;
}
if ($success) {
$msgparams = new stdClass();
+2 -25
View File
@@ -48,13 +48,11 @@ class behat_admin extends behat_base {
* @param TableNode $table
*/
public function i_set_the_following_administration_settings_values(TableNode $table) {
if (!$data = $table->getRowsHash()) {
return;
}
foreach ($data as $label => $value) {
$this->execute('behat_navigation::i_select_from_flat_navigation_drawer', [get_string('administrationsite')]);
// Search by label.
@@ -76,38 +74,17 @@ class behat_admin extends behat_base {
"@id=//span[contains(normalize-space(.), $label)]/preceding-sibling::label[1]/@for]";
$fieldnode = $this->find('xpath', $fieldxpath, $exception);
$formfieldtypenode = $this->find('xpath', $fieldxpath .
"/ancestor::div[contains(concat(' ', @class, ' '), ' form-setting ')]" .
"/child::div[contains(concat(' ', @class, ' '), ' form-')]/child::*/parent::div");
} catch (ElementNotFoundException $e) {
// Multi element settings, interacting only the first one.
$fieldxpath = "//*[label[contains(., $label)]|span[contains(., $label)]]" .
"/ancestor::div[contains(concat(' ', normalize-space(@class), ' '), ' form-item ')]" .
"/descendant::div[contains(concat(' ', @class, ' '), ' form-group ')]" .
"/descendant::*[self::input | self::textarea | self::select]" .
"[not(./@type = 'submit' or ./@type = 'image' or ./@type = 'hidden')]";
$fieldnode = $this->find('xpath', $fieldxpath);
// It is the same one that contains the type.
$formfieldtypenode = $fieldnode;
}
// Getting the class which contains the field type.
$classes = explode(' ', $formfieldtypenode->getAttribute('class'));
$type = false;
foreach ($classes as $class) {
if (substr($class, 0, 5) == 'form-') {
$type = substr($class, 5);
}
}
// Instantiating the appropiate field type.
$field = behat_field_manager::get_field_instance($type, $fieldnode, $this->getSession());
$field->set_value($value);
$this->find_button(get_string('savechanges'))->press();
$this->execute('behat_forms::i_set_the_field_with_xpath_to', [$fieldxpath, $value]);
$this->execute("behat_general::i_click_on", [get_string('savechanges'), 'button']);
}
}
+39 -5
View File
@@ -6,11 +6,11 @@ Feature: An administrator can filter user accounts by role, cohort and other pro
Background:
Given the following "users" exist:
| username | firstname | lastname | email | auth | confirmed |
| user1 | User | One | one@example.com | manual | 0 |
| user2 | User | Two | two@example.com | ldap | 1 |
| user3 | User | Three | three@example.com | manual | 1 |
| user4 | User | Four | four@example.com | ldap | 0 |
| username | firstname | lastname | email | auth | confirmed | lastip | institution | department |
| user1 | User | One | one@example.com | manual | 0 | 127.0.1.1 | moodle | red |
| user2 | User | Two | two@example.com | ldap | 1 | 0.0.0.0 | moodle | blue |
| user3 | User | Three | three@example.com | manual | 1 | 0.0.0.0 | | |
| user4 | User | Four | four@example.com | ldap | 0 | 127.0.1.2 | | |
And the following "cohorts" exist:
| name | idnumber |
| Cohort 1 | CH1 |
@@ -82,3 +82,37 @@ Feature: An administrator can filter user accounts by role, cohort and other pro
And I should not see "User Two"
And I should not see "User Three"
And I should see "User Four"
Scenario: Filter user accounts by last IP address
When I set the following fields to these values:
| id_lastip | 127.0.1.1 |
And I press "Add filter"
Then I should see "User One"
And I should not see "User Two"
And I should not see "User Three"
And I should not see "User Four"
And I press "Remove all filters"
And I set the following fields to these values:
| id_lastip | 127.0.1.2 |
And I press "Add filter"
And I should not see "User One"
And I should not see "User Two"
And I should not see "User Three"
And I should see "User Four"
And I press "Remove all filters"
And I should see "User One"
And I should see "User Two"
And I should see "User Three"
And I should see "User Four"
Scenario: Filter users by institution and department
When I set the field "id_institution" to "moodle"
And I press "Add filter"
Then I should see "User One"
And I should see "User Two"
And I should not see "User Three"
And I should not see "User Four"
And I set the field "id_department" to "red"
And I press "Add filter"
And I should see "User One"
And I should not see "User Two"
@@ -0,0 +1,150 @@
@core @core_admin @javascript
Feature: An administrator can configure the available user list filters
In order to have all needed user filters instantly at hand
As an admin
I want to configure the filters which are shown as default
Scenario: Do not change the user filter default configuration
When I log in as "admin"
And I navigate to "Users > Accounts > Browse list of users" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should not see "Username" in the "New filter" "fieldset"
And I should not see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
And I navigate to "Users > Accounts > Bulk user actions" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should not see "Username" in the "New filter" "fieldset"
And I should not see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
Scenario: Change the user filter default configuration to something else
Given the following config values are set as admin:
| userfiltersdefault | realname,username,email |
And I log in as "admin"
And I navigate to "Users > Accounts > Browse list of users" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should see "Username" in the "New filter" "fieldset"
And I should see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
And I navigate to "Users > Accounts > Bulk user actions" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should see "Username" in the "New filter" "fieldset"
And I should see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
Scenario: Change the user filter default configuration to no filter at all
Given the following config values are set as admin:
| userfiltersdefault | |
And I log in as "admin"
And I navigate to "Users > Accounts > Browse list of users" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should not see "Username" in the "New filter" "fieldset"
And I should not see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
And I navigate to "Users > Accounts > Bulk user actions" in site administration
Then I should see "User full name"
And I should not see "Surname" in the "New filter" "fieldset"
And I should not see "Firstname" in the "New filter" "fieldset"
And I should not see "Username" in the "New filter" "fieldset"
And I should not see "Email address" in the "New filter" "fieldset"
And I should not see "City/town" in the "New filter" "fieldset"
And I should not see "Country" in the "New filter" "fieldset"
And I should not see "Confirmed" in the "New filter" "fieldset"
And I should not see "Suspended account" in the "New filter" "fieldset"
And I should not see "User profile fields" in the "New filter" "fieldset"
And I should not see "Course role" in the "New filter" "fieldset"
And I should not see "Enrolled in any course" in the "New filter" "fieldset"
And I should not see "System role" in the "New filter" "fieldset"
And I should not see "Cohort ID" in the "New filter" "fieldset"
And I should not see "First access" in the "New filter" "fieldset"
And I should not see "Last access" in the "New filter" "fieldset"
And I should not see "Last modified" in the "New filter" "fieldset"
And I should not see "Authentication" in the "New filter" "fieldset"
And I should not see "ID number" in the "New filter" "fieldset"
And I should not see "Last IP address" in the "New filter" "fieldset"
And I should not see "MNet ID provider" in the "New filter" "fieldset"
+1
View File
@@ -9,6 +9,7 @@ Feature: Manage tokens
| username | password | firstname | lastname |
| testuser | testuser | Joe | Bloggs |
| testuser2 | testuser2 | TestFirstname | TestLastname |
And I change window size to "small"
And I log in as "admin"
And I am on site homepage
+1 -3
View File
@@ -12,9 +12,7 @@
$PAGE->set_url('/admin/timezone.php');
$PAGE->set_context(context_system::instance());
require_login();
require_capability('moodle/site:config', context_system::instance());
require_admin();
$strtimezone = get_string("timezone");
$strsavechanges = get_string("savechanges");
+2 -1
View File
@@ -1 +1,2 @@
define(["jquery","core/str","core/modal_factory","core/notification"],function(a,b,c,d){return{loadInfo:function(e,f){var g=a('[data-model-log-id="'+e+'"]');b.get_string("loginfo","tool_analytics").then(function(b){var d=a("<ul>");return f.forEach(function(a){d.append("<li>"+a+"</li>")}),d.append("</ul>"),c.create({title:b,body:d.html(),large:!0},g)})["catch"](d.exception)}}});
define ("tool_analytics/log_info",["jquery","core/str","core/modal_factory","core/notification"],function(a,b,c,d){return{loadInfo:function loadInfo(e,f){var g=a("[data-model-log-id=\""+e+"\"]");b.get_string("loginfo","tool_analytics").then(function(b){var d=a("<ul>");f.forEach(function(a){d.append("<li>"+a+"</li>")});d.append("</ul>");return c.create({title:b,body:d.html(),large:!0},g)}).catch(d.exception)}}});
//# sourceMappingURL=log_info.min.js.map
@@ -0,0 +1 @@
{"version":3,"sources":["../src/log_info.js"],"names":["define","$","str","ModalFactory","Notification","loadInfo","id","info","link","get_string","then","langString","bodyInfo","forEach","item","append","create","title","body","html","large","catch","exception"],"mappings":"AAwBAA,OAAM,2BAAC,CAAC,QAAD,CAAW,UAAX,CAAuB,oBAAvB,CAA6C,mBAA7C,CAAD,CAAoE,SAASC,CAAT,CAAYC,CAAZ,CAAiBC,CAAjB,CAA+BC,CAA/B,CAA6C,CAEnH,MAAoD,CAShDC,QAAQ,CAAE,kBAASC,CAAT,CAAaC,CAAb,CAAmB,CAEzB,GAAIC,CAAAA,CAAI,CAAGP,CAAC,CAAC,wBAAyBK,CAAzB,CAA8B,KAA/B,CAAZ,CACAJ,CAAG,CAACO,UAAJ,CAAe,SAAf,CAA0B,gBAA1B,EAA4CC,IAA5C,CAAiD,SAASC,CAAT,CAAqB,CAElE,GAAIC,CAAAA,CAAQ,CAAGX,CAAC,CAAC,MAAD,CAAhB,CACAM,CAAI,CAACM,OAAL,CAAa,SAASC,CAAT,CAAe,CACxBF,CAAQ,CAACG,MAAT,CAAgB,OAASD,CAAT,CAAgB,OAAhC,CACH,CAFD,EAGAF,CAAQ,CAACG,MAAT,CAAgB,OAAhB,EAEA,MAAOZ,CAAAA,CAAY,CAACa,MAAb,CAAoB,CACvBC,KAAK,CAAEN,CADgB,CAEvBO,IAAI,CAAEN,CAAQ,CAACO,IAAT,EAFiB,CAGvBC,KAAK,GAHkB,CAApB,CAIJZ,CAJI,CAMV,CAdD,EAcGa,KAdH,CAcSjB,CAAY,CAACkB,SAdtB,CAeH,CA3B+C,CA6BvD,CA/BK,CAAN","sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle. If not, see <http://www.gnu.org/licenses/>.\n\n/**\n * Shows a dialogue with info about this logs.\n *\n * @module tool_analytics/log_info\n * @class log_info\n * @package tool_analytics\n * @copyright 2017 David Monllao {@link http://www.davidmonllao.com}\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\ndefine(['jquery', 'core/str', 'core/modal_factory', 'core/notification'], function($, str, ModalFactory, Notification) {\n\n return /** @alias module:tool_analytics/log_info */ {\n\n /**\n * Prepares a modal info for a log's results.\n *\n * @method loadInfo\n * @param {int} id\n * @param {string[]} info\n */\n loadInfo: function(id, info) {\n\n var link = $('[data-model-log-id=\"' + id + '\"]');\n str.get_string('loginfo', 'tool_analytics').then(function(langString) {\n\n var bodyInfo = $(\"<ul>\");\n info.forEach(function(item) {\n bodyInfo.append('<li>' + item + '</li>');\n });\n bodyInfo.append(\"</ul>\");\n\n return ModalFactory.create({\n title: langString,\n body: bodyInfo.html(),\n large: true,\n }, link);\n\n }).catch(Notification.exception);\n }\n };\n});\n"],"file":"log_info.min.js"}
+2 -1
View File
@@ -1 +1,2 @@
define(["jquery","core/str","core/log","core/notification","core/modal_factory","core/modal_events","core/templates"],function(a,b,c,d,e,f,g){var h={clear:{title:{key:"clearpredictions",component:"tool_analytics"},body:{key:"clearmodelpredictions",component:"tool_analytics"}},"delete":{title:{key:"delete",component:"tool_analytics"},body:{key:"deletemodelconfirmation",component:"tool_analytics"}}},i=function(b){var d=a(b).closest("[data-model-name]");return d.length?d.attr("data-model-name"):(c.error("Unexpected DOM error - unable to obtain the model name"),"")};return{confirmAction:function(g,j){a('[data-action-id="'+g+'"]').on("click",function(g){g.preventDefault();var k=a(g.currentTarget);if("undefined"==typeof h[j])return void c.error('Action "'+j+'" is not allowed.');var l=[h[j].title,h[j].body];l[1].param=i(k);var m=b.get_strings(l),n=e.create({type:e.types.SAVE_CANCEL});a.when(m,n).then(function(a,b){return b.setTitle(a[0]),b.setBody(a[1]),b.setSaveButtonText(a[0]),b.getRoot().on(f.save,function(){window.location.href=k.attr("href")}),b.show(),b}).fail(d.exception)})},selectEvaluationOptions:function(c,h,i){a('[data-action-id="'+c+'"]').on("click",function(c){c.preventDefault();var j=a(c.currentTarget),k=b.get_strings([{key:"evaluatemodel",component:"tool_analytics"},{key:"evaluate",component:"tool_analytics"}]),l=e.create({type:e.types.SAVE_CANCEL}),m=g.render("tool_analytics/evaluation_options",{trainedexternally:h,timesplittingmethods:i});a.when(k,l).then(function(b,c){return c.getRoot().on(f.hidden,c.destroy.bind(c)),c.setTitle(b[0]),c.setSaveButtonText(b[1]),c.setBody(m),c.getRoot().on(f.save,function(){var b=a("input[name='evaluationmode']:checked").val();"trainedmodel"==b&&j.attr("href",j.attr("href")+"&mode=trainedmodel");var c=a("#id-evaluation-timesplitting").val();j.attr("href",j.attr("href")+"&timesplitting="+c),window.location.href=j.attr("href")}),c.show(),c}).fail(d.exception)})},selectExportOptions:function(c,h){a('[data-action-id="'+c+'"]').on("click",function(c){c.preventDefault();var i=a(c.currentTarget);if(!h)return i.attr("href",i.attr("href")+"&action=exportmodel&includeweights=0"),void(window.location.href=i.attr("href"));var j=b.get_strings([{key:"export",component:"tool_analytics"}]),k=e.create({type:e.types.SAVE_CANCEL}),l=g.render("tool_analytics/export_options",{});a.when(j,k).then(function(b,c){return c.getRoot().on(f.hidden,c.destroy.bind(c)),c.setTitle(b[0]),c.setSaveButtonText(b[0]),c.setBody(l),c.getRoot().on(f.save,function(){var b=a("input[name='exportoption']:checked").val();"exportdata"==b?i.attr("href",i.attr("href")+"&action=exportdata"):(i.attr("href",i.attr("href")+"&action=exportmodel"),a("#id-includeweights").is(":checked")?i.attr("href",i.attr("href")+"&includeweights=1"):i.attr("href",i.attr("href")+"&includeweights=0")),window.location.href=i.attr("href")}),c.show(),c}).fail(d.exception)})}}});
define ("tool_analytics/model",["jquery","core/str","core/log","core/notification","core/modal_factory","core/modal_events","core/templates"],function(b,c,d,e,f,g,h){var i={clear:{title:{key:"clearpredictions",component:"tool_analytics"},body:{key:"clearmodelpredictions",component:"tool_analytics"}},delete:{title:{key:"delete",component:"tool_analytics"},body:{key:"deletemodelconfirmation",component:"tool_analytics"}}},j=function(a){var c=b(a).closest("[data-model-name]");if(c.length){return c.attr("data-model-name")}else{d.error("Unexpected DOM error - unable to obtain the model name");return""}};return{confirmAction:function confirmAction(a,h){b("[data-action-id=\""+a+"\"]").on("click",function(k){k.preventDefault();var l=b(k.currentTarget);if("undefined"==typeof i[h]){d.error("Action \""+h+"\" is not allowed.");return}var a=[i[h].title,i[h].body];a[1].param=j(l);var m=c.get_strings(a),n=f.create({type:f.types.SAVE_CANCEL});b.when(m,n).then(function(a,b){b.setTitle(a[0]);b.setBody(a[1]);b.setSaveButtonText(a[0]);b.getRoot().on(g.save,function(){window.location.href=l.attr("href")});b.show();return b}).fail(e.exception)})},selectEvaluationOptions:function selectEvaluationOptions(a,d){b("[data-action-id=\""+a+"\"]").on("click",function(i){i.preventDefault();var j=b(i.currentTarget),a=b(this).attr("data-timesplitting-methods"),k=c.get_strings([{key:"evaluatemodel",component:"tool_analytics"},{key:"evaluate",component:"tool_analytics"}]),l=f.create({type:f.types.SAVE_CANCEL}),m=h.render("tool_analytics/evaluation_options",{trainedexternally:d,timesplittingmethods:JSON.parse(a)});b.when(k,l).then(function(a,c){c.getRoot().on(g.hidden,c.destroy.bind(c));c.setTitle(a[0]);c.setSaveButtonText(a[1]);c.setBody(m);c.getRoot().on(g.save,function(){var a=b("input[name='evaluationmode']:checked").val();if("trainedmodel"==a){j.attr("href",j.attr("href")+"&mode=trainedmodel")}var c=b("#id-evaluation-timesplitting").val();j.attr("href",j.attr("href")+"&timesplitting="+c);window.location.href=j.attr("href")});c.show();return c}).fail(e.exception)})},selectExportOptions:function selectExportOptions(a,d){b("[data-action-id=\""+a+"\"]").on("click",function(i){i.preventDefault();var j=b(i.currentTarget);if(!d){j.attr("href",j.attr("href")+"&action=exportmodel&includeweights=0");window.location.href=j.attr("href");return}var a=c.get_strings([{key:"export",component:"tool_analytics"}]),k=f.create({type:f.types.SAVE_CANCEL}),l=h.render("tool_analytics/export_options",{});b.when(a,k).then(function(a,c){c.getRoot().on(g.hidden,c.destroy.bind(c));c.setTitle(a[0]);c.setSaveButtonText(a[0]);c.setBody(l);c.getRoot().on(g.save,function(){var a=b("input[name='exportoption']:checked").val();if("exportdata"==a){j.attr("href",j.attr("href")+"&action=exportdata")}else{j.attr("href",j.attr("href")+"&action=exportmodel");if(b("#id-includeweights").is(":checked")){j.attr("href",j.attr("href")+"&includeweights=1")}else{j.attr("href",j.attr("href")+"&includeweights=0")}}window.location.href=j.attr("href")});c.show();return c}).fail(e.exception)})}}});
//# sourceMappingURL=model.min.js.map
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
define ("tool_analytics/potential-contexts",["jquery","core/ajax"],function(a,b){return{processResults:function processResults(b,c){var d=[];if(a.isArray(c)){a.each(c,function(a,b){d.push({value:b.id,label:b.name})});return d}else{return c}},transport:function transport(c,d,e,f){var g,h=a(c).attr("modelid")||null;g=b.call([{methodname:"tool_analytics_potential_contexts",args:{query:d,modelid:h}}]);g[0].then(e).fail(f)}}});
//# sourceMappingURL=potential-contexts.min.js.map
@@ -0,0 +1 @@
{"version":3,"sources":["../src/potential-contexts.js"],"names":["define","$","Ajax","processResults","selector","results","contexts","isArray","each","index","context","push","value","id","label","name","transport","query","success","failure","promise","modelid","attr","call","methodname","args","then","fail"],"mappings":"AAyBAA,OAAM,qCAAC,CAAC,QAAD,CAAW,WAAX,CAAD,CAA0B,SAASC,CAAT,CAAYC,CAAZ,CAAkB,CAE9C,MAA8D,CAE1DC,cAAc,CAAE,wBAASC,CAAT,CAAmBC,CAAnB,CAA4B,CACxC,GAAIC,CAAAA,CAAQ,CAAG,EAAf,CACA,GAAIL,CAAC,CAACM,OAAF,CAAUF,CAAV,CAAJ,CAAwB,CACpBJ,CAAC,CAACO,IAAF,CAAOH,CAAP,CAAgB,SAASI,CAAT,CAAgBC,CAAhB,CAAyB,CACrCJ,CAAQ,CAACK,IAAT,CAAc,CACVC,KAAK,CAAEF,CAAO,CAACG,EADL,CAEVC,KAAK,CAAEJ,CAAO,CAACK,IAFL,CAAd,CAIH,CALD,EAMA,MAAOT,CAAAA,CAEV,CATD,IASO,CACH,MAAOD,CAAAA,CACV,CACJ,CAhByD,CAkB1DW,SAAS,CAAE,mBAASZ,CAAT,CAAmBa,CAAnB,CAA0BC,CAA1B,CAAmCC,CAAnC,CAA4C,IAC/CC,CAAAA,CAD+C,CAG/CC,CAAO,CAAGpB,CAAC,CAACG,CAAD,CAAD,CAAYkB,IAAZ,CAAiB,SAAjB,GAA+B,IAHM,CAInDF,CAAO,CAAGlB,CAAI,CAACqB,IAAL,CAAU,CAAC,CACjBC,UAAU,CAAE,mCADK,CAEjBC,IAAI,CAAE,CACFR,KAAK,CAAEA,CADL,CAEFI,OAAO,CAAEA,CAFP,CAFW,CAAD,CAAV,CAAV,CAQAD,CAAO,CAAC,CAAD,CAAP,CAAWM,IAAX,CAAgBR,CAAhB,EAAyBS,IAAzB,CAA8BR,CAA9B,CACH,CA/ByD,CAmCjE,CArCK,CAAN","sourcesContent":["// This file is part of Moodle - http://moodle.org/\n//\n// Moodle is free software: you can redistribute it and/or modify\n// it under the terms of the GNU General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// Moodle is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU General Public License for more details.\n//\n// You should have received a copy of the GNU General Public License\n// along with Moodle. If not, see <http://www.gnu.org/licenses/>.\n\n/**\n * Potential contexts selector module.\n *\n * @module tool_analytics/potential-contexts\n * @class potential-contexts\n * @package tool_analytics\n * @copyright 2019 David Monllao\n * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later\n */\n\ndefine(['jquery', 'core/ajax'], function($, Ajax) {\n\n return /** @alias module:tool_analytics/potential-contexts */ {\n\n processResults: function(selector, results) {\n var contexts = [];\n if ($.isArray(results)) {\n $.each(results, function(index, context) {\n contexts.push({\n value: context.id,\n label: context.name\n });\n });\n return contexts;\n\n } else {\n return results;\n }\n },\n\n transport: function(selector, query, success, failure) {\n var promise;\n\n let modelid = $(selector).attr('modelid') || null;\n promise = Ajax.call([{\n methodname: 'tool_analytics_potential_contexts',\n args: {\n query: query,\n modelid: modelid\n }\n }]);\n\n promise[0].then(success).fail(failure);\n }\n\n };\n\n});\n"],"file":"potential-contexts.min.js"}
+4 -2
View File
@@ -114,12 +114,14 @@ define(['jquery', 'core/str', 'core/log', 'core/notification', 'core/modal_facto
* @param {String} actionId
* @param {Boolean} trainedOnlyExternally
*/
selectEvaluationOptions: function(actionId, trainedOnlyExternally, timeSplittingMethods) {
selectEvaluationOptions: function(actionId, trainedOnlyExternally) {
$('[data-action-id="' + actionId + '"]').on('click', function(ev) {
ev.preventDefault();
var a = $(ev.currentTarget);
var timeSplittingMethods = $(this).attr('data-timesplitting-methods');
var stringsPromise = Str.get_strings([
{
key: 'evaluatemodel',
@@ -132,7 +134,7 @@ define(['jquery', 'core/str', 'core/log', 'core/notification', 'core/modal_facto
var modalPromise = ModalFactory.create({type: ModalFactory.types.SAVE_CANCEL});
var bodyPromise = Templates.render('tool_analytics/evaluation_options', {
trainedexternally: trainedOnlyExternally,
timesplittingmethods: timeSplittingMethods
timesplittingmethods: JSON.parse(timeSplittingMethods)
});
$.when(stringsPromise, modalPromise).then(function(strings, modal) {
@@ -0,0 +1,63 @@
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Potential contexts selector module.
*
* @module tool_analytics/potential-contexts
* @class potential-contexts
* @package tool_analytics
* @copyright 2019 David Monllao
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define(['jquery', 'core/ajax'], function($, Ajax) {
return /** @alias module:tool_analytics/potential-contexts */ {
processResults: function(selector, results) {
var contexts = [];
if ($.isArray(results)) {
$.each(results, function(index, context) {
contexts.push({
value: context.id,
label: context.name
});
});
return contexts;
} else {
return results;
}
},
transport: function(selector, query, success, failure) {
var promise;
let modelid = $(selector).attr('modelid') || null;
promise = Ajax.call([{
methodname: 'tool_analytics_potential_contexts',
args: {
query: query,
modelid: modelid
}
}]);
promise[0].then(success).fail(failure);
}
};
});
+113
View File
@@ -0,0 +1,113 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This is the external API for this component.
*
* @package tool_analytics
* @copyright 2019 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_analytics;
defined('MOODLE_INTERNAL') || die();
require_once("$CFG->libdir/externallib.php");
use external_api;
use external_function_parameters;
use external_value;
use external_single_structure;
use external_multiple_structure;
/**
* This is the external API for this component.
*
* @copyright 2019 David Monllao {@link http://www.davidmonllao.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class external extends external_api {
const MAX_CONTEXTS_RETURNED = 100;
/**
* potential_contexts parameters.
*
* @since Moodle 3.8
* @return external_function_parameters
*/
public static function potential_contexts_parameters() {
return new external_function_parameters(
array(
'query' => new external_value(PARAM_NOTAGS, 'The model id', VALUE_DEFAULT),
'modelid' => new external_value(PARAM_INT, 'The model id', VALUE_DEFAULT)
)
);
}
/**
* Return the contexts that match the provided query.
*
* @since Moodle 3.8
* @param string|null $query
* @param int|null $modelid
* @return array an array of contexts
*/
public static function potential_contexts(?string $query = null, ?int $modelid = null) {
$params = self::validate_parameters(self::potential_contexts_parameters(), ['modelid' => $modelid, 'query' => $query]);
\core_analytics\manager::check_can_manage_models();
if ($params['modelid']) {
$model = new \core_analytics\model($params['modelid']);
$contexts = ($model->get_analyser(['notimesplitting' => true]))::potential_context_restrictions($params['query']);
} else {
$contexts = \core_analytics\manager::get_potential_context_restrictions(null, $params['query']);
}
$contextoptions = [];
$i = 0;
foreach ($contexts as $contextid => $contextname) {
if ($i === self::MAX_CONTEXTS_RETURNED) {
// Limited to MAX_CONTEXTS_RETURNED items.
break;
}
$contextoptions[] = ['id' => $contextid, 'name' => $contextname];
$i++;
}
return $contextoptions;
}
/**
* potential_contexts return
*
* @since Moodle 3.8
* @return external_description
*/
public static function potential_contexts_returns() {
return new external_multiple_structure(
new external_single_structure([
'id' => new external_value(PARAM_INT, 'ID of the context'),
'name' => new external_value(PARAM_NOTAGS, 'The context name')
])
);
}
}
@@ -65,6 +65,15 @@ class edit_model extends \moodleform {
$mform->addRule('target', get_string('required'), 'required', null, 'client');
}
if (!empty($this->_customdata['targetname']) && !empty($this->_customdata['targetclass'])) {
$mform->addElement('static', 'targetname', get_string('target', 'tool_analytics'), $this->_customdata['targetname']);
$mform->addElement('hidden', 'target',
\tool_analytics\output\helper::class_to_option($this->_customdata['targetclass']));
// We won't update the model's target so no worries about its format (we can't use PARAM_ALPHANUMEXT
// because of class_to_option).
$mform->setType('target', PARAM_TEXT);
}
// Indicators.
if (!$this->_customdata['staticmodel']) {
$indicators = array();
@@ -81,6 +90,13 @@ class edit_model extends \moodleform {
}
// Time-splitting methods.
if (!empty($this->_customdata['invalidcurrenttimesplitting'])) {
$mform->addElement('html', $OUTPUT->notification(
get_string('invalidcurrenttimesplitting', 'tool_analytics'),
\core\output\notification::NOTIFY_WARNING)
);
}
$timesplittings = array('' => '');
foreach ($this->_customdata['timesplittings'] as $classname => $timesplitting) {
$optionname = \tool_analytics\output\helper::class_to_option($classname);
@@ -89,6 +105,28 @@ class edit_model extends \moodleform {
$mform->addElement('select', 'timesplitting', get_string('timesplittingmethod', 'analytics'), $timesplittings);
$mform->addHelpButton('timesplitting', 'timesplittingmethod', 'analytics');
// Contexts restriction.
if (!empty($this->_customdata['supportscontexts'])) {
$options = [
'ajax' => 'tool_analytics/potential-contexts',
'multiple' => true,
'noselectionstring' => get_string('all')
];
if (!empty($this->_customdata['id'])) {
$options['modelid'] = $this->_customdata['id'];
$contexts = $this->load_current_contexts();
} else {
// No need to preload any selected contexts.
$contexts = [];
}
$mform->addElement('autocomplete', 'contexts', get_string('contexts', 'tool_analytics'), $contexts, $options);
$mform->setType('contexts', PARAM_INT);
$mform->addHelpButton('contexts', 'contexts', 'tool_analytics');
}
// Predictions processor.
if (!$this->_customdata['staticmodel']) {
$defaultprocessor = \core_analytics\manager::get_predictions_processor_name(
@@ -130,11 +168,35 @@ class edit_model extends \moodleform {
public function validation($data, $files) {
$errors = parent::validation($data, $files);
$targetclass = \tool_analytics\output\helper::option_to_class($data['target']);
$target = \core_analytics\manager::get_target($targetclass);
if (!empty($data['timesplitting'])) {
$realtimesplitting = \tool_analytics\output\helper::option_to_class($data['timesplitting']);
if (\core_analytics\manager::is_valid($realtimesplitting, '\core_analytics\local\time_splitting\base') === false) {
$timesplittingclass = \tool_analytics\output\helper::option_to_class($data['timesplitting']);
if (\core_analytics\manager::is_valid($timesplittingclass, '\core_analytics\local\time_splitting\base') === false) {
$errors['timesplitting'] = get_string('errorinvalidtimesplitting', 'analytics');
}
$timesplitting = \core_analytics\manager::get_time_splitting($timesplittingclass);
if (!$target->can_use_timesplitting($timesplitting)) {
$errors['timesplitting'] = get_string('invalidtimesplitting', 'tool_analytics');
}
}
if (!empty($data['contexts'])) {
$analyserclass = $target->get_analyser_class();
if (!$potentialcontexts = $analyserclass::potential_context_restrictions()) {
$errors['contexts'] = get_string('errornocontextrestrictions', 'analytics');
} else {
// Flip the contexts array so we can just diff by key.
$selectedcontexts = array_flip($data['contexts']);
$invalidcontexts = array_diff_key($selectedcontexts, $potentialcontexts);
if (!empty($invalidcontexts)) {
$errors['contexts'] = get_string('errorinvalidcontexts', 'analytics');
}
}
}
if (!$this->_customdata['staticmodel']) {
@@ -156,4 +218,18 @@ class edit_model extends \moodleform {
return $errors;
}
/**
* Load the currently selected context options.
*
* @return array
*/
protected function load_current_contexts() {
$contexts = [];
foreach ($this->_customdata['contexts'] as $context) {
$contexts[$context->id] = $context->get_context_name(true, true);
}
return $contexts;
}
}

Some files were not shown because too many files have changed in this diff Show More