Commit graph

561 commits

Author SHA1 Message Date
Kunal Mehta 0919b01e75 Pass uselang=user to the API instead of figuring it out client side
Change-Id: I09add693567af577c14c646d2b6b943716e0522e
2015-06-07 17:30:00 -07:00
Matthias Mullie d150625ce1 Until seentime is recorded, we should treat notifications as unseen
Since we didn't use to save seen time, it is unreliable at first.
I decided to just show them as read then, since we couldn't know
if they had or hadn't been read.
However, it would make more sense to keep them unread until we first
save the time a notifiation is seen: it is in line with the current
behavior (where the badge just stays red, always)

Also fixed a problem where I meant to .get a value but had .set
instead. It wasn't noticable because that function is currently
only called when things have just been seen, so even though it
was wrong, it produced a good result.

Bug: T94634
Change-Id: I7ee447249527feb3914c76cfffd673bbda062b75
2015-05-06 10:53:45 +02:00
Roan Kattouw 518101e495 Actually pass jscs
Removed exemptions from .jscsrc and fixed the code to make jscs still
pass.

Kept the dangling underscores exemption because leading underscores
are (for now) used as a naming convention for private functions in
this repo.

Change-Id: I18964f8469f52c294276527d92cb6bf9f48c2576
2015-05-04 19:28:01 +00:00
Matthias Mullie da07893647 Display red badge based on time of notifications vs last time panel was opened
I tried to stick as close to the existing code as possible.

Special:Notifications is slightly different from the overlay,
however. I made it add .mw-echo-unread class for consistency,
but that JS doesn't record seen time (it only loads older
entries), not does the CSS fadeout apply there (it marks
everything as read as soon as it's displayed, so different
behavior from overlay)

PS: I'm not sure about browser compat for the fadeout. But
even if some obscure browsers don't support this, meh. It's
not an "important" feature that can't be missed.

Bug: T94634
Change-Id: Ibb201823fb52ef8a3d5eaa39b0b724ede8d271d1
2015-05-01 11:39:45 -07:00
Matthew Flaschen 0dbf078f8d Make sure eventId is int for client-side events.
Bug: T95169
Change-Id: Ic15b963a3656f8886532d1b990befe327159d56e
2015-04-15 00:18:38 -04:00
Tina Johnson 0e810f0510 Make links in Echo's notification footer blue on hover
Links on the notification footer, "View edit" / "View changes", needs
to be blue instead of grey to be consistent with the Mediawiki interface.
The link turns blue upon hovering, just the way it is currently set
for other links on notifications like the page title.

Bug: T57367
Change-Id: Ibaaff52b9d4bdfc5beca442e10734dd5cf8886d7
2015-03-14 00:41:11 +05:30
Matthew Flaschen b930dfaf47 Use mw-ui-anchor class
This is now required to actually pick up the MW UI progressive
color, so there's a slight visual change (wrong blue => right blue).

Fixes T72818

Bug: T72818
Change-Id: I719eb20a3940904ab45f8376280e20432a3b2d80
2015-03-02 20:16:31 -05:00
jenkins-bot bf0378e57a Merge "Fixed CPB flyout notification count" 2015-02-18 04:33:41 +00:00
Divya 562168b261 Fixed CPB flyout notification count
Added ext.echo.updateNotificationCount to notify other extensions
about updates to the notification count.

Bug: T67178
Change-Id: I7f4e34f2c1808b249db010018dd1b49a8dde246a
2015-02-18 04:31:34 +00:00
bearND e359b304db Make current Echo overlay tab dark gray and bold
mw-ui-quiet gets dark gray and bold.
This way it is easier to see which is the current tab.

Bug: T71929
Change-Id: Ie7e21cd71a385d216402d393344cf76d3ed45d23
2015-02-02 15:22:59 -07:00
Amir E. Aharoni 91847e96c6 Fix the overlay chevron position for RTL
Bug: T78330
Change-Id: Ie438042bc24b8ace429eec68c8b75c09da56aa95
2015-01-09 17:50:51 +00:00
Amir E. Aharoni 94cb6103c2 Cleanup whitespace in modules/overlay/ext.echo.overlay.less
According to
https://www.mediawiki.org/wiki/Manual:Coding_conventions/CSS#LESS

Change-Id: I361909fcea67fa5e0e3cbb69711ede91417c4e2e
2015-01-09 19:50:08 +02:00
Timo Tijhof 4fdae24555 overlay: Remove needless specifity in .mw-echo-grey-link selector
Binding it to the element name should rarely be needed as it only
adds complexity with no clear benefit.

Nesting classes should also rarely be necessary as it basically
requires the code will never be embedded in or itself embed something
from another component (otherwise you'd clash with that other component's
class name, and if you don't clash, then it wasn't neccecary to
nest the class in the first place).

If the class is overlay-specfic it should be renamed to something
like '.mw-echo-overlay-grey-link'. Keeping it as-is and applying
directly though, as it doesn't appear overlay-specific.

Change-Id: Ied601058c8e501914113d542f88542c83157d5a0
2015-01-06 22:04:12 +00:00
Roan Kattouw e3c4ddc1ae Don't make the notifications list 5px taller than the screen
The max-height of the notifications list was hardcoded to
the height of the window minus 134 pixels. I don't know
where this value came from, but it doesn't seem to take
borders into account. The correct value appears to be
139 in Chrome and 140 in Firefox, so I changed it to 140.

Also, this really really should not be a hardcoded value.
This 140 value can be measured in JavaScript; that's how I
derived it. Even better, oojs-ui has a mixin called
OO.ui.ClippableElement that automatically does this for you
AND automatically adjusts the height when the window is resized
as well.

Change-Id: I17bc2c5333e5c3d5dd720e6bccf8cbbdbb4abe6c
2014-09-23 15:00:21 -07:00
grunny 3093c7a69f Remove use of deprecated "hover" pseudo-event
The "hover" pseudo-event was deprecated in jQuery 1.8 and removed in
1.9. This is logged as "JQMIGRATE: 'hover' pseudo-event is deprecated,
use 'mouseenter mouseleave'". This fix switches to using the .hover()
method which appears to be the original intent as two functions have
been used which .hover() supports, whereas .on() only accepts one
handler. Now the class change works as expected.

Change-Id: Ib28801293b72f8f344455b5f308876d185abc8bd
2014-09-19 03:02:43 +10:00
Erik Bernhardson 8ee843fab5 Hygiene: Dont quote object property keys
Change-Id: I93d669a26f85b4eb5c5e0e06e314b89894f12385
2014-09-12 16:00:07 -07:00
jdlrobson 4ff74ddd50 Hygiene: Alter how initialisation of the overlay works
Restructure code so MobileFrontend can make use of it
Kill ext.echo.desktop

Change-Id: I984373ba54206d447c54a435dbf60e8f6e814be1
2014-09-12 22:49:51 +00:00
Shahyar c0446f683f Set text colors in overlay to mwui light gray, and increase title font size
Change-Id: I24f796df1abee02557db2f4817ad70c227dd8d8f
2014-09-11 19:13:44 -04:00
jenkins-bot 9e925cf021 Merge "Switch the order of Alerts and Messages tabs" 2014-09-10 22:00:17 +00:00
jenkins-bot 34290fb80a Merge "Localize numbers of alerts and messages" 2014-09-10 16:08:45 +00:00
Matthias Mullie adfb235de0 Switch the order of Alerts and Messages tabs
Change-Id: I864d45336c23331543ff6aaea8ec6512d4fba0c3
2014-09-10 15:31:09 +00:00
jenkins-bot 4156e030c8 Merge "Remove (X) next to Alerts/Messages if there is one section" 2014-09-09 23:28:35 +00:00
jdlrobson 2cacf82efa Restore QUnit tests to reflect alert as default tab
This reverts the tests and amends them after the
application of commit 5da9eac08a.

Luckily nothing appears to be broken.

Change-Id: I67acfe5dc74ef750d5443dd619dbb114623ee233
2014-09-09 13:23:37 -07:00
bsitu 75d5c9b9a3 Remove (X) next to Alerts/Messages if there is one section
Change-Id: Ibf66328e31bfefb3d588196c3f4babfa65bb52f3
Eg: Alerts(X) becomes Alerts
2014-09-09 11:12:38 -07:00
Matthias Mullie b090b749de Messages/Alerts text is tiny in Monobook
Just like all other text elements in the overlay: set the font-size to 13px
Not sure why this was em & rest px. 13px is equivalent to the current 0.8em in
Vector.

Change-Id: I29d67f21cc2af7209469299ab228ebe7dac98af7
2014-09-09 18:01:36 +02:00
bsitu 9c55aa0fc8 Colors are backwards for flyout section link
Also make active section link not clickable

Change-Id: I7f391929382489e8bad5ab56fea9f2ef7b2978b0
2014-09-09 16:31:23 +02:00
jenkins-bot 4aa508b6a8 Merge "Default to alerts tab" 2014-09-08 21:42:29 +00:00
Erik Bernhardson 5da9eac08a Default to alerts tab
The only exception is when there are new message notifications but no new
alert notifications.

