MediaWiki REL1_30
MailAddress.php
Go to the documentation of this file.
1<?php
33
37 public $name;
38
42 public $realName;
43
47 public $address;
48
54 function __construct( $address, $name = null, $realName = null ) {
55 if ( is_object( $address ) && $address instanceof User ) {
56 // Old calling format, now deprecated
57 wfDeprecated( __METHOD__ . ' with a User object', '1.24' );
58 $this->address = $address->getEmail();
59 $this->name = $address->getName();
60 $this->realName = $address->getRealName();
61 } else {
62 $this->address = strval( $address );
63 $this->name = strval( $name );
64 $this->realName = strval( $realName );
65 }
66 }
67
75 public static function newFromUser( User $user ) {
76 return new MailAddress( $user->getEmail(), $user->getName(), $user->getRealName() );
77 }
78
83 function toString() {
84 # PHP's mail() implementation under Windows is somewhat shite, and
85 # can't handle "Joe Bloggs <joe@bloggs.com>" format email addresses,
86 # so don't bother generating them
87 if ( $this->address ) {
88 if ( $this->name != '' && !wfIsWindows() ) {
90 $name = ( $wgEnotifUseRealName && $this->realName !== '' ) ? $this->realName : $this->name;
91 $quoted = UserMailer::quotedPrintable( $name );
92 if ( strpos( $quoted, '.' ) !== false || strpos( $quoted, ',' ) !== false ) {
93 $quoted = '"' . $quoted . '"';
94 }
95 return "$quoted <{$this->address}>";
96 } else {
97 return $this->address;
98 }
99 } else {
100 return "";
101 }
102 }
103
104 function __toString() {
105 return $this->toString();
106 }
107}
$wgEnotifUseRealName
Use real name instead of username in e-mail "from" field.
wfIsWindows()
Check if the operating system is Windows.
wfDeprecated( $function, $version=false, $component=false, $callerOffset=2)
Throws a warning that $function is deprecated.
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