Commit graph

1178 commits

Author SHA1 Message Date
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