Commit Graph

52 Commits

Author SHA1 Message Date
Mark Nelson
0d203bbf8d MDL-63211 core_message: respect new setting 'messagingallusers' 2018-10-03 11:58:39 +08:00
Mark Nelson
c886e2c94d MDL-63211 core_message: deprecated api::is_user_blocked 2018-10-03 11:58:39 +08:00
Mark Nelson
be016b0144 MDL-63211 core: added notification when contact request is made 2018-10-03 11:58:39 +08:00
Mark Nelson
f219eac7b4 MDL-63211 core: update core to use new APIs 2018-10-03 11:51:29 +08:00
Mark Nelson
0b3eadcd96 MDL-63211 core_message: deprecated functions and added new API 2018-10-03 11:35:26 +08:00
Marina Glancy
442f12f81a MDL-62742 core: rename coursecat->core_course_category
Also rename course_in_list -> core_course_list_element
Deprecate class coursecat_sortable_records
2018-08-28 11:36:23 +02:00
Mark Nelson
5aac33c785 MDL-36941 core_message: dont query DB unnecessarily checking read status 2018-03-23 12:30:31 +08:00
Mark Nelson
99248f6177 MDL-36941 core_message: fixed minor CiBoT complaints 2018-03-23 12:30:31 +08:00
Mark Nelson
74ad60bfbe MDL-36941 core_message: deprecated 'api::mark_all_read_for_user' 2018-03-23 12:30:30 +08:00
Mark Nelson
b2cd17e6a9 MDL-36941 core: added 'convhash' field to quickly get conversations 2018-03-23 12:30:28 +08:00
Mark Nelson
376a79c242 MDL-36941 core: added events for notifications 2018-03-23 12:30:27 +08:00
Mark Nelson
548936a6c9 MDL-36941 core_message: mark notification/messages takes stdClass
This avoid unnecessary DB calls.
2018-03-23 12:30:27 +08:00
Mark Nelson
883ce42127 MDL-36941 core: convert existing api to use new table structure
Also deprecated the following functions -

1. message_move_userfrom_unread2read - It is not necessary
   for us to mark a message as read on user deletion.
2. message_get_blocked_users - Horrible logic used to
   determine if a user is blocked via reference on some
   randomly chosen 'isblocked' variable.
3. message_get_contacts - The same as above. This can be
   done in a much nicer way.
4. message_mark_message_read - We want two functions to do
   this to avoid confusing messages and notifications.
5. message_can_delete_message - This assumed the variable
   $message contained the 'useridto' property, which
   was present in the old table structure. We do not want
   future usages where a query is done on the new table
   and is simply passed as this won't contain this property.
6. message_delete_message - Same as above.
2018-03-23 12:30:27 +08:00
Mark Nelson
93b47710ac MDL-59977 core: do not directly check 'viewparticipant' capability 2017-09-11 12:44:27 +08:00
Neill Magill
22481f3d89 MDL-59317 message: Message page taking long time to load
The OR clause in these queries used different sets of columns to select
userid which meant that the indexes that included user id could not be
used.

This change splits the query so that each individual part can use one of
the indexes that includes a userid which speeds them up considerably.
2017-07-06 15:24:02 +01:00
Dan Poltawski
83a6b8c48c Merge branch 'MDL-58050-master-msgtrans' of git://github.com/mudrd8mz/moodle 2017-03-20 13:19:22 +00:00
David Mudrák
bb2924d018 MDL-58050 message: Commit the transaction before the early return
If there was no conversation found and the method returned early, the
active transaction was not marked as committable and the error was
reported by the request shutdown handler.

Attaching a unit test for the case just because it did not seem to be
covered. I was trying to reproduce the thrown error in the unit test but
it can't be used in this case. The shutdown handler puts the warning
directly into the error_log and it is not guaranteed where such messages
go (depending on the PHP configuration). And we do not even raise it
during the unit test execution (presumably due to noise it would
produce) anyway.
2017-02-22 13:56:02 +01:00
David Mudrák
0c44da7887 MDL-58050 message: Fix the DB transaction handling
Consumer code is not supposed to call commit_delegated_transaction()
method directly, this was incorrect usage of the delegated transactions.
2017-02-22 13:42:05 +01:00
Mark Nelson
f512355b31 MDL-57967 core_message: do not process conversations from deleted users 2017-02-16 13:01:06 +08:00
Ryan Wyllie
c9b82e402e MDL-57370 message: improve message union sql 2017-02-09 03:39:09 +00:00
Ryan Wyllie
42e2f6c0e9 MDL-57370 message: fix duplicate ids 2017-02-08 07:40:07 +00:00
Ryan Wyllie
349f426197 MDL-57370 message: remove joins from get_conversations
I have broken up the single query that was doing multiple joins on the
messaging and user tables. It no longer does any joins and will instead
query each data set individually.

This may cost more in terms of PHP processing but it will mean that
standard database tunings should be able to handle larger data sets.

