Commit graph

8 commits

Author SHA1 Message Date
James D. Forrester 42e2764494 build: Enable phpcs rule 'PSR2.Methods.MethodDeclaration.AbstractAfterVisibility' and make pass
Change-Id: I316d30e5474646cfc7a8a03b540c09741cd7fdc6
2015-10-29 13:06:43 +01:00
Siebrand Mazeland 33126b69aa Update formatting
In preparation of Code Sniffer based updates.

Change-Id: Id5d43332b44a37665d57dc24ef8c432bc65b2f6a
2015-10-03 23:28:54 -04:00
Kunal Mehta 92da0124d0 Only require event type to construct a formatter
Push the $wgEchoNotifications dependency to
NotificationFormatter::factory(), and only catch exceptions we're
actually expecting (NotificationFormatter::format()).

And clean up the logging to use structured logging while we're at it.

Change-Id: I7e18c318c5c81b6a38e55f27ef8f604654f10858
2015-08-10 11:27:52 -07:00
Kunal Mehta 5e2da7627b Refactor and unify icon URL logic
The logic to get the URL for an icon was duplicated in the
EmailFormatter and BasicFormatter. It is now in the abstract
NotificationFormatter, which EmailFormatter and BasicFormatter now
use.

Changes in logic:
* Throw an exception if an invalid notification type is provided instead
of a PHP notice
* icons using 'url' may have different ltr/rtl icons
* Throw exception if icon is supposed to have different icons for
ltr/rtl, but doesn't, instead of debug logging

The new function is static so it can be used in EmailFormatter as it
does not inherit from NotificationFormatter.

Bug: T60726
Change-Id: Ia3c01c35f58eed8cc2c039249ab1ec1a80a8abbb
2015-08-06 04:17:14 +00:00
Kunal Mehta 1561725130 Remove EchoNotificationFormatter::requiredParameters
Instead, have subclasses implement checking required parameters
manually.

The only subclass that was using this was EchoBasicFormatter and has
been updated.

Change-Id: I23e2fa7044e0d59125530024f8c6c35516d3b90b
2015-06-16 15:32:12 -07:00
Kunal Mehta 89898043b1 Throw InvalidArgumentException in NotificationFormatter
Change-Id: I1417771c70ed644303ae22c43923cf9674835a7b
2015-06-15 19:28:48 -07:00
Kunal Mehta a2566e45a9 Don't silently accept invalid class names
Change-Id: I7888cd3356fcf7433a52455e1cf64522b7e17eb5
2015-06-15 19:26:31 -07:00
Kunal Mehta 9d08c96fad Move all PHP code into includes/
Mainly because I was annoyed at m<tab>o<tab>d<tab>u<tab> to reach
modules/.

Change-Id: Ib149cb2e2612ccddd0503f9d0c5d05b554860a00
2015-06-07 18:54:14 -07:00
Renamed from formatters/NotificationFormatter.php (Browse further)