$QUEUE->setHStatus($h_id, 3); //view } } //isset H[0] } //checkid h_id //adressid? wenn ja status aendern und view zaehlen if (checkid($a_id)) { $ADDRESS = new tm_ADR(); $ADR = $ADDRESS->getAdr($a_id); if (isset($ADR[0])) { //https://sourceforge.net/tracker/?func=detail&aid=3114571&group_id=190396&atid=933192 //only set view status if not waiting status or unsubscribed // !5 && !11 if ($ADR[0]['status'] != 5 && $ADR[0]['status'] != 11) { $ADDRESS->setStatus($a_id, 4); //view } //adr view counter ++ $ADDRESS->addView($a_id); //view //save memo $created = date("Y-m-d H:i:s"); $memo = "viewed (" . $NL[0]['subject'] . ")"; $ADDRESS->addMemo($a_id, $memo); } //isset ADR[0] } //checkid($a_id) } //wenn kein trackimage erzeugt werden soll, also kein newsletter gefunden wurde, blank erzeugen
if ($set == "delete" && $doit == 1) { if (!DEMO) { $ADDRESS->delAdr($adr_id); } $_MAIN_MESSAGE .= "<br>" . ___("Eintrag wurde gelöscht."); } //del single if ($set == "check") { $ADR_check = $ADDRESS->getAdr($adr_id); $_MAIN_MESSAGE .= "<br>" . ___("Eintrag wird geprüft:") . " <br><em>" . display($ADR_check[0]['email']) . "</em>"; $check_mail = checkEmailAdr($ADR_check[0]['email'], $EMailcheck_Intern); if (!$check_mail[0]) { $_MAIN_MESSAGE .= "<br><font color=\"red\">" . ___("Die E-Mail-Adresse ist nicht gültig.") . "</font>"; $_MAIN_MESSAGE .= "<br><font color=\"red\">" . ___("E-Mail wurde als fehlerhaft markiert.") . "</font>"; $_MAIN_MESSAGE .= " " . tm_icon($STATUS['adr']['statimg'][9], display($STATUS['adr']['status'][9])) . " \"<b>" . display($STATUS['adr']['status'][9]) . "</b>\""; $ADDRESS->setStatus($adr_id, 9); $ADDRESS->addMemo($adr_id, $check_mail[1]); } else { $_MAIN_MESSAGE .= "<br><font color=\"green\">" . ___("OK") . "</font>"; } $ADDRESS->markRecheck($adr_id, 0); $_MAIN_MESSAGE .= "<br><pre><em>" . display($check_mail[1]) . "</em></pre>"; } //check single if ($user_is_manager && $set == "delete_history" && $doit == 1) { if (!DEMO) { $QUEUE->clearH(array("adr_id" => $adr_id)); } $_MAIN_MESSAGE .= "<br>" . ___("Historie wurde gelöscht."); } //del history single
$search['email'] = $adr[$acc]; $search['email_exact_match'] = true; if ($export == 1) { $CSV = "\"" . $adr[$acc] . "\"\n"; fputs($fp, $CSV, strlen($CSV)); } $A = $ADDRESS->getAdr(0, 0, 0, 0, $search, "", 0, 0); if (isset($A[0]['id'])) { if ($val2 == "delete") { if (!DEMO) { $ADDRESS->delAdr($A[0]['id']); } $_MAIN_MESSAGE .= "<br>" . sprintf(___("Die Adresse %s wurde gelöscht."), $A[0]['email']); } if ($val2 == "error") { $ADDRESS->setStatus($A[0]['id'], 9); $_MAIN_MESSAGE .= "<br>" . sprintf(___("Die Adresse %s wurde als Fehlerhaft markiert."), $A[0]['email']); } if ($val2 == "aktiv") { $ADDRESS->setAktiv($A[0]['id'], 0); $_MAIN_MESSAGE .= "<br>" . sprintf(___("Die Adresse %s wurde deaktiviert."), $A[0]['email']); } if ($val2 == "unsubscribe") { $ADDRESS->unsubscribe($A[0]['id'], "Bounce"); $ADDRESS->setAktiv($A[0]['id'], 0); $_MAIN_MESSAGE .= "<br>" . sprintf(___("Die Adresse %s wurde abgemeldet und deaktivert."), $A[0]['email']); } if ($val2 == "auto") { $_MAIN_MESSAGE .= "<br>" . $A[0]['email'] . ": "; //wenn erros noch unter dem limit... //fehler zaehlen
if ($aktiv_existing == -1) { $aktiv_update = $ADR[0]['aktiv']; //aktiv übernehmen } else { $aktiv_update = $aktiv_existing; //aktiv updaten } //adresse aktualisieren $ADDRESS->updateAdr(array("id" => $ADR[0]['id'], "email" => $addr[$i]['email'], "aktiv" => $aktiv_update, "created" => $created, "author" => $author, "memo" => "import update: " . $ADR[0]['memo'], "f0" => $addr[$i]['f0'], "f1" => $addr[$i]['f1'], "f2" => $addr[$i]['f2'], "f3" => $addr[$i]['f3'], "f4" => $addr[$i]['f4'], "f5" => $addr[$i]['f5'], "f6" => $addr[$i]['f6'], "f7" => $addr[$i]['f7'], "f8" => $addr[$i]['f8'], "f9" => $addr[$i]['f9']), $all_adr_grp); if ($mark_recheck == 1) { $ADDRESS->markRecheck($ADR[0]['id'], 1); } $IMPORT_LOG .= "<br>" . sprintf(___("Zeile %s: E-Mail %s existiert Bereits und wurde aktualisiert und ggf. in neue Gruppen eingetragen."), $import_offset_user + $i + 1, "<em>" . $addr[$i]['email'] . "</em>"); //wenn status_ex >0 dann aendern! status fuer bestehende adressen if ($status_ex > 0) { $ADDRESS->setStatus($ADR[0]['id'], $status_ex); } //und neue referenzen zu neuen gruppen hinzufügen //$ADDRESS->addRef($ADR[0]['id'],$new_adr_grp); // ^^^ nur fuer den fall das daten nicht geupdated werden!!! sondern nur referenzen hinzugefuegt! //optional nachzuruesten und in den settings einstellbar :) // ok: merge $idouble++; } // delete != 1 //importierte Adressen loeschen? if ($delete == 1) { if (!DEMO) { $ADDRESS->delAdr($ADR[0]['id']); } $IMPORT_LOG .= "<br>" . sprintf(___("Zeile %s: E-Mail %s wurde gelöscht."), $i + 1, "<em>" . $addr[$i]['email'] . "</em>");
$a_error = true; $h_status = 4; //fehler $h_error = true; //adr add memo: $log_msg = "ERROR: invalid email (" . $ADR[0]['email'] . ") [" . $check_mail[1] . "] or reached max errors [" . $ADR[0]['errors'] . " of max. " . $C[0]['max_mails_retry'] . "]"; $ADDRESS->addMemo($H[$bcc]['adr_id'], "send_it: " . $log_msg); send_log($log_msg); } //wenn errors > max errors oder !check_mail if ($a_error) { $log_msg = "ERROR: set adr to status=" . $a_status; $ADDRESS->addMemo($H[$bcc]['adr_id'], "send_it: " . $log_msg); send_log($log_msg); //$ADDRESS->setStatus($H[$bcc]['adr_id'],$a_status); $ADDRESS->setStatus($ADR[0]['id'], $a_status); $ADDRESS->setAError($ADR[0]['id'], $ADR[0]['errors'] + 1); //fehler um 1 erhoehen //ADR Status $log_msg = "adr errors (new): " . ($ADR[0]['errors'] + 1); $ADDRESS->addMemo($H[$bcc]['adr_id'], "send_it: " . $log_msg); send_log($log_msg); } send_log("set h_status={$h_status}"); $QUEUE->setHStatus($H[$bcc]['id'], $h_status); $created = date("Y-m-d H:i:s"); $QUEUE->setHSentDate($H[$bcc]['id'], $created); //wenn kein fehler aufgetreten... dann mail vorbereiten if (!$a_error && !$h_error) { if (!$massmail) { //add some additional personalized headers
if ($ac > 0) { echo sprintf(___("Limit: %s Found: %s"), $C[0]['checkit_limit'], $ac) . "\n"; for ($acc = 0; $acc < $ac; $acc++) { $protocol = ""; $protocol .= $ADR[$acc]['email'] . "\n"; $ADR_C = $ADDRESS->getAdr($ADR[$acc]['id']); //nochmal kurz pruefen ob recheck noch 1 ist, sonst pruefen wir ggf. doppelt if ($ADR_C[0]['recheck'] == 1) { //recheck auf 0 setzen $ADDRESS->markRecheck($ADR[$acc]['id'], 0); //pruefen $check_mail = checkEmailAdr($ADR[$acc]['email'], $C[0]['emailcheck_checkit'], $C[0]['checkit_from_email']); if (!$check_mail[0]) { $protocol .= ___("Error, e-mail marked as failed.") . "\n"; $protocol .= $check_mail[1] . "\n"; $ADDRESS->setStatus($ADR[$acc]['id'], 9); #see Stats.inc.php $ADDRESS->addMemo($ADR[$acc]['id'], $protocol); } else { #opt.: als OK markieren wenn status 9 war, error a, oder 10, error s if ($ADR[$acc]['id'] == 9 || $ADR[$acc]['id'] == 10) { if ($C[0]['checkit_adr_reset_status'] == 1) { $ADDRESS->setStatus($ADR[$acc]['id'], 2); #2:ok, checked, #see Stats.inc.php $protocol .= ___("OK, e-mail marked as ok.") . "\n"; } } else { $protocol .= ___("OK, but e-mail status not changed.") . "\n"; } if ($C[0]['checkit_adr_reset_error'] == 1) { $ADDRESS->setAError($ADR[$acc]['id'], 0);
$check = false; $_MAIN_MESSAGE .= "<br>" . ___("Die E-Mail-Adresse darf nicht leer sein."); } //email auf gueltigkeit pruefen $check_mail = checkEmailAdr($email, $EMailcheck_Intern); if (!$check_mail[0]) { $check = false; $_MAIN_MESSAGE .= "<br>" . ___("Die E-Mail-Adresse ist nicht gültig.") . " " . $check_mail[1]; } if ($check) { $ADDRESS = new tm_ADR(); $ADDRESS->updateAdr(array("id" => $adr_id, "email" => $email, "aktiv" => $aktiv, "created" => $created, "author" => $author, "f0" => $f0, "f1" => $f1, "f2" => $f2, "f3" => $f3, "f4" => $f4, "f5" => $f5, "f6" => $f6, "f7" => $f7, "f8" => $f8, "f9" => $f9), $adr_grp); //"memo"=>$memo, //hier newmemo benutzen da memo sonst doppelt! $ADDRESS->newMemo($ADR[0]['id'], $memo); $ADDRESS->setStatus($adr_id, $status); $_MAIN_MESSAGE .= "<br>" . sprintf(___("Adresse %s wurde bearbeitet."), "<b>" . display($email) . "</b>"); $action = "adr_list"; require_once "adr_list.inc.php"; } else { //check require_once TM_INCLUDEPATH . "/adr_form.inc.php"; require_once TM_INCLUDEPATH . "/adr_form_show.inc.php"; } //check } else { $adr_grp = $ADDRESS->getGroupID(0, $adr_id, 0); $email = $ADR[0]['email']; $aktiv = $ADR[0]['aktiv']; $status = $ADR[0]['status']; $f0 = $ADR[0]['f0'];