Title.php at line 4313:
array( 'wl_namespace' => $this->getNamespace(),
'wl_title' => $this->getDBkey(),
'wl_user' => $user->getId()
),
In UserMailer.php at line 438:
array(
'wl_title' => $title->getDBkey(),
'wl_namespace' => $title->getNamespace(),
'wl_user != ' . intval( $editor->getID() ),
'wl_notificationtimestamp IS NULL',
)
And line 455:
array( /* WHERE */
'wl_title' => $title->getDBkey(),
'wl_namespace' => $title->getNamespace(),
'wl_user' => $watchers
)
CREATE TABLE /*_*/watchlist (
-- Key to user.user_id
wl_user int unsigned NOT NULL,
-- Key to page_namespace/page_title
-- Note that users may watch pages which do not exist yet,
-- or existed in the past but have been deleted.
wl_namespace int NOT NULL default 0,
wl_title varchar(255) binary NOT NULL default '',
-- Timestamp when user was last sent a notification e-mail;
-- cleared when the user visits the page.
wl_notificationtimestamp varbinary(14)
) /*$wgDBTableOptions*/;
CREATE UNIQUE INDEX /*i*/wl_user ON /*_*/watchlist (wl_user, wl_namespace, wl_title);
CREATE INDEX /*i*/namespace_title ON /*_*/watchlist (wl_namespace, wl_title);
Change-Id: I633c009b4a1c614b966c69f042f94c2056e03784
This fixup our mail sending system which duplicated the Subject and To: header.
In some conditions it used only the email address for the From: field skipping
the username ($dest in old code only contains the email address).
Mails sent to a single recipients will look alike with mail() or PEAR Mail.
For multiple recipients:
- php mail() will show the recipient email and 'undisclosed-recipients:'
- PEAR Mail will only show 'undisclosed-recipients:'
Reverts r111820
Follow r111819
Fixup r93397
r93397 duplicated the Subject header since it was passed both as an
argument of mail() and in the additional headers array.
This is r111765 done right.
Tested using both Pear and mail() methods.
* Fix link to Special:EmailUser in case $wgEnotifUseRealName was true and the user defined a real name, link was pointing to Special:EmailUser/Real_Name instead of Special:EmailUser/User_Name
* Simplified the code of EmailNotification::composeCommonMailtext()
* Moved Language::userAdjust() near other related function
* Updated ENotif stuff to use that functions so that the date format is not taken from the sending user but the receiver
* Removed $PAGEEDITDATEANDTIME parameter, unsed and not present in impersonal notification
* Also fixed the debug line in UserMailer::send()
* Document what happens as the result of each value returned
* Require boolean true to continue, not just a true value or strings
would succeed
* Trim the arguments since the header array already contains them.
Minimal check that we have more than an empty string before sending and email. NikeRabbit asked me about LQT sending email to users w/o email addresses and this looked like one good place to add a check.
Note that this only works when $wgSMTP is set and (as a result) the PEAR mailer is used.
When $wgSMTP is not set, the envelope sender is set using $wgAdditionalMailParams set to something like “-f from@example.com”. Someone should create some Envelope sender sanity in how the envelope sender is set.
Suggestion: if $wgAdditionalMailParams is not set, then use $wgEmergencyContact to create “-f $wgEmergencyContact” for php mailer and to set the Return-Path header for PEAR mailer. I used “From:” for Return-Path here because it seemed most sensible.
See also: http://pear.php.net/bugs/bug.php?id=5017
The global is used for a call to PHP mail() function as a way to add
additional parameters. This will cause mail() to send E_NOTICE when
using safe mode.
Since we could use the global at different places, it makes sens to
ensure it has a sane value through Setup.php
Follow up r75557