Commit graph

2438 commits

Author SHA1 Message Date
Kunal Mehta 5be28ba4df Require a User object to be passed to EchoEvent::userCan()
All callers were already doing this.

Change-Id: If9e20e3d4740bcdb8842592e4cd988f8b35e1300
2015-11-23 16:08:17 -08:00
jenkins-bot 6eba89d400 Merge "Add accessor for bundled events in EventPresentationModel" 2015-11-23 23:43:41 +00:00
Kunal Mehta 9057196d21 Add accessor for bundled events in EventPresentationModel
The implementation of this sucks as the presentation model
should not be making database queries. But the API it provides
is what we want and will be supported even if the backend
implementation is changed.

Change-Id: Ifd0d11260990fd0e00e8f32eee273f9717d3e1fb
2015-11-23 15:13:31 -08:00
Translation updater bot ec8ab4f729 Localisation updates from https://translatewiki.net.
Change-Id: I81f2c1c30cc49c5251a8f82405e6a95ad50ee1ed
2015-11-23 22:32:04 +01:00
Moriel Schottlender 7d419bd128 Add a global overlay to Echo
This is preparing for nested popups inside the master popup.

Change-Id: I3bb86acd1bf841d5b27018565f5aa8f4a3295d9d
2015-11-23 18:47:57 +00:00
Matthias Mullie 30dcfeaa9e Add secondary link details: icon & description
We should probably merge this ASAP now that a lot of presentation
models still have to be implemented. There's a bit of B/C code that
will take care of the previous format, but it would be nice to be
able to remove that soon.

Meanwhile I've also changed getPrimaryLink to follow the same format.

Bug: T115421
Change-Id: Ic18a050d2ee0239f287a6d55c572df6f8aebb59a
2015-11-23 16:10:52 +00:00
Translation updater bot 7ff1f7492a Localisation updates from https://translatewiki.net.
Change-Id: Ia96ca46d28ae1f2ae2ce5e6afb630d2dd7b26fe6
2015-11-22 20:43:17 +01:00
jenkins-bot f875dfc191 Merge "Track what wikis a user has unread notifications on" 2015-11-21 00:05:44 +00:00
Kunal Mehta b85f978ddd Track what wikis a user has unread notifications on
This implements a backend layer and database storage for tracking what
wikis a user has unread notifications on. It is not yet exposed via any
API.

Whenever the notification counts on the local wiki are reset, a deferred
update is queued to also update the central database table.

Change-Id: Id1498bdeb5811d6848dc66781ffca03e726eab90
2015-11-20 15:54:11 -08:00
jenkins-bot 0416f39e68 Merge "Expose more data through API" 2015-11-20 23:41:55 +00:00
jenkins-bot 7a68a05083 Merge "Prevent link color on hover for the body ("payload") as well as the header" 2015-11-20 23:39:37 +00:00
jenkins-bot acdcdb29f0 Merge "Remove styling for nonexistent mw-echo-title-heading class" 2015-11-20 23:38:58 +00:00
Translation updater bot 72f7e4977c Localisation updates from https://translatewiki.net.
Change-Id: Ic0b0500a67c53837b0d189ae3e8076e6f08dac63
2015-11-20 22:55:15 +01:00
Matthias Mullie 0ef4df8e15 Expose more data through API
Instead of relying on the frontend to render, this enables the frontend
to do it.

The API will now accept a new format: 'model', which is basically the
presentation model's data in json format.

Some of the render code is currently only in the backend (e.g. get icon
path from icon type) so other api formats will stay available. At some
point, however, we may be able to kill those.

Bug: T115418
Change-Id: Ibc3ad54c94d6ea9bf751f3927cf69e1d062f4780
2015-11-20 19:27:34 +00:00
jenkins-bot 6bb3738812 Merge "Change the naming of 'notification option' to 'notification item' widgets" 2015-11-20 00:58:16 +00:00
jenkins-bot 8db241e328 Merge "Add a NetworkHandler as a central API authority to Echo" 2015-11-20 00:55:01 +00:00
Moriel Schottlender 4bbaf77c2a Change the naming of 'notification option' to 'notification item' widgets
This is in preparation of adding more item models and widget types,
and in preparation of switching the notification widget away from being
a select widget.

