Compare commits

...

2467 Commits

Author SHA1 Message Date
Dan Poltawski fc1ef59fbe Moodle release 3.1beta 2016-05-03 20:55:03 +01:00
Dan Poltawski 1466a40c9f Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-05-03 20:55:00 +01:00
Eloy Lafuente (stronk7) 12c52b9140 Merge branch 'MDL-54032-master' of git://github.com/jleyva/moodle 2016-05-03 18:02:01 +02:00
Dan Poltawski 8b320df059 Merge branch 'wip-mdl-53601' of https://github.com/rajeshtaneja/moodle 2016-05-03 14:42:44 +01:00
Dan Poltawski 9711647682 Merge branch 'wip-mdl-53980' of https://github.com/rajeshtaneja/moodle 2016-05-03 14:39:18 +01:00
Juan Leyva 7c357047cc MDL-54032 webservice: Fix plugin functions not using services 2016-05-03 13:00:13 +02:00
Juan Leyva ee7295eef8 MDL-54032 webservice: Use services for core functions
Include core functions into the mobile service using the services
attribute for external functions
2016-05-03 13:00:13 +02:00
Rajesh Taneja 8ade0df755 MDL-53601 behat: Fixed wrong behat steps 2016-05-03 17:26:31 +08:00
Rajesh Taneja e2ceebb766 MDL-53980 behat: Use Create new account button
New Account link has been removed, use
Create new account button
2016-05-03 17:22:23 +08:00
Dan Poltawski 5928e0eac3 Merge branch 'wip-MDL-53402-master-v2' of git://github.com/abgreeve/moodle 2016-05-03 09:13:21 +01:00
Dan Poltawski ed3a47aad1 MDL-54008 tests: clarify comment in tz test 2016-05-03 09:08:27 +01:00
Dan Poltawski ef55f150e1 Merge branch 'MDL-54008_master-normalise' of git://github.com/dmonllao/moodle 2016-05-03 08:56:58 +01:00
Andrew Nicols d0ec347a76 Merge branch 'MDL-53982-master' of https://github.com/FMCorz/moodle 2016-05-03 14:26:50 +08:00
Adrian Greeve 4937a0616f MDL-53402 mod_data: field values of 0 are now displayed. 2016-05-03 14:22:16 +08:00
David Monllao 143f410a2f MDL-54008 tz: Unexisting tz with decimals fallback to rounded down integer 2016-05-03 14:03:09 +08:00
David Monllao bfb122a10a Merge branch 'wip-MDL-53402-master' of git://github.com/abgreeve/moodle 2016-05-03 13:02:15 +08:00
Adrian Greeve 9b5cf165b4 MDL-53402 mod_data: Added custom validation code for data fields.
Added custom validation to radiobutton, menu, and checkbox.
2016-05-03 12:48:00 +08:00
David Monllao becea83edc Merge branch 'MDL-53899-master-pluginperm' of git://github.com/mudrd8mz/moodle 2016-05-03 10:28:33 +08:00
David Monllao ff36ef7100 Merge branch 'MDL-51142-master' of git://github.com/damyon/moodle 2016-05-03 09:57:40 +08:00
David Monllao c6d1eb5f51 Merge branch 'MDL-53925-master' of https://github.com/StudiUM/moodle 2016-05-03 09:54:59 +08:00
Andrew Nicols 614f7d955f Merge branch 'wip-mdl-54000-fix' of https://github.com/rajeshtaneja/moodle 2016-05-03 09:41:30 +08:00
Rajesh Taneja 5bd7abb498 MDL-54000 webservices: removed core_user_get_users_by_id
core_user_get_users_by_id is deprecated, hence
removed it from the list of mobile web services
2016-05-03 09:18:29 +08:00
Andrew Nicols 186417cd03 Merge branch 'wip-mdl-54000' of https://github.com/rajeshtaneja/moodle 2016-05-03 08:57:53 +08:00
Dan Poltawski bda981792a Merge branch 'wip-MDL-53402-master' of git://github.com/abgreeve/moodle 2016-05-02 17:06:26 +01:00
Dan Poltawski 8adf0454c0 Merge branch 'MDL-54019_master' of git://github.com/markn86/moodle 2016-05-02 16:56:56 +01:00
Serge Gauthier cb22606ce7 MDL-53925 competency: Plan and template descriptions are not displayed 2016-05-02 10:22:13 -04:00
Mark Nelson e45aac5f8e MDL-54019 core_behat: fixed typo 2016-05-02 18:09:39 +08:00
Dan Poltawski c2e07809e5 Merge branch 'wip_MDL-53033_master' of git://github.com/gjb2048/moodle 2016-05-02 10:17:12 +01:00
Dan Poltawski 1019a8f1ca Merge branch 'MDL-53904-master' of git://github.com/marinaglancy/moodle 2016-05-02 10:16:27 +01:00
Frederic Massart 60011d9a8a MDL-53982 competency: Javascript error due to string injection 2016-05-02 16:59:09 +08:00
Dan Poltawski 3b846632d1 Merge branch 'MDL-54008_master' of git://github.com/dmonllao/moodle 2016-05-02 09:52:16 +01:00
Damyon Wiese c78e567c5a MDL-51142 assign: Fix for group assignments with NEW status 2016-05-02 16:41:10 +08:00
Clement Smith 232b26f021 MDL-51142 mod/assign: Fix erroneous submission status display
This prevents display of submission time/date when the assignment
submission record is in a new state. It also keeps the display of
overdue assignments identical for those students who have viewed
the assignment yet not submitted, for those students who have
not viewed the assignment, and for those students who have not
viewed the assignment yet the instructor has accessed the grading
page.
2016-05-02 16:36:39 +08:00
David Monllao 71c0a5745c Merge branch 'wip-MDL-53601-master' of git://github.com/abgreeve/moodle 2016-05-02 16:17:48 +08:00
Adrian Greeve 1beb95af48 MDL-53601 mod_assign: Behat test for group feedback. 2016-05-02 15:54:53 +08:00
Adrian Greeve 181c20bc52 MDL-53601 mod_assign: Feedback files are sent to all group members. 2016-05-02 15:54:53 +08:00
David Monllao 3ec1965570 Merge branch 'MDL-53901-master' of git://github.com/damyon/moodle 2016-05-02 15:53:57 +08:00
David Monllao d28f187c6f Merge branch 'MDL-53635-master' of git://github.com/jleyva/moodle 2016-05-02 15:38:11 +08:00
Juan Leyva 6d782e3383 MDL-53635 message_airnotifier: Remove tags from notifications 2016-05-02 09:32:26 +02:00
David Monllao dd215cb1a3 MDL-54008 timezone: Updating references to Caracas tz.
I've removed Caracas direct references because it would fail on
some systems, it would depend on how updated is the olson version
PHP is using.
2016-05-02 15:08:54 +08:00
David Monllao 2df5ede635 Merge branch 'MDL-54006-master' of git://github.com/lameze/moodle 2016-05-02 14:20:11 +08:00
Rajesh Taneja 5041600d53 MDL-54000 mod_assign: core_user_get_users_by_field be accessible by ajax
To display user information on new assignment UI
core_user_get_users_by_field should be accessible
by ajax
2016-05-02 14:16:29 +08:00
Andrew Nicols 5ba312bf5b Merge branch 'MDL-53920_master' of git://github.com/markn86/moodle 2016-05-02 13:43:59 +08:00
Adrian Greeve 3829d1e2c8 MDL-53402 mod_data: Behat test for entering zero in required fields. 2016-05-02 13:24:01 +08:00
Adrian Greeve 8611d1dfc7 MDL-53402 mod_data: Required fields can contain 0.
The number and text field would not accept 0 as a
valid response.
2016-05-02 13:24:01 +08:00
Andrew Nicols b9b51b210b Merge branch 'MDL-53836-master' of git://github.com/ryanwyllie/moodle 2016-05-02 13:18:55 +08:00
Andrew Nicols 7b9cf51ad2 Merge branch 'MDL-53982-master' of git://github.com/FMCorz/moodle 2016-05-02 13:04:20 +08:00
Frederic Massart ba7f6eeaee MDL-53982 competency: Javascript error due to string injection 2016-05-02 12:57:03 +08:00
Mark Nelson 02113beb10 MDL-53920 cohort: notify competencies on cohort deletion 2016-05-02 12:49:11 +08:00
Simey Lameze 0de3caf616 MDL-54006 tool_uploaduser: check validation result before display warning 2016-05-02 11:45:59 +08:00
Skylar Kelty f66f7b89ec MDL-53836 mod_assign: Don't escape theme's larrow/rarrow 2016-05-02 02:55:27 +00:00
Damyon Wiese 9daa27426f MDL-53901 login: Redirect to https if loginhttps is enabled
This just prevents a double redirect.
2016-05-02 10:53:07 +08:00
David Monllao 74995620ca Merge branch 'MDL-53996-master' of git://github.com/junpataleta/moodle 2016-05-02 10:51:59 +08:00
David Monllao f74e3ace69 Merge branch 'MDL-53980-master-enfix' of git://github.com/mudrd8mz/moodle 2016-05-02 10:46:50 +08:00
David Monllao b4dfe61bdb Merge branch 'MDL-53877-master' of git://github.com/junpataleta/moodle 2016-05-02 10:22:25 +08:00
David Monllao 9fdcce1680 Merge branch 'MDL-53967-master' of https://github.com/sk-unikent/moodle 2016-05-02 10:15:26 +08:00
David Monllao 700f503171 Merge branch 'MDL-53994' of git://github.com/stronk7/moodle 2016-05-02 10:04:36 +08:00
Serge Gauthier 3cd9461e77 MDL-53877 competency: Help and better validation text for evidence URL 2016-05-02 10:01:24 +08:00
David Monllao 3166be0831 Merge branch 'MDL-53917-master' of git://github.com/junpataleta/moodle 2016-05-02 10:00:29 +08:00
David Monllao a43c1ca7d4 Merge branch 'MDL-53918-master' of git://github.com/junpataleta/moodle 2016-05-02 09:54:52 +08:00
Jun Pataleta 12e649e228 MDL-53996 block_lp: Check user login before fetching block contents 2016-05-02 09:40:06 +08:00
AMOS bot 903559f682 Automatically generated installer lang files 2016-05-02 00:04:09 +08:00
Eloy Lafuente (stronk7) b22692d740 Merge branch 'MDL-53955-master' of git://github.com/junpataleta/moodle 2016-04-30 09:39:16 +02:00
Eloy Lafuente (stronk7) 27d2f549d0 MDL-53994 block_feedback: Add missing include
Also, a little scenario has been added to have the behavior
covered and prevent this to happen again.
2016-04-30 07:28:18 +02:00
AMOS bot 31df9f6bfa Automatically generated installer lang files 2016-04-30 00:06:42 +08:00
Dan Poltawski 3219a4535f on-demand release 3.1dev+ 2016-04-29 12:27:28 +01:00
Dan Poltawski 387caf046b NOBUG: Fixed file access permissions 2016-04-29 12:27:27 +01:00
David Monllao 3496258903 Merge branch 'MDL-53937-master' of git://github.com/FMCorz/moodle 2016-04-29 12:19:43 +01:00
Frederic Massart 42c28b0874 MDL-53937 core_competency: False negative with duedate on plan reopen 2016-04-29 12:19:43 +01:00
Dan Poltawski 02f504729a MDL-52154 lti: fix string errors
Thanks to Helen
2016-04-29 12:19:42 +01:00
David Monllao d4a41aa252 Merge branch 'MDL-53943-master' of git://github.com/junpataleta/moodle
Conflicts:
	admin/tool/cohortroles/settings.php
2016-04-29 12:19:39 +01:00
Dan Poltawski f6ab2b87e6 Merge branch 'MDL-53879-master' of git://github.com/FMCorz/moodle 2016-04-29 12:18:05 +01:00
Dan Poltawski 89ef883129 Merge branch 'MDL-53716-master' of git://github.com/FMCorz/moodle 2016-04-29 12:18:04 +01:00
Jun Pataleta 0bb7552429 MDL-53494 tool_lp: Set correct competency and user ID attributes
Sets the correct competency and user ID data attributes for the list of
user competencies in the plan.
2016-04-29 12:18:04 +01:00
Eloy Lafuente (stronk7) eb98b1395d Merge branch 'wip-MDL-53638-fix' of https://github.com/marinaglancy/moodle 2016-04-29 12:18:03 +01:00
David Monllao faeca20d43 MDL-49414 externallib: Cleaning tabs 2016-04-29 12:18:02 +01:00
Marina Glancy bc73c64071 MDL-53638 mod_feedback: fix to responsetime in non-anon answer 2016-04-29 12:18:02 +01:00
David Monllao 537e08ac03 MDL-49414 user: Fixing unmanaged conflict 2016-04-29 12:18:01 +01:00
Andrew Nicols 3dca0b120a Merge branch 'MDL-37753-feedback-name' of https://github.com/brendanheywood/moodle 2016-04-29 12:18:00 +01:00
David Monllao 7cbb29e264 Merge branch 'MDL-49414-master' of git://github.com/cameron1729/moodle 2016-04-29 12:18:00 +01:00
Brendan Heywood 97909332eb MDL-37753 mod_feedback: Use activity name for export filename 2016-04-29 12:17:59 +01:00
Andrew Nicols 9f17263557 Merge branch 'MDL-53973-tablelib-worksheet-name' of https://github.com/brendanheywood/moodle 2016-04-29 12:17:58 +01:00
Brendan Heywood dae21986aa MDL-37753 dataformat: Only set worksheet name where implemented 2016-04-29 12:17:58 +01:00
Brendan Heywood c32bcfe751 MDL-53973 tablelib: Fixed bug with worksheetname being ignored 2016-04-29 12:17:58 +01:00
Andrew Nicols df89940e5d MDL-53858 quiz accessibility: Correct aria-labelledby attribute 2016-04-29 12:17:57 +01:00
Andrew Nicols 4fdc9fbe20 Merge branch 'MDL-53858' of git://github.com/timhunt/moodle 2016-04-29 12:17:56 +01:00
David Monllao eca318d937 Merge branch 'MDL-52035_master' of git://github.com/markn86/moodle 2016-04-29 12:17:56 +01:00
Mark Nelson 3bc7252389 MDL-52035 enrol_lti: added fix for oracle
Also added another unit test for \enrol_lti\helper::count_lti_tools();
2016-04-29 12:17:55 +01:00
David Monllao 1f491b60c3 Merge branch 'MDL-53791-master-fix' of git://github.com/andrewnicols/moodle 2016-04-29 12:17:54 +01:00
Andrew Nicols 7c53378bc7 MDL-53791 mod_wiki: Bump version for new WS 2016-04-29 12:17:54 +01:00
Eloy Lafuente (stronk7) efd0d992d5 MDL-53638 mod_feedback: rebuild css 2016-04-29 12:17:53 +01:00
David Monllao 21ed46132d Merge branch 'MDL-53921-master' of git://github.com/ryanwyllie/moodle 2016-04-29 12:17:53 +01:00
Eloy Lafuente (stronk7) a2e6df5ede MDL-51603 flexitable: Document the deletion of get_download_menu() 2016-04-29 12:17:52 +01:00
Eloy Lafuente (stronk7) 28ee220a36 Merge branch 'wip-MDL-53638-master' of https://github.com/marinaglancy/moodle 2016-04-29 12:17:52 +01:00
Eric Merrill 861de101a9 MDL-53758 search: Fix unittest error 2016-04-29 12:17:51 +01:00
Dan Poltawski 5ea0c56236 Merge branch 'MDL-52154-master-wip2' of https://github.com/xow/moodle 2016-04-29 12:17:50 +01:00
Dan Poltawski 48715140a3 Merge branch 'MDL-53915-master' of git://github.com/junpataleta/moodle 2016-04-29 12:17:50 +01:00
Dan Poltawski e71c9ebfd3 Merge branch 'MDL-53919_master' of git://github.com/markn86/moodle 2016-04-29 12:17:49 +01:00
Skylar Kelty 216b7f7577 MDL-53967 caching: Ensure getAllKeys returns a valid array 2016-04-29 12:14:34 +01:00
Jun Pataleta d238016e0d MDL-53918 tool_cohortroles: Assign role on non-empty user and cohort IDs 2016-04-29 15:43:56 +08:00
Jun Pataleta e9b4bca0f8 MDL-53917 tool_lp: Show course competency notice appropriately
Show course competency notice only if the user has a
moodle/competency:competencygrade capability.
2016-04-29 15:23:44 +08:00
David Mudrák c1d44340a5 MDL-53980 lang: Fix the reworded strings in Behat tests 2016-04-28 18:39:59 +02:00
Helen Foster a5061bf7b7 MDL-53980 lang: Merge English strings from the en_fix language pack 2016-04-28 18:32:03 +02:00
Frederic Massart 56e1d9bada MDL-53716 competency: Do not restore competencies when disabled 2016-04-28 18:41:30 +08:00
Frederic Massart e9114a9ed4 MDL-53716 competency: Backup and restore course competency user data 2016-04-28 18:41:30 +08:00
Jun Pataleta 782fc43bd8 MDL-53943 tool_cohortroles: Require 'moodle/cohort:view' capability
tool_cohortroles not just needs the 'moodle/role:manage' capability,
but the 'moodle/cohort:view' capability as well since the cohorts
selector field will not work without it.
2016-04-28 16:47:56 +08:00
Frederic Massart 8ea0f17ae9 MDL-53879 competency: Remove limit on framework depth 2016-04-28 16:41:24 +08:00
Jun Pataleta 9031371211 MDL-53955 tool_lp: Remove the use of chained steps in tool_lp 2016-04-28 14:57:54 +08:00
Ryan Wyllie 7a6346429b MDL-53921 gradingform: Destroy frequently used comment dialog on hide 2016-04-28 01:21:44 +00:00
Jun Pataleta 60a9993bce MDL-53494 tool_lp: Fix dialogue display when plan is completed 2016-04-27 09:09:52 +01:00
Marina Glancy 0a0632cee6 MDL-53638 mod_feedback: corrections during rebase:
1. make query in upgrade cross-DB
2. rebase on top of MDL-51603
2016-04-27 16:04:44 +08:00
Marina Glancy c04dc3ca13 MDL-53638 mod_feedback: JS confirmation of deleting item 2016-04-27 16:04:44 +08:00
Marina Glancy 094c57dd4f MDL-53638 mod_feedback: JS confirmation on delete entry and template 2016-04-27 16:04:43 +08:00
Marina Glancy 3fdba72902 MDL-53638 mod_feedback: download responses 2016-04-27 16:04:40 +08:00
Marina Glancy f6b9b6b71b MDL-53904 course: apply default completion when approving request 2016-04-27 15:55:30 +08:00
Cameron Ball f23e9b6ba4 MDL-49414 webservices: Remove deprecated functions 2016-04-27 15:54:38 +08:00
Dan Poltawski 2170a2563b Merge branch 'MDL-53791-master' of git://github.com/crazyserver/moodle 2016-04-27 08:51:43 +01:00
Jun Pataleta 26e8311287 MDL-52035 enrol_lti: Fixed default mail display setting 2016-04-27 14:12:29 +08:00
Marina Glancy 1e3de9d8ba MDL-53638 mod_feedback: template for summary 2016-04-27 13:28:45 +08:00
Marina Glancy c33c1ed59e MDL-53638 mod_feedback: analysis page enhancements 2016-04-27 13:28:45 +08:00
Marina Glancy c83c052230 MDL-53638 mod_feedback: change items classes
remove duplication by creating methods in the parent class
delete unused methods
add new method complete_form_element() that hooks into the moodleform
2016-04-27 13:28:44 +08:00
Marina Glancy 97d71cbc3a MDL-53638 mod_feedback: convert to moodleforms 2016-04-27 13:28:43 +08:00
Marina Glancy ffee513ef2 MDL-53638 mod_feedback: structural changes
- add column 'courseid' to the feedback_completed and feedback_completedtmp tables
- drop table feedback_tracking because the same information is present in
  feedback_completed
2016-04-27 13:27:12 +08:00
Marina Glancy cf28c515f3 MDL-53638 forms: allow all elements to have css class 2016-04-27 13:27:12 +08:00
Marina Glancy aeeeb78847 MDL-53738 feedback: enable mod and block by default 2016-04-27 13:27:12 +08:00
John Okely af9d3a923d MDL-52154 mod_lti: Add tests and lang strings and finalise API 2016-04-27 13:15:33 +08:00
Jun Pataleta 147427ee7b MDL-53915 tool_cohortroles: Change setting URL to a proper moodle_url 2016-04-27 13:13:50 +08:00
Mark Nelson 55b43467b3 MDL-53919 core: fixed competency FKs 2016-04-27 12:31:44 +08:00
Eloy Lafuente (stronk7) 33952d4a53 Merge branch 'MDL-53758-master' of git://github.com/merrill-oakland/moodle 2016-04-26 20:34:20 +02:00
Dan Poltawski 667589d05f MDL-53698 admin_lp: trailing whitespace 2016-04-26 16:42:34 +01:00
Dan Poltawski 604d5d4730 Merge branch 'MDL-53698_master' of https://github.com/StudiUM/moodle 2016-04-26 16:42:00 +01:00
Dan Poltawski ffce908869 Merge branch 'MDL-53780' of https://github.com/bostelm/moodle 2016-04-26 15:37:36 +01:00
Dan Poltawski 9312c9c4ee Merge branch 'MDL-53629_master2' of https://github.com/StudiUM/moodle 2016-04-26 13:33:39 +01:00
Dan Poltawski 587580a0df Merge branch 'MDL-53494_master' of https://github.com/StudiUM/moodle 2016-04-26 11:31:55 +01:00
Dan Poltawski 2ef629e86d Merge branch 'MDL-53855' of git://github.com/timhunt/moodle 2016-04-26 11:17:45 +01:00
Dan Poltawski 0ea74d855f Merge branch 'MDL-53942-master' of git://github.com/junpataleta/moodle 2016-04-26 10:52:27 +01:00
Dan Poltawski 23f1dbde67 Merge branch 'MDL-53859_master' of https://github.com/StudiUM/moodle 2016-04-26 10:31:00 +01:00
Dan Poltawski 11ec31188a Merge branch 'MDL-53924-master' of git://github.com/FMCorz/moodle 2016-04-26 10:28:37 +01:00
Dan Poltawski 4648ae9e14 Merge branch 'MDL-52035_master' of git://github.com/markn86/moodle 2016-04-26 10:07:38 +01:00
Dan Poltawski 6bd3ab0717 on-demand release 3.1dev+ 2016-04-26 09:29:04 +01:00
Mark Nelson 73870f77f5 MDL-52035 enrol_lti: added PHPUnit and Behat tests 2016-04-26 16:15:48 +08:00
Mark Nelson da39029a5d MDL-52035 enrol_lti: added backup/restore functionality 2016-04-26 16:15:48 +08:00
Mark Nelson 8ed2bbcfed MDL-52035 enrol_lti: added sync_<grades/members> tasks 2016-04-26 16:15:48 +08:00
Mark Nelson 01bb32a2b1 MDL-52035 enrol_lti: added enrol plugin 2016-04-26 16:15:47 +08:00
Mark Nelson 1d8886fa31 MDL-52035 auth_lti: added auth plugin 2016-04-26 15:58:08 +08:00
Mark Nelson 30498d9a0e MDL-52035 core_enrol: allow redirection to another page 2016-04-26 15:58:08 +08:00
Ryan Wyllie cc193e0d1d MDL-52154 mod_lti: Improve admin interface
Created a new admin page for managing LTI tool types within
Moodle. The new page streamlines adding a new tool and allows
the admin to add a tool using either a cartridge or a registration
URL.
2016-04-26 15:13:44 +08:00
John Okely 8aec804af2 MDL-52154 mod_lti: Add cartridge support to LTI 2016-04-26 15:13:44 +08:00
Pau Ferrer Ocaña cf16f6ed18 MDL-53791 mod_wiki: New Web Service edit_page 2016-04-26 08:25:16 +02:00
Pau Ferrer Ocaña a6b6f0d282 MDL-53791 mod_wiki: New Web Service new_page 2016-04-26 08:25:15 +02:00
Pau Ferrer Ocaña 20dca621e0 MDL-53791 mod_wiki: New Web Service get_page_for_editing 2016-04-26 08:24:53 +02:00
Jun Pataleta 1388b618d9 MDL-53942 form_autocomplete: Properly set noSelectionString 2016-04-26 13:41:29 +08:00
Frederic Massart f1a9fcd96a MDL-53924 competency: Relax strictness of default capabilities 2016-04-26 12:12:46 +08:00
Mark Nelson 581ea5013a MDL-52035 core_block: avoid PHP error when there is no region
This occurs when sharing a quiz via the LTI provider when it
adds a 'fake block' for quiz navigation. There may be other
occurrences.
2016-04-26 12:08:31 +08:00
Mark Nelson 466a1713a0 MDL-52035 core: added ability to override pagelayout
This is required by the LTI plugin when we share an
activity. We do not want the user to be shown the
navigation blocks etc. The activity should be the
only thing displayed.
2016-04-26 12:08:31 +08:00
David Monllao 6e233df58e Merge branch 'MDL-53667-master' of git://github.com/FMCorz/moodle 2016-04-26 11:38:00 +08:00
David Monllao e7c979dff8 Merge branch 'MDL-53632-master' of git://github.com/FMCorz/moodle 2016-04-26 11:29:51 +08:00
David Monllao 8bfd0e6187 Merge branch 'MDL-52550-master' of git://github.com/cameron1729/moodle 2016-04-26 11:11:40 +08:00
David Monllao 29752d05ae Merge branch 'MDL-53733_master' of https://github.com/StudiUM/moodle 2016-04-26 10:55:03 +08:00
David Monllao e9eb7ca21f Merge branch 'MDL-53878_master' of https://github.com/StudiUM/moodle 2016-04-26 10:49:32 +08:00
David Monllao e1f9593de4 Merge branch 'MDL-53678_master' of https://github.com/StudiUM/moodle 2016-04-26 10:45:40 +08:00
David Monllao 4db87b505c Merge branch 'MDL-53813-master' of git://github.com/danpoltawski/moodle 2016-04-26 10:13:24 +08:00
David Monllao 1ef42d5f29 Merge branch 'MDL-53865-master' of git://github.com/junpataleta/moodle 2016-04-26 09:38:33 +08:00
Dan Poltawski 7064aaa11e Merge branch 'MDL-53717_master' of git://github.com/markn86/moodle 2016-04-25 22:20:31 +01:00
Dan Poltawski 55905d6313 Merge branch 'MDL-53811_master' of git://github.com/markn86/moodle 2016-04-25 22:01:38 +01:00
Dan Poltawski ca6cbe3428 Merge branch 'MDL-53853-master' of git://github.com/junpataleta/moodle 2016-04-25 22:00:18 +01:00
Dan Poltawski 32bdfd74c0 Merge branch 'MDL-53864_master-alt' of git://github.com/markn86/moodle 2016-04-25 15:53:12 +01:00
Dan Poltawski f60e024fdc Merge branch 'MDL-49754-master' of https://github.com/xow/moodle 2016-04-25 14:13:51 +01:00
Dan Poltawski ff72bc88e0 Merge branch 'wip-MDL-47672-master' of https://github.com/marinaglancy/moodle 2016-04-24 14:31:45 +01:00
Issam Taboubi 68f8ad4c95 MDL-53698 tool_lp: Progress percent sign not showing 2016-04-22 14:00:12 -04:00
Issam Taboubi 18daa64cbf MDL-53878 tool_lp: Condition on displaying Link competencies button 2016-04-22 13:57:09 -04:00
Issam Taboubi e65fda6b7f MDL-53733 tool_lp: Competency heading misaligned in templatecompetency 2016-04-22 13:54:02 -04:00
Issam Taboubi ee0ca65f4e MDL-53678 tool_lp: Dropdown list plan displays horizontal scroll bar 2016-04-22 13:51:52 -04:00
Issam Taboubi 7fbbd771f7 MDL-53494 tool_lp: user_competency_in_plan page should be in a popup 2016-04-22 12:32:46 -04:00
Serge Gauthier eeb477079e MDL-53859 competency: Can't change user in course competency breakdown 2016-04-22 11:41:36 -04:00
Serge Gauthier 184f9b12ed MDL-53629 tool_lp: Add buttons should be displayed left below the title 2016-04-22 10:50:40 -04:00
Eloy Lafuente (stronk7) 6c1342d7e5 weekly release 3.1dev 2016-04-22 10:56:57 +02:00
Eloy Lafuente (stronk7) 16d26ae0c1 NOBUG: Fixed file access permissions 2016-04-22 10:56:57 +02:00
Eloy Lafuente (stronk7) 7e122c6e29 NOBUG: Fixed SVG browser compatibility 2016-04-22 10:56:53 +02:00
Andrew Nicols e1bb3cd3c2 Merge branch 'MDL-52781-master-fix' of https://github.com/lameze/moodle 2016-04-22 14:25:03 +08:00
Simey Lameze 7c2bdca2f6 MDL-52781 core_user: remove invalid countries from unit tests 2016-04-22 14:10:55 +08:00
Andrew Nicols 284ac4240f Merge branch 'MDL-52781-master-fix' of https://github.com/lameze/moodle 2016-04-22 13:23:16 +08:00
Simey Lameze aa788b3c42 MDL-52781 core_user: fix wrong lang check 2016-04-22 13:07:22 +08:00
David Monllao c047386123 Merge branch 'MDL-53451-master-fixup3' of https://github.com/FMCorz/moodle 2016-04-22 12:59:59 +08:00
Frederic Massart 5592edb646 MDL-53451 competency: Improve performance by bypassing api::is_enabled() 2016-04-22 11:34:39 +08:00
Simey Lameze 48da3eef6e MDL-52490 mod_assign: fix lang strings to make it consistent 2016-04-22 10:25:07 +08:00
David Mudrák 62ea3c439e MDL-53899 admin: Fix permissions of extracted plugin files 2016-04-21 14:37:00 +02:00
Dan Poltawski 86dd906aa7 Merge branch 'MDL-46092' of git://github.com/timhunt/moodle 2016-04-21 13:21:03 +01:00
Tim Hunt 0569063924 MDL-46092 quiz nav: fix buttons in requiresgrading state 2016-04-21 12:25:45 +01:00
Dan Poltawski 2b311b2d3e Merge branch 'MDL-51603-fixes' of git://github.com/dmonllao/moodle 2016-04-21 09:24:28 +01:00
David Monllao 547d779012 MDL-51603 dataformat_ods: Setting the sheet name
Clearning according to Box\Spout\Writer\Common\Sheet::isNameValid
2016-04-21 16:20:36 +08:00
David Monllao fef111472c MDL-51603 dataformats: Using the long name instead of the short one 2016-04-21 16:20:36 +08:00
David Monllao bc3b5a6a2f MDL-51603 quiz statistics: Using dataformats selector 2016-04-21 16:20:36 +08:00
David Monllao 9df4ae4189 MDL-51603 dataformats: coding_exception if output buffering 2016-04-21 16:20:36 +08:00
Brendan Heywood 5b95105600 MDL-51603 dataformat: Fixed worksheet title bug 2016-04-21 16:20:36 +08:00
Andrew Nicols 6ab41abd3e Merge branch 'MDL-52781-master' of git://github.com/lameze/moodle 2016-04-21 15:54:45 +08:00
Simey Lameze 94a578af82 MDL-52781 tool_uploaduser: add invalid data warnings if validation fails 2016-04-21 15:34:32 +08:00
Simey Lameze 5e60be8aaf MDL-52781 auth_db: deprecate clean_data method.
The old clean_data method has been deprecated as the user_create_user and user_updated user
    will be responsible by validating the user data.
2016-04-21 15:24:36 +08:00
Simey Lameze ac9768fc1b MDL-52781 core_user: replace direct PARAM_ usages.
This commit replace as much as possible of clean_param and PARAM_ usages related to user object.
Also few unit tests has been changed to match the new validation
2016-04-21 15:24:36 +08:00
Simey Lameze 7a06720604 MDL-52781 core_user: add validation to user insertion and updating method
The new validation were added to user_create_user and user_update_user,
displaying debug message if some invalid data has been found.
Also the unit tests of those methods has been changed to match the methods behaviour.
2016-04-21 15:24:35 +08:00
Simey Lameze 4ce0931462 MDL-52781 core_user: improve core_user::fill_properties_cache() 2016-04-21 15:24:35 +08:00
Panagiotis Nikoloutsopoulos c3c3c9f28a MDL-52550 atto: Added preventDefaults for events dragover and dragenter 2016-04-21 15:08:20 +08:00
Frederic Massart 3577bbe101 MDL-53451 tool_lpmigrate: Keep course competency on module failure
When permissions are lacking and the course module competencies could
not be migrated we must keep the course competency to preserve the
original competency in the course module.
2016-04-21 11:40:36 +08:00
Mark Nelson 4aa7e3fe18 MDL-53864 mod_feedback: fixed varying results on MSSQL 2016-04-21 11:32:49 +08:00
Dan Poltawski 8ef18bda2b Merge branch 'MDL-46092' of git://github.com/timhunt/moodle 2016-04-20 22:20:35 +01:00
Tim Hunt de2fec2e9a MDL-46092 bootstrapbase: add OU quiz styling
It is a nicer default to have in Moodle that what we had before.
2016-04-20 15:43:34 +01:00
Dan Poltawski 17883c016b Merge branch 'wip-MDL-52642-master' of git://github.com/abgreeve/moodle 2016-04-20 13:30:38 +01:00
Dan Poltawski 795adc89af Merge branch 'MDL-52490_master' of https://github.com/dmonllao/moodle 2016-04-20 12:38:15 +01:00
Dan Poltawski d6c8570f55 Merge branch 'MDL-53095-master' of git://github.com/lameze/moodle 2016-04-20 11:49:50 +01:00
Dan Poltawski 913dcb1b81 Merge branch 'MDL-53451-master-fixup' of https://github.com/FMCorz/moodle 2016-04-20 11:28:55 +01:00
Dan Poltawski 4ee37fe04b Merge branch 'wip-MDL-53798-master' of https://github.com/marinaglancy/moodle 2016-04-20 11:09:48 +01:00
Frederic Massart d789158566 MDL-53451 tool_lpmigrate: Fixing broken logic found in tests
Thanks to MSSQL, the only one with failures.
2016-04-20 17:52:09 +08:00
Dan Poltawski ab64fe91fc Merge branch 'wip-MDL-51354_master' of https://github.com/cdsmith-umn/moodle 2016-04-20 10:33:23 +01:00
Dan Poltawski ad2382730e Merge branch 'MDL-53309_master-second-attempt' of git://github.com/dmonllao/moodle 2016-04-20 10:27:57 +01:00
David Monllao 15a813cda2 Merge branch 'MDL-53599' of git://github.com/nhoobin/moodle 2016-04-20 16:38:57 +08:00
David Monllao 6870e1fa77 Merge branch 'MDL-53757_master' of git://github.com/markn86/moodle 2016-04-20 15:52:57 +08:00
Frederic Massart 4fd183d3c3 MDL-53451 competency: Hook for scale_used used undefined variable 2016-04-20 15:44:01 +08:00
Frederic Massart 0abaf33e00 MDL-53451 competency: Fixing database errors on Oracle
- Random ordering caused by absence of ORDER BY clause
- Invalid query statemennt due to wrong string concatenation
- Cannot GROUP BY with CLOB columns
2016-04-20 15:44:01 +08:00
Andrew Nicols eb91deaa85 Merge branch 'MDL-51603-dataformat-MDL-34925-user-download' of https://github.com/brendanheywood/moodle 2016-04-20 14:45:44 +08:00
David Monllao ba44323329 MDL-51603 dataformat: Removing subsystem from the list 2016-04-20 14:41:28 +08:00
David Monllao a5acf308ae Merge branch 'MDL-51603-dataformat' of https://github.com/brendanheywood/moodle
Conflicts:
	lib/tests/component_test.php
2016-04-20 12:37:05 +08:00
David Monllao 65f9001d31 Merge branch 'MDL-48089-master' of git://github.com/danpoltawski/moodle 2016-04-20 12:24:07 +08:00
David Monllao 18641bf6e1 Merge branch 'MDL-48506_master' of git://github.com/markn86/moodle 2016-04-20 11:54:38 +08:00
Nick Phillips 7bdc3ba6e6 MDL-53757 core_calendar: always show whole day's events in 'day' view 2016-04-20 11:34:19 +08:00
David Monllao 82644d4966 Merge branch 'MDL-53382' of https://github.com/andrewhancox/moodle 2016-04-20 11:29:57 +08:00
David Monllao d7eb33652f Merge branch 'MDL-53702_master' of https://github.com/liorgil/moodle 2016-04-20 11:10:23 +08:00
David Monllao edc0c29f7b Merge branch 'MDL-25742-fix-individual-wiki' of git://github.com/cameron1729/moodle 2016-04-20 11:07:23 +08:00
David Monllao c16c7530b1 Merge branch 'MDL-52596-assign-maxperpage' of https://github.com/brendanheywood/moodle 2016-04-20 11:04:10 +08:00
Brendan Heywood 12142298ec MDL-34925 user: Convert bulk user download to dataformat 2016-04-20 13:02:06 +10:00
David Monllao 45073995a1 Merge branch 'MDL-53799-31' of https://github.com/vadimonus/moodle 2016-04-20 10:59:49 +08:00
Brendan Heywood 1e29afd4ea MDL-51603 report_log: Allow streaming downloads 2016-04-20 12:39:29 +10:00
Brendan Heywood 5684cc2d1e MDL-51603 tablelib: Removed legacy export classes 2016-04-20 12:39:29 +10:00
Brendan Heywood bdb80f6a5f MDL-51603 tablelib: Delegate to dataformat for downloading 2016-04-20 12:39:29 +10:00
Brendan Heywood bff1edbe44 MDL-51603 dataformat: Implement streaming dataformat plugin 2016-04-20 12:39:25 +10:00
Cameron Ball d5722b4447 MDL-25742 mod_wiki: Fix bug in get_tagged_pages 2016-04-20 10:37:34 +08:00
Brendan Heywood b4772a41d1 MDL-51603 dataformat: Imported 3rd party lib spout 2016-04-20 12:33:35 +10:00
Eloy Lafuente (stronk7) 3a97e39825 Merge branch 'MDL-53660-master' of git://github.com/danpoltawski/moodle 2016-04-20 01:19:58 +02:00
Eloy Lafuente (stronk7) 4384d72024 Merge branch 'MDL-53043' of https://github.com/andrewhancox/moodle 2016-04-20 00:53:07 +02:00
Mark Nelson 027eb38ed5 MDL-48506 cachestore_memcached: make warning more noticeable 2016-04-19 17:11:05 +08:00
David Monllao 9a1414c4d8 Merge branch 'MDL-49279-master' of git://github.com/jleyva/moodle
Conflicts:
	lib/classes/plugin_manager.php
2016-04-19 16:55:01 +08:00
Simey Lameze bc577c541f MDL-51267 mod: move the changes from the API to the form file 2016-04-19 16:36:26 +08:00
Juan Leyva b2478ed0f6 MDL-49279 mobile: Support export of mobile addons in plugins 2016-04-19 10:32:53 +02:00
Jun Pataleta 00456f0bed MDL-53865 tool_lp: Add maxlength attr and validation for input fields 2016-04-19 15:40:36 +08:00
David Monllao f3eb9951d1 MDL-53451 tool_lp: Removing unnecessary built modules 2016-04-19 13:56:49 +08:00
Jun Pataleta 30f1b35474 MDL-53853 tool_lp: Remove competency description in autocomplete 2016-04-19 13:16:17 +08:00
Mark Nelson fcc9218fb8 MDL-53811 mod_assign: fixed error in convert submissions task 2016-04-19 13:08:27 +08:00
David Monllao 56ff87aea5 Merge branch 'wip-MDL-25742-master' of https://github.com/marinaglancy/moodle 2016-04-19 12:42:21 +08:00
David Monllao c3b661403c Merge branch 'cbe' of git://github.com/FMCorz/moodle 2016-04-19 12:37:11 +08:00
Frederic Massart 4474c87401 MDL-53451 competency: Removing sneaky whitespaces 2016-04-19 12:21:36 +08:00
David Monllao 218fbd6ca2 Merge branch 'MDL-51267-master' of git://github.com/lameze/moodle 2016-04-19 11:53:22 +08:00
Simey Lameze 819e1ff0ad MDL-51267 mod_url: make the url and resource forms friendlier 2016-04-19 11:13:18 +08:00
Frederic Massart 69c478660a MDL-53451 competency: Properly wrap those nasty function declarations
Pheww, we avoided a disaster.
2016-04-19 10:55:46 +08:00
Andrew Nicols 383819375d Merge branch 'MDL-53779-master' of git://github.com/FMCorz/moodle 2016-04-19 10:32:56 +08:00
David Monllao a60b808d1c Merge branch 'MDL-48506-master' of git://github.com/ryanwyllie/moodle 2016-04-19 10:05:17 +08:00
Andrew Nicols cd82dcd08f Merge branch 'MDL-53535_master' of git://github.com/dmonllao/moodle 2016-04-19 09:45:30 +08:00
Eloy Lafuente (stronk7) 15f69edb1d Merge branch 'MDL-53796_master' of git://github.com/dmonllao/moodle 2016-04-19 01:58:13 +02:00
Eloy Lafuente (stronk7) 8ac2e53d17 Merge branch 'MDL-53795-master' of git://github.com/merrill-oakland/moodle 2016-04-19 01:44:46 +02:00
Clement Smith 98d53af7b6 MDL-51354 report/log: Add context sensitive help
Adds context sensitive help to the Reports > Logs page (both admin
and course level) to help users understand how the filters will
affect their search.
2016-04-18 12:37:29 -05:00
Tim Hunt 5b444ee987 MDL-53858 quiz accessibility: nav block should have role='navigation' 2016-04-18 17:37:03 +01:00
Tim Hunt 67b67a50cf MDL-53855 accessibility: navbar should be in exactly one nav region
And that should be labelled.
2016-04-18 16:56:34 +01:00
Frederic Massart 29879f8f4c MDL-53667 templates: Improve JS string handling in templates
The native String.replace method in extremely slow when we are
dealing with a large string and large quantity of strings to replace.
This new solution walks through the string looking for placeholders
to replace.
2016-04-18 17:14:32 +08:00
Frederic Massart 746da8ba60 MDL-53632 competency: Consistently use the terms frameworks, plans, ...
- Templates: 'Learning plan templates'
- Plans: 'Learning plans'
- Frameworks: 'Competency frameworks'

When the context, or sentence, is already stating that we are talking
about 'learning plans' or 'competencies', it may sound redundant to
repeat those terms, therefore we can simply refer to 'Templates',
'Plans', and 'Frameworks'.
2016-04-18 16:51:39 +08:00
Mark Nelson 38870d60fd MDL-53717 core: prevent PHP notice during install 2016-04-18 16:38:36 +08:00
Ryan Wyllie 33688fbfe6 MDL-48506 cachestore_memcached: added shared cache config option
When added a memcached instance you can now select whether the cache is
being shared by other applications. The setting will determine the
purging strategy.

Shared caches will have individual keys deleted while dedicated caches
will have the entire cache purged (better performance over networks).

Note: This option only works with the correct version of the php
memcached extension and with the multi-site safe changes.
2016-04-18 07:18:24 +00:00
Sam Hemelryk 7797d7ead0 MDL-48506 cachestore_memcached: added upgrade notice 2016-04-18 06:56:46 +00:00
Sam Hemelryk 957e0c7567 MDL-48506 cachestore_memcached: is now multi-site safe 2016-04-18 06:56:46 +00:00
Frederic Massart e912927d7b MDL-53667 tool_lp: Use event delegate for competency dialogue
This was causing dramatical performance issues when the module
was loaded hundreds of times on the same page, causing each instance
to detach and attach a new event listener.
2016-04-18 14:52:48 +08:00
Serge Gauthier d580b62fb3 MDL-53627 tool_lp: Add links to cohorts and plans in templates menu 2016-04-18 14:42:03 +08:00
Brendan Heywood 80989850b6 MDL-52596 assign: Add max assignment per grading page site wide setting 2016-04-18 16:34:40 +10:00
Nicholas Hoobin c5211882f7 MDL-53599 session: Added a session_class_handler for Redis.
It is now possible to set up Redis as a session handler for Moodle.
Ensure that the phpredis extension is enabled and working on your sever.

Please place the following lines in config.php
$CFG->session_handler_class = '\core\session\redis';
$CFG->session_redis_save_path = 'tcp://127.0.0.1';

To determine if it has been set correctly, navigate to
$CFG->wwwroot/admin/phpinfo.php and find following the strings in the
session block,

session.save_handler = redis
session.save_path = tcp://127.0.0.1
2016-04-18 16:28:45 +10:00
Serge Gauthier 7dbff38a7c MDL-53527 tool_lp: Improving the help popup of scales 2016-04-18 14:21:39 +08:00
David Monllao fbc6c48736 Merge branch 'MDL-53841-master' of http://github.com/damyon/moodle 2016-04-18 14:03:32 +08:00
Frederic Massart eeaef357f2 MDL-53451 tool_lp: Fix tests fails because block_lp already on dashboard 2016-04-18 13:49:16 +08:00
Frederic Massart bfeb546f44 MDL-53451 competency: Fix tests failing due to context changes 2016-04-18 11:34:46 +08:00
Frederic Massart de8cdb6854 MDL-53828 competency: Fetch right competency when viewing completed plan 2016-04-18 11:06:47 +08:00
Serge Gauthier 7833290b15 MDL-53705 tool_lp: Average proficiency rate on a template is incorrect 2016-04-18 11:06:47 +08:00
Issam Taboubi e55151b218 MDL-53817 report_competency: Jump problem in user competency breakdown 2016-04-18 11:06:47 +08:00
Issam Taboubi aa6f127ce8 MDL-53818 tool_lp: Error competency summary associated to an evidence 2016-04-18 11:06:47 +08:00
Frederic Massart 1e99f31e33 MDL-53654 competency: Provide a way to delete evidence 2016-04-18 11:06:47 +08:00
Frederic Massart 5aa9ded503 MDL-53773 tool_lp: Missing validate_context call in external function
Just sneaking that in as I noticed it while fixing RTL.
2016-04-18 11:06:01 +08:00
Frederic Massart dee226a94d MDL-53773 competency: RTL styles for report_competency and tool_lp
Notice that some styles are made specific to the plugins because
I don't want to take the risk of introducing regressions by
patching core so broadly for RTL support.
2016-04-18 11:06:01 +08:00
Frederic Massart 56537316f6 MDL-53719 competency: Delete content upon course and cm delete/reset 2016-04-18 11:06:01 +08:00
Issam Taboubi e0c2d7c02e MDL-53720 tool_lp: Cannot grade competency in breakdown report 2016-04-18 11:06:01 +08:00
Frederic Massart b14311b2cd MDL-53760 competency: Set block_lp as default dashboard block 2016-04-18 11:06:01 +08:00
Frederic Massart a8a10b1c46 MDL-53787 block_lp: Make sure that competencies are enabled 2016-04-18 11:06:01 +08:00
Barbara Ramiro 300d30e714 MDL-53528 core: New edit inline icon 2016-04-18 11:06:01 +08:00
Issam Taboubi 5f887f4b96 MDL-53528 tool_lp: Allow user to choose parent when creating competency 2016-04-18 11:06:01 +08:00
Frederic Massart 91e5464282 MDL-53700 competency: Making CiBoT happier 2016-04-18 11:06:00 +08:00
Frederic Massart 8d0c57ed08 MDL-53700 competency: Migrating scale_used hook to core 2016-04-18 11:06:00 +08:00
Frederic Massart 899f46d6de MDL-53700 competency: Use URL resolver in events 2016-04-18 11:06:00 +08:00
Frederic Massart 07fc0ec380 MDL-53700 competency: Implementing a URL resolver 2016-04-18 11:06:00 +08:00
Frederic Massart d8370908b5 MDL-53700 competency: Update standard plugins list 2016-04-18 11:06:00 +08:00
Frederic Massart a6a722d4ba MDL-53700 competency: Migrating other competency related plugins 2016-04-18 11:06:00 +08:00
Frederic Massart ca94bcdbdb MDL-53700 competency: Splitting competency rules logic and UI 2016-04-18 11:06:00 +08:00
Frederic Massart e6dc03d7c4 MDL-53700 competency: Migrating language strings 2016-04-18 11:06:00 +08:00
Frederic Massart 4aa6acb22a MDL-53700 competency: Migrating comment related APIs to core 2016-04-18 11:05:59 +08:00
Frederic Massart 7160fb19d7 MDL-53700 competency: Migrating file serving to core 2016-04-18 11:05:59 +08:00
Frederic Massart c88b6c05ca MDL-53700 competency: Migrating observers to core 2016-04-18 11:05:59 +08:00
Frederic Massart 8417c3a620 MDL-53700 competency: Migrating backup logic to core 2016-04-18 11:05:59 +08:00
Frederic Massart 6be1373ee0 MDL-53700 competency: Migrating settings to core 2016-04-18 11:05:59 +08:00
Frederic Massart 5a1a685c28 MDL-53700 competency: Migrating events to core
Leaving comments behind for now as it's a tricky one.
2016-04-18 11:05:59 +08:00
Frederic Massart 81de839f37 MDL-53700 competency: Migrating external functions to core 2016-04-18 11:05:59 +08:00
Frederic Massart e0b9ba28a4 MDL-53700 competency: Migrating tests to core 2016-04-18 11:05:59 +08:00
Frederic Massart 922634d3e5 MDL-53700 competency: Migrating data generator to core 2016-04-18 11:05:59 +08:00
Frederic Massart 767f66c028 MDL-53700 competency: Migrating the competency API to core 2016-04-18 11:05:59 +08:00
Frederic Massart 72018c0a1c MDL-53700 competency: Migrating exporters to core 2016-04-18 11:05:59 +08:00
Frederic Massart 67bc0eaf38 MDL-53700 competency: Migrate main classes to core 2016-04-18 11:05:59 +08:00
Frederic Massart 36a43db821 MDL-53700 competency: Migrating message definitions to core 2016-04-18 11:05:58 +08:00
Frederic Massart 42a7899f0d MDL-53700 competency: Migrate tasks to core 2016-04-18 11:05:58 +08:00
Frederic Massart a4e659c788 MDL-53700 competency: Migrate database tables to core 2016-04-18 11:05:58 +08:00
Frederic Massart b90e2205b4 MDL-53700 competency: Migrate capabilities to core 2016-04-18 10:59:01 +08:00
Frederic Massart 1f7699533c MDL-53645 tool_lp: Address FIXME comments 2016-04-18 10:59:01 +08:00
Dan Poltawski d846a535a6 MDL-53645 tool_lp: Various trivial bugs identified during review 2016-04-18 10:59:01 +08:00
Jun Pataleta 4a4bda6d2d MDL-53567 tool_lp: Close menubar on click
This patch enables the closing of the menubar when a menu item is
clicked or when any other element outside the menubar is clicked.
2016-04-18 10:59:01 +08:00
Serge Gauthier d57c079a6c MDL-53551 tool_lp: Can't have a read-only view of competency frameworks 2016-04-18 10:59:01 +08:00
Damyon Wiese cd378576e7 MDL-53374 tool_lp: Add progressbar to learning plans 2016-04-18 10:59:01 +08:00
Damyon Wiese 96f4d771bf MDL-52979 tool_lp: Fix user_competency_course summaries
Only show ratings from the course on course competency pages.
2016-04-18 10:59:01 +08:00
Frederic Massart 3baf704ddb MDL-53655 tool_lp: Allow closures in default values of persistents 2016-04-18 10:59:01 +08:00
Damyon Wiese f1979b60a1 MDL-52743 tool_lp: Course competency statistics
Note - the statistics you see depends on whether you can recieve competency
ratings in the course. So students see their own progress as a %. Graders
see the least proficient competencies for the course.
2016-04-18 10:59:01 +08:00
Issam Taboubi 5548789716 MDL-53608 tool_lp: Replace deprecated method notify_message 2016-04-18 10:59:01 +08:00
Issam Taboubi 9af8f0e2ba MDL-53657 tool_lp: Dialog box opens twice in the path 2016-04-18 10:59:01 +08:00
Issam Taboubi 2f411bca83 MDL-53658 tool_lp: Stacking of messages in competency breakdown report 2016-04-18 10:59:01 +08:00
Frederic Massart 3027fe2016 MDL-53477 tool_lp: Register coursecompetencymanage as module capability 2016-04-18 10:59:00 +08:00
Frederic Massart 2f63310d9d MDL-53626 tool_lp: Change mentions of 'context' to 'category' 2016-04-18 10:59:00 +08:00
Frederic Massart 4e89144ca7 MDL-53471 tool_lp: Hooking in to report when scale is being used 2016-04-18 10:59:00 +08:00
Serge Gauthier dff98d3316 MDL-53590 tool_lp: Error when teacher view student course competencies 2016-04-18 10:59:00 +08:00
Issam Taboubi c11d30e2a8 MDL-53630 tool_lp: Rename Learning plans to Learning plan templates
* In site administration
* In category administration
2016-04-18 10:59:00 +08:00
Frederic Massart cf4c3eaac5 MDL-53542 tool_lp: Fixing missed upgrade step 2016-04-18 10:59:00 +08:00
Damyon Wiese eb0d340c52 MDL-53452 tool_lp: Use an exporter for course_competency_settings 2016-04-18 10:59:00 +08:00
Damyon Wiese c01141d1a3 MDL-53452 tool_lp: Rename some persistent methods for consistency 2016-04-18 10:59:00 +08:00
Damyon Wiese 8c46097536 MDL-53452 tool_lp: Switch to non-strict equals for db values
Also phpdoc change.
2016-04-18 10:59:00 +08:00
Damyon Wiese 45bf83cf77 MDL-53452 tool_lp: Change can_update to can_update_course
This is more consistent with other persistents.
2016-04-18 10:59:00 +08:00
Damyon Wiese 9919b4af62 MDL-53452 tool_lp: Rename get_course_settings to get_by_courseid
In the course_competency_settings persistent.
2016-04-18 10:59:00 +08:00
Damyon Wiese 9785dd8174 MDL-53452 tool_lp: Change update_course_competency_settings param to stdClass
Allows for future settings to be added without changing the function signature.
2016-04-18 10:59:00 +08:00
Damyon Wiese 35cf63d221 MDL-53452 tool_lp: Make course comp settings table have a unique foreign key 2016-04-18 10:59:00 +08:00
Damyon Wiese 14b60a440c MDL-53452 tool_lp: Update after conflicts. Use xxxview for cap string 2016-04-18 10:59:00 +08:00
Damyon Wiese c2f55d2931 MDL-53452 competencies: Backup/restore new course setting.
Also add push ratings info to competency breakdown report.
Also - improved lang strings and set colors of notices.
2016-04-18 10:58:59 +08:00
Damyon Wiese 644ff55b3a MDL-53452 competencies: Add unit test for course competency settings 2016-04-18 10:58:59 +08:00
Damyon Wiese fdd85edef9 MDL-53452 competencies: Update unit tests now we have removed suggest feature. 2016-04-18 10:58:59 +08:00
Damyon Wiese d22a1d3bbf MDL-53452 competencies: Update the logic for pushratingstouserplans course setting.
Either only set the rating in the course, or set it in the course and push it to the user_competency,
depending on the course settings.
2016-04-18 10:58:59 +08:00
Damyon Wiese 5cb320c10b MDL-53452 competencies: Remove suggestion feature (except tests). 2016-04-18 10:58:59 +08:00
Damyon Wiese 7ba074873c MDL-53452 competencies: Add course and admin setting to push competency ratings outside a course 2016-04-18 10:58:59 +08:00
Serge Gauthier 65abd20d8c MDL_53523 tool_lp: Mark fields 'scale/scaleconfiguration' as required 2016-04-18 10:58:59 +08:00
Jun Pataleta c48ab9c124 MDL-53474 tool_lp: Improve competency page navigation 2016-04-18 10:58:59 +08:00
Frederic Massart def7cd6032 MDL-53628 tool_lp: Pick competencies from context and above in templates 2016-04-18 10:58:59 +08:00
Serge Gauthier 44e8cba48e MDL-53483 tool_lp: Normalise the names of capabilities 2016-04-18 10:58:59 +08:00
Issam Taboubi a4f1b030f2 MDL-53472 tool_lp: Improve user navigation flow in competency frameworks 2016-04-18 10:58:59 +08:00
Issam Taboubi 66df4d2fad MDL-53531 tool_lp: Forms section should not be collapsible at times 2016-04-18 10:58:59 +08:00
Frederic Massart 6f0c979f6e MDL-53550 tool_lp: Relax capability checks on cohorts
Cohorts seem to rely on the calling code doing the right capability
checks. In this case I applied the simple logic of checking if the
cohort is visible, and if it is not then checking the capability.

Methods using cohorts should apply relevant capability checks.
2016-04-18 10:58:59 +08:00
Frederic Massart 6391a51648 MDL-53473 tool_lp: Plan default return URL is the plan URL 2016-04-18 10:58:58 +08:00
Frederic Massart 8ae09bb09e MDL-53473 tool_lp: User evidence default return URL is the evidence 2016-04-18 10:58:58 +08:00
Frederic Massart f864aa4c4a MDL-53473 tool_lp: Improvement to navigation flow of templates 2016-04-18 10:58:58 +08:00
Jun Pataleta 85a719e496 MDL-53540 tool_lp_amd: Use currentTarget for comp dialog click handler 2016-04-18 10:58:58 +08:00
Frederic Massart de3b9193fa MDL-53529 tool_lp: Consistent 'add' buttons for templates and courses 2016-04-18 10:58:58 +08:00
Frederic Massart 10bf349e70 MDL-53568 tool_lp: Fix getting proficiency of grade not in scaleconfig 2016-04-18 10:58:58 +08:00
Issam Taboubi 8c9cb5ec05 MDL-52919 tool_lp: Show the path when listing competencies 2016-04-18 10:58:58 +08:00
Serge Gauthier d11d4c1442 MDL-53526 tool_lp: Add consistency to 'Add ...' buttons 2016-04-18 10:58:58 +08:00
Jun Pataleta f9090dff7c MDL-53539 tool_lp: Fix percentage displays for template statistics 2016-04-18 10:58:58 +08:00
Frederic Massart fe0ea87906 MDL-53437 tool_lp: Hide competencies in CM edit when user cannot manage 2016-04-18 10:58:58 +08:00
Serge Gauthier 286a609ff0 MDL-53476 tool_lp: All forms should at least have one fieldset 2016-04-18 10:58:58 +08:00
Frederic Massart 1f58618863 MDL-53186 tool_lp: Removing push for review when adding competencies 2016-04-18 10:58:58 +08:00
Serge Gauthier 71cb304ad8 MDL-53186 tool_lp: Send competencies in review from evidence interface 2016-04-18 10:58:58 +08:00
Jun Pataleta e821c94799 MDL-53475 tool_lp: Redirect and show notification in destination
After creating a plan/competency/user evidence/plan template,
redirect the user to the plan/user evidence/plan template page.
After updating a plan/competency/user evidence/plan template,
redirect the user back to the previous page and display the notification
message instead of displaying a notification message and a continue button.
2016-04-18 10:58:58 +08:00
Serge Gauthier 8cceee8a1d MDL-53524 tool_lp: Rename 'related competencies' to 'cross-referenced competencies' 2016-04-18 10:58:57 +08:00
Serge Gauthier 95bc566d52 MDL-53522 tool_lp: Add parenthesis around ID number in framework list 2016-04-18 10:58:57 +08:00
Frederic Massart 80b2fa8073 MDL-53453 cbe: Invalid usage of empty() 2016-04-18 10:58:57 +08:00
Frederic Massart 3b167714c5 MDL-53453 cbe: False negative when comment on a user competency 2016-04-18 10:58:57 +08:00
Frederic Massart fd7e6bfd4a MDL-53453 cbe: False negative on MySQL due to random ordering 2016-04-18 10:58:57 +08:00
Frederic Massart 96c2b8477f MDL-53453 cbe: PHP Docs and coding style adjustments 2016-04-18 10:58:57 +08:00
Issam Taboubi 946bc0f749 MDL-52980 tool_lp: Double check the name of the capability 2016-04-18 10:58:57 +08:00
Issam Taboubi 49792e9c3d MDL-53376 tool_lp: Redirect after creating a new framework 2016-04-18 10:58:57 +08:00
Serge Gauthier c579c7bb70 MDL-53436 tool_lp: Dashboard Learning plan block misses link View more 2016-04-18 10:58:57 +08:00
Issam Taboubi 12b84c9948 MDL-53312 tool_lp: does not look selected when relocating the competency 2016-04-18 10:58:57 +08:00
Serge Gauthier 66d488ce5b MDL-53163 tool_lp: Behat tests for plans workflow 2016-04-18 10:58:57 +08:00
Damyon Wiese 09c816162c MDL-52554 tool_lp: Remove templateview capability from authenticated users 2016-04-18 10:58:57 +08:00
Frederic Massart 057c14032b MDL-51024 tool_lpmigrate: Tool to migrate between frameworks 2016-04-18 10:58:57 +08:00
Jun Pataleta e43f6aa756 MDL-53438 tool_lp: Set client_id parameter for comment object 2016-04-18 10:58:56 +08:00
Frederic Massart 6e20a8de26 MDL-53380 tool_lp: Framework auto complete element 2016-04-18 10:58:56 +08:00
Damyon Wiese 60a84422cf MDL-53218 tool_lp: Fix php5.4 syntax bug (wrapping function call with empty) 2016-04-18 10:58:56 +08:00
Damyon Wiese 65c6d4613f MDL-53218 tool_lp: Fix unit tests (directly use persistent class to bypass api permissions)
There are 2 failing unit tests fixed here. In both cases - the correct behaviour is to by-pass
a permission check because:
case A) we are loading all the existing records in the DB - so it
        needs to be all the DB records, not just the ones we have permission to see.
case B) we already did the correct permission check - but because we have api -> api communication
        it is running an additional (wrong) permission check.
2016-04-18 10:58:56 +08:00
Damyon Wiese 3edcd295eb MDL-51042 tool_lp: Add useful statistics to the template competencies page. 2016-04-18 10:58:56 +08:00
Issam Taboubi b986597039 MDL-53296_master tool_lp: Add unique index in course_competency 2016-04-18 10:58:56 +08:00
Issam Taboubi d61035968d MDL-53328 tool_lp: Error when adding a competency to a module 2016-04-18 10:58:56 +08:00
Jun Pataleta ad197510ff MDL-53347 tool_lp: Fix JS error when deleting comment in plan 2016-04-18 10:58:56 +08:00
Frederic Massart 5bbb99f9b7 MDL-53421 tool_lp: Allow multiple instances of scale config on page 2016-04-18 10:58:56 +08:00
Frederic Massart a1a6e7b476 MDL-53420 tool_lp: Classes of form\persistent can filter persistent data 2016-04-18 10:58:56 +08:00
Issam Taboubi 5416f580a3 MDL-53396 tool_lp: Behat failures due to change in navigation structure 2016-04-18 10:58:56 +08:00
Issam Taboubi 078d4f9c27 MDL-53187 tool_lp: Create events for user competency workflow 2016-04-18 10:58:56 +08:00
Serge Gauthier 75cbdd979b MDL-53194 tool_lp: Behat tests linking evidence and competencies 2016-04-18 10:58:56 +08:00
Issam Taboubi 3ed982e143 MDL-53084 tool_lp: Improve the view of user competency in a plan
* Remove the plan block
* Remove the plan link
2016-04-18 10:58:56 +08:00
Jun Pataleta 9fbb3e6607 MDL-53188 tool_lp: Add evidence_created event 2016-04-18 10:58:56 +08:00
Issam Taboubi e08203664a MDL-53084 tool_lp: Improve the view of user competency in a plan 2016-04-18 10:58:55 +08:00
Frederic Massart d9c1d95bd1 MDL-53182 tool_lp: Fix false negative in events test 2016-04-18 10:58:55 +08:00
Issam Taboubi 25deee1704 MDL-53182 tool_lp: Create events for plan workflow 2016-04-18 10:58:55 +08:00
Frederic Massart 3e0b090c7b MDL-53212 tool_lp: Only store the required information in scaleconfig 2016-04-18 10:58:55 +08:00
Jun Pataleta 41460929f2 MDL-53211 tool_lp: Add user_competency_course model
* Added user_competency_course model.
* Populate user_competency_course on suggest in course/module context.
2016-04-18 10:58:55 +08:00
Frederic Massart 338386aa76 MDL-53185 tool_lp: Admin setting to disable competencies 2016-04-18 10:58:55 +08:00
Frederic Massart a8bb12db6c MDL-51037 tool_cohortroles: Actions column not sortable and at far right 2016-04-18 10:58:55 +08:00
Damyon Wiese 08f4278ce0 MDL-51037 cbe: New admin tool "Cohort roles" 2016-04-18 10:58:55 +08:00
Jun Pataleta 55ac216a66 MDL-52747 tool_lp: Show courses linked to competency in plan
Show courses that are linked to the given competency for a  given
 learning plan on a modal dialogue.
2016-04-18 10:58:55 +08:00
Frederic Massart c5e89aa117 MDL-53313 tool_lp: Add data generators for course module competencies 2016-04-18 10:58:55 +08:00
Frederic Massart d9a0d1fc4a MDL-53295 tool_lp: Make index cmid/compid on module_competency unique 2016-04-18 10:58:55 +08:00
Issam Taboubi 640201536a MDL-53189 tool_lp: Create event for user competency viewed 2016-04-18 10:58:55 +08:00
Frederic Massart 915725250a MDL-53193 tool_lp: Singularise 'userevidence' term 2016-04-18 10:58:55 +08:00
Serge Gauthier 893f48654c MDL-53193 tool_lp: Add behat tests for CRUD of evidence of prior learning 2016-04-18 10:58:54 +08:00
Frederic Massart 0fe5aac733 MDL-53282 tool_lp: Extend list_frameworks to support string search 2016-04-18 10:58:54 +08:00
Issam Taboubi 1fa1336229 MDL-53070 tool_lp: Fix missing capabilities
* Non-editing teacher is missing view usercompetency capability.
* Teacher is missing the suggest grade capability.
2016-04-18 10:58:54 +08:00
Serge Gauthier e375c6524d MDL-53196 tool_lp: Add relevant record snapshot to existing events 2016-04-18 10:58:54 +08:00
Issam Taboubi c7f2b74ed3 MDL-53162 tool_lp: Behat tests for plans CRUD operations 2016-04-18 10:58:54 +08:00
Frederic Massart a8f1af5e6f MDL-53251 tool_lp: Apply PHP7 fixes 2016-04-18 10:58:54 +08:00
Serge Gauthier 8e3eb9f865 MDL-53160 tool_lp: Create C(R)UD events for evidence of prior learning 2016-04-18 10:58:54 +08:00
Frederic Massart 9db9cdadb2 MDL-52754 tool_lp: Use ScaleValues AMD module in ScaleConfig 2016-04-18 10:58:54 +08:00
Serge Gauthier c7484fcc35 MDL-52754 tool_lp: Dropdown list of scales with single quotes in values 2016-04-18 10:58:54 +08:00
Issam Taboubi d54c4f8b73 MDL-53195 tool_lp: Undefined variable: coursecompetency 2016-04-18 10:58:54 +08:00
Frederic Massart 36ad7a407d MDL-53138 tool_lp: Prevent false positive in plan events tests 2016-04-18 10:58:54 +08:00
Issam Taboubi 4ed524b7a7 MDL-53138 tool_lp: Create C(R)UD + viewed events for plans 2016-04-18 10:58:54 +08:00
Serge Gauthier 74c9942f5c MDL-53051 tool_lp: Index cmid+competencyid to tool_lp_module_competency 2016-04-18 10:58:54 +08:00
Issam Taboubi d32d64bcbc MDL-52959 tool_lp: Create C(R)UD events for competencies 2016-04-18 10:58:54 +08:00
Serge Gauthier 7deba3c0a1 MDL-52860 tool_lp: Add confirmation dialogue when removing a competency 2016-04-18 10:58:54 +08:00
Issam Taboubi e1b93e42d8 MDL-52861 tool_lp: The grading dialogue should show who is being graded 2016-04-18 10:58:53 +08:00
Issam Taboubi af3fa58f3c MDL-52755 tool_lp: Preserve competencies sortorder when plan completed 2016-04-18 10:58:53 +08:00
Issam Taboubi 32fa431e0f MDL-52775 tool_lp: get_course_competency and list_course_competencies 2016-04-18 10:58:53 +08:00
Issam Taboubi c3de87f672 MDL-53067 tool_lp: Incorrect 'Linked courses:' in competency edit menu 2016-04-18 10:58:53 +08:00
Serge Gauthier 1275779548 MDL-52757 tool_lp: Problem to select user when rating course competency 2016-04-18 10:58:53 +08:00
Serge Gauthier b200c8c88c MDL-52745 tool_lp: For competency show evidences added before plan was completed. 2016-04-18 10:58:53 +08:00
Damyon Wiese f194761408 MDL-52923 cbe: Improve the course competencies template.
Just padding fixes - and don't show the grade if it is not set.
2016-04-18 10:58:53 +08:00
Frederic Massart f45d0b372d MDL-52744 tool_lp: Testing permission checks when grading in course 2016-04-18 10:58:53 +08:00
Frederic Massart eadd2d501e MDL-52744 tool_lp: Check is user is enrolled and gradable when rating 2016-04-18 10:58:53 +08:00
Damyon Wiese 24fc4e30b6 MDL-53062 cbe: Fix errors in course_module_summary_exporter
We should take the cm_info as required related data so we can pick the
fields we want to export from it.
2016-04-18 10:58:53 +08:00
Damyon Wiese e3ceb79a3f MDL-52933 cbe: Increase padding on user comp in course page 2016-04-18 10:58:53 +08:00
Frederic Massart d17cbbfbad MDL-52691 tool_lp: Add note support to competency rating 2016-04-18 10:58:53 +08:00
Damyon Wiese f446b2e133 MDL-52534 cbe: Fixes from peer review (linking competencies to activities) 2016-04-18 10:58:53 +08:00
Damyon Wiese db65073748 MDL-52534 tool_lp: Competencies can be attached to activities 2016-04-18 10:58:53 +08:00
Damyon Wiese 8995c2702f MDL-52534 course: Course module form can be extended by plugins via callbacks.
3 new plugin callbacks are available to extend any course module form.

xx_coursemodule_standard_elements()
xx_coursemodule_validation()
xx_coursemodule_edit_post_actions()

This allows you to add elements to the form, extend the validation
and process the extra information once the module has been created/updated.
2016-04-18 10:58:52 +08:00
Serge Gauthier 9331352cc1 MDL-52561 tool:lp Cohort sync task recreates plan deleted manually 2016-04-18 10:58:52 +08:00
Issam Taboubi 3e6a8e1694 MDL-52960 tool_lp: Created event for competency viewed 2016-04-18 10:58:52 +08:00
Damyon Wiese a800711909 MDL-52916 cbe: Fix group handling for user_competency_in_course page, and competency breakdown report 2016-04-18 10:58:52 +08:00
Damyon Wiese 21e0dd61e5 MDL-52916 cbe: Refactor competency breakdown report
Redesign this to fit when there are unlimited competencies / users.
2016-04-18 10:58:52 +08:00
Frederic Massart 47cddb9c1f MDL-52803 tool_lp: Save real estate by conditionally displaying comments
The comment area are exported when the user can read the comments.
The comment area is displayed when:
- The user can post, or
- The user can read, and there is something to read.
2016-04-18 10:58:52 +08:00
Frederic Massart ad6d3004f6 MDL-52749 tool_lp: Adding a user competency page 2016-04-18 10:58:52 +08:00
Frederic Massart d58eabed9a MDL-50439 block_lp: Block to summarise important learning plans objects 2016-04-18 10:58:52 +08:00
Frederic Massart 3b11d6386d MDL-50439 tool_lp: Remove support for user competency review from course 2016-04-18 10:58:52 +08:00
Frederic Massart 7bb5ccbee6 MDL-50439 tool_lp: APIs to fetch plans and competencies to review 2016-04-18 10:58:52 +08:00
Frederic Massart 17e1abb5b3 MDL-50439 tool_lp: Select multiple persistents from query 2016-04-18 10:58:52 +08:00
Frederic Massart 97244310c2 MDL-52827 tool_lp: Consider role overrides when searching users 2016-04-18 10:58:52 +08:00
Damyon Wiese 940235b762 MDL-52827 tool_lp: Fix SQL for filtering users by permission on user context 2016-04-18 10:58:52 +08:00
Frederic Massart 1ca0d7c870 MDL-52741 tool_lp: Display taxonomy term with competency summary 2016-04-18 10:58:51 +08:00
Issam Taboubi 90c7bdaf27 MDL-51130 tool_lp: Deleting frameworks should delete associated data 2016-04-18 10:58:51 +08:00
Serge Gauthier 85e45ff88a MDL-52711 tool_lp: Create C(R)UD events for templates 2016-04-18 10:58:51 +08:00
Serge Gauthier 305eaf3845 MDL-52712 tool_lp: Create event for template viewed 2016-04-18 10:58:51 +08:00
Frederic Massart b74bdcc33d MDL-52985 tool_lp: Do not display due date when unset 2016-04-18 10:58:51 +08:00
Issam Taboubi 9a325eda06 MDL-51513 tool_lp: Properly delete a competency 2016-04-18 10:58:51 +08:00
Issam Taboubi f73a29c181 MDL-52710 tool_lp: Create event for framework viewed 2016-04-18 10:58:51 +08:00
Issam Taboubi 20e7509522 MDL-52847 tool_lp: Error when duplicating empty framework 2016-04-18 10:58:51 +08:00
Serge Gauthier 8fabc73882 MDL-52675 tool_lp: When deleting template delete or unlink derived plans 2016-04-18 10:58:51 +08:00
Damyon Wiese 3248051015 MDL-52758 cbe: Improve formatting of course competencies page.
Make the title of the competency a (real) link to the course competency page.
2016-04-18 10:58:51 +08:00
Damyon Wiese 48f2e032d1 MDL-52909 cbe: Fix padding on manage competencies page. 2016-04-18 10:58:51 +08:00
Damyon Wiese dbab904c20 MDL-52910 cbe: Fix competency picker dialogue scrolling issues.
The competency tree expands and collapses, which causes issues
for the dialogue which is supposed to be centered and non-scrollable.

We need to introduce a scrollable region in the dialogue and fix the height
- this may be slightly annoying for tablet users but is not the worst thing
in the world.
2016-04-18 10:58:51 +08:00
Damyon Wiese f5acab7442 MDL-52922 cbe: Fix some permissions for students in nav tree.
Students should not see the list of templates in the site admin tree.
2016-04-18 10:58:51 +08:00
Damyon Wiese 839669479d MDL-52779 cbe: Fix recursive loops with tree javascript
It was possible to crash the browser with some looping javascript when pressing left and right
arrow keys on the top of the tree, or the very bottom of the tree.
2016-04-18 10:58:51 +08:00
Serge Gauthier 104fa69248 MDL-52906 tool_lp: Problem to unlink a plan from its template 2016-04-18 10:58:50 +08:00
Issam Taboubi a95f553ce1 MDL-52714 tool_lp: Behat tests for templates CRUD operations 2016-04-18 10:58:50 +08:00
Issam Taboubi 0b7c334c2b MDL-52713 tool_lp: Add behat tests for CRUD operations on frameworks 2016-04-18 10:58:50 +08:00
Serge Gauthier a3acafa0ca MDL-52709 tool_lp: Create C(R)UD events for competency frameworks 2016-04-18 10:58:50 +08:00
Issam Taboubi 5a4ee001cb MDL-52676 tool_lp: When deleting a template delete template_cohorts 2016-04-18 10:58:50 +08:00
Frederic Massart 3c230247ce MDL-51035 tool_lp: Plans can be reviewed and commented on 2016-04-18 10:58:50 +08:00
Frederic Massart 131540850a MDL-51036 report_competency: Invalid reference to scale when null 2016-04-18 10:58:50 +08:00
Frederic Massart a4383fe033 MDL-51036 tool_lp: Changed the permissions to grade competencies 2016-04-18 10:58:50 +08:00
Frederic Massart 943989c22b MDL-51036 tool_lp: Granular permissions on user competencies 2016-04-18 10:58:50 +08:00
Frederic Massart 182f609213 MDL-51036 tool_lp: Addressing comments left during peer review 2016-04-18 10:58:50 +08:00
Frederic Massart 572721ac1d MDL-51036 tool_lp: There may not always be an action user on evidence 2016-04-18 10:58:50 +08:00
Frederic Massart 6cc8480a69 MDL-51036 tool_lp: Sensible messages sent after commenting on competency 2016-04-18 10:58:50 +08:00
Frederic Massart 5d2758bcab MDL-51036 tool_lp: Method to find plans from user and competency 2016-04-18 10:58:50 +08:00
Frederic Massart b519577ebd MDL-51036 tool_lp: Allow foreign callbacks in Menubar 2016-04-18 10:58:50 +08:00
Frederic Massart c008e92d22 MDL-51036 tool_lp: Implement a basic review process for competencies 2016-04-18 10:58:49 +08:00
Frederic Massart 23381ab803 MDL-51036 tool_lp: Making comments work inside templates 2016-04-18 10:58:49 +08:00
Serge Gauthier 0d1a2e71f0 MDL-52463 tool_lp: Templates: Can not sync cohorts at category level 2016-04-18 10:58:49 +08:00
Frederic Massart f743bc1071 MDL-52677 tool_lp: Prevent false positive in search_users test 2016-04-18 10:58:49 +08:00
Frederic Massart 9031be44b2 MDL-52696 tool_lp: Prevents users from creating due plans from template 2016-04-18 10:58:49 +08:00
Frederic Massart 5fb76f227f MDL-52690 tool_lp: Only create a few plans when add template cohorts 2016-04-18 10:58:49 +08:00
Frederic Massart 68600f80e7 MDL-52690 tool_lp: Cohorts ID numbers are plain text 2016-04-18 10:58:49 +08:00
Frederic Massart c78ebeac1b MDL-52485 tool_lp: Do not validate unchanged due dates in plans 2016-04-18 10:58:49 +08:00
Frederic Massart a967d2aa8c MDL-52485 tool_lp: Template due date can be changed at will
The only rule is that it must be set in the future (though we permit
due dates time minutes old), or it must be unset.
2016-04-18 10:58:49 +08:00
Issam Taboubi 3c5811644c MDL-52485 tool_lp: Validate the duedate of a plan 2016-04-18 10:58:49 +08:00
Frederic Massart d323d6d355 MDL-52454 tool_lp: Missing PARAM_RAW in exporter tests 2016-04-18 10:58:49 +08:00
Serge Gauthier e54f8c4d2d MDL-52454 tool_lp: Fix all PARAM_TEXT on persistent, and exporters 2016-04-18 10:58:49 +08:00
Frederic Massart 357d38628c MDL-52562 tool_lp: Deleting a plan removes related data 2016-04-18 10:58:49 +08:00
Frederic Massart dc7f49ce2f MDL-52579 tool_lp: Missing string for cap. coursecompetencygradable 2016-04-18 10:58:49 +08:00
Frederic Massart 4b7784ee49 MDL-52477 tool_lp: Minor adjustments when duplicating competency rules 2016-04-18 10:58:48 +08:00
Issam Taboubi 4c4a8d4177 MDL-52477 tool_lp: Error when duplicating a framework with rules 2016-04-18 10:58:48 +08:00
Serge Gauthier a8902ee2d7 MDL-52432 tool_lp: Add ability to unlink a plan from its template 2016-04-18 10:58:48 +08:00
Issam Taboubi 7a9f14c396 MDL-52531 tool_lp: The complete_plan task shouldn't complete draft plans 2016-04-18 10:58:48 +08:00
Serge Gauthier 17d5cc9be2 MDL-52528 tool_lp: Weird behaviour if deleting competency in user plan 2016-04-18 10:58:48 +08:00
Frederic Massart 20c2fe3e98 MDL-52106 tool_lp: Remove rules when manipulating competencies 2016-04-18 10:58:48 +08:00
Frederic Massart 29530d6356 MDL-52426 tool_lp: Avoid missing or empty table cell in templates 2016-04-18 10:58:48 +08:00
Serge Gauthier 935e9e90b6 MDL-52426 tool_lp: Show template competencies page with read permission 2016-04-18 10:58:48 +08:00
Frederic Massart 92d4946e19 MDL-52424 tool_lp: Prevent missing table cell when viewing plans page 2016-04-18 10:58:48 +08:00
Issam Taboubi 19456fec66 MDL-52424 tool_lp: Plans page should show the template based on 2016-04-18 10:58:48 +08:00
Damyon Wiese 65a67e238d MDL-51040 cbe: Fixes from peer review
No logic changes here - only small refactorings based on feedback from
peer review.
2016-04-18 10:58:48 +08:00
Damyon Wiese 9f422dc2e9 MDL-51040 cbe: New user_competency_in_course page 2016-04-18 10:58:48 +08:00
Damyon Wiese 476a98d0fb MDL-51040 cbe: Add new renderables to the renderer.
Used on the user_competency_in_course page.
2016-04-18 10:58:48 +08:00
Damyon Wiese 571c3c4324 MDL-51040 cbe: Add properties to course_competencies_page renderable
The extra properties are used to show the current users rating for
each competency (if they are gradable).
2016-04-18 10:58:48 +08:00
Damyon Wiese 18c17cac61 MDL-51040 cbe: Add profileurl to user_summary_exporter
It is useful to make user summaries link to their profile.
2016-04-18 10:58:47 +08:00
Damyon Wiese 949cda2c10 MDL-51040 cbe: Fix invalid structure returned from webservice
This exporter was exporting a user_competency_plan in a user_competency
structure which is invalid because status is missing.
2016-04-18 10:58:47 +08:00
Damyon Wiese e1964c9094 MDL-51040 cbe: Functions supporting user competency in course
New functions data_for_user_competency_summary_in_course and
grade_user_competency_in_course.
2016-04-18 10:58:47 +08:00
Damyon Wiese 02f9db888c MDL-51040 cbe: Competency API changes
Modify the list_user_competencies_in_course function to create the relations
if they do not exist.
Add new api function to grade a competency in a course.
Fix the permissions check for listing related competencies.
2016-04-18 10:58:47 +08:00
Damyon Wiese e07c2ef62a MDL-51040 cbe: Improve the competency breakdown report
This report now opens the user_competency_summary_in_couse in a popup
when clicking on any cell in the report. The report is refreshed when the popup
is closed.
2016-04-18 10:58:47 +08:00
Damyon Wiese 3fb067a203 MDL-51040 cbe: Allow competency rating in course or plan
Modify the inline competency rating module to handle rating competencies
in a course or in a plan.
2016-04-18 10:58:47 +08:00
Damyon Wiese 06475034f2 MDL-51040 cbe: Add standard options to dialog
Add a new "wider" width option (800px wide) and an afterHide callback
2016-04-18 10:58:47 +08:00
Damyon Wiese bf780fbfe0 MDL-51043 cbe: Competency breakdown report 2016-04-18 10:58:47 +08:00
Damyon Wiese 0845a3a09a MDL-51648 cbe: Refactor the user_competency_summary exporter
Split it into a core exporter, and an extended one that adds information about the plan.
Also
* Remove userid from grade_competency_in_plan function (redundant)
* Improve the signature of list_evidence so it can handle completed plans (later)
* Rename read_user_competency_summary to data_for_user_competency_summary_in_plan
* Handle completed plans (list user_competency_plan as well as user_competency)
* Remove user_can_see_details_cap handling - if you can see the users plan you can see the user
* Pass final scaleconfiguration in the competency_summary_exporter
* Add docs comments to new templates
2016-04-18 10:58:47 +08:00
Damyon Wiese 3c659fc202 MDL-51648 cbe: Add a user competency plan summary page (allows grading) 2016-04-18 10:58:47 +08:00
Frederic Massart 1ab69549ad MDL-52425 tool_lp: Bug when trying to add child competencies 2016-04-18 10:58:47 +08:00
Frederic Massart 9373acf645 MDL-52425 tool_lp: Competency rules apply when a competency is completed 2016-04-18 10:58:47 +08:00
Serge Gauthier d327579538 MDL-52242 tool_lp: Competencies listed in a completed plan must never change 2016-04-18 10:58:47 +08:00
Frederic Massart 5475357231 MDL-52229 tool_lp: Due templates cannot be updated
Noticed during integration that we could not update a template
which duedate had been reached. Even without changing it.
2016-04-18 10:58:46 +08:00
Frederic Massart f442860781 MDL-52282 tool_lp: Template cohorts sync doesn't recreate unlinked plans 2016-04-18 10:58:46 +08:00
Issam Taboubi 964afa98e7 MDL-52229 tool_lp: Handle hidden templates/frameworks 2016-04-18 10:58:46 +08:00
Issam Taboubi ed549dbfcb MDL-52282 tool_lp: Create a scheduled task to sync plans from cohorts 2016-04-18 10:58:46 +08:00
Frederic Massart 52eda87637 MDL-51869 tool_lp: Linking evidence of prior learning with competencies 2016-04-18 10:58:46 +08:00
Serge Gauthier 156675ed3d MDL-52233 tool_lp: Show competency's idnumber in user learning plan 2016-04-18 10:58:46 +08:00
Frederic Massart 7507b82a18 MDL-49463 tool_lp: New form base class for persistent models 2016-04-18 10:58:46 +08:00
Frederic Massart 6c2b163c97 MDL-49463 tool_lp: Ability to add evidence of prior learning 2016-04-18 10:58:46 +08:00
Issam Taboubi 768181bde9 MDL-52235 tool_lp: Check capability on Add new learning plan button 2016-04-18 10:58:46 +08:00
Serge Gauthier dd1ce7637b MDL-51942 tool_lp: Ensure that constant MOODLE_INTERNAL is used everywhere 2016-04-18 10:58:46 +08:00
Issam Taboubi 06b6fd62c0 MDL-52272 tool_lp: Rename Status and State on plan page 2016-04-18 10:58:46 +08:00
Issam Taboubi 3779826242 MDL-52418 tool_lp: Invalid responses in somes pages 2016-04-18 10:58:46 +08:00
Frederic Massart 12888abaa8 MDL-52423 tool_lp: Page to view a plan and its information 2016-04-18 10:58:45 +08:00
Frederic Massart b274c295fc MDL-52423 tool_lp: Support for optional 'other' properties in exporters
Webservices do not support nor accept null values for structures.
Being able to mark some properties as optional allows for the
definition to support missing properties when they would otherwise
have been set to null.
2016-04-18 10:58:45 +08:00
Frederic Massart 0875cc18e5 MDL-52423 tool_lp: Allow null related objects in exporters
Note that the related objects MUST always ALL be passed to the
constructor when instantiating objets, even if they are null.

Related objects were introduced to improve performance and their
requirement is one way to ensure that developers don't forget them.
2016-04-18 10:58:45 +08:00
Damyon Wiese 721813033d MDL-51967 cbe: Fix some wonky service descriptions
Some of the webservices return data is not matching it's signature.
Also some of the templates/contexts needed aligning.
2016-04-18 10:58:45 +08:00
Damyon Wiese 49c5b8b440 MDL-51967 cbe: Use the competency_summary_exporter for the competency dialogue. 2016-04-18 10:58:45 +08:00
Issam Taboubi 2e90c62f79 MDL-51967 tool_lp: Create a dialogue to view the competency information 2016-04-18 10:58:45 +08:00
Frederic Massart 9fb8385183 MDL-51962 tool_lp: Validate the grade in evidence 2016-04-18 10:58:45 +08:00
Serge Gauthier 4de456cdfb MDL-51962 tool_lp: Validate that the grade in user_competency is valid 2016-04-18 10:58:45 +08:00
Frederic Massart 914b580eb6 MDL-49461 tool_lp: Competencies can be marked with course completion 2016-04-18 10:58:45 +08:00
Frederic Massart 40e5ad0e99 MDL-49461 tool_lp: Adding generators for course_competency 2016-04-18 10:58:45 +08:00
Frederic Massart 71f6c80c50 MDL-52062 tool_lp: Add some elements of plans pages depending on caps 2016-04-18 10:58:45 +08:00
Jean-Philippe Gaudreau 5c7383fd08 MDL-52062 tool_lp: Add User's learning plan navigation
* Added method page_helper::setup_for_plan
* Added hook to extend navigation
* Configured navigation in the following learning plan pages:
** plans.php
** plan.php
** editplan.php (For both Adding and editing of a learning plan)
2016-04-18 10:58:45 +08:00
Frederic Massart 4f3b2d977a MDL-49464 tool_lp: Not shared field name for course competencies rules
When doing so browsers can re-assign a value to a random field based
on another one when the page is refreshed.
2016-04-18 10:58:45 +08:00
Frederic Massart bb50f08db2 MDL-49464 tool_lp: Include course competencies in backups 2016-04-18 10:58:45 +08:00
Frederic Massart d660824b7f MDL-51039 tool_lp: Clean up during integration review 2016-04-18 10:58:45 +08:00
Serge Gauthier d4c0a2f66e MDL-51039 tool_lp: Add completion rules to course - competency links 2016-04-18 10:58:44 +08:00
Serge Gauthier 4c0e816733 MDL-52122 tool_lp: Create an API to register evidence to competencies 2016-04-18 10:58:44 +08:00
Frederic Massart 191644084b MDL-52266 tool_lp: Bump version number 2016-04-18 10:58:44 +08:00
Damyon Wiese 51247ea037 MDL-52266 cbe: Use a template + exporter for cohort summaries
Also add an 'includes' parameter to the cohort selector.
2016-04-18 10:58:44 +08:00
Frederic Massart 13ef20f65c MDL-52266 tool_lp: Cohorts can be removed from template synced cohorts 2016-04-18 10:58:44 +08:00
Frederic Massart dd1df08248 MDL-52266 tool_lp: Plans can be created from a cohort
And cohorts can be set to be sync with the template from the UI.
2016-04-18 10:58:44 +08:00
Frederic Massart a8a05b81cd MDL-51033 tool_lp: Create user plans from page listing template plans 2016-04-18 10:58:44 +08:00
Damyon Wiese ac9e4b8188 MDL-52198 cbe: Fix template docs for user selector summary 2016-04-18 10:58:44 +08:00
Damyon Wiese f896aa5126 MDL-52198 cbe: Add phpdocs for user filtering function. 2016-04-18 10:58:44 +08:00
Damyon Wiese 6880579736 MDL-52198 cbe: Move user summary to an exporter 2016-04-18 10:58:44 +08:00
Frederic Massart 80583e0dff MDL-52198 cbe: Add a user selector
For now this is only in tool_lp - for core we would wrap this with an mform element.
2016-04-18 10:58:44 +08:00
Frederic Massart a495d1a18b MDL-51858 backup: Support admin tools in course and module backups 2016-04-18 10:58:44 +08:00
Frederic Massart 9f1e6c132d MDL-51968 tool_lp: Ensure that user exists when creating a plan 2016-04-18 10:58:44 +08:00
Issam Taboubi 14199b8561 MDL-51682 tool_lp: Fix persistent sortorder handling to prevent holes 2016-04-18 10:58:43 +08:00
Frederic Massart 49ae39f747 MDL-51963 tool_lp: Reinforce scaleid validation to prevent changes 2016-04-18 10:58:43 +08:00
Frederic Massart bf62b21d0d MDL-51963 tool_lp: Really add the scaleid field on competency
Still without any intention to use it, we add the scale field in
the database just so we can already write the right validation for
the scale ID which is pretty important as our code will start relying
on it. E.g. we only support scaleid null, or greater than 0. Adding
the validation method clearly documents what our expectations are.
2016-04-18 10:58:43 +08:00
Frederic Massart 498cf28ce1 MDL-51963 tool_lp: Pretend that there is a scale ID on competency
The reason why we are doing that is to leave the door open for
competency scales later on. Which means that we can write code
that will rely on the competency to provide its scale even though
the default behaviour will be to use the framework one.
2016-04-18 10:58:43 +08:00
Damyon Wiese c80630da1c MDL-51041 cbe: More refactoring of exporters
* Unit tests for base exporter
* Use the course_summary_exporter for list_courses_using_competency
* Rename competency_with_linked_courses_exporter to competency_summary_exporter
* Split properties_definition in 2 (added read_properties_definition)
* Improve phpdocs
* Make some methods final
* Throw an error when other_properties overlap with properties
2016-04-18 10:58:43 +08:00
Damyon Wiese d04ea1665e MDL-51041 cbe: Refactor to allow non-persistent exporters 2016-04-18 10:58:43 +08:00
Damyon Wiese cc8348db07 MDL-51041 cbe: Add linked course information to the template competencies page. 2016-04-18 10:58:43 +08:00
Issam Taboubi 5b22462788 MDL-51953 tool_lp: Missing four services definitions 2016-04-18 10:58:43 +08:00
Issam Taboubi d805cc3745 MDL-52104 tool_lp: Improve UI for the change of states in plan 2016-04-18 10:58:43 +08:00
Frederic Massart f85ea576f0 MDL-52220 tool_lp: Adjust permission checks related to plans/templates 2016-04-18 10:58:43 +08:00
Frederic Massart c7999f6df2 MDL-52220 tool_lp: Updating a template updates its plans 2016-04-18 10:58:43 +08:00
Frederic Massart 6d2c2e8674 MDL-52220 tool_lp: API method to unlink a plan from a template 2016-04-18 10:58:43 +08:00
Frederic Massart 4de877eba0 MDL-52220 tool_lp: Prevent updates on a plan based on a template 2016-04-18 10:58:43 +08:00
Frederic Massart 2388d46de7 MDL-52220 tool_lp: Create plan from template API 2016-04-18 10:58:43 +08:00
Frederic Massart 926913feba MDL-52197 tool_lp: Page listing cohorts linked to a template 2016-04-18 10:58:43 +08:00
Frederic Massart bee480a4e7 MDL-52196 tool_lp: API to create a template/cohort relation 2016-04-18 10:58:42 +08:00
Frederic Massart 474090c80e MDL-52196 tool_lp: New persistent for template/cohort relationship 2016-04-18 10:58:42 +08:00
Frederic Massart 7d02292be5 MDL-51647 tool_lp: Adding index on plan status and duedate 2016-04-18 10:58:42 +08:00
Frederic Massart 68911f0e7f MDL-51647 tool_lp: Plans due date MUST include the time of the day
Just like templates. That is very important when multiple users
can edit the same plan and are in different timezones.
2016-04-18 10:58:42 +08:00
Frederic Massart 15882eca69 MDL-51647 tool_lp: Missing scale when exporting user_competency_plan 2016-04-18 10:58:42 +08:00
Frederic Massart 5bfab685ea MDL-51647 tool_lp: New task to close plans which are due 2016-04-18 10:58:42 +08:00
Jean-Philippe Gaudreau 5f9fa9f39a MDL-51647 tool_lp: Fix exporter error when plan completed 2016-04-18 10:58:42 +08:00
Frederic Massart 41682e53e3 MDL-52119 tool_lp: Invalid parameters for list_plan_competencies 2016-04-18 10:58:42 +08:00
Frederic Massart 47855def51 MDL-52195 tool_lp: Normalise the navigation in templates 2016-04-18 10:58:42 +08:00
Frederic Massart f0b2e58190 MDL-52195 tool_lp: New page that lists the plans of a template 2016-04-18 10:58:42 +08:00
Frederic Massart 578e61c18a MDL-52119 tool_lp: Solidify the exporters to avoid developer mistakes 2016-04-18 10:58:42 +08:00
Damyon Wiese 8ec5f810f4 MDL-52119 cbe: Use generated structures for persistent classes 2016-04-18 10:58:42 +08:00
Frederic Massart a6ec05b675 MDL-51868 tool_lp: Create evidence persistent 2016-04-18 10:58:42 +08:00
Damyon Wiese 0267097956 MDL-52064 cbe: Fixes for unit tests.
There were some real failures that the unit tests caught.
2016-04-18 10:58:42 +08:00
Damyon Wiese 5db5c22c15 MDL-52064 cbe: Exporters are generic exporters - not for output
Making the persistent_exporter implement templatable, implies that the
exporters are designed for output - but they are not - they are designed
for any data returned through an external function. So lets not make them templatable,
and make the default function name "export".
2016-04-18 10:58:41 +08:00
Damyon Wiese a214d35ec2 MDL-52064: Improve persistent exporter
- Use to_record instead of custom getters
- Remove custom formatting for taxonomies
- Fix bugs in exporter (PARAM_FORMAT was wrong)
- use $comp->get_context() instead of $comp->get_framework()->get_context()
2016-04-18 10:58:41 +08:00
Damyon Wiese 86938d0613 MDL-52064 cbe: Clean many common errors in external functions
Fixes include format_text/format_string
New persistent_exporter class to export persistent objects for use in external apis.
Always validate_context
Always use validated params - not raw params
Do not use "xxformatted" properties.
2016-04-18 10:58:41 +08:00
Damyon Wiese 7a3953dd52 MDL-52030 cbe: Fix drag and drop for manage competencies page
Previously I was attaching the drag / drop handlers to the list items,
which were nested which caused many wierd behaviours. Now I attach them only
to the span in the lists which are never nested.
2016-04-18 10:58:41 +08:00
Frederic Massart 1e18bc48ee MDL-51029 tool_lp: Competency list is indexed by ID 2016-04-18 10:58:41 +08:00
Damyon Wiese e1bbe57459 MDL-51038 cbe: Change the return value from the competency picker
If multi-select is not enabled, return a single competencyId, not an
array of competencyIds.
2016-04-18 10:58:41 +08:00
Damyon Wiese 04dc9983d8 MDL-51038 cbe: Fixes for multi-selection of the competency tree
* Added missing jsdocs
* Disable multi-select for the main competencies tree (only allow it in the popups).
* Disallow selecting the top node in the competencies picker
* When multi-select is disabled, the selectionchanged event now only passes the one node, not a list with one item.
* Removed the flash when loading the picker (by hiding the tree while it's being rendered)
2016-04-18 10:58:41 +08:00
Damyon Wiese ac588bf3de MDL-51038 competencies: Make the competencies tree handle multi-select
In the places where it makes sense, add shift/control click support to the
competencies tree (and the keyboard equivalent).
2016-04-18 10:58:41 +08:00
Frederic Massart fdaf46adbb MDL-51029 tool_lp: Before validate was not always called
When the validation already happened we did not call before_validate().
It must always be called as before_validate() can be used as if it was
a before_all() callback.
2016-04-18 10:58:41 +08:00
Frederic Massart 1896274ff5 MDL-51029 tool_lp: Implement competency rules 2016-04-18 10:58:41 +08:00
Jean-Philippe Gaudreau 192569ed17 MDL-51805 tool_lp: Freeze learning plan when it is marked as completed
This includes:
* Copy user competencies to user_competency_plan when updating plan
  with status complete.
* User competencies in user_competency_plan are deleted when the plan
  is set back to draft or active.
* the api::list_plan_competencies method is now returning
  user_competency_plan objects if plan status is complete.
* external functions and renderer have been adapted to the new api
  methods.
* Remove fields status and reviewerid from user_competency_plan
2016-04-18 10:58:41 +08:00
Damyon Wiese 6bf250f84e MDL-51961 cbe: UX improvements to manage competencies
1. The competencies tree should open with all nodes initially collapsed
    (unless there is less than 20 results, in which case they should all be expanded)
2. When the tree is refreshed, all previously selected nodes should be remembered
    and the tree expanded to that point.
3. While the tree is reloading - there should be a "spinner"
2016-04-18 10:58:41 +08:00
Damyon Wiese 91f3ad48d9 MDL-51957 cbe: Minor changes for competencies tree.
Minor JSDoc changes, and error handler changes.
2016-04-18 10:58:41 +08:00
Damyon Wiese 24f0680ca6 MDL-51957 competencies: Improvements to event handling
Add custom .on methods instead of expecting code outside the module
to know which node to bind to to listen for events.

Also keep the selectionChanged handler private to the competencyactions module.

Finally - fix the broken move competency action.
2016-04-18 10:58:41 +08:00
Damyon Wiese 85dbaf91ba MDL-51957 cbe: Use a jquery 'change' event instead of passing callbacks 2016-04-18 10:58:40 +08:00
Damyon Wiese 60bf8bb0aa MDL-51957 cbe: Cleanup data_for_manage_competencies_page webservice
Declare the correct return type and remove the commented code from the renderable.
2016-04-18 10:58:40 +08:00
Damyon Wiese fff88ad17d MDL-51957: Super pimp the performance of the aria tree. 2016-04-18 10:58:40 +08:00
Frederic Massart 8ff9ae8d6f MDL-50328 tool_lp: Unit test failure and little clean-up of plans page 2016-04-18 10:58:40 +08:00
Issam Taboubi 554b369b60 MDL-50328 tool_lp: Allow competencies to be assigned to a user plan 2016-04-18 10:58:40 +08:00
Frederic Massart 2ec1b70bcd MDL-51866 tool_lp: Framework scale cannot be changed once it is used 2016-04-18 10:58:40 +08:00
Issam Taboubi 4ad3ac34f4 MDL-51987 tool_lp: Create persistent plan_competencies 2016-04-18 10:58:40 +08:00
Frederic Massart 7f386a2e62 MDL-51034 tool_lp: Tests for list_plan_competencies 2016-04-18 10:58:40 +08:00
Frederic Massart 1d8f0a6f50 MDL-51034 tool_lp: List competencies in a user's plan 2016-04-18 10:58:40 +08:00
Issam Taboubi 58405003f8 MDL-51646 tool_lp: Implement plan status 2016-04-18 10:58:40 +08:00
Serge Gauthier 8a9030c18e MDL-51862 tool_lp: Create a persistent model user_competency_plan 2016-04-18 10:58:39 +08:00
Frederic Massart 5159d6794b MDL-51965 tool_lp: Revisit capabilities to read/manage plans
Templates can no longer be linked to the plan via the plan editing
page because we will need to handle plan linking/unlinking directly.
2016-04-18 10:58:37 +08:00
Serge Gauthier 6d57a987bf MDL-51644 tool_lp: Create persistent model for user_competency 2016-04-18 10:58:37 +08:00
Jean-Philippe Gaudreau 67e0b72fb2 MDL-51870 tool_lp: Use new ajax definition of external functions 2016-04-18 10:58:37 +08:00
Damyon Wiese dccdd4da87 MDL-51958 cbe: Increase the limit for the number of levels in a tree 2016-04-18 10:58:37 +08:00
Damyon Wiese 7605c5f40f MDL-51959 cbe: Validate the depth of the path of a competency 2016-04-18 10:58:37 +08:00
Serge Gauthier 53084abb75 MDL-51645 tool_lp: Rename the plan capabilities 2016-04-18 10:58:36 +08:00
Frederic Massart 3a4c71dc22 MDL-51856 tool_lp: Fixing PHPUnit notices and plan errors 2016-04-18 10:58:36 +08:00
Serge Gauthier e9831af3c2 MDL-51233 tool_lp: Remove unused ID number from learning plan templates
Conflicts:
	admin/tool/lp/version.php
2016-04-18 10:58:36 +08:00
Frederic Massart e52513ee2b MDL-51602 tool_lp: Use parent ID rather than node when building tree 2016-04-18 10:58:36 +08:00
Issam Taboubi c61db7bb6a MDL-51602 tool_lp: Add ability to duplicate a competency framework 2016-04-18 10:58:36 +08:00
Frederic Massart 03c6665894 MDL-51791 tool_lp: Improving persistent validation
- Validation methods must be protected
- An ID cannot be set when calling create()
2016-04-18 10:58:36 +08:00
Frederic Massart bf61cd0cf3 MDL-51442 tool_lp: Validate the frameworks' scale ID 2016-04-18 10:58:36 +08:00
Serge Gauthier 31582c1638 MDL-51442 tool_lp: Framework scales configuration must be mandatory 2016-04-18 10:58:36 +08:00
Frederic Massart 8cb101a7d2 MDL-51638 tool_lp: Display the taxonomy terms where relevant 2016-04-18 10:58:36 +08:00
Frederic Massart 0c65d52c7f MDL-51504 tool_lp: Validate the templates' due date 2016-04-18 10:58:36 +08:00
Frederic Massart a54d5b042a MDL-51026 tool_lp: Taxonomy terms can be defined on a framework 2016-04-18 10:58:36 +08:00
Frederic Massart 2327fe75f2 MDL-51598 tool_lp: Frameworks page displays correct competency count 2016-04-18 10:58:36 +08:00
Frederic Massart 14d9abc261 MDL-50482 tool_lp: Use list_competencies as static and bump version 2016-04-18 10:58:36 +08:00
Issam Taboubi 76c107eac1 MDL-50482 tool_lp: Add ability to duplicate a learning plan template 2016-04-18 10:58:36 +08:00
Frederic Massart 46fdd1d8ef MDL-50253 tool_lp: Port course competencies to new persistent model 2016-04-18 10:58:36 +08:00
Frederic Massart 72c9be0d8f MDL-50253 tool_lp: Implement a new competency picker 2016-04-18 10:58:35 +08:00
Frederic Massart c70519692a MDL-50253 tool_lp: Clean up of tests for related competencies 2016-04-18 10:58:35 +08:00
Frederic Massart 72a1e0dede MDL-50253 tool_lp: Introduction of data generators to learning plans 2016-04-18 10:58:35 +08:00
Frederic Massart aec5363ec1 MDL-50253 tool_lp: Clean up implementation of related competencies 2016-04-18 10:58:35 +08:00
David Monllao 68e961125e MDL-50253 tool_lp: Unit tests for related competencies
Conflicts:
	admin/tool/lp/tests/externallib_test.php
2016-04-18 10:58:35 +08:00
David Monllao 5a356fdb41 MDL-50253 tool_lp: New template for related competencies 2016-04-18 10:58:35 +08:00
David Monllao 72da1ab64b MDL-50253 tool_lp: Refactoring JS modules to reuse in related competencies
New competencyselector module used by competencies.js and competencyactions.js,
handles the competencies selection.

Conflicts:
	admin/tool/lp/amd/src/competencies.js
2016-04-18 10:58:35 +08:00
David Monllao 4f81545979 MDL-50253 tool_lp: Adding related competencies
Conflicts:
	admin/tool/lp/classes/api.php
	admin/tool/lp/classes/external.php
	admin/tool/lp/classes/output/renderer.php
	admin/tool/lp/db/install.xml
	admin/tool/lp/db/services.php
	admin/tool/lp/lang/en/tool_lp.php
	admin/tool/lp/version.php
2016-04-18 10:58:35 +08:00
Frederic Massart cf2cc1e2b0 MDL-51696 tool_lp: Record was overridden by record description 2016-04-18 10:58:35 +08:00
Serge Gauthier 3392a313c0 MDL-51507 tool_lp: External functions frameworks lack scale information 2016-04-18 10:58:35 +08:00
Issam Taboubi b397969665 MDL-51460 tool_lp: List frameworks' API function does not support order 2016-04-18 10:58:35 +08:00
Issam Taboubi 904291f21f MDL-51557 tool_lp: Add learning plans to the administration categories 2016-04-18 10:58:35 +08:00
Frederic Massart 6420fbab9b MDL-51506 tool_lp: Forms drop submitbutton from data 2016-04-18 10:58:34 +08:00
Frederic Massart 8c298391aa MDL-51031 tool_lp: Dropping sortorder field that was left behind 2016-04-18 10:58:34 +08:00
Frederic Massart cc643d16dd MDL-51506 tool_lp: Migrating template_competency to new model API 2016-04-18 10:58:34 +08:00
Frederic Massart 5af3778e13 MDL-51506 tool_lp: Migrating plan to new model API 2016-04-18 10:58:34 +08:00
Frederic Massart cda17bd961 MDL-51506 tool_lp: Migrating template to new model API 2016-04-18 10:58:34 +08:00
Frederic Massart b60702643c MDL-51506 tool_lp: Migrating competency_framework to new model API 2016-04-18 10:58:34 +08:00
Frederic Massart c27113d93e MDL-51506 tool_lp: Migrating competency to new model API 2016-04-18 10:58:34 +08:00
Frederic Massart 096166a026 MDL-51506 tool_lp: Unit Tests for persistent class 2016-04-18 10:58:34 +08:00
Frederic Massart 7bec03c5d0 MDL-51506 tool_lp: Implementing before/after (C)RUD hooks 2016-04-18 10:58:34 +08:00
Frederic Massart dee2fb575e MDL-51506 tool_lp: Implementing validation in the models 2016-04-18 10:58:34 +08:00
Issam Taboubi d192e248b7 MDL-51459 tool_lp: Template external functions do not return the duedate 2016-04-18 10:58:34 +08:00
Jean-Philippe Gaudreau c74f3e7d2e MDL-51496 tool_lp: Remove reorder services from db/services.php
Remove reorder competency framework and templates services from db/services.php.
2016-04-18 10:58:34 +08:00
Damyon Wiese d65b912df2 MDL-51139 tool_lp: Fix some javascript that was broken by a merge
The user learning plans page menus were broken by some refactoring.

Fixed during merge by Fred:
- Added space between icons and strings in action menu
- Recent changes caused the plans page to die when listing templates
2016-04-18 10:58:34 +08:00
Frederic Massart 679bce3692 MDL-51031 tool_lp: Removing ability to reorder the templates
This was done for the frameworks as well. As we display the templates
accross contexts, the sortorder will not produce the expected result
therefore it is better to remove it.
2016-04-18 10:58:34 +08:00
Frederic Massart ec324dc6e3 MDL-51031 tool_lp: Adding tests for template related functions 2016-04-18 10:58:34 +08:00
Frederic Massart f0da26a494 MDL-51031 tool_lp: Templates can be created on a category level 2016-04-18 10:58:33 +08:00
Frederic Massart 05105c2874 MDL-51025 tool_lp: Invalid parameter passed when deleting framework 2016-04-18 10:58:33 +08:00
Frederic Massart 44c6470d90 MDL-51025 tool_lp: Removing hardcoded link to frameworks in navigation 2016-04-18 10:58:33 +08:00
Issam Taboubi 562a0931bd MDL-51420 tool_lp: Fix failure in test_reorder_template_competencies 2016-04-18 10:58:33 +08:00
Frederic Massart 761a493cda MDL-51025 tool_lp: Dropping column sortorder for frameworks 2016-04-18 10:58:33 +08:00
Frederic Massart f610a95732 MDL-51025 tool_lp: Add context support to count_frameworks 2016-04-18 10:58:33 +08:00
Frederic Massart 68b385dff1 MDL-51025 tool_lp: More tests to cover category context 2016-04-18 10:58:33 +08:00
Frederic Massart 2de75345bb MDL-51025 tool_lp: Frameworks can be created on a category level 2016-04-18 10:58:33 +08:00
Frederic Massart 4511b7d694 MDL-51027 tool_lp: Require ID numbers for frameworks and competencies 2016-04-18 10:58:33 +08:00
Frederic Massart 473745a0fb MDL-51027 tool_lp: Competency search included unrelated parent 2016-04-18 10:58:33 +08:00
Ankit Agarwal b17d3d10d7 MDL-50608 tool_lp: Code cleanup 2016-04-18 10:58:33 +08:00
Mark Nelson 556838950f MDL-50608 tool_lp: tidy up and bug fixes 2016-04-18 10:58:33 +08:00
Ankit Agarwal 70c72e6623 MDL-50595 tool_lp: Make configure scale popup pretty 2016-04-18 10:58:33 +08:00
Ankit Agarwal ca536a4f81 MDL-50590 tool_lp: Fix error with scale popup 2016-04-18 10:58:32 +08:00
Damyon Wiese 7e8d4dac9b MDL-50308 tool_lp: Big javascript cleanup
This includes:
* Move all JS modules from lib/amd to admin/tool/lp/amd
* Add all jsdocs
* fix all jshint warnings
* Rewrite the actionmenu wrapper to a real amd module
2016-04-18 10:58:32 +08:00
Adrian Greeve d629323f72 MDL-50262 outcomes: Added scales and scale configuration.
Competency frameworks can now specify a scale to determine
proficiency.
2016-04-18 10:58:32 +08:00
Mark Nelson 9408e77eca MDL-49462 tool_lp: added unit tests for additional web services 2016-04-18 10:58:32 +08:00
Mark Nelson e90c24d09d MDL-49462 tool_lp: general bug fixes and tidy up 2016-04-18 10:58:32 +08:00
Mark Nelson 54c5a739dc MDL-49462 tool_lp: added template competencies page 2016-04-18 10:58:32 +08:00
David Monllao 24546ef21b MDL-49460 tool_lp: Some unit tests for plans crud 2016-04-18 10:58:32 +08:00
David Monllao 4db373d5cb MDL-49460 tool_lp: Adding user learning plans
Basic CRUD skeleton with external functions.
2016-04-18 10:58:32 +08:00
Damyon Wiese d9a39950b2 MDL-49459 Learning plans: Support for creating and editing competency frameworks.
This includes an API (\tool_lp\competency_api), a set of web services, unit tests for the web services and a nice UI built as an admin tool.
2016-04-18 10:58:32 +08:00
Damyon Wiese c2f30eeddb MDL-49264 Javascript: Add a simple version of dragdrop reordering
This is done in YUI with an AMD wrapper.
2016-04-18 10:58:32 +08:00
Damyon Wiese 61ddd5ecd4 MDL-49263 Javascript: Add an AMD wrapper for actionmenus 2016-04-18 10:58:32 +08:00
David Monllao 23fc1be833 MDL-53535 search_solr: Solr version restrictions
Also removing is_server_ready call from execute_query as in production
workflows search is done through \core_search\manager::search and
\core_search\manager::instance already checks is_server_ready. In
testing environment setUp functions should check that the server is
ready before performing other actions.
2016-04-18 09:59:58 +08:00
Eric Merrill 053118a184 MDL-53758 search: Better results with low hit rates, improve performance
Ensures that Solr will return available results, even if there are many
misses when using check_access(), by asking Solr for more results if the
counter says there should be more.

Improves performance by ending processing as soon as the requested page
of results is processed. Remaining number of pages is an "estimate"
based on the total result count from Solr and how many items we have
rejected up to this point.
2016-04-17 21:59:25 -04:00
Julien Boulen eba237b347 MDL-47672 Enrolments, Themes: fix misalignment on enrolled users page 2016-04-18 09:32:22 +08:00
David Monllao 064814eabe MDL-52490 mod_assign: Patch refinements 2016-04-18 09:17:08 +08:00
evltuma d0d8a2da8f MDL-52490 assign: download selected assigment submissions as zip file 2016-04-18 09:17:08 +08:00
Ben Kelada 48143990e0 MDL-53345 forum: rename itemid 2016-04-18 11:04:57 +10:00
Ben Kelada e881c4f5c3 MDL-53345 forum: Add attachmentareaid to support attachments in api 2016-04-18 11:04:57 +10:00
Ben Kelada 41182118ae MDL-53345 forum: Add item id as parameter to support inline attachments 2016-04-18 11:04:57 +10:00
Vadim Dvorovenko e6b2598b75 MDL-53799 Navigation: Text keys for questionbank
Adding text keys for navigation nodes for questionbank, course reset
   and switchroles
2016-04-17 22:54:57 +07:00
Damyon Wiese 77a530601a MDL-53841 assign: Fix for assignment listing page.
Was throwing debugging because there is no course module defined on this page.
2016-04-17 22:35:41 +08:00
Eloy Lafuente (stronk7) 4f33514063 weekly release 3.1dev 2016-04-15 10:19:04 +02:00
Eloy Lafuente (stronk7) cd9e057be3 NOBUG: Fixed file access permissions 2016-04-15 10:19:04 +02:00
Eloy Lafuente (stronk7) bdc5337644 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-04-15 10:18:59 +02:00
Damyon Wiese 821ab1bf9b MDL-52954 assign: Behat fixes because the assign grading ui has changed 2016-04-15 15:57:56 +08:00
David Monllao 1076e02f29 MDL-53309 grades: Only update when required 2016-04-15 15:15:32 +08:00
liorgi db3a6216cc MDL-48089 mod_forum: Improve DB query in observer 2016-04-14 14:20:32 +01:00
Dan Poltawski e11127b4bf MDL-53813 search: prevent form change checker on search form
When we are searching for things we don't have text input we need to
care about loosing.
2016-04-14 14:02:01 +01:00
Damyon Wiese 11c16f5fc8 MDL-53772 externallib: Deprecate external_function_info() 2016-04-14 15:07:41 +08:00
Damyon Wiese e02e7f5a01 MDL-53772 libraries: More context fixes
1. Improve upgrade note
2. Don't abuse $PAGE to get the current course/cm
3. Use validate_context, never $PAGE->set_context()
4. Reset current coursemodule in validate_context().
5. Respect moodlepageclass when calling an external function.
2016-04-14 15:02:41 +08:00
David Monllao e689d68b54 Merge branch 'MDL-52954-master-behat-fixes' of git://github.com/damyon/moodle 2016-04-14 14:26:16 +08:00
David Monllao 3dd89357d4 Merge branch 'MDL-53772-master' of git://github.com/damyon/moodle
Conflicts:
	lib/upgrade.txt
2016-04-14 14:01:16 +08:00
Marina Glancy 787ec240c1 MDL-53772 inplace_editable: set context in callbacks 2016-04-14 13:58:29 +08:00
Damyon Wiese 56fa860ead MDL-53772 externallib: Fix busted webservices context handling
Fix:
$PAGE->context must be reset when calling validate_context

Improve:
Provide wrapper for calling an external function

The wrapper correctly checks the function parameters and return type against
the description of the external function, and stores the PAGE and COURSE global
state variables, restoring them before the function returns.

Fix: buggy unit tests.

These tests are expecting debugging from a bug that was fixed, and calling web
service functions with no user or session.
2016-04-14 13:58:23 +08:00
Mark Nielsen 39b2d8700d MDL-53660 mod_forum: Fix coding style 2016-04-13 15:59:45 +01:00
Mark Nielsen 9258045b9b MDL-53660 mod_forum: Fix link decoding in single discussions
This only happens when user data is not included.
2016-04-13 15:59:44 +01:00
Damyon Wiese 5267d632ff MDL-52954 assign: Fixes to webservices and context.
This patch gets the behat tests passing again - but only with MDL-53772 in the branch.
2016-04-13 21:23:50 +08:00
Gareth J Barnard c44ec0d6aa MDL-53033 themes: Invalid attribute values for div.c1.btn. 2016-04-13 13:10:11 +01:00
Dan Poltawski e92a39cf0c Revert "Merge branch 'MDL-52944-master' of git://github.com/cameron1729/moodle"
This reverts commit 61a0465ce7, reversing
changes made to 2408f8fe2b.
2016-04-13 10:48:59 +01:00
David Risner 4584c3de23 MDL-53095 repository_merlot: change merlot url use https 2016-04-13 15:10:26 +08:00
David Monllao 27cec47220 Merge branch 'wip-MDL-53443-fix' of git://github.com/marinaglancy/moodle 2016-04-13 12:41:04 +08:00
Marina Glancy 47f4909a08 MDL-53443 mod_feedback: fix SQL statment to work on all DB 2016-04-13 12:00:14 +08:00
Marina Glancy b06a90b0a0 MDL-53798 search: correct URL for frontpage course 2016-04-13 11:35:10 +08:00
David Monllao 8918a8115e MDL-53796 behat: Move get_debug_text to base class 2016-04-13 10:34:28 +08:00
David Monllao 101303034f Merge branch 'wip-MDL-16855-master' of https://github.com/marinaglancy/moodle 2016-04-13 09:51:35 +08:00
Eric Merrill e214f22f39 MDL-53795 logging: Add DB index for use when backing up logs 2016-04-12 21:44:15 -04:00
David Monllao 27bfb0ee9b Merge branch 'wip-MDL-45064-master' of https://github.com/marinaglancy/moodle 2016-04-13 09:38:12 +08:00
Eloy Lafuente (stronk7) 1d981ae4c2 Merge branch 'wip-MDL-53443-master' of https://github.com/marinaglancy/moodle 2016-04-13 03:26:46 +02:00
Marina Glancy df003a85f0 MDL-53443 mod_feedback: templates code clean up and behat tests 2016-04-13 09:21:33 +08:00
Marina Glancy 2348c13732 MDL-45064 mod_lti: use callback get_shortcuts()
deprecate callback for ltisource plugins get_types(), instead introduce
get_shortcuts()
2016-04-13 08:30:05 +08:00
Marina Glancy 9ca0420e93 MDL-45064 course: mod callback get_shortcuts()
also deprecate callback get_types()
2016-04-13 08:30:04 +08:00
John Okely 01e8bfd745 MDL-45064 lti: LTI types in activity chooser 2016-04-13 08:30:04 +08:00
Marina Glancy 92c90b96ce MDL-25742 mod_wiki: show wiki pages tagged with a tag 2016-04-13 07:57:58 +08:00
Marina Glancy f40b444ef8 MDL-52707 tags: fix SQL query to work on all DBs 2016-04-13 07:46:44 +08:00
Eloy Lafuente (stronk7) aca13ea2b6 Merge branch 'MDL-53642-master' of git://github.com/merrill-oakland/moodle 2016-04-12 22:39:26 +02:00
Eloy Lafuente (stronk7) 11c673f3a3 Merge branch 'MDL-53167-master' of git://github.com/merrill-oakland/moodle 2016-04-12 21:34:41 +02:00
AMOS bot 6526005fcf Automatically generated installer lang files 2016-04-13 00:04:10 +08:00
Dan Poltawski d350414813 Merge branch 'MDL-52263-master' of git://github.com/crazyserver/moodle 2016-04-12 16:50:29 +01:00
Dan Poltawski 61a0465ce7 Merge branch 'MDL-52944-master' of git://github.com/cameron1729/moodle 2016-04-12 14:13:36 +01:00
Pau Ferrer Ocaña b1a9804a9b MDL-52263 libraries: Add test cases to external_format_text options 2016-04-12 15:05:46 +02:00
Pau Ferrer Ocaña 19a131edff MDL-52263 libraries: Add options to external_format_text 2016-04-12 14:39:23 +02:00
Frederic Massart bf6239eddb MDL-53779 external: get_string and get_strings use PARAM_RAW
For the string parameters and translated strings.
2016-04-12 17:04:19 +08:00
Damyon Wiese 2408f8fe2b MDL-52954 assign: Fix CSS lint issues 2016-04-12 08:19:31 +01:00
spvickers 82f5226576 MDL-49754 mod_lti: Fixes to JSON format
@id elements in JSON corrected to match the IMS spec.  Version number of
the service updated.
2016-04-12 15:08:28 +08:00
David Monllao 212153767a Merge branch 'wip-MDL-52707-master' of https://github.com/marinaglancy/moodle 2016-04-12 14:34:11 +08:00
Adrian Greeve cfd1bcfa03 MDL-52642 blog: Fix notices for swapping contexts in activities. 2016-04-12 11:53:34 +08:00
David Monllao 45c49f3218 Merge branch 'MDL-53007_master' of https://github.com/marxjohnson/moodle 2016-04-12 11:31:17 +08:00
David Monllao b79b53d452 Merge branch 'MDL-53770-master' of git://github.com/marinaglancy/moodle 2016-04-12 10:54:03 +08:00
Stephen Bourget 2ed2e692a6 MDL-52642 block_blog_menu: behat test 2016-04-12 10:45:33 +08:00
David Monllao 87c221a7a9 Merge branch 'MDL-53703-master' of git://github.com/dpalou/moodle 2016-04-12 10:06:30 +08:00
Eric Merrill 935ee1c6c6 MDL-53167 search: Adding unit tests for external API change 2016-04-11 21:24:18 -04:00
Henning Bostelmann 64ccb37d49 MDL-53780 mod_assign: Remove teachers from submission group members 2016-04-11 19:45:26 +01:00
AMOS bot f82ad999cb Automatically generated installer lang files 2016-04-12 00:04:19 +08:00
Dan Poltawski 1dd254bbf1 Merge branch 'MDL-53417-master' of git://github.com/cameron1729/moodle 2016-04-11 16:36:50 +01:00
Dan Poltawski 4a39dd3071 Merge branch 'wip-MDL-53363-master' of https://github.com/marinaglancy/moodle 2016-04-11 16:34:26 +01:00
Dan Poltawski d5327021e0 Merge branch 'MDL-53440-master' of git://github.com/cameron1729/moodle 2016-04-11 15:28:37 +01:00
Dan Poltawski c62fa3c0b9 Merge branch 'MDL-53613-master' of git://github.com/merrill-oakland/moodle 2016-04-11 15:14:59 +01:00
Dan Poltawski 6ff935c206 Merge branch 'MDL-53674-master-eventmsg' of git://github.com/mudrd8mz/moodle 2016-04-11 14:29:14 +01:00
Dan Poltawski 35b3f50ee2 Merge branch 'MDL-53728' of git://github.com/timhunt/moodle 2016-04-11 14:02:29 +01:00
Dan Poltawski 5ce14ec291 Merge branch 'MDL-52338' of https://github.com/dg711/moodle 2016-04-11 13:53:18 +01:00
Dani Palou 7ef81de827 MDL-53703 wiki: Add tests for mod_wiki_get_subwiki_files 2016-04-11 11:13:02 +02:00
Dani Palou 62e20cfed6 MDL-53703 wiki: New WS mod_wiki_get_subwiki_files 2016-04-11 11:13:01 +02:00
Dan Poltawski a8b33e8e10 MDL-52954 mod_assign: fix trailing whitespace 2016-04-11 10:07:17 +01:00
Dan Poltawski 728da02780 MDL-52954 editpdf: fix phpdoc 2016-04-11 09:55:38 +01:00
Dan Poltawski 5702a8289b Merge branch 'MDL-52954-master' of git://github.com/damyon/moodle 2016-04-11 09:52:40 +01:00
Dani Palou 31bfb00809 MDL-53709 wiki: Return content size if includecontent=0 2016-04-11 09:00:53 +02:00
David Monllao 9bfb76c40d Merge branch 'MDL-52942-master' of git://github.com/andrewnicols/moodle 2016-04-11 14:24:27 +08:00
David Monllao 468ef66775 Merge branch 'MDL-52385-master' of git://github.com/andrewnicols/moodle 2016-04-11 13:54:23 +08:00
Marina Glancy 4218ad9371 MDL-53363 tags: helper to search for tagged items; search course modules 2016-04-11 13:22:47 +08:00
Andrew Nicols c0e3c8ae0d MDL-52942 forum: Allow posting to multiple groups in eachuser forums 2016-04-11 12:23:47 +08:00
Devang Gaur f58c96f6b0 MDL-52338 blocks: message link should not appear when set false 2016-04-11 08:28:31 +05:30
David Monllao 2a84fae088 MDL-53709 mod_wiki: Update includecontent description 2016-04-11 10:13:39 +08:00
David Monllao 67fc5bcb75 Merge branch 'MDL-53709-master' of git://github.com/dpalou/moodle 2016-04-11 10:12:02 +08:00
Marina Glancy 1e34257ec2 MDL-16855 tags: allow to filter tags on management page 2016-04-11 10:04:17 +08:00
Marina Glancy 0d2027896d MDL-52707 core_tag: allow to combine tags 2016-04-11 09:49:56 +08:00
Marina Glancy a0dbba8308 MDL-53770 mod_lti: allow to uninstall ltisource plugins 2016-04-11 09:03:49 +08:00
liorgi 73dcd8282a MDL-53702 mod_forum: Remove unused variables 2016-04-10 08:51:57 +03:00
David Mudrák db1d5b104b MDL-53674 event monitor: Do not send HTML as plain text formatted emails
There were two problems here.

* The $msgdata->fullmessage was always formatted as HTML even if the
  $msgdata->fullmessageformat was set to the original template's format.
* The plain text part of the emailed message contained HTML code.

The patch makes sure that the original template is always formatted into
HTML and then converted to plain text before setting the text/plain
multipart of the sent email.
2016-04-08 15:14:23 +02:00
Andrew Hancox 2944a41c25 MDL-53043 enrol_manual: Move search field on quickenrol modal 2016-04-08 10:14:09 +01:00
Cameron Ball a6a59bcaa4 MDL-52944 atto: Use event-key to handle enter key 2016-04-08 12:25:27 +08:00
Panagiotis Nikoloutsopoulos 92a8ca4ba2 MDL-52944 atto: Contenteditable command 'FormatBlock' set to 'p' 2016-04-08 12:13:23 +08:00
Eric Merrill 455f4346e5 MDL-53613 search: Add collaborative wiki pages to global search 2016-04-07 14:56:00 -04:00
Eric Merrill 501801a2f8 MDL-53642 search: Allow selection of multiple areas to filter 2016-04-07 14:47:47 -04:00
Eric Merrill 427e3cbcd6 MDL-53167 search: Add ability to limit courses searched 2016-04-07 14:41:59 -04:00
Andrew Hancox 8dd42b3891 MDL-53382 core: Move select all link 2016-04-07 17:31:37 +01:00
liorgi 7664fe2efb MDL-53702 mod_forum: Remove unused variables 2016-04-07 17:34:18 +03:00
Mark Johnson a9c52c78dd MDL-53007 block_navigation: Set width of item text to prevent overflow 2016-04-07 11:53:07 +01:00
Dan Poltawski b611ade3ab weekly release 3.1dev 2016-04-07 09:43:39 +01:00
Juan Leyva 92ea1fa068 MDL-53000 mod_assign: Unit tests for get_file_areas 2016-04-07 09:27:15 +01:00
Dani Palou b1be9b2010 MDL-53709 wiki: Return content size if includecontent=0 2016-04-07 08:43:31 +02:00
Andrew Nicols 0a94763ae8 weekly release 3.1dev 2016-04-07 14:00:25 +08:00
Andrew Nicols cbb817c08c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-04-07 14:00:21 +08:00
Andrew Nicols ba1cdfe0ee Merge branch 'MDL-53577-fix' of https://github.com/andrewnicols/moodle 2016-04-07 12:10:57 +08:00
Andrew Nicols 82eb2cf1be MDL-53577 JS: get_string requires component 2016-04-07 12:10:26 +08:00
Daniel Neis Araujo dfb9daeae2 MDL-52385 tasks: Queue ad-hoc tasks in future 2016-04-07 11:49:52 +08:00
Abhijit A.M 1b276bfc9d MDL-53440 course: Better interface for approving multiple courses
Added another target 'pending' in course/edit.php for redirection
This will help administrator/managers approve multiple courses
one after another
2016-04-07 10:38:42 +08:00
Andrew Nicols b2c40917c3 Merge branch 'MDL-53579-intfix' of https://github.com/merrill-oakland/moodle 2016-04-07 09:40:40 +08:00
Andrew Nicols 38a3f5f996 Merge branch 'wip-mdl-52502-fix' of https://github.com/rajeshtaneja/moodle 2016-04-07 09:38:52 +08:00
Rajesh Taneja 80c3b48409 MDL-52502 behat: Flush buffer to show differences 2016-04-07 09:29:50 +08:00
Eric Merrill f6b4ec7b78 MDL-53579 search: Improve solr engine field name 2016-04-06 21:26:55 -04:00
Eric Merrill 546c0af511 MDL-53579 search: Fix conflict with eDisMax parser and indexed files 2016-04-06 14:09:35 -04:00
AMOS bot 3029acdedd Automatically generated installer lang files 2016-04-07 00:04:42 +08:00
Tim Hunt f06eacd99d MDL-53728 question import/export: improve form structure 2016-04-06 15:35:29 +01:00
Dan Poltawski 4fc04cfeaf Merge branch 'wip-mdl-53571' of https://github.com/rajeshtaneja/moodle 2016-04-06 08:42:27 +01:00
Rajesh Taneja 921faad9ad MDL-53571 behat: Use Escaper for escaping
xpathLiteral has been depreacted, use Escaper instead
2016-04-06 15:38:31 +08:00
Andrew Nicols d147514986 Merge branch 'wip-mdl-53381' of https://github.com/rajeshtaneja/moodle 2016-04-06 11:53:41 +08:00
Rajesh Taneja ccceab9974 MDL-53381 behat: Pointing to 3.31.1 release tag. 2016-04-06 11:32:50 +08:00
Rajesh Taneja eb9ca848fa MDL-53381 behat: Replaced chained steps with api.
Behat 3.x doesn't support chained steps and hence
this is first step to get rid of chained steps in core.
2016-04-06 11:32:49 +08:00
Eloy Lafuente (stronk7) cffc012645 Merge branch 'wip-MDL-43470-master2' of https://github.com/marinaglancy/moodle 2016-04-06 04:35:50 +02:00
Marina Glancy 9b9b9caba3 MDL-43470 mod_feedback: remove mapping form autosave 2016-04-06 10:29:56 +08:00
Marina Glancy ed724aac99 MDL-43470 mod_feedback: select courses for mapping
- use course autocomplete element to map courses
- add a tab and navigation node
- clean up some html
- cover course mapping with behat tests
2016-04-06 10:13:33 +08:00
Eloy Lafuente (stronk7) e44b55f5d0 Merge branch 'MDL-53115-master' of git://github.com/andrewnicols/moodle 2016-04-06 03:32:57 +02:00
Andrew Nicols 9e6c63a7e1 MDL-53461 assign: Unit test regex fix 2016-04-06 08:56:07 +08:00
Andrew Nicols 7056234938 Merge branch 'MDL-53461-master' of git://github.com/crazyserver/moodle 2016-04-06 08:47:12 +08:00
Eloy Lafuente (stronk7) d9c557250c MDL-52502 behat: clean 2 uses of deleted method 2016-04-06 00:16:08 +02:00
Eloy Lafuente (stronk7) f6825a62ef Merge branch 'wip-mdl-52502' of https://github.com/rajeshtaneja/moodle 2016-04-06 00:12:00 +02:00
Eloy Lafuente (stronk7) 76d02bb8ac Merge branch 'MDL-53671-master' of git://github.com/dpalou/moodle 2016-04-05 23:57:21 +02:00
Eloy Lafuente (stronk7) 68f009dfb3 Merge branch 'MDL-53669_master' of git://github.com/markn86/moodle 2016-04-05 22:02:02 +02:00
Eloy Lafuente (stronk7) 1183dfa0f7 Merge branch 'MDL-53647' of git://github.com/timhunt/moodle 2016-04-05 21:59:23 +02:00
Dan Poltawski cf0f0fc7f4 Merge branch 'MDL-53612-master' of git://github.com/merrill-oakland/moodle 2016-04-05 16:25:05 +01:00
Dan Poltawski 245192accc Merge branch 'MDL-50050-master' of git://github.com/lameze/moodle 2016-04-05 16:23:24 +01:00
Dan Poltawski 9bb87baf18 MDL-53449 mod_feedback: reponses page clean up and behat 2016-04-05 14:46:20 +01:00
Dan Poltawski f164cab739 Merge branch 'MDL-53104-master' of git://github.com/lameze/moodle 2016-04-05 14:27:25 +01:00
Dan Poltawski 529ea77b13 MDL-53175 upgrade.txt: fix trailing whitespace 2016-04-05 12:23:50 +01:00
Dan Poltawski 393329069d Merge branch 'MDL-53175-master' of git://github.com/jleyva/moodle 2016-04-05 10:47:19 +01:00
Dan Poltawski 88e8e6006f Merge branch 'MDL-53633-master' of git://github.com/andrewnicols/moodle 2016-04-05 09:40:41 +01:00
Dan Poltawski c56e8bc6ff Merge branch 'MDL-53577_master' of https://github.com/jinhofer/moodle 2016-04-05 09:38:00 +01:00
Pau Ferrer Ocaña 988065c045 MDL-53461 assign: Fix intro images to be shown in the mobile app 2016-04-05 09:33:15 +02:00
Dan Poltawski c019cc57f4 Merge branch 'MDL-53595' of git://github.com/stronk7/moodle 2016-04-05 08:28:48 +01:00
Andrew Nicols efaf5c0570 MDL-53056 JS: Whitespace fix 2016-04-05 14:58:57 +08:00
Andrew Nicols 2697ece323 Merge branch 'MDL-53056-master' of git://github.com/damyon/moodle 2016-04-05 14:57:26 +08:00
Andrew Nicols 44a72e9bd0 Merge branch 'MDL-53462-master' of git://github.com/jleyva/moodle 2016-04-05 12:54:58 +08:00
Andrew Nicols 0ddddf264b Merge branch 'MDL-53500-master' of git://github.com/cameron1729/moodle 2016-04-05 12:22:42 +08:00
Rajesh Taneja e891c8381e MDL-52502 behat: Ensure php web and cli version is same 2016-04-05 11:46:44 +08:00
Rajesh Taneja af2dc48b41 MDL-52502 phpunit: Add php, db and os deatils 2016-04-05 11:46:43 +08:00
Andrew Nicols 0c21d79627 Merge branch 'MDL-53579-master' of git://github.com/merrill-oakland/moodle 2016-04-05 11:20:45 +08:00
Andrew Nicols 7dbc7a60fc MDL-53588 mod_feedback: Behat scenario verb change 2016-04-05 10:22:01 +08:00
Andrew Nicols 1d51dedb77 Merge branch 'wip-MDL-53588-master' of https://github.com/marinaglancy/moodle 2016-04-05 09:36:16 +08:00
Ben Tindell a2fb838e82 MDL-53577 repository: Added maxbytes error message
Changing the error message that is displayed to users when they
upload a file that is greater than the maximum upload size. Does not
include all upload cases; focuses on those most used by students.
2016-04-04 15:33:40 -05:00
Eric Merrill cdb9e8db73 MDL-53612 search: Add book chapter search area 2016-04-04 15:14:22 -04:00
Eloy Lafuente (stronk7) f8b059f245 MDL-53595 install: update the list of stale files for 3.1
Note I've deleted a couple of files there, 99.99% not problematic
(repository/boxnet) because as a general rule it's better to avoid
adding plugin files in the function and, instead, use core ones that
cannot be "reinstalled". Exception to the rule (what's a rule without
an exception) being forum that cannot be deleted. ;-)
2016-04-04 19:22:08 +02:00
Eloy Lafuente (stronk7) 8cdcf93d83 Merge branch 'MDL-53256-m' of https://github.com/micaherne/moodle 2016-04-04 19:02:44 +02:00
Dan Poltawski ad6bdd1301 Merge branch 'MDL-53641' of git://github.com/stronk7/moodle 2016-04-04 16:59:46 +01:00
Eric Merrill 2f492364d9 MDL-53272: Fix calls to missing cache def 2016-04-04 15:36:42 +01:00
Dan Poltawski 93c9c9a86b Merge branch 'wip-MDL-49861-master' of git://github.com/abgreeve/moodle 2016-04-04 12:10:17 +01:00
Dan Poltawski 9d6e3cb6c0 Merge branch 'MDL-17955-master' of git://github.com/andrewnicols/moodle 2016-04-04 09:01:46 +01:00
Dan Poltawski 8cdc6f3224 Merge branch 'MDL-53272_master' of git://github.com/dmonllao/moodle 2016-04-04 08:44:17 +01:00
David Monllao 3dab4841e5 MDL-53272 search: Unit tests to discard caching issues 2016-04-04 15:38:03 +08:00
David Monllao 9470e4d1ed MDL-53272 search: Remove search results cache 2016-04-04 15:38:03 +08:00
Dan Poltawski 17ed403974 Merge branch 'm31_MDL-53622_Fix_Missing_Rewrite_Pluginfile_URLs' of https://github.com/scara/moodle 2016-04-04 08:37:22 +01:00
David Monllao 54abd66aca MDL-53272 search: Catch missing record exceptions 2016-04-04 15:36:59 +08:00
Andrew Nicols a5a70e33f7 Merge branch 'MDL-53661_master' of https://github.com/sam-moodle/moodle 2016-04-04 12:19:12 +08:00
Andrew Nicols a753407eac Merge branch 'MDL-53397_master' of git://github.com/dmonllao/moodle 2016-04-04 12:12:44 +08:00
Andrew Nicols 82bb931a31 MDL-53115 backup: Remove unnecessary @javascript tags 2016-04-04 08:08:43 +08:00
Andrew Nicols beaf0da982 MDL-53115 mod_lesson: Remove unnecessary @javascript tags 2016-04-04 08:08:43 +08:00
Andrew Nicols 4ed942f41e MDL-53115 mod_choice: Remove unnecessary @javascript tags 2016-04-04 08:08:43 +08:00
Eric Merrill 3744ceb63b MDL-53579 search: Limit general query to certain fields 2016-04-02 22:32:22 -04:00
Tim Hunt 56df6f1992 MDL-53647 quiz summary: keep row class names in synch around headings 2016-04-02 13:22:55 +01:00
Eloy Lafuente (stronk7) 7ca2c19b81 MDL-53641 paging bar: add missing space before last element 2016-04-02 00:13:51 +02:00
Matteo Scaramuccia 2e385e9c57 MDL-53622 mod_forum: Added the file_rewrite_pluginfile_urls() call. 2016-04-01 22:41:25 +02:00
Michael Aherne f0ed09852e MDL-53256 cache: Prevent overwriting of cache config with invalid data 2016-04-01 08:52:21 +01:00
Simey Lameze a77e0611a0 MDL-50050 core_deprecated: remove deprecated functions from 2.9 2016-04-01 09:33:30 +08:00
Simey Lameze 221bfffd4e MDL-53104 core_blog: remove deprecated capabilities
This commit removes moodle/blog:associatecourse and moodle/blog:associatemodule deprecated capabilities.
2016-04-01 08:42:09 +08:00
AMOS bot 59b7bea75d Automatically generated installer lang files 2016-04-01 00:04:35 +08:00
Dani Palou a6021a989a MDL-53671 book: Return whole filepath in book_export_contents 2016-03-31 15:38:55 +02:00
Marina Glancy 0e548b8063 MDL-53588 mod_feedback: always submit checkboxes 2016-03-31 17:21:23 +08:00
Mark Nelson 4981d06dae MDL-53669 tool_recyclebin: removed unused string 2016-03-31 16:02:37 +08:00
Dan Poltawski aeccf4bd94 weekly release 3.1dev 2016-03-31 14:06:28 +08:00
Dan Poltawski 118756cfe9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-03-31 14:06:25 +08:00
Jay Jayswal 283f708305 MDL-53417 glossary: Glossary printer friendly link responsive 2016-03-31 13:59:26 +08:00
Dan Marsden 307be23b83 MDL-53500 report_outline: Allow parent role to view all activities.
Parents are not enrolled in the course, use $user to generate modinfo
for uservisible checks.
2016-03-31 13:38:38 +08:00
Dan Poltawski 39fd6b8aa4 Merge branch 'wip-MDL-50941-fix' of https://github.com/marinaglancy/moodle 2016-03-31 09:41:17 +08:00
Marina Glancy 17a6064dd3 MDL-50941 mod_feedback: client validation of maxlength 2016-03-31 09:34:16 +08:00
Sam Chaffee 0c9c466964 MDL-53661 mod_lti: Fix lti_prepare_type_for_save forcessl config 2016-03-30 18:32:34 -06:00
Eric Merrill 7a4a0bc841 MDL-53516 search: Workaround for curl 7.35.0 bug 2016-03-30 15:28:35 -04:00
Juan Leyva f4fb827ed1 MDL-53462 core_badges: New WS core_badges_get_user_badges 2016-03-30 10:44:55 +01:00
Juan Leyva d329a1ea2f MDL-53175 filter: Fix text formatting for the book and page modules 2016-03-30 09:37:32 +01:00
Juan Leyva 296ab1e253 MDL-53175 file: Allow file_rewrite_pluginfile_urls to reverse 2016-03-30 09:37:32 +01:00
Adrian Greeve f27ca9451f MDL-49861 mod_data: Behat step to test adding records.
Clicking 'Save and add another' should clear the form.
2016-03-30 16:22:49 +08:00
Adrian Greeve c18ad4afd6 MDL-49861 mod_data: Save and add another button clears fields. 2016-03-30 16:18:50 +08:00
Dan Poltawski 79efd94da3 Merge branch 'MDL-53643_master' of git://github.com/dmonllao/moodle 2016-03-30 15:52:26 +08:00
David Monllao 19773d756f MDL-53397 search_solr: Updating param types 2016-03-30 15:44:02 +08:00
David Monllao 53c2f82960 MDL-53397 search_solr: No index default name 2016-03-30 15:41:34 +08:00
Damyon Wiese 6853cd5ed4 MDL-52954 assign: Fix the reasonable cibot warnings. 2016-03-30 14:07:28 +08:00
Damyon Wiese 07a7d9a5f1 MDL-52954 assign: Fix new behat tests
This is the result of new tests added using the old lang strings.
2016-03-30 13:47:21 +08:00
Damyon Wiese bb690849c9 MDL-52954 assign: Rebuild the assignment single grade page. 2016-03-30 13:47:21 +08:00
Damyon Wiese 2a3647bae5 MDL-52954 marking guide: Wrap radio fields in a label for styling 2016-03-30 13:47:10 +08:00
Dan Poltawski e1ec2bbbf3 Merge branch 'wip-MDL-53274-fix' of https://github.com/marinaglancy/moodle 2016-03-30 13:01:42 +08:00
Marina Glancy 0a4f89e5b6 MDL-53274 message: set page context 2016-03-30 12:57:32 +08:00
Damyon Wiese 84a32f156e MDL-52954 forms: Allow form submission via ajax (ignoring GET and POST) 2016-03-30 11:48:40 +08:00
Damyon Wiese b803df8170 MDL-52954 atto: Stop autosave timer, when editor no-longer exists. 2016-03-30 11:48:40 +08:00
Damyon Wiese 1356d85151 MDL-52954 core: Change from pandoc to unoconv - it gives better results
Most importantly it retains formatting better, and supports different charsets far better than pandoc.
2016-03-30 11:48:39 +08:00
Damyon Wiese 128d8736d3 MDL-52954 core: Unit tests for pandoc document converter. 2016-03-30 11:48:39 +08:00
Damyon Wiese 2e76c14e11 MDL-52954 core: Add a document converter to file_storage
This lets us convert between common office formats. E.g. docx -> pdf
html -> pdf, html -> ods.

This commit also updates assignment editpdf plugin to use this converter
on all compatible submission files.
2016-03-30 11:48:39 +08:00
Damyon Wiese 1fca8a7bdd MDL-53056 javascript: Improve the fragments API
Instead of injecting the HTML + JS directly - return a promise that is resolve with
the HTML and JS. This gives the caller control over how and when to inject the nodes
in the DOM. Also modify templates.replaceNode functions to cleanup YUI events mess.
Also pass the context to the callback so it can be verified.
Also pass the arguments to the callback as a named array - not a flat argument list.
Also - only load external scripts if they are not already loaded.
2016-03-30 11:48:38 +08:00
David Monllao bd5d2c60be MDL-53643 search_solr: Setting correctly test server data 2016-03-30 11:40:38 +08:00
David Monllao 13e2c1bf58 Merge branch 'MDL-53314-imap-debugging' of https://github.com/brendanheywood/moodle 2016-03-30 09:49:05 +08:00
David Monllao 99fddd48c3 Merge branch 'wip-MDL-53557-fix' of https://github.com/marinaglancy/moodle 2016-03-30 09:33:46 +08:00
David Monllao 121b97e2ed MDL-53401 auth_mnet: Update upgrade note according to reality.
Grrrr David, thanks DanP.
2016-03-30 09:29:50 +08:00
David Monllao c573ca1cfd MDL-53401 auth_mnet: Note in upgrade.txt about the change 2016-03-30 09:21:11 +08:00
Marina Glancy 4ba67534d8 MDL-53557 mod_feedback: fix to formatting float 2016-03-30 09:17:51 +08:00
David Monllao 11e60abf75 Merge branch 'MDL-53401-master' of git://github.com/lameze/moodle 2016-03-30 09:12:25 +08:00
Dan Poltawski a3e3b696ef Merge branch 'MDL-53516-integration' of https://github.com/merrill-oakland/moodle 2016-03-30 09:10:09 +08:00
Eloy Lafuente (stronk7) 213fdb1d98 Merge branch 'wip-mdl-49150' of https://github.com/rajeshtaneja/moodle 2016-03-30 00:10:46 +02:00
Eloy Lafuente (stronk7) d4f69a462e Merge branch 'MDL-52388-master' of git://github.com/cameron1729/moodle 2016-03-29 23:14:06 +02:00
AMOS bot c609682c96 Automatically generated installer lang files 2016-03-30 00:04:12 +08:00
Eric Merrill 8dfc6291dd MDL-53516 search: Remove file index unit test disable flag 2016-03-29 08:59:44 -04:00
Eric Merrill 7a3bc40cb5 MDL-53515 search: Add template example 2016-03-29 08:52:25 -04:00
Dan Poltawski 0729ea9fd7 Merge branch 'wip-MDL-53274-master' of https://github.com/marinaglancy/moodle 2016-03-29 17:12:42 +08:00
Dan Poltawski b9280927d6 Merge branch 'MDL-53543_master' of git://github.com/dmonllao/moodle 2016-03-29 16:45:37 +08:00
Dan Poltawski 8783393bc4 Merge branch 'MDL-53578-master' of git://github.com/merrill-oakland/moodle 2016-03-29 16:38:58 +08:00
Dan Poltawski e195da19e0 Merge branch 'MDL-53516-master' of git://github.com/merrill-oakland/moodle 2016-03-29 16:35:44 +08:00
David Monllao dd39020d68 Merge branch 'MDL-53356-master' of git://github.com/cameron1729/moodle 2016-03-29 15:56:13 +08:00
Andrew Nicols 9c048e21ac MDL-53633 javascript: Ensure that ordering of options is preserved 2016-03-29 15:47:00 +08:00
David Monllao a697023350 Merge branch 'MDL-53432-git-less-css' of https://github.com/brendanheywood/moodle 2016-03-29 15:43:23 +08:00
Andrew Nicols c71d185658 MDL-17955 forum: Remove timed postings from experimental
This commit does two things:
1) remove the note about the feature being experimental; and
2) changes the default to be enabled for new sites.

This will not enable the feature for existing sites where it is not
enabled.
2016-03-29 15:39:58 +08:00
Dan Poltawski 868e5ef0d5 Merge branch 'MDL-53515-master' of git://github.com/merrill-oakland/moodle 2016-03-29 14:39:53 +08:00
David Monllao ae2d413b2c Merge branch 'wip-MDL-53467-master' of git://github.com/abgreeve/moodle 2016-03-29 13:38:14 +08:00
David Monllao 686bb3ea9d Merge branch 'wip-MDL-53557-master' of https://github.com/marinaglancy/moodle 2016-03-29 13:28:04 +08:00
David Monllao f3f9f716e9 Merge branch 'MDL-52646' of https://github.com/wjroes/moodle 2016-03-29 12:58:33 +08:00
David Monllao 0ae7fa12ac Merge branch 'wip-MDL-52760-master' of https://github.com/marinaglancy/moodle 2016-03-29 12:55:46 +08:00
David Monllao 227a4f1419 Merge branch 'wip-MDL-53209-master' of git://github.com/marinaglancy/moodle 2016-03-29 12:52:07 +08:00
Dan Poltawski a042f56be5 Merge branch 'wip-mdl-53623' of https://github.com/rajeshtaneja/moodle 2016-03-29 12:49:27 +08:00
Dan Poltawski f7074f5db4 Merge branch 'MDL-45835-master' of git://github.com/cameron1729/moodle 2016-03-29 10:37:25 +08:00
David Monllao 981649256a Merge branch 'wip-MDL-29303-master2' of https://github.com/marinaglancy/moodle 2016-03-29 10:01:58 +08:00
Rajesh Taneja 225265b03d MDL-53623 behat: catch expection if failed to trigger event
Inline editing element might hide before
event is triggred, so don't trigger exception
if exception happens
2016-03-29 09:52:37 +08:00
David Monllao 497cd6d48b Merge branch 'MDL-53181-master' of git://github.com/andrewnicols/moodle 2016-03-29 09:50:52 +08:00
Dan Poltawski 1bed89fe6a Merge branch 'MDL-52945' of https://github.com/mr-russ/moodle 2016-03-29 09:43:30 +08:00
Adrian Greeve f6592b9439 MDL-53467 repositories: Upgrade s3 to v0.5.1 2016-03-29 09:07:41 +08:00
AMOS bot 3f5dcca6a0 Automatically generated installer lang files 2016-03-29 00:04:15 +08:00
Marina Glancy 2aad1094b1 MDL-29303 mod_feedback: allow any characters in labels 2016-03-27 21:47:49 +08:00
Marina Glancy 17e166847b MDL-53557 mod_feedback: partial boundaries in numeric items 2016-03-27 21:37:32 +08:00
Marina Glancy 02b2e3e70e MDL-53209 mod_feedback: allow frontpage users to view and complete 2016-03-27 21:03:01 +08:00
Dan Poltawski 0114ca3244 Merge branch 'wip-MDL-53538-master' of git://github.com/abgreeve/moodle 2016-03-26 11:37:35 +08:00
Dan Poltawski ec7a8d3da3 Merge branch 'wip-MDL-50941-master' of https://github.com/marinaglancy/moodle 2016-03-26 11:26:31 +08:00
Dan Poltawski 35689b71a8 Merge branch 'MDL-53562-forum-reply-re' of https://github.com/brendanheywood/moodle 2016-03-26 10:35:55 +08:00
Dan Poltawski ca0d7bf21c Merge branch 'MDL-53508-master' of git://github.com/merrill-oakland/moodle 2016-03-26 10:26:02 +08:00
Dan Poltawski 879f3c7a97 MDL-53507 quiz: fix bad htmlid 2016-03-26 10:05:40 +08:00
Dan Poltawski b3687410df Merge branch 'MDL-53507' of git://github.com/timhunt/moodle 2016-03-26 09:42:46 +08:00
Dan Poltawski 6a3116dd3c Merge branch 'wip-MDL-50795-master' of git://github.com/abgreeve/moodle 2016-03-26 09:31:54 +08:00
Eric Merrill cd894f84b3 MDL-53516 search: Adding file indexing support to Solr
Expand the Solr engine to use the built in (to Solr) Tika
file indexing engine. Files are shipped off for indexing with
curl. Each file must have it's own document. So grouping is
used to keep files and Moodle docs associated.
2016-03-24 16:39:55 -04:00
Eric Merrill 091973dbd7 MDL-53515 search: Extend search API to allow file indexing 2016-03-24 15:44:27 -04:00
AMOS bot 093c60c255 Automatically generated installer lang files 2016-03-25 00:04:14 +08:00
Eloy Lafuente (stronk7) fb75b07c9e weekly release 3.1dev 2016-03-24 12:58:10 +01:00
Eloy Lafuente (stronk7) 3615219889 NOBUG: Fixed file access permissions 2016-03-24 12:58:10 +01:00
Cameron Ball b31bbcf839 MDL-52388 output: Only stop displaying pager next link on last page
Thank you to Brenda Uga for working on this.
2016-03-24 16:56:30 +08:00
Vadim Dvorovenko dd399f51ab MDL-45835 group: events for groupings assign/unassign 2016-03-24 10:59:35 +08:00
Adrian Greeve 387c8026a5 MDL-50795 atto: Pasting into atto removes background colour style.
Copying from one atto editor to another comes with a lot of style
information. This removes the color attributes which make the page
look ugly when competing with different themes.
2016-03-24 10:53:59 +08:00
Dan Poltawski a4302a8fbe MDL-53147 theme_bootstrapbase: Fix RTL issues in messags 2016-03-24 09:05:44 +08:00
Eric Merrill 4894840dc6 MDL-53508 search: Improve highlighting and move to text fields 2016-03-23 08:55:48 -04:00
Brendan Heywood 2c8c24412e MDL-53356 admin: Fixed erroneous sectionerror when upgrade is needed 2016-03-23 16:26:04 +08:00
Dan Poltawski c0c26e5e69 Merge branch 'MDL-53260-master' of git://github.com/junpataleta/moodle 2016-03-23 14:40:05 +08:00
Jun Pataleta 54285c3ff5 MDL-53260 upgrade: Fix lang help text description. 2016-03-23 14:13:36 +08:00
David Monllao f87fcf42ee MDL-52924 mod_assign: Bump version for new external function 2016-03-23 13:53:18 +08:00
Dan Poltawski d137e671f7 Merge branch 'MDL-52952-master-fix' of github.com:xow/moodle 2016-03-23 12:08:32 +08:00
John Okely 94eb96aa78 MDL-52952 forms: Ignore autofill catching fields in form change checker 2016-03-23 11:54:27 +08:00
David Monllao b5335149f4 Merge branch 'wip-MDL-53254-master' of https://github.com/marinaglancy/moodle 2016-03-23 09:17:11 +08:00
gabrielrosset 3ce68e4f8f MDL-53401 auth_mnet: add user created event trigger on MNET
Moodle does not fire user_created event while creating user via MNET.
That makes impossible to hook on user creation when user land into a host via MNET for the 1st time.
2016-03-23 08:38:29 +08:00
Dan Poltawski 8ca99daf86 Merge branch 'MDL-53383-master' of git://github.com/andrewnicols/moodle 2016-03-23 08:14:23 +08:00
Juan Leyva efca239e17 MDL-52767 mod_quiz: New Web Service get_quiz_required_qtypes 2016-03-23 00:57:07 +01:00
Juan Leyva b6c538416b MDL-52767 mod_quiz: New API for retrieving the question types 2016-03-23 00:56:05 +01:00
Juan Leyva ff99efcd96 MDL-52767 mod_quiz: New Web Service get_attempt_access_information 2016-03-23 00:55:37 +01:00
Juan Leyva a79a63619b MDL-52767 mod_quiz: New Web Service get_quiz_access_information 2016-03-23 00:54:41 +01:00
Eloy Lafuente (stronk7) debb1c3a6c Merge branch 'MDL-53547' of git://github.com/timhunt/moodle 2016-03-22 22:58:30 +01:00
Eric Merrill a4902f66bb MDL-53578 search: Enable course id indexing so it can be filtered 2016-03-22 12:53:56 -04:00
Marina Glancy cbecc3c35a MDL-53254 tags: little fixes after review 2016-03-22 17:10:34 +08:00
Dan Poltawski 63dcc87631 MDL-52752 mathjaxloader: version bump 2016-03-22 16:40:00 +08:00
Dan Poltawski aa69618116 Merge branch 'wip-MDL-52752-master' of git://github.com/abgreeve/moodle 2016-03-22 16:31:10 +08:00
Eloy Lafuente (stronk7) 8261a8a3ed MDL-53393 libraries: Fix thirdpartylib to point to directory 2016-03-22 09:06:04 +01:00
Tim Hunt 4c8c69ea9f MDL-53547 logstore_database: better DB driver handling in unit test 2016-03-22 06:42:49 +00:00
Adrian Greeve 85974a83ba MDL-53538 mod_data: Unit test for data_get_advance_search_ids 2016-03-22 14:22:27 +08:00
Adrian Greeve 53934bd0a9 MDL-53538 mod_data: Show no records message instead of error.
When there are no records in the database module and a user
does an advanced search. Show a message that there are no entries
in the database.
2016-03-22 14:22:26 +08:00
Brendan Heywood 08824e8006 MDL-53432 core: Treat derived css and js as binary files in git 2016-03-22 16:57:48 +11:00
Rajesh Taneja a1d3a94b1c MDL-49150 behat: Removed unnecessary @javascript tags 2016-03-22 13:54:12 +08:00
Dan Poltawski ae0af5491b Merge branch 'wip-mdl-49963' of https://github.com/rajeshtaneja/moodle 2016-03-22 13:51:34 +08:00
Rajesh Taneja a8d9cb87ba MDL-49963 behat: fixed scenario and step definition
1. Participants are sorted by last access and they could
   be different on different db's. So sort them by last name
   before checking.
2. Use Give-When-Then steps.
2016-03-22 13:46:13 +08:00
Dan Poltawski 4a166bfd16 Merge branch 'wip-MDL-51867-master2' of https://github.com/marinaglancy/moodle 2016-03-22 13:13:57 +08:00
David Monllao 8c16f34c88 Merge branch 'wip-MDL-53227-master' of git://github.com/marinaglancy/moodle 2016-03-22 13:00:30 +08:00
Dan Poltawski ce32fa5572 MDL-39524 tests: fix incorrect phpdoc 2016-03-22 12:56:53 +08:00
Dan Poltawski cdb2a2ef9f Merge branch 'MDL-39524' of https://github.com/jrchamp/moodle 2016-03-22 12:52:26 +08:00
Dan Poltawski 2ae04cacde Merge branch 'MDL-39524-master' of git://github.com/danpoltawski/moodle 2016-03-22 12:51:30 +08:00
Dan Poltawski afda050660 MDL-39524 tests: unit test for get_real_size() 2016-03-22 12:47:07 +08:00
Dan Poltawski 4a00b04476 Merge branch 'MDL-53049-anchor-offset' of https://github.com/brendanheywood/moodle 2016-03-22 11:44:19 +08:00
Dan Poltawski 9d3e484e6c Merge branch 'MDL-53147-inbox-layout' of https://github.com/brendanheywood/moodle 2016-03-22 11:38:47 +08:00
David Monllao a28ed1a731 Merge branch 'MDL-53228-master' of git://github.com/andrewnicols/moodle 2016-03-22 11:35:54 +08:00
Mark Nelson 0c7cca226d MDL-48012 tool_recyclebin: removed indexes as FKs exist 2016-03-22 11:12:08 +08:00
Dan Poltawski 5aaa2b3750 Merge branch 'MDL-52158-master' of https://github.com/xow/moodle 2016-03-22 10:32:34 +08:00
Eloy Lafuente (stronk7) 55e90f2270 Merge branch 'MDL-53393-master' of git://github.com/cameron1729/moodle 2016-03-22 03:16:51 +01:00
David Monllao a018d82af7 MDL-53513 libraries: Fix lessphp version 2016-03-22 09:57:51 +08:00
David Monllao 809307b490 Merge branch 'MDL-53513-master' of git://github.com/lameze/moodle 2016-03-22 09:56:21 +08:00
Dan Poltawski c71d11404d Merge branch 'wip-MDL-52619-master' of git://github.com/abgreeve/moodle 2016-03-22 09:54:03 +08:00
David Monllao 64fe3af054 Merge branch 'MDL-53456-master' of git://github.com/lameze/moodle 2016-03-22 09:50:34 +08:00
David Monllao 67f884029d Merge branch 'MDL-53512-master' of git://github.com/lameze/moodle 2016-03-22 09:47:36 +08:00
David Monllao 01cd5aeef6 Merge branch 'MDL-53455-master' of git://github.com/lameze/moodle
Conflicts:
	lib/jquery/plugins.php
2016-03-22 09:44:49 +08:00
David Monllao cdc6407a10 Merge branch 'wip-MDL-53458-master' of git://github.com/abgreeve/moodle 2016-03-22 09:35:19 +08:00
Eloy Lafuente (stronk7) c572ac8f3a Merge branch 'MDL-53357-dont-break-urls' of https://github.com/brendanheywood/moodle 2016-03-22 02:25:40 +01:00
Andrew Nicols d7dbef7366 MDL-53181 core: Add selectors to user menu items 2016-03-22 09:20:21 +08:00
Simey Lameze 6648283a77 MDL-53512 libraries: update google API library to version 1.1.7 2016-03-22 08:38:11 +08:00
David Monllao 37f45f44b7 Merge branch 'MDL-53409-master' of git://github.com/crazyserver/moodle 2016-03-22 08:01:16 +08:00
Eloy Lafuente (stronk7) 675c6d4b54 Merge branch 'wip-MDL-45274-master' of https://github.com/marinaglancy/moodle 2016-03-22 00:45:48 +01:00
David Monllao ab89d2aebc MDL-53454 lib: Fix incorrect jquery version 2016-03-22 07:44:31 +08:00
David Monllao 854cd1464b Merge branch 'MDL-53454-master' of git://github.com/lameze/moodle 2016-03-22 07:42:52 +08:00
Eloy Lafuente (stronk7) 8eb8e5df83 Merge branch 'MDL-48307-master' of git://github.com/marinaglancy/moodle 2016-03-22 00:28:02 +01:00
David Monllao 88027ca371 Merge branch 'wip-MDL-53457-master' of git://github.com/abgreeve/moodle 2016-03-22 07:24:37 +08:00
Tim Hunt 0c8a90d7cb MDL-53507 quiz editing: was possible to lose questions
If you dragged a question to the top of the quiz, it could
disappear. Several other cases of dragging questions to the
same place in sequence, but to a different page/section were
also failing, and have been fixed.
2016-03-21 23:14:53 +00:00
David Monllao 145bb61d79 Merge branch 'wip-MDL-53465-master' of git://github.com/abgreeve/moodle 2016-03-22 07:12:52 +08:00
David Monllao bc9f8c5e1c Merge branch 'MDL-53518-master' of git://github.com/lameze/moodle 2016-03-22 06:56:40 +08:00
David Monllao f811003aae Merge branch 'MDL-53519-master' of git://github.com/lameze/moodle 2016-03-22 06:51:57 +08:00
Eloy Lafuente (stronk7) 197f99a808 Merge branch 'MDL-52978_master' of git://github.com/markn86/moodle 2016-03-21 23:07:16 +01:00
Eloy Lafuente (stronk7) b1871ae68b MDL-53034 mod_quiz: version mini-bump 2016-03-21 23:01:46 +01:00
Eloy Lafuente (stronk7) 5032fb4f54 Merge branch 'MDL-53034-master' of git://github.com/jleyva/moodle 2016-03-21 22:58:28 +01:00
Eloy Lafuente (stronk7) 3720f100ea Merge branch 'MDL-52888-master' of git://github.com/jleyva/moodle 2016-03-21 22:40:43 +01:00
Eloy Lafuente (stronk7) 7cc45b2e72 Merge branch 'MDL-52868-master' of git://github.com/jleyva/moodle 2016-03-21 22:20:00 +01:00
Dan Poltawski 26f59e5080 Merge branch 'MDL-52863-master' of git://github.com/jleyva/moodle 2016-03-21 17:42:19 +08:00
Dan Poltawski f6a0594e7e Merge branch 'MDL-52852-master' of git://github.com/jleyva/moodle 2016-03-21 17:27:20 +08:00
Dan Poltawski 121b46e033 Merge branch 'MDL-52830-master' of git://github.com/jleyva/moodle 2016-03-21 17:09:15 +08:00
Dan Poltawski 00a6c59936 MDL-52813 mod_quiz: bump version
Diverge from stable branching
2016-03-21 17:05:05 +08:00
Brendan Heywood 318e5cb302 MDL-53562 forum: Fixed missing forum subject Re: prefix 2016-03-21 19:41:40 +11:00
Dan Poltawski 2569face4e Merge branch 'MDL-52813-master' of git://github.com/jleyva/moodle 2016-03-21 16:37:57 +08:00
Brendan Heywood 852797d15c MDL-53049 themes: Offset href anchor when bootstrap header is fixed
On large screens the bootstrap header is static and can obscure the
anchor target content underneath it.
2016-03-21 19:25:51 +11:00
Willem Roes 96f56b6e29 MDL-52646 mod_scorm: fix missing launch_data for SCORM 2004 2016-03-21 09:00:50 +01:00
Dan Poltawski e372bb043e MDL-53260 cli: fix trailing whitespace 2016-03-21 15:23:37 +08:00
Dan Poltawski c4173bb8ba Merge branch 'MDL-53260-master' of git://github.com/junpataleta/moodle 2016-03-21 15:14:23 +08:00
Jun Pataleta 830f8bc780 MDL-53260 upgrade: Make lang option default to the site language 2016-03-21 15:08:59 +08:00
Dan Poltawski fd2cdbd2a7 Merge branch 'MDL-53407-editing-css' of https://github.com/Dagefoerde/moodle 2016-03-21 14:48:41 +08:00
Dan Poltawski 3a0b30c7c7 Merge branch 'MDL-52952-master' of https://github.com/xow/moodle 2016-03-21 14:44:15 +08:00
Brendan Heywood f725d955b9 MDL-53147 theme_bootstrapbase: Fix message page responsive layout issues 2016-03-21 17:26:31 +11:00
Dan Poltawski 5821479ef6 Merge branch 'MDL-53239_master' of git://github.com/dmonllao/moodle 2016-03-21 14:12:10 +08:00
Adrian Greeve 1f8ab584e9 MDL-52752 filters: Update MathJax to version 2.6 2016-03-21 14:10:00 +08:00
Dan Poltawski 732d4f8318 Merge branch 'MDL-53315-imap-namespace' of https://github.com/brendanheywood/moodle 2016-03-21 14:01:46 +08:00
Simey Lameze 931eef1226 MDL-53455 libraries: upgrade jquery migrate to version 1.4.0 2016-03-21 13:42:54 +08:00
Dan Poltawski 3afc41ea95 Merge branch 'wip-mdl-53564' of https://github.com/rajeshtaneja/moodle 2016-03-21 13:37:00 +08:00
Simey Lameze dfc7c0a9df MDL-53519 auth_cas: update cas to version 1.3.4 2016-03-21 13:16:03 +08:00
Simey Lameze af4a2f0d62 MDL-53518 libraries: upgrade mardown to 1.6.0 version 2016-03-21 13:04:05 +08:00
Simey Lameze b0d985e81f MDL-53513 libraries: update lessphp to version 1.7.0.10 2016-03-21 13:01:43 +08:00
James eb9a3e9379 MDL-53383 navigation: Do not require $type in remove()
navigation_node_collection -> remove function broken when $type is null
2016-03-21 12:16:26 +08:00
Simey Lameze 2f427c4cb4 MDL-53456 libraries: update requirejs to version 2.1.22 2016-03-21 12:10:48 +08:00
Cameron Ball 3e3f624549 MDL-53393 libraries: Upgrade Html2Text to 4.0.1 2016-03-21 12:05:33 +08:00
Nadav Kavalerchik 14aaa2d75b MDL-53260 upgrade: Option to display CLI upgrade messages in English 2016-03-21 11:59:50 +08:00
David Monllao 3357822d0c Merge branch 'MDL-52207-master' of git://github.com/cameron1729/moodle 2016-03-21 11:53:30 +08:00
Simey Lameze f0c0c1ea4b MDL-53454 libraries: upgrade jquery to 1.12.1 version 2016-03-21 11:43:15 +08:00
Dan Poltawski 1829dedd0e Merge branch 'MDL-53262-verp-confirm-from-support' of https://github.com/brendanheywood/moodle 2016-03-21 11:37:35 +08:00
Cameron Ball 052141abc7 MDL-52207 upgradelib: Replace uses of Zend_Server_Reflection
Now that Zend has been removed we can only use native PHP reflection
methods.
2016-03-21 11:03:24 +08:00
Cameron Ball b5e6ec4486 MDL-52207 libraries: Delete Zend framework
Let it RIP.
2016-03-21 11:02:55 +08:00
Dan Poltawski ac3d7aacfc Merge branch 'MDL-53489' of git://github.com/timhunt/moodle 2016-03-21 11:02:03 +08:00
Jay Jayswal efdbc2929d MDL-52158 auth: Improve recaptcha settings and help 2016-03-21 10:21:18 +08:00
Rajesh Taneja d242d4eb22 MDL-53564 behat: Fixed xpath to find social activity block 2016-03-21 10:17:44 +08:00
David Monllao 2904f66421 Merge branch 'MDL-49963' of https://github.com/andrewhancox/moodle 2016-03-21 10:04:29 +08:00
David Monllao c111ef9718 Merge branch 'MDL-48012_master' of git://github.com/markn86/moodle 2016-03-21 09:41:09 +08:00
Dan Poltawski d3c65e8c60 Merge branch 'MDL-53207' of https://github.com/dg711/moodle 2016-03-21 09:31:07 +08:00
David Monllao b756bd551a Merge branch 'MDL-52924-master' of git://github.com/jleyva/moodle
Conflicts:
	version.php
2016-03-21 09:25:19 +08:00
Dan Poltawski 52c6e158e0 Merge branch 'MDL-53548-master' of https://github.com/sammarshallou/moodle 2016-03-21 09:20:33 +08:00
Dan Poltawski ef67e6c5f8 Merge branch 'MDL-53412-master' of git://github.com/merrill-oakland/moodle 2016-03-21 08:57:22 +08:00
David Monllao 7960ad0571 Merge branch 'MDL-53509-master' of git://github.com/andrewnicols/moodle 2016-03-21 08:42:58 +08:00
David Monllao e787e681fc Merge branch 'MDL-49934-master' of git://github.com/jleyva/moodle 2016-03-21 08:39:15 +08:00
Brendan Heywood 6aec2748ee MDL-53262 inboundmessage: Fix inconsistent confirm From vs email body 2016-03-20 15:51:42 +11:00
Brendan Heywood d4274a5f2b MDL-53315 inboundmessage: Add support for IMAP Namespaces 2016-03-20 15:50:09 +11:00
dg711 c55494fef7 MDL-53207 message: display stock pic for msg from\to unreal user 2016-03-19 23:36:41 +05:30
Pau Ferrer Ocaña 176bcaa928 MDL-53409 question: Add tests for core_question_update_flag 2016-03-18 15:08:22 +01:00
Pau Ferrer Ocaña 7361b9682e MDL-53409 question: New WS core_question_update_flag 2016-03-18 15:08:17 +01:00
sam marshall f3474e2216 MDL-53548 Accessibility: Block show/hide keyboard access broken 2016-03-18 13:44:50 +00:00
Juan Leyva 48abca7996 MDL-53034 mod_quiz: New WS mod_quiz_get_quiz_feedback_for_grade 2016-03-18 09:56:31 +01:00
Juan Leyva 3e5c19a0ed MDL-52888 mod_quiz: New Web Service mod_quiz_view_attempt_review 2016-03-18 09:50:06 +01:00
Juan Leyva d9ef6ae0c2 MDL-52888 mod_quiz: New Web Service mod_quiz_view_attempt_summary 2016-03-18 09:49:29 +01:00
Juan Leyva 899983ee58 MDL-52888 mod_quiz: New Web Service mod_quiz_view_attempt 2016-03-18 09:27:43 +01:00
Mark Nelson 93af6a610e MDL-48012 tool_recyclebin: multiple changes before integration
- Added new icon for the recycle bin.
- Fixed issue where the course expiry setting was being used to display
  the expiry messages in the category bin.
- Fixed failing Behat tests.
- Tidied Behat tests.
  - General tidy up.
  - Deleted three Behat feature files.
    - Deleted 'delete_confirmation.feature' as it's testing JS functionality
      that was removed (see comment further down). The 'basic_functionality.feature'
      now tests deleting an activity and a course.
    - Deleted 'description.feature' and added the tested functionality to
      'basic_functionality.feature'.
    - Deleted 'logs_test.feature' and moved testing to PHPUnit tests.
  - Added another scenario for restoring a course.
- Removed protected mod settings - it was discussed that this was not a necessary
  feature. We should not be treating the recycle bin as a backup.
- Renamed events to conform to guidelines.
- Wrote new PHPUnit tests for events.
- Tidied up existing PHPUnit tests and extended them.
- Alphabetised lang file.
- Made changes to strings and string identifiers in the lang file and changed usages in code.
- Changed setting names to better identify their purpose.
- Renamed classes and file names so it's easier to identify their purpose.
- Renamed the 'deleted' column to 'timecreated' for consistency with other
  Moodle tables, and to easily identify what the value represents.
- Changed the columns 'category' and 'course' to 'categoryid' and
  'courseid' respectively.
- Changed the name of the table indexes for consistency with core.
- Removed module.js and any use of it and replaced with Moodle core libraries
  for JS confirmation.
- Removed 'noevent' argument in delete_item().
- Removed unnecessary capabilities - we can use the same capabilties for both
  recycle bins based on the context the capability was given.
- Removed '_' in the capability definitions to keep it consistent with core.
- Set page layout and headings for index.php - varies between the course and
  category recycle bins.
- Deleted styles.css and centred columns using the flexible_table API.
- Fixed IDE and codechecker complaints.
- Made use of the files API, rather than writing directly to
  "$CFG->dataroot . '/recyclebin'".
- Used make_temp_directory rather than expecting it to exist.
- Replaced debugging function calls with calls to the backup API to
  display errors.
- Deleted the temporary backup file after a successful restore, or if it fails.
- If the restore fails for a course, delete the course we created.
- Removed unnecessary '\' characters when not in namespace.
- Used configduration class for expiry times in the settings.
- Cleanup course bin when a course is deleted.
- Cleanup a category bin when a category is deleted.
- Removed unnecessary throw tags.
- Changed default settings.
2016-03-18 14:12:08 +08:00
Grigory Baleevskiy 53754839d2 MDL-52978 core_lib: fixed wrong days showing for dates in datepicker 2016-03-18 12:29:58 +08:00
David Monllao 8f8517ec1f MDL-53543 cache: Invalidate grade_categories by event
We can switch the cache to session level if we are able to purge
different users caches, not only the one that belongs to the user
updating a grade category.
2016-03-18 10:02:05 +08:00
Adrian Greeve 30f4e2d305 MDL-53465 lib: Upgrade PHPMailer to 5.2.14 2016-03-18 09:32:39 +08:00
Adrian Greeve 1549528a67 MDL-53458 lib: Upgrade Mustache.js to 2.2.1 2016-03-18 09:31:49 +08:00
Adrian Greeve f9c2f88e39 MDL-53457 lib: Upgrade Mustache to 2.10.0 2016-03-18 09:30:56 +08:00
Adrian Greeve dba57f8d6e MDL-52619 lib: Update of ADODB to 5.20.3 2016-03-18 09:29:22 +08:00
Marina Glancy 372a92a7dc MDL-50941 mod_feedback: change default legnth for shorttext to 255 2016-03-18 08:18:54 +08:00
Marina Glancy eb97811bee MDL-52760 forms: notify form changes in autocomplete element 2016-03-18 08:16:55 +08:00
Marina Glancy 67fc782fe8 MDL-53274 core: in AJAX throw exception if page context was not set 2016-03-18 08:08:50 +08:00
Marina Glancy 21d9596cca MDL-53254 tags: tags management inplace editable 2016-03-18 08:07:19 +08:00
Marina Glancy 352bfbf55c MDL-53254 tags: tag collections inplace editable 2016-03-18 08:07:19 +08:00
Marina Glancy 131b78b9a7 MDL-53254 tags: tag areas inplace editable 2016-03-18 08:07:19 +08:00
Marina Glancy 5e9b2eda3c MDL-45274 mod_feedback: show heading on non-respondents page 2016-03-18 07:56:50 +08:00
Marina Glancy 4832a0b3dd MDL-53227 mod_feedback: merge files complete_guest.php and complete.php
Simplify access check, add behat tests
2016-03-18 07:54:59 +08:00
Juan Leyva 3589b6591a MDL-52868 mod_quiz: New Web Service mod_quiz_get_attempt_review 2016-03-17 17:15:52 +01:00
Juan Leyva 98e6869088 MDL-52863 mod_quiz: New Web Service mod_quiz_process_attempt 2016-03-17 16:49:40 +01:00
Juan Leyva 4911b5b254 MDL-52863 mod_quiz: Move processattempt.php code to new API 2016-03-17 16:49:39 +01:00
Eloy Lafuente (stronk7) fed66ad9e2 weekly release 3.1dev 2016-03-17 14:00:25 +01:00
Eloy Lafuente (stronk7) 9ea396b8bd Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-03-17 14:00:20 +01:00
Brendan Heywood 9c489dbcc4 MDL-53357 admin: Don't break urls after saving admin settings 2016-03-17 21:42:15 +11:00
David Monllao 8454494abc Merge branch 'm31_MDL-48680_Add_Score_Status_Events' of git://github.com/scara/moodle 2016-03-17 16:34:44 +08:00
Eric Merrill 5dc4624ced MDL-53412 search: Correctly handle Solr over SSL 2016-03-17 01:13:15 -04:00
David Monllao 5a3ddfd2e2 Merge branch 'wip-mdl-46891-m' of git://github.com/rajeshtaneja/moodle 2016-03-17 12:45:47 +08:00
Rajesh Taneja 8c66773dac MDL-46891 behat: Allow replacing string in profile for parallel run
Adding a replace with run process in profile
should be allowed
2016-03-17 12:20:22 +08:00
David Monllao 01f4ea8cce MDL-53239 grader report: Add all names to error msg 2016-03-17 10:57:57 +08:00
Dan Poltawski 922c611ff4 Merge branch 'MDL-51374_multiple-connections' of git://github.com/dmonllao/moodle 2016-03-17 10:50:06 +08:00
Dan Poltawski 6f1cd967b5 Revert "MDL-52133 mod_assign: Pass userid param when saving grade"
This reverts commit b2b4f7c485.
2016-03-17 09:31:08 +08:00
Andrew Nicols 48a9ef9e96 MDL-53509 mod_forum: Stop over-escaping quoted variables
{{# quote }}<a href=\"foo\">{{/ quote }}

becomes:

    "<a href=\\"foo\\">"

This causes a mustache syntax error.

The quote helper negates the need to escape quotes in normal use, e.g.:

    {{# quote }}<a href="foo">{{/ quote }}

which instead becomes:

    "<a href=\"foo\">"
2016-03-17 08:33:48 +08:00
Matteo Scaramuccia beafa1c376 MDL-48680 mod_scorm: Fixed the missing keys when updating a record.
Thanks to Rajesh Taneja for his testing.
2016-03-16 23:39:16 +01:00
Juan Leyva bdf1ac2796 MDL-52924 mod_assign: New WS mod_assign_get_submission_status 2016-03-16 17:23:20 +01:00
Juan Leyva 3216f6160b MDL-52924 mod_assign: Move renderables creation to methods 2016-03-16 17:23:19 +01:00
David Monllao a696bb9ebd MDL-51374 dml: Identifying the cache with connection data 2016-03-16 17:17:39 +08:00
David Monllao 94ffadcdcd Merge branch 'MDL-52788-master' of git://github.com/jleyva/moodle 2016-03-16 14:47:07 +08:00
Andrew Nicols 3e9cf4f941 Merge branch 'MDL-52821-master-fix' of github.com:xow/moodle 2016-03-16 13:53:57 +08:00
David Monllao f18561a2e2 MDL-51374 dml: simpledata to temp_tables cache 2016-03-16 13:43:36 +08:00
John Okely a7be136f20 MDL-52821 lti: Remove summary from unit test 2016-03-16 13:24:22 +08:00
Marina Glancy 322f314155 MDL-51867 scales: any plugin type can declare a scale as used 2016-03-16 13:15:36 +08:00
Andrew Nicols 0758e02e84 Merge branch 'MDL-52821-master-fix' of github.com:xow/moodle 2016-03-16 12:23:41 +08:00
Eric Merrill 0aa3fedb23 MDL-53354 search: Fix unit test call to commit 2016-03-16 12:07:44 +08:00
John Okely 2a5bb939c2 MDL-52821 lti: Change tool_consumer_instance_description to site fullname
And change tool_consumer_instance_name to site shortname
2016-03-16 12:04:09 +08:00
Andrew Nicols 83fc2cbd0d MDL-52574 core: Remove ASC/DESC when adding params from sort 2016-03-16 10:58:04 +08:00
David Monllao ad90c7a5d5 MDL-51374 dml: Delete selectively instead of purge for tmptables 2016-03-16 10:48:41 +08:00
David Monllao ef474575e1 Merge branch 'MDL-51374-master-new' of git://github.com/lameze/moodle
Conflicts:
	lib/db/caches.php
2016-03-16 10:13:14 +08:00
David Monllao 5162ffec0d Merge branch 'wip-MDL-52869-master' of https://github.com/marinaglancy/moodle 2016-03-16 10:05:52 +08:00
Andrew Nicols 0eb474ec49 Merge branch 'MDL-51828-master' of git://github.com/FMCorz/moodle 2016-03-16 10:03:12 +08:00
David Monllao 4235b98110 Merge branch 'wip-MDL-53026-master' of https://github.com/marinaglancy/moodle 2016-03-16 10:00:28 +08:00
Frederic Massart e357d799cd MDL-51828 repository_wikimedia: Always use PNG for SVG files 2016-03-16 09:52:09 +08:00
Eloy Lafuente (stronk7) 3edc162611 Merge branch 'MDL-53354-master' of git://github.com/merrill-oakland/moodle 2016-03-16 01:09:45 +01:00
Andrew Nicols c7f04791f3 MDL-52386 auth_ldap: Typo fix for suspended user 2016-03-16 08:03:05 +08:00
Andrew Nicols baa536188b Merge branch 'MDL-52386-master' of git://github.com/cameron1729/moodle 2016-03-16 07:50:10 +08:00
Eloy Lafuente (stronk7) 987226c090 Merge branch 'MDL-53139' of https://github.com/dg711/moodle 2016-03-16 00:12:18 +01:00
Eloy Lafuente (stronk7) 1e60d7e482 Merge branch 'MDL-53430-master' of git://github.com/merrill-oakland/moodle 2016-03-16 00:03:31 +01:00
Eloy Lafuente (stronk7) 1d57167f15 Merge branch 'mdl-53133-master' of git://github.com/deraadt/moodle 2016-03-15 23:52:19 +01:00
Dan Poltawski 4539892cda MDL-53149 mod_data: update backup and webservices for timemodified
Amended to add support for standard restore apply_date_offset().
2016-03-15 23:41:55 +01:00
Dan Poltawski b174e9efa6 MDL-53149 mod_data: add timemodified field to db schema 2016-03-15 23:31:32 +01:00
Eloy Lafuente (stronk7) e44c0acf01 Merge branch 'MDL-53323' of https://github.com/mr-russ/moodle 2016-03-15 19:43:26 +01:00
Tim Hunt 7308acffa0 MDL-53489 quiz editing: fix display of long section headings 2016-03-15 18:35:35 +00:00
AMOS bot d376282647 Automatically generated installer lang files 2016-03-16 00:04:06 +08:00
Marina Glancy f59f89b4a8 MDL-52869 course: use inplace_editable for activity names 2016-03-15 17:19:38 +08:00
Mark Nelson 1c42ad7135 MDL-48012 core: fixed failing unit tests 2016-03-15 16:58:47 +08:00
Mark Nelson 393038961e MDL-48012 core: added recyclebin to list of standard tools 2016-03-15 16:58:47 +08:00
Mark Nelson c27596c550 MDL-48012 tool_recyclebin: used new hooks in core 2016-03-15 16:58:46 +08:00
Mark Nelson e78cd9b7d2 MDL-48012 tool_recyclebin: converted to an admin tool 2016-03-15 16:58:46 +08:00
Skylar Kelty 60444e5327 MDL-48012 tool_recyclebin: added recyclebin to core 2016-03-15 16:58:46 +08:00
Mark Nelson ea88fd4e66 MDL-48012 core: added pre_*_delete hooks 2016-03-15 16:58:46 +08:00
Andrew Nicols 37f9c6a2d6 Merge branch 'MDL-53301_master' of git://github.com/dmonllao/moodle 2016-03-15 15:50:15 +08:00
David Monllao 8ea783f315 Merge branch 'MDL-53057-master' of git://github.com/FMCorz/moodle 2016-03-15 15:19:01 +08:00
David Monllao 016208776f Merge branch 'MDL-53179' of https://github.com/andrewhancox/moodle 2016-03-15 15:07:46 +08:00
David Monllao 858ad11363 MDL-48680 scorm: Marking cmielement_submitted as abstract 2016-03-15 15:01:57 +08:00
David Monllao e022b79164 Merge branch 'm31_MDL-48680_Add_Score_Status_Events' of https://github.com/scara/moodle 2016-03-15 14:56:50 +08:00
Simey Lameze 87a3e50192 MDL-51374 core_dml: change database layer to pass table name as parameter 2016-03-15 14:43:45 +08:00
Andrew Nicols d89095cd3d Merge branch 'MDL-53234-support-email' of https://github.com/brendanheywood/moodle 2016-03-15 13:43:22 +08:00
Andrew Nicols 295ab83d2e Merge branch 'MDL-53351-master-lti-notice' of git://github.com/mudrd8mz/moodle 2016-03-15 12:48:06 +08:00
Andrew Nicols e77a15875c Merge branch 'MDL_52574_master' of https://github.com/alexandru-elisei/moodle 2016-03-15 12:23:52 +08:00
Andrew Nicols ab5c48b0d5 Merge branch 'MDL-53279_master' of git://github.com/dmonllao/moodle 2016-03-15 12:19:22 +08:00
Adrian Greeve 5cb5d459c9 MDL-53279 grades: Additional comments
In the hopes that other people will understand this code.
2016-03-15 12:18:31 +08:00
David Monllao f32e6ffc00 MDL-53279 grades: Recalculate only required items
Skip grade categories and calculated grade items that do not depend
on .
2016-03-15 12:18:23 +08:00
Andrew Nicols 97a3b6d23d Merge branch 'MDL-48838_master' of git://github.com/dmonllao/moodle 2016-03-15 12:06:48 +08:00
Simey Lameze 26e7eceefc MDL-51374 cache: add temp_tables cache definition
Also a helper method get_temp_tables_cache() has been created for temporary tables cache operations.
2016-03-15 10:57:43 +08:00
David Monllao 03bd6c21ad Merge branch 'MDL-52934-master' of git://github.com/FMCorz/moodle 2016-03-15 08:58:33 +08:00
Juan Leyva 8e76a2fadb MDL-49934 assign: Allow admins, managers to use get_assignments ws 2016-03-14 10:09:54 +01:00
Frederic Massart bbd7f7f73a MDL-52934 repository_boxnet: Deprecate v1 to v2 migration tool 2016-03-14 16:56:11 +08:00
Juan Leyva 2fa6c632c2 MDL-52924 mod_assign: Return editpdf subplugin file areas 2016-03-14 09:53:40 +01:00
David Monllao 01f8945b81 Merge branch 'wip-mdl-46891-fix' of https://github.com/rajeshtaneja/moodle 2016-03-14 14:35:00 +08:00
Rajesh Taneja af7cadbb4d MDL-46891 behat: Increment counter 2016-03-14 14:24:36 +08:00
David Monllao c854ce6eb7 Merge branch 'MDL-53102-messageid' of https://github.com/brendanheywood/moodle 2016-03-14 14:17:41 +08:00
David Monllao f8aaf45d30 Merge branch 'MDL-51986-master' of git://github.com/dpalou/moodle 2016-03-14 13:59:21 +08:00
Andrew Nicols 459ad3d35d Merge branch 'MDL-53252_master' of git://github.com/dmonllao/moodle 2016-03-14 13:35:32 +08:00
David Monllao 8e9cafbee7 Merge branch 'MDL-53304' of git://github.com/timhunt/moodle 2016-03-14 13:26:12 +08:00
David Monllao 28774c9263 MDL-48838 grades: New grade_categories cache 2016-03-14 11:20:35 +08:00
Brendan Heywood 344178035d MDL-53102 tests: corrected phpdocs in email diversion tests
(Introduced by previous patch MDL-52818)
2016-03-14 14:20:10 +11:00
Brendan Heywood 54dceeed88 MDL-53102 email: Ensure all emails generate consistent Message-ID URLs 2016-03-14 14:20:10 +11:00
Andrew Nicols 2e2e4caa7e Merge branch 'MDL-51887-master' of git://github.com/dpalou/moodle 2016-03-14 11:17:40 +08:00
Andrew Nicols bac8a365fa Merge branch 'MDL-52821-master' of https://github.com/xow/moodle 2016-03-14 10:58:25 +08:00
David Monllao edeafdd0e7 MDL-53252 grades: Skip user regrading if only feedback changes 2016-03-14 08:18:28 +08:00
David Monllao 488366bed8 MDL-53301 grades: Update gradeitems aggregationcoef2 only when required 2016-03-14 08:08:39 +08:00
Matteo Scaramuccia f5bc19c877 MDL-48680 mod_scorm: Added new events: {scoreraw,status}_submitted.
Thanks to Ben Johnson and Josh Willcock for their contribution to this
patch.
2016-03-13 09:58:51 +01:00
Juan Leyva 96d5607cba MDL-52852 mod_quiz: New WS mod_quiz_save_attempt 2016-03-11 16:16:02 +01:00
Dani Palou 9a4c52221e MDL-51986 wiki: Add tests for mod_wiki_get_page_contents 2016-03-11 14:09:36 +01:00
Dani Palou 5d94e34322 MDL-51986 wiki: New WS mod_wiki_get_page_contents 2016-03-11 14:09:36 +01:00
Dani Palou ed4fb2bf7e MDL-51887 wiki: Add tests for mod_wiki_get_subwiki_pages 2016-03-11 13:35:30 +01:00
Dani Palou 96abf9af07 MDL-51887 wiki: New WS mod_wiki_get_subwiki_pages 2016-03-11 13:35:30 +01:00
Alexandru Elisei b6d1286414 MDL-52574 accesslib: Prevent get_role_users() fail in certain cases
The function get_role_users() requires the caller to include the $sort fields in
the $fields argument. On PostgreSQL this will cause the function to fail when
the default $sort fields aren't part of the requested fields. The behavior of
the function is augmented to add the $sort fields to $fields if they are not
already present.
2016-03-11 13:10:01 +02:00
dg711 92cec53b47 MDL-53139 admin: case diff issue with email 2016-03-11 16:27:34 +05:30
Juan Leyva bc9733e710 MDL-52830 mod_quiz: New Web Service mod_quiz_get_attempt_summary 2016-03-11 11:06:50 +01:00
Juan Leyva 4c08658a23 MDL-52813 mod_quiz: Refactor and new quiz external tests 2016-03-11 11:05:15 +01:00
Juan Leyva bc247b0dee MDL-52813 mod_quiz: New Web Service mod_quiz_get_attempt_data 2016-03-11 11:05:15 +01:00
Juan Leyva 1d57e4fea5 MDL-52813 mod_quiz: New method for getting the type of a question 2016-03-11 10:28:17 +01:00
Juan Leyva b89544404e MDL-52788 mod_quiz: New Web Service mod_quiz_start_attempt 2016-03-11 10:22:47 +01:00
Juan Leyva 0057c2ced6 MDL-52788 mod_quiz: Move start attempt code to new API functions 2016-03-11 10:19:53 +01:00
Cameron Ball 6141dcfe67 MDL-52386 auth_ldap: Add support for disabled accounts 2016-03-11 16:48:18 +08:00
Eloy Lafuente (stronk7) cfc621df29 Merge branch 'wip-mdl-46891' of https://github.com/rajeshtaneja/moodle 2016-03-11 03:57:03 +01:00
Rajesh Taneja e11c21452b MDL-46891 behat: Point to moodle-behat-extension 2016-03-11 10:51:17 +08:00
Rajesh Taneja c4c2cd59eb MDL-46891 behat: Improved exit status of parallel run
Exit status should contain pass/fail information
of each run it is executing. Every bit of status
will have information of pass/fail status of parallel
process
2016-03-11 10:51:17 +08:00
Rajesh Taneja 0e1c34e51a MDL-46891 behat: Added support for $CFG->behat_profiles
This config will be supported to avoid broken configuration
in future. As this is limited, we need will still use
->behat_config to set config values which can't be set by
behat_profiles
2016-03-11 10:51:17 +08:00
Rajesh Taneja e01012e96d MDL-46891 behat: Driver specific fixes.
1. Browserkit doesn't handle [] in name
2. Grades are not visible in viewport and might fail
   with few drivers, increasing size of window to ensure
   grades are visible and can be modified.
3. Click edit first to see grade link
4. Expand fields before setting value
5. Updated xpath, as crawler update it.
6. Hover fails to show icon
2016-03-11 10:51:16 +08:00
Rajesh Taneja b73e5047af MDL-46891 core_grade: Steps are not valid as element is disabled 2016-03-11 10:51:16 +08:00
Rajesh Taneja afccc03f14 MDL-46891 behat: Phantomjs require explicit change event
It fails with multiple select while selecting group
2016-03-11 10:51:16 +08:00
Rajesh Taneja 0f3fba7d66 MDL-46891 behat: If setup problem then stop execution
Exception are handled via CallCenter and execution is
not stopped if execption is thrown in beforescenario.

If any setup problem encountered, then stop execution.
2016-03-11 10:51:16 +08:00
Rajesh Taneja 07298309dc MDL-46891 behat: Move wait in behat_base so it can be used easily 2016-03-11 10:51:16 +08:00
Rajesh Taneja 86055d11f9 MDL-46891 behat: Optimised login step and context helper 2016-03-11 10:51:15 +08:00
Rajesh Taneja 42ad096fdb MDL-46891 Behat: Added support for behat 3 2016-03-11 10:51:15 +08:00
John Okely 67cdf4efae MDL-52952 forms: Fix chrome autofilling passwords again
In MDL-45772 a hack was introduced to some forms to stop browsers from
putting the user's password into password fields in forms unrelated to
logging in.

Chrome now no longer fills the user's password in the first password
field in the page. There now needs to be a plain text input above it
for the username too.
2016-03-11 10:26:50 +08:00
Marina Glancy 48983fb9e7 MDL-53026 cohorts: edit names and idnumbers in place 2016-03-11 08:14:49 +08:00
Eric Merrill 208a79c920 MDL-53430 dml: Fix recordset_walk for additional parameters 2016-03-10 16:32:02 -05:00
Eric Merrill f6b425e2de MDL-53354 search: Add ability to limit search doc to a user 2016-03-10 09:19:05 -05:00
Eloy Lafuente (stronk7) e8952c5951 weekly release 3.1dev 2016-03-10 13:30:56 +01:00
Eloy Lafuente (stronk7) cdd89b0ceb Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-03-10 13:30:51 +01:00
Rajesh Taneja d2ee22e744 MDL-27628 behat: Added delay to ensure the value is set.
After user type there is a 400ms delay, then search
Adding 2 sec delay to ensure search is finished before
click event is triggred
2016-03-10 13:17:11 +01:00
Mark Nelson 9621d5a7ae MDL-52252 core_course: removed unused variables
The call to 'context_coursecat::instance($COURSE->category);'
was causing Moodle to throw an exception due to non-existent
category.
2016-03-10 13:17:11 +01:00
Damyon Wiese 6b04655573 MDL-27628 enrol_meta: Set options to exclude existing courses, and the current course
When adding a new meta enrolment, you should not be able to select the current course,
or any courses with an existing meta link.
2016-03-10 13:17:10 +01:00
Eloy Lafuente (stronk7) fac004e28b MDL-51167 tool_monitor: fix too strict condition & minor cleanup 2016-03-10 13:17:10 +01:00
Eloy Lafuente (stronk7) 7e9b046a50 Merge branch 'MDL-53369' of git://github.com/timhunt/moodle 2016-03-10 13:17:09 +01:00
Simey Lameze ce59760476 MDL-50705 auth_db: apply standard cleaning to all fields
Also unit tests were added to cover the new clean_data() method.
2016-03-10 13:17:08 +01:00
Simey Lameze dccf9ca308 MDL-50705 core_user: introduce new fill_properties_cache()
Also the get_property_definition() was created to get the property without retrieve the whole definition cache and
    unit tests were created to tests those new methods.
2016-03-10 13:17:08 +01:00
David Monllao fb0b522035 Merge branch 'MDL-27628-master' of git://github.com/damyon/moodle 2016-03-10 13:17:07 +01:00
Jan C. Dageförde 496929a2e8 MDL-53407 themes: Add CSS class editing only if appropriate
The CSS class `editing` should only be added if the user is in editing
mode AND she is allowed to edit the rendered page. `user_is_editing()`
achieves exactly this, without changing behaviour for the appropriate
pages.
2016-03-10 10:44:48 +01:00
Brendan Heywood 162674074e MDL-53234 admin: Fixed wrong default support email bug 2016-03-09 20:45:56 +11:00
David Monllao 9fff0c469f MDL-52252 tags: Bump version to add course_modules area 2016-03-09 15:36:30 +08:00
David Monllao b8bc9037f1 Merge branch 'wip-MDL-52252-master' of https://github.com/marinaglancy/moodle 2016-03-09 15:35:16 +08:00
Marina Glancy 1ea2f7d650 MDL-52252 tags: course module tags small correction 2016-03-09 15:33:25 +08:00
David Monllao 9de085c6fc MDL-52786 quiz: Adding mod_quiz_get_combined_review_options to mobile service 2016-03-09 15:29:41 +08:00
David Monllao da51a9be95 Merge branch 'MDL-52786-master' of git://github.com/jleyva/moodle
Conflicts:
	lib/db/services.php
2016-03-09 15:29:02 +08:00
David Monllao ba8afbdb07 MDL-52785 quiz: Adding mod_quiz_get_user_best_grade to mobile service 2016-03-09 15:18:11 +08:00
David Monllao 20097a057d Merge branch 'MDL-52785-master' of git://github.com/jleyva/moodle
Conflicts:
	lib/db/services.php
2016-03-09 15:16:48 +08:00
David Monllao 5ca1a77649 MDL-52670 quiz: Adding function to mobile service 2016-03-09 15:12:10 +08:00
David Monllao 9b701a37e4 Merge branch 'MDL-52670-master' of git://github.com/jleyva/moodle
Conflicts:
	lib/db/services.php
2016-03-09 15:10:54 +08:00
David Monllao 11bad2b099 Merge branch 'MDL-51324-master' of git://github.com/damyon/moodle 2016-03-09 14:20:18 +08:00
Nadav Kavalerchik dffcf46f43 MDL-52252 Tags: Add tags to modules (Resources and Activities) 2016-03-09 14:19:47 +08:00
Andrew Nicols d84a657dda MDL-53273 search: Whitespace fix 2016-03-09 14:14:33 +08:00
Brendan Heywood 644f44cf50 MDL-53314 inboundmessage: Added $CFG->debugimap developer config item 2016-03-09 17:13:14 +11:00
Andrew Nicols 02726a29cc Merge branch 'MDL-53273-master' of git://github.com/merrill-oakland/moodle 2016-03-09 14:11:17 +08:00
Andrew Nicols 0809a0ea02 Merge branch 'MDL-53247_fix' of git://github.com/dmonllao/moodle 2016-03-09 14:05:00 +08:00
David Monllao ee72a4dbf3 MDL-53247 search: Require search to be available before running indexer script 2016-03-09 13:37:33 +08:00
Damyon Wiese 6f326bd204 MDL-27628 enrol_meta: Use new multi-course selector
Allows adding multiple instances of the meta enrol plugin at once.

I had to add support to the autocomplete element for filling the field from behat
when it was not using tags. I also had to make the shortnames more easily searchable
and unique in the behat feature file.
2016-03-09 13:32:08 +08:00
Damyon Wiese 3e66b0fccd MDL-51324 coursecat: Add to search courses unit test
Cover new option "requiredcapabilities".
2016-03-09 13:30:28 +08:00
Damyon Wiese 91ab264cf5 MDL-51324 forms: fix autocomplete element double selection bug
Incorrect types were preventing the currently selected values from
being removed from the new values returned via ajax.

Also fix a selection bug with autocomplete+ajax+singleselect.
2016-03-09 13:30:27 +08:00
Damyon Wiese 235ef57a3d MDL-51324 forms: Add a new course selector
This is a squashed commit containing a number of changes:

This is an ajax driven course selector that has searching etc. It can select single, or multiple courses.
Make course selector accept a list of courses to exclude
courseselector - lookup coursename on setValue
Use the get_course_display_name_in_list function to generate the course names
Add a throttle to auto-complete to reduce spamming the server
Do a single query to fetch all the courses in the mform element when validation fails
Fix core course search function to return results when there are less than 2 chars in the query.
Handle setData with an empty array in new course selector
2016-03-09 13:30:18 +08:00
Eric Merrill 9502c7f539 MDL-53281 search: Properly set timeout, and don't wait for optimize 2016-03-09 13:30:18 +08:00
Dan Poltawski be8b6b489a MDL-53327 search: add missing pluginfo lang strings
AMOS BEGIN
 CPY [searchengine,admin],[type_search,plugin]
AMOS END
2016-03-09 13:30:18 +08:00
Andrew Nicols f758ad33e4 MDL-49897 calendar: mktime => usergetmidnight 2016-03-09 13:18:09 +08:00
Michael de Raadt b2b4f7c485 MDL-52133 mod_assign: Pass userid param when saving grade 2016-03-09 15:20:56 +11:00
Andrew Nicols 233b677bd4 MDL-51571 lti: Whitespace fixes 2016-03-09 12:05:08 +08:00
Andrew Nicols b80343e223 Merge branch 'MDL-51571_ltiErrorHandler' of https://github.com/moodlerooms/moodle 2016-03-09 11:11:32 +08:00
Andrew Nicols 4f9303c443 Merge branch 'MDL-53271-master' of git://github.com/merrill-oakland/moodle 2016-03-09 11:05:44 +08:00
David Monllao c17e0034a1 Merge branch 'MDL-50032-master' of git://github.com/jleyva/moodle 2016-03-09 10:55:18 +08:00
Andrew Nicols bd2e5ef17d Merge branch 'MDL-53325-master' of git://github.com/merrill-oakland/moodle 2016-03-09 10:06:47 +08:00
Andrew Nicols 020d27a733 Merge branch 'MDL-53281-master' of git://github.com/merrill-oakland/moodle 2016-03-09 09:25:07 +08:00
Andrew Nicols 65e7fee267 Merge branch 'MDL-53327-master' of git://github.com/danpoltawski/moodle 2016-03-09 08:48:44 +08:00
Andrew Nicols f4b6081ebf Merge branch 'MDL-52522-master' of git://github.com/cameron1729/moodle 2016-03-09 08:35:14 +08:00
Simey Lameze 85984545a9 MDL-53031 mod_assign: add session check on assignment plugins management 2016-03-08 19:46:07 +01:00
AMOS bot 416dcf62b1 Automatically generated installer lang files 2016-03-09 00:04:02 +08:00
Jun Pataleta 8e24a54e52 MDL-52433 user: Remove unnecessary capability check 2016-03-08 12:23:44 +01:00
Cameron Ball fa8e27b32b MDL-52522 grades: Add rescale grades option for grade categories.
When a grade category is overridden, it starts to behave like a regular grade item.
Therefore we need similar behaviour to what was implemented in MDL-48634.
2016-03-08 16:26:44 +08:00
David Monllao 406151d8e2 Merge branch 'wip-mdl-53300' of https://github.com/rajeshtaneja/moodle 2016-03-08 16:13:42 +08:00
David Monllao d94df7afa8 MDL-41648 gradingforms: Remove unnecessary attr 2016-03-08 15:32:19 +08:00
David Monllao f084c4b231 Merge branch 'wip-MDL-41648' of https://github.com/dg711/moodle 2016-03-08 15:32:17 +08:00
Andrew Nicols 540394e1db Merge branch 'MDL-49897' of https://github.com/rushi963/moodle 2016-03-08 15:05:50 +08:00
David Monllao 3f5c6ff2de Merge branch 'MDL-50218-master' of https://github.com/xow/moodle 2016-03-08 14:39:54 +08:00
Andrew Nicols d5f05f77f3 Merge branch 'MDL-53010-master' of git://github.com/lameze/moodle 2016-03-08 14:34:17 +08:00
David Monllao e86fb5043f Merge branch 'MDL-52068-master' of git://github.com/FMCorz/moodle 2016-03-08 14:29:24 +08:00
David Monllao f53b50e628 Merge branch 'MDL-52984' of https://github.com/rushi963/moodle 2016-03-08 14:04:07 +08:00
David Monllao 68e8a61fb1 Merge branch 'MDL-52718-master' of git://github.com/cameron1729/moodle 2016-03-08 13:57:30 +08:00
Andrew Nicols 94d4d0179a Merge branch 'MDL-53047-login-anchor' of https://github.com/brendanheywood/moodle 2016-03-08 13:15:00 +08:00
Cameron Ball 18ec7521da MDL-52718 block_community: Send XML-RPC request correctly
mnet has its own separate XML-RPC implementation which supports
introspection. So even though we were sending incorrectly formatted
parameters, our previous XML-RPC implementation could work out how
to mangle the parameters to be correct. Introspection is not a
part of the XML-RPC specification and we should not rely on it. Our
current XML-RPC client/server implementation does not support it either.

Therefore we should always send data in the expected format.
2016-03-08 10:46:14 +08:00
Simey Lameze b324802f36 MDL-51167 tool_monitor: check course visibility and user capabilities 2016-03-08 03:08:33 +01:00
Andrew Nicols 8a3d695d6c Merge branch 'MDL-53210-master' of git://github.com/marinaglancy/moodle 2016-03-08 09:21:47 +08:00
David Monllao 36d6f2d0c9 Merge branch 'MDL-53247-master' of git://github.com/danpoltawski/moodle 2016-03-08 09:17:13 +08:00
Cameron Ball 1688564a6e MDL-52651 htmlpurifier: Append rel=noreferrer to links.
Thank you to Zachary Durber for originally working on this issue.
2016-03-08 02:05:55 +01:00
David Monllao 9eede5bb9a Merge branch 'MDL-53350' of git://github.com/timhunt/moodle 2016-03-08 09:04:01 +08:00
David Monllao 28a6a36d9d Merge branch 'MDL-53353' of git://github.com/timhunt/moodle 2016-03-08 08:44:28 +08:00
Andrew Nicols 889b92c1c0 Merge branch 'MDL-53291_ajax_fix' of https://github.com/BenKelada/moodle 2016-03-08 07:43:31 +08:00
Krista Koivisto 7b9fbb1cf4 MDL-52774 ajax: Require authentication when getting nav branch
When getting the navigation branch data through AJAX, require
login if forcelogin is set.
2016-03-08 00:39:45 +01:00
Juan Leyva 711f9468d4 MDL-52901 mod_assign: Check due dates in external save_submission 2016-03-08 00:12:29 +01:00
David Monllao ae66ed23b6 MDL-52378 singleview: Using is_disabled instead of is_locked 2016-03-07 23:04:52 +01:00
Travis Noll 43cd0e3c9b MDL-52378 Singleview: Exclude Grade Attribute Permissions
Singleview users must have Manage Grade permission to modify the
Exclude grade attribute.
2016-03-07 23:04:42 +01:00
Juan Leyva 39b8513763 MDL-52808 calendar: Do not return events for hidden activities 2016-03-07 22:36:31 +01:00
David Mudrák a5fae3b0d2 MDL-52727 mod_data: Improve output of the form fields values
This issue mostly affects the search form fields. Submitted values for
these fields are typically obtained via optional_param() with
PARAM_NOTAGS specified as the parameter type - see parse_search_field()
methods. Such values themselves are not safe enough to be printed back
directly into the HTML as they might contain malicious code.

While working on the patch, some other places with weak protection were
detected and fixed.

In case of the itemid parameters, explicit clean_param() is added to
make sure we cast the value as an integer. That should make the s()
unnecessary but it was added anyway as an extra protection (just in case
the code flow changes or the parts of the code are re-used elsewhere).
2016-03-07 22:08:46 +01:00
Tim Hunt 981743b3ba MDL-53369 qtype_ddwtos: prevent boxes on consecutive lines touching 2016-03-07 15:22:54 +00:00
Andrew Hancox 5b7c500a71 MDL-49963 core: Select all button on participant list works across pages 2016-03-07 11:08:12 +00:00
Juan Leyva 1f67c0b83e MDL-52786 mod_quiz: New WS mod_quiz_get_combined_review_options 2016-03-07 11:46:32 +01:00
Juan Leyva c76425e869 MDL-52786 mod_quiz: Fix quiz_get_combined_reviewoptions 2016-03-07 11:45:01 +01:00
Eric Merrill 075fa91271 MDL-53325 search: Remove commit from engine interface
Remove commit from engine, and instead notify when indexes
start and stop, allowing them to decide what to do.
2016-03-06 13:46:54 -05:00
Eric Merrill bf2235bb11 MDL-53325 search: Optimize Solr less often 2016-03-06 13:46:54 -05:00
Eric Merrill 08c21a1beb MDL-53273 search: Use unicode safe string truncation 2016-03-06 13:32:59 -05:00
dg711 df8674d26e MDL-41648 grade: Remove 'error' parameter in grading notification divs 2016-03-06 09:16:57 +05:30
Tim Hunt 4b8a86503d MDL-53353 drag-drop marker quetions: fix edit form jitter 2016-03-04 17:41:54 +00:00
Tim Hunt 286d28b5e5 MDL-53350 drag-drop to text: layout problem on reivew 2016-03-04 17:01:31 +00:00
David Mudrák 496bf3ea16 MDL-53351 lti: Do not throw PHP notice when deleting LTI instance
The typeid=0 is a valid and common value representing "Automatic, based
on launch URL" type. In that case, no record in the lti_types table is
found. Thence attempting to access its toolproxyid property used to
throw PHP notice.
2016-03-04 16:42:05 +01:00
Tim Hunt 81e47a35e8 MDL-53304 question behaviour: don't show useless Check buttons
Previously, the Check button was often shown disabled when it
could not be used (e.g. when the question was finished, or when an
interactive question was in the try-again state). Eventually we
realised it was better usability to hide it in these cases.

Note that when a teacher reviews an in-progress quiz attempt, they will
see a disabled Check button if the student doing the quiz can see the
button.
2016-03-04 14:06:19 +00:00
Juan Leyva 0ca559a111 MDL-50032 webservice: Remove plugin functions from mobile service 2016-03-04 14:15:33 +01:00
Juan Leyva 186eba1b2e MDL-50032 webservice: Allow plugins to add functions into services 2016-03-04 13:39:53 +01:00
Brendan Heywood e1d6edb3b4 MDL-53047 login: Fixed #anchor being lost after login process 2016-03-04 22:54:11 +11:00
Juan Leyva e73e458170 MDL-52785 mod_quiz: New Web Service mod_quiz_get_user_best_grade 2016-03-04 11:17:39 +01:00
Juan Leyva c161ecff88 MDL-52670 mod_quiz: New Web Service mod_quiz_get_user_attempts 2016-03-04 09:29:32 +01:00
John Okely e42b23ebe2 MDL-50218 lti: Return empty grade when none exists 2016-03-04 16:26:08 +08:00
John Okely 7204d77b9f MDL-52821 lti: Include tool_consumer_instance_description in launch 2016-03-04 15:49:56 +08:00
Dan Poltawski 7adc7ef14f weekly release 3.1dev 2016-03-04 10:34:21 +08:00
Dan Poltawski e754b66aa0 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-03-04 10:34:18 +08:00
Jonathan Champ ddf98ccac3 MDL-39524 setuplib: Improve get_real_size() performance and readability 2016-03-03 11:05:48 -05:00
AMOS bot 724dc80cf2 Automatically generated installer lang files 2016-03-03 22:23:58 +08:00
AMOS bot a69ce40011 Automatically generated installer lang files 2016-03-03 22:23:58 +08:00
Dan Poltawski 0296f08e71 MDL-53327 search: add missing pluginfo lang strings
AMOS BEGIN
 CPY [searchengine,admin],[type_search,plugin]
AMOS END
2016-03-03 17:04:24 +08:00
Dan Poltawski 2f1f2d0222 MDL-53247 adminlib: change ordering of global search setup helper
Now put 'enable global search' as last step, thanks to David for the
idea.
2016-03-03 16:51:30 +08:00
Dan Poltawski f05f9e08cf MDL-53247 search: add cli indexer script 2016-03-03 16:25:32 +08:00
Dan Poltawski 3aff7ed4c5 Merge branch 'MDL-30811-fix3' of git://github.com/andrewnicols/moodle 2016-03-03 15:09:47 +08:00
Andrew Nicols 4ffe7e5070 MDL-30811 output: Adjust ARIA role to alert
https://www.w3.org/TR/wai-aria-practices/#alert
2016-03-03 15:09:18 +08:00
Andrew Nicols c1cb65d470 MDL-30811 javascript: alert JS should be in template
By moving the JS required for an alert to the JavaScript we make it
possible for themers to use frameworks other than bootstrap if they so
wish.
2016-03-03 15:09:17 +08:00
Andrew Nicols 11a67b211b MDL-30811 javascript: Lazily load core dependencies
To prevent possible race conditions, we lazily load the templates, and ajax
dependencies.
2016-03-03 14:47:07 +08:00
Russell Smith c1518631e3 MDL-52945 modinfo: Avoid uservisible when module already used. 2016-03-03 16:03:19 +11:00
Dan Poltawski 7c7757185a MDL-53247 search: allow search to be configured before enabled
The seach manager no longer checks if search is enabled before providing
an instance. It's up to the callers to do the access control.
2016-03-03 12:31:21 +08:00
Russell Smith 116094595d MDL-53323 profiling: Close session as early as possible. 2016-03-03 12:45:16 +11:00
Andrew Nicols ebdbc82b82 MDL-48362 enrol_cohort: Correct variable naming for course sync
$course->id => $instance->courseid
2016-03-03 07:55:10 +08:00
Eric Merrill bfd6c78f63 MDL-53281 search: Properly set timeout, and don't wait for optimize 2016-03-02 17:32:03 -05:00
Ben Kelada 023d6a6756 MDL-53291 javascript: fix jquery ajax requests when data contains ??
jQuery ajax requests containing multiple '?' get replaced with a
string similar to jQuery152330039032_1231231, this is because it
is processing a stringified data object as jsonp and thinks its a url.
 workaround is to add contenttype
see https://github.com/jquery/jquery/issues/1799
2016-03-03 09:15:24 +11:00
AMOS bot 6b893bde60 Automatically generated installer lang files 2016-03-03 00:04:04 +08:00
Eloy Lafuente (stronk7) 5aac4a23e5 Merge branch 'MDL-30811-fix2' of git://github.com/andrewnicols/moodle 2016-03-02 16:36:03 +01:00
Juan Leyva ee6aa74081 MDL-52974 mod_assign: Include missing local library 2016-03-02 10:34:20 +01:00
Dan Poltawski 5be405fa4a MDL-53050 mod_forum: fix for base highlight 2016-03-02 17:18:51 +08:00
Dan Poltawski 852f32f7b3 Merge branch 'wip-MDL-50887-master' of https://github.com/marinaglancy/moodle 2016-03-02 15:49:45 +08:00
Marina Glancy d2de503c80 MDL-50887 antivirus: clamav is standard plugin, missing strings 2016-03-02 15:42:35 +08:00
Frederic Massart 28f8993d0f MDL-52068 repository: Prevent JS errors due to unescaped lang strings 2016-03-02 15:34:45 +08:00
Andrew Nicols 3247e9ef4b Merge branch 'MDL-53214-master-category-feedback' of git://github.com/cameron1729/moodle 2016-03-02 14:49:20 +08:00
Cameron Ball 9566b021db MDL-53214 grades: Fix labels on feedback fields 2016-03-02 14:21:39 +08:00
Andrew Nicols 2f244f1cc6 MDL-30811 core: Initiate notifications on first use only 2016-03-02 13:30:09 +08:00
Dan Poltawski bc48a198ab Merge branch 'MDL-52513' of https://github.com/rushi963/moodle 2016-03-02 13:23:56 +08:00
Eloy Lafuente (stronk7) df190d18a1 MDL-52136 mod_forum: fix some out-of-sync stuff
Thanks CIs!
2016-03-02 05:42:29 +01:00
Andrew Nicols 5e785ab084 Merge branch 'MDL-48362-master-fix3' of http://github.com/damyon/moodle 2016-03-02 12:36:56 +08:00
Damyon Wiese 72fcaae76d MDL-48362 enrol: Fixes to cohort and manual enrol plugins
These were regressions from the change to use the standard editing ui
for enrolment plugins.
2016-03-02 12:34:00 +08:00
Eloy Lafuente (stronk7) ce878562f3 Merge branch 'MDL-52136-master' of git://github.com/andrewnicols/moodle 2016-03-02 05:25:57 +01:00
Andrew Nicols e5a1f7d92a MDL-52136 mod_forum: forum_post is templatable 2016-03-02 12:10:57 +08:00
Dan Poltawski cc32a710ee Merge branch 'MDL-52397_behat2' of git://github.com/dmonllao/moodle 2016-03-02 11:48:39 +08:00
Dan Poltawski 8ad1868683 Merge branch 'wip-mdl-51075' of https://github.com/rajeshtaneja/moodle 2016-03-02 11:47:13 +08:00
Rajesh Taneja 677ba15853 MDL-51075 behat: Fixed exported question file size 2016-03-02 11:39:10 +08:00
David Monllao b97356f215 MDL-52397 behat: Another behat fix, there is no student2 grade 2016-03-02 11:03:01 +08:00
Andrew Nicols 121a0d12fb Merge branch 'MDL-52489_master' of git://github.com/markn86/moodle 2016-03-02 09:08:29 +08:00
Andrew Nicols ca0227dd18 MDL-52136 mod_forum: Correctly quote get_string vars in mustache 2016-03-02 09:00:28 +08:00
Andrew Nicols 0b4bff8ca9 MDL-52136 core: Add support for quoting variables in mustache helpers
This is required for when helpers include json-encoded variables as arguments.
As an example, imagine a template with content:

{{# str }} somekey, someidentifier, { "fullname": "{{ fullname }}" } {{/ str }}

If the fullname variable were to include the double-quote character (e.g.
John "Trevor" Doe) because of the way in which mustache renders content, it
would become:

{{# str }} somekey, someidentifier, { "fullname": "John "Trevor" Doe" } {{/ str }}

This results in an invalid JSON structure.

To work around this issue, the quote characters in the passed variable
must be escaped:

{{# str }} somekey, someidentifier, { "fullname": "John \"Trevor\" Doe" } {{/ str }}

Unfortunately, Mustache provides no way of doing so natively.

With this function, we can quote the text as appropriate:

{{# str }} somekey, someidentifier, { "fullname": {{# quote }}{{ fullname }}{{/ quote }} } {{/ str }}

This also handles the case where the quoted content includes the Mustache
delimeter ({{ or }}).

For example:
fullname = 'John "}}Trevor{{" Doe'

Ordinarily this would be rendered as:
{{# str }} somekey, someidentifier, { "fullname": "John "}}Trevor{{" Doe" } {{/ str }}

This rendering is both a JSON error, and also a mustache syntax error because of the mustache delimeters.

The quote helper also escapes these by wrapping them in change delimeter
tags:

{{# str }} somekey, someidentifier, { "fullname": "John "{{=<% %>=}}}}<%={{ }}=%>Trevor{{=<% %>=}}{{{{=<% %>=}}" Doe" } {{/ str }}
2016-03-02 08:48:46 +08:00
Eloy Lafuente (stronk7) 192bce5406 Merge branch 'MDL-36652' of https://github.com/rushi963/moodle 2016-03-01 22:01:44 +01:00
Eloy Lafuente (stronk7) 6770a4b3a2 Merge branch 'wip-mdl-53126' of https://github.com/rajeshtaneja/moodle 2016-03-01 21:35:03 +01:00
Eloy Lafuente (stronk7) 25a73245c0 Merge branch 'MDL-53200-master-enfix' of git://github.com/mudrd8mz/moodle 2016-03-01 21:23:16 +01:00
Rushikesh f68d8a4151 MDL-49897 Calendar : Calendar day view showing past events 2016-03-01 20:05:51 +05:30
Dan Poltawski 73911de50d MDL-50887 clam: upgrade step with wrong version 2016-03-01 21:37:56 +08:00
Rajesh Taneja bdd4bed8b5 MDL-53300 core_grade: use currentgradetype if modgrade_type is not set
If mod has grades, then while upgrading
modgrade_type is disabled. This will not post
it with form and hence validation fails.
To avoid above problem, use ->currentgradetype
if modgrade_type is not set
2016-03-01 16:38:59 +08:00
Dan Poltawski b8b7f33acd Merge branch 'MDL-52669-master' of git://github.com/jleyva/moodle 2016-03-01 14:56:58 +08:00
Dan Poltawski 2158e87492 Merge branch 'MDL-50887-master' of https://github.com/lucisgit/moodle 2016-03-01 14:49:33 +08:00
Andrew Nicols 37f39924b5 Merge branch 'MDL-52397_fix-behat' of git://github.com/dmonllao/moodle 2016-03-01 14:35:54 +08:00
Andrew Nicols 9557a603e6 Merge branch 'MDL-52397_fix-oracle' of git://github.com/dmonllao/moodle 2016-03-01 14:35:50 +08:00
Andrew Nicols 5d1a34b076 Merge branch 'MDL-48362-master-fix2' of http://github.com/damyon/moodle 2016-03-01 14:31:29 +08:00
David Monllao 2a03c5fe06 MDL-52397 mod_assign: Fix behat test 2016-03-01 14:29:27 +08:00
Damyon Wiese 74aece8719 MDL-48362 enrol_cohort: Fix unit test by manually triggering sync
Sync is now automatically triggered by add/update instance. We need
to manually trigger sync before each part of the test to clean up
role assignments from the previous test.
2016-03-01 14:25:48 +08:00
Andrew Nicols 21d43c12b9 MDL-50546 mod_quiz: Correct typos in WS docs 2016-03-01 14:22:06 +08:00
Andrew Nicols 614173c7dc Merge branch 'MDL-50546-master' of git://github.com/jleyva/moodle 2016-03-01 13:41:35 +08:00
Mark Nelson 989a84577e MDL-52489 mod_assign: mentioned changes in upgrade.txt 2016-03-01 13:19:02 +08:00
Dan Poltawski 6a9b3c5a48 Merge branch 'MDL-53077' of git://github.com/Dave-B/moodle 2016-03-01 13:10:57 +08:00
Dan Poltawski 340d35a902 Merge branch 'MDL-53166' of https://github.com/eugeneventer/moodle-fixes 2016-03-01 13:03:06 +08:00
Andrew Nicols c62413ace3 Merge branch 'MDL-48362-master-fix1' of http://github.com/damyon/moodle 2016-03-01 12:58:54 +08:00
Dan Poltawski 71ea84048d Merge branch 'MDL-53263-forum-reply-deeplink' of https://github.com/brendanheywood/moodle 2016-03-01 12:53:10 +08:00
Dan Poltawski de67ef599f Merge branch 'MDL-46424_master' of https://github.com/dmonllao/moodle 2016-03-01 12:38:54 +08:00
Dan Poltawski b23f27fdd2 Merge branch 'wip-MDL-44952-master' of https://github.com/marinaglancy/moodle 2016-03-01 12:30:56 +08:00
David Monllao 4edd8e773d MDL-52397 editpdf: Fix draft vs nondraft comparison
We can not rely on the db engine returning results in the same order
if no order is specified in get_comments and get_annotations.

Also fixing a related unit test.
2016-03-01 12:29:13 +08:00
Damyon Wiese e3f24ac030 MDL-48362 enrol_cohort: Perform immediate sync on add/update instance
This restores backwards compatible behaviour.
2016-03-01 12:29:09 +08:00
Andrew Hancox 23b6636997 MDL-51687 mod_folder: Trigger event when downloading all files. 2016-03-01 12:27:55 +08:00
Dan Poltawski 792508cb7f Merge branch 'MDL-30811-fix' of git://github.com/andrewnicols/moodle 2016-03-01 12:26:33 +08:00
Dan Poltawski fd8e293030 Merge branch 'MDL-52809-master' of git://github.com/dpalou/moodle 2016-03-01 12:23:54 +08:00
Marina Glancy 17f53b45ab MDL-44952 mod_feedback: set value for hidenoselect if disabled 2016-03-01 12:21:00 +08:00
Andrew Nicols cf633c555e MDL-30811 form: Remove continue from test. 2016-03-01 12:11:10 +08:00
Andrew Nicols 64d6465650 MDL-52974 mod_assign: Improve tests for view_submission_status
External tests only
2016-03-01 11:50:11 +08:00
Andrew Nicols 05b0f579ca Merge branch 'MDL-52974-master' of git://github.com/jleyva/moodle 2016-03-01 11:48:16 +08:00
Dan Poltawski c116a115d9 Merge branch 'MDL-52928-master' of git://github.com/andrewnicols/moodle 2016-03-01 11:34:04 +08:00
Dan Poltawski d76acc87f7 Merge branch 'MDL-52999-master' of git://github.com/jleyva/moodle 2016-03-01 10:43:12 +08:00
Andrew Nicols 57ecaf68b8 Merge branch 'MDL-53027-master' of git://github.com/cameron1729/moodle 2016-03-01 10:40:27 +08:00
Dan Poltawski 9f82928bb6 Merge branch 'MDL-53050-forum-target' of https://github.com/brendanheywood/moodle 2016-03-01 10:38:55 +08:00
Dan Poltawski 25c0e10122 Merge branch 'MDL-53072_master' of git://github.com/markn86/moodle 2016-03-01 10:12:46 +08:00
Andrew Nicols c25f0b4d27 Merge branch 'MDL-52936_master' of https://github.com/marxjohnson/moodle 2016-03-01 10:05:53 +08:00
Andrew Nicols 2b38214a16 Merge branch 'MDL-53214-master' of git://github.com/cameron1729/moodle 2016-03-01 09:40:44 +08:00
Eloy Lafuente (stronk7) d9dfc410ad Merge branch 'wip-MDL-53172-master' of https://github.com/marinaglancy/moodle 2016-03-01 01:59:31 +01:00
Andrew Nicols 80f79ad6ec Merge branch 'MDL-50175-master' of git://github.com/danpoltawski/moodle 2016-03-01 08:07:56 +08:00
Ruslan Kabalin 324a45833a MDL-50887 tests: Increment number of plugins in core_component_testcase.
We have got one more core plugin now.
2016-02-29 09:31:30 +00:00
Ruslan Kabalin 71f74dd165 MDL-50887 antivirus_clamav: Add unit tests for scanner class.
We are using "stubbing" method to replace real component (clamav) control
points with doubles in order to avoid direct calls to clamav. For more
details, please refer to https://phpunit.de/manual/4.8/en/test-doubles.html

Notice, that while it is possible to use setExpectedException in the tests,
this does not seem play correctly with consecutive assertions in the same
test after exception is thrown (they seem omitted). Explicit try/catch
construction has been used in testing instead.

To run just this test, use:
vendor/bin/phpunit antivirus_clamav_scanner_testcase lib/antivirus/clamav/tests/scanner_test.php
2016-02-29 09:31:30 +00:00
Ruslan Kabalin ae3ba48272 MDL-50887 antivirus: Add unit tests for manager class.
To run just this test, use:
vendor/bin/phpunit core_antivirus_testcase lib/tests/antivirus_test.php
2016-02-29 09:31:29 +00:00
Ruslan Kabalin d08667a271 MDL-50887 antivirus_clamav: Access config properties using getter. 2016-02-29 09:31:29 +00:00
Ruslan Kabalin 17d7ee0eea MDL-50887 antivirus: Add config getter to base class.
Improving architecture to make it testable.
2016-02-29 09:31:29 +00:00
Ruslan Kabalin 5b6a0f2c15 MDL-50887 antivirus_clamav: Split scanning logic and results processing.
This refactoring will make possible to assert scan results processing
behaviour in unit testing.
2016-02-29 09:31:29 +00:00
Ruslan Kabalin 56e915bb82 MDL-50887 antivirus: Replace 'antiviruses' with 'antivirus plugins'.
Language string chnages as per Helen Foster's comments in the ticket.
2016-02-29 09:31:29 +00:00
Ruslan Kabalin ae784f716e MDL-50887 antivirus: Refactor adminlib to use html_writer. 2016-02-29 09:31:29 +00:00
Ruslan Kabalin 11362ae3ff MDL-50887 antivirus: Use namespace referenced classes. 2016-02-29 09:31:09 +00:00
Dan Poltawski b70b436875 Merge branch 'MDL-44952-master' of git://github.com/marinaglancy/moodle 2016-02-29 16:34:22 +08:00
Dan Poltawski c3717ca64e Merge branch 'MDL-50794-master-workshop-restrict-filetypes' of git://github.com/mudrd8mz/moodle 2016-02-29 16:15:27 +08:00
Dan Poltawski 9b44810fbf Merge branch 'MDL-53213' of https://github.com/mr-russ/moodle 2016-02-29 15:37:25 +08:00
Andrew Nicols 7f1303728d Merge branch 'MDL-52965_master' of git://github.com/dmonllao/moodle 2016-02-29 15:20:44 +08:00
Andrew Nicols da45d10a51 MDL-48362 enrol: Correct singleselect use in behat test 2016-02-29 15:16:10 +08:00
Andrew Nicols dfc18848db Merge branch 'MDL-48362-master' of git://github.com/damyon/moodle 2016-02-29 14:46:20 +08:00
Damyon Wiese f758951565 MDL-48362 enrol: Convert guest to standard enrolment ui
Also - provide automatic course navigation links when using the standard ui.
2016-02-29 14:33:06 +08:00
Simey Lameze 73ea963215 MDL-53010 core_role: add missing coursecatlib include 2016-02-29 14:25:45 +08:00
Andrew Nicols 90a11c2abb Merge branch 'MDL-53249-master' of git://github.com/merrill-oakland/moodle 2016-02-29 14:22:31 +08:00
Andrew Nicols ae3c6ee42d MDL-52346 caching: Coding style fixes 2016-02-29 14:14:01 +08:00
Andrew Nicols 8bd28ed696 Merge branch 'MDL-52346' of git://github.com/mr-russ/moodle 2016-02-29 14:12:03 +08:00
Damyon Wiese 51c736f037 MDL-48362 enrol: Auto generate the edit action icons when using the new ui 2016-02-29 14:00:31 +08:00
Dan Poltawski 17ac1b5349 Merge branch 'MDL-30811-master' of git://github.com/andrewnicols/moodle 2016-02-29 13:43:53 +08:00
Andrew Nicols d96a4e2a59 MDL-53206 caching: Remove accidental use of fullresult variable 2016-02-29 13:20:29 +08:00
Damyon Wiese 60010fd614 MDL-48362 enrol: Use a standard UI and validation for enrolment plugins
Convert core enrolment plugins to use standard editing ui.
2016-02-29 12:31:41 +08:00
Dan Poltawski 57853ea8f9 Merge branch 'MDL-53208' of https://github.com/mr-russ/moodle 2016-02-29 10:29:09 +08:00
Dan Poltawski 7f02500bd8 Merge branch 'MDL-53154-master' of git://github.com/junpataleta/moodle 2016-02-29 10:13:06 +08:00
Andrew Nicols 0e8ce68a17 MDL-30811 core: Fix tests where continue button has been removed 2016-02-29 09:05:58 +08:00
Andrew Nicols 372d6b923b MDL-30811 core: Replace use of continue_button with redirect 2016-02-29 09:05:58 +08:00
Andrew Nicols d954b54f9e MDL-30811 forum: Update use of redirect to include message and type 2016-02-29 09:05:57 +08:00
Andrew Nicols 3ad964190c MDL-30811 core: Make use of session notifications in redirect() 2016-02-29 09:05:57 +08:00
Andrew Nicols 0346323cec MDL-30811 output: Add support for session notifications 2016-02-29 09:05:56 +08:00
Rushikesh 4ac5ae6248 MDL-46424 Upload: Error message for a file exceeding maxsize 2016-02-29 08:59:02 +08:00
Andrew Nicols a31d1e5726 Merge branch 'wip-MDL-52397-master' of git://github.com/abgreeve/moodle 2016-02-29 08:33:41 +08:00
Eric Merrill 63d5007b77 MDL-53271 search: Catch Solr Server errors when adding doc 2016-02-28 13:40:25 -05:00
Andrew Nicols 243468030a MDL-30811 output: Tidy up notifications 2016-02-28 19:16:34 +08:00
Russell Smith d22a01fd99 MDL-53213 caching: Faster databasemeta caching for all databases. 2016-02-28 17:03:14 +11:00
Russell Smith fdff8077e0 MDL-53208 caching: Update serialization rules for performance.
- We only now serialize when required, eg when the store doesn't do it.
- static acceleration now serializes on set to reduce overhead on load.
- null now works in static acceleration as we use an array for storage metadata
- static acceleration delete uses isset rather than an array_search.
2016-02-28 17:01:51 +11:00
Russell Smith 76349f871e MDL-53208 caching: Remove TTL wrapper on static acceleration.
TTL is only updated between script runs.  If it's valid
when it's added to static acceleration, it will be valid
for the entire script run.
2016-02-28 17:01:50 +11:00
Russell Smith 98d580888b MDL-53208 caching: parse_key not required for static cache.
static cache operates on a single cache instance, it can't share
with others and can use the supplied key immediately.
2016-02-28 17:01:50 +11:00
Russell Smith 80788d03e1 MDL-53208 caching: Update serialization rules for performance.
- We only now serialize when required, eg when the store doesn't do it.
- static acceleration now serializes on set to reduce overhead on load.
- null now works in static acceleration as we use an array for storage metadata
- static acceleration delete uses isset rather than an array_search.
2016-02-28 17:01:50 +11:00
Russell Smith b2159f2d3f MDL-53208 caching: Enable dereferencing as a feature.
If the cache does all the dereferencing when it stores and loads
the objects, then the cache loaders don't need to do that work.
This is true of all caches that use something other than PHP's memory
to store their results.
2016-02-28 17:01:49 +11:00
Russell Smith 5007975d1e MDL-53206 caching: Ensure get_many and set_many dereference objects. 2016-02-28 17:01:49 +11:00
AMOS bot a091c60d9b Automatically generated installer lang files 2016-02-28 00:04:01 +08:00
Brendan Heywood f0b7925f01 MDL-53263 forum: Add anchor to reply by email confirmation link 2016-02-27 23:39:59 +11:00
Marina Glancy b259fa6645 MDL-53172 core: adjust CSS for inplace_editable 2016-02-27 11:29:27 +08:00
Andrew Nicols 490934a4ed MDL-53172 javascript: Fix coding style violations 2016-02-27 11:29:27 +08:00
Andrew Nicols 38cf8b6661 MDL-53172 javascript: Stop requiring body manipulation on load 2016-02-27 11:29:27 +08:00
Marina Glancy 8de48ad0ae MDL-53172 core: toggle and select in inplace_editable 2016-02-27 11:29:24 +08:00
Juan Leyva 19429de4be MDL-52669 mod_quiz: Move logging in view.php to a new API function 2016-02-26 15:45:23 +01:00
Juan Leyva 4064dd0ec4 MDL-52669 mod_quiz: New Web Service mod_quiz_view_quiz 2016-02-26 15:45:22 +01:00
Juan Leyva 51e27aac2b MDL-50546 mod_quiz: New WS mod_quiz_get_quizzes_by_courses 2016-02-26 15:42:11 +01:00
Dani Palou 5380c664d4 MDL-52809 wiki: Add tests for mod_wiki_get_subwikis 2016-02-26 14:11:24 +01:00
Dani Palou 44f1b701db MDL-52809 wiki: New WS mod_wiki_get_subwikis 2016-02-26 14:00:12 +01:00
Brendan Heywood 2e0caa8e06 MDL-53050 mod_forum: Add anchor target highlight style 2016-02-26 21:12:25 +11:00
Mark Nelson aa75dca3d8 MDL-52489 mod_assign: added support for old structure 2016-02-26 12:09:30 +08:00
Mark Nelson 5a2c7af2d3 MDL-52489 mod_assign: fixed issue with files being excluded 2016-02-26 12:09:30 +08:00
evltuma 18a5b4d85c MDL-52489 mod_assign: Download all submissions as a zip copy. 2016-02-26 12:09:30 +08:00
Mark Nelson 3ee812fab4 MDL-53072 group: minor changes to existing code
1) Tidied up conditional check and put additional variable on new line.
2) Prevented change of the default behaviour for 'groups_get_potential_members()'.
3) Added another behat test.
2016-02-26 11:42:14 +08:00
Rex Lorenzo 4cb32a243d MDL-53072 group: added related behat tests 2016-02-26 11:42:14 +08:00
Niclas Tollstorff 7b96ffb044 MDL-53072 group: added 'only active' option when auto-creating groups 2016-02-26 11:42:14 +08:00
Eric Merrill 1f0d77f7cd MDL-53249 atto: Make sure all editors see end move event 2016-02-25 21:37:16 -05:00
Russell Smith 4350192a8d MDL-52346 caching: Allow localstorage as a cache option.
We display a notification on screen during configuration telling
the administrator if it's safe to map this store to a local storage
cache or not.
2016-02-26 10:58:20 +11:00
Mark Nielsen 00e270600f MDL-51571 mod_lti: Improve service error handling 2016-02-25 15:43:31 -07:00
David Mudrák 996f7e8228 MDL-50794 workshop: Improve the file type restricting implementation
This is basically a clean up and what I think improved version of the
original Mahmoud's patch.

The actual checking for allowed file extensions has been re-implemented
and is now covered by unit tests. The list of allowed extensions is now
also assed to the filemanager element's accepted_types option to prevent
picking other files (we still need the in-place validation though). The
form validation is simplified a bit. The custom validation of file size
introduced in the previous patch has been removed as not related to this
issue (also I believe it should not be done at this level).
2016-02-25 18:03:18 +01:00
M Kassaei 1a282212c1 MDL-50794 workshop: Allow restricting submitted file types
It was reported at the Open University that there have been some
problems with the formats of files submitted by students. Not all
students completed their outlines as a Word .doc (despite this being the
format of the template provided). Some formats (e.g. .pages) couldn’t be
translated by some of the reviewing students. Therefore, they were
unable to provide a review and the submitting students not receiving any
comments.

This patch allows the teacher to define list of allowed file types that
can be attached to submitted work and/or overall feedback in the
workshop.
2016-02-25 18:03:18 +01:00
Helen Foster 054b863d2f MDL-53200 lang: Merge English strings from the en_fix language pack 2016-02-25 17:57:59 +01:00
Andrew Hancox 50ed9363c4 MDL-53179 mod-folder: Move download button into seperate container 2016-02-25 15:15:07 +00:00
KeenRivals 83ea83ec19 MDL-50175 graphics: Optimized SVGs with SVGO. 2016-02-25 11:56:42 +00:00
KeenRivals 26c19b02d5 MDL-50175 graphics: Optimized PNG images with optipng
Used options: -o7 -strip all and advdef -z4 -i50.

(With ./lib excluded)
2016-02-25 11:56:37 +00:00
Mark Johnson 024b1eade0 MDL-52936 theme_bootstrapbase: Fix link hover bug on iOS 2016-02-25 11:38:11 +00:00
Ruslan Kabalin b6bb4e81bb MDL-50887 antivirus: Use autoloaded classes.
This implements the use of class autoloading for antivirus plugin. Base
abstract class, exception class and manager are using namespace
core\antivirus, this is because all three class files are located in
/lib/classes/antivirus/ (see \core_component::classloader for convention
details).
2016-02-25 09:55:45 +00:00
Ruslan Kabalin 1a980fdadb MDL-50887 antivirus: Fix style issues. 2016-02-25 09:55:45 +00:00
Ruslan Kabalin 375223c6db MDL-50887 antivirus: Deprecate functions no longer required.
This also removes abandoned strings that are no longer in use (since
1e23ff2 landed).
2016-02-25 09:55:45 +00:00
Ruslan Kabalin 001feb6649 MDL-50887 antivirus: Refactor antivirus scanning to use new plugin.
This patch moves existing scanning functionality to plugin level. It does
not add anything new, just refactors the existing functionality.

AMOS BEGIN
  MOV [clamemailsubject,core],[emailsubject,antivirus]
  MOV [clamfailed,core],[clamfailed,antivirus_clamav]
  MOV [clamlost,core],[invalidpathtoclam,antivirus_clamav]
  MOV [clamunknownerror,core],[unknownerror,antivirus_clamav]
  MOV [virusfounduser,core],[virusfounduser,antivirus]
AMOS END
2016-02-25 09:55:45 +00:00
Ruslan Kabalin 1a1d249a70 MDL-50887 antivirus_clamav: Implement file scanning functionality.
This also removes runclamonupload config setting. It is implied that files
will be scanned if plugin is enabled, no need to have a separate setting.

In addition to that, some language strings are updated. It is 'ClamAV', not
'clam AV' (see http://www.clamav.net/index.html).
2016-02-25 09:55:45 +00:00
Ruslan Kabalin 7d19e0e33d MDL-50887 antivirus_clamav: Move global clamav settings to plugin level.
AMOS BEGIN
 MOV [clamfailureonupload,core],[clamfailureonupload,antivirus_clamav]
 MOV [configclamactlikevirus,core],[configclamactlikevirus,antivirus_clamav]
 MOV [configclamdonothing,core],[configclamdonothing,antivirus_clamav]
 MOV [configclamfailureonupload,core],[configclamfailureonupload,antivirus_clamav]
 MOV [configpathtoclam,core],[configpathtoclam,antivirus_clamav]
 MOV [configquarantinedir,core],[configquarantinedir,antivirus_clamav]
 MOV [configrunclamavonupload,core],[configrunclamavonupload,antivirus_clamav]
 MOV [pathtoclam,core],[pathtoclam,antivirus_clamav]
 MOV [quarantinedir,core],[quarantinedir,antivirus_clamav]
 MOV [runclamavonupload,core],[runclamavonupload,antivirus_clamav]
AMOS END
2016-02-25 09:55:45 +00:00
Ruslan Kabalin 89a5878e3f MDL-50887 antivirus_clamav: Initial commit. 2016-02-25 09:54:05 +00:00
Ruslan Kabalin 146eeb7651 MDL-50887 antivirus: Add antivirus plugin infrastructure. 2016-02-25 09:54:05 +00:00
Davo Smith aa066e99f7 MDL-52965 medialib: fix preload attribute 2016-02-25 15:25:27 +08:00
Andrew Nicols 03b8b55f10 weekly release 3.1dev 2016-02-25 13:52:15 +08:00
Andrew Nicols 5fef7d9c04 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-02-25 13:52:11 +08:00
Rajesh Taneja 788beb6705 MDL-53126 behat: Fixed radio button in backup step
Rather than calling click and check on radio node
use radio form field to set value
2016-02-25 10:33:17 +08:00
Andrew Nicols 84fbbd9985 Merge branch 'MDL-45104-master-fix' of github.com:xow/moodle 2016-02-25 10:14:06 +08:00
John Okely a285d561ef MDL-45104 logging: Check if legacy log is enabled 2016-02-25 10:00:02 +08:00
John Okely 3f195ab7c8 MDL-45104 logging: Fix spelling of writing 2016-02-25 09:59:28 +08:00
Andrew Nicols 7204460d5a Merge branch 'wip-mdl-49324' of https://github.com/rajeshtaneja/moodle 2016-02-25 09:53:43 +08:00
Rajesh Taneja 2b9361cdda MDL-49324 behat: Use singleselect step to select user 2016-02-25 09:49:24 +08:00
AMOS bot cbd7d973dd Automatically generated installer lang files 2016-02-25 00:11:21 +08:00
David Balch 02c8a8366b MDL-53027 calendar: Fix false empty result from calendar_get_events(). 2016-02-24 18:38:25 +08:00
Eloy Lafuente (stronk7) 316d6574e2 Merge branch 'MDL-53071-master' of git://github.com/junpataleta/moodle 2016-02-24 11:01:15 +01:00
Dan Poltawski e8d908728d MDL-45104 admin: convert error to warning 2016-02-24 08:30:31 +00:00
Andrew Nicols 95b3ad671a MDL-53228 testing: Attempt an upgrade from 27 2016-02-24 15:53:44 +08:00
Marina Glancy 2a94a2f60f MDL-53210 mod_feedback: fixes in check feedback access
1. show only uservisible feedbacks in block_feedback
2. nicer error message when user opens feedback on frontpage instead of from the mapped course
3. corrected cap check in view.php page before displaying link to complete.php
2016-02-24 15:22:21 +08:00
Adrian Greeve 50c734e8a5 MDL-52397 mod_assign: Unit tests for feedback plugins.
Testing that the new method is_feedback_modified() works
as it should with the standard plugins.
2016-02-24 15:09:27 +08:00
Adrian Greeve 238c05c23c MDL-52397 mod_assign: Added new method to feedback plugins.
Added a method to the feedback plugins to check if feedback
has been modified. This allows for a more accurate record
of when the grade has been modified.
2016-02-24 15:09:08 +08:00
Eloy Lafuente (stronk7) 6ab07f97bf Merge branch 'MDL-49324-master' of git://github.com/andrewnicols/moodle 2016-02-24 07:55:51 +01:00
Andrew Nicols 0c31d92452 MDL-49324 grade: Ensure report appears in breadcrumbs 2016-02-24 14:39:11 +08:00
Andrew Nicols beb964520a MDL-49324 gradereport_singleview: Fix unit tests 2016-02-24 14:39:10 +08:00
Andrew Nicols bb4d057662 MDL-49324 grades: Remove old variable usage 2016-02-24 14:39:10 +08:00
Andrew Nicols 47f084c6a1 MDL-49324 grades: Remove unnecessary @javascript tag from tests 2016-02-24 14:39:09 +08:00
Andrew Nicols 87d71ecf69 MDL-49324 grade: Ensure weights adjusted message is displayed
The grade settings page displays a message to inform users that weights
have been adjusted if they did not previously add up to the required 100%.

With the change to sometimes displaying a progress bar, whether the message
is displayed must be calculated immediately after the regrade took place,
and before the page redirects.

I have added a callback with arguments to the regrade_if_required function
which is called immediately after regrade has taken place (regardless of
whether the progress bar is required).

This callback modifies the PAGE URL such that the redirect message will be
displayed after the redirect. This does not use the session as the message
should only be displayed immediately after a change. If the user does not
click on the continue button after the progress bar has been displayed, and
comes back to the page later, this may be confusing.
2016-02-24 14:39:09 +08:00
Andrew Nicols 417c7f3b86 MDL-49324 grades: Remove category aggregation change backend
The UI for this was removed several releases ago and this code is no longer
called.
2016-02-24 14:39:09 +08:00
Andrew Nicols a2f6399806 MDL-49324 gradereport_singleview: Correct url params supplied to PAGE 2016-02-24 14:39:08 +08:00
Andrew Nicols 0a802c9c4e MDL-49324 grades: Create helper function for regrading on report view 2016-02-24 14:39:08 +08:00
Andrew Nicols 21efa3c65c Merge branch 'MDL-31989_admin-performance' of git://github.com/dmonllao/moodle 2016-02-24 11:05:41 +08:00
David Monllao 46e944aeb3 MDL-31989 admin: Search admin settings only when needed 2016-02-24 10:49:04 +08:00
Andrew Nicols 38d94702af Merge branch 'wip-mdl-52996' of https://github.com/rajeshtaneja/moodle 2016-02-24 10:38:17 +08:00
Cameron Ball ccdda8550b MDL-53214 grades: Ensure grader report correctly labels fields.
The editable fields for the grader report should have unique labels.
Previously category grade items were not being labelled with the
category name.
2016-02-24 10:30:43 +08:00
Rajesh Taneja 7b61603406 MDL-52996 Atto: Only check if plugins are loaded
Atto bold using behat with phantomjs doesn't work.
In this case there is no need to test plugin functionality.
Only checking if plugin is loaded in toolbar is sufficient.
2016-02-24 10:09:15 +08:00
Rushikesh e01f3f636c MDL-52513 Grading : Change in display message after publishing 2016-02-23 22:02:56 +05:30
AMOS bot 14d45c443c Automatically generated installer lang files 2016-02-24 00:04:19 +08:00
Dan Poltawski fef5360053 Merge branch 'MDL-42460-master' of git://github.com/marinaglancy/moodle 2016-02-23 14:36:54 +00:00
Dan Poltawski f0ad27291e MDL-31989 version: proper bump 2016-02-23 12:11:39 +00:00
Dan Poltawski e03711fc08 MDL-31989 version: bump 2016-02-23 12:10:05 +00:00
Dan Poltawski 0011d7c5e1 Merge branch 'MDL-31989_survey-fix' of git://github.com/dmonllao/moodle 2016-02-23 12:07:46 +00:00
David Monllao c625b01a4c MDL-31989 mod_survey: Prevent templates from being indexed 2016-02-23 19:58:52 +08:00
Dan Poltawski 5500e15d67 Merge branch 'MDL-33663' of https://github.com/rushi963/moodle 2016-02-23 11:44:24 +00:00
Dan Poltawski d71448e2a6 Merge branch 'wip-MDL-45104-master-v2' of git://github.com/abgreeve/moodle 2016-02-23 11:06:05 +00:00
Dan Poltawski 02038b9d79 Merge branch 'MDL-52958_master' of git://github.com/dmonllao/moodle 2016-02-23 10:57:38 +00:00
David Monllao 69d66020ce MDL-31989 search: get_config method to search areas
Also content_to_text moved to weblib.
2016-02-23 10:47:59 +00:00
David Monllao f900b2b6c9 MDL-31989 component: Allow classes to be retrieved by namespace 2016-02-23 10:47:58 +00:00
David Monllao db48207e1a MDL-31989 search: Search API and search engine API
Introducing both APIs in moodle along with:
- search_box widget to add a tiny search box
- admin settings with setup steps helper
- cache for search results
- template for a search result
- php unit stuff

Many thanks to Tomasz Muras, Prateek Sachan and Daniel Neis for their contributions, for starting this development
and for pushing for it to be completed. Also thanks to other contributors: Jonathan Harker and eugeneventer.
2016-02-23 10:47:58 +00:00
David Monllao 95c6aeaf1c MDL-31989 search_solr: Solr search engine 2016-02-23 10:47:58 +00:00
David Monllao e2be996171 MDL-31989 search: New search areas
Some search areas have been introduced as part of the initial search API
and search engine API implementation.
- Forum posts
- Glossary enties
- All moodle activities
2016-02-23 10:47:57 +00:00
David Monllao 28b70ba536 MDL-31989 block_globalsearch: Adding the block
Just a basic block with a search box.
2016-02-23 10:47:57 +00:00
David Monllao 17675612b5 MDL-31989 report_search: Adding the report 2016-02-23 10:47:57 +00:00
David Monllao 4040c8b35e MDL-31989 theme: Global search styles 2016-02-23 10:47:55 +00:00
David Monllao eddea91dfd MDL-31989 task: Global search indexing task 2016-02-23 10:47:31 +00:00
Dan Poltawski 2c720c9772 Merge branch 'MDL-50312_master' of https://github.com/jinhofer/moodle 2016-02-23 08:07:13 +00:00
Andrew Nicols bde3e8c5d1 Merge branch 'MDL-49338' of git://github.com/timhunt/moodle 2016-02-23 13:32:00 +08:00
Andrew Nicols 7bf992cccb Merge branch 'wip-MDL-53129-master' of https://github.com/marinaglancy/moodle 2016-02-23 13:22:49 +08:00
Marina Glancy 42756192d7 MDL-53129 mod_feedback: forms cleanup and behat tests 2016-02-23 13:17:21 +08:00
Andrew Nicols 0ea14dd849 Merge branch 'MDL-52996-master' of https://github.com/sammarshallou/moodle 2016-02-23 12:44:06 +08:00
Adrian Greeve 61f7b10b9a MDL-45104 logging: Deprecate writting to the legacy log store. 2016-02-23 11:55:30 +08:00
Andrew Nicols 7367520bb1 Merge branch 'MDL-52371-Activity-Chooser-alignment-of-strings-that-need-line-wrap' of git://github.com/synergylearning/moodle 2016-02-23 11:36:54 +08:00
Andrew Nicols 2a9bce48ac Merge branch 'MDL-53081-master-txtfiles' of git://github.com/mudrd8mz/moodle 2016-02-23 11:13:45 +08:00
Jun Pataleta eb66223c42 MDL-53071 course: Allow blank space input for section name 2016-02-23 09:41:47 +08:00
Andrew Nicols 91a1fc805e Merge branch 'MDL-52892' of https://github.com/dg711/moodle 2016-02-23 09:39:26 +08:00
Damyon Wiese 30be6c846a MDL-49324 Grades: Use a progress bar when recalculating gradebook grades 2016-02-23 08:35:10 +08:00
Damyon Wiese b9d2419e39 MDL-49324 Output: The progress bar output is buffered.
Each call to update the progress bar needs to fill the output buffer so that it
gets sent immediately.
2016-02-23 08:35:10 +08:00
Eloy Lafuente (stronk7) a4a44e2c27 Merge branch 'MDL-52806' of git://github.com/timhunt/moodle 2016-02-22 23:04:43 +01:00
Eloy Lafuente (stronk7) 153fbcd24a Merge branch 'MDL-53065' of git://github.com/timhunt/moodle 2016-02-22 23:01:04 +01:00
Michael Milette 89e68e6c1e MDL-42460 mod_feedback: Fix markup validation 2016-02-22 22:41:32 +08:00
Marina Glancy 8ad534bd9f MDL-44952 mod_feedback: validate required multichoice 2016-02-22 22:01:02 +08:00
Dan Poltawski c5a4c64fcc Merge branch 'MDL-44093-master-flowplayer' of git://github.com/mudrd8mz/moodle 2016-02-22 09:04:15 +00:00
Davo Smith b8645d6df5 MDL-52371 theme_base: activity chooser - support long names 2016-02-22 08:57:16 +00:00
Kenny McCormack 3523f77522 MDL-52371 theme_bootstrapbase: activity chooser - support long names 2016-02-22 08:57:14 +00:00
Andrew Nicols ec1b9de1b0 Merge branch 'wip-mdl-52970' of https://github.com/rajeshtaneja/moodle 2016-02-22 15:20:34 +08:00
Andrew Nicols ea65e55b51 Merge branch 'wip-mdl-50484' of https://github.com/rajeshtaneja/moodle 2016-02-22 12:22:07 +08:00
Tim Hunt 293f5d1b11 MDL-53065 quiz redo question: avoid PHP notice in edge case
When selecting the variant of the new question, we need to add the
new question to the usage before trying to select a variant.

Also, we need to acutally use the selected variant number!
2016-02-19 12:10:39 +00:00
Tim Hunt a10bd0d9a8 MDL-52806 quiz manual grading: show right answer for auto-graded Qs 2016-02-19 12:06:24 +00:00
Tim Hunt de3b803dea MDL-49338 quiz stats: preview urls wrong for question variants 2016-02-19 12:01:05 +00:00
David Mudrák 9e7d95d232 MDL-53081 docs: Improve the text doc files in the root directory
Existing contents of README moved to INSTALL. Added new README,
CONTRIBUTING and PULL_REQUEST_TEMPLATE files. TRADEMARK updated using
the text at https://moodle.com/trademarks/.
2016-02-19 09:11:06 +01:00
Rajesh Taneja 9b4903c8fd MDL-52970 behat: Wait for page to be ready after click
After click enusre to wait so text fields are not
use autosize
2016-02-19 15:23:49 +08:00
Rajesh Taneja fee2cde5b6 MDL-52970 behat: Navigation step improvement
If navigation node to expand is a link then first
click on it and navigate to next page where it is
expanded, and then click on link within. This is
needed as some drivers click on link and don't open
the navigation node which are links
2016-02-19 15:21:52 +08:00
Rajesh Taneja f7a73e196e MDL-52970 behat: For single select only click event is enough 2016-02-19 15:21:52 +08:00
Rajesh Taneja e8ef0e4f63 MDL-52970 behat: don't set select value if already set
In FF 44.0, it fails to click on submit button if
select value is set to the original value
2016-02-19 15:21:51 +08:00
Frederic Massart 1039b52e9a MDL-53057 repository_filesystem: Added support for search 2016-02-19 14:46:31 +08:00
Rajesh Taneja 660b0f0eed MDL-50484 core_lib: No need to cache action_icons
action_icons should not be cached as they
have a unique id and if cache is used then
all icons will have same id.
Other solution is to replace id with some static
but it's not worth a cache for a page, so
removing cache
2016-02-19 14:00:04 +08:00
Rajesh Taneja 7b287e09e2 MDL-50484 core_grade: courseheader id should be unique
grader report show category with courseheader id
which gets replicated for all categories on page.
This will now be courseheader_categoryname.
2016-02-19 14:00:04 +08:00
Rajesh Taneja 7e341eb48f MDL-50484 block_navigation: Set number to be unique
Set number to be unique for unique id's
in navigation
2016-02-19 14:00:04 +08:00
Rajesh Taneja 1ebda3eb8c MDL-50484 lib_formslib: Persistant input should have different id
Persistant input is appended for frozen elements
and should have different id then the actual element
2016-02-19 14:00:04 +08:00
Rajesh Taneja 2aacd415e1 MDL-50484 mod_lesson: Use group to add multiple radio inputs
https://docs.moodle.org/dev/lib/formslib.php_Form_Definition#radio
Radio input should be added in group and not individual, so
that each element created has unique id and template
2016-02-19 14:00:03 +08:00
Eugene Venter d01cdc5172 MDL-53166 mod_forum: fix fatal error in backup phpunit test
when running mod_forum_testsuite mod_forum_testsuite
2016-02-19 11:14:08 +13:00
dg711 88e1d0ed26 MDL-52892 message: users' pic overrides others
While listing the messages , the logged in users' profile pic used to
override over other users' pics .
2016-02-19 00:58:44 +05:30
David Mudrák 2bc19a7a10 MDL-44093 flowplayer: Provide information about source code location
Moodle ships with compiled binary code of the flowplayer. This patch
adds information about the source code location according to GNU GPLv3
section 6d and provides the original license for the code from
https://github.com/flowplayer/flash/blob/7c39fbe31ecddc/core/LICENSE.txt
2016-02-18 15:47:14 +01:00
Dan Poltawski 83a951023e weekly release 3.1dev 2016-02-18 09:14:12 +00:00
Dan Poltawski dafff3b84c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-02-18 09:14:09 +00:00
David Monllao b0f437d8f7 Merge branch 'wip-mdl-52387' of git://github.com/rajeshtaneja/moodle 2016-02-18 11:48:14 +08:00
Rajesh Taneja b4a5d4fa17 MDL-52387 auth_ldap: Use proper dn to find password age
dn with fine grained password should be used
to get msds-maximumpasswordage attribute.
No checks should be used to see if the array
key is set as entry should always return them.
2016-02-18 11:38:03 +08:00
Jun Pataleta 41d6a25a19 MDL-53154 course: Raise PHP time limit when deleting a course 2016-02-18 10:10:01 +08:00
Eloy Lafuente (stronk7) 12d5994fc7 MDL-52964 Qtype: Small fixes to behat tests
This applies some small changes to proposed behat tests:

- Geting rid of the @javascript tag when it's not needed.
- Adding some missing @_switch_window tags.
- Fixing some scenario names, previously duplicated.
- Fixing some typos and whitespace.
2016-02-18 01:42:22 +01:00
Eloy Lafuente (stronk7) cad67991d4 Merge branch 'MDL-52964' of https://github.com/mkassaei/moodle 2016-02-18 00:58:10 +01:00
Eloy Lafuente (stronk7) 83fe83e988 Merge branch 'wip-MDL-51802-fix' of https://github.com/marinaglancy/moodle 2016-02-17 17:29:07 +01:00
Marina Glancy fa4dd0169d MDL-51802 core: change template example 2016-02-17 20:32:55 +08:00
Dan Poltawski 0b14d8612b Merge branch 'MDL-51214-master' of git://github.com/andrewnicols/moodle 2016-02-17 07:58:15 +00:00
Marina Glancy 7c5c80350c MDL-49807 mod_wiki: section detection regexp fix 2016-02-17 13:11:10 +08:00
David Monllao a6f4866e52 Merge branch 'MDL-48015-master' of git://github.com/junpataleta/moodle 2016-02-17 09:49:04 +08:00
Eloy Lafuente (stronk7) 45cb6145fb Merge branch 'MDL-51852-master' of git://github.com/andrewnicols/moodle 2016-02-17 02:03:48 +01:00
Andrew Nicols a6fc917168 MDL-51852 mod_forum: Respect timed discussions in emails 2016-02-17 07:57:57 +08:00
Eloy Lafuente (stronk7) 642a4fde4b Merge branch 'wip-MDL-51802-master4' of https://github.com/marinaglancy/moodle 2016-02-16 23:22:35 +01:00
Eloy Lafuente (stronk7) c70d54405b Merge branch 'MDL-29506-master' of git://github.com/andrewnicols/moodle 2016-02-16 17:50:22 +01:00
Eloy Lafuente (stronk7) 8bd2db2023 Merge branch 'MDL-52997-email-threading' of https://github.com/brendanheywood/moodle 2016-02-16 17:11:10 +01:00
AMOS bot 8753cdbca8 Automatically generated installer lang files 2016-02-17 00:05:41 +08:00
Eloy Lafuente (stronk7) fa6426a069 Merge branch 'MDL-52814' of git://github.com/timhunt/moodle 2016-02-16 16:48:04 +01:00
Dani Palou 85894eda01 MDL-52993 wiki: Add unit tests for wiki_user_can_edit
Note: amended on integration to fix some comments.
2016-02-16 16:44:41 +01:00
Dani Palou bb05505e00 MDL-52993 wiki: Fix wiki_user_can_edit for collab and separate groups 2016-02-16 16:44:07 +01:00
Dan Poltawski 821296dc7b Merge branch 'MDL-52862_master' of https://github.com/juancs/moodle 2016-02-16 15:18:46 +00:00
Dan Poltawski 0aefe91c50 Merge branch 'MDL-52990-email-themes' of https://github.com/brendanheywood/moodle 2016-02-16 11:17:54 +00:00
Dan Poltawski 3a9cc98c80 Merge branch 'MDL-34160-forum-subject' of https://github.com/brendanheywood/moodle 2016-02-16 11:04:41 +00:00
Dan Poltawski 33fa0e1181 Merge branch 'MDL-53012-master' of https://github.com/sammarshallou/moodle 2016-02-16 10:44:57 +00:00
Dan Poltawski f155059452 Merge branch 'MDL-48439-change-background-colour-of-tool_capability-table' of git://github.com/synergylearning/moodle 2016-02-16 10:42:33 +00:00
Dan Poltawski cbce7be769 MDL-28030 setup: Ensure $CFG->urlrewriteclass is properly setup
(To avoid crippling a site)
2016-02-16 11:35:07 +01:00
Dan Poltawski cfdc1bb0ca Merge branch 'MDL-52879' of git://github.com/timhunt/moodle 2016-02-16 10:26:57 +00:00
Eloy Lafuente (stronk7) 5d8dfdef1d Merge branch 'MDL-51929-master' of git://github.com/dpalou/moodle 2016-02-16 11:22:53 +01:00
Dan Poltawski 6bb1bd930f Merge branch 'MDL-49612-master' of git://github.com/dpalou/moodle 2016-02-16 09:30:12 +00:00
Dan Poltawski d330eb4342 Merge branch 'master_MDL-50620' of https://github.com/danmarsden/moodle 2016-02-16 09:09:08 +00:00
Dani Palou 052da7304a MDL-51929 external: Apply new validate_courses to data/lti/survey 2016-02-16 08:26:07 +01:00
David Monllao 82e1b645eb Merge branch 'MDL-52208-master-2' of git://github.com/junpataleta/moodle 2016-02-16 14:39:46 +08:00
Jun Pataleta 79c7fffce3 MDL-52208 webservice_soap: Remove Zend from webservice_soap 2016-02-16 14:14:11 +08:00
Brendan Heywood efd420608e MDL-52990 email: Added site wide email mustache templates 2016-02-16 16:39:25 +11:00
David Monllao b018aec5da Merge branch 'MDL-51117-master' of git://github.com/andrewnicols/moodle 2016-02-16 13:26:37 +08:00
David Monllao 7fadf9edff Merge branch 'MDL-52414_m31v7' of https://github.com/sbourget/moodle 2016-02-16 12:44:09 +08:00
Stephen Bourget e6e5d0104f MDL-52414 Lesson: Fix lesson defaults 2016-02-15 23:05:37 -05:00
David Monllao ce74ad69ae Merge branch 'MDL-52387-master' of git://github.com/lameze/moodle 2016-02-16 11:25:22 +08:00
David Monllao fb2d4baf57 MDL-51196 mod_forum: Updating required context vars 2016-02-16 11:22:29 +08:00
David Monllao 0511b81240 Merge branch 'MDL-51196-text-email-permalink' of https://github.com/brendanheywood/moodle 2016-02-16 11:17:20 +08:00
Simey Lameze c1bc628e1d MDL-52387 auth_ldap: add support for fine grained password
Contributed by Matthew Johnson.
2016-02-16 11:03:42 +08:00
David Monllao 88acc87d8c MDL-51839 mod: Info about removing icon.gif files 2016-02-16 11:02:49 +08:00
David Monllao 11ce3ffccc Merge branch 'MDL-51839-master' of git://github.com/andrewnicols/moodle 2016-02-16 10:58:22 +08:00
Brendan Heywood 091420f9e6 MDL-34160 mod_forum: Add extra site and course vars to postmailsubject 2016-02-16 13:06:22 +11:00
Andrew Nicols 5ddf81cd27 MDL-51214 block_news_items: Rename to "Latest announcements" 2016-02-16 10:05:27 +08:00
Andrew Nicols 265a9bf769 MDL-51214 mod_forum: Update News forum => Announcements 2016-02-16 10:05:24 +08:00
Eloy Lafuente (stronk7) be5955edf0 Merge branch 'MDL-52969-email-unsubscribe' of https://github.com/brendanheywood/moodle 2016-02-16 02:54:08 +01:00
Eloy Lafuente (stronk7) 056a07388b Merge branch 'MDL-52511-master' of git://github.com/danpoltawski/moodle 2016-02-16 02:00:37 +01:00
David Monllao c06749bdf3 Merge branch 'MDL-50385-master' of git://github.com/merrill-oakland/moodle
Conflicts:
	lib/db/upgrade.php
	version.php
2016-02-16 06:47:27 +08:00
David Monllao 187137aa23 Merge branch 'MDL-52217-master' of git://github.com/andrewnicols/moodle
Conflicts:
	repository/upgrade.txt
2016-02-16 05:56:02 +08:00
David Monllao 44ad0f2c8d Merge branch 'MDL-51580' of git://github.com/stronk7/moodle 2016-02-16 05:03:28 +08:00
Rushikesh ea4f8f9e49 MDL-52984 Roles : Logs store newly created role's id 2016-02-16 00:45:26 +05:30
Eloy Lafuente (stronk7) 20c3e2c9fc MDL-51580 lang strings: Delete unused lang strings
With previous commit some lang strings became unused. As far as they
are not reusable we are deleting them plain and straight. This is the
list of strings, for reference:

- orphanedquestionscategory
- orphanedquestionscategoryinfo

- oauth2upgrade_message_small
- oauth2upgrade_message_subject
- oauth2upgrade_message_content

- apiv1migration_message_small
- apiv1migration_message_subject
- apiv1migration_message_content

- security_key_notice_message_small
- security_key_notice_message_subject
- security_key_notice_message_content

- pendingupgrades_message_small
- pendingupgrades_message_subject
- pendingupgrades_message_content
2016-02-15 18:38:21 +01:00
Eloy Lafuente (stronk7) 1405f010b7 MDL-51580 upgradelib: Delete stuff used by removed upgrade steps
This commits removes stuff from different upgradelib files, used
exclusively by the already deleted upgrade steps. Given such
exclusivity it was not needed to proceed with a 2-phase deprecation
as far as the functions were 100% internal to upgrade.

This is the list of deleted functions, all them docummented in their
corresponding upgrade.txt files:

- repository_picasa_admin_upgrade_notification();
- repository_googledocs_admin_upgrade_notification();
- repository_boxnet_admin_upgrade_notification();
- repository_alfresco_admin_security_key_notice();
- qtype_essay_convert_to_html();
- portfolio_picasa_admin_upgrade_notification();
- portfolio_googledocs_admin_upgrade_notification();
- portfolio_boxnet_admin_upgrade_notification();
- mod_book_migrate_moddata_dir_to_legacy();
- mod_book_migrate_all_areas();
- mod_book_migrate_area();
- mod_assignment_pending_upgrades_notification();
- upgrade_mysql_fix_unsigned_and_lob_columns();
- upgrade_course_completion_remove_duplicates();
- upgrade_save_orphaned_questions();
- upgrade_rename_old_backup_files_using_shortname();
- upgrade_mssql_nvarcharmax();
- upgrade_mssql_varbinarymax();
- upgrade_fix_missing_root_folders();
- upgrade_course_modules_sequences();
- upgrade_grade_item_fix_sortorder();
- upgrade_availability_item();
2016-02-15 18:38:21 +01:00
Eloy Lafuente (stronk7) e8c82aac82 MDL-51580 upgrade: clean < 2.7.0 upgrade steps
This just deletes all the upgrade steps previous to 2.7.0. Some
small adjustments, like adding missing MOODLE_INTERNAL or tweaking
globals can also be applied when needed.

Next commit will get rid of/deprecate all the upgradelib functions
not used anymore in codebase.
2016-02-15 18:38:09 +01:00
sam marshall a4ce565f20 MDL-53012 Behat: Add step to run scheduled task 2016-02-15 17:24:15 +00:00
Rushikesh 36a2d817fc MDL-36652 report_log : Including the course short name in file name 2016-02-15 22:00:18 +05:30
Dan Poltawski 93fb2b649b Merge branch 'MDL-53039-master' of git://github.com/marinaglancy/moodle 2016-02-15 15:32:51 +00:00
Dan Poltawski e408c83fa7 Merge branch 'MDL-52414_m31v7' of https://github.com/sbourget/moodle 2016-02-15 14:31:39 +00:00
Dan Poltawski 96966ce6d9 Merge branch 'MDL-52342-master' of git://github.com/andrewnicols/moodle 2016-02-15 13:27:54 +00:00
Dan Poltawski 07853905ef Merge branch 'MDL-49146' of git://github.com/timhunt/moodle 2016-02-15 12:13:30 +00:00
Dan Poltawski c2f4304b98 Merge branch 'MDL-28030-cleanurls' of https://github.com/brendanheywood/moodle 2016-02-15 11:48:40 +00:00
Dan Poltawski c1184f6cc2 Merge branch 'wip_MDL-53029_master' of git://github.com/gjb2048/moodle 2016-02-15 11:07:38 +00:00
Dan Poltawski 220f8115d9 Merge branch 'MDL-44626-master' of git://github.com/andrewnicols/moodle 2016-02-15 10:36:20 +00:00
Andrew Nicols a9e12347b7 MDL-52217 repository: prepare_file should use per-request directory
The repository API defaults has a function, prepare_file, which is
responsible for creating a unique file to be used during the current
request.

This is usually used in the repository's get_file() function to store the
file before it is used elsewhere in the API to save the file to the
filestorage API.
It is also sometimes used to temporarily store credentials for the lifetime
of the session.

In all cases, this file is only expected to exist for the duration of the
session.

Switching to use of a per-request directory using make_request_directory()
ensures that the tempdir does not grow without control.

This commit also adds an upgrade step to remove all old temp directories
created by any repository currently installed.
2016-02-15 15:54:05 +08:00
David Monllao e8ba34ac89 Merge branch 'wip-MDL-52566-master' of https://github.com/cdsmith-umn/moodle 2016-02-15 15:17:13 +08:00
David Monllao 6cc1c06236 Merge branch 'MDL-49807-master' of git://github.com/marinaglancy/moodle 2016-02-15 15:11:09 +08:00
Juan Segarra Montesinos 34edbe5733 MDL-52862 mod_forum: format non HTML messages in search results
Override messageformat to FORMAT_HTML before calling forum_print_post
2016-02-15 07:55:22 +01:00
David Monllao 3738d1b60b MDL-52249 css: Recompile CSS 2016-02-15 14:20:02 +08:00
David Monllao 61c2a0804b Merge branch 'MDL-52249-master' of git://github.com/andrewnicols/moodle 2016-02-15 14:19:17 +08:00
David Monllao 85dc424a7c Merge branch 'MDL-48634_master' of git://github.com/markn86/moodle 2016-02-15 12:20:59 +08:00
Andrew Nicols 66a70b97ea MDL-29506 forum: Add tests for encode_content_links 2016-02-15 08:08:29 +08:00
Rushikesh 694d6347e7 MDL-29506 forum: Fix use of ampersand in backup parent links 2016-02-15 08:08:29 +08:00
Marina Glancy f26481c2dc MDL-51802 course: allow to edit section names on the course page 2016-02-13 11:07:46 +08:00
Marina Glancy cdc5f9785b MDL-51802 core: new template for quick editing a title
convert editing tag name to use new template
2016-02-13 11:07:42 +08:00
David Balch e61036f48e MDL-53077 assign: Set specific pagetype for pages with actions. 2016-02-12 16:35:04 +00:00
AMOS bot 50f8be00cc Automatically generated installer lang files 2016-02-13 00:04:01 +08:00
Rushikesh ef8dc8570b MDL-33663 Grading methods: Appropriate error message for negative grades 2016-02-12 16:58:27 +05:30
Andrew Nicols 75debb4dbb MDL-47365 mod_forum: Add permalink to forum posts 2016-02-12 08:03:01 +08:00
Eric Merrill 201a90938e MDL-50385 grades: Adding index to improve history search 2016-02-11 12:30:12 -05:00
M Kassaei 50aaf13e01 MDL-52964 Qtype: Add behat tests to core question types 2016-02-11 15:12:40 +00:00
Eloy Lafuente (stronk7) bf5c764f3c MDL-51580 environment: 3.1 requirements added
Only important change is that Moodle 2.7 installed is
required to be able to upgrade to 3.1. See the issue
for opinions, votes and agreed outcomes.
2016-02-11 16:08:48 +01:00
Brendan Heywood 2ab797c90b MDL-28030 weblib: Added $CFG->urlrewriteclass in config.php
This enables a plugin to implement rewriting rules enabling
    'clean' or 'semantic' urls such as /course/COMP100/ instead
    of /course/view.php?id=1234
2016-02-11 20:44:25 +11:00
Brendan Heywood 7898d616fa MDL-52969 mod_forum: Add List-Unsubscribe email header 2016-02-11 20:41:58 +11:00
Brendan Heywood 5afe390ef8 MDL-51196 mod_forum: Text emails link to post anchor 2016-02-11 20:41:12 +11:00
Brendan Heywood b1b480f97b MDL-52997 forum: Add more robust threading email headers 2016-02-11 20:34:31 +11:00
David Monllao 2f45a11ac4 weekly release 3.1dev 2016-02-11 13:58:46 +08:00
David Monllao 0e1c750c56 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-02-11 13:58:42 +08:00
Andrew Nicols 6f0768618a MDL-44626 files: Show the PHP max upload size instead of 'unlimited'
Even when a user has the appropriate capability to upload any sized files,
they are still restricted to the PHP post_max_size, and upload_max_filesize
values.

Rather than showing a value of "Unlimited', we should always restrict to
this value.
2016-02-11 10:55:54 +08:00
Andrew Nicols 296af14b19 MDL-51117 JavaScript: Convert alert to M.core.alert in dndupload
This also updates a language string to use string params instead of
hard-prefixing.
2016-02-11 08:43:27 +08:00
Andrew Nicols 6b963db3ff MDL-52342 theme: Reduce specificity of selector
These selectors were introduced to fix a real issue (highlighted by behat with
Chromedriver) whereby the 'Show section foo' link was partially covered by
another layer.

The fix in that issue was too broad and applied to all content > div areas,
which had some unforseen effects.

Since the original issue only affected activity instances, and sections (and
not content > div regions), I've removed this from the original patch.
2016-02-11 08:13:53 +08:00
Andrew Nicols 658a922fa6 MDL-44626 repository: Correct error message when uploading large files 2016-02-11 08:08:57 +08:00
Stephen Bourget a36eba45dc MDL-52414 Lesson: Apply defaults to lesson creation 2016-02-10 14:07:22 -05:00
Gareth J Barnard 6eaa3230ba MDL-53029 mod_book: Hidden chapter has markup in alt and title attrs. 2016-02-10 18:10:24 +00:00
Petr Skoda 267ac1b9eb MDL-52511 dml: add support for PostgreSQL 9.5
The default definition behaviour has changed for some int values.
2016-02-10 09:45:07 +00:00
Tim Hunt 97e9eb203e MDL-52814 questions: Show extra info in the outcomes area not info
Currently the only use is the quiz Redo question button, and that would
be much better placed in the feedback area, not least for langages where
the button label needs to be longer.
2016-02-10 08:47:10 +00:00
Andrew Nicols 87d567d3c5 MDL-51839 mod: Remove really old logos in gif format 2016-02-10 16:20:29 +08:00
Rajesh Taneja cd6e7e0da0 MDL-51306 mod_folder: Use context_module to find details
renderable should not be used for extracting
details. Use cm to get context and dir information
2016-02-10 15:51:31 +08:00
Marina Glancy aaa6bcb61a MDL-48307 mod_wiki: protect [edit] section link from nwiki parser 2016-02-10 14:23:57 +08:00
Andrew Nicols 985dca606f MDL-52930 forum: Fix random test failure caused by passing of time 2016-02-10 12:24:09 +08:00
David Monllao c63801675a Merge branch 'MDL-52766-master-mnet-url-length' of git://github.com/mudrd8mz/moodle 2016-02-10 08:55:04 +08:00
Tim Hunt 6d19eb4b23 MDL-52879 quiz editing: allow removal of the last question in a quiz
Even though you are not normally allowed to remove the last question
in a section.
2016-02-09 21:45:13 +00:00
Dan Marsden 3e28364257 MDL-50620 mod_scorm: Add Mastery score override setting
Thanks to Nathan Lewis for the initial patch
2016-02-10 09:20:25 +13:00
AMOS bot 11a003967e Automatically generated installer lang files 2016-02-10 00:03:56 +08:00
Eloy Lafuente (stronk7) d9b3898e5d Merge branch 'MDL-52896-master-apd' of git://github.com/mudrd8mz/moodle 2016-02-09 12:08:40 +01:00
Dan Poltawski e1a478c5f4 Merge branch 'MDL-49620_availability_settings' of git://github.com/synergylearning/moodle 2016-02-09 10:34:14 +00:00
Juan Leyva 7cc2106193 MDL-52999 mod_assign: New unit tests for subplugins 2016-02-09 11:22:30 +01:00
Juan Leyva 69115a5a14 MDL-52999 mod_assign: Fix subplugins handling in external functions 2016-02-09 11:22:01 +01:00
David Monllao 098650d8e2 Merge branch 'MDL-52930-master' of git://github.com/andrewnicols/moodle 2016-02-09 18:06:10 +08:00
Brendan Heywood eca8cf67dc MDL-52818 core: Added CFG->divertallemailsexcept config option
When $CFG->divertallemailsto is specified, this allows a list of email
or domain exceptions to be whitelisted enabling easier testing by groups
of testers who don't share a single email address.
2016-02-09 09:59:20 +00:00
Marina Glancy 3d89ccb374 MDL-49807 mod_wiki: minimum heading level should always be <h3> 2016-02-09 17:48:39 +08:00
Mark Nelson a3dd8be7dc MDL-48634 core: changes to automated tests to pass with changes 2016-02-09 17:46:43 +08:00
Mark Nelson 5af1321b41 MDL-48634 core_grades: added behat test for grade items form validation 2016-02-09 17:46:42 +08:00
Mark Nelson 1b8bd51c06 MDL-48634 core_form: added behat test for 'modgrade' validation 2016-02-09 17:46:42 +08:00
Mark Nelson 664d8be7ea MDL-48634 core: prevent change of grade values when necessary
Three additional checks have been added.

Once grades have been recorded for the activity/grade item -

1) Do not allow the grade type to be changed.
2) Do not allow the scale to be changed.
3) If we are using ratings do not allow the 'Maximum points'
value to be changed.

Also reordered form elements, removed form elements that
were not necessary, added and changed existing language
strings to improve the overall UI.
2016-02-09 17:46:42 +08:00
Dan Poltawski 37f77a1b37 Merge branch 'MDL-52895-master' of git://github.com/jleyva/moodle 2016-02-09 09:43:21 +00:00
David Monllao ba4fd381e0 Merge branch 'MDL-52902-master' of git://github.com/jleyva/moodle 2016-02-09 16:36:57 +08:00
David Monllao f79dd94b59 Merge branch 'MDL-52927' of https://github.com/mkassaei/moodle 2016-02-09 16:36:57 +08:00
Marina Glancy 6e0ecbe913 MDL-53039 rss: allow guest access to front page forum 2016-02-09 15:51:09 +08:00
Andrew Nicols a0bc890ec5 MDL-52928 message: Correct contact fetching in recent conversations 2016-02-09 13:38:59 +08:00
Jun Pataleta 825a3fa9d1 MDL-48015 grade: Fix the display of grade categories 2016-02-09 13:32:28 +08:00
David Monllao 332fb30a8d Merge branch 'MDL-51818_M30' of git://github.com/lazydaisy/moodle 2016-02-09 12:24:24 +08:00
Eloy Lafuente (stronk7) ba4eaf0a34 Merge branch 'wip-mdl-52949' of https://github.com/rajeshtaneja/moodle 2016-02-09 02:30:07 +01:00
Eloy Lafuente (stronk7) 53c19e0022 Merge branch 'MDL-52339-master' of git://github.com/andrewnicols/moodle 2016-02-09 00:45:19 +01:00
Eloy Lafuente (stronk7) de0a98f8ef Merge branch 'MDL-52938-master' of git://github.com/marinaglancy/moodle 2016-02-09 00:30:02 +01:00
Eloy Lafuente (stronk7) f5e0cb117a Merge branch 'MDL-52975-master-mnet-context' of git://github.com/mudrd8mz/moodle 2016-02-08 22:57:45 +01:00
Eloy Lafuente (stronk7) 40e85f3cd8 Merge branch 'MDL-52981-master' of https://github.com/sammarshallou/moodle 2016-02-08 22:55:07 +01:00
Eloy Lafuente (stronk7) 1274fd8316 Merge branch 'MDL-51075_master' of git://github.com/dmonllao/moodle 2016-02-08 22:44:47 +01:00
Eloy Lafuente (stronk7) 9d128ebda1 Merge branch 'MDL-50310-master-random-glossary' of git://github.com/mudrd8mz/moodle 2016-02-08 22:34:07 +01:00
Dan Poltawski a4391b76ee Merge branch 'MDL-48778-master' of git://github.com/lameze/moodle 2016-02-08 17:13:02 +00:00
Eloy Lafuente (stronk7) ba8491ae3f Merge branch 'MDL-52983' of git://github.com/aolley/moodle 2016-02-08 13:05:30 +01:00
Andrew Nicols 14cfe26f49 MDL-52249 theme_bootstrapbase: Remove dropdown-backdrop
Standard bootstrap adds a backdrop for touch-responsive clients.
Unfortunately the backdrop is not compatible with submenus.

The backdrop was only added in Bootstrap v2.3.1, and Moodle switched to
using the bootstrap JS in version 3.0.0.
2016-02-08 14:44:39 +08:00
David Monllao 04b3c78da4 Merge branch 'MDL-50115-master' of git://github.com/danpoltawski/moodle 2016-02-08 14:10:39 +08:00
David Monllao 4af9a8bfd3 Merge branch 'm31_MDL-52637_Disable_Automatically_Enabling_TLS_Encryption' of https://github.com/scara/moodle 2016-02-08 13:47:06 +08:00
Simey Lameze 2b10cf43d1 MDL-48778 mod_assign: behat tests for group submission 2016-02-08 12:58:41 +08:00
Adam Olley 15c9a9d726 MDL-52983 excel output: avoid single quote on end of sheet name
This change resolves a problem where a long sheet name, which gets
trimmed down with substr($name, 0, 31), could result in a sheet name
with a single quote on the end because the quote removal was done before
the substr.
2016-02-08 15:17:02 +10:30
David Monllao 502648e3a6 Merge branch 'MDL-51306' of https://github.com/andrewhancox/moodle 2016-02-08 11:23:34 +08:00
Eric Merrill 002864cc37 MDL-48778 assign: Use proper latest attempt for quickgrading prechecks
The code that stored lastmodified in gradingtable used a different
method to produce it than the processor used to generate the check
value. Fix that and also check that the attempt number has not changed.
2016-02-08 10:34:24 +08:00
David Monllao 7a662077f1 Merge branch 'MDL-51723-master' of git://github.com/andrewnicols/moodle 2016-02-08 09:02:41 +08:00
Andrew Nicols 0099960560 MDL-44087 mod_forum: Move forum digest to new processor 2016-02-08 07:54:14 +08:00
Tim Hunt 028044707f MDL-49146 single-activity course format: key activity must be visible
With a single-activity course, visibility to students is controlled by
course visibility. There is no sense in having the key activity not
visible to students, and, if you did, the symptoms were almost
incomprehensible. It was very hard to work out what you had done wrong.
2016-02-06 14:55:46 +00:00
AMOS bot d821e79f87 Automatically generated installer lang files 2016-02-06 00:03:58 +08:00
Damyon Wiese 3c4cf9f02b MDL-48634 grades: Remove hardcoded hack in grade book
This was testing specifically for mod_assign - now we can test to see if
an activity provides it's own rescaling function.
2016-02-05 18:20:17 +08:00
Eloy Lafuente (stronk7) 0b7e926fec MDL-48634 assign: Improve related feature to better cover new code.
This does:
- split the existing scenarion into background + 2 scenarions (yes and no).
- get rid of @javascript
- fix some whitespace
- add 2 more scenarios to verify the new server-side validation rule.
2016-02-05 18:20:17 +08:00
Damyon Wiese e7c71c189b MDL-48634 grades: Make the rescaling option required if maxgrade changes 2016-02-05 18:20:17 +08:00
Damyon Wiese d629c601c5 MDL-48634 grades: Add an option to rescale when changing the maxgrade 2016-02-05 18:20:17 +08:00
Andrew Nicols d6ffb0277a MDL-52930 mod_forum: Add get_unmailed_posts tests 2016-02-05 14:33:17 +08:00
Josh Marshall 86a77c9195 MDL-52930 forum: Correct get_unmailed_posts logic 2016-02-05 14:33:17 +08:00
David Monllao 44841ca911 MDL-52958 medialib: Allow vimeo fullscreen using links
All credit to Henrik Sune Pedersen.
2016-02-05 10:15:08 +08:00
David Monllao d1fba0f4f5 MDL-51075 filter_glossary: Fix popup position when no popups
Thanks to Andrew Nicols for cleaning my eyes.
2016-02-05 09:18:06 +08:00
Andrew Nicols 650c0086f9 MDL-52339 question: Fix question attempt removal for MySQL
Derived table support was altered in MySQL 5.7 changing the way in which
DELETE FROM works in some cases.

This change modifies the way in which deletion occurs by selecting all IDs
and batching them into groups of 1000.
2016-02-05 09:10:09 +08:00
David Mudrák 32fc1a69a5 MDL-50310 glossary: Fix restore of random glossary entry block
When restoring the random glossary entry block, we need to check that
the associated glossary has also been included in the backup and is
being restored. If not, we must invalidate the block configuration.

Before this patch, the block configuration was not invalidated.

Additionally, as a result of MDL-20131, the block configuration also
contains the course id of the associated glossary (which by the way does
not seem to be a wise choice, but I may be missing something). So we
need to remap this course id as well to avoid mismatch.
2016-02-05 00:08:39 +01:00
Matteo Scaramuccia 074b3dcecc MDL-52637 mail: Disabled automatic TLS encryption. 2016-02-04 21:16:23 +01:00
David Mudrák 1ef135e773 MDL-52975 mnet: Set system context on the MNet SSO landing page
Without the context being explicitly set, debugging warning can be
displayed in certain rare situations.
2016-02-04 17:14:30 +01:00
David Mudrák 511f8c46b7 MDL-52766 mnet: Support MNet peer URLs longer than 64 characters
The commonName in SSL certificate is limited to 64 characters as per
RFC 5280 (https://www.ietf.org/rfc/rfc5280.txt). We respect that limit
when generating the CN attribute from the site's $CFG->wwwroot. But then
we did not respect it when comparing the common name with the peer's
URL so the certificate was not considered valid.
2016-02-04 17:08:21 +01:00
Davo Smith 6badbf0135 MDL-49620 availability: plugins can have global settings 2016-02-04 15:21:02 +00:00
sam marshall f66da45fa5 MDL-52996 Atto: Allow plugins to customise toolbar 2016-02-04 12:42:27 +00:00
Dan Poltawski 00cceb7fba MDL-50115 grunt: provide a --root option to set base path
Windows users are not able to run grunt on a subpath due to platform
restrictions. So we provide this option to provide a workaround for that.

Thanks to Ty Delean who proposed this idea.
2016-02-04 12:03:53 +00:00
M Kassaei a752c61cb4 MDL-52927 qtype ddwtos and ddimageortext focus using keyboard 2016-02-04 10:30:50 +00:00
David Monllao 9d5d9c64ff weekly release 3.1dev 2016-02-04 14:30:03 +08:00
David Monllao e8074790d9 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-02-04 14:30:00 +08:00
AMOS bot 37f0cb879e Automatically generated installer lang files 2016-02-04 00:04:08 +08:00
sam marshall 6bd871d3dd MDL-52981 Unit tests: Reset global after test 2016-02-03 10:25:27 +00:00
Juan Leyva 0bf6c0bebe MDL-52895 webservice: Fix capability checks 2016-02-03 10:57:07 +01:00
Dan Poltawski 96c69429e5 Merge branch 'wip-MDL-52715-master-additional' of git://github.com/abgreeve/moodle 2016-02-03 09:44:27 +00:00
David Monllao 6d18da567d Merge branch 'MDL-52899' of git://github.com/timhunt/moodle 2016-02-03 13:44:41 +08:00
Adrian Greeve a2161d57a4 MDL-52715 lib: Clean up of comments and variable names. 2016-02-03 10:07:08 +08:00
Andrew Hancox 279918e126 MDL-51306 mod_folder: Add button to download entire folder. 2016-02-02 15:07:48 +00:00
Juan Leyva e3e036ee09 MDL-52974 mod_assign: New Web Service mod_assign_view_submission_status 2016-02-02 13:27:03 +01:00
David Monllao 52ad3afadb Merge branch 'wip-MDL-51283-master' of git://github.com/marinaglancy/moodle 2016-02-02 17:40:39 +08:00
Marina Glancy 4be9c7ad99 MDL-51283 core_tag: Allow each tag area to set 'showstandard' 2016-02-02 17:31:17 +08:00
Marina Glancy e11d7380c2 MDL-51283 core_tag: change tagtype to isstandard
Change 'official' to 'standard' in UI
2016-02-02 17:31:14 +08:00
Dan Poltawski 037d9918e1 Merge branch 'wip-mdl-42395' of https://github.com/rajeshtaneja/moodle 2016-02-02 08:18:06 +00:00
Rajesh Taneja 97eee5baac MDL-42395 mod_assign: Single feedback is always visible
Single feedback is always visible, so no need to click to expand
2016-02-02 16:06:45 +08:00
David Monllao 0612d476ef Merge branch 'MDL-49817-master' of git://github.com/danpoltawski/moodle 2016-02-02 13:57:43 +08:00
David Monllao 367cf39985 Merge branch 'MDL-52873-master-modgradeid' of git://github.com/mudrd8mz/moodle 2016-02-02 12:12:03 +08:00
David Monllao 51f322023f Merge branch 'MDL-52137-master' of git://github.com/andrewnicols/moodle 2016-02-02 10:55:59 +08:00
Marina Glancy e91a07f71b MDL-52938 mod_forum: check global setting to track forum posts 2016-02-02 10:54:22 +08:00
Dan Poltawski 3bb9f374e7 Merge branch 'MDL-42395_master' of git://github.com/markn86/moodle 2016-02-01 11:17:02 +00:00
Dan Poltawski 89881711da MDL-45740 choice: version bump 2016-02-01 11:09:42 +00:00
Dan Poltawski 98e01bb70e Merge branch 'MDL-45740_master' of git://github.com/markn86/moodle 2016-02-01 11:02:22 +00:00
Mark Nelson da82688689 MDL-45740 mod_choice: fixed remaining issues 2016-02-01 18:49:22 +08:00
Dan Poltawski b0e7075214 Merge branch 'wip-mdl-52932-m' of https://github.com/rajeshtaneja/moodle 2016-02-01 10:27:28 +00:00
Dan Poltawski c89a009c56 Merge branch 'MDL-52940_master' of git://github.com/markn86/moodle 2016-02-01 09:49:20 +00:00
David Monllao 6b7421003b Merge branch 'MDL-51704-master' of git://github.com/dpalou/moodle 2016-02-01 17:19:59 +08:00
David Monllao d23bf21b0a MDL-52715 js: Merge M.str and clean memory 2016-02-01 14:29:09 +08:00
David Monllao 0b39d21ae7 MDL-52715 ws: Fragments WS using fragment requires properly. 2016-02-01 14:29:09 +08:00
Adrian Greeve cc73ea075e MDL-52715 lib: Addition of new requirements class.
This adds a fragment requirements class to allow plugins
to register JavaScript to be used in an mform.
2016-02-01 14:29:09 +08:00
David Monllao 1dea567d6e Merge branch 'MDL-52261_master_file_not_found' of git://github.com/BenKelada/moodle 2016-02-01 13:55:57 +08:00
David Monllao cd55c6e249 Merge branch 'MDL-52913_master' of git://github.com/marxjohnson/moodle 2016-02-01 13:46:18 +08:00
Mark Nelson d14ba3a2f4 MDL-52940 core_backup: prevent always displaying logs 2016-02-01 12:43:53 +08:00
David Monllao b831527ce8 Merge branch 'MDL-52831-master-emptynames' of git://github.com/mudrd8mz/moodle 2016-02-01 11:28:40 +08:00
Rajesh Taneja ead6c29bb5 MDL-52949 behat: Use hover step and not click step
Message delete link is visible on hover
Click event can fail randomly.
2016-02-01 11:14:20 +08:00
Andrew Nicols abedeb8c70 MDL-51723 ldap: Normalise the user objectclass 2016-02-01 10:24:34 +08:00
lazydaisy 5b9b4d02a2 MDL-51818 theme_bootstrapbase: compiled moodle.css 2016-01-31 02:31:14 +00:00
lazydaisy 610f050640 MDL-51818 theme_bootstrapbase: Float context-header button-group LEFT 2016-01-30 14:39:33 +00:00
jinhofer 8cc02383bf MDL-50312 grade/report/grader: Fixed remaining issue
MDL-49764 fixed the appearance of user cells. However, the window
resize event was still incorrect. This is a fix for the window
resize event for ALL IE versions.
2016-01-29 12:16:06 -06:00
Mark Johnson a2497e5036 MDL-52913 behat: Abort database transactions on exception. 2016-01-29 11:54:56 +00:00
Mark Nelson 635166b8c8 MDL-42395 mod_assign: build YUI module and fixed lint errors 2016-01-29 17:56:11 +08:00
Rushikesh 4f491bf70b MDL-42395 mod_assign: Showing the most recent feedback 2016-01-29 17:56:05 +08:00
David Monllao c9d91bb734 weekly release 3.1dev 2016-01-29 14:36:50 +08:00
David Monllao 1789c20796 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-01-29 14:36:47 +08:00
Stephen Bourget e62f6a01e4 MDL-45740 choice: add new events 2016-01-29 13:23:15 +08:00
David Monllao ed654d4aa8 MDL-35590 block_navigation: Set attribute on node creation
Otherwise we would need to unescape href and title.
2016-01-29 13:01:26 +08:00
Rajesh Taneja 5e48383330 MDL-52932 behat: Restart session if it fails because of some reason 2016-01-29 11:59:01 +08:00
John Okely a057ba5924 MDL-35590 navigation: Remove link from admin node if you have javascript
Also:
* In behat, ensure nav node exists before checking attribute (Credit to
  Rajesh Taneja)
* Remove some unused JS constants
* Fix debugging notice for users without settings block
2016-01-29 11:28:08 +08:00
David Monllao 846cd414bf MDL-46553 admin: Version bump after history rewrite 2016-01-29 10:22:12 +08:00
Eloy Lafuente (stronk7) fabe7ebd53 MDL-50620 mod_scorm: Preventive (on rewrite) version bump to current. 2016-01-29 10:15:28 +08:00
David Monllao 4bed1fcc7e Merge branch 'MDL-35590-fixes' of git://github.com/ryanwyllie/moodle 2016-01-29 10:15:27 +08:00
Andrew Nicols ca29dd4e84 Merge branch 'MDL-52825_master-fix' of git://github.com/dmonllao/moodle 2016-01-29 10:15:26 +08:00
Ryan Wyllie 5697de1832 MDL-35590 block_navigation: fix keyboard nav
Fixed up the left/right keyboard navigation to match
the aria specification. Also stopped the root node from
being collapsible.
2016-01-29 10:15:26 +08:00
David Monllao 90902953a8 MDL-52825 atto: Listen to gesturemovestart to discard some events 2016-01-29 10:15:26 +08:00
Andrew Nicols 17cd73b684 Merge branch 'MDL-52826_master-fix' of git://github.com/dmonllao/moodle 2016-01-29 10:15:25 +08:00
Rajesh Taneja 80f37f2739 MDL-35590 behat: Data-loaded is on li node 2016-01-29 10:15:25 +08:00
David Monllao 3e51b0ad7e MDL-52826 forms: Using id attr
Switch from custom id references to the element's id attribute.

Extra fix to get rid of an unnecessary call to getValidationScript().
2016-01-29 10:15:25 +08:00
Eloy Lafuente (stronk7) 3c415f13b8 Merge branch 'MDL-29817' of https://github.com/rushi963/moodle 2016-01-29 10:15:24 +08:00
Eloy Lafuente (stronk7) 6e38f41d8e MDL-52567 Core: amend existing test to new counting rules 2016-01-29 10:15:24 +08:00
Eloy Lafuente (stronk7) bc269f6782 Merge branch 'MDL-52567_master' of https://github.com/nadavkav/moodle 2016-01-29 10:15:23 +08:00
Eloy Lafuente (stronk7) 89bb268e21 MDL-37739 mod_wiki: test headings being wikilinks (toc and content) 2016-01-29 10:15:23 +08:00
Eloy Lafuente (stronk7) 7b6d50b743 Merge branch 'MDL-37739-malformed-wiki-toc-links' of https://github.com/lucaboesch/moodle 2016-01-29 10:15:23 +08:00
Dan Poltawski e092a7c3d8 Merge branch 'MDL-48953_m31v4' of https://github.com/sbourget/moodle 2016-01-29 10:15:22 +08:00
Dan Poltawski 758e57499a Merge branch 'MDL-25864' of https://github.com/rushi963/moodle 2016-01-29 10:15:22 +08:00
David Monllao 5ceb208ba7 Merge branch 'MDL-42190-master-workshopdelsub' of git://github.com/mudrd8mz/moodle 2016-01-29 10:15:21 +08:00
David Monllao 25dbed8b9e Merge branch 'MDL-52459-master' of git://github.com/jleyva/moodle 2016-01-29 10:15:20 +08:00
Eloy Lafuente (stronk7) aeba2257f4 Merge branch 'MDL-52780-mailoriginscript' of https://github.com/brendanheywood/moodle 2016-01-29 10:15:20 +08:00
Eloy Lafuente (stronk7) 94fe0fa02e Merge branch 'wip-mdl-52839' of https://github.com/rajeshtaneja/moodle 2016-01-29 10:15:20 +08:00
Eloy Lafuente (stronk7) 81be5d3456 Merge branch 'MDL-52843-master-paramsignup' of git://github.com/mudrd8mz/moodle 2016-01-29 10:15:19 +08:00
Dan Poltawski 4ce6dac426 Merge branch 'MDL-52791' of git://github.com/timhunt/moodle 2016-01-29 10:15:19 +08:00
Dan Poltawski 4ce63c9ccf Merge branch 'MDL-52835-master' of git://github.com/deraadt/moodle 2016-01-29 10:15:19 +08:00
Dan Poltawski e23c76d72e Merge branch 'MDL-52826_master' of git://github.com/dmonllao/moodle 2016-01-29 10:15:18 +08:00
Dan Poltawski 1d1c8f6275 Merge branch 'MDL-51702_master' of git://github.com/dmonllao/moodle 2016-01-29 10:15:18 +08:00
Dan Poltawski 760b0a17f1 Merge branch 'MDL-52825_master' of git://github.com/dmonllao/moodle 2016-01-29 10:15:17 +08:00
David Monllao 99e96d83b6 Merge branch 'MDL-52682-master' of git://github.com/andrewnicols/moodle 2016-01-29 10:15:17 +08:00
David Monllao 33854a2968 MDL-52683 mod_scorm: Test for scorm_get_last_completed_attempt 2016-01-29 10:15:17 +08:00
David Monllao 0b8be05caf Merge branch 'MDL-52683-master' of git://github.com/s-cenni/moodle 2016-01-29 10:15:16 +08:00
David Monllao 0e5458f45f Merge branch 'wip-mdl-52799' of git://github.com/rajeshtaneja/moodle 2016-01-29 10:15:16 +08:00
David Monllao 6c3def94fa Merge branch 'MDL-35590-master' of git://github.com/lameze/moodle 2016-01-29 10:15:15 +08:00
David Monllao 9edcfdad4f Merge branch 'MDL-31635-master' of git://github.com/marinaglancy/moodle 2016-01-29 10:15:15 +08:00
Dan Poltawski 1aa454eda4 MDL-49817 grunt: handle multiple watched files changed at once
Includes multiple changes to the shifter task to simplify and
support this:
* Use grunt.file for shifter yui 'module' detection rather than our own
  70 line function
* Use grunt.util.spawn rather than our own exec for shifter
* Improve behaviour on various yui subdirectories

We have to add the 'async' depndency to npm because we are running
multiple async operations in the single task. We use async.eachSeries to
run each shifter job sequentally (else the output would be unreadable
when running async).

We also run shifter in non-recursive mode on the module directory so its
not building everything (thanks to Ryan for pointing this out!)
2016-01-28 08:30:04 +00:00
Dan Poltawski 0b777a069b MDL-49817 grunt: make shifter work watch on right place
We mess around with the cwd to find a shifter path, not ideal but avoids
having to refactor the shifter task.

Also fix jshint errors..

1) The gruntfile runs in a nodejs environment and not a browser
environment.

2) There was an uninitialised variable
2016-01-28 08:27:31 +00:00
Dan Poltawski 8efbb7b1a1 MDL-49817 grunt: add watch task
This allows files to be watched and automatically build when changed.

Thanks to David Monllaó for the initial basis for this patch.
2016-01-28 08:27:31 +00:00
Dan Poltawski 5cc5f31101 MDL-49817 grunt: Refactor the uglify task
This is in preperation for the watch task and doing a few things:

1) Switch away from 'grunt.file.expandMapping' to the declarative syntax
   for doing the same thing, as recommended in docs:
   http://gruntjs.com/api/grunt.file#grunt.file.expandmapping

2) Factor the renaming function into shared function so it can be used
   from the watch task too.

3) Shared the file glob'ing pattern for match AMD js files between
   jshint and uglify task (this removes the node_modules exception..
   we should add it to both if we need it).

4) Rename the task configuration - I am just doing this because it looks
   like 'dynamic_mappings' is some how magic config option when you
   look at the manual:
   http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically

   But in fact, it's just a task confguration name.
2016-01-28 08:27:30 +00:00
AMOS bot 3ccc59d199 Automatically generated installer lang files 2016-01-28 00:04:19 +08:00
Juan Leyva 51d2434cfe MDL-52902 webservice: Send CORS header before params validation 2016-01-27 10:26:04 +01:00
Dani Palou 156de651c7 MDL-51704 survey: Fix display problems in report page 2016-01-26 14:06:57 +01:00
Kenny McCormack 882bf2a54d MDL-48439 tool_capbility: Improve visualisation of capability table cells 2016-01-26 12:52:48 +00:00
Tim Hunt 41f4dabe2b MDL-52899 behat: make PAGE_READY_JS more robust 2016-01-26 11:23:26 +00:00
David Mudrák ef3cd03876 MDL-52896 moodlelib: Remove APD support relic
The support for Advanced PHP Debugger was dropped in Moodle 2.2
(MDL-29881). This seems to be a forgotten relic no longer used and
needed in moodlelib.
2016-01-26 09:33:35 +01:00
Dani Palou a69c9abdaf MDL-49612 forum: Fix some external_value creation in params declaration 2016-01-26 08:55:55 +01:00
Clement Smith 4956503b11 MDL-52566 mod/assign: Fix group submission draft records
When group assignments are submitted by the first student in a group,
the logic that saves the submission is not creating a draft
assignment record in mdl_assign_submission. This leads to problems
when other functions are used that depend on these records, such as
marking workflow. This fixes the issue and correctly creates
draft assignment submission records for the non-submitting students
in the group.
2016-01-25 10:06:45 -06:00
David Mudrák 66a3df7f55 MDL-42190 workshop: Add behat tests for the submissions removal feature 2016-01-25 16:10:59 +01:00
David Mudrák 58489e11f1 MDL-42190 workshop: Improve the confirmation of submission removal
I noticed we do not need to list the names of potentially affected
reviewers. If the user (teacher) has the capability to see other
assessments (which they do in 99%), the list of assessments is displayed
at the confirmation page anyway. If for some reason they do not have the
capability, we should not list the names.

The second fix is that the action buttons (such as Delete or Edit) are
not displayed on the removal confirmation page.

And finally, as the output->confirm() wraps the message with implicit
<p>, it is not valid to pass HTML with any block elements. So instead of
concatenating the two messages, we simply define a new string for this
situation.
2016-01-25 15:17:45 +01:00
David Mudrák 3fa22899b6 MDL-42190 workshop: Fix the coding style of the patch 2016-01-25 15:17:44 +01:00
Paul Nicholls 30c52da9be MDL-42190 workshop: Add "sumbission_deleted" event
Add (and trigger) an event for deletion of submissions, so that deletions
are logged.
2016-01-25 15:17:44 +01:00
Paul Nicholls deabe48bc5 MDL-42190 workshop: Add the ability to delete submissions
A new capability is introduced to control this, granted to teacher/admin
roles by default: mod/workshop:deletesubmissions.  Additionally, students
can delete their own submissions if they are currently able to edit them.
2016-01-25 15:17:44 +01:00
Marina Glancy 5824335f80 MDL-31635 completion: do not show % for the grade
Also show grades with the configured number of decimal points
2016-01-25 10:22:58 +08:00
AMOS bot 895d5aad79 Automatically generated installer lang files 2016-01-25 00:04:02 +08:00
Nadav Kavalerchik 5200054dc2 MDL-52567 Core: remove quotation marks, for proper word count 2016-01-24 00:47:13 +02:00
AMOS bot 97f26506f6 Automatically generated installer lang files 2016-01-23 00:04:07 +08:00
David Mudrák d84c64b7d6 MDL-52873 forms: Generate unique id attributes for modgrade elements
The previous method of generating the id attribute of the elements
within the modgrade group did not take the name of the modgrade field
into account. So if there were multiple fields of the modgrade type
added into a form (not a common case yet still valid), elements created
within the group were assigned same id attributes.

The patch introduces a new method for generating the id attribute of
modgrade elements. The new method takes the name of the modgrade group
into account and returns the id in the format similar to the default one
returned by HTML_QuickForm_element::_generateId().

The patch changes the generated id attribute. Apart from the
block_activity_results' behat feature files, not other places seem to
rely on the exact value.
2016-01-22 14:24:53 +01:00
Simey Lameze 6759dc35fe MDL-35590 block_navigation: fix remaining issues 2016-01-22 18:48:04 +08:00
Rajesh Taneja 10ac8baf6e MDL-35590 behat: Fixed navigation steps to support aria attributes 2016-01-22 17:53:44 +08:00
Sara Cenni ee8a2e2ed9 MDL-52683 mod_scorm: Fix for Last completed attempt error with Oracle 2016-01-22 10:16:05 +01:00
David Monllao 2edb12ec30 MDL-52826 forms: Move global functions to self-contained 2016-01-22 15:43:08 +08:00
Andrew Nicols fa544b236d MDL-52137 mod_forum: Move digest body to shared template 2016-01-22 10:09:32 +08:00
Andrew Nicols 61937f48f7 MDL-52682 mod_forum: Correct redirect URL when marking posts as read 2016-01-22 08:04:05 +08:00
Michael de Raadt acc9fed2ee MDL-52835 mod_data: Correct MIME type for JS template 2016-01-22 09:51:08 +11:00
Rushikesh 32f2116b08 MDL-29817 Form : advcheckbox allows attributes even without group key 2016-01-21 22:37:43 +05:30
Dan Poltawski dbf6b40782 MDL-49817 grunt: jslint rename task config and make explict src
Two reasons for this change:
1) The configuration here is confusing, it seems like we are setting the
   'files' option, but in fact we are just generating a task configuration
    called 'files'. Lets try and avoid confusion.

2) It makes it possible for 'watch' to override the src
2016-01-21 15:13:45 +00:00
Rushikesh f07e428c26 MDL-25864 Blog: Confirmation dialog before unregistering 2016-01-21 19:24:47 +05:30
Rajesh Taneja 380ab95f20 MDL-52839 behat: Fixed xpath and wait to ensure element is visible 2016-01-21 15:50:44 +08:00
Andrew Nicols eddec36d49 weekly release 3.1dev 2016-01-21 13:43:35 +08:00
Andrew Nicols 79fbb28c37 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-01-21 13:43:32 +08:00
John Okely f889544657 MDL-35590 block_navigation: Add aria roles to navigation block tree 2016-01-21 10:18:22 +08:00
David Monllao c35cf9bfcd MDL-51702 blocks: Allow permission overrides in dashboard 2016-01-21 08:46:58 +08:00
Dan Poltawski b42adaab44 Merge branch 'MDL-52702-m' of https://github.com/micaherne/moodle 2016-01-20 14:37:17 +00:00
Dan Poltawski 7fba3b0316 Merge branch 'MDL-52738-fixup' of https://github.com/timhunt/moodle 2016-01-20 11:42:29 +00:00
Tim Hunt 190fbfb60d MDL-52738 quiz: fix handling of showall by review prev link 2016-01-20 11:42:06 +00:00
David Mudrák 1f4d7d97fa MDL-52843 users: Fix the PARAM type of the name fields in signup form
If editing the profile, the useredit_shared_definition() function set
the type of all name fields to PARAM_NOTAGS. This patch sets that type
consistently in the user signup form, too.
2016-01-20 11:17:32 +01:00
Andrew Nicols d60bf9f1dd Merge branch 'MDL-52383' of https://github.com/stronk7/moodle 2016-01-20 10:16:19 +08:00
Eloy Lafuente (stronk7) 668aca1804 MDL-52383 Calendar: user prefs are varchar, look for varchars 2016-01-20 03:07:57 +01:00
Andrew Nicols 7ee117fab8 Merge branch 'MDL-50083' of https://github.com/stronk7/moodle 2016-01-20 10:02:30 +08:00
Eloy Lafuente (stronk7) 5311e22963 MDL-50083 mod_assign: protect code against not set flags
Yes could have used !empty() but for some reason found
the isset() && condition more clear. Tired brain, surely.
2016-01-20 02:50:15 +01:00
Eloy Lafuente (stronk7) 0ddbf9b937 Merge branch 'master_MDL-50083' of https://github.com/greg-or/moodle-mod_assign 2016-01-20 01:31:52 +01:00
Eloy Lafuente (stronk7) bb66ff5581 Merge branch 'master_MDL-42473' of git://github.com/danmarsden/moodle 2016-01-20 01:29:28 +01:00
Eloy Lafuente (stronk7) 4b2326faad Merge branch 'MDL-52383' 2016-01-20 01:26:22 +01:00
Eloy Lafuente (stronk7) d3220ca34f MDL-52383 Calendar: fix versions 2016-01-20 01:25:16 +01:00
Greg Faller 3eb931d365 MDL-50083 mod_assign: unlock submission when adding attempt 2016-01-20 09:26:55 +10:30
David Mudrák 1ccd813264 MDL-52831 users: Do not delete Mr. and Mrs. Whitespace accounts
Due to imperfect validation of the user registration and profile forms,
we allowed for firstname and lastname be just a whitespace. On MySQL,
such a whitespace is not significant for VARCHAR comparison so these
otherwise valid accounts could be silently deleted.

The patch makes sure that at least one of the checked fields is a real
empty string before deleting such account.
2016-01-19 21:40:45 +01:00
David Mudrák e9c27d1e0e MDL-52831 users: Automatically strip whitespace from name fields
This change prevents from registering and/or saving the profile of a
user with the whitespace instead of the required name.

Additionally, there is accessibility improvement for better error labels
in case of missing values (copied over from signup_form).
2016-01-19 21:40:45 +01:00
Dan Poltawski 6f85e729e3 MDL-52568 version: bump 2016-01-19 17:01:21 +00:00
Dan Poltawski c8c905577c Merge branch 'MDL-52568_master' of https://github.com/kevin-bruton/moodle 2016-01-19 16:48:11 +00:00
Rajesh Taneja 31ed36f193 MDL-52721 behat: Exclude links in moodle while finding tests
Parallel run create links within moodle
so avoid searching for tests within links
2016-01-19 14:35:18 +00:00
Dan Poltawski b0be5f76ae Merge branch 'MDL-51123-master' of git://github.com/jleyva/moodle 2016-01-19 11:01:47 +00:00
Dan Poltawski 61c8abfb1e Merge branch 'MDL-51715_master_invalidweights' of https://github.com/colin-umn/moodle 2016-01-19 10:39:48 +00:00
Luca Bösch 2c13bbba2b MDL-37739 mod_wiki: Wiki ToC header href remove square double brackets.
When H1, H2 and H3 links in wiki act themselves as hyperlinks, they
were displayed in double brackets. This patch removes [[ and ]] out of
the table of content displayed header hyperlinks.
2016-01-19 09:00:56 +01:00
Andrew Nicols 6c99c1e777 Merge branch 'MDL-48621_master' of git://github.com/dmonllao/moodle 2016-01-19 15:47:12 +08:00
David Monllao 923589d759 MDL-52825 atto: Ignore out of bounds event targets 2016-01-19 15:37:00 +08:00
David Monllao 356e235459 MDL-48621 admin: Warning about events 1 API deprecation 2016-01-19 15:19:13 +08:00
David Monllao 20ff2fba25 MDL-48621 events: Adapting unit tests to debugging messages
- A new assertDebuggingCalledCount has been introduced, as multiple debugging messages
  may be called in some cases, for example when calling events_cron with queued events
  that need to be dispatched.
- events_update_definition has been moved out of setUp as debugging messages are only
  caught by our phpunit custom stuff when they are called inside tests.
2016-01-19 15:19:10 +08:00
David Monllao 32f8bbd8dc MDL-48621 events: Adding debugging messages
Debugging messages triggered once it is confirmed that the events 1 api handlers
are being used.
2016-01-19 15:12:15 +08:00
Eloy Lafuente (stronk7) cf003b48bc Merge branch 'MDL-46091' of git://github.com/timhunt/moodle 2016-01-19 07:32:09 +01:00
Andrew Nicols 77ee47bdb2 Merge branch 'MDL-48985_m31v1' of https://github.com/sbourget/moodle 2016-01-19 12:56:26 +08:00
Andrew Nicols 62d0d0b46d Merge branch 'MDL-52673-master' of https://github.com/pauln/moodle 2016-01-19 10:23:53 +08:00
Andrew Nicols cd21909554 Merge branch 'MDL-52519' of https://github.com/rushi963/moodle 2016-01-19 10:18:41 +08:00
Andrew Nicols f87d633bec Merge branch 'MDL-52773-master' of https://github.com/pauln/moodle 2016-01-19 09:13:30 +08:00
Andrew Nicols f3d23df572 Merge branch 'MDL-52784' of git://github.com/timhunt/moodle 2016-01-19 08:54:55 +08:00
Andrew Nicols 9dd33a288e Merge branch 'MDL-52269_master' of https://github.com/dmonllao/moodle 2016-01-19 08:45:42 +08:00
Andrew Nicols fe99a27859 Merge branch 'MDL-52270_master' of https://github.com/dmonllao/moodle 2016-01-19 08:35:23 +08:00
Andrew Nicols 441ffe514e Merge branch 'MDL-49291_master' of git://github.com/markn86/moodle 2016-01-19 08:04:59 +08:00
Andrew Nicols 223c4add23 Merge branch 'MDL-50268-master' of git://github.com/lameze/moodle 2016-01-19 07:56:41 +08:00
Eloy Lafuente (stronk7) b9103d358d Merge branch 'MDL-52615_master' of https://github.com/nadavkav/moodle 2016-01-19 00:29:26 +01:00
Tim Hunt 1f0f413187 MDL-46091 quiz start attempt: rationalise confirmations.
1. Don't show a warning if there are a limited number of attempts, only
   if there is a time limit.
2. Merge that time-limit warning into the same form that is used for
   entering a password, etc.
3. Make that form an JavaScript dialogue when you click the start attempt
   button.

AMOS BEGIN
  MOV ['confirmstarttimelimit', 'mod_quiz'], ['confirmstart', 'quizaccess_timelimit']
AMOS END
2016-01-18 22:12:41 +00:00
Tim Hunt fdd629667e MDL-52791 quiz editing: handle unknown question types 2016-01-18 17:35:50 +00:00
AMOS bot 87c93de584 Automatically generated installer lang files 2016-01-19 00:04:29 +08:00
Dan Poltawski 0f97fc6c3f Merge branch 'MDL-52750' of git://github.com/timhunt/moodle 2016-01-18 15:50:11 +00:00
Dan Poltawski 5d5db1030f Merge branch 'MDL-52738' of git://github.com/timhunt/moodle 2016-01-18 14:47:45 +00:00
Dan Poltawski e34710c7fe Merge branch 'wip-mdl-52721' of https://github.com/rajeshtaneja/moodle 2016-01-18 14:39:46 +00:00
Dan Poltawski 574b76ace1 Merge branch 'MDL-52218_master_alt' of git://github.com/markn86/moodle 2016-01-18 14:03:54 +00:00
Dan Poltawski 0ff8d34f2f Merge branch 'MDL-52486-master' of git://github.com/cameron1729/moodle 2016-01-18 11:19:55 +00:00
Dan Poltawski 26e45019c8 Merge branch 'MDL-36404-master' of git://github.com/junpataleta/moodle 2016-01-18 10:24:04 +00:00
Kevin Bruton cfd8c0fe09 MDL-52568 core_cohort: added ability to return all cohorts in WS 2016-01-18 11:00:20 +01:00
Michael Aherne 5e43eea080 MDL-52702 plagiarism: Improvements to base plugin class 2016-01-18 09:39:54 +00:00
Rajesh Taneja 28dab6408c MDL-52799 unittest: Removed empty if statement 2016-01-18 15:47:07 +08:00
Andrew Nicols 45f167bd2b Merge branch 'MDL-45265-master' of git://github.com/danpoltawski/moodle 2016-01-18 14:54:54 +08:00
Andrew Nicols ae4cc740be Merge branch 'MDL-52608-master' of https://github.com/xow/moodle 2016-01-18 14:47:52 +08:00
Andrew Nicols 2e6462f327 Merge branch 'MDL-52573-master' of git://github.com/danpoltawski/moodle 2016-01-18 14:32:41 +08:00
Mark Nelson 806905b59b MDL-49291 core: final deprecation of sql_*_reader interfaces 2016-01-18 14:24:34 +08:00
Andrew Nicols 36f0a3cb1d Merge branch 'MDL-50464-master' of https://github.com/hcpss-banderson/moodle 2016-01-18 14:24:23 +08:00
Rajesh Taneja 1226f3ca33 MDL-52799 phpunit: Truncate records for brokedmysql not empty. 2016-01-18 14:10:18 +08:00
Simey Lameze 11d4bea28b MDL-50268 core: proper deprecation of get_file_url() method 2016-01-18 13:44:22 +08:00
David Monllao 50e954163d MDL-52269 mod_assign: Display info message if blind marking active
Only for users with mod/assign:viewblinddetails capability, as other
users will quickly notice it.
2016-01-18 12:15:34 +08:00
Andrew Nicols 159d801362 MDL-50915 mod_lesson: Remove js dependencies from behat tests 2016-01-18 10:46:32 +08:00
Rajesh Taneja 60237c2ce2 MDL-52721 unittest: Exclude tests in vendor and node_modules 2016-01-18 10:25:02 +08:00
Andrew Nicols d595468da5 Merge branch 'MDL-50915_m31v5' of https://github.com/sbourget/moodle 2016-01-18 10:18:31 +08:00
Andrew Nicols e2789e6bc1 Merge branch 'MDL-52570-master' of git://github.com/jleyva/moodle 2016-01-18 09:49:22 +08:00
Andrew Nicols 324a43c51e MDL-52309 gradereport_history: Adjust comment 2016-01-18 09:37:29 +08:00
Andrew Nicols 8d9b6ec254 Merge branch 'MDL-52309' of https://github.com/smbader/moodle 2016-01-18 09:33:36 +08:00
Jun Pataleta e9088e28ac MDL-36404 gradingform_rubric: Accessibility fixes rubric grading 2016-01-18 09:31:00 +08:00
Brendan Heywood e9180351f9 MDL-52780 email: Added better script origin email header 2016-01-18 08:12:49 +11:00
Rushikesh c2a21d928e MDL-52519 Idap tests: use consistent var name 2016-01-16 11:16:21 +05:30
Stephen Bourget a721339193 MDL-52383 Calendar: Allow users to set lookahead to 1 year 2016-01-15 13:14:56 -05:00
Tim Hunt c67ab86fa9 MDL-52738 quiz: Previous button during attempt review.
This is to be consistent with places like forum and book, where if we
have a next link, we also have a previous link.

At the same time I have amended the links/buttons from 'Previous'/'Next'
to 'Previous page'/'Next page' because I think that is clearer.

Also, on the last page of the quiz, I have changed 'Next' to 'Finish
attempt ...' for consistency with the link in the navigation block.

AMOS BEGIN
 CPY [navigatenext,mod_assignment],[navigatenext,mod_quiz]
 CPY [navigateprevious,mod_assignment],[navigateprevious,mod_quiz]
AMOS END
2016-01-15 14:25:25 +00:00
Tim Hunt a4100d4de3 MDL-52750 quiz reviewQ/comment: add page title & student name 2016-01-15 11:10:43 +00:00
Tim Hunt a82f26e324 MDL-52784 quiz: unused param in quiz_get_combined_reviewoptions calls 2016-01-15 11:05:47 +00:00
Michael Hughes 59e9548762 MDL-52270 mod_assign: Adapt unit tests 2016-01-15 10:04:04 +08:00
Michael Hughes 18b797347f MDL-52270 Assignment: Display Participant Number
Display participant number when user holds mod/assign:viewblinddetails capability.
2016-01-15 09:43:16 +08:00
Paul Nicholls 6d1ee59af2 MDL-52773 course: Fix section return from single section page
When editing a section from a single section page, you should be returned
to the section you were viewing/editing, not always to section 1.
2016-01-15 11:49:51 +13:00
Stephen Bourget 551c6b1cb4 MDL-48953 choice: Improve chart labels 2016-01-14 14:01:34 -05:00
Brendan Anderson 0b1f916e0f MDL-50464 block_rss_client: Implement renderers and templates 2016-01-14 08:45:54 -05:00
Dan Poltawski 2811831ae6 MDL-52573 report_grader: only check cap of installed plugins
Previously we were linking to gradebook plugins regardless of whether
they were installed. This should be fixed properly in MDL-52678.
2016-01-14 10:20:43 +00:00
Dan Poltawski e8d5100212 weekly release 3.1dev 2016-01-14 10:09:55 +00:00
Dan Poltawski dd3c2cf935 NOBUG: Fixed file access permissions 2016-01-14 10:09:55 +00:00
Dan Poltawski 7ea24d4925 NOBUG: Fixed SVG browser compatibility 2016-01-14 10:09:52 +00:00
Dan Poltawski 8e51689d53 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-01-14 10:09:52 +00:00
Dan Poltawski 431e5b6d0e Merge branch 'wip-MDL-50851-backupfix' of https://github.com/marinaglancy/moodle 2016-01-14 08:31:14 +00:00
Marina Glancy 71da0356b6 MDL-50851 core_tag: avoid fatal errors with corrupted data 2016-01-14 16:24:38 +08:00
Marina Glancy 721d665982 MDL-50851 core_tag: fix db query failure on oracle (again) 2016-01-14 15:26:49 +08:00
Andrew Nicols 4bc9112b14 Merge branch 'wip-MDL-50851-backupfix' of git://github.com/marinaglancy/moodle 2016-01-14 13:24:57 +08:00
Marina Glancy 25430f75d1 MDL-50851 core_tag: fix db query failure on oracle 2016-01-14 13:19:12 +08:00
Dan Marsden ed383edb36 MDL-42473 mod_scorm: Enable FEATURE_GROUPS for mod_scorm 2016-01-14 17:24:26 +13:00
Andrew Nicols 1002024cbc Merge branch 'wip-MDL-50851-backupfix' of git://github.com/marinaglancy/moodle 2016-01-14 11:03:26 +08:00
Marina Glancy 83acb49975 MDL-50851 core_tag: make query cross-db compatible 2016-01-14 10:54:27 +08:00
Dan Poltawski 59a968dc3b MDL-49290 message: add note about removed function 2016-01-13 15:21:17 +00:00
Dan Poltawski cfdb3d6fe7 Merge branch 'MDL-49290_master' of git://github.com/markn86/moodle 2016-01-13 15:21:01 +00:00
Dan Poltawski 337ff8294f MDL-50851 tag: fix whitespace errors 2016-01-13 14:29:22 +00:00
Dan Poltawski cbe1b86179 MDL-49662 local: upgrade.txt note 2016-01-13 13:56:38 +00:00
Dan Poltawski e7e0a5706d Merge branch 'wip-MDL-50851-backupfix' of https://github.com/marinaglancy/moodle 2016-01-13 12:35:18 +00:00
Dan Poltawski 67f6802712 MDL-50851 upgrade: dan *REALLY* *REALLY* sucks at integrating 2016-01-13 12:01:33 +00:00
Dan Poltawski 74a088bc82 Merge branch 'MDL-49662_master' of git://github.com/markn86/moodle 2016-01-13 11:40:49 +00:00
Dan Poltawski 51443a2130 MDL-49111 bennu: remove outdated readme note 2016-01-13 11:31:55 +00:00
Marina Glancy 8f5d6695e6 MDL-50851 block_tags: map context and colleciton in restore 2016-01-13 18:45:07 +08:00
Dan Poltawski 4cb85c4905 MDL-52210 upgrade: dan *REALLY* sucks at integrating 2016-01-13 09:09:22 +00:00
Dan Poltawski c3560ad652 MDL-52210 upgrade: dan sucks at integrating 2016-01-13 09:00:44 +00:00
Dan Poltawski 939d538c76 Merge branch 'MDL-52210-master-2' of git://github.com/cameron1729/moodle 2016-01-13 08:58:18 +00:00
Cameron Ball a73409d34e MDL-52210 webservices: Revise upgrade version number. 2016-01-13 13:48:06 +08:00
Andrew Nicols a0418089d9 Merge branch 'MDL-372-int-master' of git://github.com/ryanwyllie/moodle 2016-01-13 10:22:24 +08:00
Andrew Nicols 75e7c855fc MDL-43620 mod_chat: Whitespace fix 2016-01-13 10:20:25 +08:00
Ryan Wyllie f9621c56c4 MDL-372 forum: tests for pinned discussions 2016-01-13 02:01:27 +00:00
Ben Kelada 5f219cf181 MDL-372 forum: Improve pinning and update for Moodle 3.0 2016-01-13 02:01:26 +00:00
Charles Fulton 87b007b4dd MDL-372 forum: support for pinned discussion topics 2016-01-13 02:01:26 +00:00
Andrew Nicols f731f9c6d9 Merge branch 'MDL-50829-master' of git://github.com/danpoltawski/moodle 2016-01-13 09:56:31 +08:00
Andrew Nicols 1b67113353 Merge branch 'MDL-43620_m31v2' of https://github.com/sbourget/moodle 2016-01-13 09:38:45 +08:00
Andrew Nicols ca922c24e7 Merge branch 'MDL-51710-master' of git://github.com/FMCorz/moodle 2016-01-13 09:12:18 +08:00
Andrew Nicols 9ef638652b Merge branch 'MDL-52507_master' of https://github.com/jinhofer/moodle 2016-01-13 09:07:13 +08:00
Andrew Nicols 38c6a307eb Merge branch 'MDL-52586-master' of git://github.com/jleyva/moodle 2016-01-13 09:06:03 +08:00
Andrew Nicols 64858d435c Merge branch 'MDL-52649-master' of git://github.com/junpataleta/moodle 2016-01-13 08:58:29 +08:00
Joseph Inhofer 93172318b7 MDL-52507 enrol/manual: Generated a smart zIndex 2016-01-12 12:11:09 -06:00
Dan Poltawski 1be8237d41 Merge branch 'MDL-49021_master' of git://github.com/markn86/moodle 2016-01-12 17:02:24 +00:00
Dan Poltawski 6f838471f9 Merge branch 'MDL-49111_master' of git://github.com/markn86/moodle 2016-01-12 17:01:51 +00:00
Dan Poltawski e6f519b73e Merge branch 'MDL-49553_master' of git://github.com/markn86/moodle 2016-01-12 17:01:13 +00:00
Dan Poltawski 5ea1de4d85 Merge branch 'MDL-49724_master' of git://github.com/markn86/moodle 2016-01-12 16:56:12 +00:00
Dan Poltawski d31c63fc0e Merge branch 'MDL-49784_master' of git://github.com/markn86/moodle 2016-01-12 16:56:06 +00:00
Dan Poltawski 6fc72ea59e Merge branch 'MDL-49824_master' of git://github.com/markn86/moodle 2016-01-12 16:56:01 +00:00
Dan Poltawski 7fa6a8f1a6 MDL-50851 tag: fix whitespace errors 2016-01-12 16:34:58 +00:00
AMOS bot ae4dd1b0c8 Automatically generated installer lang files 2016-01-13 00:03:55 +08:00
Dan Poltawski 04a03ff282 Merge branch 'wip-MDL-50851-master' of git://github.com/marinaglancy/moodle 2016-01-12 14:17:14 +00:00
Dan Poltawski b8ab80f07e Merge branch 'MDL-52210-master' of git://github.com/cameron1729/moodle 2016-01-12 13:36:13 +00:00
Dan Poltawski 07f4e11100 Merge branch 'MDL-52315-master' of git://github.com/andrewnicols/moodle 2016-01-12 13:31:40 +00:00
Dan Poltawski 149ba5c227 Merge branch 'MDL-52661-master' of git://github.com/junpataleta/moodle 2016-01-12 12:56:09 +00:00
Dan Poltawski 73c2ae931d Merge branch 'MDL-52491-master' of git://github.com/jleyva/moodle 2016-01-12 11:35:25 +00:00
Dan Poltawski e7cacf211e Merge branch 'MDL-21912-master' of git://github.com/cameron1729/moodle 2016-01-12 11:08:11 +00:00
Dan Poltawski 7931245f95 Merge branch 'wip-mdl-52656' of https://github.com/rajeshtaneja/moodle 2016-01-12 10:39:46 +00:00
Andrew Nicols dc8675fdad Merge branch 'master' of https://github.com/janeklb/moodle 2016-01-12 09:31:09 +00:00
Andrew Nicols 0755d638d7 Merge branch 'MDL-52560-m' of https://github.com/micaherne/moodle 2016-01-12 09:31:08 +00:00
Andrew Nicols c7198e2a0e Merge branch 'MDL-52585-master' of git://github.com/jleyva/moodle 2016-01-12 09:31:08 +00:00
Andrew Nicols 8b9a15bbab Merge branch 'MDL-52610_master' of git://github.com/dmonllao/moodle 2016-01-12 09:31:07 +00:00
Andrew Nicols 576d953415 Merge branch 'MDL-52643_m31v1' of https://github.com/sbourget/moodle 2016-01-12 09:31:06 +00:00
Andrew Nicols 7b9b861b7b Merge branch 'MDL-52290_editpdf_pagecount' of git://github.com/davosmith/moodle 2016-01-12 09:31:06 +00:00
Andrew Nicols 6009fa550c Merge branch 'patch-11' of https://github.com/sk-unikent/moodle 2016-01-12 09:31:05 +00:00
Andrew Nicols ae39b42337 Merge branch 'MDL-52563-master' of git://github.com/cameron1729/moodle 2016-01-12 09:31:05 +00:00
Andrew Nicols c57542a8d2 MDL-38020 behat: Correct singleselect usage 2016-01-12 09:31:05 +00:00
Andrew Nicols a1013a8054 Merge branch 'MDL-38020-master' of git://github.com/danpoltawski/moodle 2016-01-12 09:31:04 +00:00
Andrew Nicols dc2aa7f947 Merge branch 'MDL-27840-master' of git://github.com/danpoltawski/moodle 2016-01-12 09:31:03 +00:00
Dan Poltawski 46767cc204 Merge branch 'MDL-52589-m' of https://github.com/micaherne/moodle 2016-01-12 09:31:03 +00:00
David Monllao 9ccc372917 MDL-52610 user: Honour allowaccountssameemail in create_users ws
Credit to Dmitriy Kuzevanov.
2016-01-12 13:54:48 +08:00
Jun Pataleta 9488b6f3a4 MDL-52649 user: Add check for potentially undefined variables 2016-01-12 08:56:17 +08:00
Steve Bader 1dabeb8439 MDL-52309 gradereport_history: require user to submit parameters
Prevent a timely full report from loading when need is exceedingly
rare. Only execute the report when the user has submitted the form.
2016-01-11 11:12:30 -05:00
Dan Poltawski a17820bb70 Merge branch 'MDL-52000-master' of git://github.com/andrewnicols/moodle 2016-01-11 13:17:10 +00:00
Dan Poltawski 687a268cbd Merge branch 'MDL-41531-master' of git://github.com/junpataleta/moodle 2016-01-11 11:08:25 +00:00
Dan Poltawski b8ebc30cd1 Merge branch 'wip-MDL-52697-master' of git://github.com/abgreeve/moodle 2016-01-11 09:24:22 +00:00
Michael Aherne d9ffd8518a MDL-52589 cache: Allow unused stores to be uninstalled 2016-01-11 09:04:37 +00:00
Mark Nelson ae139d7911 MDL-52218 gradereport_grader: added behat test for switching views 2016-01-11 16:02:31 +08:00
Mark Nelson 20180b3167 MDL-52218 gradereport_grader: fixed 'grade:viewhidden' related errors
There were two main reasons why there were PHP errors.

1) We were not passing variables as references.
2) When we were restricting the number of items shown in
   the report we were not collecting all of the dependencies
   which were required when a user did *not* have the
   capability 'moodle/grade:viewhidden'. This would cause
   an undefined offset error due to the index missing in
   the dependency array.

This also meant that a user without the capability 'moodle/grade:viewhidden'
could view the course total without hidden items being taken into account
if they were not being displayed. To resolve this we now pass all the grades
and grade items when the user does not have the capability - which also solves
the PHP errors listed above.
2016-01-11 16:01:33 +08:00
Cameron Ball 035247e0f2 MDL-52486 JavaScript: Make sure lang codes use underscores.
In some cases, underscores in lang codes get replaced with dashes
which causes some JavaScript to be unhappy. This patch simply reverse
the underscore to dash replacement on the JS side.
2016-01-11 15:23:29 +08:00
Cameron Ball 088d6086d8 MDL-21912 restore: Add admin setting to restore conflicting admin user 2016-01-11 14:08:58 +08:00
eWallah f07bbccb03 MDL-41531 enrol_paypal: Fix enrol errors due to non-ASCII characters 2016-01-11 10:48:47 +08:00
AMOS bot eacc9ebaf3 Automatically generated installer lang files 2016-01-11 00:04:07 +08:00
Marina Glancy 3da0c3cbf4 MDL-50851 tool_uploaduser: allow to set interests 2016-01-10 15:25:48 +08:00
Marina Glancy 54f63cd11b MDL-50851 tool_uploadcourse: allow to set tags 2016-01-10 15:25:48 +08:00
Marina Glancy ac840cf487 MDL-50851 blocks: convert to new tag API 2016-01-10 15:25:48 +08:00
Marina Glancy b0c62e00bc MDL-50851 block_tags: tag collections settings 2016-01-10 15:25:48 +08:00
Marina Glancy c4e868d5f0 MDL-50851 user: use new tag API for interests 2016-01-10 15:25:47 +08:00
Marina Glancy b355a1c97c MDL-50851 core_question: use new tag API 2016-01-10 15:25:47 +08:00
Marina Glancy 74fa9f76dc MDL-50851 course: use new tag API 2016-01-10 15:25:47 +08:00
Marina Glancy abea2c5deb MDL-50851 blogs: use new tag API 2016-01-10 15:25:47 +08:00
Marina Glancy b0b2c93da9 MDL-50851 mod_wiki: use new tag API 2016-01-10 15:25:46 +08:00
Marina Glancy c026a28d59 MDL-50851 core_tag: introduce tag collections 2016-01-10 15:25:43 +08:00
Frederic Massart 2a5920c338 MDL-51710 repository_s3: Use proxy settings when communicating with S3 2016-01-08 16:49:54 +08:00
Adrian Greeve 03af7e696e MDL-52697 calendar: Fixed notice for $name not being defined. 2016-01-08 11:42:20 +08:00
Rajesh Taneja faea241337 MDL-52656 unittest: Reset original session while setting user 2016-01-08 09:41:28 +10:00
Juan Leyva ea21d6370f MDL-52570 message: Do not return deleted messages in WS 2016-01-07 12:10:32 +01:00
Jun Pataleta fb43a326c2 MDL-52661 gradingform_gudie: Accessibility fixes for marking guide 2016-01-07 17:12:17 +08:00
Andrew Nicols 6667ebb98e MDL-52000 mod_forum: Respect timed posts in course overview block 2016-01-07 16:57:27 +08:00
Dan Poltawski e65dfd9f28 weekly release 3.1dev 2016-01-07 08:32:34 +00:00
Dan Poltawski 93defaa85e Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2016-01-07 08:32:30 +00:00
John Okely 33501d2804 MDL-52608 core: Use property_exists in fullname
Credit to Dmitriy Kuzevanov for the patch.
2016-01-07 07:24:02 +00:00
Paul Nicholls 3afe22b09e MDL-52673 workshop: fix dndnotsupported message in assessment form
An old CSS rule which doesn't seem to serve any purpose any more was
causing the "drag and drop not supported" message to be displayed (even
when incorrect) in the workshop assessment form when using a list-view
rubric as the grading strategy.
2016-01-07 14:38:48 +13:00
AMOS bot 4bdc6cb9a6 Automatically generated installer lang files 2016-01-07 00:04:23 +08:00
Skylar Kelty ee4320a6fc MDL-52664 forum: Fix forum email unsubscribe/discussion URL 2016-01-06 12:50:50 +00:00
Dan Poltawski 2e2d3c9b17 MDL-45265 behat: tests for admin_bookmarks block 2016-01-06 11:00:58 +00:00
Mark Nelson a0ac16cb88 MDL-49662 core: dropped support for legacy local_* navigation API 2016-01-06 16:53:33 +08:00
Andrew Nicols 4aaa38e8fa MDL-52000 mod_forum: Respect timed posts in course overview block 2016-01-06 16:20:48 +08:00
Andrew Nicols 2bc02f2e63 Merge branch 'wip-mdl-52614' of https://github.com/rajeshtaneja/moodle 2016-01-06 13:37:50 +08:00
Rajesh Taneja 766e3b52e7 MDL-52614 mod_workshop: right align for dir-rtl only 2016-01-06 15:31:31 +10:00
Andrew Nicols 81117053b3 Merge branch 'MDL-49231-master-fix2' of https://github.com/FMCorz/moodle 2016-01-06 12:05:34 +08:00
Mark Nelson ab2d9b34b1 MDL-49784 core: final deprecation of useredit_shared_definition_preferences() 2016-01-06 11:55:29 +08:00
Frederic Massart 0c48895bb7 MDL-49231 mod_glossary: Invalid pivot when printing entries 2016-01-06 11:15:56 +08:00
Mark Nelson 94cec934a6 MDL-49553 core_block: final deprecation of config_save() 2016-01-06 10:58:50 +08:00
Mark Nelson 7481f4229a MDL-49021 gradereport_grader: final deprecation of get_collapsing_icon() 2016-01-06 10:39:53 +08:00
Mark Nelson 5e156fe8ce MDL-49724 core_ddl: final deprecation of guess_antolope_row_size() 2016-01-06 10:38:22 +08:00
Mark Nelson 62d020ea22 MDL-49824 core_dml: final deprecation of set_logging() 2016-01-06 10:31:38 +08:00
Andrew Nicols 5732322ee9 MDL-52315 mod_forum: Deprecate postmailinfo string 2016-01-06 10:21:08 +08:00
Nadav Kavalerchik 22e97be318 MDL-52615 Workshop: Right align phase status icons, in RTL mode. 2016-01-05 20:34:09 +02:00
AMOS bot f6005ab8aa Automatically generated installer lang files 2016-01-06 00:03:53 +08:00
Dan Poltawski 37727364bb Merge branch 'MDL-52503_master' of git://github.com/dmonllao/moodle 2016-01-05 14:47:45 +00:00
Dan Poltawski 3348fa77ff Merge branch 'MDL-52258-master' of git://github.com/juancs/moodle 2016-01-05 14:46:12 +00:00
Dan Poltawski 6393e3d971 Merge branch 'MDL-50916_m31v2' of https://github.com/sbourget/moodle 2016-01-05 12:46:11 +00:00
Juan Leyva 4323a973d5 MDL-52072 enrol: Fix course visibility checks in external functions 2016-01-05 10:31:23 +00:00
Davo Smith 0d5a260ecd MDL-52290 assignfeedback_editpdf: show number of pages in page select 2016-01-05 10:01:45 +00:00
Janek Lasocki-Biczysko c9b6feea0e MDL-52504 grunt: fixed scope of jshint when in amd directory 2016-01-05 09:59:09 +00:00
Juan Leyva 8e2707b92b MDL-52491 webservice: Do not enable XML-RPC server for mobile anymore 2016-01-05 09:13:27 +01:00
Matt Rice be28a7823e MDL-52563 mod_forum: Cleanup digestbasic template 2016-01-05 15:38:14 +08:00
David Monllao 1a51661b94 MDL-52503 mod_assign: Removing session cache
Replaced with a global $SESSION var, deferring cleanup to session
destroy.
2016-01-05 15:04:32 +08:00
Andrew Nicols e98dffe129 Merge branch 'MDL-49231-master-fix' of https://github.com/FMCorz/moodle 2016-01-05 15:03:55 +08:00
Mark Nelson be43ad0d81 MDL-49290 core: final deprecation of message_current_user_is_involved() 2016-01-05 14:57:46 +08:00
Mark Nelson 678b315f46 MDL-49111 core: final deprecation of calendar_normalize_tz() 2016-01-05 14:48:44 +08:00
Andrew Nicols 887785db42 Merge branch 'wip-mdl-51881' of https://github.com/rajeshtaneja/moodle 2016-01-05 14:08:18 +08:00
Rajesh Taneja 0583bbd1d6 MDL-51881 behat: updated composer pointing to new tag 2016-01-05 13:59:45 +08:00
Rajesh Taneja 66fe88db93 MDL-51881 behat: Set navbar to be absolutely positioned
All behat drivers are now replicating human behavior
so when the browser scrolls something into view it doesn't account
for fixed positioned elements that end up obscuring the item thus
leading to errors that could be avoided by scrolling an additional amount.
2016-01-05 13:59:45 +08:00
Andrew Nicols 8b198577e2 Merge branch 'MDL-52078-master' of git://github.com/cameron1729/moodle 2016-01-05 13:53:58 +08:00
Cameron Ball 752ad002da MDL-52078 gradebook: Behat tests for hidden grade items. 2016-01-05 13:48:54 +08:00
Frederic Massart a10b03d310 MDL-49231 mod_glossary: Advanced search is case sensitive 2016-01-05 13:18:24 +08:00
Frederic Massart 5eabb5e76e MDL-49231 mod_glossary: Reverting back to not using recordsets 2016-01-05 13:18:24 +08:00
Cameron Ball 13ae7db2bb MDL-52210 webservices: Remove AMF webservice 2016-01-05 10:36:26 +08:00
Andrew Nicols 2becd930f9 Merge branch 'MDL-52625_master' of https://github.com/nadavkav/moodle 2016-01-05 08:05:17 +08:00
Dan Poltawski acf2aa9c0d Merge branch 'MDL-52614_master' of https://github.com/nadavkav/moodle 2016-01-04 18:13:08 +00:00
Stephen Bourget afd5408eda MDL-50915 Lesson: Behat test for overview report 2016-01-04 12:05:17 -05:00
Stephen Bourget fbf85b8d76 MDL-50915 Lesson: Fix information on outline report 2016-01-04 12:03:49 -05:00
Stephen Bourget 8cf5ac4acc MDL-43620 Chat: Behat test for course reset 2016-01-04 11:39:09 -05:00
Stephen Bourget a646cd5696 MDL-43620 Chat: Fix error on course reset 2016-01-04 11:38:51 -05:00
Dan Poltawski 46cf618806 Merge branch 'MDL-52645-master-enfix' of git://github.com/mudrd8mz/moodle 2016-01-04 15:31:51 +00:00
Dan Poltawski 6f61123346 Merge branch 'MDL-52576_user_profile' of https://github.com/BenKelada/moodle 2016-01-04 15:06:17 +00:00
Dan Poltawski 98e981aacb Merge branch 'MDL-52638_m31v1' of https://github.com/sbourget/moodle 2016-01-04 11:36:14 +00:00
Dan Poltawski 5a0331e2d8 Merge branch 'MDL-49231-master' of git://github.com/jleyva/moodle 2016-01-04 10:51:05 +00:00
Helen Foster 8bd563e53f MDL-52645 lang: Merge English strings from the en_fix language pack 2016-01-04 11:48:33 +01:00
Peter Miller f3460b0fc6 MDL-52078 gradebook: Stop totals including hidden items.
This patch fixes a problem where the course and user reports, when viewed by
a student, were incorrectly including hidden grade items in the course totals,
making the percentages lower than they should be.
2016-01-04 17:53:06 +08:00
Juan Segarra Montesinos 6349d1e062 MDL-52258 calendar: show event duration on block
Add class .duration_finish to days when an event with duration
finishes. Removes the .muted class from weekend days. Adds
$daytime for the popup title. Tests duyrationbyday too in order
to report no events for a day. Adds endtime suffix to the finish
date of an event with duration.
2016-01-04 09:40:13 +01:00
Nadav Kavalerchik 6ca6d623b0 MDL-52625 Badges: Right align manage badges table content, in RTL mode. 2016-01-04 09:26:44 +02:00
Nadav Kavalerchik 015275569f MDL-52614 Workshop: Right align user's picture on Assessed submission. 2016-01-04 08:12:20 +02:00
Andrew Nicols 23079c2941 Merge branch 'MDL-49566_master' of git://github.com/markn86/moodle 2016-01-04 13:53:40 +08:00
Dan Poltawski 835ca0419b MDL-52552 course management: insufficient cleaning of search output 2016-01-04 10:13:58 +08:00
Andrew Nicols aabb46e9ac Merge branch 'MDL-51445_m31v1' of https://github.com/sbourget/moodle 2016-01-04 09:20:31 +08:00
Ben Kelada 14ebc39645 MDL-52576 forum: fix user profile picture in external service 2016-01-04 11:36:12 +11:00
Stephen Bourget 21ee092061 MDL-50916 Lesson: Behat test for complete report 2016-01-03 14:55:38 -05:00
Stephen Bourget 764c4fbcba MDL-50916 Lesson: Fix information on complete report 2016-01-03 14:44:59 -05:00
AMOS bot a731f98286 Automatically generated installer lang files 2016-01-04 00:04:16 +08:00
Stephen Bourget 2b65892939 MDL-52643 block_blog_menu: Add behat tests 2016-01-02 16:01:46 -05:00
Stephen Bourget fd027cd146 MDL-52638 activity_results: Improve Behat tests 2016-01-01 18:54:45 -05:00
Stephen Bourget 22b0838538 MDL-48985 Lesson: Remove obsolete reformat.php file 2015-12-31 22:33:03 -05:00
Juan Leyva 06d58e6e67 MDL-49231 mod_glossary: Fix SQL queries for Oracle 2015-12-31 15:18:41 +01:00
Juan Leyva baf25486b4 MDL-49231 mod_glossary: Fix tests for Postgres (ordering) 2015-12-31 15:18:41 +01:00
Frederic Massart a4d9adcb47 MDL-49231 mod_glossary: Minor coding style improvements 2015-12-31 15:18:40 +01:00
Frederic Massart a58a792ba6 MDL-49231 mod_glossary: Ensure consistent order when pagination is used 2015-12-31 15:18:40 +01:00
Frederic Massart bca824f7a8 MDL-49231 mod_glossary: Update service definition 2015-12-31 15:18:40 +01:00
Frederic Massart c242e3f4dd MDL-49231 mod_glossary: External function get_entries_to_approve 2015-12-31 15:18:40 +01:00
Frederic Massart 70d20d0893 MDL-49231 mod_glossary: Update view and print to use new lib functions 2015-12-31 15:18:39 +01:00
Frederic Massart 93e122e0dc MDL-49231 mod_glossary: External function get_entries_by_term 2015-12-31 15:18:39 +01:00
Frederic Massart 08d7954f8f MDL-49231 mod_glossary: External function get_entry_by_id 2015-12-31 15:18:39 +01:00
Frederic Massart 24777f7a07 MDL-49231 mod_glossary: External function get_entries_by_search 2015-12-31 15:18:39 +01:00
Frederic Massart 8382bb4eb3 MDL-49231 mod_glossary: Moving DB queries to glossary lib 2015-12-31 15:18:38 +01:00
Frederic Massart 3bb1585270 MDL-49231 mod_glossary: Use a query builder to avoid code duplication 2015-12-31 15:18:38 +01:00
Frederic Massart 21e30022b2 MDL-49231 mod_glossary: Adding a method to validate a glossary by ID 2015-12-31 15:18:38 +01:00
Frederic Massart e70f58cdc3 MDL-49231 mod_glossary: External function get_entries_by_author_id 2015-12-31 15:18:38 +01:00
Frederic Massart f7d9cd23c7 MDL-49231 mod_glossary: External function get_entries_by_author 2015-12-31 15:18:37 +01:00
Frederic Massart 06c8bd2244 MDL-49231 mod_glossary: External function get_authors 2015-12-31 15:18:37 +01:00
Frederic Massart 9cafa794c4 MDL-49231 mod_glossary: External function get_entries_by_category 2015-12-31 15:18:37 +01:00
Frederic Massart efb7a0a9b0 MDL-49231 mod_glossary: External function get_categories 2015-12-31 15:18:37 +01:00
Frederic Massart 6a273d5a5d MDL-49231 mod_glossary: External function get_entries_by_date 2015-12-31 15:18:37 +01:00
Frederic Massart fe11f9a4f6 MDL-49231 mod_glossary: External function get_entries_by_letter 2015-12-31 15:18:36 +01:00
Frederic Massart 61fce28459 MDL-49231 mod_glossary: External function view_entry 2015-12-31 15:18:36 +01:00
Frederic Massart d0d4372ce7 MDL-49231 mod_glossary: External function view_glossary 2015-12-31 15:18:13 +01:00
Dan Poltawski ef343c3299 weekly release 3.1dev 2015-12-31 08:16:35 +00:00
Dan Poltawski 8af9cb76e2 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-12-31 08:16:31 +00:00
David Monllao d6024b8493 Merge branch 'MDL-52347_master-fix' of git://github.com/dmonllao/moodle 2015-12-31 13:20:40 +08:00
AMOS bot b6336adb4b Automatically generated installer lang files 2015-12-31 00:03:52 +08:00
Dan Poltawski d60ae73236 MDL-38020 behat: for enrollment management from participants page 2015-12-30 15:25:31 +00:00
Dan Poltawski 7057c3efa9 MDL-38020 participants: Use consistent link for editing enrollments
Previously the role assignment url was used when a role was selected, but
this page doesn't enrol users into the course (its the old 1.9 way
before we had the enrollments table).
2015-12-30 14:53:26 +00:00
Dan Poltawski 949c27a026 MDL-27840 course: prevent warnings on half-uninstall mod 2015-12-30 14:12:54 +00:00
Dan Poltawski 53a2405c9c MDL-50357 groups: remove pointless option of groups_delete_group_members 2015-12-30 09:19:22 +00:00
Dan Poltawski 38c67d21e0 Merge branch 'MDL-50357_master' of git://github.com/markn86/moodle 2015-12-30 09:19:17 +00:00
Juan Leyva 7f28e8a58f MDL-51123 mod_scorm: Do not display SCO with invisible = false 2015-12-30 09:52:33 +01:00
David Monllao 19a1973a9a MDL-52347 format_social: Replicate wait between new discussions 2015-12-30 14:47:45 +08:00
Mark Nelson 04503c5cde MDL-50357 core_group: tidy up the function groups_delete_group_members 2015-12-30 09:27:05 +08:00
AMOS bot 0fd0e88127 Automatically generated installer lang files 2015-12-30 00:03:54 +08:00
Juan Leyva 1a5f7e4cad MDL-50428 mod_scorm: Fix tests for mod_scorm_launch_sco 2015-12-29 16:36:39 +01:00
Dan Poltawski 0a7051ff5a MDL-50829 lang: fix to RTL/LTR bracket confusion
Thanks to ISHIKAWA Takayuki for the initial patch
2015-12-29 12:30:18 +00:00
Juan Leyva 7f062ebedd MDL-52459 mod_scorm: Auto-update downloaded packages 2015-12-29 12:43:25 +01:00
Michael Aherne f6b4fe38a9 MDL-52439 assign: correct get_user_submission() phpdoc 2015-12-29 10:37:14 +00:00
Dan Poltawski a3f238a120 Merge branch 'MDL-52275_master' of git://github.com/markn86/moodle 2015-12-29 10:04:42 +00:00
Mark Nelson be5e0110ff MDL-49566 core: used reflection in unit tests
Also split the tests into multiple functions for each scenario.
2015-12-29 17:42:43 +08:00
David Monllao b29c013309 Merge branch 'MDL-51889_master' of git://github.com/markn86/moodle 2015-12-29 15:35:15 +08:00
David Monllao 1c042d38ea Merge branch 'MDL-52530' of git://github.com/eugeneventer/moodle-fixes 2015-12-29 14:05:42 +08:00
David Monllao c7d394676e Merge branch 'wip-mdl-52347' of git://github.com/rajeshtaneja/moodle 2015-12-29 14:03:10 +08:00
David Monllao d077c6a4ba Merge branch 'MDL-52591-master' of git://github.com/danpoltawski/moodle 2015-12-29 13:47:06 +08:00
Mark Nelson be6fb6b1a6 MDL-51889 enrol_guest: always check password before re-enabling 2015-12-29 13:42:39 +08:00
Ankit Agarwal bef0d6b052 MDL-49566 core: Write unittests for MDL-45898 2015-12-29 11:22:42 +08:00
Ankit Agarwal d955a20926 MDL-49566 myprofile: Fix bugs in myprofilelib 2015-12-29 11:22:42 +08:00
Ankit Agarwal 59eef1a174 MDL-49566 notes: Notes link should not show up for guests 2015-12-29 11:22:42 +08:00
David Monllao 97f4eb11a5 Merge branch 'MDL-50428-master' of git://github.com/jleyva/moodle
Conflicts:
	mod/scorm/version.php
	version.php
2015-12-29 10:46:52 +08:00
David Monllao 9787b9e02f MDL-52597 mod_forum: Remove duplicated query 2015-12-29 10:03:59 +08:00
David Monllao 3d4837f915 Merge branch 'MDL-52597-master' of git://github.com/andrewnicols/moodle 2015-12-29 10:01:07 +08:00
AMOS bot 34ce176df2 Automatically generated installer lang files 2015-12-29 00:03:55 +08:00
AMOS bot f041cbe690 Automatically generated installer lang files 2015-12-28 00:04:00 +08:00
AMOS bot eba3c97445 Automatically generated installer lang files 2015-12-25 00:03:55 +08:00
Marina Glancy a4269b45bc MDL-52347 behat: fix random failures on fast computer 2015-12-24 14:14:58 +08:00
Rajesh Taneja 26b9181b1b MDL-52606 behat: Added time delay to avoid random fails
If attempts are created at same timestamp, then results are
not same, and lesson module finds that attmpt was in progress.
To avoid this problem, attempts should be created at different
timestamp.
2015-12-24 14:00:17 +08:00
Dan Poltawski afbb53d70b weekly release 3.1dev 2015-12-23 11:35:50 +00:00
Dan Poltawski 711134ee20 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-12-23 11:35:46 +00:00
Dan Poltawski c39cc37d5c Merge branch 'MDL-52595-master' of git://github.com/andrewnicols/moodle 2015-12-23 11:29:01 +00:00
Mark Nelson 5d0aa9dcfe MDL-52275 core: fixed grade-to-pass being overwritten
Thanks goes to W.J. Roes for the patch.
2015-12-23 14:31:53 +08:00
Andrew Nicols 6ec766069c MDL-52597 mod_forum: Remove sleep from tests 2015-12-23 14:24:35 +08:00
Andrew Nicols eb474609aa MDL-52595 tests: Disable xdebug for travis runs 2015-12-23 13:14:37 +08:00
Andrew Nicols 2ece61e652 Merge branch 'MDL-52355-master' of git://github.com/junpataleta/moodle 2015-12-23 10:04:51 +08:00
Jun Pataleta db9be61f20 MDL-52355 mod_data: Added Gregorian hour and minute values 2015-12-23 09:53:12 +08:00
Shamim Rezaie 4210c83d3a MDL-52355 mod_data: Make date field respect the calendar type in use
Updated the date subplugin to consider that the input date element
values might be for any calendar type and not just the Gregorian
calendar.
2015-12-23 09:53:11 +08:00
Shamim Rezaie 2c4bac4cd9 MDL-52354 select_time: Make select_time respect the set calendar type
The select_time method updated to display form elements in accordance
to the calendar type plugin that is in use.
2015-12-23 09:53:11 +08:00
Andrew Nicols 3dc5cdf543 Merge branch 'MDL-52060-master-arn' of https://github.com/andrewnicols/moodle 2015-12-23 09:08:48 +08:00
Andrew Nicols 46c18e0dd2 MDL-52060 phpunit: Add tests for test_set_table_modified_by_sql 2015-12-23 09:08:06 +08:00
Eugene Venter 8ef4fbc64f MDL-52530 unittest: more robust capability assignments for guest
for core_files_file_storage_testcase and core_repositorylib_testcase
2015-12-23 09:24:53 +13:00
Dan Poltawski a07afffcce MDL-52591 grunt: make shifter task respect --no-color 2015-12-22 18:37:27 +00:00
Eloy Lafuente (stronk7) 7814a99341 Merge branch 'MDL-49743-master' of git://github.com/danpoltawski/moodle 2015-12-22 17:14:38 +01:00
AMOS bot 008b95b248 Automatically generated installer lang files 2015-12-23 00:03:59 +08:00
Juan Leyva 2a72d9d237 MDL-52585 webservices: Return correct invalid login message 2015-12-22 16:59:24 +01:00
Juan Leyva 333e77703d MDL-52586 webservices: Return the default user home page 2015-12-22 16:50:58 +01:00
Dan Poltawski 5dc7768f7e Merge branch 'master_MDL-51916' of https://github.com/danmarsden/moodle 2015-12-22 13:17:54 +00:00
Dan Poltawski 29747350b1 Merge branch 'MDL-52365_new' of git://github.com/mkassaei/moodle 2015-12-22 13:15:02 +00:00
M Kassaei c398f6ed44 MDL-52365 qtype ddwtos & ddimageortext: 20 drag items IE11/Edge 2015-12-22 12:36:40 +00:00
Eloy Lafuente (stronk7) c38bdd62c7 Merge branch 'MDL-51719-master' of git://github.com/danpoltawski/moodle 2015-12-22 13:07:01 +01:00
Dan Poltawski 3e0540b6ec Merge branch 'wip-MDL-51239-master' of git://github.com/abgreeve/moodle 2015-12-22 11:58:28 +00:00
Dan Poltawski 40b6fbd4bf Merge branch 'MDL-52556-master' of git://github.com/jleyva/moodle 2015-12-22 11:17:11 +00:00
Dan Poltawski b687494f95 MDL-52017 enrol_self: fix incorrect empty statement
Ironically this was detected by causing a syntax error on php54
2015-12-22 09:48:56 +00:00
David Monllao ab429bfa09 Merge branch 'MDL-52017_master' of git://github.com/markn86/moodle 2015-12-22 16:36:29 +08:00
David Monllao febc314895 Merge branch 'MDL-51886-master' of git://github.com/dpalou/moodle
Conflicts:
	version.php
2015-12-22 16:28:18 +08:00
David Monllao a96bf448b8 Merge branch 'MDL-52073-master' of git://github.com/jleyva/moodle
Conflicts:
	version.php
2015-12-22 16:23:33 +08:00
Rajesh Taneja e487a51db3 MDL-52060 phpunit: Keep track of modified database for reset
Keep list of modified tables, so they can be reset
without any guess work
2015-12-22 15:37:40 +08:00
Andrew Nicols 64f4889ad1 Merge branch 'MDL-52250-master' of git://github.com/danpoltawski/moodle 2015-12-22 15:13:38 +08:00
Andrew Nicols 9d926d1f27 Merge branch 'MDL-52289-master' of git://github.com/jleyva/moodle 2015-12-22 13:51:14 +08:00
Mark Nielsen e61a9638f1 MDL-52060 phpunit: Improve get_message_processors reset 2015-12-22 13:40:39 +08:00
Mark Nielsen d494306de7 MDL-52060 phpunit: Prevent querying database metadata 2015-12-22 13:40:38 +08:00
Rajesh Taneja 22d55b3950 MDL-52060 phpunit: Check file only if needed 2015-12-22 13:19:06 +08:00
Rajesh Taneja 44121fbdc9 MDL-52060 phpunit: Keep track of initial reset sequence 2015-12-22 13:19:06 +08:00
Andrew Nicols ec68e9d530 Merge branch 'MDL-23128-master' of git://github.com/danpoltawski/moodle 2015-12-22 13:11:27 +08:00
Andrew Nicols 3390f40ab7 Merge branch 'MDL-52363' of git://github.com/mkassaei/moodle 2015-12-22 12:33:57 +08:00
David Monllao 4b6b84d677 Merge branch 'wip-mdl-52376' of git://github.com/rajeshtaneja/moodle 2015-12-22 11:24:45 +08:00
David Monllao 39604f212e Merge branch 'MDL-52558-master' of git://github.com/sammarshallou/moodle 2015-12-22 11:16:36 +08:00
Rajesh Taneja c2df9b3b90 MDL-52427 behat: Fixed question selectors
As class is changed, we need to convert selector
to check if class is contained, rather then checking
selecting with specific class.
2015-12-22 10:43:22 +08:00
Stephen Bourget bf5a27ce17 MDL-51445 Chat: Fix broken profile links 2015-12-21 20:37:54 -05:00
Andrew Nicols 8dccd20f76 Merge branch 'MDL-52334' of git://github.com/aolley/moodle 2015-12-22 08:45:30 +08:00
Dan Poltawski bf47ce5050 Merge branch 'MDL-52380-master' of git://github.com/junpataleta/moodle 2015-12-21 16:47:18 +00:00
Dan Poltawski 43fcd55e0c Merge branch 'MDL-52354-master' of git://github.com/junpataleta/moodle 2015-12-21 16:45:15 +00:00
Juan Leyva 6a03246999 MDL-52556 mod_scorm: Return SCO extra data in get_scorm_scoes 2015-12-21 15:42:58 +01:00
Dan Poltawski 2c10892c9e Merge branch 'MDL-52427' of git://github.com/timhunt/moodle 2015-12-21 13:27:38 +00:00
Dan Poltawski 77d0aaa5e3 Merge branch 'MDL-52402' of git://github.com/mr-russ/moodle 2015-12-21 12:46:20 +00:00
Dan Poltawski 07f8dd4314 Merge branch 'MDL-52399-master' of git://github.com/jleyva/moodle 2015-12-21 12:45:30 +00:00
Dan Poltawski 36381280c5 Merge branch 'MDL-52455' of git://github.com/timhunt/moodle 2015-12-21 12:43:01 +00:00
Dan Poltawski 7fe67ef4ad Merge branch 'MDL-52542' of git://github.com/timhunt/moodle 2015-12-21 11:05:40 +00:00
David Monllao 2f3ebc9bdb Merge branch 'MDL-51257-master' of git://github.com/cameron1729/moodle 2015-12-21 17:32:34 +08:00
David Monllao 355570f9e7 Merge branch 'MDL-52429-master' of git://github.com/jleyva/moodle 2015-12-21 17:16:54 +08:00
David Monllao 20b3638322 Merge branch 'MDL-49758-master' of git://github.com/StudiUM/moodle 2015-12-21 17:05:48 +08:00
Dan Poltawski 5cbc9819fd Merge branch 'MDL-52226_master-fix' of git://github.com/dmonllao/moodle 2015-12-21 08:31:55 +00:00
David Monllao a49fd98349 MDL-52226 tests: Fix behat phpunit naming conflict 2015-12-21 16:27:23 +08:00
Dani Palou c1baf89e57 MDL-51886 wiki: Add unit tests for view_wiki and view_page 2015-12-21 08:19:24 +01:00
Dani Palou 557b58b099 MDL-51886 wiki: New WS mod_wiki_view_wiki and mod_wiki_view_page 2015-12-21 08:19:24 +01:00
David Monllao f08d1590c8 Merge branch 'MDL-52226-master' of git://github.com/sammarshallou/moodle 2015-12-21 14:41:21 +08:00
Andrew Nicols 3adcec2b70 Merge branch 'master_MDL-50972' of https://github.com/danmarsden/moodle 2015-12-21 14:01:17 +08:00
Andrew Nicols 1f1894c973 Merge branch 'MDL-52457-master' of git://github.com/jleyva/moodle 2015-12-21 11:58:59 +08:00
David Monllao f447759a91 Merge branch 'MDL-47106' of git://github.com/timhunt/moodle 2015-12-21 11:32:56 +08:00
David Monllao 5303fb94ef Merge branch 'master_MDL-45712' of git://github.com/danmarsden/moodle 2015-12-21 11:14:09 +08:00
David Monllao 58920c8e53 Merge branch 'MDL-52523' of git://github.com/timhunt/moodle 2015-12-21 10:47:49 +08:00
AMOS bot 56bc2a5740 Automatically generated installer lang files 2015-12-20 00:05:04 +08:00
Michael Aherne 189875242e MDL-52560 badges: Avoid trying to add badges when disabled 2015-12-18 14:13:32 +00:00
Dan Poltawski ea3ebbf20e weekly release 3.1dev 2015-12-18 12:26:50 +00:00
Dan Poltawski 3340ff86fe Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-12-18 12:26:46 +00:00
sam marshall 92cce140ed MDL-52558 Data generator: enrol_user should allow shortname 2015-12-18 11:01:15 +00:00
Dan Poltawski 1703917824 Merge branch 'MDL-52553_master' of git://github.com/dmonllao/moodle 2015-12-18 10:51:01 +00:00
David Monllao 342f1ab28d MDL-52553 question: Adding missing required constants 2015-12-18 14:44:51 +08:00
Shamim Rezaie e83bcc1050 MDL-52380 mod_forum: Non-Gregorian dates in forum advance search
Convert the fromdate and todate date parts to Gregorian before passing them to make_timestamp
2015-12-17 18:00:57 -06:00
Shamim Rezaie 40a6393ea5 MDL-52354 select_time: Make select_time respect the set calendar type
The select_time method updated to display form elements in accordance
to the calendar type plugin that is in use.
2015-12-17 17:58:39 -06:00
Shamim Rezaie 2bb196ebe3 MDL-52354 select_time: Make select_time respect the set calendar type
The select_time method updated to display form elements in accordance
to the calendar type plugin that is in use.
2015-12-17 15:48:27 -06:00
Eloy Lafuente (stronk7) 56e6d6608a Merge branch 'wip-mdl-52540' of https://github.com/rajeshtaneja/moodle 2015-12-17 10:18:34 +01:00
Tim Hunt 3ca956b629 MDL-52542 qtype_multianswer: field names must match string placeholders 2015-12-17 08:36:08 +00:00
Rajesh Taneja c00667550b MDL-52540 behat: mouse events are not handled well with phantomjs 2015-12-17 12:05:19 +08:00
Hagey, Nathanial 3ef6e46081 MDL-45712 mod_scorm: add results column to interactions report. 2015-12-16 13:30:50 +13:00
Tim Hunt 8eef9244be MDL-52523 backup of subplugins: add missing global 2015-12-15 15:57:23 +00:00
M Kassaei c7cad17b44 MDL-52363 qtype ddimageortext: Incorrectly sized drag item 2015-12-15 11:35:46 +00:00
Marina Glancy 8638b3f144 MDL-52286 core: mute erros in adodb destructor 2015-12-15 12:36:02 +08:00
AMOS bot f75de9cd4b Automatically generated installer lang files 2015-12-15 00:03:58 +08:00
Dan Poltawski 99436d38ff Merge branch 'MDL-52451-master' of git://github.com/marinaglancy/moodle 2015-12-14 10:46:29 +00:00
Dan Poltawski 037397bf98 Merge branch 'wip-MDL-52286-master' of https://github.com/marinaglancy/moodle 2015-12-14 10:23:28 +00:00
Marina Glancy 6d9641f5b0 MDL-52286 core: corrected version of adodb to 5.20.1 2015-12-14 18:10:24 +08:00
Marina Glancy cc3048eb41 MDL-52286 core: several fixes to ADOdb 2015-12-14 18:06:22 +08:00
Dan Poltawski bca69f937c Merge branch 'MDL-52499-master' of git://github.com/marinaglancy/moodle 2015-12-14 09:44:16 +00:00
Dan Poltawski e42b60351e Merge branch 'MDL-52487_master' of git://github.com/dmonllao/moodle 2015-12-14 09:23:03 +00:00
David Monllao abc4e1efed MDL-52487 rss: PHP 7 compatible error supression
PHP5 used to update error_reporting to 0 on functions called with the
suppress errors operator (@). In PHP7 it is not updated.

Credit to Rajesh Taneja.
2015-12-14 15:28:37 +08:00
Marina Glancy 479950d431 MDL-52499 core: link to php7 documentation 2015-12-14 12:51:20 +08:00
Marina Glancy e6ee56a0e4 MDL-52451 forms: replace deprecated function 2015-12-14 12:43:03 +08:00
Dan Marsden 2e6c821d35 MDL-50972 mod_scorm: set autocommit as boolean
var currently passed as string so not evaluated correctly
2015-12-14 14:26:24 +13:00
Matthew Pruett d0b10d0da1 MDL-47106 quiz 'secure' window: Finish review link did not work 2015-12-13 22:08:36 +00:00
Amanda Doughty 692ef1010b MDL-52455 quiz: doesn't include all user fields required by messaging 2015-12-13 20:43:26 +00:00
Tim Hunt d392b13a63 MDL-52427 questions: all parts of a Q should be clearfix
Otherwise large floated images may overflow.
2015-12-13 20:27:54 +00:00
Jean-Philippe Gaudreau beb992afb4 MDL-49758 mod_quiz: Fix require on completionlib.php
Credits: Gordon Bateson
2015-12-11 13:00:04 -05:00
Dan Poltawski b12b03de85 Merge branch 'wip-MDL-52286-master' of https://github.com/marinaglancy/moodle 2015-12-11 08:57:57 +00:00
David Monllao 588da1653d Merge branch 'MDL-52472-master' of git://github.com/danpoltawski/moodle 2015-12-11 16:02:46 +08:00
David Monllao 3e702b5855 Merge branch 'MDL-52361-master' of git://github.com/marinaglancy/moodle 2015-12-11 14:49:15 +08:00
David Monllao 9e313e798f MDL-51784 general: Adding missing php4 style constructors
Adding them to warn people calling the php4 constructor.
2015-12-11 14:02:42 +08:00
Marina Glancy c4d0b752a2 MDL-51784 various: use __construct() for PHP7 compatibility 2015-12-11 12:48:24 +08:00
David Monllao 05178f0745 Merge branch 'MDL-52471-master' of git://github.com/danpoltawski/moodle 2015-12-11 11:52:02 +08:00
David Monllao 206d736006 Merge branch 'wip-MDL-52475-master' of git://github.com/marinaglancy/moodle 2015-12-11 11:23:41 +08:00
Tony Levi 144fb5e0a0 MDL-52475 core: workaround PHP7 bug #70110 with preg_match 2015-12-11 08:27:26 +08:00
Eloy Lafuente (stronk7) e04e4cddd2 MDL-52081 general: whitespace fix 2015-12-10 22:39:25 +01:00
Dan Poltawski f2f29ea2c7 MDL-52472 travis: remove mongo/memcached testing
At the moment the extensions aren't available in php7 env:
https://github.com/travis-ci/travis-ci/issues/5256

And really its probably not worth the effort/buildtime to
enable them IMO so simpler to just disable.
2015-12-10 17:35:51 +00:00
Dan Poltawski ef5df7b721 MDL-52471 tests: simplify setup code
Test code was not using the generator for simple enrollments, couldn't
help to fix when noticed.
2015-12-10 15:47:11 +00:00
Dan Poltawski 194a02e409 MDL-52471 completion: fix deprecated use of 'object'
And add a unit test covering completion_can_view_data() without
full course object passed.
2015-12-10 15:47:11 +00:00
Dan Poltawski 8440c780bd MDL-52471 quiz: remove broken code question_print_comment_fields() 2015-12-10 15:47:11 +00:00
Eloy Lafuente (stronk7) 0a57ba06cb Merge branch 'MDL-52284-master' of git://github.com/marinaglancy/moodle 2015-12-10 16:16:20 +01:00
Dan Poltawski 9708ff95fd MDL-52471 setuplib: depreciate class object properly
Previously was marked depricated but not throwwing debugging
2015-12-10 14:26:30 +00:00
Dan Poltawski 87b7314a87 MDL-52472 travis: enable php7
Relegate 5.6 runs (following the principle of highest and lowest version
only, to conserve travis resources and get faster test completions)
2015-12-10 12:41:53 +00:00
Juan Leyva 1e5241a12b MDL-52073 enrol_guest: New Web Service enrol_guest_get_instance_info 2015-12-10 12:32:30 +01:00
Dan Poltawski aa45186ad2 Merge branch 'MDL-52333_master' of git://github.com/dmonllao/moodle 2015-12-10 11:03:50 +00:00
Dan Poltawski 1bd60ff6a5 MDL-52285 auth: Add constructors for backwards compat
These are very unlikely to be used but just to be safe..
2015-12-10 10:34:29 +00:00
Juan Leyva 98fff78d00 MDL-50428 mod_scorm: New WS mod_scorm_launch_sco 2015-12-10 11:18:10 +01:00
Juan Leyva e9b1e1ccfe MDL-50428 mod_scorm: Move SCO load code to new API 2015-12-10 11:17:38 +01:00
Ryan Wyllie 4f2ff25ed1 MDL-52258 calendar: show event duration on block
Highlight the days on the calendar for the entire duration
of the event, not just the start day. The days are highlighted
with the same colour as the starting day and will also show
the event popup on hover.
2015-12-10 11:17:25 +01:00
Dan Poltawski a9efb3b7d0 Merge branch 'wip-MDL-52285-master' of git://github.com/marinaglancy/moodle 2015-12-10 10:13:40 +00:00
David Monllao 0f86739482 Merge branch 'MDL-52336-master' of git://github.com/marinaglancy/moodle 2015-12-10 17:38:15 +08:00
David Monllao ea2707f9dc Merge branch 'wip-MDL-52081-master' of git://github.com/marinaglancy/moodle 2015-12-10 17:15:10 +08:00
David Monllao e574148c50 MDL-52333: qtype_calculated: Adding division by zero test 2015-12-10 16:38:57 +08:00
Tony Levi c6f9107029 MDL-52333 qtype: PHP7-compatibility in calculate_raw()
Code also modified by Tim Hunt
2015-12-10 16:38:57 +08:00
David Monllao a4fb992435 Merge branch 'MDL-52335-master' of git://github.com/marinaglancy/moodle 2015-12-10 15:47:14 +08:00
David Monllao 1b42ef0e99 Merge branch 'MDL-52438-master' of git://github.com/marinaglancy/moodle 2015-12-10 15:31:29 +08:00
David Monllao 948882eb5d Merge branch 'MDL-52312_master' of git://github.com/markn86/moodle 2015-12-10 13:56:08 +08:00
Marina Glancy 4a89e83b80 MDL-52285 auth: use __construct() for constructors 2015-12-10 13:40:42 +08:00
Marina Glancy 32fada5cb2 MDL-52081 forms: indicate usage of grandparent constructor 2015-12-10 13:38:04 +08:00
Marina Glancy 1a0df5535e MDL-52081 forms: Use __construct() for constructors 2015-12-10 13:38:01 +08:00
Marina Glancy 1766e6a17f MDL-52284 core: PHP7 engine errors have type Throwable 2015-12-10 10:49:37 +08:00
Tony Levi d74b7e424f MDL-52284 core: compatibility with Exception/Throwable changes in PHP7 2015-12-10 10:49:36 +08:00
Juan Leyva 4f3d1b0ec6 MDL-52457 mod_scorm: Fix return types definitions in SCORM WS
Incorrect return types definitions in external function
mod_scorm_external::get_scorm_by_courses (hidetoc, displayattemptstatus
and skipview)
2015-12-09 14:02:37 +01:00
sam marshall 6d4858d5b3 MDL-52226 Forms: max_input_vars problems with advanced checkbox 2015-12-09 12:15:45 +00:00
Dan Poltawski 0dfcc2541a weekly release 3.1dev 2015-12-09 12:09:28 +00:00
Dan Poltawski 103bd4c96c Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-12-09 12:09:26 +00:00
Dan Poltawski 633e2643ec MDL-52209 webservice: upgrade.txt tweak 2015-12-09 09:45:13 +00:00
Jun Pataleta 638f751a07 MDL-52209 webservice_xmlrpc: Remove Zend from webservice_xmlrpc
Additional fixes.
2015-12-09 09:42:24 +00:00
David Monllao 8573e526ff MDL-51698 user: Adapting behat test
Using the generic .breadcrumb-nav like in edit_tag.feature as the elements
on it are quite generic and there is no much chance of future conflicts.
2015-12-09 13:22:38 +08:00
Eloy Lafuente (stronk7) 7955476cab Merge branch 'MDL-51483_master' of https://github.com/jinhofer/moodle 2015-12-09 01:09:08 +01:00
Eloy Lafuente (stronk7) b5c73e6f42 MDL-51698 upgrade: bump version to newer than rewritten one
Some integration.git based sites can have 2015120801 version,
now rewritten. This commit ensures everybody goes forward to
2015120803.
2015-12-09 00:51:40 +01:00
Brendan Heywood d7238be174 MDL-51698 navigationlib: Add crumb trail meta data 2015-12-09 00:50:16 +01:00
Adam Olley 6c9b6685de MDL-52334 enrol_database: Add missing filter to user_enrolment lookup
Without the user filter, the left join to the user enrolment table
results in a much larger set of data being returned than before
MDL-28420. Which makes login time for users in many busy courses much
worse than before (3x worse on average, observed upto 40x).
2015-12-09 09:25:09 +10:30
Dan Poltawski c3c5e30930 Merge branch 'MDL-51097_m31v1' of https://github.com/sbourget/moodle 2015-12-08 10:34:44 +00:00
Dan Poltawski c8d8a09369 Merge branch 'MDL-51411' of https://github.com/andrewhancox/moodle 2015-12-08 09:05:45 +00:00
Dan Poltawski c7bba4e5af Merge branch 'MDL-52165-master' of git://github.com/jleyva/moodle 2015-12-08 08:51:34 +00:00
Adrian Greeve f0899a2560 MDL-51239 blog: Coding style fixes. 2015-12-08 13:28:17 +08:00
Marina Glancy 10eb44f7e6 MDL-52438 core: allow Moodle 3.0 to be used with PHP7 2015-12-08 12:54:32 +08:00
Marina Glancy 19ad1ce44c MDL-52361 core: patch Horde library for PHP7 compatibility 2015-12-08 12:47:15 +08:00
Marina Glancy ace059fd4c MDL-52336 core: patch PHPExcel for PHP7 compatibility 2015-12-08 12:13:48 +08:00
Marina Glancy 73bb7c0990 MDL-52286 core: update ADODB library to 5.21 2015-12-08 11:52:40 +08:00
David Monllao 3f2c229b53 Merge branch 'MDL-50550-master' of git://github.com/dpalou/moodle
Conflicts:
	lib/db/services.php
	version.php
2015-12-08 11:32:39 +08:00
Dan Poltawski bbd3156049 Merge branch 'wip-MDL-52193-master' of https://github.com/marinaglancy/moodle 2015-12-07 15:36:55 +00:00
Dan Poltawski de6e67940f Merge branch 'MDL-52209-master' of git://github.com/junpataleta/moodle 2015-12-07 15:04:40 +00:00
Juan Leyva a6c11677a8 MDL-52429 mod_scorm: Fix SCORM completion checking in nested SCOs 2015-12-07 11:28:22 +01:00
Mark Nelson c319e44954 MDL-52312 assignfeedback_editpdf: changes to files after FPDI update
1) Change the fpdi_bridge class so that it extends the pdf class,
rather than the TCPDF class.
2) Updated the editpdf/fpdi/readme_moodle.txt file to document the changes.
3) Updated the editpdf/thirdpartylibs.xml to reflect the update to the
FPDI library.
2015-12-07 17:39:30 +08:00
Dan Poltawski 6c0bf99b5b Merge branch 'MDL-50258_master' of git://github.com/dmonllao/moodle 2015-12-07 09:04:35 +00:00
David Monllao 0575c5ad8c Merge branch 'MDL-52204-master' of git://github.com/danpoltawski/moodle 2015-12-07 16:30:38 +08:00
Dan Poltawski f20abd8759 Merge branch 'MDL-52304_master' of https://github.com/dmonllao/moodle 2015-12-07 08:20:10 +00:00
Dan Poltawski 8f4662a807 MDL-52271 install: don't allow installer to be indexed
Following guidance from:
https://support.google.com/webmasters/answer/93710?hl=en
2015-12-07 15:42:11 +08:00
David Monllao 7e092a97d7 Merge branch 'MDL-52370-master' of git://github.com/danpoltawski/moodle 2015-12-07 15:01:42 +08:00
David Monllao 2ceaa5752f Merge branch 'MDL-50540-master' of git://github.com/FMCorz/moodle 2015-12-07 14:41:20 +08:00
Frederic Massart bf5bbe0127 MDL-50540 mod_glossary: Final clean up of new external function 2015-12-07 13:42:37 +08:00
Costantino Cito 8e09010f39 MDL-50540 glossary: Unit test for mod_glossary_get_glossaries_by_courses 2015-12-07 12:48:28 +08:00
Costantino Cito 23da998fad MDL-50540 glossary: New WS mod_glossary_get_glossaries_by_courses 2015-12-07 12:48:27 +08:00
Mark Nelson f970013b16 MDL-52312 assignfeedback_editpdf: updated the FPDI libary to 1.6.1 2015-12-07 10:57:51 +08:00
Russell Smith b73aed311e MDL-52402 backup, quiz: Fix attempt token and add missing rule. 2015-12-05 10:08:07 +11:00
Russell Smith eb8c0cb163 MDL-52402 backup: Improve debugging output on failed log restores 2015-12-05 10:08:06 +11:00
Dan Poltawski 4ee10fec43 MDL-51582 readme: update less building instructions
I forgot to update this after the changes in 65d070a
2015-12-04 16:40:21 +00:00
Eloy Lafuente (stronk7) 0bec64c913 Merge branch 'MDL-51582-master' of git://github.com/danpoltawski/moodle 2015-12-04 17:15:13 +01:00
AMOS bot a43fdc463b Automatically generated installer lang files 2015-12-05 00:04:20 +08:00
Dan Poltawski f8de8c7147 MDL-52250 npm: shrinkwrap to lock down dependencies
We've tried various approaches to lock down our dependencies and they
have been flawed because dependencies in our included packages may not
be locked down and previous attempts to do that have not been correct.

With npm shrinkwrap we lock down versions so that any npm install will
always install the exact same versions for all developers - see:
https://docs.npmjs.com/cli/shrinkwrap

(This is a lot like composer.lock for those more fluent with composer)
2015-12-04 15:10:59 +00:00
Dan Poltawski 302a3c5f7d MDL-52250 npm: remove uglify-js dependency/bump grunt-contrib-uglify
A) Remove direct dependency on uglify-js:

This dependency was added in MDL-50277, but it isn't quite correct, the
way npm installs dependencies means that grunt-contrib-uglify *could* use
'our' version if its satisifed. But does not *always* and especially does
not if the grunt-contrib-uglify requirement is higher than ours.

Long story short, in many cases this means that this is used:
 node_modules/grunt-contrib-uglify/node_modules/uglify-js
But this is not:
  node_modules/uglify-js

In MDL-50277 we thought we were making the version sticky, but in
reality we were just fixing previous problems by updating
grunt-contrib-uglify to a version which fixed a bug:

 https://github.com/gruntjs/grunt-contrib-uglify/issues/313

It seems the better solution will come with using npm shrinkwrap to lock
down depdencies.

B) Bump grunt-contrib-uglify to 0.11.0

This moves us to uglify-js ~2.6.0 - which doens't change any output
files.
2015-12-04 15:07:47 +00:00
Juan Leyva 04cd8ae3c0 MDL-52165 mod_forum: New Web Service mod_forum_can_add_discussion 2015-12-04 15:30:16 +01:00
Jun Pataleta 0af5593122 MDL-52209 webservice_xmlrpc: Remove Zend from webservice_xmlrpc 2015-12-04 07:56:31 -06:00
Dani Palou 4a5acec2b7 MDL-50550 wiki: Added unit tests for mod_wiki_get_wikis_by_courses 2015-12-04 13:52:41 +01:00
Dani Palou 23cbaefb24 MDL-50550 wiki: New WS mod_wiki_get_wikis_by_courses 2015-12-04 13:52:41 +01:00
Dan Poltawski e90eb13a6b MDL-52204 grunt: update to grunt-contrib-jshint v0.11.3
This version of grunt-contrib-jshint itself uses a better fixed
requirement on "~2.8.0" rather than "^2.8.0" which was giving variable
results with some people updating to 2.9-rc1.

See also https://github.com/gruntjs/grunt-contrib-jshint/pull/219
2015-12-04 11:43:30 +00:00
Dan Poltawski f992dcf6e8 MDL-52204 js: fix 'used before defined' errors
Newer versions of jshint detect this coding error, we fix it
by simply reordering the definition of methods.
2015-12-04 11:43:10 +00:00
Dan Poltawski 65d070aec8 MDL-51582 grunt: task improvements
* Introduce the 'css' task - this will give us flexibility to do things
  in future rather than relying on the inbuilt 'less' task (e.g. sourcemap
  generating task which doesn't run by default)

* Introduce 'amd' task which runs only amd tasks

* Introduce 'js' task which runs all JS (amd/shifter) tasks

* Tweak the ordering so that slow shifter always runs last (useful for
  people like me who forget to specif the task)
2015-12-04 10:37:09 +00:00
Dan Poltawski 868e35a058 MDL-51582 css: built with new grunt task 2015-12-04 10:37:09 +00:00
Dan Poltawski a4a52e565e MDL-51582 grunt: add less complilation support
Previously we were using recess to build bootstrap base as it was what
was used by the original project. But recess is no longer maintained.

Now we use grunt for building js, it makes sense to use it for less too.

(If you really don't want to use grunt, you almost certainly can just
use lessc -x as it uses the same less.js on backend).
2015-12-04 10:36:45 +00:00
Michael Aherne 27635149d5 MDL-52304 media: Allow full screen in Flash player 2015-12-04 10:06:14 +08:00
David Monllao a75f1dbc4f MDL-50258 themes: Fix CSS source maps 2015-12-04 09:02:16 +08:00
Ben Kelada 288c8cb7f1 MDL-52261 filelib: Do login check for files in blocks 2015-12-04 11:00:05 +11:00
Andrew Davis 0e32a56591 MDL-51239 core_blog: coding style fixes 2015-12-04 05:42:40 +08:00
Eloy Lafuente (stronk7) ea5c18dfce weekly release 3.1dev 2015-12-03 19:40:42 +01:00
Eloy Lafuente (stronk7) 75cb235699 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-12-03 19:40:33 +01:00
Eloy Lafuente (stronk7) 8827b67aeb MDL-52141 backup: test restore_log_rule don't modify passed log anymore 2015-12-03 18:52:26 +01:00
Eloy Lafuente (stronk7) ef53650e8a NOBUG: Fixup commit to fix stuff wrongly changed on merge commits
On rewriting MDL-47491, we ended in a situation where these
modifications had been incorporated via merge commits. And kept
undetected by rebase -ip.

In general, please, use merge commits only for solving conflicts,
never as a replacement for fixup commits. To fix non-conflicting
things, add new, proper, fixup commits.
2015-12-03 18:52:25 +01:00
David Monllao f2304bfb81 Merge branch 'MDL-48004-master' of git://github.com/danpoltawski/moodle 2015-12-03 18:52:24 +01:00
Dan Poltawski 53907dbee5 Merge branch 'MDL-51700-master' of git://github.com/FMCorz/moodle 2015-12-03 18:52:21 +01:00
Dan Poltawski ed0c32da08 Merge branch 'MDL-48451-behat-tests' of github.com:ryanwyllie/moodle 2015-12-03 18:51:47 +01:00
Ryan Wyllie 360c7917f6 MDL-48451 report_outline: additional behat coverage 2015-12-03 18:51:46 +01:00
David Monllao 200ab5266a Merge branch 'MDL-50269_master' of git://github.com/markn86/moodle
Conflicts:
	lib/upgrade.txt
2015-12-03 18:51:42 +01:00
Andrew Nicols 6e8e992d37 Merge branch 'wip-mdl-52357' of https://github.com/rajeshtaneja/moodle 2015-12-03 18:50:03 +01:00
David Monllao 76bcec2cb1 Merge branch 'MDL-50710-master' of git://github.com/marinaglancy/moodle 2015-12-03 18:50:02 +01:00
David Monllao 935b954b5b Merge branch 'MDL-46350-master' of git://github.com/danpoltawski/moodle 2015-12-03 18:50:01 +01:00
AMOS bot 8e3c608698 Automatically generated installer lang files 2015-12-04 00:04:11 +08:00
jinhofer 4ebdd15487 MDL-51483 lib/moodlelib.php: Added conditional checks to shorten_text 2015-12-03 10:00:08 -06:00
Juan Leyva bc7b1a3d4d MDL-52399 webservice: Add core_notes_delete_notes to the mobile service 2015-12-03 13:02:56 +01:00
Mark Nelson d950ba1b3c MDL-52017 enrol_self: always check password before re-enabling 2015-12-03 19:26:22 +08:00
Eloy Lafuente (stronk7) b4153ff09d Merge branch 'wip-MDL-51985-master' of https://github.com/marinaglancy/moodle 2015-12-03 11:16:34 +01:00
David Monllao 38e0faafc2 Merge branch 'MDL-52260-master-2' of git://github.com/xow/moodle 2015-12-03 11:16:33 +01:00
Eloy Lafuente (stronk7) 40cd9f9ac9 Merge branch 'MDL-45364-master' of git://github.com/danpoltawski/moodle 2015-12-03 11:16:33 +01:00
Dan Poltawski b80ede13a6 MDL-51664 externalib: clarify crucial comment 2015-12-03 11:16:32 +01:00
Dan Poltawski 50901a53bc Merge branch 'MDL-51664-master' of git://github.com/FMCorz/moodle 2015-12-03 11:16:30 +01:00
Dan Poltawski 551088fcd7 MDL-52292 testing: block generator fix
Stop errors when no $options supplied
2015-12-03 11:13:28 +01:00
Dan Poltawski 16c361d9d1 MDL-48451 report_outline: add basic coverage of distinct users 2015-12-03 11:13:27 +01:00
Dan Poltawski b56a046175 Merge branch 'MDL-48451' of https://github.com/andrewhancox/moodle 2015-12-03 11:13:26 +01:00
Dan Poltawski 0ad66dda0e Merge branch 'MDL-52292' of git://github.com/timhunt/moodle 2015-12-03 11:13:26 +01:00
Dan Poltawski fc3c595d51 MDL-26935 behat: add coverage for role renaming in course 2015-12-03 11:13:25 +01:00
Eloy Lafuente (stronk7) 7828bb972e Merge branch 'MDL-26935' of https://github.com/andrewhancox/moodle 2015-12-03 11:13:07 +01:00
Russell Smith a8137ec25f MDL-52141 backup: Ensure we don't alter the log record when parsing it. 2015-12-03 11:11:07 +01:00
Dan Poltawski b7f54e5c79 Merge branch 'MDL-51706_master' of https://github.com/jinhofer/moodle 2015-12-03 11:11:06 +01:00
Dan Poltawski 8e9dc75e6c Merge branch 'MDL-37308-master' of git://github.com/junpataleta/moodle 2015-12-03 11:11:06 +01:00
Oleg Sychev 87b2ed6c1f MDL-51746 accesslib: Describe instanceid in context_something::instance
With no PHPDocs and $instanceid as name some module developers confuse
context_module::instance argument to be instanceid of the module while
it actually should be cmid.
2015-12-03 11:11:05 +01:00
David Monllao 0ee52b8214 Merge branch 'MDL-51830-master' of git://github.com/lucisgit/moodle 2015-12-03 11:11:04 +01:00
Dan Poltawski 3c2f70aeb6 Merge branch 'master_MDL-51757' of git://github.com/danmarsden/moodle 2015-12-03 11:11:04 +01:00
Dan Poltawski c20577b9f2 Merge branch 'MDL-51925-master' of git://github.com/jleyva/moodle 2015-12-03 11:11:03 +01:00
David Monllao 00419a7a0b Merge branch 'MDL-52237-master' of git://github.com/StudiUM/moodle 2015-12-03 11:11:02 +01:00
Rajesh Taneja 8509c4700b MDL-52376 behat: Add 1 sec delay to ensure cron works
course completion record should be created at time
which is before the time cron is run. On fast machine
this both might be done at same time. So added 1 sec delay
2015-12-03 13:17:03 +08:00
Cameron Ball ea3aa9f9a0 MDL-51257 messages: Improve message form.
- Add sudmit button
- Add formchangechecker
- Update behat tests
2015-12-03 10:20:55 +08:00
Marina Glancy 83bef8dabb MDL-52335 tool_uploaduser: php7 compatibility in variable syntax 2015-12-03 09:31:25 +08:00
Marina Glancy 67efc377f4 MDL-52335 mod_data: php7 compatibility in variable syntax 2015-12-03 09:31:25 +08:00
Marina Glancy ccfd168a6d MDL-52335 mod_lti: php7 compatibility in variable syntax 2015-12-03 09:31:20 +08:00
Marina Glancy f9ba07133a MDL-52335 core: php7 compatibility in XMPP library 2015-12-02 14:00:58 +08:00
Frederic Massart 4879477632 MDL-51700 ajax: Clean the external function return values 2015-12-02 10:30:01 +08:00
Tim Hunt eb3884e48f MDL-52292 block testing generators: improve the API
* Refactor the block generator base class, to remove the amount
  of duplication required in base classes.

* Change the defaults that are filled in to be a little more natural.

* Make the Behat step 'Given the following "block" exist:' work.
2015-12-01 13:48:08 +00:00
Dan Poltawski 8f2c99d610 MDL-52370 role: purge coursecontacts when role is edited
This is perhaps a bit more brutal purge than you'd like, but it only
affects coursecat role edits.
2015-12-01 13:14:14 +00:00
Dan Poltawski 29d4cc656f MDL-52370 course: purge contacts cache on role rename
Previously teachers would rename roles and the change would not be
reflected in course listings.
2015-12-01 12:44:34 +00:00
Rajesh Taneja 0049d2591b MDL-52357 behat: add 2 sec delay to ensure window is stable 2015-12-01 15:45:05 +08:00
Ankit Agarwal c917b53a8d MDL-50269 deprecations: Properly deprecate notify() 2015-12-01 15:29:33 +08:00
Eloy Lafuente (stronk7) e070165f57 Merge branch 'MDL-52219-master' of git://github.com/danpoltawski/moodle 2015-12-01 00:50:10 +01:00
Eloy Lafuente (stronk7) 71a2aaabd4 Merge branch 'MDL-44598_master' of https://github.com/jonof/moodle 2015-11-30 23:52:45 +01:00
Dan Poltawski 20232ed9a9 Merge branch 'MDL-52013-m' of https://github.com/micaherne/moodle 2015-11-30 15:42:58 +00:00
Dan Poltawski 92efb347b0 Merge branch 'MDL-52074-master' of git://github.com/jleyva/moodle 2015-11-30 15:29:29 +00:00
Dan Poltawski ca593e5f69 Merge branch 'MDL-52108-master' of git://github.com/jleyva/moodle 2015-11-30 15:25:22 +00:00
Dan Poltawski df64cfa624 Merge branch 'MDL-50661_master' of git://github.com/dmonllao/moodle 2015-11-30 13:50:22 +00:00
Dan Poltawski 8fea53a0b1 Merge branch 'MDL-51718-set-scheme' of https://github.com/brendanheywood/moodle 2015-11-30 13:37:47 +00:00
Dan Poltawski 1db15fe9a7 Merge branch 'MDL-52042-master' of git://github.com/ryanwyllie/moodle 2015-11-30 13:20:35 +00:00
Dan Poltawski c2c97208f1 Merge branch 'MDL-51900_master' of https://github.com/jinhofer/moodle 2015-11-30 12:23:09 +00:00
Dan Poltawski 88f50b3551 Merge branch 'MDL-52283-master' of git://github.com/marinaglancy/moodle 2015-11-30 11:27:52 +00:00
Dan Poltawski 8ffdb1309c Merge branch 'MDL-52332-master' of git://github.com/marinaglancy/moodle 2015-11-30 10:23:07 +00:00
David Monllao 58fe694167 Merge branch 'MDL-51204_lang_coding_style' of git://github.com/andyjdavis/moodle
Conflicts:
	lang/en/deprecated.txt
	lang/en/grades.php
2015-11-30 15:52:46 +08:00
David Monllao c256bac879 Merge branch 'MDL-35982-master' of git://github.com/danpoltawski/moodle 2015-11-30 15:45:44 +08:00
Marina Glancy 49f3c89324 MDL-52332 calendar: load settings using API 2015-11-30 11:36:50 +08:00
Rajesh Taneja 096b98ba34 MDL-52279 core_lib: Remove php4 style constructor
filterobject is called from core and as it's
using php4 style constructor, global USER is
not set properly because of deprecation warning
2015-11-30 11:25:55 +08:00
Jun Pataleta a33e5debe9 MDL-37308 files: Additional fixes for transparency
Fixed transparency support when resizing and when not resizing.
2015-11-29 20:28:19 -06:00
Jetha Chan 623c947f2b MDL-37308 files: support transparency when not resizing; new unit test 2015-11-29 20:28:19 -06:00
Adrian Greeve e245843193 MDL-37308 files: convert_image() now supports transparency. 2015-11-29 20:28:18 -06:00
Marina Glancy f7ff14a1be MDL-50710 block_glossary_random: more precise sorting 2015-11-30 09:16:28 +08:00
David Monllao 52d57db5c3 MDL-50661 theme_more: New small logo setting
Adding required bits so theme_more can also set a small logo.
2015-11-30 09:14:22 +08:00
David Monllao c08b52aa74 MDL-50661 theme_clean: New small logo setting
Introduces new settings to set a small logo in the navbar next
to the site name on pages where the logo is not displayed.
2015-11-30 09:14:20 +08:00
jinhofer c8b276a851 MDL-51900 grade/report/singleview: Added ctrl+arrow navigation
Also, added functionality for tab to traverse down the columns and
shift+tab to traverse up the columns.
2015-11-27 11:15:22 -06:00
jinhofer fbbb33a20e MDL-51706 mod/assign: Moved plagiarism links to top of online text 2015-11-27 11:13:56 -06:00
jinhofer acf9e30086 MDL-51693 mod/assign: Added plagiarism links to full text 2015-11-27 11:13:47 -06:00
AMOS bot 22872a3475 Automatically generated installer lang files 2015-11-28 00:04:27 +08:00
Dan Poltawski e746afacef MDL-51719 atto_rtl: RTL/LTR buttons now indicate state
Previously the RTL buttons did not indiciate wether RTL or LTR was
selected. Thanks to Andrew Nicols for guiding how to do this.
2015-11-27 14:03:53 +00:00
Dan Marsden bba1a4a6e3 MDL-51916 mod_scorm: allow html5 scorm content fullscreen 2015-11-27 21:27:38 +13:00
John Okely 956caef6ad MDL-52260 user: Fix error when saving profile with locked field 2015-11-27 10:55:28 +08:00
Tony Levi 79d4558a58 MDL-52283 core: password_hash() deprecation in PHP7 2015-11-27 09:12:20 +08:00
Dan Poltawski 17fda969ff MDL-45364 ddimageortext: refine naming & docs of new methods 2015-11-26 19:48:44 +00:00
Andrew Nicols 2ccb8d006a MDL-45364 qtype_ddimageortext: Fix JS Lint issues 2015-11-26 19:09:29 +00:00
Andrew Nicols b27d4eac7f MDL-45364 atto_rtl: Fix JS lint 2015-11-26 19:09:03 +00:00
Dan Poltawski 5aeba19926 MDL-48004 question: remove buggy arg of question_edit_setup
There are no uses of this in core and it does not make sense
2015-11-26 15:04:10 +00:00
Dan Poltawski 4dc29f5e8d MDL-48004 question: prevent notices on import screen
If query params were not passed the page would previously display debug
notices as setting the $requirecourseid param to question_edit_setup()
was buggy.
2015-11-26 15:02:36 +00:00
Michael Aherne 72797e6845 MDL-52013 assign: Allow subplugins to add calendar events 2015-11-26 14:28:53 +00:00
Dan Poltawski 3e0f5665cf MDL-35982 behat: delete blog entry coverage 2015-11-26 14:10:25 +00:00
Dan Poltawski 366f05f323 MDL-35982 blog: improve the delete entry confirmation string
So that there is more context about what is being deleted.
2015-11-26 14:10:25 +00:00
Dan Poltawski bf12b089e6 MDL-35982 blog: reorder blog delete confirmation
Improves accessibility to be ordered logically in page
2015-11-26 14:10:25 +00:00
Dan Poltawski afb7ec92ff MDL-35982 blog: prevent index throwing errors with 0 courseid
Regression from MDL-49845 where Dave made the page not handle courseid = 0
and so now some urls will send you back to a db error..
2015-11-26 14:10:25 +00:00
Dan Poltawski f3f920d24f MDL-46350 blog: call parent validation
(Helps satify codechecker, thats all..)
2015-11-26 14:08:42 +00:00
Dan Poltawski 8be9cffb8b MDL-52219 phpunit: updated for new defaults
The externallib assertion was previously never being run and had a typo..
2015-11-26 14:07:17 +00:00
Dan Poltawski aa306e7bc8 MDL-52219 behat: remove steps which turn on avaibility/completion
Now its the default, we can reduce test time by relying on the default
state rather than going around turning it on
2015-11-26 14:07:17 +00:00
Dan Poltawski e354bf1e67 MDL-52219 admin: Enable completion and restricted access by default 2015-11-26 14:07:17 +00:00
David Monllao c18acb8997 weekly on-sync release 3.1dev 2015-11-26 11:02:40 +08:00
David Monllao 0e3851ddd7 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-11-26 11:02:38 +08:00
Dan Poltawski 635501581c MDL-23128 tex: silence dvips output
This was causing spewwing of lots of messages to the error log..

Thanks to Fred Woolard for the suggestion
2015-11-25 17:07:06 +00:00
AMOS bot 2d9950cfd5 Automatically generated installer lang files 2015-11-26 00:04:22 +08:00
Dan Poltawski a24abd55e0 MDL-49743 singleview: slightly clarify logic
Make it clearer what the 'unset' behaviour is because previously
we've set the default for 'empty' values twice.
2015-11-25 15:04:43 +00:00
Conn 453f69263f MDL-49743 singleview: Prevent errors when no itemid was selected
Signed-off-by: Conn <conn@cmrwarwicker.com>
2015-11-25 15:02:14 +00:00
Andrew Hancox 3390551872 MDL-51411 course: Fixed warning when deleting activity with js disabled 2015-11-25 14:42:40 +00:00
Dan Poltawski 4e1648cc34 Merge branch 'MDL-52291' of git://github.com/stronk7/moodle 2015-11-25 11:22:17 +00:00
Frederic Massart 42dcfffc4f MDL-52160 navigation: Mark category and module settings nodes as branch 2015-11-25 13:03:25 +08:00
Tony Levi 72af939f6e MDL-51757 mod_scorm: Remove duplicate function param
convert invalid break calls to exceptions for PHP 7
2015-11-25 14:06:02 +13:00
Eloy Lafuente (stronk7) e716c18fb9 MDL-52291 questions: fix upgrade from 2.5 and earlier
Because of some changes performed to the multichoice qtype
for Moodle 2.6, older sites are not able to upgrade properly.

This commits does introduce DB introspection to decide which
table and column names must be used. Nasty but enough.

Note MDL-52298 has been created about to avoid/minimize the
chances of this happening again.
2015-11-25 00:19:30 +01:00
AMOS bot 88a6b9fde3 Automatically generated installer lang files 2015-11-25 00:04:12 +08:00
Juan Leyva 2d85210817 MDL-52289 message_airnotifier: Add debugging 2015-11-24 11:21:50 +01:00
David Monllao c506af7786 Merge branch 'MDL-44330' of git://github.com/NeillM/moodle 2015-11-24 17:03:06 +08:00
David Monllao 2bc40fc889 Merge branch 'MDL-45934-master' of git://github.com/danpoltawski/moodle 2015-11-24 16:53:18 +08:00
Neill Magill 3fca693751 MDL-44330 Assign: Assignment grading may not display expected student
Before this patch it was possible for the student displayed on the grading page to
not be the student that the user selected to grade. This would occur if:

1) The user had the table ordered by a value that could be modified,
   for example Last modified (submission), Grade, Last modified (grade)
2) Another user performed an action that was recorded in Moodle in the time
   between the user generating the table and clicking on a grade link.

If a user did not notice a different user had been loaded it could result in them giving
a grade to the incorrect user.

This patch ensures that the state of the table is cached every time it is viewed by a user
who has the capability to grade.
2015-11-24 08:42:00 +00:00
Rajesh Taneja a3f22d315f MDL-50163 behat: wait to ensure elements are placed properly by js. 2015-11-24 11:16:44 +08:00
Eloy Lafuente (stronk7) 6842738157 Merge branch 'MDL-52095_master' of git://github.com/dmonllao/moodle 2015-11-23 19:29:35 +01:00
Eloy Lafuente (stronk7) 11780411c6 Merge branch 'MDL-52185-master' of git://github.com/danpoltawski/moodle 2015-11-23 19:26:57 +01:00
Jean-Philippe Gaudreau 20dde5e674 MDL-52237 navigationlib: Plugins can extend navigation user profile 2015-11-23 11:04:44 -05:00
AMOS bot 45e4f75acd Automatically generated installer lang files 2015-11-24 00:04:21 +08:00
Dan Poltawski 14248189b7 Merge branch 'wip-mdl-50163' of https://github.com/rajeshtaneja/moodle 2015-11-23 11:33:55 +00:00
Dan Poltawski 6bef09a490 Merge branch 'MDL-52166' of https://github.com/timhunt/moodle 2015-11-23 09:43:31 +00:00
David Monllao 57d4e11334 Merge branch 'MDL-52214-master-crawler' of git://github.com/mudrd8mz/moodle 2015-11-23 17:00:24 +08:00
David Mudrák ade03c067a MDL-52214 core: Fix case sensitivity in user agent comparison
The previous 2.9 implementation of is_web_crawler() used stripos() in
certain cases. The unit tests re-added in the previous commit revealed
that certain crawlers (such as BaiDuSpider) were not correctly detected
in the new refactored implementation.

It seems lesser evil and safe enough to use /i in the regex search even
though it is not 100% same logic as before - as stripos() was used in
some cases only, not always.
2015-11-23 09:44:43 +01:00
David Mudrák 182d9990f1 MDL-52214 core: Fix the is_web_crawler() regression
In MDL-50891, the is_web_crawler() was refactored into a core_useragent
method and the function itself was deprecated. However, there were no
unit tests kept to check the backwards compatible behaviour. It turned
out that the deprecated function leads to PHP fatal error due to a typo.

This patch fixes the typo and brings back the previous unit tests. To be
able to explicitly check the raised debugging message, the test case
now must be subclass of advanced_testcase.

Additionally fixes missing info about the function being deprecated.
2015-11-23 09:44:13 +01:00
David Monllao 965595d405 Merge branch 'MDL-52180-master' of git://github.com/danpoltawski/moodle 2015-11-23 16:40:26 +08:00
David Monllao dca7e05dbf Merge branch 'MDL-52086' of git://github.com/bostelm/moodle 2015-11-23 16:10:25 +08:00
David Monllao 72dd7162e1 Merge branch 'MDL-52029-31' of git://github.com/vadimonus/moodle 2015-11-23 15:42:27 +08:00
David Monllao 5269e6002d Merge branch 'MDL-52160-master' of git://github.com/FMCorz/moodle 2015-11-23 14:07:21 +08:00
David Monllao 6f77b910ee Merge branch 'MDL-49490-master' of git://github.com/danpoltawski/moodle 2015-11-23 13:56:06 +08:00
David Monllao 6a82d5d04e Merge branch 'MDL-43069-master' of git://github.com/danpoltawski/moodle 2015-11-23 13:32:35 +08:00
Dan Poltawski b58d059525 MDL-37834 assign: avoid newlines in status column of csv
Previously we were generating a CSV file with newlines in it, which
seems to cause problems importing into some versions of MS Excel.

Instead seperate status lines by '-' - this column is only used to
provide context to the teacher in the spreadsheet.
2015-11-20 18:36:30 +00:00
AMOS bot 67f357121a Automatically generated installer lang files 2015-11-21 00:04:07 +08:00
David Monllao 2af06c4cba MDL-52095 themes: Padding to the left on RTL langs 2015-11-20 10:03:38 +08:00
AMOS bot 6026e76349 Automatically generated installer lang files 2015-11-20 00:04:07 +08:00
Dan Poltawski 2b11b94c0c weekly on-sync release 3.1dev 2015-11-19 09:21:07 +00:00
Dan Poltawski c8407f0109 Merge branch 'install_master' of https://git.in.moodle.com/amosbot/moodle-install 2015-11-19 09:21:04 +00:00
Eloy Lafuente (stronk7) 65b70071ca Merge branch 'wip-MDL-52203-master' of https://github.com/marinaglancy/moodle 2015-11-19 09:45:30 +01:00
Dan Poltawski ef65a6a9c5 Merge branch 'MDL-42571_master-fix2' of git://github.com/dmonllao/moodle 2015-11-19 07:06:16 +00:00
David Monllao c181efe978 MDL-42571 editpdf: Fix search comments
They are also hidden instead of destroyed.
2015-11-19 14:59:03 +08:00
Dan Poltawski de1519002e Merge branch 'wip-MDL-52194-master' of https://github.com/marinaglancy/moodle 2015-11-19 06:47:30 +00:00
Dan Poltawski 78b2c65c0a Merge branch 'MDL-52162_master' of git://github.com/dmonllao/moodle 2015-11-19 06:33:54 +00:00
David Monllao 402f4a1f53 MDL-42571 editpdf: Fix comments search and multiple views drawing 2015-11-19 12:29:20 +08:00
Stephen Bourget 83f3ac5207 MDL-51097 Lesson: allow resume from within a cluster 2015-11-18 23:03:42 -05:00
Marina Glancy 3be59be349 MDL-52203 qtype_multianswer: avoid fatal error during upgrade 2015-11-19 11:06:48 +08:00
Henning Bostelmann 3847c105b0 MDL-52086 output renderers: show subtree only when tab is activated 2015-11-18 16:11:32 +00:00
AMOS bot 44c4d1406d Automatically generated installer lang files 2015-11-19 00:04:45 +08:00
Pavel Sokolov 4dab33b586 MDL-43069 assign: prevent JS error on grading table
Previously submission comments failed to expand if you hid
the file submissions column.
2015-11-18 15:41:42 +00:00
Dan Poltawski 65b26a461e MDL-45934 backup: do not reset completion enabled flag
The 'completion enabled' flag does not reflect any course data, its a
course setting. Previously when doing a backup deleteting existing
course content this was forced off when it should not have been.
2015-11-18 11:45:45 +00:00
Dan Poltawski a49fca44e0 MDL-49490 assign: can't export to portfolio on non-submission 2015-11-18 09:10:20 +00:00
Juan Leyva 705afe6ffc MDL-52108 core_message: Move library inclusion outside the class methods 2015-11-18 09:52:29 +01:00
Marina Glancy 228f66ad7f MDL-52194 flowplayer: do not check request
$_REQUEST variable may contain cookies in some php configurations. See also MDL-48085
2015-11-18 15:35:55 +08:00
Marina Glancy 97562c4d7c MDL-52193 questions: add missing require_once 2015-11-18 13:33:34 +08:00
David Monllao 0519a1dabb MDL-52162 question: Removing unnecessary dependency
APIs dependencies were correctly removed during MDL-38214 review although
this unnecessary require remained here.

Credit to Marina Glancy.
2015-11-18 13:16:39 +08:00
Vadim Dvorovenko 626ff7c8b8 MDL-52029 installer: Unstyled installer if display_errors is on
Error in MDL-43839 solution caused inclusion of unexistent file in
install/css.php.
2015-11-18 08:44:04 +07:00
Dan Poltawski 14c855d8cd Merge branch 'MDL-52140' of git://github.com/stronk7/moodle 2015-11-17 16:27:42 +00:00
Eloy Lafuente (stronk7) 6d29c4acdd MDL-52140 upgrade: add 3.0.0 separation line to all upgrade scripts 2015-11-17 17:08:56 +01:00
Dan Poltawski 8c9dbacd79 MDL-52185 report: remove ugly bullet points 2015-11-17 15:33:58 +00:00
Dan Poltawski 09ca2e85c6 MDL-52180 travis: remove weekly release checker
To prevent false positives
2015-11-17 09:43:04 +00:00
Juan Leyva 4bc38ba96a MDL-51925 enrol: Support ordering in get_enrolled_users WS 2015-11-17 09:49:03 +01:00
Rajesh Taneja 8f76de32d9 MDL-50163 behat: Return subcontext from session
Creating a new context with new mink context
with different session was keeping the session
and was not returning proper session information
2015-11-17 13:27:10 +08:00
rajesh Taneja 131d4ac2b0 MDL-50163 behat: Restart session after scenario with switch_window
Restart session after a scenario with switch window
is finished. This will close all open browser windows
and open a new browser window
2015-11-17 12:12:03 +08:00
David Monllao 08cc1ad828 Merge branch 'MDL-51988-master' of git://github.com/danpoltawski/moodle 2015-11-17 10:20:59 +08:00
Russell Smith bb2c0b4526 MDL-50700 gradereport_overview: Call $PAGE->set_course
To ensure correct blocks are displayed.
2015-11-17 10:01:57 +08:00
David Monllao f2b28f8130 Merge branch 'MDL-46049-master' of git://github.com/danpoltawski/moodle 2015-11-17 08:54:50 +08:00
Dan Poltawski a461fcf9db Merge branch 'MDL-52021-master-test' of git://github.com/junpataleta/moodle 2015-11-16 16:21:17 +00:00
AMOS bot b1f7f87c25 Automatically generated installer lang files 2015-11-17 00:05:09 +08:00
Tim Hunt e168e38813 MDL-52166 gradebook: overview report fails with separate groups 2015-11-16 14:37:42 +00:00
Juan Leyva 90d50ad439 MDL-52074 ws: Add enrol_self_get_instance_info to the mobile service 2015-11-16 13:16:45 +01:00
Frederic Massart 333dcd863f MDL-52160 navigation: Really remove module settings empty nodes 2015-11-16 19:46:48 +08:00
Dan Poltawski 8d5935d53b Merge branch 'MDL-52139' of git://github.com/stronk7/moodle 2015-11-16 09:28:37 +00:00
David Monllao 6bcff8abf5 Merge branch 'MDL-47065-master' of git://github.com/danpoltawski/moodle 2015-11-16 15:25:42 +08:00
David Monllao f9cccec39f Merge branch 'MDL-41643-master' of git://github.com/jojoob/moodle 2015-11-16 14:54:19 +08:00
David Monllao 53f8e45279 Merge branch 'MDL-50687-master' of git://github.com/danpoltawski/moodle 2015-11-16 14:25:48 +08:00
David Monllao fb680f7959 Merge branch 'MDL-50564-master' of git://github.com/junpataleta/moodle 2015-11-16 14:19:18 +08:00
David Monllao 09083ab0a8 Merge branch 'MDL-42571' of git://github.com/blaky/moodle
Conflicts:
	mod/assign/feedback/editpdf/version.php
2015-11-16 13:39:59 +08:00
Eloy Lafuente (stronk7) d83775b89b MDL-52139 backup: Bump release to 3.1 2015-11-16 00:39:17 +01:00
Eloy Lafuente (stronk7) 26653c8b5c weekly back-to-dev release 3.1dev 2015-11-15 23:23:46 +01:00
Eloy Lafuente (stronk7) b2e859bcbc Change travis.yml back to master 2015-11-15 18:44:56 +01:00
Johannes Burk 64b9afa6a5 MDL-41643 datafield_checkbox: Add line breaks behind checkbox options.
Add line a break behind each checkbox option in advanced search.
2015-11-14 13:48:20 +01:00
Frederic Massart 3b10fa25bc MDL-50564 atto: Require atto_menu in atto_plugin 2015-11-13 14:38:33 -06:00
Syam Mohan 77690b69f5 MDL-52021 enrollib: Removed repeated capability
'moodle/role:assign' replicated in the permission checking
2015-11-13 07:23:40 -06:00
Dan Poltawski 9680529069 MDL-50687 phpunit: error early if required locale not installed 2015-11-13 07:00:09 +00:00
Bence Laky da91de7821 MDL-42571 assignfeedback_editpdf: Fixed second PDF view 2015-11-12 14:16:17 +00:00
Ruslan Kabalin fa29c0c3d4 MDL-51830 course: Add course section deletion event. 2015-11-12 11:19:37 +00:00
Juan Leyva 419b112832 MDL-52108 messages: New WS core_message_delete_message 2015-11-12 12:05:49 +01:00
Dan Poltawski 00d70d79a4 MDL-47065 notes: prevent empty spaces added as note
(And updated behat test for this test case)
2015-11-12 09:56:56 +00:00
Jun Pataleta 2a4c236704 MDL-47065 behat: improve verificaton of lack of note 2015-11-12 09:56:56 +00:00
Dan Poltawski 142099e2a6 MDL-47065 notes: don't add blank notes
Previously the logic was wrong and was proceeding to add a note
when content was missing.

Also add behat coverage for adding notes to participants (this test is
not perfect, but better than zero coverage we had before).
2015-11-12 09:56:14 +00:00
Dan Poltawski f96f7e3bbe MDL-51988 behat: Add coverage of participation report messaging 2015-11-11 12:38:05 +00:00
Dan Poltawski 950af0b4e0 MDL-51988 behat: select a table by <th> tag 2015-11-11 12:30:35 +00:00
Dan Poltawski 1337f77b87 MDL-51988 report_particiption: do not allow messaging when disabled
Previously the option to send messages when presented regardless of the
site setting.
2015-11-11 12:30:23 +00:00
Ryan Wyllie e1db2b4112 MDL-52042 autocomplete: close suggestion box
Close the suggestion box when the input loses focus for more
than half a second.
2015-11-09 07:32:56 +00:00
Dan Poltawski 600b815279 MDL-46049 chat: update calendar times on repeating chat sessions
Previously were using the invalid chat id and the calendar entry was not
updated.

Thanks to Andy McGill who worked this out.
2015-11-05 16:02:08 +00:00
Dan Poltawski 1c2a11fcfa MDL-46049 chat: add missing closing parenthesis 2015-11-05 16:01:42 +00:00
Brendan Heywood 462065e822 MDL-51718 weblib: Allow moodle_url scheme to be set 2015-11-05 09:08:00 +11:00
Colin Campbell 7006ab3eb7 MDL-51715 lib/grade: Unit test for aggregationweight 2015-11-02 10:15:05 -06:00
Colin Campbell 70ba1f6bcb MDL-51715 lib/grade: Zero out aggregationweight for novalue and dropped
set_usedinaggregation was setting aggregationweight to zero in these
cases for non-category grades, but not for category grades.
2015-11-02 10:14:50 -06:00
Marina Glancy 58e5ab1bac MDL-51985 files: sync timemodified when possible 2015-10-30 14:46:09 +08:00
Jonathon Fowler 26670f5ee9 MDL-44598 assign: improve 'grant extension' form to show user names
Presents the first several students like the 'Set marking workflow
state' facility does, and processes the submitted ids through the
grading batch intermediary form. (For reference: MDL-42531)
2015-10-20 12:19:16 +10:00
Frederic Massart 583b02e405 MDL-51664 external: Update usage of external_util::validate_courses 2015-10-12 12:01:15 +08:00
Frederic Massart 4b11af9607 MDL-51664 external: Validate courses does not refetch prefetched courses 2015-10-12 12:01:15 +08:00
Andrew Hancox 30baca293b MDL-48451 report_outline: Added number of distinct users 2015-10-05 09:40:31 +01:00
Andrew Hancox 502336f215 MDL-26935 course: Require course:renameroles to rename roles. 2015-10-01 18:04:40 +01:00
Andrew Davis 560c7d6afa MDL-51204 coding style fixes in /lang 2015-08-26 07:00:03 +08:00
5303 changed files with 244446 additions and 297104 deletions
+4
View File
@@ -0,0 +1,4 @@
**/yui/build/** -diff
**/amd/build/** -diff
theme/bootstrapbase/style/editor.css -diff
theme/bootstrapbase/style/moodle.css -diff
+53 -42
View File
@@ -12,21 +12,12 @@ notifications:
language: php
php:
# Moodle supports versions 5.4, 5.5, and 5.6 of PHP.
# Order by fastest to slowest.
# We currently only run the highest and lowest versions to reduce the load on travis-ci.org.
- 5.6
# We only run the highest and lowest supported versions to reduce the load on travis-ci.org.
- 7.0
# - 5.6
# - 5.5
- 5.4
# We hope to offer PHP 7 support in the near future.
- nightly
services:
# Ensure that memcached and mongodb are running for testing of those MUC stores.
- memcached
- mongodb
env:
# Although we want to run these jobs and see failures as quickly as possible, we also want to get the slowest job to
# start first so that the total run time is not too high.
@@ -44,40 +35,39 @@ env:
# Run unit tests on Postgres
- DB=pgsql PHPUNIT=true INSTALL=false CITEST=false
# Perform an upgrade test too.
- DB=pgsql PHPUNIT=false INSTALL=true CITEST=false UPGRADE=true
matrix:
# 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
# Always allow failure on nightly.
# It's a nightly build and failures can happen.
allow_failures:
- php: nightly
exclude:
# PHP 7 is not yet supported for actual runs.
# Exclude it by default - we include it for CITEST only later.
- php: nightly
# MySQL - it's just too slow.
# Exclude it on all versions except for 5.6.
# Exclude it on all versions except for 7.0
# - env: DB=mysqli PHPUNIT=true INSTALL=false CITEST=false
# php: 5.6
#
# - env: DB=mysqli PHPUNIT=true INSTALL=false CITEST=false
# php: 5.5
- env: DB=mysqli PHPUNIT=true INSTALL=false CITEST=false
php: 5.4
include:
# Attempt to run the CITEST set on PHP 7.
- php: nightly
env: DB=none PHPUNIT=false INSTALL=false CITEST=true
# Moodle 2.7 is not compatible with PHP 7 for the upgrade test.
- env: DB=pgsql PHPUNIT=false INSTALL=true CITEST=false UPGRADE=true
php: 7.0
cache:
directories:
- $HOME/.composer/cache
install:
# Disable xdebug. We aren't generating code coverage, and it has a huge impact upon test performance.
- rm /home/travis/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini
# Set the encrypted GITHUB_TOKEN if it's available to raise the API limit.
- if [ -n "$GITHUB_APITOKEN" ]; then composer config github-oauth.github.com $GITHUB_APITOKEN; fi
@@ -86,10 +76,6 @@ install:
# Typically it should be able to use the Composer cache if any other job has already completed before we started here.
- travis_retry composer install --prefer-dist --no-interaction
- echo "extension = memcache.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
- echo "extension = memcached.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
- echo "extension = mongo.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini
before_script:
- >
if [ "$INSTALL" = 'true' -o "$PHPUNIT" = 'true' ];
@@ -144,9 +130,6 @@ before_script:
sed -i \
-e "/require_once/i \\\$CFG->phpunit_dataroot = '\/home\/travis\/roots\/phpunit';" \
-e "/require_once/i \\\$CFG->phpunit_prefix = 'p_';" \
-e "/require_once/i define('TEST_CACHESTORE_MEMCACHE_TESTSERVERS', '127.0.0.1:11211');" \
-e "/require_once/i define('TEST_CACHESTORE_MEMCACHED_TESTSERVERS', '127.0.0.1:11211');" \
-e "/require_once/i define('TEST_CACHESTORE_MONGODB_TESTSERVER', 'mongodb://localhost:27017');" \
config.php ;
# Initialise PHPUnit for Moodle.
@@ -180,7 +163,7 @@ script:
# We need the official upstream for comparison
git remote add upstream https://github.com/moodle/moodle.git;
git fetch upstream MOODLE_30_STABLE;
git fetch upstream master;
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`
@@ -191,17 +174,45 @@ script:
export phpcmd=`which php`;
fi
- >
if [ "$CITEST" = "true" -a "$GIT_PREVIOUS_COMMIT" != "$UPSTREAM_FETCH_HEAD" ];
then
# This is a CI test, but it is based on an older weekly release.
# Warn in a way that will fail the test.
echo "Current commit is based on an older weekly release" && false;
fi
# Actually run the CI Tests - do this outside of the main test to make output clearer.
- >
if [ "$CITEST" = 'true' ];
then
bash local/ci/php_lint/php_lint.sh;
fi
########################################################################
# Upgrade test
########################################################################
- >
if [ "$UPGRADE" = 'true' ];
then
# We need the official upstream.
git remote add upstream https://github.com/moodle/moodle.git;
# Checkout 27 STABLE branch.
git fetch upstream MOODLE_27_STABLE;
git checkout MOODLE_27_STABLE;
# Perform the upgrade
php admin/cli/install_database.php --agree-license --adminpass=Password --adminemail=admin@example.com --fullname="Upgrade test" --shortname=Upgrade;
# Return to the previous commit
git checkout -;
# Perform the upgrade
php admin/cli/upgrade.php --non-interactive --allow-unstable ;
# The local_ci repository can be used to check upgrade savepoints.
git clone https://github.com/moodlehq/moodle-local_ci.git local/ci ;
cp local/ci/check_upgrade_savepoints/check_upgrade_savepoints.php ./check_upgrade_savepoints.php
result=`php check_upgrade_savepoints.php`;
# Check if there are problems
count=`echo "$result" | grep -P "ERROR|WARN" | wc -l` ;
if (($count > 0));
then
echo "$result"
exit 1 ;
fi
fi
+56
View File
@@ -0,0 +1,56 @@
CONTRIBUTING TO MOODLE
======================
Moodle is made by people like you. We are members of a big worldwide community
of developers, designers, teachers, testers, translators and other users. We
work in universities, schools, companies and other places. You are very welcome
to join us and contribute to the project.
See <https://docs.moodle.org/dev/Contributing_to_Moodle> for the many ways you
can help, not only with coding.
Moodle is open to community contributions to core, though all code must go
through peer-review, automated behaviour testing, continuous integration and
human post-integration checks.
Pull requests
-------------
Please do not open pull requests via Github. The repository there is just a
mirror of the official repository at <https://git.moodle.org>. Issues are
reported and patches provided via <https://tracker.moodle.org>. See below for
more information.
Moodle core bug fixes and new features
--------------------------------------
During the years of intensive development, a mature process of including
submitted patches has evolved.
* Every bug fix or new feature must have a tracker issue.
* You publish the branch implementing the fix or new feature in your public
clone of the moodle.git repository (typically on Github).
* Your patch is peer-reviewed, discussed, integrated, tested and then released
as a part of moodle.git.
* New features are developed on the master branch. Bug fixes are also
backported to currently supported maintenance (stable) branches.
For further details, see <https://docs.moodle.org/dev/Process>.
Moodle plugins
--------------
Moodle has a framework for additional plugins to extend its functionality. We
have a Moodle plugins directory <https://moodle.org/plugins/> where you can
register and maintain your plugin. Plugins hosted in the plugins directory can
be easily installed and updated via the Moodle administration interface.
* You are expected to have a public source code repository with your plugin
code.
* After registering your plugin in the plugins directory it is reviewed before
being published.
* You are expected to continuously release updated versions of the plugin via
the plugins directory. We do not pull from your code repository; you must do
it explicitly.
For further details, see <https://docs.moodle.org/dev/Plugin_contribution>.
+162 -141
View File
@@ -12,6 +12,7 @@
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/* jshint node: true, browser: false */
/**
* @copyright 2014 Andrew Nicols
@@ -24,100 +25,163 @@
module.exports = function(grunt) {
var path = require('path'),
fs = require('fs'),
tasks = {},
cwd = 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')) {
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');
}
}
var inAMD = path.basename(cwd) == 'amd';
// Globbing pattern for matching all AMD JS source files.
var amdSrc = [inAMD ? cwd + '/src/*.js' : '**/amd/src/*.js'];
/**
* Function to generate the destination for the uglify task
* (e.g. build/file.min.js). This function will be passed to
* the rename property of files array when building dynamically:
* http://gruntjs.com/configuring-tasks#building-the-files-object-dynamically
*
* @param {String} destPath the current destination
* @param {String} srcPath the matched src path
* @return {String} The rewritten destination path.
*/
var uglify_rename = function (destPath, srcPath) {
destPath = srcPath.replace('src', 'build');
destPath = destPath.replace('.js', '.min.js');
destPath = path.resolve(cwd, destPath);
return destPath;
};
// Project configuration.
grunt.initConfig({
jshint: {
options: {jshintrc: '.jshintrc'},
files: ['**/amd/src/*.js']
amd: { src: amdSrc }
},
uglify: {
dynamic_mappings: {
files: grunt.file.expandMapping(
['**/src/*.js', '!**/node_modules/**'],
'',
{
cwd: cwd,
rename: function(destBase, destPath) {
destPath = destPath.replace('src', 'build');
destPath = destPath.replace('.js', '.min.js');
destPath = path.resolve(cwd, destPath);
return destPath;
}
}
)
amd: {
files: [{
expand: true,
src: amdSrc,
rename: uglify_rename
}]
}
},
less: {
bootstrapbase: {
files: {
"theme/bootstrapbase/style/moodle.css": "theme/bootstrapbase/less/moodle.less",
"theme/bootstrapbase/style/editor.css": "theme/bootstrapbase/less/editor.less",
},
options: {
compress: true
}
}
},
watch: {
options: {
nospawn: true // We need not to spawn so config can be changed dynamically.
},
amd: {
files: ['**/amd/src/**/*.js'],
tasks: ['amd']
},
bootstrapbase: {
files: ["theme/bootstrapbase/less/**/*.less"],
tasks: ["less:bootstrapbase"]
},
yui: {
files: ['**/yui/src/**/*.js'],
tasks: ['shifter']
},
},
shifter: {
options: {
recursive: true,
paths: [cwd]
}
}
});
/**
* Shifter task. Is configured with a path to a specific file or a directory,
* in the case of a specific file it will work out the right module to be built.
*
* Note that this task runs the invidiaul shifter jobs async (becase it spawns
* so be careful to to call done().
*/
tasks.shifter = function() {
var exec = require('child_process').spawn,
var async = require('async'),
done = this.async(),
args = [],
options = {
recursive: true,
watch: false,
walk: false,
module: false
},
shifter;
options = grunt.config('shifter.options');
// Run the shifter processes one at a time to avoid confusing output.
async.eachSeries(options.paths, function (src, filedone) {
var args = [];
args.push( path.normalize(__dirname + '/node_modules/shifter/bin/shifter'));
// Determine the most appropriate options to run with based upon the current location.
if (path.basename(cwd) === 'src') {
// Detect whether we're in a src directory.
grunt.log.debug('In a src directory');
args.push('--walk');
options.walk = true;
} else if (path.basename(path.dirname(cwd)) === 'src') {
// Detect whether we're in a module directory.
grunt.log.debug('In a module directory');
options.module = true;
}
if (grunt.option('watch')) {
if (!options.walk && !options.module) {
grunt.fail.fatal('Unable to watch unless in a src or module directory');
}
// It is not advisable to run with recursivity and watch - this
// leads to building the build directory in a race-like fashion.
grunt.log.debug('Detected a watch - disabling recursivity');
options.recursive = false;
args.push('--watch');
}
if (options.recursive) {
args.push('--recursive');
}
// Always ignore the node_modules directory.
args.push('--excludes', 'node_modules');
// Determine the most appropriate options to run with based upon the current location.
if (grunt.file.isMatch('**/yui/**/*.js', src)) {
// When passed a JS file, build our containing module (this happen with
// watch).
grunt.log.debug('Shifter passed a specific JS file');
src = path.dirname(path.dirname(src));
options.recursive = false;
} else if (grunt.file.isMatch('**/yui/src', src)) {
// When in a src directory --walk all modules.
grunt.log.debug('In a src directory');
args.push('--walk');
options.recursive = false;
} else if (grunt.file.isMatch('**/yui/src/*', src)) {
// When in module, only build our module.
grunt.log.debug('In a module directory');
options.recursive = false;
} else if (grunt.file.isMatch('**/yui/src/*/js', src)) {
// When in module src, only build our module.
grunt.log.debug('In a source directory');
src = path.dirname(src);
options.recursive = false;
}
if (grunt.option('watch')) {
grunt.fail.fatal('The --watch option has been removed, please use `grunt watch` instead');
}
// Add the stderr option if appropriate
if (grunt.option('verbose')) {
args.push('--lint-stderr');
}
if (grunt.option('no-color')) {
args.push('--color=false');
}
var execShifter = function() {
shifter = exec("node", args, {
cwd: cwd,
stdio: 'inherit',
env: process.env
});
// Tidy up after exec.
shifter.on('exit', function (code) {
grunt.log.ok("Running shifter on " + src);
grunt.util.spawn({
cmd: "node",
args: args,
opts: {cwd: src, stdio: 'inherit', env: process.env}
}, function (error, result, code) {
if (code) {
grunt.fail.fatal('Shifter failed with code: ' + code);
} else {
grunt.log.ok('Shifter build complete.');
done();
filedone();
}
});
};
@@ -127,79 +191,15 @@ module.exports = function(grunt) {
execShifter();
} else {
// Check that there are yui modules otherwise shifter ends with exit code 1.
var found = false;
var hasYuiModules = function(directory, callback) {
fs.readdir(directory, function(err, files) {
if (err) {
return callback(err, null);
}
// If we already found a match there is no need to continue scanning.
if (found === true) {
return;
}
// We need to track the number of files to know when we return a result.
var pending = files.length;
// We first check files, so if there is a match we don't need further
// async calls and we just return a true.
for (var i = 0; i < files.length; i++) {
if (files[i] === 'yui') {
return callback(null, true);
}
}
// Iterate through subdirs if there were no matches.
files.forEach(function (file) {
var p = path.join(directory, file);
stat = fs.statSync(p);
if (!stat.isDirectory()) {
pending--;
} else {
// We defer the pending-1 until we scan the whole dir and subdirs.
hasYuiModules(p, function(err, result) {
if (err) {
return callback(err);
}
if (result === true) {
// Once we get a true we notify the caller.
found = true;
return callback(null, true);
}
pending--;
if (pending === 0) {
// Notify the caller that the whole dir has been scaned and there are no matches.
return callback(null, false);
}
});
}
// No subdirs here, otherwise the return would be deferred until all subdirs are scanned.
if (pending === 0) {
return callback(null, false);
}
});
});
};
hasYuiModules(cwd, function(err, result) {
if (err) {
grunt.fail.fatal(err.message);
}
if (result === true) {
execShifter();
} else {
grunt.log.ok('No YUI modules to build.');
done();
}
});
if (grunt.file.expand({cwd: src}, '**/yui/src/**/*.js').length > 0) {
args.push('--recursive');
execShifter();
} else {
grunt.log.ok('No YUI modules to build.');
filedone();
}
}
}, done);
};
tasks.startup = function() {
@@ -207,24 +207,45 @@ module.exports = function(grunt) {
if (path.basename(path.resolve(cwd, '../../')) == 'yui') {
grunt.task.run('shifter');
// Are we in an AMD directory?
} else if (path.basename(cwd) == 'amd') {
grunt.task.run('jshint');
grunt.task.run('uglify');
} else if (inAMD) {
grunt.task.run('amd');
} else {
// Run them all!.
grunt.task.run('shifter');
grunt.task.run('jshint');
grunt.task.run('uglify');
grunt.task.run('css');
grunt.task.run('js');
}
};
// 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('jshint.amd.src', files);
grunt.config('uglify.amd.files', [{ expand: true, src: files, rename: uglify_rename }]);
grunt.config('shifter.options.paths', files);
changedFiles = Object.create(null);
}, 200);
grunt.event.on('watch', function(action, filepath) {
changedFiles[filepath] = action;
onChange();
});
// Register NPM tasks.
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-watch');
// Register the shifter task.
// Register JS tasks.
grunt.registerTask('shifter', 'Run Shifter against the current directory', tasks.shifter);
grunt.registerTask('amd', ['jshint', 'uglify']);
grunt.registerTask('js', ['amd', 'shifter']);
// Register CSS taks.
grunt.registerTask('css', ['less:bootstrapbase']);
// Register the startup task.
grunt.registerTask('startup', 'Run the correct tasks for the current directory', tasks.startup);
+20
View File
@@ -0,0 +1,20 @@
MOODLE INSTALLATION
===================
Here is a short summary of the installation process (which can take just a few
minutes):
1. Move the Moodle files into your web directory.
2. Create a single database for Moodle to store all its tables in (or choose an
existing database).
3. Visit your Moodle site with a browser. You should be taken to the
install.php script, which will lead you through creating a config.php file
and then setting up Moodle, creating an admin account etc.
4. Set up a cron task to call the file admin/cron.php every minute.
For more information, see <https://docs.moodle.org/en/Installing_Moodle>.
Good luck and have fun!
+7
View File
@@ -0,0 +1,7 @@
*** PLEASE DO NOT OPEN PULL REQUESTS VIA GITHUB ***
The moodle.git repository at Github is just a mirror of the official repository. We do not accept pull requests at Github.
See CONTRIBUTING.txt guidelines for how to contribute patches for Moodle. Thank you.
--
+21 -22
View File
@@ -1,29 +1,28 @@
QUICK INSTALL
=============
.-..-.
_____ | || |
/____/-.---_ .---. .---. .-.| || | .---.
| | _ _ |/ _ \/ _ \/ _ || |/ __ \
* | | | | | || |_| || |_| || |_| || || |___/
|_| |_| |_|\_____/\_____/\_____||_|\_____)
For the impatient, here is a basic outline of the
installation process, which normally takes me only
a few minutes:
Moodle - the world's open source learning platform
1) Move the Moodle files into your web directory.
Moodle <https://moodle.org> is a learning platform designed to provide
educators, administrators and learners with a single robust, secure and
integrated system to create personalised learning environments.
2) Create a single database for Moodle to store all
its tables in (or choose an existing database).
You can download Moodle <https://download.moodle.org> and run it on your own
web server, ask one of our Moodle Partners <https://moodle.com/partners/> to
assist you, or have a MoodleCloud site <https://moodle.com/cloud/> set up for
you.
3) Visit your Moodle site with a browser, you should
be taken to the install.php script, which will lead
you through creating a config.php file and then
setting up Moodle, creating an admin account etc.
Moodle is widely used around the world by universities, schools, companies and
all manner of organisations and individuals.
4) Set up a cron task to call the file admin/cron.php
every five minutes or so.
Moodle is provided freely as open source software, under the GNU General Public
License <https://docs.moodle.org/dev/License>.
Moodle is written in PHP and JavaScript and uses an SQL database for storing
the data.
For more information, see the INSTALL DOCUMENTATION:
http://docs.moodle.org/en/Installing_Moodle
Good luck and have fun!
Martin Dougiamas, Lead Developer
See <https://docs.moodle.org> for details of Moodle's many features.
+42 -28
View File
@@ -1,34 +1,48 @@
------------------------
Moodle Trademark License
------------------------
MOODLE TRADEMARKS POLICY
========================
The name Moodle is a registered trademark of the Moodle Trust.
The word "Moodle" is trademarked in many countries around the world. The word
was originally an acronym: Modular Object-Oriented Dynamic Learning
Environment. The trademark is owned by Martin Dougiamas, Founder and Director
of Moodle.
A key part of the business model that allows us to produce and
distribute Moodle as completely Free open source software is that
we restrict the commercial use of the Moodle trademark to those
who have contracted to support Moodle development (Moodle Partners).
The law obligates trademark owners to police their marks and prevent the use of
confusingly similar names by third parties. Through this policy wed like to
make it clear how Moodle-related projects, organisations, and people can use
the Moodle trademark. Wed also like to be clear about how use of the word is
restricted when used to promote commercial Moodle services. We do this to
protect the very business model that allows us to continue developing Moodle
for you.
If you are intending to use the name (and/or logo) to advertise
generic Moodle™ services (eg Moodle Hosting, Moodle Support,
Moodle Certification, Moodle Training, Moodle Consulting,
Moodle Customisation, Moodle Courseware Development, Moodle
Theme design, Moodle Integrations, Moodle Installations, etc)
or as the name of a software package, then you must seek
direct permission in writing from the Moodle Trust via the
moodle.com helpdesk, in accordance with normal trademark
restrictions.
Allowed uses
------------
There are no restrictions on how you use the name in other
contexts (for example, if you use Moodle just to provide
courses then you can use the name freely to refer to it.)
The following uses dont require any permission at all:
If you aren't sure of a particular case, please ask us via
http://moodle.com/helpdesk: we'll be happy to either provide
you with official permission in writing or help you fix
your wording.
* Referring to the software or the Moodle project.
* Describing your own Moodle implementation (including within corporate
settings).
* Describing a Moodle-based community hub.
* Describing some software youve made that integrates with Moodle
(eg a Moodle integration feature on another system).
Martin Dougiamas
Executive Director
Moodle Trust
http://moodle.com
Restricted uses
---------------
The following uses are generally prohibited without explicit and direct
permission being granted to you by Moodle Pty Ltd. We do this to protect the
Moodle project from software and sites which could confuse people. Please
contact us to ask for permission in writing.
* You cant use "Moodle" in the name of your software (including Mobile apps)
* You cant use "Moodle" in your company name
* You cant use "Moodle" in your domain name
* You cant use "Moodle" in advertising-related keywords (such as Adsense)
* You cant use "Moodle" to describe services around Moodle (such as hosting,
training, support, consulting, course creation services, theme development,
customisation, installation, integration and certification). This applies
even if you do not charge for the services. Note that usually only Moodle
Partners have this permission.
For information about the Moodle Partner Certification Mark as well as for how
to contact us, please see <https://moodle.com/trademarks/>.
+106
View File
@@ -0,0 +1,106 @@
<?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 antiviruses.
*
* @package core_antivirus
* @copyright 2015 Ruslan Kabalin, Lancaster University.
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/tablelib.php');
$action = required_param('action', PARAM_ALPHANUMEXT);
$antivirus = required_param('antivirus', PARAM_PLUGIN);
$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());
$returnurl = "$CFG->wwwroot/$CFG->admin/settings.php?section=manageantiviruses";
// Get currently installed and enabled antivirus plugins.
$availableantiviruses = \core\antivirus\manager::get_available();
if (!empty($antivirus) and empty($availableantiviruses[$antivirus])) {
redirect ($returnurl);
}
$activeantiviruses = explode(',', $CFG->antiviruses);
foreach ($activeantiviruses as $key => $active) {
if (empty($availableantiviruses[$active])) {
unset($activeantiviruses[$key]);
}
}
if (!confirm_sesskey()) {
redirect($returnurl);
}
switch ($action) {
case 'disable':
// Remove from enabled list.
$key = array_search($antivirus, $activeantiviruses);
unset($activeantiviruses[$key]);
break;
case 'enable':
// Add to enabled list.
if (!in_array($antivirus, $activeantiviruses)) {
$activeantiviruses[] = $antivirus;
$activeantiviruses = array_unique($activeantiviruses);
}
break;
case 'down':
$key = array_search($antivirus, $activeantiviruses);
// Check auth plugin is valid.
if ($key !== false) {
// Move down the list.
if ($key < (count($activeantiviruses) - 1)) {
$fsave = $activeantiviruses[$key];
$activeantiviruses[$key] = $activeantiviruses[$key + 1];
$activeantiviruses[$key + 1] = $fsave;
}
}
break;
case 'up':
$key = array_search($antivirus, $activeantiviruses);
// Check auth is valid.
if ($key !== false) {
// Move up the list.
if ($key >= 1) {
$fsave = $activeantiviruses[$key];
$activeantiviruses[$key] = $activeantiviruses[$key - 1];
$activeantiviruses[$key - 1] = $fsave;
}
}
break;
default:
break;
}
set_config('antiviruses', implode(',', $activeantiviruses));
core_plugin_manager::reset_caches();
redirect ($returnurl);
+11 -1
View File
@@ -45,17 +45,23 @@ require_once($CFG->libdir.'/clilib.php'); // cli only functions
require_once($CFG->libdir.'/environmentlib.php');
// now get cli options
$lang = isset($SESSION->lang) ? $SESSION->lang : $CFG->lang;
list($options, $unrecognized) = cli_get_params(
array(
'non-interactive' => false,
'allow-unstable' => false,
'help' => false
'help' => false,
'lang' => $lang
),
array(
'h' => 'help'
)
);
if ($options['lang']) {
$SESSION->lang = $options['lang'];
}
$interactive = empty($options['non-interactive']);
if ($unrecognized) {
@@ -74,6 +80,10 @@ Options:
--non-interactive No interactive questions or confirmations
--allow-unstable Upgrade even if the version is not marked as stable yet,
required in non-interactive mode.
--lang=CODE Set preferred language for CLI output. Defaults to the
site language if not set. Defaults to 'en' if the lang
parameter is invalid or if the language pack is not
installed.
-h, --help Print out this help
Example:
+82
View File
@@ -0,0 +1,82 @@
<?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/>.
/**
* Lets users manage data formats
*
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @copyright 2016 Brendan Heywood (brendan@catalyst-au.net)
* @package core
* @subpackage dataformat
*/
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/dataformats.php');
$PAGE->set_context($syscontext);
require_login();
require_capability('moodle/site:config', $syscontext);
require_sesskey();
$return = new moodle_url('/admin/settings.php', array('section' => 'managedataformats'));
$plugins = core_plugin_manager::instance()->get_plugins_of_type('dataformat');
$sortorder = array_flip(array_keys($plugins));
if (!isset($plugins[$name])) {
print_error('courseformatnotfound', 'error', $return, $name);
}
switch ($action) {
case 'disable':
if ($plugins[$name]->is_enabled()) {
set_config('disabled', 1, 'dataformat_'. $name);
core_plugin_manager::reset_caches();
}
break;
case 'enable':
if (!$plugins[$name]->is_enabled()) {
unset_config('disabled', 'dataformat_'. $name);
core_plugin_manager::reset_caches();
}
break;
case 'up':
if ($sortorder[$name]) {
$currentindex = $sortorder[$name];
$seq = array_keys($plugins);
$seq[$currentindex] = $seq[$currentindex - 1];
$seq[$currentindex - 1] = $name;
set_config('dataformat_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('dataformat_plugins_sortorder', implode(',', $seq));
}
break;
}
redirect($return);
+140 -1
View File
@@ -1434,7 +1434,6 @@
<VENDOR name="oracle" version="10.2" />
</DATABASE>
<PHP version="5.4.4" level="required">
<RESTRICT function="restrict_php_version_7" message="unsupportedphpversion7" />
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
@@ -1559,4 +1558,144 @@
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="3.1" requires="2.7">
<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.5.31" />
<VENDOR name="postgres" version="9.1" />
<VENDOR name="mssql" version="10.0" />
<VENDOR name="oracle" version="10.2" />
</DATABASE>
<PHP version="5.4.4" 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="optional">
<FEEDBACK>
<ON_CHECK message="opensslrecommended" />
</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="optional">
<FEEDBACK>
<ON_CHECK message="intlrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" 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_CHECKS>
</MOODLE>
</COMPATIBILITY_MATRIX>
+3 -1
View File
@@ -843,6 +843,8 @@ $buggyiconvnomb = (!function_exists('mb_convert_encoding') and @iconv('UTF-8', '
$registered = $DB->count_records('registration_hubs', array('huburl' => HUB_MOODLEORGHUBURL, 'confirmed' => 1));
// Check if there are any cache warnings.
$cachewarnings = cache_helper::warnings();
// Check if there are events 1 API handlers.
$eventshandlers = $DB->get_records_sql('SELECT DISTINCT component FROM {events_handlers}');
admin_externalpage_setup('adminnotifications');
@@ -850,4 +852,4 @@ $output = $PAGE->get_renderer('core', 'admin');
echo $output->admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed, $cronoverdue, $dbproblems,
$maintenancemode, $availableupdates, $availableupdatesfetch, $buggyiconvnomb,
$registered, $cachewarnings);
$registered, $cachewarnings, $eventshandlers);
+36 -1
View File
@@ -275,17 +275,19 @@ class core_admin_renderer extends plugin_renderer_base {
* @param array|null $availableupdates array of \core\update\info objects or null
* @param int|null $availableupdatesfetch timestamp of the most recent updates fetch or null (unknown)
* @param string[] $cachewarnings An array containing warnings from the Cache API.
* @param array $eventshandlers Events 1 API handlers.
*
* @return string HTML to output.
*/
public function admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed,
$cronoverdue, $dbproblems, $maintenancemode, $availableupdates, $availableupdatesfetch,
$buggyiconvnomb, $registered, array $cachewarnings = array()) {
$buggyiconvnomb, $registered, array $cachewarnings = array(), $eventshandlers = 0) {
global $CFG;
$output = '';
$output .= $this->header();
$output .= $this->maturity_info($maturity);
$output .= $this->legacy_log_store_writing_error();
$output .= empty($CFG->disableupdatenotifications) ? $this->available_updates($availableupdates, $availableupdatesfetch) : '';
$output .= $this->insecure_dataroot_warning($insecuredataroot);
$output .= $this->display_errors_warning($errorsdisplayed);
@@ -294,6 +296,7 @@ class core_admin_renderer extends plugin_renderer_base {
$output .= $this->db_problems($dbproblems);
$output .= $this->maintenance_mode_warning($maintenancemode);
$output .= $this->cache_warnings($cachewarnings);
$output .= $this->events_handlers($eventshandlers);
$output .= $this->registration_warning($registered);
//////////////////////////////////////////////////////////////////////////////////////////////////
@@ -594,6 +597,23 @@ class core_admin_renderer extends plugin_renderer_base {
return join("\n", array_map(array($this, 'warning'), $cachewarnings));
}
/**
* Renders events 1 API handlers warning.
*
* @param array $eventshandlers
* @return string
*/
public function events_handlers($eventshandlers) {
if ($eventshandlers) {
$components = '';
foreach ($eventshandlers as $eventhandler) {
$components .= $eventhandler->component . ', ';
}
$components = rtrim($components, ', ');
return $this->warning(get_string('eventshandlersinuse', 'admin', $components));
}
}
/**
* Render an appropriate message if the site in in maintenance mode.
* @param bool $maintenancemode
@@ -1935,4 +1955,19 @@ class core_admin_renderer extends plugin_renderer_base {
return $output;
}
/**
* Check to see if writing to the deprecated legacy log store is enabled.
*
* @return string An error message if writing to the legacy log store is enabled.
*/
protected function legacy_log_store_writing_error() {
$enabled = get_config('logstore_legacy', 'loglegacy');
$plugins = explode(',', get_config('tool_log', 'enabled_stores'));
$enabled = $enabled && in_array('logstore_legacy', $plugins);
if ($enabled) {
return $this->warning(get_string('legacylogginginuse'));
}
}
}
@@ -35,7 +35,6 @@ abstract class core_role_capability_table_with_risks extends core_role_capabilit
protected $allpermissions; // We don't need perms ourselves, but all our subclasses do.
protected $strperms; // Language string cache.
protected $risksurl; // URL in moodledocs about risks.
protected $riskicons = array(); // Cache to avoid regenerating the HTML for each risk icon.
/** @var array The capabilities to highlight as default/inherited. */
protected $parentpermissions;
protected $displaypermissions;
@@ -183,12 +182,12 @@ abstract class core_role_capability_table_with_risks extends core_role_capabilit
*/
public function get_risk_icon($type) {
global $OUTPUT;
if (!isset($this->riskicons[$type])) {
$iconurl = $OUTPUT->pix_url('i/' . str_replace('risk', 'risk_', $type));
$text = '<img src="' . $iconurl . '" alt="' . get_string($type . 'short', 'admin') . '" />';
$action = new popup_action('click', $this->risksurl, 'docspopup');
$this->riskicons[$type] = $OUTPUT->action_link($this->risksurl, $text, $action, array('title'=>get_string($type, 'admin')));
}
return $this->riskicons[$type];
$iconurl = $OUTPUT->pix_url('i/' . str_replace('risk', 'risk_', $type));
$text = '<img src="' . $iconurl . '" alt="' . get_string($type . 'short', 'admin') . '" />';
$action = new popup_action('click', $this->risksurl, 'docspopup');
$riskicon = $OUTPUT->action_link($this->risksurl, $text, $action, array('title'=>get_string($type, 'admin')));
return $riskicon;
}
}
@@ -413,7 +413,7 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
}
public function save_changes() {
global $DB;
global $DB, $CFG;
if (!$this->roleid) {
// Creating role.
@@ -422,6 +422,13 @@ class core_role_define_role_table_advanced extends core_role_capability_table_wi
} else {
// Updating role.
$DB->update_record('role', $this->role);
// 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
// should not be that frequent, so here is the ugly brutal approach.
require_once($CFG->libdir . '/coursecatlib.php');
coursecat::role_assignment_changed($this->role->id, context_system::instance());
}
// Assignable contexts.
+1 -1
View File
@@ -201,7 +201,7 @@ if (optional_param('savechanges', false, PARAM_BOOL) && confirm_sesskey() && $de
$event = \core\event\role_capabilities_updated::create(
array(
'context' => $systemcontext,
'objectid' => $roleid
'objectid' => $tableroleid
)
);
$event->set_legacy_logdata(array(SITEID, 'role', $action, 'admin/roles/define.php?action=view&roleid=' . $tableroleid,
+3 -1
View File
@@ -20,13 +20,15 @@ $focus = '';
// now we'll deal with the case that the admin has submitted the form with changed settings
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
$statusmsg = get_string('changessaved');
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
if (!empty($adminroot->errors)) {
$errormsg = get_string('errorwithsettings', 'admin');
$firsterror = reset($adminroot->errors);
$focus = $firsterror->id;
} else {
redirect($PAGE->url);
}
}
+9 -4
View File
@@ -20,7 +20,11 @@ $adminroot = admin_get_root(); // need all settings
$settingspage = $adminroot->locate($section, true);
if (empty($settingspage) or !($settingspage instanceof admin_settingpage)) {
print_error('sectionerror', 'admin', "$CFG->wwwroot/$CFG->admin/");
if (moodle_needs_upgrading()) {
redirect(new moodle_url('/admin/index.php'));
} else {
print_error('sectionerror', 'admin', "$CFG->wwwroot/$CFG->admin/");
}
die;
}
@@ -36,7 +40,7 @@ $errormsg = '';
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
$statusmsg = get_string('changessaved');
redirect($PAGE->url, get_string('changessaved'), null, \core\output\notification::NOTIFY_SUCCESS);
}
if (empty($adminroot->errors)) {
@@ -44,6 +48,7 @@ if ($data = data_submitted() and confirm_sesskey()) {
case 'site': redirect("$CFG->wwwroot/");
case 'admin': redirect("$CFG->wwwroot/$CFG->admin/");
}
redirect($PAGE->url);
} else {
$errormsg = get_string('errorwithsettings', 'admin');
$firsterror = reset($adminroot->errors);
@@ -72,7 +77,7 @@ if (empty($SITE->fullname)) {
// ---------------------------------------------------------------------------------------------------------------
echo '<form action="settings.php" method="post" id="adminsettings">';
echo '<form action="' . $PAGE->url . '" method="post" id="adminsettings">';
echo '<div class="settingsform clearfix">';
echo html_writer::input_hidden_params($PAGE->url);
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
@@ -116,7 +121,7 @@ if (empty($SITE->fullname)) {
// ---------------------------------------------------------------------------------------------------------------
echo '<form action="settings.php" method="post" id="adminsettings">';
echo '<form action="' . $PAGE->url . '" method="post" id="adminsettings">';
echo '<div class="settingsform clearfix">';
echo html_writer::input_hidden_params($PAGE->url);
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
+50
View File
@@ -0,0 +1,50 @@
<?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.
*
* @package core_competency
* @copyright 2016 Frédéric Massart - FMCorz.net
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
// Save processing when the user will not be able to access anything.
if (has_capability('moodle/site:config', $systemcontext)) {
$parentname = 'competencies';
// Settings page.
$settings = new admin_settingpage('competencysettings', new lang_string('competenciessettings', 'core_competency'),
'moodle/site:config', false);
$ADMIN->add($parentname, $settings);
// Load the full tree of settings.
if ($ADMIN->fulltree) {
$setting = new admin_setting_configcheckbox('core_competency/enabled',
new lang_string('enablecompetencies', 'core_competency'),
new lang_string('enablecompetencies_desc', 'core_competency'), 1);
$settings->add($setting);
$setting = new admin_setting_configcheckbox('core_competency/pushcourseratingstouserplans',
new lang_string('pushcourseratingstouserplans', 'core_competency'),
new lang_string('pushcourseratingstouserplans_desc', 'core_competency'), 1);
$settings->add($setting);
}
}
+3
View File
@@ -205,6 +205,9 @@ if ($hassiteconfig or has_any_capability($capabilities, $systemcontext)) {
// Create a page for general import configuration and defaults.
$temp = new admin_settingpage('importgeneralsettings', new lang_string('importgeneralsettings', 'backup'), 'moodle/backup:backupcourse');
$temp->add(new admin_setting_configtext('backup/import_general_maxresults', new lang_string('importgeneralmaxresults', 'backup'), new lang_string('importgeneralmaxresults_desc', 'backup'), 10));
$temp->add(new admin_setting_configcheckbox('backup/import_general_duplicate_admin_allowed',
new lang_string('importgeneralduplicateadminallowed', 'backup'),
new lang_string('importgeneralduplicateadminallowed_desc', 'backup'), 0));
$ADMIN->add('backups', $temp);
// Create a page for automated backups configuration and defaults.
+61 -4
View File
@@ -138,6 +138,16 @@ if ($hassiteconfig) {
$plugin->load_settings($ADMIN, 'editorsettings', $hassiteconfig);
}
// Antivirus plugins.
$ADMIN->add('modules', new admin_category('antivirussettings', new lang_string('antiviruses', 'antivirus')));
$temp = new admin_settingpage('manageantiviruses', new lang_string('antivirussettings', 'antivirus'));
$temp->add(new admin_setting_manageantiviruses());
$ADMIN->add('antivirussettings', $temp);
foreach (core_plugin_manager::instance()->get_plugins_of_type('antivirus') as $plugin) {
/* @var \core\plugininfo\antivirus $plugin */
$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'));
@@ -177,6 +187,11 @@ if ($hassiteconfig) {
$plugin->load_settings($ADMIN, 'filtersettings', $hassiteconfig);
}
// Data format settings.
$ADMIN->add('modules', new admin_category('dataformatsettings', new lang_string('dataformats')));
$temp = new admin_settingpage('managedataformats', new lang_string('managedataformats'));
$temp->add(new admin_setting_managedataformats());
$ADMIN->add('dataformatsettings', $temp);
//== Portfolio settings ==
require_once($CFG->libdir. '/portfoliolib.php');
@@ -457,6 +472,49 @@ foreach ($pages as $page) {
$ADMIN->add('reportplugins', $page);
}
if ($hassiteconfig) {
// Global Search engine plugins.
$ADMIN->add('modules', new admin_category('searchplugins', new lang_string('search', 'admin')));
$temp = new admin_settingpage('manageglobalsearch', new lang_string('globalsearchmanage', 'admin'));
$pages = array();
$engines = array();
foreach (core_component::get_plugin_list('search') as $engine => $plugindir) {
$engines[$engine] = new lang_string('pluginname', 'search_' . $engine);
$settingspath = "$plugindir/settings.php";
if (file_exists($settingspath)) {
$settings = new admin_settingpage('search' . $engine,
new lang_string('pluginname', 'search_' . $engine), 'moodle/site:config');
include($settingspath);
if ($settings) {
$pages[] = $settings;
}
}
}
// Setup status.
$temp->add(new admin_setting_searchsetupinfo());
// Search engine selection.
$temp->add(new admin_setting_heading('searchengineheading', new lang_string('searchengine', 'admin'), ''));
$temp->add(new admin_setting_configselect('searchengine',
new lang_string('selectsearchengine', 'admin'), '', 'solr', $engines));
// Enable search areas.
$temp->add(new admin_setting_heading('searchareasheading', new lang_string('availablesearchareas', 'admin'), ''));
$searchareas = \core_search\manager::get_search_areas_list();
foreach ($searchareas as $areaid => $searcharea) {
list($componentname, $varname) = $searcharea->get_config_var_name();
$temp->add(new admin_setting_configcheckbox($componentname . '/' . $varname . '_enabled', $searcharea->get_visible_name(true),
'', 1, 1, 0));
}
$ADMIN->add('searchplugins', $temp);
foreach ($pages as $page) {
$ADMIN->add('searchplugins', $page);
}
}
/// Add all admin tools
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('tools', new lang_string('tools', 'admin')));
@@ -489,10 +547,9 @@ if ($hassiteconfig) {
// Add Calendar type settings.
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('calendartype', new lang_string('calendartypes', 'calendar')));
foreach (core_component::get_plugin_list_with_file('calendartype', 'settings.php') as $plugin => $settingspath) {
$settings = new admin_settingpage('calendartype_' . $plugin . '_settings', new lang_string('pluginname', 'calendartype_' . $plugin), 'moodle/site:config');
include($settingspath);
$ADMIN->add('calendartype', $settings);
foreach (core_plugin_manager::instance()->get_plugins_of_type('calendartype') as $plugin) {
/** @var \core\plugininfo\calendartype $plugin */
$plugin->load_settings($ADMIN, 'calendartype', $hassiteconfig);
}
}
-15
View File
@@ -127,19 +127,4 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
}
$temp->add(new admin_setting_configselect('notifyloginthreshold', new lang_string('notifyloginthreshold', 'admin'), new lang_string('confignotifyloginthreshold', 'admin'), '10', $options));
$ADMIN->add('security', $temp);
// "antivirus" settingpage
$temp = new admin_settingpage('antivirus', new lang_string('antivirus', 'admin'));
$temp->add(new admin_setting_configcheckbox('runclamonupload', new lang_string('runclamavonupload', 'admin'), new lang_string('configrunclamavonupload', 'admin'), 0));
$temp->add(new admin_setting_configexecutable('pathtoclam', new lang_string('pathtoclam', 'admin'), new lang_string('configpathtoclam', 'admin'), ''));
$temp->add(new admin_setting_configdirectory('quarantinedir', new lang_string('quarantinedir', 'admin'), new lang_string('configquarantinedir', 'admin'), ''));
$temp->add(new admin_setting_configselect('clamfailureonupload', new lang_string('clamfailureonupload', 'admin'), new lang_string('configclamfailureonupload', 'admin'), 'donothing', array('donothing' => new lang_string('configclamdonothing', 'admin'),
'actlikevirus' => new lang_string('configclamactlikevirus', 'admin'))));
$ADMIN->add('security', $temp);
} // end of speedup
+5 -5
View File
@@ -12,17 +12,17 @@ $temp->add(new admin_setting_configexecutable('pathtodu', new lang_string('patht
$temp->add(new admin_setting_configexecutable('aspellpath', new lang_string('aspellpath', 'admin'), new lang_string('edhelpaspellpath'), ''));
$temp->add(new admin_setting_configexecutable('pathtodot', new lang_string('pathtodot', 'admin'), new lang_string('pathtodot_help', 'admin'), ''));
$temp->add(new admin_setting_configexecutable('pathtogs', new lang_string('pathtogs', 'admin'), new lang_string('pathtogs_help', 'admin'), '/usr/bin/gs'));
$temp->add(new admin_setting_configexecutable('pathtounoconv', new lang_string('pathtounoconv', 'admin'), new lang_string('pathtounoconv_help', 'admin'), '/usr/bin/unoconv'));
$ADMIN->add('server', $temp);
// "supportcontact" settingpage
$temp = new admin_settingpage('supportcontact', new lang_string('supportcontact','admin'));
if (isloggedin()) {
global $USER;
$primaryadminemail = $USER->email;
$primaryadminname = fullname($USER, true);
$primaryadmin = get_admin();
if ($primaryadmin) {
$primaryadminemail = $primaryadmin->email;
$primaryadminname = fullname($primaryadmin, true);
} else {
// no defaults during installation - admin user must be created first
$primaryadminemail = NULL;
+5 -2
View File
@@ -34,7 +34,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// Conditional activities: completion and availability
$optionalsubsystems->add(new admin_setting_configcheckbox('enablecompletion',
new lang_string('enablecompletion','completion'),
new lang_string('configenablecompletion','completion'), 0));
new lang_string('configenablecompletion', 'completion'), 1));
$options = array(
1 => get_string('completionactivitydefault', 'completion'),
@@ -45,10 +45,13 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$optionalsubsystems->add($checkbox = new admin_setting_configcheckbox('enableavailability',
new lang_string('enableavailability', 'availability'),
new lang_string('enableavailability_desc', 'availability'), 0));
new lang_string('enableavailability_desc', 'availability'), 1));
$checkbox->set_affects_modinfo(true);
$optionalsubsystems->add(new admin_setting_configcheckbox('enableplagiarism', new lang_string('enableplagiarism','plagiarism'), new lang_string('configenableplagiarism','plagiarism'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablebadges', new lang_string('enablebadges', 'badges'), new lang_string('configenablebadges', 'badges'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableglobalsearch', new lang_string('enableglobalsearch', 'admin'),
new lang_string('enableglobalsearch_desc', 'admin'), 0, 1, 0));
}
+1
View File
@@ -30,6 +30,7 @@ if ($hassiteconfig) {
$ADMIN->add('root', new admin_category('users', new lang_string('users','admin')));
$ADMIN->add('root', new admin_category('courses', new lang_string('courses','admin')));
$ADMIN->add('root', new admin_category('grades', new lang_string('grades')));
$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('location', new lang_string('location','admin')));
$ADMIN->add('root', new admin_category('language', new lang_string('language')));
+2 -3
View File
@@ -28,8 +28,7 @@
require_once(__DIR__ . '/../../../lib/behat/behat_base.php');
require_once(__DIR__ . '/../../../lib/behat/behat_field_manager.php');
use Behat\Behat\Context\Step\Given as Given,
Behat\Gherkin\Node\TableNode as TableNode,
use Behat\Gherkin\Node\TableNode as TableNode,
Behat\Mink\Exception\ElementNotFoundException as ElementNotFoundException;
/**
@@ -75,7 +74,7 @@ class behat_admin extends behat_base {
$exception = new ElementNotFoundException($this->getSession(), '"' . $label . '" administration setting ');
// The argument should be converted to an xpath literal.
$label = $this->getSession()->getSelectorsHandler()->xpathLiteral($label);
$label = behat_context_helper::escape($label);
// Single element settings.
try {
-2
View File
@@ -27,7 +27,6 @@ Feature: An administrator can filter user accounts by role, cohort and other pro
And I add "User Three (three@example.com)" user to "CH1" cohort members
And I follow "Browse list of users"
@javascript
Scenario: Filter user accounts by role and cohort
When I set the following fields to these values:
| courserole_rl | Student |
@@ -51,7 +50,6 @@ Feature: An administrator can filter user accounts by role, cohort and other pro
And I should see "User Three"
And I should see "User Four"
@javascript
Scenario: Filter user accounts by confirm and authentication method
When I set the following fields to these values:
| Confirmed | No |
-41
View File
@@ -1,41 +0,0 @@
@core @core_admin @_file_upload
Feature: Upload users
In order to add users to the system
As an admin
I need to upload files containing the users data
@javascript
Scenario: Upload users enrolling them on courses and groups
Given the following "courses" exist:
| fullname | shortname | category |
| Maths | math102 | 0 |
And the following "groups" exist:
| name | course | idnumber |
| Section 1 | math102 | S1 |
| Section 3 | math102 | S3 |
And I log in as "admin"
And I navigate to "Upload users" node in "Site administration > Users > Accounts"
When I upload "lib/tests/fixtures/upload_users.csv" file to "File" filemanager
And I press "Upload users"
Then I should see "Upload users preview"
And I should see "Tom"
And I should see "Jones"
And I should see "verysecret"
And I should see "jonest@example.com"
And I should see "Reznor"
And I should see "course1"
And I should see "math102"
And I should see "group1"
And I should see "Section 1"
And I press "Upload users"
And I press "Continue"
And I follow "Browse list of users"
And I should see "Tom Jones"
And I should see "Trent Reznor"
And I should see "reznor@example.com"
And I am on site homepage
And I follow "Maths"
And I expand "Users" node
And I follow "Groups"
And I set the field "groups" to "Section 1 (1)"
And the "members" select box should contain "Tom Jones"
@@ -8,6 +8,8 @@ Feature: Manage availability conditions
Scenario: Display list of availability conditions
# Check the report doesn't show when not enabled.
Given I log in as "admin"
And the following config values are set as admin:
| enableavailability | 0 |
And I expand "Site administration" node
When I expand "Plugins" node
Then I should not see "Availability restrictions"
@@ -28,8 +30,6 @@ Feature: Manage availability conditions
Given the following "courses" exist:
| fullname | shortname | format |
| Course 1 | C1 | topics |
And the following config values are set as admin:
| enableavailability | 1 |
And I log in as "admin"
And I am on site homepage
When I navigate to "Manage restrictions" node in "Site administration > Plugins > Availability restrictions"
+16 -7
View File
@@ -120,10 +120,14 @@ $tags = '';
if ($options['profile']) {
$profile = $options['profile'];
if (!isset($CFG->behat_config[$profile])) {
echo "Invalid profile passed: " . $profile;
// If profile passed is not set, then exit.
if (!isset($CFG->behat_config[$profile]) && !isset($CFG->behat_profiles[$profile]) &&
!(isset($options['replace']) && (strpos($options['profile'], $options['replace']) >= 0 ))) {
echo "Invalid profile passed: " . $profile . PHP_EOL;
exit(1);
}
$extraopts[] = '--profile="' . $profile . '"';
// By default, profile tags will be used.
if (!empty($CFG->behat_config[$profile]['filters']['tags'])) {
@@ -226,22 +230,27 @@ $exitcodes = print_combined_run_output($processes, $stoponfail);
$time = round(microtime(true) - $time, 1);
echo "Finished in " . gmdate("G\h i\m s\s", $time) . PHP_EOL . PHP_EOL;
ksort($exitcodes);
// Print exit info from each run.
$status = false;
// Status bits contains pass/fail status of parallel runs.
$status = 0;
$processcounter = 0;
foreach ($exitcodes as $exitcode) {
$status = (bool)$status || (bool)$exitcode;
if ($exitcode) {
$status |= (1 << $processcounter);
}
$processcounter++;
}
// Run finished. Show exit code and output from individual process.
$verbose = empty($options['verbose']) ? false : true;
$verbose = $verbose || $status;
$verbose = $verbose || !empty($status);
// Show exit code from each process, if any process failed.
if ($verbose) {
// Echo exit codes.
echo "Exit codes for each behat run: " . PHP_EOL;
ksort($exitcodes);
foreach ($exitcodes as $run => $exitcode) {
echo $run . ": " . $exitcode . PHP_EOL;
}
@@ -263,7 +272,7 @@ print_each_process_info($processes, $verbose);
// Remove site symlink if necessary.
behat_config_manager::drop_parallel_site_links();
exit((int) $status);
exit($status);
/**
* Signal handler for terminal exit.
+5
View File
@@ -173,6 +173,11 @@ if ($options['install']) {
// This is only displayed once for parallel install.
if (empty($options['run'])) {
// Notify user that 2.5 profile has been converted to 3.5.
if (behat_config_manager::$autoprofileconversion) {
mtrace("2.5 behat profile detected, automatically converted to current 3.x format");
}
$runtestscommand = behat_command::get_behat_command(true, !empty($options['run']));
$runtestscommand .= ' --config ' . behat_config_manager::get_behat_cli_config_filepath();
@@ -424,9 +424,9 @@ Feature: Set up contextual data for tests
And the following "grade categories" exist:
| fullname | course |
| Grade category 1 | C1 |
And the following "grade items" exist:
| itemname | course | outcome | gradecategory |
| Test Outcome Grade Item 1 | C1 | OT1 | Grade category 1 |
And the following "grade items" exist:
| itemname | course | outcome | gradecategory |
| Test Outcome Grade Item 1 | C1 | OT1 | Grade category 1 |
And the following config values are set as admin:
| enableoutcomes | 1 |
When I log in as "admin"
@@ -441,3 +441,15 @@ Feature: Set up contextual data for tests
And I expand all fieldsets
And "//div[contains(@class, 'fitem')]/div[contains(@class, 'fitemtitle')]/div[contains(@class, fstaticlabel) and contains(., 'Grade category')]/../../div[contains(@class, 'felement') and contains(., 'Grade category 1')]" "xpath_element" should exist
And I press "Cancel"
Scenario: Add a block
Given the following "courses" exist:
| fullname | shortname |
| Course 1 | C1 |
And the following "blocks" exist:
| blockname | contextlevel | reference | pagetypepattern | defaultregion |
| online_users | Course | C1 | course-view-* | site-pre |
When I log in as "admin"
And I am on site homepage
And I follow "Course 1"
Then I should see "Online users"
@@ -0,0 +1,34 @@
<?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/>.
/**
* Display environment used for running behat.
*
* This file is used for behat testing to ensure cli and apache
* version of environment is same.
*
* @package tool_behat
* @copyright 2016 onwards Rajesh Taneja
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(__DIR__.'/../../../../../../config.php');
// Only continue for behat site.
defined('BEHAT_SITE_RUNNING') || die();
require_once($CFG->libdir.'/behat/classes/util.php');
echo json_encode(behat_util::get_environment(), true);
@@ -12,7 +12,6 @@ Feature: Forms manipulation
When I set the field "First name" to "Field value"
And I set the field "Select a country" to "Japan"
And I set the field "Unmask" to "1"
And I expand all fieldsets
Then the field "First name" matches value "Field value"
And the "Select a country" select box should contain "Japan"
And the field "Unmask" matches value "1"
+1 -2
View File
@@ -142,11 +142,10 @@ class tool_behat_manager_testcase extends advanced_testcase {
// YAML decides when is is necessary to wrap strings between single quotes, so not controlled
// values like paths should not be asserted including the key name as they would depend on the
// directories values.
$this->assertContains($CFG->dirroot . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . 'behat' . DIRECTORY_SEPARATOR . 'features', $contents);
$this->assertContains($CFG->dirroot, $contents);
// Not quoted strings.
$this->assertContains('micarro: /me/lo/robaron', $contents);
$this->assertContains('class: behat_init_context', $contents);
// YAML uses single quotes to wrap URL strings.
$this->assertContains("base_url: '" . $CFG->behat_wwwroot . "'", $contents);
+4 -4
View File
@@ -26,7 +26,7 @@
.path-admin-tool-capability .comparisontable tbody th span {display:block;color:#666;font-size:80%;}
.path-admin-tool-capability .comparisontable tbody td {border:1px solid #DFDFDF;}
.path-admin-tool-capability .comparisontable .inherit {color:#666;}
.path-admin-tool-capability .comparisontable .allow {color:#006600;font-weight:bold;}
.path-admin-tool-capability .comparisontable .prevent {color:#ad6704;font-weight:bold;}
.path-admin-tool-capability .comparisontable .prohibit {color:#880000;font-weight:bold;}
.path-admin-tool-capability .comparisontable .inherit {color:#666}
.path-admin-tool-capability .comparisontable .allow {background-color:#006600;font-weight:bold;color:white;}
.path-admin-tool-capability .comparisontable .prevent {background-color:#ad6704;font-weight:bold;color:white;}
.path-admin-tool-capability .comparisontable .prohibit {background-color:#880000;font-weight:bold;color:white;}
+228
View File
@@ -0,0 +1,228 @@
<?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/>.
/**
* Class exposing the api for the cohortroles tool.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles;
use stdClass;
use context_system;
use core_competency\invalid_persistent_exception;
/**
* Class for doing things with cohort roles.
*
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class api {
/**
* Create a cohort role assignment from a record containing all the data for the class.
*
* Requires moodle/role:manage capability at the system context.
*
* @param stdClass $record Record containing all the data for an instance of the class.
* @return competency
*/
public static function create_cohort_role_assignment(stdClass $record) {
$cohortroleassignment = new cohort_role_assignment(0, $record);
$context = context_system::instance();
// First we do a permissions check.
require_capability('moodle/role:manage', $context);
// Validate before we check for existing records.
if (!$cohortroleassignment->is_valid()) {
throw new invalid_persistent_exception($cohortroleassignment->get_errors());
}
$existing = cohort_role_assignment::get_record((array) $record);
if (!empty($existing)) {
return false;
} else {
// OK - all set.
$cohortroleassignment->create();
}
return $cohortroleassignment;
}
/**
* Delete a cohort role assignment by id.
*
* Requires moodle/role:manage capability at the system context.
*
* @param int $id The record to delete. This will also remove this role from the user for all users in the system.
* @return boolean
*/
public static function delete_cohort_role_assignment($id) {
$cohortroleassignment = new cohort_role_assignment($id);
$context = context_system::instance();
// First we do a permissions check.
require_capability('moodle/role:manage', $context);
// OK - all set.
return $cohortroleassignment->delete();
}
/**
* Perform a search based on the provided filters and return a paginated list of records.
*
* Requires moodle/role:manage capability at the system context.
*
* @param string $sort The column to sort on
* @param string $order ('ASC' or 'DESC')
* @param int $skip Number of records to skip (pagination)
* @param int $limit Max of records to return (pagination)
* @return array of cohort_role_assignment
*/
public static function list_cohort_role_assignments($sort = '', $order = 'ASC', $skip = 0, $limit = 0) {
$context = context_system::instance();
// First we do a permissions check.
require_capability('moodle/role:manage', $context);
// OK - all set.
return cohort_role_assignment::get_records(array(), $sort, $order, $skip, $limit);
}
/**
* Perform a search based on the provided filters and return a paginated list of records.
*
* Requires moodle/role:manage capability at system context.
*
* @return int
*/
public static function count_cohort_role_assignments() {
$context = context_system::instance();
// First we do a permissions check.
require_capability('moodle/role:manage', $context);
// OK - all set.
return cohort_role_assignment::count_records();
}
/**
* Sync all roles - adding and deleting role assignments as required.
*
* Slow. Should only be called from a background task.
*
* Requires moodle/role:manage capability at the system context.
*
* @return array('rolesadded' => array of (useridassignedto, useridassignedover, roleid),
* 'rolesremoved' => array of (useridassignedto, useridassignedover, roleid))
*/
public static function sync_all_cohort_roles() {
global $DB;
$context = context_system::instance();
// First we do a permissions check.
require_capability('moodle/role:manage', $context);
// Ok ready to go.
$rolesadded = array();
$rolesremoved = array();
// Get all cohort role assignments and group them by user and role.
$all = cohort_role_assignment::get_records(array(), 'userid, roleid');
// We build an better structure to loop on.
$info = array();
foreach ($all as $cra) {
if (!isset($info[$cra->get_userid()])) {
$info[$cra->get_userid()] = array();
}
if (!isset($info[$cra->get_userid()][$cra->get_roleid()])) {
$info[$cra->get_userid()][$cra->get_roleid()] = array();
}
array_push($info[$cra->get_userid()][$cra->get_roleid()], $cra->get_cohortid());
}
// Then for each user+role combo - find user context in the cohort without a role assigned.
foreach ($info as $userid => $roles) {
foreach ($roles as $roleid => $cohorts) {
list($cohortsql, $params) = $DB->get_in_or_equal($cohorts, SQL_PARAMS_NAMED);
$params['usercontext'] = CONTEXT_USER;
$params['roleid'] = $roleid;
$params['userid'] = $userid;
$sql = 'SELECT u.id AS userid, ra.id, ctx.id AS contextid
FROM {user} u
JOIN {cohort_members} cm ON u.id = cm.userid
JOIN {context} ctx ON u.id = ctx.instanceid AND ctx.contextlevel = :usercontext
LEFT JOIN {role_assignments} ra ON ra.contextid = ctx.id
AND ra.roleid = :roleid
AND ra.userid = :userid
WHERE cm.cohortid ' . $cohortsql . '
AND ra.id IS NULL';
$toadd = $DB->get_records_sql($sql, $params);
foreach ($toadd as $add) {
role_assign($roleid, $userid, $add->contextid, 'tool_cohortroles');
$rolesadded[] = array(
'useridassignedto' => $userid,
'useridassignedover' => $add->userid,
'roleid' => $roleid
);
}
}
}
// And for each user+role combo - find user context not in the cohort with a role assigned.
// If the role was assigned by this component, unassign the role.
foreach ($info as $userid => $roles) {
foreach ($roles as $roleid => $cohorts) {
// Now we are looking for entries NOT in the cohort.
list($cohortsql, $params) = $DB->get_in_or_equal($cohorts, SQL_PARAMS_NAMED);
$params['usercontext'] = CONTEXT_USER;
$params['roleid'] = $roleid;
$params['userid'] = $userid;
$params['component'] = 'tool_cohortroles';
$sql = 'SELECT u.id as userid, ra.id, ctx.id AS contextid
FROM {user} u
JOIN {context} ctx ON u.id = ctx.instanceid AND ctx.contextlevel = :usercontext
JOIN {role_assignments} ra ON ra.contextid = ctx.id AND ra.roleid = :roleid AND ra.userid = :userid
LEFT JOIN {cohort_members} cm ON u.id = cm.userid
AND cm.cohortid ' . $cohortsql . '
WHERE ra.component = :component AND cm.cohortid IS NULL';
$toremove = $DB->get_records_sql($sql, $params);
foreach ($toremove as $remove) {
role_unassign($roleid, $userid, $remove->contextid, 'tool_cohortroles');
$rolesremoved[] = array(
'useridassignedto' => $userid,
'useridassignedover' => $remove->userid,
'roleid' => $roleid
);
}
}
}
return array('rolesadded' => $rolesadded, 'rolesremoved' => $rolesremoved);
}
}
@@ -0,0 +1,107 @@
<?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/>.
/**
* Class for cohort_role_assignment persistence.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles;
use lang_string;
use core_competency\persistent;
/**
* Class for loading/storing cohort_role_assignments from the DB.
*
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class cohort_role_assignment extends persistent {
/** Table name for user_competency persistency */
const TABLE = 'tool_cohortroles';
/**
* Return the definition of the properties of this model.
*
* @return array
*/
protected static function define_properties() {
return array(
'userid' => array(
'type' => PARAM_INT,
),
'roleid' => array(
'type' => PARAM_INT,
),
'cohortid' => array(
'type' => PARAM_INT,
)
);
}
/**
* Validate the user ID.
*
* @param int $value The value.
* @return true|lang_string
*/
protected function validate_userid($value) {
global $DB;
if (!$DB->record_exists('user', array('id' => $value))) {
return new lang_string('invaliduserid', 'error');
}
return true;
}
/**
* Validate the role ID.
*
* @param int $value The value.
* @return true|lang_string
*/
protected function validate_roleid($value) {
global $DB;
if (!$DB->record_exists('role', array('id' => $value))) {
return new lang_string('invalidroleid', 'error');
}
return true;
}
/**
* Validate the cohort ID.
*
* @param int $value The value.
* @return true|lang_string
*/
protected function validate_cohortid($value) {
global $DB;
if (!$DB->record_exists('cohort', array('id' => $value))) {
return new lang_string('invalidcohortid', 'error');
}
return true;
}
}
@@ -0,0 +1,86 @@
<?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/>.
/**
* Assign role to cohort form.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles\form;
defined('MOODLE_INTERNAL') || die();
use moodleform;
use context_system;
require_once($CFG->libdir . '/formslib.php');
/**
* Assign role to cohort form.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class assign_role_cohort extends moodleform {
/**
* Form definition.
*/
public function definition() {
global $PAGE;
$mform = $this->_form;
$roles = get_roles_for_contextlevels(CONTEXT_USER);
if (empty($roles)) {
$output = $PAGE->get_renderer('tool_cohortroles');
$warning = $output->notify_problem(get_string('noassignableroles', 'tool_cohortroles'));
$mform->addElement('html', $warning);
return;
}
$options = array(
'ajax' => 'tool_lp/form-user-selector',
'multiple' => true
);
$mform->addElement('autocomplete', 'userids', get_string('selectusers', 'tool_cohortroles'), array(), $options);
$mform->addRule('userids', null, 'required');
$names = role_get_names();
$options = array();
foreach ($roles as $idx => $roleid) {
$options[$roleid] = $names[$roleid]->localname;
}
$mform->addElement('select', 'roleid', get_string('selectrole', 'tool_cohortroles'), $options);
$mform->addRule('roleid', null, 'required');
$context = context_system::instance();
$options = array(
'ajax' => 'tool_lp/form-cohort-selector',
'multiple' => true,
'data-contextid' => $context->id,
'data-includes' => 'all'
);
$mform->addElement('autocomplete', 'cohortids', get_string('selectcohorts', 'tool_cohortroles'), array(), $options);
$mform->addRule('cohortids', null, 'required');
$mform->addElement('submit', 'submit', get_string('assign', 'tool_cohortroles'));
}
}
@@ -0,0 +1,231 @@
<?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/>.
/**
* Cohort role assignments table
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles\output;
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/tablelib.php');
use context_helper;
use context_system;
use html_writer;
use moodle_url;
use table_sql;
/**
* Cohort role assignments table.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class cohort_role_assignments_table extends table_sql {
/**
* Sets up the table.
*
* @param string $uniqueid Unique id of table.
* @param moodle_url $url The base URL.
*/
public function __construct($uniqueid, $url) {
global $CFG;
parent::__construct($uniqueid);
$context = context_system::instance();
$this->context = $context;
$this->rolenames = role_get_names();
// This object should not be used without the right permissions.
require_capability('moodle/role:manage', $context);
$this->useridfield = 'userid';
// Define columns in the table.
$this->define_table_columns();
$this->define_baseurl($url);
// Define configs.
$this->define_table_configs();
}
/**
* Role name column.
*
* @param array $data Row data.
* @return string
*/
protected function col_rolename($data) {
return $this->rolenames[$data->roleid]->localname;
}
/**
* Cohort name column.
*
* @param array $data Row data.
* @return string
*/
protected function col_cohortname($data) {
global $OUTPUT;
$record = (object) array(
'id' => $data->cohortid,
'idnumber' => $data->cohortidnumber,
'description' => $data->cohortdescription,
'visible' => $data->cohortvisible,
'name' => $data->cohortname
);
$context = context_helper::instance_by_id($data->cohortcontextid);
$exporter = new \tool_lp\external\cohort_summary_exporter($record, array('context' => $context));
$cohort = $exporter->export($OUTPUT);
$html = $OUTPUT->render_from_template('tool_cohortroles/cohort-in-list', $cohort);
return $html;
}
/**
* Actions column.
*
* @param array $data Row data.
* @return string
*/
protected function col_actions($data) {
global $OUTPUT;
$action = new \confirm_action(get_string('removecohortroleassignmentconfirm', 'tool_cohortroles'));
$url = new moodle_url($this->baseurl);
$url->params(array('removecohortroleassignment' => $data->id, 'sesskey' => sesskey()));
$pix = new \pix_icon('t/delete', get_string('removecohortroleassignment', 'tool_cohortroles'));
return $OUTPUT->action_link($url, '', $action, null, $pix);
}
/**
* Setup the headers for the table.
*/
protected function define_table_columns() {
$extrafields = get_extra_user_fields($this->context);
// Define headers and columns.
$cols = array(
'cohortname' => get_string('cohort', 'cohort'),
'rolename' => get_string('role'),
'fullname' => get_string('name'),
);
// Add headers for extra user fields.
foreach ($extrafields as $field) {
if (get_string_manager()->string_exists($field, 'moodle')) {
$cols[$field] = get_string($field);
} else {
$cols[$field] = $field;
}
}
// Add remaining headers.
$cols = array_merge($cols, array('actions' => get_string('actions')));
$this->define_columns(array_keys($cols));
$this->define_headers(array_values($cols));
}
/**
* Define table configs.
*/
protected function define_table_configs() {
$this->collapsible(false);
$this->sortable(true, 'lastname', SORT_ASC);
$this->pageable(true);
$this->no_sorting('actions');
}
/**
* Builds the SQL query.
*
* @param bool $count When true, return the count SQL.
* @return array containing sql to use and an array of params.
*/
protected function get_sql_and_params($count = false) {
$fields = 'uca.id, uca.cohortid, uca.userid, uca.roleid, ';
$fields .= 'c.name as cohortname, c.idnumber as cohortidnumber, c.contextid as cohortcontextid, ';
$fields .= 'c.visible as cohortvisible, c.description as cohortdescription, ';
// Add extra user fields that we need for the graded user.
$extrafields = get_extra_user_fields($this->context);
foreach ($extrafields as $field) {
$fields .= 'u.' . $field . ', ';
}
$fields .= get_all_user_name_fields(true, 'u');
if ($count) {
$select = "COUNT(1)";
} else {
$select = "$fields";
}
$sql = "SELECT $select
FROM {tool_cohortroles} uca
JOIN {user} u ON u.id = uca.userid
JOIN {cohort} c ON c.id = uca.cohortid";
$params = array();
// Add order by if needed.
if (!$count && $sqlsort = $this->get_sql_sort()) {
$sql .= " ORDER BY " . $sqlsort;
}
return array($sql, $params);
}
/**
* Override the default implementation to set a decent heading level.
*/
public function print_nothing_to_display() {
global $OUTPUT;
echo $this->render_reset_button();
$this->print_initials_bar();
echo $OUTPUT->heading(get_string('nothingtodisplay'), 4);
}
/**
* Query the DB.
*
* @param int $pagesize size of page for paginated displayed table.
* @param bool $useinitialsbar do you want to use the initials bar.
*/
public function query_db($pagesize, $useinitialsbar = true) {
global $DB;
list($countsql, $countparams) = $this->get_sql_and_params(true);
list($sql, $params) = $this->get_sql_and_params();
$total = $DB->count_records_sql($countsql, $countparams);
$this->pagesize($pagesize, $total);
$this->rawdata = $DB->get_records_sql($sql, $params, $this->get_page_start(), $this->get_page_size());
// Set initial bars.
if ($useinitialsbar) {
$this->initialbars($total > $pagesize);
}
}
}
@@ -0,0 +1,76 @@
<?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/>.
/**
* Renderer class for cohort roles
*
* @package tool_cohortroles
* @copyright 2016 Issam Taboubi <issam.taboubi@umontreal.ca>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles\output;
defined('MOODLE_INTERNAL') || die();
use plugin_renderer_base;
use renderable;
/**
* Renderer class for cohort roles
*
* @package tool_cohortroles
* @copyright 2016 Issam Taboubi <issam.taboubi@umontreal.ca>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class renderer extends plugin_renderer_base {
/**
* Output a nofication.
*
* @param string $message the message to print out
* @return string HTML fragment.
* @see \core\output\notification
*/
public function notify_message($message) {
$n = new \core\output\notification($message, \core\output\notification::NOTIFY_INFO);
return $this->render($n);
}
/**
* Output an error notification.
*
* @param string $message the message to print out
* @return string HTML fragment.
* @see \core\output\notification
*/
public function notify_problem($message) {
$n = new \core\output\notification($message, \core\output\notification::NOTIFY_ERROR);
return $this->render($n);
}
/**
* Output a success notification.
*
* @param string $message the message to print out
* @return string HTML fragment.
* @see \core\output\notification
*/
public function notify_success($message) {
$n = new \core\output\notification($message, \core\output\notification::NOTIFY_SUCCESS);
return $this->render($n);
}
}
@@ -0,0 +1,56 @@
<?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/>.
/**
* Scheduled task for syncing cohort roles.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace tool_cohortroles\task;
use core\task\scheduled_task;
use tool_cohortroles\api;
/**
* Scheduled task for syncing cohort roles.
*
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class cohort_role_sync extends scheduled_task {
/**
* Get name.
* @return string
*/
public function get_name() {
// Shown in admin screens.
return get_string('taskname', 'tool_cohortroles');
}
/**
* Execute.
*/
public function execute() {
mtrace('Sync cohort roles...');
$result = api::sync_all_cohort_roles();
mtrace('Added ' . count($result['rolesadded']));
mtrace('Removed ' . count($result['rolesremoved']));
}
}
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8" ?>
<XMLDB PATH="admin/tool/cohortroles/db" VERSION="20151201" COMMENT="XMLDB file for Moodle admin/tool/cohortroles"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../../lib/xmldb/xmldb.xsd"
>
<TABLES>
<TABLE NAME="tool_cohortroles" COMMENT="Mapping of users to cohort role assignments.">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
<FIELD NAME="cohortid" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The cohort to sync"/>
<FIELD NAME="roleid" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The role to assign"/>
<FIELD NAME="userid" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The user to sync"/>
<FIELD NAME="timecreated" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The time this record was created"/>
<FIELD NAME="timemodified" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The time this record was modified."/>
<FIELD NAME="usermodified" TYPE="int" LENGTH="10" NOTNULL="false" SEQUENCE="false" COMMENT="Who last modified this record?"/>
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
</KEYS>
<INDEXES>
<INDEX NAME="cohortuserrole" UNIQUE="true" FIELDS="cohortid, roleid, userid"/>
</INDEXES>
</TABLE>
</TABLES>
</XMLDB>
+37
View File
@@ -0,0 +1,37 @@
<?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/>.
/**
* Tasks definitions.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$tasks = array(
array(
'classname' => 'tool_cohortroles\task\cohort_role_sync',
'blocking' => 0,
'minute' => 'R',
'hour' => '*',
'day' => '*',
'dayofweek' => '*',
'month' => '*'
),
);
+98
View File
@@ -0,0 +1,98 @@
<?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/>.
/**
* Assign roles for a user.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/tablelib.php');
$removeid = optional_param('removecohortroleassignment', 0, PARAM_INT);
admin_externalpage_setup('toolcohortroles');
$context = context_system::instance();
$pageurl = new moodle_url('/admin/tool/cohortroles/index.php');
$output = $PAGE->get_renderer('tool_cohortroles');
echo $output->header();
$title = get_string('assignroletocohort', 'tool_cohortroles');
echo $output->heading($title);
$form = new tool_cohortroles\form\assign_role_cohort();
if ($removeid) {
require_sesskey();
$result = \tool_cohortroles\api::delete_cohort_role_assignment($removeid);
if ($result) {
$notification = get_string('cohortroleassignmentremoved', 'tool_cohortroles');
echo $output->notify_success($notification);
} else {
$notification = get_string('cohortroleassignmentnotremoved', 'tool_cohortroles');
echo $output->notify_problem($notification);
}
echo $output->continue_button(new moodle_url($pageurl));
} else if ($data = $form->get_data()) {
require_sesskey();
// We must create them all or none.
$saved = 0;
// Loop through userids and cohortids only if both of them are not empty.
if (!empty($data->userids) && !empty($data->cohortids)) {
foreach ($data->userids as $userid) {
foreach ($data->cohortids as $cohortid) {
$params = (object) array('userid' => $userid, 'cohortid' => $cohortid, 'roleid' => $data->roleid);
$result = \tool_cohortroles\api::create_cohort_role_assignment($params);
if ($result) {
$saved++;
}
}
}
}
if ($saved == 0) {
$notification = get_string('nocohortroleassignmentssaved', 'tool_cohortroles');
echo $output->notify_problem($notification);
} else if ($saved == 1) {
$notification = get_string('onecohortroleassignmentsaved', 'tool_cohortroles');
echo $output->notify_success($notification);
} else {
$notification = get_string('acohortroleassignmentssaved', 'tool_cohortroles', $saved);
echo $output->notify_success($notification);
}
echo $output->continue_button(new moodle_url($pageurl));
} else {
$form->display();
$title = get_string('existingcohortroles', 'tool_cohortroles');
echo $output->heading($title);
$url = new moodle_url('/admin/tool/cohortroles/index.php');
$table = new tool_cohortroles\output\cohort_role_assignments_table(uniqid(), $url);
echo $table->out(50, true);
echo $output->spacer();
echo $output->notify_message(get_string('backgroundsync', 'tool_cohortroles'));
}
echo $output->footer();
@@ -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/>.
/**
* Strings for component 'tool_userroles', language 'en'
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['acohortroleassignmentssaved'] = '{$a} cohort role assignments were saved.';
$string['assign'] = 'Assign';
$string['assignroletocohort'] = 'Assign role to users in the context of all members of these cohorts';
$string['backgroundsync'] = 'Note: Roles assigned on this page will not take affect immediately, the changes to role assignments will be made by a background task.';
$string['cohortroleassignmentremoved'] = 'The cohort role assignment was removed.';
$string['cohortroleassignmentnotremoved'] = 'The cohort role assignment was not removed.';
$string['cohortroles'] = 'Cohort roles';
$string['existingcohortroles'] = 'Existing cohort role assignments';
$string['managecohortroles'] = 'Assign user roles for entire cohort';
$string['noassignableroles'] = 'No roles can be assigned at a user context level. <a href="../../roles/manage.php">Manage roles</a>';
$string['nocohortroleassignmentssaved'] = 'No cohort role assignments were saved.';
$string['onecohortroleassignmentsaved'] = 'One cohort role assignment was saved.';
$string['pluginname'] = 'Cohort roles management';
$string['removecohortroleassignment'] = 'Remove cohort role assignment';
$string['removecohortroleassignmentconfirm'] = 'Are you sure you want to remove this cohort role assignment? This role will be removed for this user in all other user contexts.';
$string['selectcohorts'] = 'Select cohorts';
$string['selectrole'] = 'Select role';
$string['selectusers'] = 'Select users to assign role';
$string['taskname'] = 'Sync cohort role assignments';
$string['thisuserroles'] = 'Roles assigned relative to this user';
+42
View File
@@ -0,0 +1,42 @@
<?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/>.
/**
* Link to user roles management.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die;
// This tool's required capabilities.
$capabilities = [
'moodle/cohort:view',
'moodle/role:manage'
];
// Check if the user has all of the required capabilities.
$context = context_system::instance();
$hasaccess = has_all_capabilities($capabilities, $context);
// Add this admin page only if the user has all of the required capabilities.
if ($hasaccess) {
$str = get_string('managecohortroles', 'tool_cohortroles');
$url = new moodle_url('/admin/tool/cohortroles/index.php');
$ADMIN->add('roles', new admin_externalpage('toolcohortroles', $str, $url, $capabilities));
}
@@ -0,0 +1,43 @@
{{!
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 tool_cohortroles/cohort-in-list
Moodle template for displaying a cohort in a list.
Classes required for JS:
* none
Data attributes required for JS:
* none
Context variables required for this template:
* id cohort id field
* name cohort name field
* idnumber cohort idnumber field
* description cohort description field
* visible cohort visible field
Example context (json):
{ "id": "1",
"name": "Cohort 1",
"visible": true,
"idnumber": "014",
"description": "Some users"
}
}}
{{> tool_lp/form-cohort-selector-suggestion }}
+243
View File
@@ -0,0 +1,243 @@
<?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/>.
/**
* API tests.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
use tool_cohortroles\api;
/**
* API tests.
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_cohortroles_api_testcase extends advanced_testcase {
/** @var stdClass $cohort */
protected $cohort = null;
/** @var stdClass $userassignto */
protected $userassignto = null;
/** @var stdClass $userassignover */
protected $userassignover = null;
/** @var stdClass $role */
protected $role = null;
/**
* Setup function- we will create a course and add an assign instance to it.
*/
protected function setUp() {
global $DB;
$this->resetAfterTest(true);
// Create some users.
$this->cohort = $this->getDataGenerator()->create_cohort();
$this->userassignto = $this->getDataGenerator()->create_user();
$this->userassignover = $this->getDataGenerator()->create_user();
$this->roleid = create_role('Sausage Roll', 'sausageroll', 'mmmm');
cohort_add_member($this->cohort->id, $this->userassignover->id);
}
public function test_create_cohort_role_assignment_without_permission() {
$this->setExpectedException('required_capability_exception');
$this->setUser($this->userassignto);
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
api::create_cohort_role_assignment($params);
}
public function test_create_cohort_role_assignment_with_invalid_data() {
$this->setExpectedException('core_competency\invalid_persistent_exception');
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => -8,
'cohortid' => $this->cohort->id
);
api::create_cohort_role_assignment($params);
}
public function test_create_cohort_role_assignment() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$this->assertNotEmpty($result->get_id());
$this->assertEquals($result->get_userid(), $this->userassignto->id);
$this->assertEquals($result->get_roleid(), $this->roleid);
$this->assertEquals($result->get_cohortid(), $this->cohort->id);
}
public function test_delete_cohort_role_assignment_without_permission() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$this->setExpectedException('required_capability_exception');
$this->setUser($this->userassignto);
api::delete_cohort_role_assignment($result->get_id());
}
public function test_delete_cohort_role_assignment_with_invalid_data() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$this->setExpectedException('dml_missing_record_exception');
api::delete_cohort_role_assignment($result->get_id() + 1);
}
public function test_delete_cohort_role_assignment() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$worked = api::delete_cohort_role_assignment($result->get_id());
$this->assertTrue($worked);
}
public function test_list_cohort_role_assignments() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$list = api::list_cohort_role_assignments();
$list[0]->is_valid();
$this->assertEquals($list[0], $result);
}
public function test_count_cohort_role_assignments() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
$count = api::count_cohort_role_assignments();
$this->assertEquals($count, 1);
}
public function test_sync_all_cohort_roles() {
$this->setAdminUser();
$params = (object) array(
'userid' => $this->userassignto->id,
'roleid' => $this->roleid,
'cohortid' => $this->cohort->id
);
$result = api::create_cohort_role_assignment($params);
// Verify roles are assigned when users enter the cohort.
$sync = api::sync_all_cohort_roles();
$rolesadded = array(array(
'useridassignedto' => $this->userassignto->id,
'useridassignedover' => $this->userassignover->id,
'roleid' => $this->roleid
));
$rolesremoved = array();
$expected = array('rolesadded' => $rolesadded,
'rolesremoved' => $rolesremoved);
$this->assertEquals($sync, $expected);
// Verify roles are removed when users leave the cohort.
cohort_remove_member($this->cohort->id, $this->userassignover->id);
$sync = api::sync_all_cohort_roles();
$rolesadded = array();
$rolesremoved = array(array(
'useridassignedto' => $this->userassignto->id,
'useridassignedover' => $this->userassignover->id,
'roleid' => $this->roleid
));
$expected = array('rolesadded' => $rolesadded,
'rolesremoved' => $rolesremoved);
$this->assertEquals($sync, $expected);
// Verify roles assigned by any other component are not removed.
$usercontext = context_user::instance($this->userassignover->id);
role_assign($this->roleid, $this->userassignto->id, $usercontext->id);
$sync = api::sync_all_cohort_roles();
$rolesadded = array();
$rolesremoved = array();
$expected = array('rolesadded' => $rolesadded,
'rolesremoved' => $rolesremoved);
$this->assertEquals($sync, $expected);
// Remove manual role assignment.
role_unassign($this->roleid, $this->userassignto->id, $usercontext->id);
// Add someone to the cohort again...
cohort_add_member($this->cohort->id, $this->userassignover->id);
$sync = api::sync_all_cohort_roles();
$rolesadded = array(array(
'useridassignedto' => $this->userassignto->id,
'useridassignedover' => $this->userassignover->id,
'roleid' => $this->roleid
));
$rolesremoved = array();
$expected = array('rolesadded' => $rolesadded,
'rolesremoved' => $rolesremoved);
$this->assertEquals($sync, $expected);
// Verify no fatal errors when a cohort is deleted.
cohort_delete_cohort($this->cohort);
$sync = api::sync_all_cohort_roles();
$rolesadded = array();
$rolesremoved = array(array(
'useridassignedto' => $this->userassignto->id,
'useridassignedover' => $this->userassignover->id,
'roleid' => $this->roleid
));
$expected = array('rolesadded' => $rolesadded,
'rolesremoved' => $rolesremoved);
$this->assertEquals($sync, $expected);
}
}
+34
View File
@@ -0,0 +1,34 @@
<?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/>.
/**
* Plugin version info
*
* @package tool_cohortroles
* @copyright 2015 Damyon Wiese
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2015111018; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2014110400; // Requires this Moodle version.
$plugin->component = 'tool_cohortroles'; // Full name of the plugin (used for diagnostics).
$plugin->dependencies = array(
'tool_lp' => ANY_VERSION
);
+6 -22
View File
@@ -24,29 +24,10 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
function xmldb_tool_customlang_upgrade($oldversion) {
global $CFG, $DB, $OUTPUT;
$dbman = $DB->get_manager();
// Moodle v2.3.0 release upgrade line
// Put any upgrade step following this
// Moodle v2.4.0 release upgrade line
// Put any upgrade step following this
// Moodle v2.5.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v2.6.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v2.7.0 release upgrade line.
// Put any upgrade step following this.
global $CFG;
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
@@ -54,5 +35,8 @@ function xmldb_tool_customlang_upgrade($oldversion) {
// Moodle v2.9.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v3.0.0 release upgrade line.
// Put any upgrade step following this.
return true;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 B

After

Width:  |  Height:  |  Size: 67 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 B

After

Width:  |  Height:  |  Size: 67 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

After

Width:  |  Height:  |  Size: 207 B

+1 -14
View File
@@ -1,16 +1,3 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
<!ENTITY ns_flows "http://ns.adobe.com/Flows/1.0/">
]>
<svg version="1.1"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
x="0px" y="0px" width="16px" height="16px" viewBox="0 0 16 16" style="overflow:visible;enable-background:new 0 0 16 16;"
xml:space="preserve" preserveAspectRatio="xMinYMid meet">
<defs>
</defs>
<path style="fill:#999999;" d="M16,9v6c0,0.5-0.5,1-1,1h-1H2H1c-0.5,0-1-0.5-1-1V9c0-0.5,0.5-1,1-1h1c0.5,0,1,0.5,1,1v4h10V9
c0-0.5,0.5-1,1-1h1C15.5,8,16,8.5,16,9z M12.4,5.1l-0.7-0.7c-0.4-0.4-1-0.4-1.4,0L9.5,5.2V1c0-0.5-0.4-1-1-1h-1c-0.5,0-1,0.5-1,1
v4.2L5.7,4.4C5.3,4,4.7,4,4.3,4.4L3.6,5.1c-0.4,0.4-0.4,1,0,1.4l3.7,3.7c0.2,0.2,0.5,0.3,0.7,0.3c0.3,0,0.5-0.1,0.7-0.3l3.7-3.7
C12.8,6.2,12.8,5.5,12.4,5.1z"/>
</svg>
]><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" preserveAspectRatio="xMinYMid meet" overflow="visible"><path d="M16 9v6c0 .5-.5 1-1 1H1c-.5 0-1-.5-1-1V9c0-.5.5-1 1-1h1c.5 0 1 .5 1 1v4h10V9c0-.5.5-1 1-1h1c.5 0 1 .5 1 1zm-3.6-3.9l-.7-.7c-.4-.4-1-.4-1.4 0l-.8.8V1c0-.5-.4-1-1-1h-1c-.5 0-1 .5-1 1v4.2l-.8-.8c-.4-.4-1-.4-1.4 0l-.7.7c-.4.4-.4 1 0 1.4l3.7 3.7c.2.2.5.3.7.3.3 0 .5-.1.7-.3l3.7-3.7c.4-.3.4-1 0-1.4z" fill="#999"/></svg>

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 618 B

+1 -1
View File
@@ -188,7 +188,7 @@ echo html_writer::end_tag('td');
$options = array();
foreach ($availablelangs as $alang) {
if (!empty($alang[0]) and trim($alang[0]) !== 'en' and !$controller->is_installed_lang($alang[0], $alang[1])) {
$options[$alang[0]] = $alang[2].' ('.$alang[0].')';
$options[$alang[0]] = $alang[2].' &lrm;('.$alang[0].')&lrm;';
}
}
if (!empty($options)) {
@@ -13,10 +13,10 @@ Feature: Manage language packs
Scenario: Install language pack
Given I log in as "admin"
And I navigate to "Language packs" node in "Site administration > Language"
When I set the field "Available language packs" to "English - Pirate (en_ar)"
When I set the field "Available language packs" to "en_ar"
And I press "Install selected language pack(s)"
Then I should see "Language pack 'en_ar' was successfully installed"
And the "Installed language packs" select box should contain "English - Pirate (en_ar)"
And the "Installed language packs" select box should contain "en_ar"
And I navigate to "Live logs" node in "Site administration > Reports"
And I should see "The language pack 'en_ar' was installed."
And I log out
@@ -35,14 +35,14 @@ Feature: Manage language packs
Scenario: Try to uninstall language pack
Given I log in as "admin"
And I navigate to "Language packs" node in "Site administration > Language"
And I set the field "Available language packs" to "English - Pirate (en_ar)"
And I set the field "Available language packs" to "en_ar"
And I press "Install selected language pack(s)"
When I set the field "Installed language packs" to "English - Pirate (en_ar)"
When I set the field "Installed language packs" to "en_ar"
And I press "Uninstall selected language pack(s)"
And I press "Continue"
Then I should see "Language pack 'en_ar' was uninstalled"
And the "Installed language packs" select box should not contain "English - Pirate (en_ar)"
And the "Available language packs" select box should contain "English - Pirate (en_ar)"
And the "Installed language packs" select box should not contain "en_ar"
And the "Available language packs" select box should contain "en_ar"
And I navigate to "Live logs" node in "Site administration > Reports"
And I should see "The language pack 'en_ar' was removed."
And I should see "Language pack uninstalled"
@@ -51,7 +51,7 @@ Feature: Manage language packs
Scenario: Try to uninstall English language pack
Given I log in as "admin"
And I navigate to "Language packs" node in "Site administration > Language"
When I set the field "Installed language packs" to "English (en)"
When I set the field "Installed language packs" to "en"
And I press "Uninstall selected language pack(s)"
Then I should see "The English language pack cannot be uninstalled."
And I navigate to "Live logs" node in "Site administration > Reports"
-32
View File
@@ -106,38 +106,6 @@ class manager implements \core\log\manager {
if (empty($interface) || ($reader instanceof $interface)) {
$return[$plugin] = $reader;
}
// TODO MDL-49291 These conditions should be removed as part of the 2nd stage deprecation.
if ($reader instanceof \core\log\sql_internal_reader) {
debugging('\core\log\sql_internal_reader has been deprecated in favour of \core\log\sql_internal_table_reader.' .
' Update ' . get_class($reader) . ' to use the new interface.', DEBUG_DEVELOPER);
} else if ($reader instanceof \core\log\sql_select_reader) {
debugging('\core\log\sql_select_reader has been deprecated in favour of \core\log\sql_reader. Update ' .
get_class($reader) . ' to use the new interface.', DEBUG_DEVELOPER);
}
}
// TODO MDL-49291 This section below (until the final return) should be removed as part of the 2nd stage deprecation.
$isselectreader = (ltrim($interface, '\\') === 'core\log\sql_select_reader');
$isinternalreader = (ltrim($interface, '\\') === 'core\log\sql_internal_reader');
if ($isselectreader || $isinternalreader) {
if ($isselectreader) {
$alternative = '\core\log\sql_reader';
} else {
$alternative = '\core\log\sql_internal_table_reader';
}
if (count($return) === 0) {
// If there are no classes implementing the provided interface and the provided interface is one of
// the deprecated ones, we return the non-deprecated alternatives. It should be safe as the new interface
// is adding a new method but not changing the existing ones.
debugging($interface . ' has been deprecated in favour of ' . $alternative . '. Returning ' . $alternative .
' instances instead. Please call get_readers() using the new interface.', DEBUG_DEVELOPER);
$return = $this->get_readers($alternative);
} else {
debugging($interface . ' has been deprecated in favour of ' . $alternative .
'. Please call get_readers() using the new interface.', DEBUG_DEVELOPER);
}
}
return $return;
+4 -14
View File
@@ -31,20 +31,7 @@ defined('MOODLE_INTERNAL') || die();
* @return bool always true
*/
function xmldb_tool_log_upgrade($oldversion) {
global $CFG, $DB, $OUTPUT;
$dbman = $DB->get_manager();
if ($oldversion < 2014040600) {
// Reset logging defaults in dev branches,
// in production upgrade the install.php is executed instead.
require_once(__DIR__ . '/install.php');
xmldb_tool_log_install();
upgrade_plugin_savepoint(true, 2014040600, 'tool', 'log');
}
// Moodle v2.7.0 release upgrade line.
// Put any upgrade step following this.
global $CFG;
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
@@ -52,5 +39,8 @@ function xmldb_tool_log_upgrade($oldversion) {
// Moodle v2.9.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v3.0.0 release upgrade line.
// Put any upgrade step following this.
return true;
}
+6 -12
View File
@@ -22,19 +22,10 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
function xmldb_logstore_database_upgrade($oldversion) {
if ($oldversion < 2014041700) {
// Clean up old config.
unset_config('excludelevels', 'logstore_database');
unset_config('excludeactions', 'logstore_database');
// Savepoint reached.
upgrade_plugin_savepoint(true, 2014041700, 'logstore', 'database');
}
// Moodle v2.7.0 release upgrade line.
// Put any upgrade step following this.
global $CFG;
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
@@ -42,5 +33,8 @@ function xmldb_logstore_database_upgrade($oldversion) {
// Moodle v2.9.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v3.0.0 release upgrade line.
// Put any upgrade step following this.
return true;
}
@@ -52,8 +52,7 @@ class logstore_database_store_testcase extends advanced_testcase {
$this->assertCount(0, $stores);
// Fake the settings, we will abuse the standard plugin table here...
$parts = explode('_', get_class($DB));
set_config('dbdriver', $parts[1] . '/' . $parts[0], 'logstore_database');
set_config('dbdriver', $CFG->dblibrary . '/' . $CFG->dbtype, 'logstore_database');
set_config('dbhost', $CFG->dbhost, 'logstore_database');
set_config('dbuser', $CFG->dbuser, 'logstore_database');
set_config('dbpass', $CFG->dbpass, 'logstore_database');
@@ -182,6 +182,8 @@ class store implements \tool_log\log\store, \core\log\sql_reader {
/**
* Legacy add_to_log() code.
* @deprecated since Moodle 3.1 MDL-45104 - Please use supported log stores such as "standard" or "external" instead.
* @todo MDL-52805 This will be removed in Moodle 3.3
*
* @param int $courseid The course id
* @param string $module The module name e.g. forum, journal, resource, course, user etc
@@ -30,6 +30,7 @@
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
<KEY NAME="contextid" TYPE="foreign" FIELDS="contextid" REFTABLE="context" REFFIELDS="id"/>
</KEYS>
<INDEXES>
<INDEX NAME="timecreated" UNIQUE="false" FIELDS="timecreated"/>
+20 -87
View File
@@ -22,103 +22,36 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
function xmldb_logstore_standard_upgrade($oldversion) {
global $CFG, $DB;
$dbman = $DB->get_manager();
if ($oldversion < 2014032000) {
// Define field anonymous to be added to logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$field = new xmldb_field('anonymous', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '0', 'relateduserid');
// Conditionally launch add field anonymous.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Standard savepoint reached.
upgrade_plugin_savepoint(true, 2014032000, 'logstore', 'standard');
}
if ($oldversion < 2014041500) {
// Define index contextid-component (not unique) to be dropped form logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('contextid-component', XMLDB_INDEX_NOTUNIQUE, array('contextid', 'component'));
// Conditionally launch drop index contextid-component.
if ($dbman->index_exists($table, $index)) {
$dbman->drop_index($table, $index);
}
// Define index courseid (not unique) to be dropped form logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('courseid', XMLDB_INDEX_NOTUNIQUE, array('courseid'));
// Conditionally launch drop index courseid.
if ($dbman->index_exists($table, $index)) {
$dbman->drop_index($table, $index);
}
// Define index eventname (not unique) to be dropped form logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('eventname', XMLDB_INDEX_NOTUNIQUE, array('eventname'));
// Conditionally launch drop index eventname.
if ($dbman->index_exists($table, $index)) {
$dbman->drop_index($table, $index);
}
// Define index crud (not unique) to be dropped form logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('crud', XMLDB_INDEX_NOTUNIQUE, array('crud'));
// Conditionally launch drop index crud.
if ($dbman->index_exists($table, $index)) {
$dbman->drop_index($table, $index);
}
// Define index edulevel (not unique) to be dropped form logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('edulevel', XMLDB_INDEX_NOTUNIQUE, array('edulevel'));
// Conditionally launch drop index edulevel.
if ($dbman->index_exists($table, $index)) {
$dbman->drop_index($table, $index);
}
// Define index course-time (not unique) to be added to logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('course-time', XMLDB_INDEX_NOTUNIQUE, array('courseid', 'anonymous', 'timecreated'));
// Conditionally launch add index course-time.
if (!$dbman->index_exists($table, $index)) {
$dbman->add_index($table, $index);
}
// Define index user-module (not unique) to be added to logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$index = new xmldb_index('user-module', XMLDB_INDEX_NOTUNIQUE, array('userid', 'contextlevel', 'contextinstanceid', 'crud', 'edulevel', 'timecreated'));
// Conditionally launch add index user-module.
if (!$dbman->index_exists($table, $index)) {
$dbman->add_index($table, $index);
}
// Standard savepoint reached.
upgrade_plugin_savepoint(true, 2014041500, 'logstore', 'standard');
}
// Moodle v2.7.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v2.9.0 release upgrade line.
// Put any upgrade step following this.
// Moodle v3.0.0 release upgrade line.
// Put any upgrade step following this.
if ($oldversion < 2016041200) {
// This could take a long time. Unfortunately, no way to know how long, and no way to do progress, so setting for 1 hour.
upgrade_set_timeout(3600);
// Define key contextid (foreign) to be added to logstore_standard_log.
$table = new xmldb_table('logstore_standard_log');
$key = new xmldb_key('contextid', XMLDB_KEY_FOREIGN, array('contextid'), 'context', array('id'));
// Launch add key contextid.
$dbman->add_key($table, $key);
// Standard savepoint reached.
upgrade_plugin_savepoint(true, 2016041200, 'logstore', 'standard');
}
return true;
}
+1 -1
View File
@@ -24,6 +24,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2015111600; // The current plugin version (Date: YYYYMMDDXX).
$plugin->version = 2016041200; // The current plugin version (Date: YYYYMMDDXX).
$plugin->requires = 2015111000; // Requires this Moodle version.
$plugin->component = 'logstore_standard'; // Full name of the plugin (used for diagnostics).
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/templates","tool_lp/dialogue","tool_lp/event_base"],function(a,b,c,d,e,f){var g=function(a,b,c,d,e){var g=this;f.prototype.constructor.apply(this,[]),g._title=a,g._message=b,g._actions=c,g._confirm=d,g._cancel=e,g._selectedValue=null,g._reset()};return g.prototype=Object.create(f.prototype),g.prototype._selectedValue=null,g.prototype._popup=null,g.prototype._title=null,g.prototype._message=null,g.prototype._actions=null,g.prototype._confirm=null,g.prototype._cancel=null,g.prototype._afterRender=function(){var b=this;b._find('[data-action="action-selector-confirm"]').attr("disabled","disabled"),b._find('[data-region="action-selector-radio-buttons"]').change(function(){b._selectedValue=a("input[type='radio']:checked").val(),b._find('[data-action="action-selector-confirm"]').removeAttr("disabled"),b._refresh.bind(b)}.bind(b)),b._find('[data-action="action-selector-cancel"]').click(function(a){a.preventDefault(),b.close()}.bind(b)),b._find('[data-action="action-selector-confirm"]').click(function(a){a.preventDefault(),b._selectedValue.length&&(b._trigger("save",{action:b._selectedValue}),b.close())}.bind(b))},g.prototype.close=function(){var a=this;a._popup.close(),a._reset()},g.prototype.display=function(){var a=this;return a._render().then(function(b){a._popup=new e(a._title,b,a._afterRender.bind(a))}.bind(a)).fail(b.exception)},g.prototype._find=function(b){return a(this._popup.getContent()).find(b)},g.prototype._refresh=function(){var a=this;return a._render().then(function(b){a._find('[data-region="action-selector"]').replaceWith(b),a._afterRender()}.bind(a))},g.prototype._render=function(){var a=this,b=[];for(var c in a._actions)b.push(a._actions[c]);var e={message:a._message,choices:b,confirm:a._confirm,cancel:a._cancel};return d.render("tool_lp/action_selector",e)},g.prototype._reset=function(){this._popup=null,this._selectedValue=""},g});
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/str"],function(a,b){var c=0,d=1,e=2,f=3;return{NONE:c,EVIDENCE:d,COMPLETE:e,RECOMMEND:f,getAll:function(){var a=this;return b.get_strings([{key:"competencyoutcome_none",component:"tool_lp"},{key:"competencyoutcome_evidence",component:"tool_lp"},{key:"competencyoutcome_recommend",component:"tool_lp"},{key:"competencyoutcome_complete",component:"tool_lp"}]).then(function(b){var c={};return c[a.NONE]={code:a.NONE,name:b[0]},c[a.EVIDENCE]={code:a.EVIDENCE,name:b[1]},c[a.RECOMMEND]={code:a.RECOMMEND,name:b[2]},c[a.COMPLETE]={code:a.COMPLETE,name:b[3]},c})},getString:function(b){var c=this,d=c.getAll();return d.then(function(c){return"undefined"==typeof c[b]?a.Deferred().reject().promise():c[b].name})}}});
@@ -0,0 +1 @@
define(["jquery"],function(a){var b=function(b,c,d,e,f){this._baseUrl=c,this._userId=d+"",this._competencyId=e+"",this._planId=f,this._ignoreFirstCompetency=!0,a(b).on("change",this._competencyChanged.bind(this))};return b.prototype._competencyChanged=function(b){if(this._ignoreFirstCompetency)return void(this._ignoreFirstCompetency=!1);var c=a(b.target).val(),d="?userid="+this._userId+"&planid="+this._planId+"&competencyid="+c;document.location=this._baseUrl+d},b.prototype._competencyId=null,b.prototype._userId=null,b.prototype._planId=null,b.prototype._baseUrl=null,b.prototype._ignoreFirstCompetency=null,b});
+1
View File
@@ -0,0 +1 @@
define(["jquery"],function(a){var b=function(b){this._eventNode=a("<div>"),this._ready=a.Deferred(),this._tree=b};return b.prototype._competency=null,b.prototype._eventNode=null,b.prototype._ready=null,b.prototype._tree=null,b.prototype.canConfig=function(){return this._tree.hasChildren(this._competency.id)},b.prototype.getConfig=function(){return null},b.prototype.getType=function(){throw new Error("Not implemented")},b.prototype.init=function(){return this._load()},b.prototype.injectTemplate=function(){return a.Deferred().reject().promise()},b.prototype.isValid=function(){return!1},b.prototype._load=function(){return a.when()},b.prototype.on=function(a,b){this._eventNode.on(a,b)},b.prototype.setTargetCompetency=function(a){this._competency=a},b.prototype._trigger=function(a,b){this._eventNode.trigger(a,[b])},b.prototype._triggerChange=function(){this._trigger("change",this)},b});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/str","tool_lp/competency_rule"],function(a,b,c){var d=function(){c.apply(this,arguments)};return d.prototype=Object.create(c.prototype),d.prototype.getType=function(){return"core_competency\\competency_rule_all"},d.prototype.isValid=function(){return!0},d});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/str","core/templates","tool_lp/competency_rule"],function(a,b,c,d){var e=function(){d.apply(this,arguments)};return e.prototype=Object.create(d.prototype),e.prototype._container=null,e.prototype._templateLoaded=!1,e.prototype.getConfig=function(){return JSON.stringify({base:{points:this._getRequiredPoints()},competencies:this._getCompetenciesConfig()})},e.prototype._getCompetenciesConfig=function(){var b=[];return this._container.find("[data-competency]").each(function(){var c=a(this),d=c.data("competency"),e=parseInt(c.find('[name="points"]').val(),10),f=c.find('[name="required"]').prop("checked");b.push({id:d,points:e,required:f?1:0})}),b},e.prototype._getRequiredPoints=function(){return parseInt(this._container.find('[name="requiredpoints"]').val()||1,10)},e.prototype.getType=function(){return"core_competency\\competency_rule_points"},e.prototype.injectTemplate=function(b){var d,e=this,f=this._tree.getChildren(this._competency.id),g={base:{points:2},competencies:[]};if(this._templateLoaded=!1,e._competency.ruletype==e.getType())try{g=JSON.parse(e._competency.ruleconfig)}catch(h){}return d={requiredpoints:g&&g.base?g.base.points:2,competency:e._competency,children:[]},a.each(f,function(b,c){var e={id:c.id,shortname:c.shortname,required:!1,points:0};g&&a.each(g.competencies,function(a,b){b.id==e.id&&(e.required=b.required?!0:!1,e.points=b.points)}),d.children.push(e)}),c.render("tool_lp/competency_rule_points",d).then(function(a){e._container=b,b.html(a),b.find("input").change(function(){e._triggerChange()}),e._templateLoaded=!0,e._triggerChange()})},e.prototype.isValid=function(){if(!this._templateLoaded)return!1;var b=this._getRequiredPoints(),c=0,d=!0;return a.each(this._getCompetenciesConfig(),function(a,b){b.points<0&&(d=!1),c+=b.points}),d=d&&c>=b},e});
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/templates","core/str","tool_lp/dialogue"],function(a,b,c,d,e,f){var g,h=function(){};return h.prototype.triggerCompetencyViewedEvent=function(a){c.call([{methodname:"core_competency_competency_viewed",args:{id:a}}])},h.prototype.showDialogue=function(a,c){var e=this.getCompetencyDataPromise(a,c),g=this;e.done(function(c){d.render("tool_lp/competency_summary",c).done(function(b){g.triggerCompetencyViewedEvent(a),new f(c.competency.shortname,b)}).fail(b.exception)}).fail(b.exception)},h.prototype.showDialogueFromData=function(a){var c=this;d.render("tool_lp/competency_summary",a).done(function(b){c.triggerCompetencyViewedEvent(a.id),new f(a.shortname,b,c.enhanceDialogue)}).fail(b.exception)},h.prototype.clickEventHandler=function(b){var c=b.data.compdialogue,d=a(b.currentTarget),e=d.data("id"),f=!d.data("excluderelated"),g=d.data("includecourses");c.showDialogue(e,{includerelated:f,includecourses:g}),b.preventDefault()},h.prototype.getCompetencyDataPromise=function(a,d){var e=c.call([{methodname:"tool_lp_data_for_competency_summary",args:{competencyid:a,includerelated:d.includerelated||!1,includecourses:d.includecourses||!1}}]);return e[0].then(function(a){return a}).fail(b.exception)},{init:function(){"undefined"==typeof g&&(g=new h,a("body").delegate('[data-action="competency-dialogue"]',"click",{compdialogue:g},g.clickEventHandler.bind(g)))}}});
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/templates","core/str","tool_lp/tree","tool_lp/competencypicker"],function(a,b,c,d,e,f,g){var h=function(a,b,c){g.prototype.constructor.apply(this,[1,!1,"self",c]),this._userId=a,this._plans=[],b&&(this._planId=b,this._singlePlan=!0)};return h.prototype=Object.create(g.prototype),h.prototype._plans=null,h.prototype._planId=null,h.prototype._singlePlan=!1,h.prototype._userId=null,h.prototype._afterRender=function(){var b=this;g.prototype._afterRender.apply(b,arguments),b._singlePlan||b._find('[data-action="chooseplan"]').change(function(c){b._planId=a(c.target).val(),b._loadCompetencies().then(b._refresh.bind(b))}.bind(b))},h.prototype._fetchCompetencies=function(a,d){var e=this;return c.call([{methodname:"core_competency_list_plan_competencies",args:{id:a}}])[0].done(function(a){var b,c,f=[];for(b=0;b<a.length;b++)c=a[b].competency,c.shortname.toLowerCase().indexOf(d.toLowerCase())<0||(c.children=[],c.haschildren=0,f.push(c));e._competencies=f}).fail(b.exception)},h.prototype._getPlan=function(b){var c;return a.each(this._plans,function(a,d){return d.id==b?(c=d,!1):void 0}),c},h.prototype._loadCompetencies=function(){return this._fetchCompetencies(this._planId,this._searchText)},h.prototype._loadPlans=function(){var d,e=this;return e._plans.length>0?a.when():(d=e._singlePlan?c.call([{methodname:"core_competency_read_plan",args:{id:this._planId}}])[0].then(function(a){return[a]}):c.call([{methodname:"core_competency_list_user_plans",args:{userid:e._userId}}])[0],d.done(function(a){e._plans=a}).fail(b.exception))},h.prototype._preRender=function(){var b=this;return b._loadPlans().then(function(){return!b._planId&&b._plans.length>0&&(b._planId=b._plans[0].id),b._planId?b._loadCompetencies():(b._plans=[],a.when())}.bind(b))},h.prototype._render=function(){var b=this;return b._preRender().then(function(){b._singlePlan||a.each(b._plans,function(a,c){c.id==b._planId?c.selected=!0:c.selected=!1});var c={competencies:b._competencies,plan:b._getPlan(b._planId),plans:b._plans,search:b._searchText,singlePlan:b._singlePlan};return d.render("tool_lp/competency_picker_user_plans",c)}.bind(b))},h});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/templates","tool_lp/dialogue","tool_lp/competency_outcomes","core/str"],function(a,b,c,d,e,f){var g=function(b,c){this._eventNode=a("<div></div>"),this._tree=b,this._rulesModules=c,this._setUp()};return g.prototype._competency=null,g.prototype._eventNode=null,g.prototype._outcomesOption=null,g.prototype._popup=null,g.prototype._ready=null,g.prototype._rules=null,g.prototype._rulesModules=null,g.prototype._tree=null,g.prototype._afterChange=function(){this._isValid()?this._find('[data-action="save"]').prop("disabled",!1):this._find('[data-action="save"]').prop("disabled",!0)},g.prototype._afterRuleConfigChange=function(a,b){b==this._getRule()&&this._afterChange()},g.prototype._afterRender=function(){var a=this;a._find('[name="outcome"]').on("change",function(){a._switchedOutcome()}).trigger("change"),a._find('[name="rule"]').on("change",function(){a._switchedRule()}).trigger("change"),a._find('[data-action="save"]').on("click",function(){a._trigger("save",a._getConfig()),a.close()}),a._find('[data-action="cancel"]').on("click",function(){a.close()})},g.prototype.canBeConfigured=function(){var b=!1;return a.each(this._rules,function(a,c){return c.canConfig()?(b=!0,!1):void 0}),b},g.prototype.close=function(){this._popup.close(),this._popup=null},g.prototype.display=function(){var a=this;if(a._competency)return a._render().then(function(b){return f.get_string("competencyrule","tool_lp").then(function(c){a._popup=new d(c,b,a._afterRender.bind(a))})}).fail(b.exception)},g.prototype._find=function(b){return a(this._popup.getContent()).find(b)},g.prototype._getApplicableOutcomesOptions=function(){var b=this,c=[];return a.each(b._outcomesOption,function(a,d){c.push({code:d.code,name:d.name,selected:d.code==b._competency.ruleoutcome?!0:!1})}),c},g.prototype._getApplicableRulesOptions=function(){var b=this,c=[];return a.each(b._rules,function(a,d){d.canConfig()&&c.push({name:b._getRuleName(d.getType()),type:d.getType(),selected:d.getType()==b._competency.ruletype?!0:!1})}),c},g.prototype._getConfig=function(){var a=this._getRule();return{ruletype:a?a.getType():null,ruleconfig:a?a.getConfig():null,ruleoutcome:this._getOutcome()}},g.prototype._getOutcome=function(){return this._find('[name="outcome"]').val()},g.prototype._getRule=function(){var b,c=this._find('[name="rule"]').val();return a.each(this._rules,function(a,d){return d.getType()==c?(b=d,!1):void 0}),b},g.prototype._getRuleName=function(b){var c,d=this;return a.each(d._rulesModules,function(a,d){return d.type==b?(c=d.name,!1):void 0}),c},g.prototype._initOutcomes=function(){var a=this;return e.getAll().then(function(b){a._outcomesOption=b})},g.prototype._initRules=function(){var b=this,c=[];return a.each(b._rules,function(d,e){var f=e.init().then(function(){e.setTargetCompetency(b._competency),e.on("change",b._afterRuleConfigChange.bind(b))},function(){return b._rules.splice(d,1),a.when()});c.push(f)}),a.when.apply(a.when,c)},g.prototype._isValid=function(){var a=this._getOutcome(),b=this._getRule();return a==e.NONE?!0:b?b.isValid():!1},g.prototype.on=function(a,b){this._eventNode.on(a,b)},g.prototype._preRender=function(){return this.ready()},g.prototype.ready=function(){return this._ready.promise()},g.prototype._render=function(){var a=this;return this._preRender().then(function(){var b;a.canBeConfigured()?(b={},b.outcomes=a._getApplicableOutcomesOptions(),b.rules=a._getApplicableRulesOptions()):b=!1;var d={competencyshortname:a._competency.shortname,config:b};return c.render("tool_lp/competency_rule_config",d)})},g.prototype.setTargetCompetencyId=function(b){var c=this;c._competency=c._tree.getCompetency(b),a.each(c._rules,function(a,b){b.setTargetCompetency(c._competency)})},g.prototype._setUp=function(){var b=this,c=[],d=[];b._ready=a.Deferred(),b._rules=[],a.each(b._rulesModules,function(a,b){d.push(b.amd)}),require(d,function(){a.each(arguments,function(a,c){var d=new c(b._tree);b._rules.push(d)}),c.push(b._initRules()),c.push(b._initOutcomes()),a.when.apply(a.when,c).always(function(){b._ready.resolve()})})},g.prototype._switchedOutcome=function(){var a=this,b=a._getOutcome();return b==e.NONE?(a._find('[data-region="rule-type"]').hide().find('[name="rule"]').val(-1),a._find('[data-region="rule-config"]').empty().hide(),void a._afterChange()):(a._find('[data-region="rule-type"]').show(),a._find('[data-region="rule-config"]').show(),void a._afterChange())},g.prototype._switchedRule=function(){var a=this,b=a._find('[data-region="rule-config"]'),c=a._getRule();return c?void c.injectTemplate(b).then(function(){b.show()},function(){b.empty().hide()}).always(function(){a._afterChange()}):(b.empty().hide(),void a._afterChange())},g.prototype._trigger=function(a,b){this._eventNode.trigger(a,[b])},g});
+1
View File
@@ -0,0 +1 @@
define(["core/ajax","core/notification","core/templates","tool_lp/tree","tool_lp/competency_outcomes","jquery"],function(a,b,c,d,e,f){var g={},h=0,i="",j="",k="",l=!1,m=function(a,b){var c=0,d=!1;for(a.haschildren=!1,a.children=[],c=0;c<b.length;c++)d=b[c],d.parentid==a.id&&(a.haschildren=!0,a.children.push(d),m(d,b))},n=function(b){var e=f.Deferred();return c.render("tool_lp/loading",{}).done(function(n,o){c.replaceNodeContents(f(j),n,o);var p=a.call([{methodname:"core_competency_search_competencies",args:{searchtext:b,competencyframeworkid:h}}]);p[0].done(function(a){g={};var b=0;for(b=0;b<a.length;b++)g[a[b].id]=a[b];var h=[],n=!1;for(b=0;b<a.length;b++)n=a[b],0===parseInt(n.parentid,10)&&(h.push(n),m(n,a));var o={shortname:i,canmanage:l,competencies:h};c.render("tool_lp/competencies_tree_root",o).done(function(a,b){c.replaceNodeContents(f(j),f(a).html(),b);var h=new d(j,!1);if(k){var i=f(j).find("[data-id="+k+"]");i.length&&(h.selectItem(i),h.updateFocus(i))}e.resolve(g)}).fail(e.reject)}).fail(e.reject)}),e.promise()},o=function(a,b){var c=b.selected;k=c.attr("data-id")};return{init:function(a,c,d,e,f){h=a,i=c,l=f,j=e,n(d).fail(b.exception),this.on("selectionchanged",o)},on:function(a,b){f(j).on(a,b)},getChildren:function(a){var b=[];return f.each(g,function(c,d){d.parentid==a&&b.push(d)}),b},getCompetencyFrameworkId:function(){return h},getCompetency:function(a){return g[a]},getCompetencyLevel:function(a){var b=this.getCompetency(a),c=b.path.replace(/^\/|\/$/g,"").split("/").length;return c},hasChildren:function(a){return this.getChildren(a).length>0},hasRule:function(a){var b=this.getCompetency(a);return b?b.ruleoutcome!=e.OUTCOME_NONE&&b.ruletype:!1},reloadCompetencies:function(){return n("").fail(b.exception)},listCompetencies:function(){return g}}});
@@ -0,0 +1 @@
define(["jquery","core/notification","tool_lp/dialogue","core/str","core/ajax","core/templates"],function(a,b,c,d,e,f){var g=function(b){a(b).on("click",this.configureSettings.bind(this))};return g.prototype._dialogue=null,g.prototype.configureSettings=function(e){var g=a(e.target).closest("a").data("courseid"),h=a(e.target).closest("a").data("pushratingstouserplans"),i={courseid:g,settings:{pushratingstouserplans:h}};e.preventDefault(),f.render("tool_lp/course_competency_settings",i).done(function(a){d.get_string("configurecoursecompetencysettings","tool_lp").done(function(b){this._dialogue=new c(b,a,this.addListeners.bind(this))}.bind(this)).fail(b.exception)}.bind(this)).fail(b.exception)},g.prototype.addListeners=function(){var a=this._find('[data-action="save"]');a.on("click",this.saveSettings.bind(this));var b=this._find('[data-action="cancel"]');b.on("click",this.cancelChanges.bind(this))},g.prototype.cancelChanges=function(a){a.preventDefault(),this._dialogue.close()},g.prototype._find=function(b){return a('[data-region="coursecompetencysettings"]').find(b)},g.prototype.saveSettings=function(a){a.preventDefault();var c=this._find('input[name="pushratingstouserplans"]:checked').val(),d=this._find('input[name="courseid"]').val(),f={pushratingstouserplans:c};e.call([{methodname:"core_competency_update_course_competency_settings",args:{courseid:d,settings:f}}])[0].done(function(){this.refreshCourseCompetenciesPage()}.bind(this)).fail(b.exception)},g.prototype.refreshCourseCompetenciesPage=function(){var c=this._find('input[name="courseid"]').val();e.call([{methodname:"tool_lp_data_for_course_competencies_page",args:{courseid:c}}])[0].done(function(c){f.render("tool_lp/course_competencies_page",c).done(function(b,c){a('[data-region="coursecompetenciespage"]').replaceWith(b),f.runTemplateJS(c),this._dialogue.close()}.bind(this)).fail(b.exception)}.bind(this)).fail(b.exception)},g});
+1
View File
@@ -0,0 +1 @@
define(["core/yui"],function(a){var b=function(b,c,d,e,f){this.yuiDialogue=null;var g=this;"undefined"==typeof f&&(f=!1),a.use("moodle-core-notification","timers",function(){var h="480px";f&&(h="800px"),g.yuiDialogue=new M.core.dialogue({headerContent:b,bodyContent:c,draggable:!0,visible:!1,center:!0,modal:!0,width:h}),g.yuiDialogue.after("visibleChange",function(b){b.newVal?"undefined"!=typeof d&&a.soon(function(){d(g),g.yuiDialogue.centerDialogue()}):"undefined"!=typeof e&&a.soon(function(){e(g)})}),g.yuiDialogue.show()})};return b.prototype.close=function(){this.yuiDialogue.hide(),this.yuiDialogue.destroy()},b.prototype.getContent=function(){return this.yuiDialogue.bodyNode.getDOMNode()},b});
+1
View File
@@ -0,0 +1 @@
define(["core/str","core/yui"],function(a,b){var c=function(a){var b=a.drag.get("node"),c=a.drop.get("node");this.callback(b.getDOMNode(),c.getDOMNode())};return{dragdrop:function(d,e,f,g,h,i,j,k){a.get_strings([{key:"emptydragdropregion",component:"moodle"},{key:"movecontent",component:"moodle"},{key:"tocontent",component:"moodle"}]).done(function(){b.use("moodle-tool_lp-dragdrop-reorder",function(){var a={callback:k};M.tool_lp.dragdrop_reorder({group:d,dragHandleText:e,sameNodeText:f,parentNodeText:g,sameNodeClass:h,parentNodeClass:i,dragHandleInsertClass:j,callback:b.bind(c,a)})})})}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery"],function(a){var b=function(){this._eventNode=a("<div></div>")};return b.prototype._eventNode=null,b.prototype.on=function(a,b){this._eventNode.on(a,b)},b.prototype._trigger=function(a,b){this._eventNode.trigger(a,[b])},b});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/str","core/log"],function(a,b,c,d,e){var f={},g=function(g,h){"undefined"==typeof f[g]&&(f[g]=a("body").delegate(g,"click",function(f){var g=a(f.currentTarget).parents(h);if(!g.length||g.length>1)return void e.error("None or too many evidence container were found.");var i=g.data("id");return i?(f.preventDefault(),f.stopPropagation(),void d.get_strings([{key:"confirm",component:"moodle"},{key:"areyousure",component:"moodle"},{key:"delete",component:"moodle"},{key:"cancel",component:"moodle"}]).done(function(a){b.confirm(a[0],a[1],a[2],a[3],function(){var a=c.call([{methodname:"core_competency_delete_evidence",args:{id:i}}]);a[0].then(function(){g.remove()}).fail(b.exception)})}).fail(b.exception)):void e.error("Evidence ID was not found.")}))};return{register:g}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/ajax","core/templates"],function(a,b,c){return{processResults:function(b,c){var d=[];return a.each(c,function(a,b){d.push({value:b.id,label:b._label})}),d},transport:function(d,e,f,g){var h,i=parseInt(a(d).data("contextid"),10),j=a(d).data("includes");h=b.call([{methodname:"tool_lp_search_cohorts",args:{query:e,context:{contextid:i},includes:j}}]),h[0].then(function(b){var d=[],e=0;return a.each(b.cohorts,function(a,b){d.push(c.render("tool_lp/form-cohort-selector-suggestion",b))}),a.when.apply(a.when,d).then(function(){var c=arguments;a.each(b.cohorts,function(a,b){b._label=c[e],e++}),f(b.cohorts)})},g)}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/ajax","core/templates"],function(a,b,c){return{processResults:function(b,c){var d=[];return a.each(c,function(a,b){d.push({value:b.id,label:b._label})}),d},transport:function(d,e,f,g){var h,i=a(d).data("capability");"undefined"==typeof i&&(i=""),h=b.call([{methodname:"tool_lp_search_users",args:{query:e,capability:i}}]),h[0].then(function(b){var d=[],e=0;return a.each(b.users,function(b,e){var f=e,g=[];a.each(["idnumber","email","phone1","phone2","department","institution"],function(a,b){"undefined"!=typeof e[b]&&""!==e[b]&&(f.hasidentity=!0,g.push(e[b]))}),f.identity=g.join(", "),d.push(c.render("tool_lp/form-user-selector-suggestion",f))}),a.when.apply(a.when,d).then(function(){var c=arguments;a.each(b.users,function(a,b){b._label=c[e],e++}),f(b.users)})},g)}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/templates","core/ajax","core/notification","core/str"],function(a,b,c,d,e){var f=0,g=0,h=function(c,d){a('[data-region="managecompetencies"]').replaceWith(c),b.runTemplateJS(d)},i=function(a){b.render("tool_lp/manage_competency_frameworks_page",a).done(h).fail(d.exception)},j=function(b){b.preventDefault(),g=a(this).attr("data-frameworkid");var e=c.call([{methodname:"core_competency_duplicate_competency_framework",args:{id:g}},{methodname:"tool_lp_data_for_competency_frameworks_manage_page",args:{pagecontext:{contextid:f}}}]);e[1].done(i).fail(d.exception)},k=function(){var a=c.call([{methodname:"core_competency_delete_competency_framework",args:{id:g}},{methodname:"tool_lp_data_for_competency_frameworks_manage_page",args:{pagecontext:{contextid:f}}}]);a[0].done(function(a){if(a===!1){var b=c.call([{methodname:"core_competency_read_competency_framework",args:{id:g}}]);b[0].done(function(a){e.get_strings([{key:"frameworkcannotbedeleted",component:"tool_lp",param:a.shortname},{key:"cancel",component:"moodle"}]).done(function(a){d.alert(null,a[0])}).fail(d.exception)})}}).fail(d.exception),a[1].done(i).fail(d.exception)},l=function(b){b.preventDefault();var f=a(this).attr("data-frameworkid");g=f;var h=c.call([{methodname:"core_competency_read_competency_framework",args:{id:g}}]);h[0].done(function(a){e.get_strings([{key:"confirm",component:"moodle"},{key:"deletecompetencyframework",component:"tool_lp",param:a.shortname},{key:"delete",component:"moodle"},{key:"cancel",component:"moodle"}]).done(function(a){d.confirm(a[0],a[1],a[2],a[3],k)}).fail(d.exception)}).fail(d.exception)};return{deleteHandler:l,duplicateHandler:j,init:function(a){f=a}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/ajax","core/notification"],function(a,b,c){return{list:function(d,e){var f,g={context:{contextid:d}};return a.extend(g,"undefined"==typeof e?{}:e),f=b.call([{methodname:"core_competency_list_competency_frameworks",args:g}])[0],f.fail(c.exception)},processResults:function(b,c){var d=[];return a.each(c,function(a,b){d.push({value:b.id,label:b.shortname+" "+b.idnumber})}),d},transport:function(b,c,d){var e=a(b),f=e.data("contextid"),g=e.data("onlyvisible");if(!f)throw new Error("The attribute data-contextid is required on "+b);this.list(f,{query:c,onlyvisible:g}).then(d)}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/templates","tool_lp/dialogue","tool_lp/event_base","core/str"],function(a,b,c,d,e,f){var g=function(a){e.prototype.constructor.apply(this,[]),this._ratingOptions=a};return g.prototype=Object.create(e.prototype),g.prototype._popup=null,g.prototype._ratingOptions=null,g.prototype._afterRender=function(){var b=this._find('[data-action="rate"]'),c=this._find('[name="rating"]'),d=this._find('[name="comment"]');this._find('[data-action="cancel"]').click(function(a){a.preventDefault(),this._trigger("cancelled"),this.close()}.bind(this)),c.change(function(){var c=a(this);c.val()?b.prop("disabled",!1):b.prop("disabled",!0)}).change(),b.click(function(a){a.preventDefault();var b=c.val();b&&(this._trigger("rated",{rating:b,note:d.val()}),this.close())}.bind(this))},g.prototype.close=function(){this._popup.close(),this._popup=null},g.prototype.display=function(){return this._render().then(function(a){return f.get_string("rate","tool_lp").then(function(b){this._popup=new d(b,a,this._afterRender.bind(this))}.bind(this))}.bind(this)).fail(b.exception)},g.prototype._find=function(b){return a(this._popup.getContent()).find(b)},g.prototype._render=function(){var a={cangrade:this._canGrade,ratings:this._ratingOptions};return c.render("tool_lp/competency_grader",a)},g});
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/log","tool_lp/grade_dialogue","tool_lp/event_base","tool_lp/scalevalues"],function(a,b,c,d,e,f,g){var h=function(b,c,d,e,g,h,i){f.prototype.constructor.apply(this,[]);var j=a(b);if(!j.length)throw new Error("Could not find the trigger");this._scaleId=c,this._competencyId=d,this._userId=e,this._planId=g,this._courseId=h,this._chooseStr=i,this._setUp(),j.click(function(a){a.preventDefault(),this._dialogue.display()}.bind(this)),this._planId?(this._methodName="core_competency_grade_competency_in_plan",this._args={competencyid:this._competencyId,planid:this._planId}):this._courseId?(this._methodName="core_competency_grade_competency_in_course",this._args={competencyid:this._competencyId,courseid:this._courseId,userid:this._userId}):(this._methodName="core_competency_grade_competency",this._args={userid:this._userId,competencyid:this._competencyId})};return h.prototype=Object.create(f.prototype),h.prototype._setUp=function(){var a=[],d=this,f=g.get_values(d._scaleId);f.done(function(f){a.push({value:"",name:d._chooseStr});for(var g=0;g<f.length;g++){var h=f[g];a.push({value:h.id,name:h.name})}d._dialogue=new e(a),d._dialogue.on("rated",function(a,e){var f=d._args;f.grade=e.rating,f.note=e.note,c.call([{methodname:d._methodName,args:f,done:function(a){d._trigger("competencyupdated",{args:f,evidence:a})}.bind(d),fail:b.exception}])}.bind(d))}).fail(b.exception)},h.prototype._scaleId=null,h.prototype._competencyId=null,h.prototype._userId=null,h.prototype._planId=null,h.prototype._courseId=null,h.prototype._chooseStr=null,h.prototype._dialogue=null,h});
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/ajax","core/str","tool_lp/competencypicker","core/templates","core/notification"],function(a,b,c,d,e,f){var g=function(a,b,c,d,e){this.buttonSelector=a,this.inputHiddenSelector=b,this.staticElementSelector=c,this.frameworkId=d,this.pageContextId=e,this.registerEvents()};return g.prototype.buttonSelector=null,g.prototype.inputHiddenSelector=null,g.prototype.staticElementSelector=null,g.prototype.frameworkId=null,g.prototype.pageContextId=null,g.prototype.setParent=function(d){var e=this;0!==d.competencyId?b.call([{methodname:"core_competency_read_competency",args:{id:d.competencyId}}])[0].done(function(b){a(e.staticElementSelector).html(b.shortname),a(e.inputHiddenSelector).val(b.id)}).fail(f.exception):c.get_string("competencyframeworkroot","tool_lp").then(function(b){a(e.staticElementSelector).html(b),a(e.inputHiddenSelector).val(d.competencyId)}).fail(f.exception)},g.prototype.registerEvents=function(){var b=this;a(b.buttonSelector).on("click",function(a){a.preventDefault();var c=new d(b.pageContextId,b.frameworkId,"self",!1);c._render=function(){var a=this;return a._preRender().then(function(){var b={competencies:a._competencies,framework:a._getFramework(a._frameworkId),frameworks:a._frameworks,search:a._searchText,singleFramework:a._singleFramework};return e.render("tool_lp/competency_picker_competencyform",b)}.bind(a))},c.on("save",function(a,c){b.setParent(c)}.bind(b)),c.display()})},{init:function(a,b,c,d,e){new g(a,b,c,d,e)}}});
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/templates","core/ajax","tool_lp/dialogue","tool_lp/scalevalues"],function(a,b,c,d,e,f){var g=function(b,c,d){this.selectSelector=b,this.inputSelector=c,this.triggerSelector=d,this.originalscaleid=a(b).val(),a(b).on("change",this.scaleChangeHandler.bind(this)).change(),a(d).click(this.showConfig.bind(this))};return g.prototype.selectSelector=null,g.prototype.inputSelector=null,g.prototype.triggerSelector=null,g.prototype.scalevalues=null,g.prototype.originalscaleid=0,g.prototype.scaleid=0,g.prototype.popup=null,g.prototype.showConfig=function(){var d=this;if(this.scaleid=a(this.selectSelector).val(),!(this.scaleid<=0)){var f=a(this.selectSelector).find("option:selected").text();this.getScaleValues(this.scaleid).done(function(){var a={scalename:f,scales:d.scalevalues};c.render("tool_lp/scale_configuration_page",a).done(function(a){new e(f,a,d.initScaleConfig.bind(d))}).fail(b.exception)}).fail(b.exception)}},g.prototype.retrieveOriginalScaleConfig=function(){var b=a(this.inputSelector).val();if(""!==b){var c=a.parseJSON(b),d=c.shift();if(d.scaleid===this.originalscaleid)return c}return""},g.prototype.initScaleConfig=function(b){this.popup=b;var c=a(b.getContent());if(this.originalscaleid===this.scaleid){var d=this.retrieveOriginalScaleConfig();""!==d&&d.forEach(function(a){1===a.scaledefault&&c.find('[data-field="tool_lp_scale_default_'+a.id+'"]').attr("checked",!0),1===a.proficient&&c.find('[data-field="tool_lp_scale_proficient_'+a.id+'"]').attr("checked",!0)})}c.on("click",'[data-action="close"]',function(){this.setScaleConfig(),b.close()}.bind(this)),c.on("click",'[data-action="cancel"]',function(){b.close()}.bind(this))},g.prototype.setScaleConfig=function(){var b=a(this.popup.getContent()),c=[{scaleid:this.scaleid}];this.scalevalues.forEach(function(a){var d=0,e=0;b.find('[data-field="tool_lp_scale_default_'+a.id+'"]').is(":checked")&&(d=1),b.find('[data-field="tool_lp_scale_proficient_'+a.id+'"]').is(":checked")&&(e=1),(d||e)&&c.push({id:a.id,scaledefault:d,proficient:e})});var d=JSON.stringify(c);a(this.inputSelector).val(d),this.originalscaleid=this.scaleid},g.prototype.getScaleValues=function(a){return f.get_values(a).then(function(a){return this.scalevalues=a,a}.bind(this))},g.prototype.scaleChangeHandler=function(b){a(b.target).val()<=0?a(this.triggerSelector).prop("disabled",!0):a(this.triggerSelector).prop("disabled",!1)},{init:function(a,b,c){return new g(a,b,c)}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/ajax"],function(a,b){var c=[];return{get_values:function(d){var e=a.Deferred();return"undefined"==typeof c[d]?b.call([{methodname:"core_competency_get_scale_values",args:{scaleid:d},done:function(a){c[d]=a,e.resolve(a)},fail:e.reject}]):e.resolve(c[d]),e.promise()}}});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/templates","core/ajax","core/notification","core/str","tool_lp/actionselector"],function(a,b,c,d,e,f){var g=0,h=0,i=!0,j=function(c,d){a('[data-region="managetemplates"]').replaceWith(c),b.runTemplateJS(d)},k=function(a){b.render("tool_lp/manage_templates_page",a).done(j).fail(d.exception)},l=function(){var a=c.call([{methodname:"core_competency_delete_template",args:{id:h,deleteplans:i}},{methodname:"tool_lp_data_for_templates_manage_page",args:{pagecontext:{contextid:g}}}]);a[1].done(k).fail(d.exception)},m=function(b){b.preventDefault(),h=a(this).attr("data-templateid");var e=c.call([{methodname:"core_competency_duplicate_template",args:{id:h}},{methodname:"tool_lp_data_for_templates_manage_page",args:{pagecontext:{contextid:g}}}]);e[1].done(k).fail(d.exception)},n=function(b){b.preventDefault();var g=a(this).attr("data-templateid");h=g,i=!0;var j=c.call([{methodname:"core_competency_read_template",args:{id:h}},{methodname:"core_competency_template_has_related_data",args:{id:h}}]);j[0].done(function(a){j[1].done(function(b){b?e.get_strings([{key:"deletetemplate",component:"tool_lp",param:a.shortname},{key:"deletetemplatewithplans",component:"tool_lp"},{key:"deleteplans",component:"tool_lp"},{key:"unlinkplanstemplate",component:"tool_lp"},{key:"confirm",component:"moodle"},{key:"cancel",component:"moodle"}]).done(function(a){var b=[{text:a[2],value:"delete"},{text:a[3],value:"unlink"}],c=new f(a[0],a[1],b,a[4],a[5]);c.display(),c.on("save",function(a,b){"delete"!=b.action&&(i=!1),l()})}).fail(d.exception):e.get_strings([{key:"confirm",component:"moodle"},{key:"deletetemplate",component:"tool_lp",param:a.shortname},{key:"delete",component:"moodle"},{key:"cancel",component:"moodle"}]).done(function(a){d.confirm(a[0],a[1],a[2],a[3],l)}).fail(d.exception)}).fail(d.exception)}).fail(d.exception)};return{deleteHandler:n,duplicateHandler:m,init:function(a){g=a}}});
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
define(["jquery"],function(a){var b=function(b,c,d,e,f,g){this._baseUrl=d,this._userId=e+"",this._competencyId=f+"",this._courseId=g,this._ignoreFirstUser=!0,this._ignoreFirstCompetency=!0,a(b).on("change",this._userChanged.bind(this)),a(c).on("change",this._competencyChanged.bind(this))};return b.prototype._userChanged=function(b){if(this._ignoreFirstUser)return void(this._ignoreFirstUser=!1);var c=a(b.target).val(),d="?userid="+c+"&courseid="+this._courseId+"&competencyid="+this._competencyId;document.location=this._baseUrl+d},b.prototype._competencyChanged=function(b){if(this._ignoreFirstCompetency)return void(this._ignoreFirstCompetency=!1);var c=a(b.target).val(),d="?userid="+this._userId+"&courseid="+this._courseId+"&competencyid="+c;document.location=this._baseUrl+d},b.prototype._competencyId=null,b.prototype._userId=null,b.prototype._courseId=null,b.prototype._baseUrl=null,b.prototype._ignoreFirstUser=null,b.prototype._ignoreFirstCompetency=null,b});
+1
View File
@@ -0,0 +1 @@
define(["jquery","core/notification","core/ajax","core/templates"],function(a,b,c,d){var e=function(a,b,c,d,e,f){this._rootElement=a,this._competencyId=b,this._userId=c,this._planId=d,this._courseId=e,this._valid=!0,this._displayuser="undefined"!=typeof f?f:!1,this._planId?(this._methodName="tool_lp_data_for_user_competency_summary_in_plan",this._args={competencyid:this._competencyId,planid:this._planId},this._templateName="tool_lp/user_competency_summary_in_plan"):this._courseId?(this._methodName="tool_lp_data_for_user_competency_summary_in_course",this._args={userid:this._userId,competencyid:this._competencyId,courseid:this._courseId},this._templateName="tool_lp/user_competency_summary_in_course"):(this._methodName="tool_lp_data_for_user_competency_summary",this._args={userid:this._userId,competencyid:this._competencyId},this._templateName="tool_lp/user_competency_summary")};return e.prototype.reload=function(){var a=this,e=[];this._valid&&(e=c.call([{methodname:this._methodName,args:this._args}]),e[0].done(function(c){a._displayuser&&(c.displayuser=!0),d.render(a._templateName,c).done(function(b,c){d.replaceNode(a._rootElement,b,c)}).fail(b.exception)}).fail(b.exception))},e.prototype._rootElement=null,e.prototype._courseId=null,e.prototype._valid=null,e.prototype._planId=null,e.prototype._competencyId=null,e.prototype._userId=null,e.prototype._methodName=null,e.prototype._args=null,e.prototype._templateName=null,e.prototype._displayuser=!1,e});
@@ -0,0 +1 @@
define(["jquery","core/notification","core/str","core/ajax","core/templates","tool_lp/dialogue"],function(a,b,c,d,e,f){var g=function(b,c,d){this._regionSelector=b,this._userCompetencySelector=c,this._planId=d,a(this._regionSelector).on("click",this._userCompetencySelector,this._handleClick.bind(this))};return g.prototype._handleClick=function(c){c.preventDefault();var e=a(c.target).closest("tr"),f=a(e).data("competencyid"),g=a(e).data("userid"),h=this._planId,i=d.call([{methodname:"tool_lp_data_for_user_competency_summary_in_plan",args:{competencyid:f,planid:h},done:this._contextLoaded.bind(this),fail:b.exception}]);i[0].then(function(a){var c="core_competency_user_competency_viewed_in_plan";a.plan.iscompleted&&(c="core_competency_user_competency_plan_viewed"),d.call([{methodname:c,args:{competencyid:f,userid:g,planid:h},fail:b.exception}])})},g.prototype._contextLoaded=function(a){var d=this;e.render("tool_lp/user_competency_summary_in_plan",a).done(function(a,g){c.get_string("usercompetencysummary","report_competency").done(function(b){new f(b,a,e.runTemplateJS.bind(e,g),d._refresh.bind(d),!0)}).fail(b.exception)}).fail(b.exception)},g.prototype._refresh=function(){var a=this._planId;d.call([{methodname:"tool_lp_data_for_plan_page",args:{planid:a},done:this._pageContextLoaded.bind(this),fail:b.exception}])},g.prototype._pageContextLoaded=function(a){var c=this;e.render("tool_lp/plan_page",a).done(function(a,b){e.replaceNode(c._regionSelector,a,b)}).fail(b.exception)},g.prototype._regionSelector=null,g.prototype._userCompetencySelector=null,g.prototype._planId=null,g});

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