SqlRow( "SELECT * FROM $table_global_config" ); include( "include/lang/" . $row_config_globale[ 'language' ] . ".php" ); $list_id = ( !empty( $_POST[ 'list_id' ] ) ? $_POST[ 'list_id' ] : "" ); $list_id = ( empty( $list_id ) && !empty( $_GET[ 'list_id' ] ) ? $_GET[ 'list_id' ] : $list_id ); $email_addr = ( !empty( $_POST[ 'email_addr' ] ) ? $_POST[ 'email_addr' ] : "" ); $email_addr = ( empty( $email_addr ) && !empty( $_GET[ 'email_addr' ] ) ? $_GET[ 'email_addr' ] : $email_addr ); $op = ( !empty( $_POST[ 'op' ] ) ? $_POST[ 'op' ] : "" ); $op = ( empty( $op ) && !empty( $_GET[ 'op' ] ) ? $_GET[ 'op' ] : $op ); $hash = ( !empty( $_POST[ 'hash' ] ) ? $_POST[ 'hash' ] : "" ); $hash = ( empty( $hash ) && !empty( $_GET[ 'hash' ] ) ? $_GET[ 'hash' ] : $hash ); $i = ( !empty( $_POST[ 'i' ] ) ? $_POST[ 'i' ] : "" ); $i = ( empty( $i ) && !empty( $_GET[ 'i' ] ) ? $_GET[ 'i' ] : "" ); $h = ( !empty( $_POST[ 'h' ] ) ? $_POST[ 'h' ] : "" ); $h = ( empty( $h ) && !empty( $_GET[ 'h' ] ) ? $_GET[ 'h' ] : "" ); if ( $op == "leave" && !$row_config_globale[ 'unsub_validation' ] ) { $op = "leave_direct"; } else if ( $op == "leave_direct" && $row_config_globale[ 'unsub_validation' ] ) { $op = "leave"; } else if ( $op == "join" && !$row_config_globale[ 'sub_validation' ] ) { $op = "join_direct"; } else if ( $op == "join_direct" && $row_config_globale[ 'sub_validation' ] ) { $op = "join"; } $news = getConfig( $cnx, $list_id, $row_config_globale[ 'table_listsconfig' ] ); require( 'include/lib/PHPMailerAutoload.php' ); $tPath = ($row_config_globale['path'] == '' ? '/' : '/'.$row_config_globale['path']); $tPath = str_replace('//','/',$tPath); ?> "> <?php echo tr( "NEWSLETTER_TITLE" ); ?>

' . tr( "SUBSCRIPTION_TITLE" ) . '

'; echo "

" . tr( "EMAIL_ADDRESS_NOT_VALID" ) . "

"; exit( ); } switch ( $op ) { case "join": echo '

' . tr( "SUBSCRIPTION_TITLE" ) . '

'; $c = ( empty( $c ) && !empty( $_POST[ 'c' ] ) ? $_POST[ 'c' ] : "" ); if ( empty( $c ) || ( $_POST[ 'c' ] != $_SESSION[ 'c' ] ) ) { $_SESSION[ 'new_sub' ] = $email_addr; echo '
' . tr( "SUBSCRIPTION_CAPTCHA" ) . '
'; } elseif ( $_POST[ 'c' ] == $_SESSION[ 'c' ] ) { if ( $row_config_globale[ 'mod_sub' ] == "0" ) { $add = addSubscriberTemp( $cnx, $row_config_globale[ 'table_email' ], $row_config_globale[ 'table_temp' ], $list_id, $email_addr ); if ( strlen( $add ) > 3 ) { $body = $news[ 'subscription_body' ]; $body .= "\n\n" . tr( "SUBSCRIPTION_MAIL_BODY" ) . ":\n"; $body .= "" . tr( "SUBSCRIPTION_I_SUB" ) . ""; $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $news[ 'subscription_subject' ] : iconv( "UTF-8", $row_config_globale[ 'charset' ], $news[ 'subscription_subject' ] ) ); $body = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $body : iconv( "UTF-8", $row_config_globale[ 'charset' ], $body ) ); if ( $row_config_globale[ 'sending_method' ] == 'lbsmtp' ) { $info_smtp_lb = $cnx->SqlRow( "SELECT * FROM " . $row_config_globale[ 'table_smtp' ] . " WHERE smtp_used < smtp_limite AND smtp_date_update > DATE_SUB(CURDATE(), INTERVAL 1 DAY) ORDER BY id_use ASC LIMIT 1" ); if ( $info_smtp_lb[ 'smtp_user' ] != '' && $info_smtp_lb[ 'smtp_pass' ] != '' ) { $auth = 1; } else { $auth = 0; } sendEmail( 'lbsmtp', $email_addr, $news[ 'from_addr' ], $news[ 'from_name' ], $subj, $body, $auth, $info_smtp_lb[ 'smtp_url' ], $info_smtp_lb[ 'smtp_user' ], $info_smtp_lb[ 'smtp_pass' ], $row_config_globale[ 'charset' ], $info_smtp_lb[ 'smtp_secure' ], $info_smtp_lb[ 'smtp_port' ] ); $cnx->query( 'UPDATE ' . $row_config_globale[ 'table_smtp' ] . ' SET smtp_used=smtp_used+1, id_use=' . ( intval( $CURRENT_ID ) + 1 ) . ' WHERE smtp_id=' . $info_smtp_lb[ 'smtp_id' ] ); } else { sendEmail( $row_config_globale[ 'sending_method' ], $email_addr, $news[ 'from_addr' ], $news[ 'from_name' ], $subj, $body, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); } echo "