Bug: 70461
Change-Id: I06daa3f7d526beeb878eb343c169e01acd49e71f
2014-09-08 13:18:51 -07:00
Amir E. Aharoni ce6b730e74 Localize numbers of alerts and messages
Change-Id: Ifc502afaed3fc04e7addb5383e3ed0c3c4efe439
2014-09-08 16:14:19 +03:00
bsitu d9f697414f mw.echo.overlay.updateCount() no longer exists
If you have an unread notifications not in the initial
load of special page, clicking load more would throw
an error

Bug: 69714
Change-Id: I9af588780b2ab8481ba252ddc21bad0601de7a0b
2014-09-05 21:37:12 +00:00
Erik Bernhardson f5985169cc Allow .mw-echo-title-heading outside special page
This class was only being applied to notification output
on special pages and not in the overlay, move it so it can.

Additionally:
* bolds .mw-echo-title-heading same as the anchors it works with
* clean up a repeated rule against `.mw-echo-title a`

Change-Id: I579252399b39746f5aa2cfc51b5cd3b9b8b2cdb0
2014-09-04 18:59:30 -07:00
jenkins-bot abb7655297 Merge "Add support to retrieve unread + read notifcations for section" 2014-08-20 17:37:51 +00:00
bsitu 8e2de3f02b Add support to retrieve unread + read notifcations for section
Change-Id: Ife3750400315f545f5f3e54ac9847f56c2efe9be
2014-08-19 16:54:48 -07:00
jenkins-bot 715ad180a2 Merge "Hygiene: Mega clean up the Echo footer code" 2014-08-19 20:25:04 +00:00
jenkins-bot 8d5421c9cb Merge "Fix line height/size of notifications" 2014-08-19 18:55:10 +00:00
jdlrobson 75cda20a31 Hygiene: Remove unused directory
Let's not use old unused things lying around... it just confuses
people.

Change-Id: I30cecb58fbdce0129e0385be3680ca4a2c6c36f8
2014-08-18 21:11:19 +00:00
jenkins-bot a3449bfb67 Merge "Hygiene: Stop using id for footer" 2014-08-18 17:27:00 +00:00
jdlrobson 088ba0a152 Hygiene: Mega clean up the Echo footer code
Lots of duplicate unused css. This simplifies it drastically.

Change-Id: Idfcca27840410f0287e30478e7978255234127d0
2014-08-18 17:26:40 +00:00
jdlrobson dc45eb246f Fix line height/size of notifications
Previously too cramped and not in relative font.

Change-Id: Idfc2d24a4896883630aee7c105cf67c8a8005a57
2014-08-15 14:02:17 -07:00
jdlrobson 965a8b8a2f Hygiene: Stop using id for footer
No need. Class works perfectly fine here.

Change-Id: I8188e759ad3eed971d5847b23d49b333d80b509f
2014-08-15 17:43:56 +00:00
S Page af2abe84a5 "put a comment nearby with the resulting keys"
Per https://www.mediawiki.org/wiki/I18n#Using_messages
Comment-only change.

Change-Id: I468a79bee19fc5486b564b1a0ec7eb66c9dfa852
2014-08-14 19:01:45 -07:00
jdlrobson 178ec1b816 Fix size of 'mark all as read' button
Change-Id: I2b760e70e60f001824b66e3652dafefaf7f6a32f
2014-08-14 15:10:32 -07:00
jdlrobson 1c6f5906d0 Hygiene: Kill dead code
Not serving any purpose...

Change-Id: I151e80a79bcaba3d9037fc9f21533a4e9161f60f
2014-08-14 14:29:40 -07:00
jdlrobson 8b381e2081 Hygiene: clean up messy less file
Change-Id: I8c76e92b8a4d79cd26ac7ed54c20bdae54e0b5bd
2014-08-14 14:18:42 -07:00
jdlrobson 5ff3189146 Prevent horizontal scroll bars in Firefox
Use inline block and width to force truncation of the flow topics

Bug: 69563
Change-Id: I62fc95a58dbdf0f21e36e67e1941e4e35585e2d2
2014-08-14 13:21:49 -07:00
jenkins-bot 4b472dd9f2 Merge "E2f: mark all as read behaviour" into two_tabs 2014-08-14 18:48:42 +00:00
jdlrobson 92ee69b92d E2f: mark all as read behaviour
Also adds browser tests for the behaviour of the mark all as read button
to ensure it only clears message notifications.

Dependency:  Ifb7b1b7b7feb4a5af65c79bb16b91a5a9c70166c
Change-Id: I46e1de229e32d705e67cebde678ecea3f3633906
2014-08-13 17:08:16 -07:00
jdlrobson 81610bfb5a Create notification overlay in the body
This removes the need from the super specific selectors.
It also allows us to create multiple notification elements
on a screen.

Change-Id: Ife5291a315915779689943ffc18ac73d77351d0e
2014-08-13 13:24:05 -07:00
jdlrobson 106c2d2215 Create chevron using pseudo elements
IE8+ supports the pseudo element. The world will not explode if
IE6 and 7 do not have the chevron.

This simplifies code by dropping the use of the pokey element

Note: I know we can drop using the image too but I decided not to do
that in this patch.

Change-Id: Ia9ac434461e63bc2cf8554060126995ac65a3531
2014-08-13 13:14:41 -07:00
jdlrobson bee2fe3af1 Fix issue with tab visibility
Danny noticed a bug where if both tabs have unread notifications,
then when opening the overlay and clicking on the alerts tab, the user
would be reverted back to the messages tab.

Test stops this from happening again.

Change-Id: I6bbbbf61251957336de8856201412fa3569ab22d
2014-08-13 10:11:06 -07:00
jdlrobson 24e8a34c50 E2e: Show the correct value of unread messages in the tabs.
Change-Id: I976937cfe184f37abe78904e6f2cdc81f8190e80
2014-08-13 00:39:15 +00:00
bsitu 7f4f6c5228 Truncate text in Echo notifications
Automatically truncate text with ellipsis on single lines of title

Change-Id: I0ef9eeb9f9d3403f79ee9960b075fb7062150a1d
2014-08-12 23:53:52 +00:00
jdlrobson 17d100f735 F11: Show mark as read buttons in notification list items
Change-Id: I1c132a3645188c8da8b04432dd3c1ce1006cca80
2014-08-12 15:02:03 -07:00
jdlrobson 8c61a6a416 E2d: Add the mark as read button to messages view
Don't mark messages as read until they have been acted on.
Show a mark as read button that marks entire list as read.

Change-Id: I4450a66cffd11c67b9a4ba9aac0fe958dc760e15
2014-08-12 14:49:19 -07:00
jdlrobson bb27de169e E2c: Hover behaviour of notifications panel tabs
Note no design was defined so have taken this to mean use
mediawiki ui for consistency purposes.

* Use mw-ui-active and mw-ui-quiet for tabs
* Update tests

Change-Id: If7a51b2286cdfe6e839dacc2476c9a578bc7f1df
2014-08-12 21:06:12 +00:00
jdlrobson 7870b6cac2 E2b: Reflect the count in alerts and messages tabs
Add test coverage.

Change-Id: Ia5658d2b0c230915cda9309a590b416b0aa73bfe
2014-08-12 14:00:41 -07:00
jdlrobson 9882898f92 Notification overlay Messages and Alerts sections
Shift to new API to support 2 tab view
When a new has no messages they will see the old style overlay with
Notifications heading. I have added tests to assure this is the case!

Later patches will:
1) Add the mark as read button only in message view
2) Note currently the tabs do not refresh when notifications is clear.
We need some kind of EventEmitter to make this sort of thing easier.

Change-Id: I62b590e81cd3fe867c4c13959cb43466aacfe2d5
2014-08-12 12:33:06 -07:00
jdlrobson 66dd838ed7 Kill mark as read button
This is being redefined as part of the introduction of notification
tabs.

Change-Id: I2211bf6727f661ca7fcd6023aaddb3f2b5ac53ba
2014-08-12 18:42:57 +00:00
jdlrobson 4470d91e54 Hygiene: Break out _buildNotificationList
Make various properties of the overlay properties of
EchoOverlay to reduce need for function parameters

Change-Id: I70ec0c650d58322aad93d71292a836d7cf7e7474
2014-08-08 15:45:02 -07:00
jdlrobson ccc0e713a0 Hygiene: Introduce EchoOverlay initialisation class
Not as scary as it looks. The change to _buildOverlay simply changes
indenting, and cleans up to reflect new parameter. Tests still pass ;-)

Kill noticationLimit concept
Only expose what's necessary on mw.echo.overlay

Change-Id: I2671a41af8188c14ad4c910396afa0d9000b6051
2014-08-08 14:35:07 -07:00
jdlrobson f4eadb5e0a Ensure override is more specific
is definitely more specific then
So let's make sure the override always works.

