All pastes #488871 Raw Edit

Something

public php v1 · immutable
·published 2007-05-15 06:48 UTC
rendered paste body
<?php$config = './config.php';if( file_exists( $config ) ){    if( is_readable( $config ) )    {        require( $config );    }    else    {        die( "Cannot read config file" );    }}else{    die( "Cannot find config file" );}checkAdminLogin();if( !isset( $_GET[ 'user_id' ] ) ){	die( 'Error: no user_id' );}ignore_user_abort( true );set_time_limit( 0 );$return_message = '';$no_message_error = '';$no_subject_error = '';if( isset( $_POST[ 'launch_mailing' ] ) ){	$error = false;	if( !strlen( $_POST[ 'message' ] ) )	{		$error = true;		$no_message_error = 'Please include a message'; 	}	if( !strlen( $_POST[ 'subject' ] ) )	{		$error = true;		$no_subject_error = 'Please include a subject'; 	}	$subject = stripslashes( $_POST[ 'subject' ] );	$message = stripslashes( $_POST[ 'message' ] );	$unsub_key = md5( time() );$html_unsubscribe = <<<EOF<br><br><a href="$GLOBALS[SITE_BASE_URL]/u.php?k=$unsub_key">Click Here To Unsubscribe</a><br><br>EOF;	$text_unsubscribe = "\r\n\r\nUnsubscribe: $GLOBALS[SITE_BASE_URL]/u.php?k=$unsub_key\r\n\r\n";$headers = <<<EOFFrom: $SITE_OWNER_NAME <$GLOBALS[SITE_OWNER_EMAIL]>X-Sender: <$GLOBALS[SITE_OWNER_EMAIL]>Return-Path: <$GLOBALS[SITE_OWNER_EMAIL]>Error-To: <$GLOBALS[SITE_OWNER_EMAIL]>X-Mailer: $_SERVER[SERVER_NAME]EOF;	if( isset( $_POST[ 'message_type' ] ) && $_POST[ 'message_type' ] == 'html' )	{$headers .= <<<EOFMIME-Version: 1.0Content-type: text/html; charset=UTF-8EOF;    }    $headers .= "\r\n";	if( !$error )	{		if( isset( $_POST[ 'signoff' ] ) && $_POST[ 'signoff' ] == 'yes' )	    {			if( isset( $_POST[ 'unsubscribe_link' ] )                && $_POST[ 'unsubscribe_link' ] == 'yes' )	        {				if( $_POST[ 'message_type' ] == 'html' )                {					$message .= $html_unsubscribe;                }				else                {					$message .= $text_unsubscribe;                }			}			if( mail(   $GLOBALS[ 'SITE_OWNER_EMAIL' ],                        $subject,                        $message,                        $headers ) )	        {				$return_message = 'Test Message Sent';			}            else            {				$return_message = 'Test Message NOT sent, mail() returned FALSE..  check your setup.';			}		}				if( isset( $_POST[ 'signoff' ] ) && $_POST[ 'signoff' ] == 'no' )        {			$and = '';						if( isset( $_POST[ 'subscribed' ] )                && $_POST[ 'subscribed' ] != 'all' )	        {				$and .= "					AND $GLOBALS[TB_USERS].subscribed = '$_POST[subscribed]'				";			}			$sql = "				SELECT 					email,					first_name,					last_name,					subscribed,					email_valid				FROM $GLOBALS[TB_USERS]				WHERE user_id = '$_GET[user_id]'			";			$query = sqlQuery( $sql );			if( sqlNumRows( $query ) )	        {				$no_mail = 0;                $succeeded = 0;				$array = sqlFetchArray( $query );				$do_not_email = false;				if( isset( $_POST[ 'image_status' ] )                    && $_POST[ 'image_status' ] != 'all' )	            {					$images_count = getUserImagesCount( $array[ 'user_id' ], 'approved' );					                    if( $_POST[ 'image_status' ] == 'no' && $images_count )	                {						$do_not_email = true;					}					                    if( $_POST[ 'image_status' ] == 'some' && !$images_count)	                {						$do_not_email = true;					}				}				if( isset( $_POST[ 'subscribed' ] )                    && $_POST[ 'subscribed' ] != 'all' )	            {					if( $array[ 'subscribed' ] == 'n' )	                {						$do_not_email = true;					}					                    if( $array[ 'email_valid' ] == 'n' )	                {						$do_not_email = true;					}				}								if( !$do_not_email )	            {					$unsub_key = getUserKey( $_GET[ 'user_id' ], 'unsub_key' );$html_unsubscribe = <<<EOF<br /><br /><a href="$SITE_BASE_URL/u.php?k=$unsub_key">Click Here To Unsubscribe</a><br /><br />EOF;					$text_unsubscribe = "\r\n\r\nUnsubscribe: $GLOBALS[SITE_BASE_URL]/u.php?k=$unsub_key\r\n\r\n";					                    if( isset( $_POST[ 'unsubscribe_link' ] )                        && $_POST[ 'unsubscribe_link' ] == 'yes' )	                {						if( $_POST[ 'message_type' ] == 'html' )                        {							$message .= $html_unsubscribe;                        }						else                        {							$message .= $text_unsubscribe;                        }					}					if( mail( $array[ 'email' ], $subject, $message, $headers ) )	                {						$succeeded++;					}				}                else                {					$no_mail++;				}				$failed = sqlNumRows( $query ) - $succeeded - $no_mail;				$return_message = "$succeeded email sent<br>$failed failed to send<br>";			}            else            {				$return_message = "No email was sent, your query returned zero rows..<br>";			}		}	}    else    {		$return_message = 'Errors were encountered.. no email was sent';	}}$subject = isset( $_POST[ 'subject' ] )    ? htmlentities( stripslashes( $_POST[ 'subject' ] ) )    : '';$message = isset( $_POST[ 'message' ] )    ? htmlentities( stripslashes( $_POST[ 'message' ] ) )    : '';$plain_text_checked =   isset( $_POST[ 'message_type' ] )                        && $_POST[ 'message_type' ] == 'plain_text'                            ? ' checked'                            : '';$html_checked = isset( $_POST[ 'message_type' ] )                && $_POST[ 'message_type' ] == 'html'                    ? ' checked'                    : '';if( !strlen( $plain_text_checked) && !strlen( $html_checked ) ){    $plain_text_checked = ' checked';}$unsub_checked =    isset( $_POST[ 'unsubscribe_link' ] )                    && $_POST[ 'unsubscribe_link' ] == 'yes'                        ? ' checked'                        : '';$unsub_not_checked =    isset( $_POST[ 'unsubscribe_link' ] )                        && $_POST[ 'unsubscribe_link' ] == 'no'                            ? ' checked'                            : '';if( !$unsub_checked && !$unsub_not_checked ){    $unsub_checked = " checked";}$sql = "	SELECT		email,		first_name,		last_name	FROM $GLOBALS[TB_USERS]";$query = sqlQuery( $sql );if( sqlNumRows( $query ) ){	$array = sqlFetchArray( $query );}$FinalHTML .= <<<EOF<html><head><title></title><meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /><link rel="stylesheet" href="style.css" type="text/css" ></head><body bgcolor="#eeeeee" background="bg.gif"><table cellpadding="3" cellspacing="0" border="0"><form method="post" action="mailUser.php?user_id=$_GET[user_id]"><tr class="alt1">	<td colspan="2" class="bold">Email $array[first_name] $array[last_name]</td></tr><tr class="alt2">	<td class="text" colspan="2" align="center"><span class="error">$return_message</span></td></tr><tr class="alt2">	<td class="text" align="right">To:</td><td class="text">$array[first_name] $array[last_name] &lt;$array[email]&gt;</td></tr><tr class="alt2">	<td class="text" align="right">From:</td><td class="text">$GLOBALS[SITE_OWNER_NAME] &lt;$GLOBALS[SITE_OWNER_EMAIL]&gt;</td></tr><tr class="alt2">	<td class="text" align="right">Subject:</td><td class="text"><input class="input" type="text" name="subject" size="55" value="$subject"><br><span class="error">$no_subject_error</span></td></tr><tr class="alt2">	<td class="text" align="right">Message:</td><td class="text"><textarea class="input" name="message" rows="10" cols="55">$message</textarea><br><span class="error">$no_message_error</span></td></tr><tr class="alt2">	<td class="text" align="right">Message Type:</td><td class="text"><input class="input" type="radio" name="message_type" value="plain_text"$plain_text_checked> Plain Text<br><input class="input" type="radio" name="message_type" value="html"$html_checked> HTML</td></tr><tr class="alt2">	<td class="text" align="right">Unsubscribe Link:</td><td class="text"><input class="input" type="radio" name="unsubscribe_link" value="yes"$unsub_checked> Yes<br><input class="input" type="radio" name="unsubscribe_link" value="no"$unsub_not_checked> No</td></tr><tr class="alt2">	<td class="text" align="right">Signoff:</td><td class="text"><input class="input" type="radio" name="signoff" value="yes" checked> Test Mode (send me a test email only)<br><input class="input" type="radio" name="signoff" value="no"> Real Mailing (I'm sure, do it!)</td></tr><tr class="alt2">	<td class="text" colspan="2" align="right"><span class="error">(Click once and wait)</span> <input class="button" type="submit" name="launch_mailing" value="Launch Mailing ->"><br></td></tr></form></table></body></html>EOF;echo cleanFinalOutput( $FinalHTML );?>