" . tr( "SUBSCRIPTION_SEND_CONFIRM_MESSAGE" ) . "

"; } elseif ( $add == 0 ) echo "

" . tr( "SUBSCRIPTION_ALREADY_SUBSCRIBER" ) . "

"; else echo "

" . tr( "ERROR_SQL2" ) . "

"; } elseif ( $row_config_globale[ 'mod_sub' ] == "1" ) { $add = addSubscriberMod( $cnx, $row_config_globale[ 'table_email' ], $row_config_globale[ 'table_sub' ], $list_id, $email_addr ); if ( $add ) echo "

" . tr( "SUBSCRIPTION_WAITING_MODERATION" ) . "

"; else if ( $add == 0 ) echo "

" . tr( "SUBSCRIPTION_ALREADY_SUBSCRIBER" ) . "

"; else echo "

" . tr( "ERROR_SQL2" ) . "

"; } echo '

' . tr( "CLOSE_WINDOW" ) . '

'; } break; case "leave": echo '

' . tr( "UNSUBSCRIPTION_TITLE" ) . '

'; $hash = isValidSubscriber( $cnx, $row_config_globale[ 'table_email' ], $list_id, $email_addr ); if ( $hash == $h && !empty( $hash ) && strlen( $hash ) == 32 ) { $body = $news[ 'quit_body' ]; $body .= "\n\n" . tr( "UNSUBSCRIPTION_MAIL_BODY" ) . " :\n"; $body .= "" . tr( "SUBSCRIPTION_UN_SUB" ) . ""; $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $news[ 'quit_subject' ] : iconv( "UTF-8", $row_config_globale[ 'charset' ], $news[ 'quit_subject' ] ) ); $body = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $body : iconv( "UTF-8", $row_config_globale[ 'charset' ], $body ) ); if ( sendEmail( $row_config_globale[ 'sending_method' ], $email_addr, $news[ 'from_addr' ], $news[ 'from_name' ], $subj, $body, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ) ) { echo "

" . tr( "UNSUBSCRIPTION_SEND_CONFIRM_MESSAGE" ) . "

"; } else { echo "

" . tr( "ERROR_SENDING_CONFIRM_MAIL" ) . "

"; } } else { echo "

" . tr( "SUBSCRIPTION_NOT_A__SUBSCRIBER" ) . "

"; } echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; case "confirm_join": echo '

' . tr( "SUBSCRIPTION_TITLE" ) . '

'; $add = addSubscriber( $cnx, $row_config_globale[ 'table_email' ], $row_config_globale[ 'table_temp' ], $list_id, $email_addr, $hash, $row_config_globale[ 'table_email_deleted' ] ); if ( $add == false ) { echo "

" . tr( "SUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS" ) . "!

"; } elseif ( $add == true ) { $body = $news[ 'welcome_body' ]; $body .= "\n\n" . tr( "SUBSCRIPTION_UNSUBSCRIBE_LINK" ) . ":\n"; $body .= "" . tr( "SUBSCRIPTION_AGREE_UN_SUB" ) . ""; $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $news[ 'welcome_subject' ] : iconv( "UTF-8", $row_config_globale[ 'charset' ], $news[ 'welcome_subject' ] ) ); $body = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $body : iconv( "UTF-8", $row_config_globale[ 'charset' ], $body ) ); sendEmail( $row_config_globale[ 'sending_method' ], $email_addr, $news[ 'from_addr' ], $news[ 'from_name' ], $subj, $body, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); echo "

" . tr( "SUBSCRIPTION_FINISHED" ) . "

"; if ( $row_config_globale[ 'alert_sub' ] == 1 ) { $rapport_sujet = tr( "SUBSCRIPTION_TITLE" ); $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $rapport_sujet : iconv( "UTF-8", $row_config_globale[ 'charset' ], $rapport_sujet ) ); $rapport = '





' . tr( "SUBSCRIPTION_TITLE" ) . ' !
' . tr( "LIST_NUMBER" ) . ' : ' . $list_id . '
' . tr( "EMAIL_ADDRESS" ) . ' : ' . $email_addr . '
'; sendEmail( $row_config_globale[ 'sending_method' ], $row_config_globale[ 'admin_email' ], $row_config_globale[ 'admin_email' ], $row_config_globale[ 'admin_name' ], $subj, $rapport, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); } if ( $sub_validation_sms == 1 ) send_sms( $free_id, $free_pass, "Un nouvel abonné sur la liste $list_id : $email_addr. Bonne journée ;-)" ); } else { echo "