Change-Id: I8e1623357185ad7b55ddc9d60ab98984721075ae
2014-08-08 11:30:25 -07:00
jdlrobson df66e80648 Regression: Fix styling of new unread notifications
Change-Id: Icf9f1bc21c084070a21865232cdac5d978be0731
2014-08-08 10:44:18 -07:00
jdlrobson 71a1ec3f6f Reduce specifity of Echo css
The #p-personal only is needed to override the ul padding.
Let's make this explict.

Change-Id: Idf538d2a09ffc4d325d4fb3061564d8dd11b1e60
2014-08-07 21:07:14 +00:00
jdlrobson 1896424e9a Hygiene: use self where possible
Change-Id: I30e9d6ea8b59e168fc5b151f215c3592f475bedf
2014-08-06 13:30:42 -07:00
jdlrobson 0ff4295a88 Hygiene: Move the overlay initialisation code into a separate file
Change-Id: I4dcdf9708b700c57679ff878275c5560a62e3a06
2014-08-06 20:29:35 +00:00
jdlrobson a815733447 Hygiene: Move code for header into _getTitleElement
Change-Id: Ic53933189bf51772a88689794a7633ba8ba0ac2c
2014-08-06 20:29:30 +00:00
jdlrobson f02d3f059d Hygiene: Add _getFooterElement method
Continue to shrink down the size of buildOverlay

Change-Id: I69b339947bfe4d5e73c6d293f0ae5e9e494ec6ca
2014-08-06 20:29:25 +00:00
jdlrobson 9b30d33549 Hygiene: Refactor out mark as read button code
Change-Id: Iad935174925bd1c16e51bbc36c84b48769e9780c
2014-08-06 20:29:01 +00:00
jdlrobson e064126209 Hygiene: Split buildOverlay into smaller functions
Start with a getNotificationLimit and markAllAsRead function

Change-Id: Ice53af40a152f6c3b5a92683c574ef7dc2d01047
2014-08-06 20:28:55 +00:00
jdlrobson 01b0f912f3 Hygiene: More LESS cleanup in ext.echo.overlays.less
Change-Id: I2d2daad00a11a156dc0ac693ea99322c9470cc6f
2014-08-05 11:37:43 -07:00
jdlrobson 430628ccc1 Hygiene: Port all Echo css to less.
No changes.
Makes styling code more readable.

Change-Id: Ie45f2cd3671bee5b88ba92ca2946d6e77cd59508
2014-08-04 11:43:27 -07:00
Legoktm a09d4cbaf5 Revert "New hooks for external integration to notification intiialization"
No usecase has been provided, and additionally the hooks
are not documented. Bartosz also points out that
mw.hook calls are asynchronous and memorized.

This reverts commit 9d3561afaf.

Change-Id: If735b46996fab3def835a54223412ef6d3105395
2014-07-26 01:05:35 +00:00
Erik Bernhardson 9d3561afaf New hooks for external integration to notification intiialization
Adds two new hooks to allow extensions to tie into the notification
loading process.  Between these two hooks and the new isInitialized()
method any extension can run code whenever a notification is displayed.

Change-Id: If351835be5f65ca098e2d235ea8c8e4dc40ae2b4
2014-07-21 16:08:56 -07:00
Thiemo Mättig e205992d0b Remove unused code and fix missing/broken documentation
General code cleanup as reported by the PHPStorm static code
analysis. I hope it's not a problem that I made a lot of very
different (but all very tiny) changes in a single patch. If you
want to merge this but you think it's better to split it into
several patches first, please tell me.

Change-Id: I2e2c4bb47f8d20e038d28e236e2ff813b30504af
2014-06-04 04:54:00 +00:00
Thiemo Mättig 0656e7594a Avoid line break in the "All notifications" footer link
Tested with latest Firefox and Chrome as well as Opera 12.

See bug 57327 for full description, please.

