Commit Graph

90 Commits

Author SHA1 Message Date
Jean-Philippe Gaudreau 70363d7394 MDL-55630 mod_assign: Exclude users courses from user details
Exclude users' enrolled courses for performance reason.
A new 'includeenrolments' parameter was added
to mod_assign::list_particpants.
2016-10-14 09:28:29 -04:00
David Mudrák d82859b2c1 MDL-46946 user: Make missing required custom fields trigger profile edit
If there is a required custom field that the user can fill by editing
their profile, and that field is missing, the user should be considered
as not fully set up. Instead, we want to redirect them to edit their
profile first.

There are some exceptions when we want to fall back to the previous
behaviour and check just the name and email fields. These exceptional
cases include checking remote user data in incoming MNet request (no
user id, no custom fields supported) and calls to require_login() with
redirecting disabled (typically ajax filepicker requests on profile
editing page itself).

Additional plugins that call the function user_not_fully_set_up()
themselves, should perform the strict check in most/typical cases. So
the strict mode is enabled by default even if it changes the behaviour
slightly. In improbable case of additional plugins relying on the
previous behaviour of the function, they can use the $strict parameter
and keep performing the lax check. However, I am sure the correct fix in
that case will likely be to stop abusing this function.

Note that custom fields are not currently transferred during the MNet
roaming. So having custom fields configured as required on MNet service
provider site (where users can't edit their profiles) is expected to
display an error (as the site is considered as misconfigured).
2016-09-21 18:02:51 +02:00
Dan Poltawski 8c2d47d9d8 Merge branch 'MDL-50704-master' of git://github.com/FMCorz/moodle 2016-05-10 15:59:41 +01:00
Frederic Massart 16825c4e95 MDL-50704 user: Do not validate timezones in user objects
The validation of the timezone field should not occur, especially
when it is automatically cleaned. Timezones can be volatile, we
must try hard to fallback on real timezones and must not lose reset
the values arbitrarily.

"There is absolutely no need to change $CFG->timezone and user timezones
in database - the timezones may come and go. If you change the value in
upgrade or on the fly you would not be able to get it back. This is the
reason why I implemented the "invalid timezone" thing in server and
user settings instead." - Petr Skoda (MDL-49684)
2016-05-09 17:28:38 +08:00
Damyon Wiese d26eae4af4 MDL-54042 user: Add unit test to cover change 2016-05-06 14:07:49 +01:00
Frederic Massart da1296dd07 MDL-53954 user: Prevent locked profile fields from being edited 2016-05-06 09:27:26 +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
Cameron Ball f23e9b6ba4 MDL-49414 webservices: Remove deprecated functions 2016-04-27 15:54:38 +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
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
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
Andrew Hancox 5b7c500a71 MDL-49963 core: Select all button on participant list works across pages 2016-03-07 11:08:12 +00:00
Andrew Nicols 5ddf81cd27 MDL-51214 block_news_items: Rename to "Latest announcements" 2016-02-16 10:05:27 +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
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
Marina Glancy c4e868d5f0 MDL-50851 user: use new tag API for interests 2016-01-10 15:25:47 +08: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
Rajesh Taneja 7b4933db3a MDL-51685 unittest: Test functionality individually 2015-11-06 11:14:17 +01:00
rajesh Taneja 4b274a10c2 MDL-51981 behat: No need for JS tag
This scenario crashes win-chrome and probably
other comninations. Looking at this, it seems
js tag is not needed, so removing js tag to make
it pass on all OS
2015-10-30 11:29:52 +08:00
Adrian Greeve d64845996b MDL-50917 navigation: Behat tests for viewing user preference page. 2015-09-22 10:57:52 +08:00
Adrian Greeve 4fc7b6a07b MDL-27177 roles: Update to behat full profile tests. 2015-08-25 09:43:17 +08:00
Adrian Greeve 82e4d43842 MDL-27177 roles: Unit test for newly created function. 2015-08-25 09:43:17 +08:00
David Monllao f2e50523d1 Merge branch 'MDL-50839-master' of git://github.com/Dave-B/moodle 2015-08-12 08:32:11 +08:00
David Balch 9dcd50358a MDL-50839 user_menu: Allow themes to set User menu avatar size.
Added an @array "options" parameter to user_get_user_navigation_info(),
for passing in avatarsize, and possibly other options in future.

Also removed an errant parameter in the /lib/outputrenderers.php
user_get_user_navigation_info() call, as there was no corresponding
parameter in the function definition.

(Test written by Jetha Chan.)
2015-08-11 13:57:17 +01:00
Marina Glancy 7f0c7f01c0 MDL-51062 behat: permission steps should work without js 2015-08-09 20:33:27 +08:00
Dave Cooper 186747fd75 MDL-49845 core_user: Fix behat failures 2015-05-05 17:30:53 +08:00
John Okely 4887d15228 MDL-49983 navigation: Remove 'my' from user context navigation 2015-05-04 12:38:50 +08:00
David Mudrák 3759e7ae96 MDL-50033 lang: Update Behat scenarios to use the new strings 2015-04-29 23:15:44 +02:00
Rajesh Taneja 0fe86bbdbb MDL-49799 behat: replaced asd.com with example.com
asd.com is a valid domain, we should use reserved domain names for testing
2015-04-20 11:21:20 +08:00
David Monllao 89a6290fb9 Merge branch 'MDL-45131-master' of git://github.com/jleyva/moodle 2015-04-16 17:04:34 +08:00
Juan Leyva 605c421b58 MDL-45131 user: Add validation for returned parameters in WS tests 2015-04-16 10:25:33 +02:00
Adrian Greeve 52f2075d61 MDL-49689 navigation: Behat tests for default home page
Part of MDL-45774.
2015-04-13 15:54:24 +08:00
Ankit Agarwal 8f43702a69 MDL-49412 core_user: Fix behat failures 2015-04-10 17:18:23 +08:00
Adrian Greeve 45367bdf0c MDL-49688 navigation: First review fixes and version bump.
Part of MDL-45774.
2015-04-10 17:18:03 +08:00
Ankit Agarwal b19cc4ef25 MDL-45898 myprofile: Redesign my profile page
Part of MDL-45774.

Contributions by John Okely, Jetha Chan and Damyon Wiese (squashed branch).

AMOS BEGIN
CPY [coursebadges,core_badges], [badges,core_badges]
AMOS END
2015-04-10 17:17:32 +08:00
Ankit Agarwal 50e0d9ff5c MDL-48932 myprofile: Add tests for the profile apis 2015-04-10 17:17:06 +08:00
Adrian Greeve b6c42eb0f0 MDL-45894 navigation: Behat tests for user navigation.
Part of MDL-45774
2015-04-10 17:17:05 +08:00
Dave Cooper 81d7de1aa1 MDL-48936 lang: Changed "My Home" to "Dashboard".
Part of MDL-45774
2015-04-10 17:16:27 +08:00
Eloy Lafuente (stronk7) 522eff0d30 Merge branch 'MDL-49499-master' of git://github.com/jleyva/moodle 2015-04-07 17:29:15 +02:00
Juan Leyva 826d572ddf MDL-49498 user: New tests for user_list_view() 2015-04-02 17:03:03 +02:00
Juan Leyva a0b161bf23 MDL-49499 user: Unit tests for profile_view() 2015-04-02 16:57:43 +02:00
Rajesh Taneja bed97c39eb MDL-49513 behat: Set admin config using php api
Added a new set to set config using set_config() api
to make steps faster and more efficient
2015-04-01 14:25:23 +08:00
Juan Leyva 4bf3a71380 MDL-48443 webservices: Prevent duplicated user devices 2015-03-20 14:45:04 +01:00
Andrew Nicols db23cd087b Merge branch 'MDL-48716-master' of git://github.com/jleyva/moodle
Conflicts:
	lib/db/services.php
	lib/db/upgrade.php
	version.php
2015-02-25 09:20:26 +08:00
Rex Lorenzo c85140350b MDL-46665 core_user: Add 'idnumber' field to user filter 2015-02-20 10:34:08 -08:00
Juan Leyva f494a81167 MDL-48716 webservices: core_user_remove_user_device unit tests 2015-02-19 15:15:18 +01:00
Marina Glancy 5d9204af46 MDL-48569 profile: behat test for user full profile access 2014-12-12 10:20:10 +08:00
Petr Skoda 1d658535b6 MDL-47830 auth: Add pw rotation restrictions 2014-12-01 08:53:52 +13:00
Sam Hemelryk 2611dd99d3 MDL-48196 phpunit: fixed the fail after this change 2014-11-17 15:07:15 +13:00