JFIF    $         d d  7    * Z qn )ZP 0   !1 A "#a$2Qr   D8 a Ri [f  \m I ykI w0 c u F c Rı?lO7 к _f˓ [C $殷WF< _W ԣ s Kc ëI zyQy /_LK ℂ ;C",p F A : /] =H  ~ , l s / 9  ć: [=/#f ; ) x { ٛE Q )~     = 𘙲r*2~  a _V = '  ku m F  D } KYYC )( { * g& f `툪 r y ` = ^ c J. I ]( * `wq  1dđ #̩ ͑ 0  ; H ] u 搂 @:~ ו K L  N s h } O I R* 8 :2 ! lD JV o (  3 = M ( z Ȱ+i *N A  r6K n S l ) ! J J Ӂ* %  ݉?|D } d5: eP0 R; {$X' x F @ .ÊB {,WJ uQ ɲRI ;9 Q E琯 6 2fT .DU J ;*c  P A\IL Nj! J ۱+ O\ ͔ ] ޒ S߼ J ȧ c%A N ol  ՎprU L Zԛe r E2= X D Xg VQeӓ k y P7 U* o m Q I s ,K `) 6\G3t?pgjr m ۛجw luGt f  h 9uyP 0D;Uڽ"OXl i f $ ) &|ML 0 Z rm1 [ H XP l P R0  'G=i 2N +0 e 2 ]] 9 VT P  O׮ 7 h(F * 癈 ' = Q VZD F,d ߬ ~ T X G[ `le 69C R(!S2! P  < 0 x <     !1AQ "Raq 02Br #S CTb  ? Ζ "]mH5WR 7 k.ۛ ! } Q~ + yԏ z |@ T20 S~ K e k *zF f^2X *( @ 8 r ? C I uI|֓>^Ex LgNU Y+{.R Ѫ τV׸ YT D I 6 2 '8Y2  7'\T P.6 d &˦ @V q i  |8 -O Ε  ] ʔ U=   T L 8= ;6c |  !qfF3 a ů& ~$ l} 'NW U s$U k^S V : U# 6w +  +s &r+n ڐ   { @ 29 gL u " T Ù  M=6  (^ "7 r}=6Yݾ lC u hquymp Ǧ G jhs ǜNl ɻ} o 7 #S6 a w 4 !  OS  r D  5 7 % | ?x> L |  / nD 6?/8 w # [ ) L 7 +6〼T A T g   !  %5  Mm Z /c  -{1_Je "| ^$ 'O  & ޱմ < H vNqϡQ$ < 6 &Nݛ ֨tǻN (9 n ru~'όN sMG& ,uH Kw *Ī 5@  u6  BԒ  i YN * f 0 _ GhKW u  lT <nj- 0{  M L~ | /a v\ E = ?1 \ɟuq Ђ Y O a K ޡP q  $ H8o Q˼EV ~ k 0 h' L  Pp M -M"  m^ !6l nմ 쮝C U T . ! :vMǨb h ډ Vc r @񄞅~p   #   !1QAa q  ? AL0L  x LU 4 d ; x   " 16ad0 7.\ߋ 0  = P l v/ " c A Ay A|2pO8"d MV #1] = \ " ˡ ] k v I9 d ۓ & q ) ǐq E ꞅ v "P )q X  &Q  З non]я u ג./ ; gZ$ M QР 2M ]h ni 0  P $ێ 3CɏGjώy : m c # S_ l@ '_ \m|C 2`K _  1 cIvGc $? PCQ S+D ? K aײ k Fr b 8 ύ NEدg ĝ U 3  6 #Ik+ v  {ƒ v i ( ވ  ? a e)  X xy/*@Q Ǽ Ծ ) $ IWO l c G;  !i  k{ gOŀ L ('x  T rb $ w) R $ & N1E td U3Uȉ1p M"N* (DNy d96.(jQ)  X 5 c QɎMy W ?  Q *!R > 6=7)Xj 5`J ] e  8%t ! + ' ! 1Q 5   !1 AQaq ё #2 "0BRb ? G t^ ## .l lQ T $  v , ,m   㵜5u bV  =sY+ @d { N ! dn O < .- B;  _w J t 6;Q  Jd. Q c%p{ 1 ,sND dF H I0 Гo X ш  e黅X ۢ F :)[ F G X ƹ / w _c MeD   ,ʡc c .  W D  tA $ j@ : ) - # u c1< @ۗ9F ) KJ- hpP] _ x [ q B lb p ʖ w q " LFGd ƶ * s +ډ_Zc " ? % t[I P  6 J ]# =ɺ V v v CGs Gh1 > )6 |e y ? L ӣ m,4 G W Ui ` ] uJVo VDG< SB 6ϏQ @ TiU l y O U 0 kfV ~ ~}S Z @ *WU Ui ## ; s /[ = ! 7}" W N ] ' (L !  ~ y5 g9T̅J kbM' +s :S +B) v @ M  j e C f j E 0  Y\Qn z G 1 д~ W o{T 9?`  Rm yhsy3 !HAD ] m  c1 ~ 2 L  S u7x T ;j$ `} 4-> L#  vzŏ I L S  ֭  T { r  jGK C ; b  pU= - ` Bs K. S F w4  M q] Z dH S 0 ) tLg Tiny File Manager | function.wp_mail.php
  • File: function.wp_mail.php
  • Full Path: /home/mata8712/public_html/on-me-trouve/wp-content/plugins/mailin/inc/function.wp_mail.php
  • File size: 7.17 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php
	// Compact the input, apply the filters, and extract them back out
	extract( apply_filters( 'wp_mail', compact( 'to', 'subject', 'message', 'headers', 'attachments' ) ) );

if ( ! is_array( $attachments ) ) {
	$attachments = explode( "\n", str_replace( "\r\n", "\n", $attachments ) );
}

	global $phpmailer;

	// (Re)create it, if it's gone missing
if ( ! is_object( $phpmailer ) || ! is_a( $phpmailer, 'PHPMailer' ) ) {
	require_once ABSPATH . WPINC . '/class-phpmailer.php';
	require_once ABSPATH . WPINC . '/class-smtp.php';
	$phpmailer = new PHPMailer( true );
}

	// Headers
if ( empty( $headers ) ) {
	$headers = array();
} else {
	if ( ! is_array( $headers ) ) {
		// Explode the headers out, so this function can take both
		// string headers and an array of headers.
		$tempheaders = explode( "\n", str_replace( "\r\n", "\n", $headers ) );
	} else {
		$tempheaders = $headers;
	}
	$headers = array();
	$cc = array();
	$bcc = array();

			// If it's actually got contents
	if ( ! empty( $tempheaders ) ) {
		// Iterate through the raw headers
		foreach ( (array) $tempheaders as $header ) {
			if ( strpos( $header, ':' ) === false ) {
				if ( false !== stripos( $header, 'boundary=' ) ) {
					$parts = preg_split( '/boundary=/i', trim( $header ) );
					$boundary = trim( str_replace( array( "'", '"' ), '', $parts[1] ) );
				}
				continue;
			}
			// Explode them out
			list( $name, $content ) = explode( ':', trim( $header ), 2 );

			// Cleanup crew
			$name    = trim( $name );
			$content = trim( $content );

			switch ( strtolower( $name ) ) {
				// Mainly for legacy -- process a From: header if it's there
				case 'from':
					if ( strpos( $content, '<' ) !== false ) {
						// So... making my life hard again?
						$from_name = substr( $content, 0, strpos( $content, '<' ) - 1 );
						$from_name = str_replace( '"', '', $from_name );
						$from_name = trim( $from_name );

						$from_email = substr( $content, strpos( $content, '<' ) + 1 );
						$from_email = str_replace( '>', '', $from_email );
						$from_email = trim( $from_email );
					} else {
						$from_email = trim( $content );
					}
					break;
				case 'content-type':
					if ( strpos( $content, ';' ) !== false ) {
						list( $type, $charset ) = explode( ';', $content );
						$content_type = trim( $type );
						if ( false !== stripos( $charset, 'charset=' ) ) {
							$charset = trim( str_replace( array( 'charset=', '"' ), '', $charset ) );
						} elseif ( false !== stripos( $charset, 'boundary=' ) ) {
							$boundary = trim( str_replace( array( 'BOUNDARY=', 'boundary=', '"' ), '', $charset ) );
							$charset = '';
						}
					} else {
						$content_type = trim( $content );
					}
					break;
				case 'cc':
					$cc = array_merge( (array) $cc, explode( ',', $content ) );
					break;
				case 'bcc':
					$bcc = array_merge( (array) $bcc, explode( ',', $content ) );
					break;
				default:
					// Add it to our grand headers array
					$headers[ trim( $name ) ] = trim( $content );
					break;
			}
		}
	}
}

	// Empty out the values that may be set
	$phpmailer->ClearAddresses();
	$phpmailer->ClearAllRecipients();
	$phpmailer->ClearAttachments();
	$phpmailer->ClearBCCs();/* $phpmailer->ClearCCs();	$phpmailer->ClearCustomHeaders(); 	$phpmailer->ClearReplyTos(); */

	// From email and name
	// If we don't have a name from the input headers
if ( ! isset( $from_name ) ) {
	$from_name = 'WordPress';
}

	/*
	 If we don't have an email from the input headers default to wordpress@$sitename
	 * Some hosts will block outgoing mail from this address if it doesn't exist but
	 * there's no easy alternative. Defaulting to admin_email might appear to be another
	 * option but some hosts may refuse to relay mail from an unknown domain. See
	 * http://trac.wordpress.org/ticket/5007.
	 */

if ( ! isset( $from_email ) ) {
	// Get the site domain and get rid of www.
	$sitename = strtolower( $_SERVER['SERVER_NAME'] );
	if ( substr( $sitename, 0, 4 ) == 'www.' ) {
		$sitename = substr( $sitename, 4 );
	}

	$from_email = 'wordpress@' . $sitename;
}

	// Plugin authors can override the potentially troublesome default
	$phpmailer->From     = apply_filters( 'wp_mail_from'     , $from_email );
	$phpmailer->FromName = apply_filters( 'wp_mail_from_name', $from_name );

	// Set destination addresses
if ( ! is_array( $to ) ) {
	$to = explode( ',', $to );
}

foreach ( (array) $to as $recipient ) {
	try {
		// Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
		$recipient_name = '';
		if ( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
			if ( count( $matches ) == 3 ) {
				$recipient_name = $matches[1];
				$recipient = $matches[2];
			}
		}
		$phpmailer->AddAddress( $recipient, $recipient_name );
	} catch ( phpmailerException $e ) {
		continue;
	}
}

	// Set mail's subject and body
	$phpmailer->Subject = $subject;
	$phpmailer->Body    = $message;

	// Add any CC and BCC recipients
if ( ! empty( $cc ) ) {
	foreach ( (array) $cc as $recipient ) {
		try {
			// Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
			$recipient_name = '';
			if ( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
				if ( count( $matches ) == 3 ) {
					$recipient_name = $matches[1];
					$recipient = $matches[2];
				}
			}
			$phpmailer->AddCc( $recipient, $recipient_name );
		} catch ( phpmailerException $e ) {
			continue;
		}
	}
}

if ( ! empty( $bcc ) ) {
	foreach ( (array) $bcc as $recipient ) {
		try {
			// Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
			$recipient_name = '';
			if ( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
				if ( count( $matches ) == 3 ) {
					$recipient_name = $matches[1];
					$recipient = $matches[2];
				}
			}
			$phpmailer->AddBcc( $recipient, $recipient_name );
		} catch ( phpmailerException $e ) {
			continue;
		}
	}
}

	// Set to use PHP's mail()
	$phpmailer->IsMail();

	// Set Content-Type and charset
	// If we don't have a content-type from the input headers
if ( ! isset( $content_type ) ) {
	$content_type = 'text/plain';
}

	$content_type = apply_filters( 'wp_mail_content_type', $content_type );

	$phpmailer->ContentType = $content_type;

	// Set whether it's plaintext, depending on $content_type
if ( 'text/html' == $content_type ) {
	$phpmailer->IsHTML( true );
}

	// If we don't have a charset from the input headers
if ( ! isset( $charset ) ) {
	$charset = get_bloginfo( 'charset' );
}

	// Set the content-type and charset
	$phpmailer->CharSet = apply_filters( 'wp_mail_charset', $charset );

	// Set custom headers
if ( ! empty( $headers ) ) {
	foreach ( (array) $headers as $name => $content ) {
		$phpmailer->AddCustomHeader( sprintf( '%1$s: %2$s', $name, $content ) );
	}

	if ( false !== stripos( $content_type, 'multipart' ) && ! empty( $boundary ) ) {
		$phpmailer->AddCustomHeader( sprintf( "Content-Type: %s;\n\t boundary=\"%s\"", $content_type, $boundary ) );
	}
}

if ( ! empty( $attachments ) ) {
	foreach ( $attachments as $attachment ) {
		try {
			$phpmailer->AddAttachment( $attachment );
		} catch ( phpmailerException $e ) {
			continue;
		}
	}
}

	do_action_ref_array( 'phpmailer_init', array( &$phpmailer ) );

	// Send!
try {
	$phpmailer->Send();
} catch ( phpmailerException $e ) {
	return false;
}

	return true;