Commit graph

98 commits

Author SHA1 Message Date
jenkins-bot 4c99cdd60e Merge "Update metric group for welcome/page-linked/user-rights notif" 2013-05-02 20:54:20 +00:00
bsitu c640ef179a Update metric group for welcome/page-linked/user-rights notif
Change-Id: Ida63587200f972b7b6ec0f826eb4f85ea274b20d
2013-04-30 16:02:55 -07:00
kaldari bdbd9dfc8f Bumping Echo config version number for analytics
Change-Id: Ia8445f66389fbd860e1808a8649546cd3fbd79c9
2013-04-30 15:26:58 -07:00
kaldari 62155661de Making sure that email notification settings stay in sync.
Also registering UserLoadOptions hook (oops!)

Finally, getting rid of old override system that is now obsolete.

Change-Id: Ie264981eb20f1e3d3c83721bc376d79e2f5a1430
2013-04-29 21:51:42 -07:00
lwelling 069249cd62 Add a hook to smoothly deal with old user preferences during migration
Catches people who have opted out of old style talk page notifications and opts them out
of equivalent new ones.
Needs $wgRecentEchoInstall = true in LocalSettings.php so it can be turned off when no
longer needed.

The migration has 1 million rows to write on enwiki so will take some time

Change-Id: Ie6201df378bf8df813b3d461ea9a8521d99b1bb9
2013-04-29 16:31:09 -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
jenkins-bot 18b3b3a71a Merge "Making system messages email to users by default per specs" 2013-04-27 02:18:58 +00:00
kaldari 2c4b1e2c2e Making system messages email to users by default per specs
Change-Id: I9ba67d06adaee68fc801f92eec6dd9429bfee950
2013-04-26 18:39:11 -07: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
Krenair 49d1eac5a6 Get rid of wikipedia logo
This was being used as the icon for the welcome and user rights notifications,
but is completely inappropriate for any site other than Wikipedia.

WMF will probably want something like this in their config:
if ( $site === 'wikipedia' ) {
	$wgEchoNotifications['welcome']['icon'] = 'w';
	$wgEchoNotifications['user-rights']['icon'] = 'w';
}

Bug: 47650
Change-Id: Idd41567ffcb468dd3d040d2a5a61d1e3f9f7f5fa
2013-04-25 19:11:19 +01:00
lwelling 073ef28599 Set echo preferences for new users after their account is created
Default settings for existing users are intended to be low volume and not annoying
New users need more encouragement and incentive to return

Change-Id: Id37ad8289a5c968ae8be6a8c424a19d6cbc7e071
2013-04-24 21:03:25 -04:00
kaldari 79c1337376 Modifying Echo defaults per Echo/Feature_requirements
Change-Id: I2fd23001a4b54aa19739fd0b5e0c6b3d4c59c2a9
2013-04-24 11:20:26 -07:00
jenkins-bot 5833846c44 Merge "Add 'Mark all as read' button to overlay" 2013-04-18 18:41:47 +00:00
lwelling e1f03a8c0e Split out notification emails to a separate from address so they can
be configured as specified for launch.

Part of https://bugzilla.wikimedia.org/show_bug.cgi?id=46670

Change-Id: I06a73aae95bc4b6776a0554b624eccfc4602bc65
2013-04-18 13:55:13 -04: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 d9a4bb7bb9 Merge "Pref for showing notifications" 2013-04-17 17:15:51 +00:00
Kaldari 6388779640 Pref for showing notifications
If this pref is turned off, we revert to the old orange bar talk
page notifications. Depends on core change Ifc8fbaf8.

Bug: 46550
Change-Id: If21f3aac51e484c5e077c7f4b5a2218e8b71ed2a
2013-04-17 09:55:05 -07:00
jenkins-bot e45c9336da Merge "Adding Help link to Echo archive page" 2013-04-16 00:04:32 +00: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 f8157260ca Making sure notification counts are reset on user option changes
Bug: 47131
Change-Id: I5244ef9f7bf9d1217c0c0df6691d8cf689c47cf5
2013-04-12 15:26:25 -07:00
bsitu d44ed993a2 Add email bundling function to Echo notification
* This patch needs intensive testing on Redis delayed job queue
* This patch is -2 mainly for redis/phpredis are not ready on test/test2/mediawiki

To test this locally, you need to:
* set up Redis and phpredis locally
* add the following to localSettings.php
    $wgJobTypeConf['MWEchoNotificationEmailBundleJob'] = array(
        'class'       => 'JobQueueRedis',
        'redisServer' => '127.0.0.1',
        'redisConfig' => array( 'connectTimeout' => 1 ),
        'claimTTL'    => 3600,
        'checkDelay'  => true
    );
* set $wgMainCacheType to CACHE_DB or memcache
* set $wgEchoBundleEmailInterval to smaller number for testing purpose, 0 to disable email bundling

Change-Id: I9313e7f6ed3e13478cec294b5b8408fe8e941faf
2013-04-11 11:25:14 -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 b6545aa106 Merge "Welcome notification should have 'system' metrics group" 2013-04-10 13:57:04 +00:00
bsitu 2be8a547a0 Add external db support to Echo
Change-Id: I84b0d904795d858d88d8e52c22f00d81c0e81303
2013-04-09 17:59:17 -07:00
bsitu 6a3624b0e4 Add web bundling function to Echo notification
* add web bundling feature
* unify event_timestamp with notification_timestamp
* remove echo_subscription
* update article_link to page_link notification with new logic
* remove duplicated function from MWDbEchoEmailBatch since it's defined in parent class

