0); if(empty($content["newsletter"]["url1"])) $content["newsletter"]["url1"] = ''; if(empty($content["newsletter"]["url2"])) $content["newsletter"]["url2"] = ''; if(is_valid_email($content["newsletter"]["email_address"])) { //Success $content["newsletter"]["success"] = 1; $content["newsletter"]["reffering_key"] = ""; $check_sql = "SELECT * FROM ".DB_PREPEND."phpwcms_address WHERE address_email='". aporeplace($content["newsletter"]["email_address"])."' LIMIT 1"; if($check_result = mysql_query($check_sql, $db)) { if($check_row = mysql_fetch_array($check_result, MYSQL_ASSOC)) { $content["newsletter"]["reffering_key"] = $check_row["address_key"]; $content["newsletter"]["reffering_id"] = $check_row["address_id"]; } mysql_free_result($check_result); } if($content["newsletter"]["reffering_key"]) { //if email exists in newsletter address list update entry $e_sql = "UPDATE ".DB_PREPEND."phpwcms_address SET ". "address_name='".aporeplace($content["newsletter"]["email_name"])."', ". "address_verified=0, ". "address_subscription='".aporeplace(serialize($content["newsletter"]["email_subscription"]))."', ". "address_url1='".aporeplace($content["newsletter"]["url1"])."', ". "address_url2='".aporeplace($content["newsletter"]["url2"])."' ". "WHERE address_id=".aporeplace($content["newsletter"]["reffering_id"]).";"; $content["newsletter"]["updated"] = 1; } else { $content["newsletter"]["reffering_key"] = shortHash($content["newsletter"]["email_address"].time()); //if email not exists in newsletter address list insert entry $e_sql = "INSERT INTO ".DB_PREPEND."phpwcms_address (". "address_email, address_name, address_key, address_subscription, address_url1, address_url2) VALUES ('". aporeplace($content["newsletter"]["email_address"])."', '". aporeplace($content["newsletter"]["email_name"])."', '". $content["newsletter"]["reffering_key"]."', '". aporeplace(serialize($content["newsletter"]["email_subscription"]))."', '". aporeplace($content["newsletter"]["url1"]). "', '". aporeplace($content["newsletter"]["url2"]). "');"; $content["newsletter"]["updated"] = 0; } mysql_query($e_sql, $db); $content["newsletter"]["verify_link"] = PHPWCMS_URL."verify.php?s=".rawurlencode($content["newsletter"]["reffering_key"]); $content["newsletter"]["delete_link"] = PHPWCMS_URL."verify.php?u=".rawurlencode($content["newsletter"]["reffering_key"]); $content["newsletter"]["mailtext"] = ($content["newsletter"]["updated"]) ? $content["newsletter"]["change_text"] : $content["newsletter"]["reg_text"]; $content["newsletter"]["mailtext"] = str_replace("{NEWSLETTER_NAME}", $content["newsletter"]["email_name"], $content["newsletter"]["mailtext"]); $content["newsletter"]["mailtext"] = str_replace("{NEWSLETTER_EMAIL}", $content["newsletter"]["email_address"], $content["newsletter"]["mailtext"]); $content["newsletter"]["mailtext"] = str_replace("{NEWSLETTER_VERIFY}", $content["newsletter"]["verify_link"], $content["newsletter"]["mailtext"]); $content["newsletter"]["mailtext"] = str_replace("{NEWSLETTER_DELETE}", $content["newsletter"]["delete_link"], $content["newsletter"]["mailtext"]); $content["newsletter"]["mailtext"] = replaceGlobalRT($content["newsletter"]["mailtext"]); $content['newsletter']['subject'] = returnTagContent($content["newsletter"]["mailtext"], 'SUBJECT'); if(empty($content['newsletter']['subject']['tag'])) { if(isset($content['newsletter']['subject']['new'])) { $content["newsletter"]["mailtext"] = $content['newsletter']['subject']['new']; } $content['newsletter']['subject'] = 'Newsletter verification for '.$phpwcms["site"]; } else { $content["newsletter"]["mailtext"] = $content['newsletter']['subject']['new']; $content['newsletter']['subject'] = $content['newsletter']['subject']['tag']; } require_once ("include/inc_ext/phpmailer/class.phpmailer.php"); // phpMailer Class $mail = new PHPMailer(); $mail->Mailer = $phpwcms['SMTP_MAILER']; $mail->Host = $phpwcms['SMTP_HOST']; $mail->Port = $phpwcms['SMTP_PORT']; if($phpwcms['SMTP_AUTH']) { $mail->SMTPAuth = 1; $mail->Username = $phpwcms['SMTP_USER']; $mail->Password = $phpwcms['SMTP_PASS']; } $mail->SMTPKeepAlive = false; $mail->CharSet = $phpwcms["charset"]; $mail->IsHTML(0); $mail->Subject = $content['newsletter']['subject']; $mail->Body = $content["newsletter"]["mailtext"]; if(!$mail->SetLanguage($phpwcms['default_lang'])) { $mail->SetLanguage('en'); } $mail->From = $phpwcms['SMTP_FROM_EMAIL']; $mail->FromName = $phpwcms['SMTP_FROM_NAME']; $mail->Sender = $phpwcms["admin_email"]; $mail->ClearAddresses(); $mail->AddAddress($content["newsletter"]["email_address"]); if(!$mail->Send()) { $template_default["article"]["newsletter_error"] = html_specialchars($mail->ErrorInfo); $content["newsletter"]["success"] = 0; $content["newsletter"]["email_address_error"] = 1; } $mail->SmtpClose(); } else { //Error $content["newsletter"]["email_address_error"] = 1; } $content["newsletter"]["email_address"] = html_specialchars($content["newsletter"]["email_address"]); $content["newsletter"]["email_name"] = html_specialchars($content["newsletter"]["email_name"]); } if($content["newsletter"]["success"]) { $content["newsletter"]["success_text"] = str_replace("{NEWSLETTER_EMAIL}", "".$content["newsletter"]["email_address"]."", $content["newsletter"]["success_text"]); $CNT_TMP .= div_class( ( ($content["newsletter"]["success_text"]) ? nl2br($content["newsletter"]["success_text"]) : "Email: ".$content["newsletter"]["email_address"]. " successfully registred. You will receive a verification email within seconds.") , $template_default["article"]["text_class"]); } else { $CNT_TMP .= ($content["newsletter"]["text"]) ? "
".nl2br(div_class($content["newsletter"]["text"],$template_default["article"]["text_class"])) : ""; $CNT_TMP .= '
'.LF; $CNT_TMP .= '".$template_default["article"]["newsletter_error"]."\n\n"; } $CNT_TMP .= "\n\n\n\n"; $CNT_TMP .= "\n\n\n\n"; if(is_array($content["newsletter"]["subscription"]) && count($content["newsletter"]["subscription"])) { $CNT_TMP .= "\n"; // retrieve all active newsletters $content["newsletter"]['temp'] = _dbQuery("SELECT * FROM ".DB_PREPEND."phpwcms_subscription WHERE subscription_active=1 ORDER BY subscription_name"); foreach($content["newsletter"]['temp'] as $nlvalue) { if(isset($content["newsletter"]["subscription"][ $nlvalue['subscription_id'] ])) { $content["newsletter"]["subscription"][ $nlvalue['subscription_id'] ] = $nlvalue['subscription_name']; } } // check for "all" subscriptions setting if(isset($content["newsletter"]["subscription"][0])) { $content["newsletter"]["subscription"][0] = empty($content["newsletter"]["all_subscriptions"]) ? 'all subscriptions' : $content["newsletter"]["all_subscriptions"]; } $content["newsletter"]['c'] = 0; $content["newsletter"]['t'] = ''; foreach($content["newsletter"]["subscription"] as $nlkey => $nlvalue) { if(is_numeric($nlvalue)) continue; $content["newsletter"]['t'] .= ''.LF.''.LF; $content["newsletter"]['t'] .= ''.LF.''.LF; $content["newsletter"]['c']++; } if($content["newsletter"]['c']) { $CNT_TMP .= "\n\n\n\n"; } } $CNT_TMP .= "\n"; $CNT_TMP .= "\n\n\n\n
"; $CNT_TMP .= (($content["newsletter"]["label_email"]) ? $content["newsletter"]["label_email"] : "email:")." "; $CNT_TMP .= "
"; $CNT_TMP .= (($content["newsletter"]["label_name"]) ? $content["newsletter"]["label_name"] : "name:")." "; $CNT_TMP .= "
".spacer(1,3)."
"; $CNT_TMP .= empty($content["newsletter"]["label_subscriptions"]) ? 'subscribe to:' : $content["newsletter"]["label_subscriptions"]; $CNT_TMP .= " "; $CNT_TMP .= ''.LF; $CNT_TMP .= $content["newsletter"]['t']; $CNT_TMP .= "
".spacer(1,3)."
 "; $CNT_TMP .= ''; $CNT_TMP .= "
"; } ?>