MediaWiki REL1_34
MailAddress.php
Go to the documentation of this file.
1<?php
36 public $name;
37
41 public $realName;
42
46 public $address;
47
53 public function __construct( $address, $name = null, $realName = null ) {
54 $this->address = strval( $address );
55 $this->name = strval( $name );
56 $this->realName = strval( $realName );
57 }
58
66 public static function newFromUser( User $user ) {
67 return new MailAddress( $user->getEmail(), $user->getName(), $user->getRealName() );
68 }
69
74 public function toString() {
75 if ( !$this->address ) {
76 return '';
77 }
78
79 # PHP's mail() implementation under Windows is somewhat shite, and
80 # can't handle "Joe Bloggs <joe@bloggs.com>" format email addresses,
81 # so don't bother generating them
82 if ( $this->name === '' || wfIsWindows() ) {
83 return $this->address;
84 }
85
87 $name = ( $wgEnotifUseRealName && $this->realName !== '' ) ? $this->realName : $this->name;
89 // Must only be quoted if string does not use =? encoding (T191931)
90 if ( $quoted === $name ) {
91 $quoted = '"' . addslashes( $quoted ) . '"';
92 }
93
94 return "$quoted <{$this->address}>";
95 }
96
97 public function __toString() {
98 return $this->toString();
99 }
100}
$wgEnotifUseRealName
Use real name instead of username in e-mail "from" field.
wfIsWindows()
Check if the operating system is Windows.
Stores a single person's name and email address.
string $realName
toString()
Return formatted and quoted address to insert into SMTP headers.
__construct( $address, $name=null, $realName=null)
string $address
static newFromUser(User $user)
Create a new MailAddress object for the given user.
static quotedPrintable( $string, $charset='')
Converts a string into quoted-printable format.
The User object encapsulates all of the user-specific settings (user_id, name, rights,...
Definition User.php:51
getName()
Get the user name, or the IP of an anonymous user.
Definition User.php:2364
getRealName()
Get the user's real name.
Definition User.php:2995
getEmail()
Get the user's e-mail address.
Definition User.php:2905