Change-Id: I518fb3d80f4f67d677c21ca5593638269acfa544
2015-11-19 16:52:04 -08:00
Kunal Mehta 8c49a812e1 Unstub $wgLang in BasicFormatter::getLanguage() too
Bug: T118542
Change-Id: Ic9f3c03a3f1d38f2ea420cf32dcd3bb33d6c3635
2015-11-19 16:34:13 -08:00
Moriel Schottlender 24a8bc23ef Add a NetworkHandler as a central API authority to Echo
This is in preparation for dealing with cross-wiki notifications
where we may need several types of operations to extract bundled
notifications from local and external APIs.

Also, renamed files:
* mw.echo.dm.AbstractAPIHandler -> mw.echo.dm.APIHandler
* mw.echo.dm.APIHandler -> mw.echo.dm.LocalAPIHandler
* All API-related handler files moved to their own folder
  for better organization.

Change-Id: Ib730c780ea52c93a6026c5d0b22012b6f39bb50d
2015-11-19 15:25:03 -08:00
Translation updater bot 85943737b3 Localisation updates from https://translatewiki.net.
Change-Id: I273cf2ae0270089a437579510819e03ec4d0979e
2015-11-19 21:35:25 +01:00
Kunal Mehta a00628b42a EventMapper::fetchByUserBundleHash(): Always return an array
It's basically impossible for DatabaseBase::select() to return false now
that ignoreErrors() is protected. So always return an array so callers
don't have to worry about false.

And remove a test that checked the result if DatabaseBase::select() did
return false.

Change-Id: I9ca8511585403d8c0ec262898ad4e61c2b038d51
2015-11-19 10:12:43 -08:00
Roan Kattouw c8d0115fd5 Prevent link color on hover for the body ("payload") as well as the header
Change-Id: Id221af75ed76122b03f741c184053e73bd2f4ee5
2015-11-18 20:10:40 -08:00
Roan Kattouw 8e46160210 Remove styling for nonexistent mw-echo-title-heading class
Change-Id: Ia1ce2889ec0e740d0fcc7d49809d5c64d24a696c
2015-11-18 20:07:53 -08:00
jenkins-bot 904e1e5a8c Merge "Presentation model for reverted" 2015-11-19 00:55:46 +00:00
Translation updater bot 08c3927cdf Localisation updates from https://translatewiki.net.
Change-Id: Ifa294aa5da19e1ca2aaae0e818bf673912f4a63b
2015-11-18 21:57:28 +01:00
jenkins-bot 9c40143cef Merge "Presentation model for email-user" 2015-11-18 18:42:00 +00:00
jenkins-bot 5100bba74f Merge "Extract getMessageWithAgent" 2015-11-18 17:53:03 +00:00
Stephane Bisson b3ab132ffd Extract getMessageWithAgent
`getMessageWithAgent` is used by `getHeaderMessage` is can
be reused by other presentation models who need the
agent in their body message.

Bug: T118059
Change-Id: I0cbccaeb8b6e60d03bc75bc85c74591619b4399a
2015-11-18 09:47:24 -08:00
Matthias Mullie a35bf21084 'Load more' check should be based on retrieved data, not what could render
Since EchoEventPresentationModel::canRender can reject notifications,
its result should no longer be used for infinite scroll.

Current code checks if the amount of to-be-rendered data exceeds what
we need to display, but if we reject some notifications that may no
longer be the case, even though there is more data still.

Change-Id: I3e5f8c2d1fc0c63db7b277324c96af043689ddce
2015-11-18 11:06:22 +01:00
Translation updater bot 643cf2a3a3 Localisation updates from https://translatewiki.net.
Change-Id: Ibe9631ed63c484aaa029a3b790488b1c8aa62a03
2015-11-17 21:51:23 +01:00
Kunal Mehta 609c941323 Remove "learn more" link from user-rights notification in flyout
The primary link already goes to the exact same target, so the
link is redundant.