For example this function was taking a long time to run on moodle.org
and was causing the MySQL join buffer to overflow.
2017-02-07 01:04:11 +00:00
Mark Nelson
cb8057531f MDL-56871 core_message: fix inconsistent online status between panels 2016-11-23 16:32:46 +08:00
Andrew Nicols
d10ca75b8c Merge branch 'MDL-56407-master-2' of git://github.com/junpataleta/moodle 2016-11-22 09:06:09 +08:00
David Monllao
dfe7cbe4cf Merge branch 'MDL-57036_master' of git://github.com/markn86/moodle 2016-11-21 10:51:29 +08:00
Mark Nelson
f4c39cb983 MDL-57036 core_message: always show profile picture on messaging UI 2016-11-18 11:13:36 +08:00
Jun Pataleta
26dca05d02 MDL-56407 message: Indicate user is blocked in message area 2016-11-17 09:11:37 +08:00
Mark Nelson
ffd7798c96 MDL-56139 core: changes after peer review
- No longer use the Fibonacci sequence for delaying the timeout.
  It is too aggressive.
- The backoff_timer AMD module now expects the callback AND the
  backoff function to be passed to the constructor.
- Added ability to specify polling frequency in config.php.
- Added helper function to return the cache key.
- Reworded the parameters for clarity.
2016-11-16 10:22:52 +08:00
Ryan Wyllie
fb1469d84f MDL-56139 message: ajax poll for new messages in message area 2016-11-16 10:22:33 +08:00
Ankit Agarwal
20ab51fdbc MDL-56409 messages: Save one db query per page load 2016-11-08 12:50:30 +05:30
Adrian Greeve
f324957724 MDL-56138 messaging: Limit course search to enrolled courses. 2016-10-31 10:52:05 +08:00
Mark Nelson
1f64514def MDL-56090 core_message: added API unit tests 2016-10-21 16:22:03 +08:00
Ryan Wyllie
7d69958e6b MDL-56292 message: move popover code into output plugin 2016-10-11 14:39:23 +08:00
Ryan Wyllie
5cdebf2d7e MDL-56292 message: simplify get_popup_notifications function 2016-10-10 12:48:51 +08:00
Ryan Wyllie
dff7c82ecb MDL-56292 message: fix sql query in mark_all_read_for_user 2016-10-10 12:48:51 +08:00
Mark Nelson
de55cb1b53 MDL-56089 core_message: modified API so it is not tied to renderables
Also did some minor refactoring/tidying of the code.
2016-10-07 16:37:56 +08:00
Mark Nelson
48e8bdba13 MDL-55942 core_message: renamed the term 'people' to 'user' 2016-10-07 16:37:56 +08:00
Mark Nelson
5b0769db68 MDL-54744 core_message: deprecated functions in message/lib.php
Also -

1) Made note of the deprecation as well as the functions and
   files that were removed earlier in upgrade.txt.
2) Added new functions to api.php to replace the deprecated ones
   that were being used in unit tests.
3) Removed files that are no longer being used.
2016-10-07 16:35:25 +08:00
Mark Nelson
7b55aaa12e MDL-55942 core: obey the mighty CiBoT 2016-10-07 16:26:40 +08:00
Mark Nelson
79f6c36c12 MDL-55942 core_message: moved added functionality from message/lib.php 2016-10-07 16:26:40 +08:00
Mark Nelson
dd0c1403a1 MDL-55637 core_message: display icon for blocked users 2016-10-07 16:26:40 +08:00
Mark Nelson
4d1b76ee36 MDL-55638 core_message: add message when there are no contacts 2016-10-07 16:26:40 +08:00
Damyon Wiese
edac7c8003 MDL-55541 messages: Always return at least a minimal record for a user
Messages allows anyone to find anyone on the site - even if they don't share any permissions
in a course. So we need to make at least their name and id discoverable.
2016-10-07 16:26:40 +08:00
Mark Nelson
bf58081d59 MDL-54687 core_message: return online status for messages and profile 2016-10-07 16:26:40 +08:00
Mark Nelson
cd03b8d7f2 MDL-54687 core_message: added search functionality 2016-10-07 16:26:40 +08:00
Mark Nelson
ef735275de MDL-54687 core_message: removed 'conversationsselected' variable 2016-10-07 16:26:40 +08:00
Mark Nelson
1e5f751ffc MDL-54687 core_message: moved renderables to 'messagearea' namespace 2016-10-07 16:26:40 +08:00
Mark Nelson
8ec78c48fa MDL-54687 core_message: added ajax scrolling for messages 2016-10-07 16:26:40 +08:00
Mark Nelson
dec0cd9998 MDL-54687 core_message: added ability to delete conversations 2016-10-07 16:20:51 +08:00
Mark Nelson
c6e97f5428 MDL-54687 core_message: added ability to view a contact's profile
Also added functionality to the profile page -

- View user's profile.
- Send the user a message.
- Block the user.
- Remove the user as a contact.
2016-10-07 16:20:51 +08:00