Change-Id: I2fa91c44edb020209b468fe13f894d9db3732e69
2013-04-04 10:53:46 -07:00
bsitu 9bd172549e Welcome notification should have 'system' metrics group
Change-Id: Ia818785ef5afdcaa133109edad05418c4a259269
2013-04-04 10:50:31 -07:00
Matthew Flaschen 54af0449d8 Merge the text of the welcome message into the title.
Change-Id: I3422cabe776e84c2231b1212329067fc5b075143
2013-04-02 18:17:20 -04:00
bsitu c4039b757b Initial version of user-right notification
Change-Id: I1b2c618df26084068edfb568de314809d8af6702
2013-03-18 11:19:26 -07:00
Kaldari c253342de4 Making defaultUserOptions based on category to match preferences
Also making getUserEnabledEvents check the categories

Change-Id: I561ccbb82605a6c2122330b791f3790d9dbe9078
2013-03-07 10:56:13 -08:00
Kaldari 8357f4bd75 Implementing new prefs system for Echo
Change-Id: Id745ed6cf1c92695569597fab6ea662bac8c76c0
2013-03-05 12:20:17 -08:00
jenkins-bot 95f1d50c18 Merge "Add first version of EventLogging schema to Echo" 2013-03-03 03:45:46 +00:00
bsitu fc5c341692 Add first version of EventLogging schema to Echo
Change-Id: I4b6033ffc2ec8d1597f2b447f100c58a8c3a7f3e
2013-03-01 15:53:07 -08:00
Reedy 62a433573f Numerous bits of method parameter documentation
Change-Id: Ie4b2657b5e010311b779aa587aa7fa9fc3f19abb
2013-03-01 10:56:58 -08:00
Kaldari d1aa8d52e1 Some minor polish for user mention notification per design specs
Tweaking pref label and adding edit summary payload

Change-Id: I559d162302bdc06f502a79335d7cfaa5ed3deb7d
2013-02-26 13:31:40 -08:00
bsitu d61ce41e80 configure mention notification to use the right formatter
Change-Id: I9b1e6a70eb33b80483f9966c8911b8d7d459059b
2013-02-25 11:19:18 -08:00
Kaldari f191726e35 Merge "Add a "mention" notification" 2013-02-25 04:42:03 +00:00
Andrew Garrett dc6a3cb6d0 Add a "mention" notification
Any user whose user page is linked in a comment on a talk page will get a notification of that.

Weaknesses: Currently this mention notification is additive.
We may want to restrict it to only cases where the user would not
otherwise be notified of the comment

patch set 3:
	* user + instead of array_merge for merging subscription users
	* rename $user to $agent to avoid name confilict in generateMentionEvents()
	* add check for possible null object
	* users should not receive 'mention' notification on their own talk pages

patch set 4:
	* add more descriptive comment
	* check for empty notification list before creating mention event

patch set 5:
	* Fix a parse error, change [ to {

patch set 10:
	* rebase

patch set 11:
	* adding flyout messages, updating params for other messages

Change-Id: I76b80db1f325d9569f36c506d14c8c875bba4a34
2013-02-24 20:38:11 -08:00
Kaldari 335fc1fab0 Getting rid of confusing abstraction regarding formatter classes
Specifying the class directly is much less confusing and fragile.
Plus we have way too many things named 'type'.
Also changing MWEchoArticleLinkedFormatter to EchoArticleLinkedFormatter
to match the convention of the other formatter classes.
Also making EchoBasicFormatter the default, so that the Hello World
case is easier to implement.

Change-Id: Ibd9b15008d37ad815e466ab81ba9a5b668ee2791
2013-02-15 16:02:42 -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
bsitu 78ad57d43a Abstracting MySQL in Echo so storage type can be swapped easily
Patch Set 6:
	* remove redundant JobQueueDB because it's the default
	* remove extra ;

Change-Id: I25dc0203ed5be1e4989242a87f4fde9c8799de28
2013-02-08 10:34:50 -08:00
raymond d09640cfcd Add special page to the "users" section on Special:SpecialPages
Change-Id: Iaa8dae73c5987301384442b1ade81f91f7698c9a
2013-01-30 10:32:30 +01:00
Kaldari dadd7b0076 Putting all the default user options together in the config
Also getting rid of $wgEchoDisableStandardEmail since it's no longer
used.

Change-Id: Ibdba2594695d607d1f932b741df8c2244dae834c
2013-01-17 15:06:40 -08:00
Kaldari 88f33ff165 Merge "Turn off article-linked email notif so users need to opt-in" 2013-01-17 18:39:56 +00:00
Kaldari c3e9ad0534 Support for limiting notifications to a specific user group or groups
Change-Id: I396bb6cb540bb6e8bdc190ddb1b67e15166c6852
2013-01-16 17:22:10 -08:00
bsitu 1fdaefcf91 Turn off article-linked email notif so users need to opt-in
Change-Id: Ib06516e64835b31d6f7b05c72a5eff00b43cc79d
2013-01-15 16:29:55 -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
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