Change-Id: I7c76bcb000c7b41f45b0df2cdaaebf0e9ca77404
2015-11-17 10:04:56 -08:00
Stephane Bisson 44149b6cbd Presentation model for email-user
Bug: T116843
Change-Id: I99e790d72c7c534665d1d86c38459c5d0e60b91b
2015-11-17 12:44:45 -05:00
Stephane Bisson 3fa832c6c7 Presentation model for reverted
Bug: T116843
Change-Id: Ide03220ad8ad621b5943e36d71e484a21bc8a65b
2015-11-17 10:19:15 -05:00
Kunal Mehta 8145cd1425 Remove old, now unused mention flyout messages
These are no longer used in the interface, 'notification-header-mention'
and 'notification-header-mention-nosection' are used instead.

Change-Id: I08ffe47cf7932637b77f43f6ec374272b5e3ca3e
2015-11-16 15:49:44 -08:00
Translation updater bot 18606871c0 Localisation updates from https://translatewiki.net.
Change-Id: Id3e226ad7f7de134a545dc4800da36574a273770
2015-11-16 22:14:43 +01:00
Kunal Mehta dbc83a0c0c Unstub $wgLang before passing it to DiscussionParser::getTextSnippet()
getTextSnippet() has a `Language` type hint that will fatal if $wgLang
is a StubUserLang object, so make sure we unstub it if nothing else
already has.

Bug: T118542
Change-Id: I847680074fbbf95bbe3b6002151d2a18c45ebe6e
2015-11-16 10:41:51 -08:00
Translation updater bot 236c9360be Localisation updates from https://translatewiki.net.
Change-Id: Id40c06a5b32ec54222bb4a7abed10848e77174bf
2015-11-15 22:17:01 +01:00
Translation updater bot a070d2ccae Localisation updates from https://translatewiki.net.
Change-Id: Ie6358999cbb818c35f097a9f8789568605e092a1
2015-11-14 22:16:20 +01:00
Translation updater bot 15a51cab93 Localisation updates from https://translatewiki.net.
Change-Id: I04629e1ffafe9ef9c987b4c285b32bd426a84fe6
2015-11-13 21:32:58 +01:00
jenkins-bot a548832580 Merge "Remove unncessary code from NotifUserTest" 2015-11-12 23:58:12 +00:00
jenkins-bot 72cb6202b0 Merge "EventPresentationModel: Add accessor for current user's username" 2015-11-12 23:58:10 +00:00
jenkins-bot 20579a711b Merge "Allow welcome notifications to have a primary link" 2015-11-12 23:53:08 +00:00
jenkins-bot b36847f95f Merge "Fix some phpdoc, add missing @throws" 2015-11-12 23:52:06 +00:00
jenkins-bot e1c29e8d24 Merge "Remove unused NotifUser::getFormattedNotificationCount()" 2015-11-12 23:51:07 +00:00
jenkins-bot 1428d9e797 Merge "Browser Tests: fix" 2015-11-12 23:38:09 +00:00
Stephane Bisson 10c4ed6f49 Browser Tests: fix
* extract notifications to components/notifications.rb
* wait for the flyout to be loaded before counting
  the unread notifications
* remove popup.feature because it is redudant with
  notifications.feature and too low-level
  for acceptance testing

Change-Id: If0b0286e8e98e379ae1d6d91db8084adda93b3f6
2015-11-12 15:17:07 -08:00
Kunal Mehta 40667ca7d4 EventPresentationModel: Add accessor for current user's username
Only to be used for GENDER purposes.

Bug: T118058
Change-Id: I5cf0563374ac1eaf934fecbf4bb68d35fa287edd
2015-11-12 14:34:24 -08:00
Kunal Mehta 0a0a62e3c3 Allow welcome notifications to have a primary link
Wikis can customize the 'notification-welcome-link' to a page title
(like "Project:Welcome" for example) and the "Welcome!" notification new
users receive will have a primary link to that page.

Bug: T117509
Change-Id: I29f6d69db480fa7d39573941e762c4dad8737ed0
2015-11-12 14:30:51 -08:00
Kunal Mehta fb56d61d68 Fix some phpdoc, add missing @throws
Change-Id: Iba072d64443ed9117233f591f1aea3cc6a4adc44
2015-11-12 14:10:52 -08:00
Translation updater bot 6185098c26 Localisation updates from https://translatewiki.net.
Change-Id: Ia1f33f7449061dfd13516bd9a6938ee6f78c5a0e
2015-11-12 22:59:02 +01:00