Damyon Wiese
9c2baf096b
MDL-58220 unittests: Fix randomly failing unit test
...
The scheduled task unit tests does not handle 'R' fields properly. We don't need it here.
2017-04-03 13:43:26 +08:00
Damyon Wiese
9165e83831
MDL-58220 unittests: Fix errors found in unittests
2017-04-03 13:43:26 +08:00
Damyon Wiese
1a911be57b
MDL-58220 oauth2: Fix docs in test file
...
(and remove unused global $SESSION).
2017-04-03 13:43:26 +08:00
Damyon Wiese
d9fbe3146c
MDL-58220 oauth2: Use the same list of user fields
...
Authentication has a hard coded list of valid internal user fields - but they are in a class variable. We need them
in oauth user_field_mapping so we need to move them to a central place and call them from oauth2 and auth.
2017-04-03 13:43:26 +08:00
Damyon Wiese
68ecf7635b
MDL-58220 oauth2: tighten the param types
...
These come from external sources - but still should not contain crazy stuff.
2017-04-03 13:43:26 +08:00
Damyon Wiese
7949b3b2ac
MDL-58220 oauth2: Remove is_system_account_setup_supported
...
This was left from an earlier branch but no longer useful.
2017-04-03 13:43:26 +08:00
Damyon Wiese
5b0b35c096
MDL-58220 oauth2: Add is_configured to issuer
...
Saves repeated checks for clientid and clientsecret.
2017-04-03 13:43:25 +08:00
Damyon Wiese
8d90d29460
MDL-58220 oauth2: Use iputils to check domain
...
Allows wild cards and more strict checking against spec.
2017-04-03 13:43:25 +08:00
Damyon Wiese
4a32445dc9
MDL-58220 oauth2: use PARAM_RAW_TRIMMED
...
Client ID and secret and copy/pasted from elsewhere so trim them.
2017-04-03 13:43:25 +08:00
Damyon Wiese
f59d81f487
MDL-58220 block_login: Update icon rendering of idp list
2017-04-03 13:43:25 +08:00
Damyon Wiese
13b449f4a5
MDL-58220 oauth2: cibot cleanups
2017-04-03 13:43:25 +08:00
Damyon Wiese
99e3c347f9
MDL-58220 oauth2: Minor cleanups
...
Fixes spotted by Jun in peer review.
2017-04-03 13:43:25 +08:00
Damyon Wiese
28b592d5a6
MDL-58338 oauth2: Force email confirmation
...
New accounts and linking a login to an existing account MUST go through email verification.
We cannot trust the emails we get from oauth providers have been confirmed.
Part of MDL-58220
2017-04-03 13:43:25 +08:00
Damyon Wiese
d5bb9f1ffc
MDL-58334 repositories: Offline downloads
...
Support an optional param for offline downloads for repositories supporting external links (googledrive and skydrive).
Part of MDL-58220
2017-04-03 13:43:25 +08:00
Damyon Wiese
fa78244d17
MDL-58220 oauth2: Fix unit tests and add more
2017-04-03 13:43:25 +08:00
Damyon Wiese
092304a3de
MDL-58220 oauth2: Cibot fixes
...
Missing phpdocs.
2017-04-03 13:43:25 +08:00
Damyon Wiese
c21a66e40a
MDL-58220 auth_oauth2: Restrict logins to a set of domains
...
This is set on the issuer, so you can have different lists for each oauth2 provider.
2017-04-03 13:43:25 +08:00
Damyon Wiese
eca128bf47
MDL-58220 oauth2: Global enable/disable for issuers.
2017-04-03 13:41:19 +08:00
Damyon Wiese
af28b22892
MDL-58219 googledocs: Use google file extensions
...
Only rename on export for download.
Part of MDL-58220
2017-04-03 13:41:19 +08:00
Damyon Wiese
141ee541ca
MDL-58219 repository: Change how controlled links work
...
Files are copied to the system user as soon as they are uploaded. Write access is then controlled when
serving links to the file.
Part of MDL-58220
2017-04-03 13:41:19 +08:00
Damyon Wiese
72fd103add
MDL-58219 cibot: Fixes
...
Fixes for cibot warnings.
Part of MDL-58220
2017-04-03 13:41:19 +08:00
Damyon Wiese
dece386586
MDL-58219 oauth2: Fix unit tests because we changed the model
...
We added 2 fields to the model and we needed to update the tests.
I also removed some error_log from the rest client (very useful while developing)
Part of MDL-58220
2017-04-03 13:41:18 +08:00
Damyon Wiese
2fad141006
MDL-58219 oauth2: Fix token upgrade problem with incremental auth
...
Part of MDL-58220
2017-04-03 13:41:18 +08:00
Damyon Wiese
28dddbc129
MDL-58219 oauth2: Show connected system account info
...
Show the username and email of the connected system account (if it ever requires refreshing - this will help identity the account
to re-authorise).
Part of MDL-58220
2017-04-03 13:41:18 +08:00
Damyon Wiese
5ffaf17dad
MDL-58168 oauth2: Check for new access code before checking scopes
...
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
151b0f9409
MDL-58132 repositories: Controlled link file type
...
This introduces a new "controlled link" file type where the file is not
stored in Moodle - but Moodle will control the access permissions on the file.
Plugins can "freeze" a filearea which means Moodle will take ownership of all the remote
files of this type.
When accessing a file, if the "filebrowser" infomation indicates the current user can write to the file, they
will be granted temporary write access.
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
989e14fea0
MDL-58128 googledocs: Support reference files.
...
Add options so the admin can control the types of files this repository can support (and the default).
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
d247a63dfa
MDL-58128 oauth2: Add a scheduled task for refresh
...
We need to make sure our refresh tokens do not expire. We run a scheduled
task to update the refresh token once per hour.
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
0e59638bdb
MDL-58126 googledocs: Re-implement the google docs repo
...
Use latest REST API (v3) - but avoid the google client libraries
(too big, too much to update, not integrated with auth).
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
299112498b
MDL-58090 oauth2: Coding style
...
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
931c023468
MDL-58090 oauth2: Add unit tests
...
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
f9f243f93e
MDL-58090 oauth2: Complete phpdocs
...
Part of MDL-58220
2017-04-03 13:40:13 +08:00
Damyon Wiese
2b09b2daa3
MDL-58090 oauth2: Load and resave the DB files
...
Edit the DB files with XMLDB to detect/fix errors.
Part of MDL-58220
2017-04-03 13:40:12 +08:00
Damyon Wiese
dc4b56852a
MDL-58090 oauth2: Do not install services by default
...
Instead provide buttons to quickly create pre-configured
versions of any of the known OAuth 2 services.
Part of MDL-58220
2017-04-03 13:40:12 +08:00
Damyon Wiese
237fd80cd2
MDL-58090 oauth2: API to get a system client
...
Request an oauth client with an access token retrieved with the stored refresh token from the OAuth issuer.
Part of MDL-58220
2017-04-03 13:39:45 +08:00
Damyon Wiese
ddf65b8c05
MDL-58090 oauth2: Facebook
...
Add defaults for facebook authentication and drop behaviour field completely.
Part of MDL-58220
2017-04-03 13:39:45 +08:00
Damyon Wiese
485a22fc98
MDL-58090 oauth2: Get rid of behaviour field
...
OAuth services working fully from config - no more subclasses for each OAuth issuer.
Part of MDL-58220
2017-04-03 13:39:44 +08:00
Damyon Wiese
8445556b4c
MDL-58090 oauth2: Move code from subclasses to config
...
Allow the behaviour of each oauth service to be customised by config instead of
subclasses.
Part of MDL-58220
2017-04-03 13:39:44 +08:00
Damyon Wiese
60237253a2
MDL-58090 oauth2: Store a list of oauth2 services
...
Build an admin page where OAuth 2 services can be installed and configured.
Part of MDL-58220
2017-04-03 13:39:02 +08:00
Daniel Thee Roperto
a0e2748aac
MDL-58394 filters: Fixed order not being respected.
2017-04-03 14:47:44 +10:00
Mark Nelson
9bd158a3c7
MDL-57878 core: fixed failing unit test
...
Part of MDL-55611 epic.
2017-04-03 11:37:09 +08:00
Simey Lameze
fdeeaff954
MDL-58265 core_test: replace I turn editing on steps
...
Also remove few more unnecessary steps that redirects behat to
site home page to actually get to the course.
Part of MDL-55611 epic.
2017-04-03 11:37:07 +08:00
Simey Lameze
3353cfd8c1
MDL-58265 core_test: add I am on course homepage in edit mode step
...
This commit also:
- Rename i_am_on_course_page to i_am_on_course_homepage.
- Pass false to out_as_local_url()
Part of MDL-55611 epic.
2017-04-03 11:37:07 +08:00
Simey Lameze
93be3f730c
MDL-58265 core_test: remove unnecessary steps
...
This commmit removes steps that take behat to site home page
to actually get to a course page.
Part of MDL-55611 epic.
2017-04-03 11:37:07 +08:00
Simey Lameze
c987d1b2ef
MDL-58265 core_test: replace all uses of I follow course steps
...
Part of MDL-55611 epic.
2017-04-03 11:37:07 +08:00
Simey Lameze
95f11fde64
MDL-58265 core_test: add I am on course page behat step
...
Part of MDL-55611 epic.
2017-04-03 11:37:07 +08:00
Cameron Ball
e798fa76f5
MDL-58110 core_calendar: Add proxy for modules
...
Modules associated with an event are stored in the event table
as the module's name and instance number not the actual ID of the instance
in the modules table.
So to lazy load them we need a proxy that uses the module name and instance
rather than the ID.
Part of MDL-55611 epic.
2017-04-03 11:37:06 +08:00
Mark Nelson
00995f0339
MDL-58239 core_output: fixed user date helper doc example
...
Part of MDL-55611 epic.
2017-04-03 11:37:06 +08:00
Ryan Wyllie
9b8e505715
MDL-57503 calendar: external function for action events by courses
...
Added an external function to get action events by a list of courses and
timesort.
Part of MDL-55611 epic.
2017-04-03 11:36:34 +08:00
Ryan Wyllie
60774b28c3
MDL-57503 calendar: external function get action events by course
...
Added an external function to get action events by course and timesort.
Part of MDL-55611 epic.
2017-04-03 11:36:34 +08:00