" . tr( "ERROR_UNKNOWN" ) . "

"; } echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; case "confirm_leave": echo '

' . tr( "UNSUBSCRIPTION_TITLE" ) . '

'; $rm = removeSubscriber( $cnx, $row_config_globale[ 'table_email' ], $row_config_globale[ 'table_send' ], $list_id, $email_addr, $hash, $i, $row_config_globale[ 'table_email_deleted' ] ); if ( !$row_config_globale[ 'unsub_validation' ] ) { sendEmail( $row_config_globale[ 'sending_method' ], $news[ 'from_addr' ], $news[ 'from_addr' ], $news[ 'from_name' ], 'Désinscription', 'Liste : ' . $list_id . '
Désinscrit : ' . $email_addr, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); } if ( $unsub_validation_sms == 1 ) send_sms( $free_id, $free_pass, "Une désinscription sur la liste $list_id : $email_addr. Bonne journée ;-)" ); if ( $rm == 1 ) { echo "

" . tr( "UNSUBSCRIPTION_FINISHED" ) . ".

"; } else if ( $rm == -1 ) { echo "

" . tr( "UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS" ) . "

"; } else { echo "

" . tr( "ERROR_UNKNOWN" ) . "

"; } echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; case "join_direct": echo '

' . tr( "SUBSCRIPTION_TITLE" ) . '

'; if ( !$row_config_globale[ 'sub_validation' ] ) { $add = addSubscriberDirect( $cnx, $row_config_globale[ 'table_email' ], $list_id, $email_addr, $row_config_globale[ 'table_email_deleted' ] ); if ( $add ) { $body = $news[ 'welcome_body' ]; $body .= "\n\n" . tr( "UNSUBSCRIPTION_MAIL_BODY" ) . ":\n"; $body .= "" . tr( "SUBSCRIPTION_UN_SUB" ) . ""; $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $news[ 'welcome_subject' ] : iconv( "UTF-8", $row_config_globale[ 'charset' ], $news[ 'welcome_subject' ] ) ); $body = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $body : iconv( "UTF-8", $row_config_globale[ 'charset' ], $body ) ); sendEmail( $row_config_globale[ 'sending_method' ], $email_addr, $news[ 'from_addr' ], $news[ 'from_name' ], $subj, $body, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); if ( $row_config_globale[ 'alert_sub' ] == 1 ) { $rapport_sujet = tr( "SUBSCRIPTION_TITLE" ); $subj = ( strtoupper( $row_config_globale[ 'charset' ] ) == "UTF-8" ? $rapport_sujet : iconv( "UTF-8", $row_config_globale[ 'charset' ], $rapport_sujet ) ); $rapport = '





' . tr( "SUBSCRIPTION_TITLE" ) . ' !
' . tr( "LIST_NUMBER" ) . ' : ' . $list_id . '
' . tr( "EMAIL_ADDRESS" ) . ' : ' . $email_addr . '
'; sendEmail( $row_config_globale[ 'sending_method' ], $row_config_globale[ 'admin_email' ], $row_config_globale[ 'admin_email' ], $row_config_globale[ 'admin_name' ], $subj, $rapport, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); } if ( $sub_validation_sms == 1 ) send_sms( $free_id, $free_pass, "Un nouvel abonné sur la liste " . $list_id . " : " . $email_addr . ". Bonne journée ;-)" ); echo "

" . tr( "SUBSCRIPTION_FINISHED" ) . "

"; } else { echo "

" . tr( "SUBSCRIPTION_ALREADY_SUBSCRIBER" ) . "

"; } } echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; case "leave_direct": echo '

' . tr( "UNSUBSCRIPTION_TITLE" ) . '

'; if ( !$row_config_globale[ 'unsub_validation' ] ) { $rm = removeSubscriberDirect( $cnx, $row_config_globale[ 'table_email' ], $row_config_globale[ 'table_send' ], $list_id, $email_addr, $h, $i, $row_config_globale[ 'table_email_deleted' ] ); sendEmail( $row_config_globale[ 'sending_method' ], $news[ 'from_addr' ], $news[ 'from_addr' ], $news[ 'from_name' ], 'Désinscription', 'Liste : ' . $list_id . '
Désinscrit : ' . $email_addr, $row_config_globale[ 'smtp_auth' ], $row_config_globale[ 'smtp_host' ], $row_config_globale[ 'smtp_login' ], $row_config_globale[ 'smtp_pass' ], $row_config_globale[ 'charset' ] ); if ( $rm ) { echo "

" . tr( "UNSUBSCRIPTION_FINISHED" ) . ".

"; } else if ( $rm == -1 ) { echo "

" . tr( "UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS" ) . "

"; } else { echo "

" . tr( "ERROR_UNKNOWN" ) . "

"; } } if ( $unsub_validation_sms == 1 ) send_sms( $free_id, $free_pass, "Une désinscription sur la liste " . $list_id . " : " . $email_addr . ". Bonne journée" ); echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; default: echo '

' . tr( "CLOSE_WINDOW" ) . '

'; break; } } ?>