";
$MySQLQueryReferenz = mysql_query($SQLString);
// ********************************************************************************
// ** die Logs in ein Array ablegen
// ********************************************************************************
$BestellLogCounter = 0;
$BestellLogDataArray = array();
while ($BestellLogRowArray = mysql_fetch_array($MySQLQueryReferenz, MYSQL_ASSOC)) {
$BestellLogDataArray[$BestellLogCounter]["logid"] = $BestellLogRowArray["logid"];
$BestellLogDataArray[$BestellLogCounter]["bestellid"] = $BestellLogRowArray["bestellid"];
$BestellLogDataArray[$BestellLogCounter]["kommentar"] = $BestellLogRowArray["kommentar"];
$BestellLogDataArray[$BestellLogCounter]["datum"] = $BestellLogRowArray["datum_format"];
$BestellLogCounter++;
}
return $BestellLogDataArray;
}
function GetLogBestellAnzahl($BestellID) {
// Anzahl der Bestellung einlesen
$SQLString = "SELECT COUNT(DISTINCT(" . TABLE_BESTELLEN_LOG . ".logid)) AS LogAnzahl ";
$SQLString .= "FROM " . TABLE_BESTELLEN_LOG . " ";
$SQLString .= " WHERE ( ";
$SQLString .= "(" . TABLE_BESTELLEN_LOG . ".bestellid = '" . $BestellID . "') AND ";
$SQLString .= " 1) ";
$LogAnzahlObject = mysql_fetch_object(mysql_query($SQLString));
return $LogAnzahlObject->LogAnzahl;
}
function SaveBestellLog($BestellID, $Kommentar, $KundenID) {
$SQLString = "INSERT INTO " . TABLE_BESTELLEN_LOG . " SET ";
$SQLString .= TABLE_BESTELLEN_LOG . ".kommentar = '" . $Kommentar . "', ";
$SQLString .= TABLE_BESTELLEN_LOG . ".bestellid = '" . $BestellID . "', ";
$SQLString .= TABLE_BESTELLEN_LOG . ".kunden_id = '" . $KundenID . "', ";
$SQLString .= TABLE_BESTELLEN_LOG . ".datum = NOW() ";
$MySQLQueryReference = mysql_query($SQLString);
return $BestellID;
}
function GetLogAnzahl($SearchField, $SearchString) {
$SQLString = "SELECT ";
$SQLString .= "COUNT(" . TABLE_MAIL_LOG . ".log_id) AS LogAnzahl ";
$SQLString .= "FROM " . TABLE_MAIL_LOG . " ";
$SQLString .= "LEFT JOIN " . TABLE_BESTELLEN . " ON " . TABLE_MAIL_LOG . ".bestell_id = " . TABLE_BESTELLEN . ".id";
$SQLString .= " WHERE ( ";
//Suche
if ($SearchField && $SearchString) {
$SQLString .= "(" . $SearchField . " LIKE '%" . $SearchString . "%') AND ";
}
$SQLString .= " 1) ";
//echo '$SQLString: ' . $SQLString . "
";
$LogAnzahlObject = mysql_fetch_object(errorlogged_mysql_query($SQLString));
return $LogAnzahlObject->LogAnzahl;
}
function GetLogDataArray($SearchField, $SearchString, $SortField, $SortOrder, $DataOffset = "", $DataCount = "") {
$SQLString = "SELECT ";
$SQLString .= TABLE_MAIL_LOG . ".e_mail, ";
$SQLString .= TABLE_MAIL_LOG . ".bestell_id, ";
$SQLString .= TABLE_MAIL_LOG . ".session, ";
$SQLString .= TABLE_MAIL_LOG . ".kunden_id, ";
$SQLString .= TABLE_MAIL_LOG . ".maildatum, ";
$SQLString .= "DATE_FORMAT(" . TABLE_MAIL_LOG . ".maildatum, '%d.%m.%Y') AS maildatum_format, ";
$SQLString .= TABLE_MAIL_LOG . ".ip, ";
$SQLString .= TABLE_MAIL_LOG . ".typ, ";
$SQLString .= TABLE_MAIL_LOG . ".datei, ";
$SQLString .= TABLE_MAIL_LOG . ".betreff, ";
$SQLString .= TABLE_BESTELLEN . ".auftragsnummer ";
$SQLString .= "FROM " . TABLE_MAIL_LOG . " ";
$SQLString .= "LEFT JOIN " . TABLE_BESTELLEN . " ON " . TABLE_MAIL_LOG . ".bestell_id = " . TABLE_BESTELLEN . ".id";
$SQLString .= " WHERE ( ";
//Suche
if ($SearchField && $SearchString) {
$SQLString .= "(" . $SearchField . " LIKE '%" . $SearchString . "%') AND ";
}
$SQLString .= " 1) ";
// Sortierung
if ($SortField && $SortOrder) {
$SQLString .= "ORDER BY " . $SortField . " " . $SortOrder . " ";
}
// Limit
if ((string)$DataOffset != "" && (string)$DataCount != "") {
$SQLString .= "LIMIT " . $DataOffset . ", " . $DataCount . " ";
}
//echo '$SQLString: ' . $SQLString . "
";
$MySQLQueryReferenz = errorlogged_mysql_query($SQLString);
$LogCounter = 0;
$LogDataArray = array();
while ($LogRowArray = mysql_fetch_array($MySQLQueryReferenz, MYSQL_ASSOC)) {
$LogDataArray[$LogCounter] = $LogRowArray;
if((int)$LogRowArray["typ"] === 1) {
$LogDataArray[$LogCounter]["typ_format"] = "Versandte Bestellungen";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "versandte_bestellungen";
} elseif((int)$LogRowArray["typ"] === 2) {
$LogDataArray[$LogCounter]["typ_format"] = "Bestelleingang Kunde";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "bestelleingang_kunde";
} elseif((int)$LogRowArray["typ"] === 3) {
$LogDataArray[$LogCounter]["typ_format"] = "Bestelleingang Shopbetreiber";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "bestelleingang_shopbetreiber";
} elseif((int)$LogRowArray["typ"] === 4) {
$LogDataArray[$LogCounter]["typ_format"] = "Mahnung";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "mahnungen";
} elseif((int)$LogRowArray["typ"] === 5) {
$LogDataArray[$LogCounter]["typ_format"] = "Registrierung";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "registrierung";
} elseif((int)$LogRowArray["typ"] === 6) {
$LogDataArray[$LogCounter]["typ_format"] = "Passwort vergessen";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "passwort_vergessen";
} elseif((int)$LogRowArray["typ"] === 7) {
$LogDataArray[$LogCounter]["typ_format"] = "Anmeldung zum Newsletter";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "newsletter_anmeldung";
} elseif((int)$LogRowArray["typ"] === 8) {
$LogDataArray[$LogCounter]["typ_format"] = "Zahlungserinnerung";
$LogDataArray[$LogCounter]["verzeichnis_format"] = "zahlungserinnerungen";
}
$LogCounter ++;
}
return $LogDataArray;
}
function DeleteMailLog() {
$Einstellungen = GetEinstellungen('mail_log_monate', 'logs');
// Loesche alle Eintraege, die aelter als ShopeinstellungenObject->mail_log_monate sind
$SQLString = "DELETE FROM ";
$SQLString .= TABLE_MAIL_LOG;
$SQLString .= " WHERE ";
$SQLString .= "DATE_ADD(" . TABLE_MAIL_LOG . ".maildatum, INTERVAL " . $Einstellungen->logs->mail_log_monate . " MONTH) < NOW()";
errorlogged_mysql_query($SQLString);
// echo '$SQLString: ' . $SQLString . '
';
$MailDirectory = DATEIPFAD . "admin/data/logs/mails";
$MailLogVerzeichnisArray = GetMailLogVerzeichnisArray();
$MailLogMonate = $Einstellungen->logs->mail_log_monate;
foreach ($MailLogVerzeichnisArray as $Key => $Verzeichnis) {
if (!file_exists($MailDirectory . "/" . $Verzeichnis)) {
continue;
}
$VerzeichnisHandle = opendir($MailDirectory . "/" . $Verzeichnis);
while (false !== ($DateiName = readdir($VerzeichnisHandle))) {
if ($DateiName != ".svn" && $DateiName != "." && $DateiName != "..") {
$Array = explode("_", $DateiName);
//3 = Stunde, 4 = Minute, 5 = Sekunde, 1 = Monat, 0 = Tag, 2 = Jahr
$LogTime = mktime($Array[3], $Array[4], $Array[5], $Array[1], $Array[0], $Array[2]);
$VergleichsTag = mktime(date("H"), date("i"), date("s"), date("m") - $MailLogMonate, date("d"), date("Y"));
// Datei löschen
if ($LogTime < $VergleichsTag) {
unlink($MailDirectory . "/" . $Verzeichnis . "/" . $DateiName);
}
}
}
closedir($VerzeichnisHandle);
}
}