Bug: 57327
Change-Id: Ibf6e7d590754402f4cfafa3a3db55bb0c6aa525e
2014-06-04 04:53:25 +00:00
Juliusz Gonera c9cff5c600 Always show the overlay when badge clicked
The badge is always close to the top of the window (if it's visible), so
this is not necessary. Also, this behavior is definitely not desired
for the upcoming fixed header beta feature (the badge will always be
visible as a part of the fixed header).

Change-Id: I66e8a50b1139f7bcd005cfb3c3576578efe6a653
2014-05-15 23:45:03 +00:00
tinajohnson.1234 19dacca2e2 Added keyboard shortcut (ESC key) to close notifications flyout
Notifications flyout is closed when ESC key is pressed.

Bug: 53588
Change-Id: I220affcc383c943ca9d977bc4014d45904ce06c2
2014-04-06 11:40:10 +05:30
aude 5dfc53c990 Remove usage of wikiGetlink deprecated function
Change-Id: I59ecfdcdf834d265b9a911c37fd9a35fd2588ec7
2014-02-24 12:56:04 +01:00
bsitu 7637e1283d Automatically mark invalid notifications as read upon request
Change-Id: I8f72daf1b49bcb42037c1415f806bab3472d8e39
2014-02-05 16:53:04 -08:00
jenkins-bot a065dea8af Merge "Catch exceptions formatting notifications" 2014-02-05 23:26:28 +00:00
Erik Bernhardson 425a4a09fa Catch exceptions formatting notifications
Provide users a better user experience by catching and logging
errors with Echo notifications.

Bug: 60906
Change-Id: Iee93a05c6eed468af8bbfa60249df0819c49c45b
2014-02-05 13:55:27 -08:00
jenkins-bot 6857a6e719 Merge "Don't show the overlay if the badge is not near the top of the window" 2014-01-30 01:36:17 +00:00
roopak 57103b8f29 Changed the font size used for subheading in notificatons
Changed the font size of notifications which was earlier too small
and also the accessibility was also too low

Bug: 60239
Change-Id: I20be3cd2277e865ee694070f119999b7b170547c
2014-01-21 18:50:20 +05:30
jenkins-bot 6cd68481bf Merge "Add new messages indicator from a hook" 2014-01-12 15:16:35 +00:00
Bartosz Dziewoński 3dc2b10b78 Don't show the overlay if the badge is not near the top of the window
Bug: 58728
Change-Id: Ia714425078c277d65af99389c95014d87e138e8c
2014-01-12 14:37:32 +00:00
jenkins-bot 3932d39a10 Merge "Make sure the overlay is visible, even if the badge is near the edge" 2014-01-12 14:06:14 +00:00
Bartosz Dziewoński a46fb8ac83 Make sure the overlay is visible, even if the badge is near the edge
We just shift it a bit to fit it on the screen.

Bug: 58728
Change-Id: I61847ed7b9f08ce6618a903bb4f5e0d6afb07e9b
2014-01-12 14:58:27 +01:00
Kunal Mehta 1240492018 Add new messages indicator from a hook
So it works for users without JavaScript

Bug: 56974
Change-Id: I0652a740ca7156257d4459931d80872877339c0d
2014-01-12 03:31:46 +00:00
kaldari f1e0a73abd Add logging support for mobile boolean flag in EchoInteraction
See also: I8db8d3c4eb2bb396195c42073a95ac8530fe869d
Change-Id: I3cb6b9cff91a927b03d30e5f3fec9984cf3f790b
2013-12-24 19:45:51 +00:00
m4tx fb438a1a17 Prevent "Mark as read" and title-overflow text from overlapping
If the echo-overlay-title-overflow text is too long, it's wrapped into multiple lines now.

Bug: 55919
Change-Id: Ib1d252ab26be7d73cbf71c6fb19d84b80d8d30c8
2013-11-30 01:53:59 +01:00
jenkins-bot 4b4e955ae7 Merge "ext.echo.overlay: Unbreak removal logic" 2013-11-10 02:46:46 +00:00
jenkins-bot d810a6f573 Merge "ext.echo.overlay: Various minor consistency fixes and cleanup" 2013-11-09 02:15:36 +00:00
jenkins-bot 55f40efe9d Merge "ext.echo.overlay: Only build the 'mark all as read' button if it's used" 2013-11-05 00:23:02 +00:00
MatmaRex be1cbc4e60 ext.echo.overlay: Unbreak removal logic
Apparently three wrongs make a right: hiding the overlay still worked.

* '#pt-notifications a' click event handler was not correctly checking
  for events comig from inside the overlay due to a missing dot before
  class name
  * But if it were correctly checking, it would not be hiding the
    overlay pokey (just its body) due to a copy-paste error
* Instead the clicks were handled by the 'body' click event handler,
  which did not correctly check for events coming from
  '#pt-notifications a'

I made things right again. The user-facing behavior is the same.

Change-Id: I02aba0e25ba4d81b234b327f120e0e2ff13d117c
2013-11-01 22:38:42 +01:00
MatmaRex c6b65f674a ext.echo.overlay: Various minor consistency fixes and cleanup
Change-Id: Id3b0f4fd7253282b190d6b2ed5fc78b714295e96
2013-11-01 22:15:08 +01:00
MatmaRex 4c8fd7843b ext.echo.overlay: Only build the 'mark all as read' button if it's used
Otherwise a new copy will be created every time the user opens and closes
the popup, and jQuery will hold on to each one forever (because it has
events bound), leaking a minuscule amount of memory.

Change-Id: I70c713be839f826fc27d07b04260c166f9052020
2013-11-01 20:23:05 +01:00
MatmaRex dc1443f57f ext.echo.alert: Restore orange background on Monobook
Core styles for Monobook include high-specificity background: transparent;
rule for #p-personal li a, we need to match it to set our background.

Also change hover behavior: switch to a deeper orange instead of
default white, similarly to how the badge already behaves.

Partially reverts I682182fe.

Bug: 56214
Change-Id: I9f343264c395ecf09c1e34e03d208ec2119fb622
2013-10-27 15:30:22 +01:00
Kunal Mehta 790f4bee9e Remove "Talk:" prefix from "You have new messages"
Bug: 49324
Change-Id: I51d9fc5c891d4489fcb5bce74b0428575f1df7f6
2013-10-21 11:56:20 -07:00
jenkins-bot de93be2b47 Merge "Revert "Notification overlay is partially hidden in RTL language"" 2013-10-16 17:33:31 +00:00
Bartosz Dziewoński 4ad3cb4674 Revert "Notification overlay is partially hidden in RTL language"
Ugly workaround for bug 55779. Let's not do this.

This reverts commit 67bcecff5d.

Bug: 55629
Change-Id: I5f5503aa1d1f7c93b11bf82cfcd73370a991783c
2013-10-16 09:49:09 +00:00
jenkins-bot 2ba05992be Merge "Notification overlay is partially hidden in RTL language" 2013-10-15 15:59:28 +00:00
Ebrahim Byagowi 88937d21c1 Native digits on 'mw-echo-overlay-title-text'
Change-Id: Icdd52ea0267ffbaa0e103070655735eff8423ca1
2013-10-13 19:34:03 +00:00
bsitu 67bcecff5d Notification overlay is partially hidden in RTL language
bug: 55629
Change-Id: I820386379fbea64fb88cfc1a1966ee08680f5c59
2013-10-11 19:06:58 +00:00
Timo Tijhof 72c8aba10e alert: Make selectors less overly specific and clean up js
Follows-up 383a818.

* There is no need for the additional element ("a") or
  descendant ("#pt-mytalk") selector.
  It isn't overrriding anything, only hardcodes details that make
  it harder to maintain or extend this stylesheet. For example,
  there is a gadget that makes  user messages green instead of
  orange, it now was required to hardcode the "#pt-mytalk a" part
  of the selector eventhough those are subject to change.
  Separation of concerns.

* Cache/reuse the jQuery object instead of executing the same
  query to the document, again. It also avoids a potential bug
  where the second query matches different elements (e.g. after
  appending alertMessage, there could potentially be an additional
  nested anchor link; there isn't now though, as the message is
  plain text).

* Add comment about weird echoNewMsgAlertDisplayed variable.

Change-Id: I682182fe15a868969f25fa5bfe2412e2a6f3dddf
2013-10-06 23:52:47 +00:00
bsitu 3b3ed1e3bc Fix some notification badge related issue
* In some languages like persian, the number 0 is represented as '.', we can't compare
  '.' with either 0 or '0' to detect the no-notification status of the badge

* The markread API doesn't respect uselang param, it would return 0 instead of . in a url with uselang=fa

Note: we need to provide raw and formatted count in the API since client side javascript
      doesn't provide fancy function like $wgLang->formatNum()

bug: 54575

Change-Id: I0a49828253ec346ed27c5b9a976f8bdff4e1fa90
2013-10-02 11:25:05 -07:00
kaldari 08fc83b6de Cleaning up Echo 'base' module.
Removing unused functions and declaring correct dependencies.

Targetting to desktop and mobile so it can be used by both.

Also removing dismiss-related code from the formatter.

Change-Id: Icccce64cfb3c564ab468a93ccdba9c5a61687fd5
2013-09-23 11:29:49 -07:00
bsitu 2b57fbd3c2 Split the Echo API into their own write/read APIs
Change-Id: I0ab85c91c6fbe17e9a1c7dc9e504980f629a5065
2013-09-18 14:28:41 -07:00
bsitu 06e7317472 Archive page and overlay should respect ?uselang=xxx
In addition, any message used in the email should be
sent in the user's language.

Bug: 52992
Change-Id: I3585f28d4ec97b86a467958bdfd603791f293d52
2013-09-09 13:44:05 -07:00
jenkins-bot 7591f85e43 Merge "Make items on notifications flyout behave like links" 2013-09-05 17:22:37 +00:00
jenkins-bot 5899f3d4f1 Merge "ext.echo.special: Cross-skin adjustments" 2013-09-04 16:22:47 +00:00
EBernhardson (WMF) e3bdd61952 Merge "Preventing empty payloads from being created when using summary" 2013-09-03 17:40:42 +00:00
kaldari d1463ea6a7 Preventing empty payloads from being created when using summary
Also making sure that footer has some amount of separation from
the notification title even if there is no payload.

Change-Id: I85a1a7989539044a0b0b53e76e70ddee9bb7165c
2013-08-29 15:10:06 -07:00
MatmaRex b916c85353 ext.echo.badge: Remove defunct CSS rule
The space after colon on this line is actually a non-breaking space
( ), which is not allowed in this place according to CSS syntax.
Therefore all browsers ignored this rule (logging an error like
"Invalid CSS property value") and the shadow was never shown.

We could fix the rule instead, but I'm pretty sure users are used to
this by now, and in my opinion it looks better without shadow.

Bug: 53490
Change-Id: I1fd508d2059bec5cd79a6dcdce8dc9be6e6d4229
2013-08-29 19:40:34 +00:00
bsitu 37812cd058 Long text content should wrap in overlay footer links
Bug: 53111
Change-Id: I15865a9808b342e52d2d03e9a3ec8bd2bc8312d0
2013-08-23 12:59:56 -07:00
MatmaRex 6cade7eba3 Make items on notifications flyout behave like links
We want the notifications in the flyout to behave just like links,
including standard middle-click and Ctrl-click behavior. The simplest
way to do that would be to actually make them links - but the area can
contain a few other links, so we can't do that and have to resort to
ugly hacks.

Or do we?

Turns out that while browsers won't accept HTML containing nested <a>
tags[1], such a structure is valid XHTML, and it's possible to create
such structure in HTML mode using DOM manipulation. It works like one
would expect: the entire thing is clickable, but inner <a> tags' hrefs
override outer ones.

Firefox even had a request to make that work[2] which was happily
fulfilled.

Tested the basic case [see below] on Firefox 22, Opera 12, Opera 15
(which uses the Blink engine like Chrome), IE 8 and IE 6 and it works
the same on all of them. Tested the XHTML variant [see below] on all
of the above except for the IEs which don't grok XHTML and it exhibits
the same behavior.

[1] Simple test: $('<div>1<a>2<a>3</a>4</a>5</div>').html() is
    "1<a>2</a><a>3</a>45", not actually "1<a>2<a>3</a>4</a>5" like one
    might expect.
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=331959

----

The test cases used are below. When trying out the XHTML one make sure
that the browser uses application/xhtml+xml MIME type; saving the file
with .xhtml extension should be enough.

XHTML:
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
  <body>
  <div>1<a href="http://google.com/">2<a href="http://example.com/">3</a>4</a>5</div>
  </body>
  </html>

HTML:
  <!DOCTYPE html>
  <html>
  <body>
  <script type="text/javascript">
  var div = document.createElement('div');
  var a1 = document.createElement('a');
  a1.href = "http://google.com/";
  var a2 = document.createElement('a');
  a2.href = "http://example.com/";

  div.appendChild( document.createTextNode('1') );
  div.appendChild( a1 );
  a1.appendChild( document.createTextNode('2') );
  a1.appendChild( a2 );
  a2.appendChild( document.createTextNode('3') );
  a1.appendChild( document.createTextNode('4') );
  div.appendChild( document.createTextNode('5') );

  document.body.appendChild(div);
  </script>
  </body>
  </html>

----

Bug: 52319
Change-Id: I311eca70f025ce92129c828cd88f96686b7cff72
2013-08-06 13:23:33 +00:00
MatmaRex dd87542a40 ext.echo.special: Cross-skin adjustments
Out of the default MW skins these only seem to affect CologneBlue.

* Reset padding and list-style-image on ul#mw-echo-special-container
  ourselves, do not rely on the skin doing it
* Use transparent background on .mw-echo-notification (and
  semi-transparent black on hover) instead of solid white and
  light grey to accomodate colored skin backgrounds

Change-Id: I2c178627e4dbe889c4958afc41e4969aaa45a717
2013-08-04 14:56:32 +02:00
MatmaRex 02bf709c97 Do not offset the heading of Special:Notifications from the left
Bug: 52508
Change-Id: Ia9f5a82b1c297d0e1de09bf228a2bbadccb98739
2013-08-04 14:34:33 +02:00
MatmaRex c351851277 ext.echo.special: Move #firstHeading styling from JS to CSS
Also some code cleanup in the part about converting subtitle links
into header icons.

Change-Id: I25eacb9c512fd6883a65df3af97608749b53b228
2013-08-04 14:34:30 +02:00
jenkins-bot 347cdf3247 Merge "Revert "(bug 51640) wgUserNewMsgRevisionId is null with only one rev"" 2013-07-30 20:47:16 +00:00
Bsitu 63c1d25d3a Revert "(bug 51640) wgUserNewMsgRevisionId is null with only one rev"
This reverts commit b9e5b2f64a.

Change-Id: I64cd03dd0789f482221f8f38bbf9a034025e45f9
2013-07-30 20:45:03 +00:00
bsitu 372b5f2f28 (bug 52225) Some javascript and css fix for IE7
1. clone() breaks the flyout layout in IE7
2. inline-block needs some adjustment for IE7

Change-Id: I014318aacb15000f132c4e4af74f5ea40a064712
2013-07-29 12:52:29 -07:00
jenkins-bot f1cc118b1f Merge "Remove override of skin behaviour for inline anchor's text-decoration" 2013-07-24 12:11:11 +00:00
bsitu b9e5b2f64a (bug 51640) wgUserNewMsgRevisionId is null with only one rev
wgUserNewMsgRevisionId is null with only one revision and that revision is
not viewed, this makes it not reliable for determining if there is new
message.  We just switch to check against $user->getNewtalk() instead.

We can still use wgUserNewMsgRevisionId to generate diff links if desired

Change-Id: I4cf50a944aada03151bd17f3610bd59b3bfb2bf2
2013-07-19 11:50:43 -07:00
bsitu f79c6a2e0f (bug 48568) Bust IE browser ajax cache + some API clenaup
Change-Id: Iaacdf41d85dc31a07d3d981086bcd919ba1a40e2
2013-07-18 10:31:23 -07:00
Timo Tijhof 467cb69645 Remove override of skin behaviour for inline anchor's text-decoration
Bug: 51617
Change-Id: Iea2d960e5d41420611e6eb8f6e1a9e9d58d6dce0
2013-07-18 15:42:08 +00:00
jenkins-bot 8a0eca6bc2 Merge "Making header widths consistant on archive page in Echo" 2013-07-12 22:32:53 +00:00
kaldari 8056c44d8d Making header widths consistant on archive page in Echo
Change-Id: Ie31f0fbf737e91d324996473b6e192bd91676ffb
2013-07-12 15:31:21 -07:00
jenkins-bot 7eb57c25bf Merge "Updating Talk notification icon" 2013-07-06 00:19:39 +00:00
Bsitu f5c9a828c4 Merge "Revert "Bug 49269: Echo markup adjustments"" 2013-07-02 22:11:42 +00:00
Bsitu 6231a712e3 Revert "Bug 49269: Echo markup adjustments"
This reverts commit 8ff2c4dec3.

Change-Id: I3936c574854640c49689d42586fbddde6a9e45bb
2013-07-02 22:07:16 +00:00
jenkins-bot 66007528f6 Merge "Bug 49269: Echo markup adjustments" 2013-07-02 18:38:59 +00:00
jrobson 8ff2c4dec3 Bug 49269: Echo markup adjustments
separate into multiple ul elements with headings dividing them
This removes need for unnecessary styling rules in mobile web

Change-Id: I8acaef726ea0cc639054cf36d6c3649c7ab25bee
2013-07-02 11:36:02 -07:00
bsitu 8817b53fe9 Fix two typos + one js integer casting
Change-Id: Ie5c4c39e94e5531dbfa48e8cde7b608967cec0c8
2013-07-02 10:37:31 -07:00
kaldari c3badbfd08 Updating Talk notification icon
Change-Id: I9f41c361cf6249afbf115d98c7ac4f2dcab2f9f9
2013-06-28 11:56:07 -07:00
kaldari 972e14672f New primary and secondary link behavior for Echo
See https://www.mediawiki.org/wiki/Echo/Feature_requirements#Flyout
and https://www.mediawiki.org/wiki/Echo/Feature_requirements#HTML_single_email_notifications

Also includes some related style changes per Vibha

Also removing feedback link from overlay since it's no longer needed

Change-Id: I94aed697e87126ed8ad6d1d416c99bafaa53ac53
2013-06-27 16:12:16 -07:00
Krenair ab592dad6f Cleanup JS
* Add missing spaces after 'function'
* Remove underscores from identifiers
* Don't use typeof for undefined with local variables and object properties
* API ok/err is deprecated since MediaWiki 1.20 (< 1.22-alpha), use .done and .fail

Change-Id: I5ca3403ee263a0c3e6709618e48e896340952337
2013-06-23 01:25:29 +01:00
Krenair 7da252eec4 Use mediawiki.api instead of $.ajax
Change-Id: Iea98b6cb338c8b7ebbf244073bb8fe481e5e7655
2013-06-19 21:31:38 +01:00
jenkins-bot eb84e56e65 Merge "Never underline the badge" 2013-06-14 23:04:13 +00:00
Matthew Flaschen ecf7f1f261 Add overlay hook for user scripts.
Bug: 48502
Change-Id: I720d4fe65a6501b552dbef21cb258c027dc18867
2013-06-13 21:27:26 -04:00
bsitu 01e244c8a3 Remove quote around javascript object property name
Change-Id: I5cc7f4179066ab694a67d4c578ed4a562f533ade
2013-06-12 10:51:55 -07:00
kaldari 0558ab1571 Calling functions explicitly due to context
When I changed mw.echo.special.initialize to be called as a
callback from $( document ).ready(), rather than being called
explicitly from the closure, it changed the context, which got
assigned to _this. This broke some of the function calls.

Change-Id: I602a58a82ee91646901d0ab1c8b7bb4b22b3437a
2013-06-11 18:01:41 -07:00
kaldari 902ce9cc04 Don't run mw.echo.special.initialize until DOM is ready
To fix rare race condition in Safari

Change-Id: I2ae556ff6e44f291e761d2937203a3376f4a3177
2013-06-11 14:20:08 -07:00
bsitu 6ffc1cac4b Add clickthrough eventlogging to Echo
Change-Id: I3d05d1aeca92f9a0265a522cc5027ae18394c5b4
2013-06-11 10:46:41 -07:00
jenkins-bot 738d816a6c Merge "Fix some JS issues" 2013-06-10 21:57:13 +00:00
Amir E. Aharoni 5631117ca2 Never underline the badge
If link underlining is on, then the number in the badge
will be underlined. This is probably never needed, even
if the user wants to underline regular links.
Set text-decoration to none in all cases.

Change-Id: Ifaca38a8f0a6a3c8df39502a3da582f639ec6333
2013-06-07 19:44:20 -07:00
Derk-Jan Hartman c638d44190 Echo: Better support for non-default skins, as well as no Javascript
This provides some rudimentary styling support to make Echo usable
with the Modern skin.
It also fixes the Notifications special page so it is styled
correctly in Modern, CologneBlue, or with Javascript turned off.
Also some more tweaks for Monobook skin.
Retiring the 'feedback' link from the special page, per PM.

Bug: 47932
Change-Id: I633a93a78f5a78d0642a3a059fa6f7208f99cec4
2013-06-07 11:36:19 -07:00
Krenair 745330367b Fix some JS issues
Brought up by Krinkle in Icebfe86b (PS4):
    * 'ok' and 'err' properties of Api are deprecated, use promise interface
    * Use 'api' instead of 'Api'
    * $( '<a>' ) instead of $( '<a/>' )
    * Expected space after 'function' keyword

Change-Id: I0199db902174551bcf9269edafb1fef1df118b13
2013-06-06 00:09:28 +01:00
kaldari 5ca8b8f1c7 Suppressing underline on hover for notification badge
Change-Id: I663c5f0d1f03bc8159579892a7d313a535ec48d3
2013-05-30 15:45:16 -07:00
kaldari 43d95d153e Slightly reducing badge and alert sizes
Change-Id: If3c93582dbbdcab14b10ad9fe2926dcc94186756
2013-05-23 11:59:20 -07:00
kaldari f9481040d5 Switch to using our own badge instead of jQuery.badge
With this change we will no longer be relying on JS for the badge
functionality. This will prevent the flash of unstyled content,
and allow wikis to locally override the styling (since the unread
class is now applied immediately).

I also went ahead and made the badge styling more closely match the
talk page message alert styling per Vibha.

Also removed the old full link optional behavior since we weren't
using it, and it would have been a pain to maintain.

Bug: 48165
Bug: 48001
Change-Id: Ie85d66afd5181d487d0bb2776ae14b121ea50d88
2013-05-23 10:34:47 -07:00
kaldari 383a81811d Adding new talk page message alert for logged in users
Includes new ext.echo.alert module and new preference

Change-Id: I7a4e78b033aa5e1ea18d1bfa2b6b0187930a6611
2013-05-14 10:39:49 -07:00
jenkins-bot 9a2f91e18f Merge "(bug 48054) Echo API should use a standard continue parameter" 2013-05-13 23:23:04 +00:00
bsitu 97e5e0a92b (bug 48304) Add 'Feedback' link to the Notifications flyout
Change-Id: I86e7b5e6762557743752e433a6e2a007596b1891
2013-05-09 16:13:38 -07:00
bsitu a70208e8fe (bug 48054) Echo API should use a standard continue parameter
Change-Id: I1d5333db4a4d58a1ecfa8dfe562cda5a35093f8b
2013-05-03 18:15:46 -07:00
kaldari 509f7bccc3 Merge "Make sure footer links don't break in Chrome when zooming" 2013-04-30 22:30:39 +00:00
kaldari 4d03af1d9a Merge "Making sure Echo flyout appears above CentralNotice content" 2013-04-30 22:29:22 +00:00
Jorm 83fccf44bc Merge "Making sure moreinfo id is unique on archive page" 2013-04-30 22:12:11 +00:00
kaldari a61592465e Make sure footer links don't break in Chrome when zooming
Bug: 47897
Change-Id: I05041231b69035c12b0898176eb37d311186043d
2013-04-30 14:21:18 -07:00
kaldari 888d2c1239 Making sure Echo flyout appears above CentralNotice content
Bug: 47896
Change-Id: Ife534c013fc2a643043fb495cdaafd57fee7b7de
2013-04-30 13:51:16 -07:00
kaldari cd7ef2a52d Making sure moreinfo id is unique on archive page
Also adjusting position by 1 pixel!

Bug: 47889
Change-Id: I6e3dee7b5ce16c5de8ee564383d353a032623d25
2013-04-30 12:33:59 -07:00
Matthew Flaschen 0eff0b6fdb Remove unused W icon, now configured outside extension.
Bug: 46585
Change-Id: Ic0e29cf8284efc87e2ce67434a5d7984ee760659
2013-04-29 02:41:53 -04:00
Matthew Flaschen d3b67e2122 Change icons to use img tags, allowing easier customization:
* Icon can be defined using a path or a URL
* Extensions don't need custom CSS, but add icon through BeforeCreateEchoEvent
* Sites set their notification icon in LocalSettings.php or equivalent

Bug: 46585
Change-Id: Ifc02b653d07de19229dfb2604305e32f3bd595fe
2013-04-29 06:05:40 +00:00
kaldari 5ad9f2a96e More fixes for Monobook and adding a missing message key
Bug: 47652
Change-Id: I3199af6aef0ceab2380fb1de7b74cc21541e2886
2013-04-26 16:58:03 -07:00
kaldari 35797064c4 Hedging my bets
Making monobook's text-transform not apply to notification flyout.
Unfortunately, 2 overrides are needed since the monobook selector
is applied weakly to the overlay in general (as an inherited style)
and strongly to the notifications themselves (since they're in a ul)

Bug: 47652
Change-Id: I2600b5836ea7bca59d9089d8bb7e69a6aaeca6a4
2013-04-26 14:52:44 -07:00
jenkins-bot 9a6a74208c Merge "Override text color for monobook skin." 2013-04-26 21:19:38 +00:00
kaldari c52cc48aed Override text color for monobook skin.
Bug: 47652
Change-Id: I29562fa75ec4af1128f69865d0500fc13a92eec8
2013-04-26 14:00:59 -07:00
jenkins-bot f89a7b2c88 Merge "Only the 'Notifications' part of the header should be bold" 2013-04-26 00:43:11 +00:00
jenkins-bot 897e450c5b Merge "Adding help button to flyout. Fixing ID name per conventions." 2013-04-25 18:36:34 +00:00
kaldari b3391e42ff Only the 'Notifications' part of the header should be bold
When there are more new notifications than can fit in the overly
it shows a message in the header alerting the user. This message
should be in regular text, while 'Notifications' should stay bold.

Changed per Fabrice.

Change-Id: I21dc0ed516e5656c6d1965970d7a5f313e317aa9
2013-04-24 21:51:27 -07:00
kaldari 24b00328b6 Adding help button to flyout. Fixing ID name per conventions.
Change-Id: Id7243ba8e8599e1413203f951e96b73e2a6ceb9c
2013-04-24 21:36:03 -07:00
kaldari 9febd46267 New red heart icon for Echo gratitude notifications
Change-Id: If2905985b6e7ceb4acf59313b60e6c92ab7fc599
2013-04-24 16:02:08 -07:00
kaldari 9448c6cab0 Add 'Mark all as read' button to overlay
Button is only shown if there are more unread notifications than
fit in the overlay.

To avoid performance issues, this version only works for cases where
the number of unread notifications is less than the maximum count
(99 currently). Otherwise the button to mark all as read isn't
displayed (it's also limited on the server-side for good measure).

Bug: 47092
Change-Id: Ifcb0a436e2b31062741c441cca239d35ddefa0e1
2013-04-18 00:29:36 -07:00
jenkins-bot 057e86286d Merge "Lots of UI changes per Vibha" 2013-04-18 04:49:48 +00:00
Siebrand Mazeland d440540cf8 Add .jshintrc
Per https://www.mediawiki.org/wiki/CC/JS#Linting. Update a few files to
bring the tests closer to passing.

Change-Id: I08b190e8b44dbdbeb56de5c380d0ed4a8394aca2
2013-04-18 00:36:08 +02:00
kaldari d6fa2b4851 Lots of UI changes per Vibha
Changing highlighting behavior for archive. Now unread notifications
are highlighted with bold text in the archive rather than with a
background color.

Bug: 47149
Change-Id: I03b2a2968db6d067041c2618c5b4f878d8dc548f
2013-04-15 16:39:01 -07:00
kaldari 74fdc01fe6 Adding Help link to Echo archive page
Also fixing feedback link for Safari and Chrome

Change-Id: Icc9f2c66f983e95c1564f6981e952d1d99160111
2013-04-15 16:27:27 -07:00
kaldari ac9425aa8f Mostly reverting change Ifb9a287e since it isn't rendering correctly
For Chrome and Safari

Change-Id: I954a33a1a218d2b6f3996a78d9c244ca6b57042a
2013-04-11 13:02:06 -07:00
jenkins-bot b342f475fa Merge "(bug 46678) Adding feedback link. Temporarily removing Learn more link." 2013-04-11 17:27:07 +00:00
kaldari 7effc4808f (bug 46678) Adding feedback link. Temporarily removing Learn more link.
Change-Id: Ifb9a287e2dc11067efac48bdbf700fe7997d19f0
2013-04-11 10:23:47 -07:00
jenkins-bot 7485666776 Merge "RTL tweak for "All notifications" and "Preferences"" 2013-04-11 14:42:16 +00:00
nischayn22 f7c0a803ac RTL tweak for "All notifications" and "Preferences"
Some thanks to the following blog post
http://snook.ca/archives/html_and_css/background-position-x-y

Tested on Chrome and FF latest. Please test on more browsers!

Bug: 46215
Change-Id: I0b92b04f3a48dbd85c7e871a75a6973ea9760367
2013-04-11 10:27:31 +05:30
jenkins-bot 83bf52dff7 Merge "Better limits on number of notifications in the flyout" 2013-04-10 00:49:29 +00:00
kaldari 3800103c1c Better limits on number of notifications in the flyout
Change-Id: Ic53f6ebe530a73ef89204a96b22194a17d034a12
2013-04-09 17:43:57 -07:00
kaldari 4ee07f2a2e Making 'More...' link in archive more prominent per Vibha
Change-Id: Ibbed21c5efd7ce1f6893c92a7f98ba60a63e98ab
2013-04-09 15:52:35 -07:00
jenkins-bot ed6950d854 Merge "Making some changes to the flyout links per Vibha" 2013-04-03 11:33:47 +00:00
kaldari 47f720b81b Making some changes to the flyout links per Vibha
Entire link areas should be clickable

No longer a need for conditional link to archive

Change-Id: If4954f7da91ed823e7714cccb541e4f2e64b16b1
2013-04-02 17:47:40 -07:00
jenkins-bot 7fcaf9b57e Merge "A bunch of Echo style tweaks per Vibha" 2013-03-28 17:20:50 +00:00
kaldari 5b10fdf14b A bunch of Echo style tweaks per Vibha
Change-Id: I1317b1dd670c8f7a33b62bb7d86a6d25d841c6a1
2013-03-26 18:03:46 -07:00
kaldari da331a5bbc Fixing text alignment of Echo flyout in Monobook skin
Change-Id: I43a0560dcc6550ac01445755cf0f000018fc2e34
2013-03-26 14:34:14 -07:00
Bsitu f41e6fd81a Merge "Adding Gratitude icon" 2013-03-21 19:01:11 +00:00
Kaldari 98f4b2cc06 CSS tweak to line everything up.
Change-Id: I63af4e9106082d77f7cd6fa42fc0be95843f1214
2013-03-19 17:27:59 -07:00
Kaldari e6b4133e50 Adding Gratitude icon
Change-Id: Icce2d992d3b5c0bf911077bd0ccd413b29b11469
2013-03-18 13:48:15 -07:00
Kaldari 28fa282a65 Fixing issue with RTL display of badge and pokey
Change-Id: I49ab97ef062fd9a58da80ff0f5fbd21a72770855
2013-03-14 10:41:59 -07:00
Kaldari 4bd3ab66a4 Changing flyout title to be a non-linking header per discussion
Having two links to the archive page is redundant and the meaning
of the title as a header for the list is lost.

Change-Id: I8dce36309e10854b9ff799c82501b6d59df0c621
2013-03-08 21:18:32 +00:00
Bsitu 18f9b513d2 Merge "Fixing dismiss functionality for new checkmatrix system and categories" 2013-03-07 23:21:29 +00:00
Kaldari fcb5d99b37 Fixing dismiss functionality for new checkmatrix system and categories
Change-Id: I3b64c4853587d4d2d8f04fc97c9b3ddb15b520ed
2013-03-07 15:11:46 -08:00
Kaldari 1f88af134b Echo style tweaks per Vibha
Change-Id: I4111092e32213b50ccb0e8dee849a2edfb645827
2013-03-07 10:40:54 -08:00
bsitu 9f62f5fe36 Remove trailing comma from javascript object literal
Change-Id: I629a21eeeae810fe7d6bf805cfbaa61225e00963
2013-03-05 17:14:32 -08:00
Kaldari 8357f4bd75 Implementing new prefs system for Echo
Change-Id: Id745ed6cf1c92695569597fab6ea662bac8c76c0
2013-03-05 12:20:17 -08:00
Kaldari 35cf44e4a6 (bug 45016) make sure dismiss works across all supported types
Change-Id: Id9bf0c785a8fe429c6ec04c427330395d30bf68c
2013-02-15 14:09:39 -08:00
Kaldari 16331eab92 Adding dismiss functionality to flyout overlay.
Change-Id: Ibfbdb2a9f170e1d9b30b50e8639aee25101e71d6
2013-02-14 11:01:03 -08:00
Kaldari af06e26de6 Adding dismiss functionality to special page
Includes new web preferences for Echo

Also adding ability to set dismissability per notification type

Still need to arrange subscription options into a friendly format

Still need to add dismiss functionality to flyout

Change-Id: I484a24b424e69be3640e63b76f82735edae6f13a
2013-02-12 11:33:50 -08:00
Kaldari d0ddc2a3eb Fixing unread state for flyout - CSS tweak
Change-Id: I08bae800758247bc01abeeb59cb4a2873f37b964
2013-02-11 12:05:55 -08:00
Kaldari 31258ba23e (bug 43974) making sure that badge is only applied to immediate child
Change-Id: I7039695e36d5641a605a25d1fa714d845b0be383
2013-01-15 17:29:06 -08:00
Bsitu 571edaafc5 Merge "Docking overley to notifications link rather than side of window" 2013-01-11 19:35:41 +00:00
Kaldari 17cbe366c1 Docking overley to notifications link rather than side of window
Also adding okie dokie pokey

Change-Id: I7d37c2bfa622746d7f153653988c1eb800d0c261
2013-01-10 16:33:11 -08:00
Kaldari 1897b18823 Setting the line-height for the notification content area
Change-Id: If874ed9638d9d5b6c18e10013a46a932c905e2c9
2013-01-08 17:10:59 -08:00
Kaldari bc45a664d2 Determine number of notifications to display based on height of the window
Change-Id: Ib26182a543050e20a3dbc2975c8b6ff762d0a19c
2013-01-08 15:05:22 -08:00
Kaldari 320d044b90 Adding More Info link to Special:Notifications
Also revising some of the formatting, per Vibha.

Change-Id: Id8415c898e81f98c3eb1599ef5980d74ba509081
2013-01-08 14:23:24 -08:00
Kaldari 05e186c7a3 Setting up flyout formatting as a separate formatting option
This is replacing the implementation I did for 'html-light'.
The reason html-light doesn't work is that we don't have any way
of reliably determining which parameter should be the one that is
linked to in the notification title (flyout notifications are only
supposed to have one link). With this system, the notification
definer can specify a separate message/params combination to use
specifically for the notification flyout. If they don't specify
these, it falls back to the normal title message/params.

Change-Id: I35394849cf99307eba4a76e079333d19514fdb5d
2013-01-08 09:53:31 -08:00
Kaldari 486813026d (bug 43432) Dock links bar at bottom of Echo flyout
Change-Id: I79d76929746b6ee7a788e1b4e363425781d5687e
2013-01-03 19:04:15 +00:00
Bsitu f94654389d Merge changes I388b8bbc,I85146f7e
* changes:
  Separating html and html-light formatting for notifications
  More work on our custom edit summary parsing
2013-01-03 18:51:40 +00:00
Kaldari d6ad22ed81 Separating html and html-light formatting for notifications
Change-Id: I388b8bbcce741005b34b87d7331e22d442ef1c9b
2013-01-02 17:52:07 -08:00
Kaldari a5dbc1e000 Merge "(bug 43441) Show preferences icon on Special:Notifications without label except as title" 2013-01-02 05:49:36 +00:00
Krenair 7d13364507 (bug 43441) Show preferences icon on Special:Notifications without label except as title
Change-Id: I2bf4b5ba444157464c7c9070411b663485af8935
2013-01-01 21:48:44 -08:00
Kaldari 69e4d5f9a2 More formatting tweaks per Vibha
Change-Id: Id8c536fabe2151031eeafba697c16e0141710741
2013-01-01 01:28:11 +00:00
Bsitu 4f9d3efb07 Merge "(bug 43431) Link the flyout title" 2012-12-31 23:31:17 +00:00
Krenair 66c93904f1 Try to fix jenkins lint tests
From
https://integration.mediawiki.org/ci/job/mwext-Echo-jslint/142/console
18:54:22 >> modules/overlay/ext.echo.overlay.js: line 56, col 49, ['list']
is better written in dot notation.
18:54:22 >> modules/overlay/ext.echo.overlay.js: line 37, col 44, 'window'
is not defined.
18:54:22 >> modules/overlay/ext.echo.overlay.js: line 127, col 21,
'window' is not defined.
18:54:22 >> modules/special/ext.echo.special.js: line 58, col 49, ['list']
is better written in dot notation.
18:54:22 >> modules/special/ext.echo.special.js: line 112, col 25, Bad
line breaking before '&&'.

Change-Id: I2676a3e07d9d5f7419dd9030dbf218b2c0094cf1
2012-12-27 22:06:20 +00:00
Krenair da58d50b5b (bug 43431) Link the flyout title
Change-Id: I7bad541ee1f05f9135fd1ba23aecab7e864d8652
2012-12-27 16:50:00 +00:00
Bsitu 5199fa4936 Merge "Reworking overlay for edge cases - no notifications, or too many to show at once." 2012-12-18 03:09:57 +00:00
Kaldari cb63eb5b45 Merge "Various fixes to the special page" 2012-12-18 02:43:42 +00:00
Kaldari d42b1db8cc Reworking overlay for edge cases - no notifications, or too many to show at once.
Change-Id: I6af535bf35c5594ed0c4dfad92defffff8b0e02e
2012-12-17 18:40:07 -08:00
Kaldari 7dd7545c4c Fixing line height for the notification titles
Change-Id: I0c2e38ac59ce55043ed55b02dd6b6737db6ab012
2012-12-17 13:35:37 -08:00
bsitu af8b434f11 Various fixes to the special page
1. EchoNotificationController::resetNotificationCount() does not reset count, it has misleading name (should fix the name in another patch)
2. Prevent multiple concurrent API calls resulting from multiple clicks on more link within very short amount of time

Change-Id: I4aeeadddd4fed833c2ae4308c1a0e94e6644f5e7
2012-12-14 17:52:04 -08:00
bsitu 41139e43a4 Remove redundant 'mark as read' API call for read items
Change-Id: I95677fe378d8b1b6dcf90e22886670391aa7d451
2012-12-13 17:04:37 -08:00
Kaldari 65255f7c6b Formatting for Special:Notifications
Change-Id: I891542bf8b6a883e7ff9f78d2b33ddd61c345aa7
2012-12-13 14:08:20 -08:00
Kaldari 704147d1d2 Fixes to the toolbar link for notifications per Vibha
New badge behavior - Show badge even if zero notifications
Enable long and short links - i.e. 'Notification (X)' or just '(X)'

Depends on core change https://gerrit.wikimedia.org/r/#/c/38258/

Change-Id: Idc2288a4ddd0bf788ccdadb96d4744d223edaf0a
2012-12-13 14:07:32 -08:00
Kaldari 52ee8cd952 Adding placeholder and trashcan icons
Change-Id: I589032ae32ec67f0cfca46af98a27654b4ddd672
2012-12-11 19:27:34 +00:00
Kaldari f519bca628 More formatting work on the overlay and base files
Change-Id: I8512c317d6c0a3db9e3fd0aa2b58a87f8f276b45
2012-12-10 18:02:19 -08:00
Kaldari 20ec5375dd Merge "Modification to all notification page" 2012-12-11 01:12:01 +00:00
bsitu ad14fdbc57 Modification to all notification page
patch set 1:
	* Consolidate notification retrieval in API and Special page
	* Add load more function to special page with records as old as 7 days ago
	* Add support for browsers with javascript disabled

patch set 2:
	* Remove trailing whitespaces

patch set 3:
	* Fix some i18n issue
	* Fix variable names and some exta whitespace
	* Load core css files on special page rendering

Change-Id: Ic69e430b5eb196e5223a2bb6b1d447ef257d559b
2012-12-10 13:51:26 -08:00
Kaldari ae7d11c40f Formatting work on overlay
Change-Id: I84a8d8e8259da65b922170b9a63150d0039dfb20
2012-12-07 12:04:19 -08:00
Kaldari 7e9a35107b Allowing notifications to support multiple predefined components in the payload.
Payload components can include edit summary, edit snippet, welcome message.

This replaces the older 'content' system which constructed a payload
from an arbitrary message + parameters (but only supported a single
message).

Change-Id: I9a5e1d69f0c8296bb2bb79cb3f26e67aa34592bb
2012-12-05 10:31:41 -08:00
Reedy 54f0804b7d Losslessly compress PNGs
Change-Id: Ifb34fa276bac4c05d637e9a04f231918cae7155a
2012-12-02 21:51:39 +00:00
Kaldari f07d3f6e7a Redoing the notification icons and changing some formatting
Change-Id: Ida189fc267554f52d3da32d71ea6faf0d9b457f5
2012-11-26 13:23:03 -08:00
bsitu 2a7e26e5af (bug 42074) All notifications… is sometimes unnecessary
Only show 'All notifications' link if there is notification to show

Change-Id: If3f87ef07b9aaa5a30d2e1e52c8f7a6d445d8eb4
2012-11-14 11:25:13 -08:00
Bsitu a749a166f0 Merge "Make sure that notification count is defined and properly typed." 2012-11-09 19:49:59 +00:00
Kaldari 10d827bdb4 Make sure that notification count is defined and properly typed.
Also switch to new badge param for inline style.

Change-Id: Ibf4c83e58db98c610b15d77496b7d3776438aadc
2012-11-09 11:13:31 -08:00
Kaldari baec4f2aaf A couple CSS tweaks to eliminate overlap and make sure all link is visible
Change-Id: I83542304d6b10d6cdd67d42bd3abd226ca3d687d
2012-11-06 17:38:01 -08:00
bsitu 15e4719105 Add max-height to notification overlay
patch set 2: change the notification overlay height from 0.5 to 0.75 of window height

Change-Id: I3ad4192085bf77009fb2c3ab5d27223e0bee0c32
2012-11-02 15:11:21 -07:00
Kaldari 1b3107cb87 Adding more notification icons
Change-Id: Ic6bb6b4fbdf736fb96a3457d95e74d51e5a50f1e
2012-10-31 17:25:44 -07:00
Andrew Garrett 466c87d999 Echo: Add "reverted" notification for when a user's edit is reverted.
* Supports 'undo' and 'rollback' currently
* Also includes adding the edit summary used to all edit notifications.
* Also fixes a minor bug that made it seem like all EchoNotificationJobs were failing.
* Added revert icon to CSS

Change-Id: Id22470107b071cdbce33da7cf3dfd09d22947644
2012-10-31 17:01:20 -07:00
Siebrand Mazeland 3a43ea2e05 Maintenance for Echo extension.
* Update docs.
* Remove unused local variables.
* JSLint/JSHint suggested updates.
* Merge CSS lines.

Change-Id: Ib2a2e8129d5ff8aca6c612a39d22698f078df9d5
2012-10-06 19:31:31 +00:00
Siebrand Mazeland 69d91fa1b6 Update documentation and deprecated methods.
Basically having fun with the code analyzer.

Also:
* remove unused local variable assignments
* missing return values
* CSS optimizations.
* Initialize possible unset variables.

Change-Id: I77aa08ecb48eeda08f14dc38d7f35d57ea9fa110
2012-09-02 11:30:38 +02:00
Siebrand Mazeland 950f74eba8 Follow-up I2c10cb69: Auto-formatted using IDE.
Change-Id: Iedeaca3c31195a5cf7df8dd38d6332cfabffcc67
2012-08-31 23:50:46 +02:00
Krenair 9559105b59 Use whitespace between function parameters and the brackets.
Change-Id: I2c10cb69f1f1726b63d25579c6a35c882cc1fe7e
2012-08-30 17:04:39 +01:00
Andrew Garrett 4470164f87 Add overflow: none to .mw-echo-notification
Change-Id: I0bb10199c531ef120b1c016de272e8cd54b6d573
2012-08-02 13:31:32 -07:00
Kaldari 5a37ea4684 Merge "Echo: A few adjustments based on feedback from Ryan Kaldari and Benny Situ." 2012-08-01 22:23:57 +00:00
Andrew Garrett 2378a39950 Echo: A few adjustments based on feedback from Ryan Kaldari and Benny Situ.
Change-Id: If430c02793a1843253ccc18512075befc99a3eb6
2012-08-01 15:08:58 -07:00
Reedy f01f541aee Shrink file size of PNGs (yay, lossless compression)
Change-Id: Ifb422304127a4479688e9e119ff16b363a0b0abb
2012-08-01 22:28:29 +01:00
Andrew Garrett 58dfd09907 Update overlay.js in response to comments from MarkTraceur
Change-Id: I2e70ba0499f6913eb8bf3ff7cdc829f730a05409
2012-08-01 12:42:06 -07:00
Andrew Garrett e48be3b311 Echo: Replace placeholders with real icons
Change-Id: I4af816746200bedfbfa16bf4079bd36febc35d96
2012-08-01 11:35:58 -07:00
Andrew Garrett 0699d8f402 Formatting updates for Echo.
First implementation of "two line" formatting.
Messages have a title and optional content.

Distinguishing writing on "your talk page" from another talk page in messages.

Change-Id: I9051e4bfb66d1c25c1bf68ec092b52fd90544336
2012-08-01 10:37:17 -07:00
Andrew Garrett 4f2d7b933e Echo: Use red badges instead of putting the number of new notifications in text.
Depends on refactoring from efb463c

Change-Id: Iba09f46abaf337ea2578ace9d22592a71970c64b
2012-07-31 14:27:51 -07:00
Andrew Garrett efb463cca9 Echo: Refactor various code to allow for XMPP and badge notifications.
Change-Id: Ic372756501ad3438ab67a5c96791ba2ffe70c886
2012-07-31 14:19:15 -07:00
Andrew Garrett 5408cf6526 Echo: Make overlay dismiss only if you click *outside* it.
Change-Id: Ifa099fa2d9ccf77a66cb45d39a52c7dbfd0f229d
2012-07-17 15:26:38 -07:00
Andrew Garrett acd4ee2102 Make Echo use pretty timestamps
Change-Id: I1b061840c720ece80c1301f8ee38da9c80f7d100
2012-07-16 17:05:29 -07:00
Andrew Garrett ac560231fb Fix up some bugs in Echo overlay updates (7b47e5d09d)
* Instead of creating a new div, replaced the content of EVERY SINGLE DIV ON THE PAGE when a user had no notifications.
* Added some styling to make title and link prettier.

Change-Id: Id713ca56abc2f58ed1d580f3e43efa3c46d76c2a
2012-06-08 16:07:57 +10:00
Andrew Garrett 7b47e5d09d Echo overlay enhancements
Add a title and a link to Special:Notifications to the notifications overlay.
Also add a message to Special:Notifications and the overlay if a user has no notifications

Change-Id: I28407d3ea82039b160170f51ab987418e14be2af
2012-06-08 15:55:01 +10:00
Andrew Garrett 5c841cafe3 Add an "overlay" to personal links showing new notifications.
Change-Id: I1a350e5d051bd0e776e5043f0ba189a576ac7ee7
TODO: Add date/time stamp to notifications as shown in overlay
2012-06-01 21:02:30 +10:00
Andrew Garrett 8da85396d6 Initial commit of Echo, a notifications framework for MediaWiki.
This version is very rough.

For an example set of Minimum Releasable Functionality, this version will notify users on
changes to their watchlists or to their user talk pages.

However, it is still missing a conversion script to turn watchlists into echo subscriptions.

For now, notifications can be viewed through the new special page Special:Notifications, or through the API module provided.

Change-Id: I5867226e3e6195fbed81f4b5803e2310f057ffc4
2012-05-13 00:53:21 +10:00