<?php

/**
 * 
 * Copyright (C) Die Randgruppe GmbH
 * 
 * http://www.randshop.com
 * http://www.dierandgruppe.com
 * 
 * Unter der Lizenz von Die Randgruppe GmbH:
 * http://www.randshop.com/Lizenz
 *  
 * $Author$
 * $Date$
 * $Revision$
 * 
 */

include_once(DATEIPFAD . "includes/functions.global.inc.php");
include_once(DATEIPFAD . "includes/functions.shopeinstellung.inc.php");
include_once(DATEIPFAD . "includes/functions.menue.inc.php");
include_once(DATEIPFAD . "includes/htmlMimeMail/htmlMimeMail.php");
include_once(DATEIPFAD . 'includes/functions.artikel.inc.php');
include_once(DATEIPFAD . 'includes/functions.lieferstatus.inc.php');
if(PLUGIN_KLEINUNTERNEHMEN) {
    include_once(DATEIPFAD . 'plugins/plugin.kleinunternehmen.inc.php');
}

function SendMailShopError($errorMsg) {
	
	$ShopeinstellungenObject = GetShopeinstellungDetail();
	
	global $mail_shoperror_betreff, $mail_shoperror_text, $mail_shoperror_text_unten;
	
	$mailtext = $mail_shoperror_text . "\n\n" . $_POST["tpl_errormsg"] . "\n\n" . $mail_shoperror_text_unten;
	//$mail = mail($ShopeinstellungenObject->email, $mail_shoperror_betreff, $mailtext, "From: ".$ShopeinstellungenObject->email."\n" . "Reply-To: ". $ShopeinstellungenObject->email);
	
}


function SendUserMail($KundenObject, $MailTemplateBereich) {
	
	$ShopeinstellungenObject = GetShopeinstellungDetail();

	global $mail_registrieren_betreff, $mail_registrieren_text1, $mail_registrieren_text2, $mail_registrieren_text3, $mail_passwortvergessen_betreff, $mail_passwortvergessen_text;
	global $a_bankverbindung, $l_blz, $l_kto, $a_steuernr, $a_ust;
	global $mail_subject_bestellung;
	global $lang_iban, $lang_bic, $lang_handelsregister;
	global $lang_telefon, $lang_fax;
	global $lang_sitz_gesellschaft, $lang_gerichtsstand, $lang_geschaeftsfuehrer, $lang_amtsgericht;
	
	// Mailtemplatebereich
	// 1 = Registrierung
	// 2 = Passwort vergessen
	
	// ********************************************************************************
	// ** Template ermitteln                                                         **
 	// ********************************************************************************
	$TemplateObject = GetTemplateDetail();
	
	if ($KundenObject->mailtyp == 1) {
		$TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_html/index.php";	
	} elseif ($KundenObject->mailtyp == 2) {
		$TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_text/index.php";	
	}
	
	if($MailTemplateBereich == 1) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/user/registrieren.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/user/registrieren.php";
		$PostArray["headline"] = $mail_registrieren_betreff;
        $mail_subject = $mail_registrieren_betreff;
	}
	
	if($MailTemplateBereich == 2) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/user/passwortvergessen.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/user/passwortvergessen.php";
		$PostArray["headline"] = $mail_passwortvergessen_betreff;
        $mail_subject = $mail_passwortvergessen_betreff;
	}
		
	// Logo
    if (file_exists(DATEIPFAD . "images/dbimages/shop_logo.gif")) {
        $logoImageSize = getimagesize(DATEIPFAD . "images/dbimages/shop_logo.gif");
        $PostArray["logo_image"] = "<img src=\"" . IMAGEPFAD . "dbimages/shop_logo.gif\" width=\"".$logoImageSize[0]."\" height=\"".$logoImageSize[1]."\" border=\"0\" alt=\"Logo\" />"; 
    } else {
        $logoImageSize = getimagesize(DATEIPFAD . "templates/" . $TemplateObject->name . "/design/" . $TemplateObject->design . "/images/shop_logo.gif");
        $PostArray["logo_image"] = "<img src=\"" . URLPFAD . "templates/" . $TemplateObject->name . "/design/" . $TemplateObject->design . "/images/shop_logo.gif\" width=\"" . $logoImageSize[0] . "\" height=\"" . $logoImageSize[1] . "\" border=\"0\" alt=\"Logo\" />"; 
    }
	
	// ********************************************************************************
	// ** POST-Variablen aufbereiten                                                 **
 	// ********************************************************************************

	// Einstellungen
	$PostArray["charset"] = CHARSET;
	$PostArray["haupt_imagepfad"] = IMAGEPFAD;
	$PostArray["imagepfad"] = URLPFAD . "templates/" . $TemplateObject->name  . "/design/" . $TemplateObject->design . "/images/";
	$PostArray["csspfad"] = URLPFAD . "templates/" . $TemplateObject->name  . "/design/" . $TemplateObject->design . "/css/";
	$PostArray["waehrung"] = $WaehrungObject->symbol;
		
	// Betreiberdaten
	if ($ShopeinstellungenObject->firmen_titel) { $PostArray["tpl_betreiber_firma"] = $ShopeinstellungenObject->firmen_titel; }
	if ($ShopeinstellungenObject->name) { $PostArray["tpl_betreiber_name"] = $ShopeinstellungenObject->name; } ;
	$PostArray["tpl_betreiber_strasse"] = $ShopeinstellungenObject->strasse;
	$PostArray["tpl_betreiber_plz"] = $ShopeinstellungenObject->plz;
	$PostArray["tpl_betreiber_ort"] = $ShopeinstellungenObject->ort;
	$PostArray["tpl_betreiber_telefon"] = $ShopeinstellungenObject->tel;
	$PostArray["tpl_betreiber_telefax"] = $ShopeinstellungenObject->fax;
	$PostArray["tpl_betreiber_email"] = $ShopeinstellungenObject->email;
	$PostArray["tpl_betreiber_url"] = $ShopeinstellungenObject->url;
	
	$PostArray["tpl_betreiber_steuernummer"] = $ShopeinstellungenObject->str_nr;
	$PostArray["tpl_betreiber_ustid"] = $ShopeinstellungenObject->ust;
	$PostArray["tpl_betreiber_bank"] = $ShopeinstellungenObject->bank;
	$PostArray["tpl_betreiber_blz"] = $ShopeinstellungenObject->blz;
	$PostArray["tpl_betreiber_konto"] = $ShopeinstellungenObject->konto;
	$PostArray["tpl_betreiber_iban"] = $ShopeinstellungenObject->iban;
	$PostArray["tpl_betreiber_bic"] = $ShopeinstellungenObject->bic;
	$PostArray["tpl_betreiber_handelsregister"] = $ShopeinstellungenObject->handelsregister;
	$PostArray["tpl_betreiber_sitz_gesellschaft"] = $ShopeinstellungenObject->sitz_gesellschaft;
	$PostArray["tpl_betreiber_amtsgericht"] = $ShopeinstellungenObject->amtsgericht;
	$PostArray["tpl_betreiber_gerichtsstand"] = $ShopeinstellungenObject->gerichtsstand;
	$PostArray["tpl_betreiber_geschaeftsfuehrer"] = $ShopeinstellungenObject->geschaeftsfuehrer;

	// Kundendaten
	$PostArray["tpl_kunde_firma"] = $BestellObject->firma;
	$PostArray["tpl_kunde_anrede"] = $BestellObject->anrede;
	$PostArray["tpl_kunde_vorname"] = $BestellObject->vorname;
	$PostArray["tpl_kunde_nachname"] = $BestellObject->nachname;
	$PostArray["tpl_kunde_strasse"] = $BestellObject->strasse;
	$PostArray["tpl_kunde_hausnummer"] = $BestellObject->hausnummer;
    if($BestellObject->bundesstaat) {
        $bundesstaat = GetBundesstaat($BestellObject->bundesstaat);
    }
    $PostArray["tpl_kunde_plz"] = ($bundesstaat?$bundesstaat->code . ' ':'') . $BestellObject->plz;
    $PostArray["tpl_kunde_ort"] = $BestellObject->ort;
	$PostArray["tpl_kunde_land"] = $BestellObject->land;
	
	// Texte
	$PostArray["mail_passwortvergessen_text"] = html_entity_decode($mail_passwortvergessen_text,ENT_NOQUOTES,CHARSET);
	$PostArray["mail_registrieren_text1"] = html_entity_decode($mail_registrieren_text1);
	$PostArray["mail_registrieren_text2"] = html_entity_decode($mail_registrieren_text2);
	$PostArray["mail_registrieren_text3"] = html_entity_decode($mail_registrieren_text3);
	$PostArray["lang_bic"] = html_entity_decode($lang_bic);
	$PostArray["lang_iban"] = html_entity_decode($lang_iban);
	$PostArray["lang_handelsregister"] = html_entity_decode($lang_handelsregister);
	$PostArray["lang_telefon"] = $lang_telefon;
	$PostArray["lang_fax"] = $lang_fax;
	$PostArray["lang_sitz_gesellschaft"] = $lang_sitz_gesellschaft;
	$PostArray["lang_gerichtsstand"] = $lang_gerichtsstand;
	$PostArray["lang_geschaeftsfuehrer"] = $lang_geschaeftsfuehrer;
	$PostArray["lang_amtsgericht"] = $lang_amtsgericht;
	$PostArray["a_bankverbindung"] = html_entity_decode($a_bankverbindung);
	$PostArray["l_blz"] = html_entity_decode($l_blz);
	$PostArray["l_kto"] = html_entity_decode($l_kto);
	$PostArray["a_steuernr"] = html_entity_decode($a_steuernr);
	$PostArray["a_ust"] = html_entity_decode($a_ust);
	$PostArray["a_re_kundenummer"] = html_entity_decode($a_re_kundenummer);
	
	// Rechnunsgadresse Kunde
	$PostArray["tpl_kdn_name"] = $KundenObject->briefanrede . " " . $KundenObject->vorname . " " . $KundenObject->nachname;
	$PostArray["tpl_kdn_passwort"] = $KundenObject->password_cleartext;

	// ********************************************************************************
	// ** Template für Kunden einlesen                                               **
 	// ********************************************************************************

	// Verbindung über CURL mit dem Template herstellen
    $CurlHandler = curl_init();
    
    //	echo "<pre>";
    //	var_dump($PostArray);
    //	echo "</pre>";    
	
	// Template einlesen
    curl_setopt($CurlHandler, CURLOPT_POST, 1);
    curl_setopt($CurlHandler, CURLOPT_POSTFIELDS, $PostArray);
    curl_setopt($CurlHandler, CURLOPT_URL, $TemplateFile);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($CurlHandler, CURLOPT_USERAGENT, "");
    curl_setopt($CurlHandler, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYPEER, FALSE);
	
	$ReturnString = curl_exec($CurlHandler);

//    	echo "<pre>";
//    	echo($ReturnString);
//      echo "</pre>";

	curl_close($CurlHandler);


	// ********************************************************************************
	// ** Mail an Kunden versenden                                                   **
 	// ********************************************************************************

	$Mail = new htmlMimeMail();
	$Mail->setHtmlCharset(CHARSET);
    $Mail->setTextCharset(CHARSET);
    $Mail->setHeadCharset(CHARSET);
    
	if ($KundenObject->mailtyp == 1) {
	    $Mail->setHtml($ReturnString);
	} else {
	    $Mail->setText($ReturnString);
	}
	
	if ($ShopeinstellungenObject->url) {
		$Mail->setSubject(str_replace("http://", "", $ShopeinstellungenObject->url) . " - " . $mail_subject);
	} elseif ($ShopeinstellungenObject->firmen_titel) {
		$Mail->setSubject($ShopeinstellungenObject->firmen_titel . " - " . $mail_subject);
	} else {
		$Mail->setSubject($ShopeinstellungenObject->name . " - " . $mail_subject);
	}
	
	$Mail->setFrom($ShopeinstellungenObject->email);
	$Result = $Mail->send(array($KundenObject->email));	
	
	
	if($MailTemplateBereich == 1) { $MailBereich = 5; }
	if($MailTemplateBereich == 2) { $MailBereich = 6; }
	MailLog($ReturnString, $Mail, $MailBereich, "", $KundenObject);
	
}



function SendFakturaMail($BestellObject, $KundenObject, $ShopeinstellungObject, $VersandMarker ="", $WaehrungObject, $MailTemplateBereich) {
	
	global $a_zahlung, $a_auftragsbest, $a_datum, $a_bs_auftragsdatum, $a_auftragsnummer, $a_kdnr, $a_lieferA;
	global $a_artnr, $l_artikel, $l_menge, $a_mwst, $l_preis, $a_betrag;
	global $l_zahlung, $c_versandart, $lang_kleinunternehmen;
	global $a_bankverbindung, $l_blz, $l_kto, $a_steuernr, $a_ust;
	global $a_re_rechnung, $l_versandbest, $a_bs_mahnung1, $a_bs_mahnung2, $a_re_rechnungsdatum, $a_re_rechnungsnummer, $a_re_auftragsnummer, $a_re_kundenummer;
	global $mail_subject_rechnung, $a_re_mail_subject, $mail_subject_bestellung, $lang_bestellinfo, $mail_subject_zahlungserinnerung;
	global $lang_iban, $lang_bic, $lang_handelsregister, $lang_telefon, $lang_fax, $mailVersandbestaetigung;
	global $lang_sitz_gesellschaft, $lang_gerichtsstand, $lang_geschaeftsfuehrer, $lang_amtsgericht, $a_ar_lieferstatus;
    global $c_bestelluebersicht_speditionskosten;

    //TemplateBereich
	// 1 = Versandbestaetigung
	// 2 = Bestelleingang Kunde
	// 3 = Bestelleingang Shopbetreiber
	// 4 = Mahnung
	// 8 = Zahlungserinnerung
	
	// ********************************************************************************
	// ** Template ermitteln                                                         **
 	// ********************************************************************************
	$TemplateObject = GetTemplateDetail();
	
	if ($KundenObject->mailtyp == 1) {
		$TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_html/index.php";
	} elseif ($KundenObject->mailtyp == 2) {
		$TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_text/index.php";	
	}
	
	// ********************************************************************************
	// ** POST-Variablen aufbereiten                                                 **
 	// ********************************************************************************
	
    if($MailTemplateBereich == 1) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/versandbestaetigung.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/versandbestaetigung.php";
		$PostArray["headline"] = $l_versandbest;
		$PostArray["mailversandtext"] = $mailVersandbestaetigung;
	}
	
	if($MailTemplateBereich == 2) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/bestelleingang_kunde.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/bestelleingang_kunde.php";
		$PostArray["headline"] = $mail_subject_bestellung;
	}
	
	if($MailTemplateBereich == 3) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/bestelleingang_shopbetreiber.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/bestelleingang_shopbetreiber.php";
		$PostArray["headline"] = $mail_subject_bestellung;
	}
	
	if($MailTemplateBereich == 4) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/mahnung.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/mahnung.php";
		if($BestellObject->mahnung == 1) {
		    $mahnSubject = $a_bs_mahnung1;
		    $PostArray["headline"] = $a_bs_mahnung1;
	    } else {
	    	$mahnSubject = $a_bs_mahnung2;
	    	$PostArray["headline"] = $a_bs_mahnung2;
	    }
	}
	
	if($MailTemplateBereich == 8) {
		$PostArray["content_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/zahlungserinnerung.php";
		$PostArray["contenttext_file"] = DATEIPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/zahlungserinnerung.php";
	    $PostArray["headline"] = $a_bs_zahlungserinnerung;
	    $zahlungserinnerung_text = str_replace(
	    	array('[ANREDE]','[VORNAME]', '[NAME]', '[ANR]', '[ADATUM]', '[RBETRAG]'),
	    	array($KundenObject->anrede, $KundenObject->vorname, $KundenObject->nachname, $BestellObject->auftragsnummer, $BestellObject->auftragsdatum_format, $BestellObject->gesamtsumme_format_einfach . ' ' . $BestellObject->waehrung),
	    	GetZahlungserinnerungText()
	    	);
	    
	    $PostArray["tpl_zahlungserinnerung_text"] = $zahlungserinnerung_text;
	}

    // Auftragsnummer immer an die Betreffzeile anhängen
	$PostArray["headline"] = $PostArray["headline"] . ' Auftragsnr. ' . $BestellObject->auftragsnummer;

	$PostArray["charset"] = CHARSET;
	$PostArray["haupt_imagepfad"] = IMAGEPFAD;
	$PostArray["imagepfad"] = URLPFAD . "templates/" . $TemplateObject->name  . "/design/" . $TemplateObject->design . "/images/";
	$PostArray["csspfad"] = URLPFAD . "templates/" . $TemplateObject->name  . "/design/" . $TemplateObject->design . "/css/";
	$PostArray["waehrung"] = $WaehrungObject->symbol;	

	// Logo
    if (file_exists(DATEIPFAD . "images/dbimages/shop_logo.gif")) {
        $logoImageSize = getimagesize(DATEIPFAD . "images/dbimages/shop_logo.gif");
        $PostArray["logo_image"] = "<img src=\"" . IMAGEPFAD . "dbimages/shop_logo.gif\" width=\"".$logoImageSize[0]."\" height=\"".$logoImageSize[1]."\" border=\"0\" alt=\"Logo\" />";
    } else {
        $logoImageSize = getimagesize(DATEIPFAD . "templates/" . $TemplateObject->name . "/design/" . $TemplateObject->design . "/images/shop_logo.gif");
        $PostArray["logo_image"] = "<img src=\"" . URLPFAD . "templates/" . $TemplateObject->name . "/design/" . $TemplateObject->design . "/images/shop_logo.gif\" width=\"" . $logoImageSize[0] . "\" height=\"" . $logoImageSize[1] . "\" border=\"0\" alt=\"Logo\" />"; 
    }
    	
	// Texte	
	$PostArray["bestellinfo"] = html_entity_decode($lang_bestellinfo);
	$PostArray["a_zahlung"] = html_entity_decode($a_zahlung);
	$PostArray["a_auftragsbest"] = html_entity_decode($a_auftragsbest);
	$PostArray["a_lieferA"] = html_entity_decode($a_lieferA);
	$PostArray["a_artnr"] = html_entity_decode($a_artnr);
	$PostArray["l_artikel"] = html_entity_decode($l_artikel);
	$PostArray["l_menge"] = html_entity_decode($l_menge);
	$PostArray["a_mwst"] = html_entity_decode($a_mwst);
	$PostArray["l_preis"] = html_entity_decode($l_preis);
	$PostArray["a_betrag"] = html_entity_decode($a_betrag);
	$PostArray["l_zahlung"] = html_entity_decode($l_zahlung);
	$PostArray["c_versandart"] = html_entity_decode($c_versandart);
	$PostArray["a_bankverbindung"] = html_entity_decode($a_bankverbindung);
	$PostArray["l_blz"] = html_entity_decode($l_blz);
	$PostArray["l_kto"] = html_entity_decode($l_kto);
	$PostArray["a_steuernr"] = html_entity_decode($a_steuernr);
	$PostArray["a_ust"] = html_entity_decode($a_ust);
	$PostArray["a_re_rechnungsdatum"] = html_entity_decode($a_re_rechnungsdatum); 
	$PostArray["a_re_rechnungsnummer"] = html_entity_decode($a_re_rechnungsnummer);
	$PostArray["a_re_auftragsdatum"] = html_entity_decode($a_bs_auftragsdatum);
	$PostArray["a_re_auftragsnummer"] = html_entity_decode($a_re_auftragsnummer);
	$PostArray["a_datum"] = html_entity_decode($a_datum); 
	$PostArray["a_re_kundenummer"] = html_entity_decode($a_re_kundenummer);
	$PostArray["a_re_rechnung"] = html_entity_decode($a_re_rechnung);
	$PostArray["l_versandbest"] = html_entity_decode($l_versandbest);
	$PostArray["lang_bic"] = html_entity_decode($lang_bic);
	$PostArray["lang_iban"] = html_entity_decode($lang_iban);
	$PostArray["lang_handelsregister"] = html_entity_decode($lang_handelsregister);
	$PostArray["lang_telefon"] = $lang_telefon;
	$PostArray["lang_fax"] = $lang_fax;
	$PostArray["lang_sitz_gesellschaft"] = html_entity_decode($lang_sitz_gesellschaft);
	$PostArray["lang_gerichtsstand"] = html_entity_decode($lang_gerichtsstand);
	$PostArray["lang_geschaeftsfuehrer"] = html_entity_decode($lang_geschaeftsfuehrer);
	$PostArray["lang_amtsgericht"] = html_entity_decode($lang_amtsgericht);
	$PostArray["lang_lieferstatus"] = html_entity_decode($a_ar_lieferstatus);
    $PostArray['c_bestelluebersicht_speditionskosten'] = html_entity_decode($c_bestelluebersicht_speditionskosten);
    $PostArray['lang_kleinunternehmen'] = html_entity_decode($lang_kleinunternehmen);

    // Betreiberdaten
	if ($ShopeinstellungObject->firmen_titel) { $PostArray["tpl_betreiber_firma"] = $ShopeinstellungObject->firmen_titel; }
	if ($ShopeinstellungObject->name) { $PostArray["tpl_betreiber_name"] = $ShopeinstellungObject->name; } ;
	$PostArray["tpl_betreiber_strasse"] = $ShopeinstellungObject->strasse;
	$PostArray["tpl_betreiber_plz"] = $ShopeinstellungObject->plz;
	$PostArray["tpl_betreiber_ort"] = $ShopeinstellungObject->ort;
	$PostArray["tpl_betreiber_telefon"] = $ShopeinstellungObject->tel;
	$PostArray["tpl_betreiber_telefax"] = $ShopeinstellungObject->fax;
	$PostArray["tpl_betreiber_email"] = $ShopeinstellungObject->email;
	$PostArray["tpl_betreiber_url"] = $ShopeinstellungObject->url;
	
	$PostArray["tpl_betreiber_steuernummer"] = $ShopeinstellungObject->str_nr;
	$PostArray["tpl_betreiber_ustid"] = $ShopeinstellungObject->ust;
	$PostArray["tpl_betreiber_bank"] = $ShopeinstellungObject->bank;
	$PostArray["tpl_betreiber_blz"] = $ShopeinstellungObject->blz;
	$PostArray["tpl_betreiber_konto"] = $ShopeinstellungObject->konto;
	$PostArray["tpl_betreiber_iban"] = $ShopeinstellungObject->iban;
	$PostArray["tpl_betreiber_bic"] = $ShopeinstellungObject->bic;
	$PostArray["tpl_betreiber_handelsregister"] = $ShopeinstellungObject->handelsregister;
	$PostArray["tpl_betreiber_sitz_gesellschaft"] = $ShopeinstellungObject->sitz_gesellschaft;
	$PostArray["tpl_betreiber_amtsgericht"] = $ShopeinstellungObject->amtsgericht;
	$PostArray["tpl_betreiber_gerichtsstand"] = $ShopeinstellungObject->gerichtsstand;
	$PostArray["tpl_betreiber_geschaeftsfuehrer"] = $ShopeinstellungObject->geschaeftsfuehrer;
    if(PLUGIN_KLEINUNTERNEHMEN) {
        $Kleinunternehmen = GetEinstellungen('', 'kleinunternehmen');
        $PostArray["tpl_kleinunternehmen"] = $Kleinunternehmen->kleinunternehmen->kleinunternehmen;
    } else {
        $PostArray["tpl_kleinunternehmen"] = 0;
    }

	// Kundendaten
	$PostArray["tpl_kunde_firma"] = $BestellObject->firma;
	$PostArray["tpl_kunde_anrede"] = $BestellObject->anrede;
	$PostArray["tpl_kunde_titel"] = $BestellObject->titel;
	$PostArray["tpl_kunde_vorname"] = $BestellObject->vorname;
	$PostArray["tpl_kunde_nachname"] = $BestellObject->nachname;
	$PostArray["tpl_kunde_strasse"] = $BestellObject->strasse;
	$PostArray["tpl_kunde_hausnummer"] = $BestellObject->hausnummer;
    if($BestellObject->bundesstaat) {
        $bundesstaat = GetBundesstaat($BestellObject->bundesstaat);
    }
    $PostArray["tpl_kunde_plz"] = ($bundesstaat?$bundesstaat->code . ' ':'') . $BestellObject->plz;
    $PostArray["tpl_kunde_ort"] = $BestellObject->ort;
	$PostArray["tpl_kunde_land"] = $BestellObject->land;
	
	$PostArray["tpl_kunde_lieferung"] = $BestellObject->wohin_liefern;
	$PostArray["tpl_kunde_la_firma"] = $BestellObject->la_firma;
	$PostArray["tpl_kunde_la_anrede"] = $BestellObject->la_anrede;
	$PostArray["tpl_kunde_la_titel"] = $BestellObject->la_titel;
	$PostArray["tpl_kunde_la_vorname"] = $BestellObject->la_vorname;
	$PostArray["tpl_kunde_la_nachname"] = $BestellObject->la_nachname;
	$PostArray["tpl_kunde_la_strasse"] = $BestellObject->la_strasse;
	$PostArray["tpl_kunde_la_hausnummer"] = $BestellObject->la_hausnummer;
    if($BestellObject->la_bundesstaat) {
        $la_bundesstaat = GetBundesstaat($BestellObject->la_bundesstaat);
    }
    $PostArray["tpl_kunde_la_plz"] = ($la_bundesstaat?$la_bundesstaat->code . ' ':'') . $BestellObject->la_plz;
    $PostArray["tpl_kunde_la_ort"] = $BestellObject->la_ort;
	$PostArray["tpl_kunde_la_land"] = $BestellObject->la_land;
	$PostArray["tpl_kunde_comments"] = $BestellObject->comments;
	$PostArray["tpl_kunde_testorder"] = $BestellObject->testorder;
	
	
	// Agb an die E-Mail haengen
	if($MailTemplateBereich == 2) {
		if($ShopeinstellungObject->widerruf > 0) {
			$MenueObject = GetMenueDetails($ShopeinstellungObject->widerruf, $BestellObject->language_id);
			if ($KundenObject->mailtyp == 1) {
	        	$PostArray["agb"] = stripslashes($MenueObject->textEintrag);
	        } else {
	            $PostArray["agb"] = stripslashes(strip_tags($MenueObject->textEintrag));
	        }
		}
	}
	
	// Angaben zu der Bestellung
	$PostArray["tpl_rechnungsdatum"] = $BestellObject->rechnungsdatum_format;
	$PostArray["tpl_rechnungsnummer"] = $BestellObject->rechnungsnummer;
	$PostArray["tpl_kundennummer"] = $BestellObject->kunden_id;
	$PostArray["tpl_auftragsnummer"] = $BestellObject->auftragsnummer;
	$PostArray["tpl_auftragsdatum"] = $BestellObject->auftragsdatum_format;
	$PostArray["tpl_auftragsdatum"] = $BestellObject->auftragsdatum_format;
	$PostArray["tpl_vorkasseerinnerungsdatum_format"] = $BestellObject->zahlungserinnerungdatum_format; // Vorkasse Erinnerung
	
	if($BestellObject->mahnung == 1) {
		$PostArray["tpl_mahnungdatum_format"] = $BestellObject->mahnung1datum_format;
	} else {
		$PostArray["tpl_mahnungdatum_format"] = $BestellObject->mahnung2datum_format;
	}
	$PostArray["tpl_zahlungsart_name"] = $BestellObject->zahlungsart_name;
	$PostArray["tpl_zahlungsart_beschreibung"] = $BestellObject->zahl_beschreibung;
	$PostArray["tpl_waehrung"] = $WaehrungObject->symbol;
	if($BestellObject->mahnung == 1) {
		$PostArray["tpl_mahntext"] = $ShopeinstellungObject->mahntext1;
	} else {
		$PostArray["tpl_mahntext"] = $ShopeinstellungObject->mahntext2;
	}

	// Warenkorb
	foreach ($BestellObject->warenkorbdataarray["warenkorbarray"] as $Warenkorkey => $Warenkorbdata) {
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][artikel_nr]"] = $Warenkorbdata["artikel_nr"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][artikel_name]"] = $Warenkorbdata["artikel_name"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante1]"] = $Warenkorbdata["variante1"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante2]"] = $Warenkorbdata["variante2"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante3]"] = $Warenkorbdata["variante3"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante4]"] = $Warenkorbdata["variante4"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][mwst_format]"] = $Warenkorbdata["mwst_format"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][menge]"] = $Warenkorbdata["menge"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][preis_format_einfach]"] = $Warenkorbdata["preis_format_einfach"];
		$PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][summe_format_einfach]"] = $Warenkorbdata["summe_format_einfach"];
		
		// Lieferstatus holen 
        $lieferstatusObj = GetLieferstatusDetail($Warenkorbdata['lieferstatus'], $KundenObject->language_id);
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][lieferstatus]"] = $lieferstatusObj->name;
	}
	
	// MwSt
	if ($BestellObject->warenkorbdataarray["mwstarray"]) {
		foreach ($BestellObject->warenkorbdataarray["mwstarray"] as $MwStkey => $MwStdata) {
			$PostArray["tpl_mwstarray[" . $MwStkey . "][text]"] = $MwStdata["text"];
			$PostArray["tpl_mwstarray[" . $MwStkey . "][mwstsatz_format]"] = $MwStdata["mwstsatz_format"];
			$PostArray["tpl_mwstarray[" . $MwStkey . "][summe_format_einfach]"] = $MwStdata["summe_format_einfach"];
		}
	}

	
	// Warenwert
	$PostArray["tpl_warenwert"] = $BestellObject->warenwert_format_einfach;
	$PostArray["tpl_warenwert_text"] = $BestellObject->warenwert_text;

	// Gutscheinaktion
	$PostArray["tpl_gutscheinaktion_name"] = $BestellObject->gutscheinaktion_name;
	$PostArray["tpl_gutscheincode"] = $BestellObject->gutscheincode;
	$PostArray["tpl_gutschein_betrag"] = $BestellObject->gutschein_betrag;
	
	// MwSt-Satz fï¿½r Versandart
	$PostArray["tpl_versandmwst"] = $BestellObject->versand_mwst_format;
	
	// Zahlungsart
	$PostArray["tpl_zahlungsart_name"] = $BestellObject->zahlungsart_name;
	$PostArray["tpl_zahlungsart_preis"] = $BestellObject->zahlungsart_preis_format_einfach;

	// Versandart
	$PostArray["tpl_versandart_name"] = $BestellObject->versandart_name;
	$PostArray["tpl_versandart_preis"] = $BestellObject->versandart_preis_format_einfach;
    $PostArray["tpl_versandart_anzeigen"] = $BestellObject->versandart_preis > 0;

    // Speditionskosten
    $PostArray["tpl_spedition_preis"] = $BestellObject->spedition_preis_format_einfach;
    $PostArray["tpl_spedition_anzeigen"] = $BestellObject->spedition_preis > 0;

    // Rabatt
	$PostArray["tpl_rabatt_name"] = $BestellObject->rabatt_name;
	$PostArray["tpl_rabatt_prozent"] = $BestellObject->rabatt_prozent;
	$PostArray["tpl_rabatt_betrag"] = $BestellObject->rabatt_betrag_format_einfach;
	
	// Summen
	$PostArray["tpl_gesamtsumme"] = $BestellObject->gesamtsumme_format_einfach = number_format($BestellObject->gesamtsumme, 2, ",", ".");
	$PostArray["tpl_gesamtsumme_text"] = $BestellObject->gesamtsumme_text;
	$PostArray["tpl_gesamtsumme_alternativ"] = $BestellObject->gesamtsumme_alternativ_format_einfach;
	$PostArray["tpl_gesamtsumme_alternativ_text"] = $BestellObject->gesamtsumme_alternativ_text;
	
	// Kundenbemerkung
	$PostArray["tpl_kundenbemerkung"] = $BestellObject->kundenbemerkung;

	// ******************************************************************************
	// ** Template  einlesen		                                               **
 	// ******************************************************************************

    $CurlHandler = curl_init();
    
      //echo "<pre>";
      //var_dump($PostArray);
      //echo "</pre>";
    
	// Template einlesen
    curl_setopt($CurlHandler, CURLOPT_POST, 1);
    curl_setopt($CurlHandler, CURLOPT_POSTFIELDS, $PostArray);
    curl_setopt($CurlHandler, CURLOPT_URL, $TemplateFile);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($CurlHandler, CURLOPT_USERAGENT, "");
    curl_setopt($CurlHandler, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYPEER, FALSE);
    	
	$ReturnString = curl_exec($CurlHandler);
	
//	echo "<pre>";
//    echo 'TemplateBereich: ' . $MailTemplateBereich . "\r\n";
//	echo $ReturnString;
//	echo "</pre>";
	
	
	curl_close($CurlHandler);


	// ********************************************************************************
	// ** Mail an Kunden versenden                                                   **
 	// ********************************************************************************

	$Mail = new htmlMimeMail();
	$Mail->setHtmlCharset(CHARSET);
    $Mail->setTextCharset(CHARSET);
    $Mail->setHeadCharset(CHARSET);

    if(file_exists(DATEIPFAD . "data/widerrufsformular.pdf")) {
        $widerrufDatei = $Mail->getFile(DATEIPFAD . "data/widerrufsformular.pdf");
        $Mail->addAttachment($widerrufDatei, "widerrufsformular.pdf", "application/pdf");
    }
    
	if($VersandMarker != 1 && $MailTemplateBereich != 8) {
		$MailAttachment = $Mail->getFile(DATEIPFAD . "admin/data/pdf/" . $PostArray["tpl_rechnungsnummer"] . "_rechnung.pdf");
        $Mail->addAttachment($MailAttachment, "rechnung_" . $PostArray["tpl_rechnungsnummer"] . ".pdf", "application/pdf");
	}
	
	if($MailTemplateBereich == 4) {
		$MailAttachment = $Mail->getFile(DATEIPFAD . "admin/data/pdf/" . $PostArray["tpl_rechnungsnummer"] . "_mahnung" . $BestellObject->mahnung . ".pdf");
		$Mail->addAttachment($MailAttachment, "mahnung_" . $PostArray["tpl_rechnungsnummer"] . "_" . $BestellObject->mahnung . ".pdf", "application/pdf");
	}
	
	if ($KundenObject->mailtyp == 1 || $ShopbetreiberEmail) {
	    $Mail->setHtml($ReturnString);
	} else {
	    $Mail->setText($ReturnString);
	}

    //var_dump($Mail->attachments);
    
	if($MailTemplateBereich == 1) {
      if ($ShopeinstellungObject->url) {
         $Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $l_versandbest . ' ' . $a_auftragsnummer. ' ' . $BestellObject->auftragsnummer);
      } elseif ($ShopeinstellungObject->firmen_titel) {
         $Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $l_versandbest . ' ' . $a_auftragsnummer. ' ' . $BestellObject->auftragsnummer);
      } else {
         $Mail->setSubject($ShopeinstellungObject->name . " - " . $l_versandbest . ' ' . $a_auftragsnummer. ' ' . $BestellObject->auftragsnummer);
      }
      
      $Mail->setFrom($ShopeinstellungObject->email);
      $Result = $Mail->send(array($BestellObject->email));
	
	} elseif($MailTemplateBereich == 2) {
		
		if ($ShopeinstellungObject->url) {
			$Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mail_subject_bestellung);
		} elseif ($ShopeinstellungObject->firmen_titel) {
			$Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mail_subject_bestellung);
		} else {
			$Mail->setSubject($ShopeinstellungObject->name . " - " . $mail_subject_bestellung);
		}
		
		$Mail->setFrom($ShopeinstellungObject->email);
		$Result = $Mail->send(array($BestellObject->email));
		SetAuftragsbestaetigungsDatum($BestellObject->id);
		
	} elseif($MailTemplateBereich == 3) {
		
		if ($ShopeinstellungObject->url) {
			$Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mail_subject_bestellung);
		} elseif ($ShopeinstellungObject->firmen_titel) {
			$Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mail_subject_bestellung);
		} else {
			$Mail->setSubject($ShopeinstellungObject->name . " - " . $mail_subject_bestellung);
		}
		
		$Mail->setFrom($KundenObject->email);
		$Result = $Mail->send(array($ShopeinstellungObject->email));
		
	} elseif($MailTemplateBereich == 4) {
		
		if ($ShopeinstellungObject->url) {
			$Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mahnSubject);
		} elseif ($ShopeinstellungObject->firmen_titel) {
			$Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mahnSubject);
		} else {
			$Mail->setSubject($ShopeinstellungObject->name . " - " . $mahnSubject);
		}
		
		$Mail->setFrom($ShopeinstellungObject->email);
		$Result = $Mail->send(array($BestellObject->email));
		
	} elseif($MailTemplateBereich == 8) {
		
		if ($ShopeinstellungObject->url) {
			$Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mail_subject_zahlungserinnerung);
		} elseif ($ShopeinstellungObject->firmen_titel) {
			$Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mail_subject_zahlungserinnerung);
		} else {
			$Mail->setSubject($ShopeinstellungObject->name . " - " . $mail_subject_zahlungserinnerung);
		}

        $Mail->setFrom($ShopeinstellungObject->email);
		$Result = $Mail->send(array($BestellObject->email));

	}
    
    MailLog($ReturnString, $Mail, $MailTemplateBereich, $BestellObject, $KundenObject);
	
}

function SendMailBewertung($ArtikelID, $KundenID, $Bewertung, $Beschreibung, $Titel, $bewertungsID) {
    $ShopeinstellungenObject = GetShopeinstellungDetail();
    $KundenObject = GetKundenDetail('', $KundenID);
    $ArtikelObject = GetArtikelDetail($ArtikelID);

    $mailText = "Neue Bewertung\r\n\r\n";
    $mailText .= 'ID: ' . $bewertungsID . "\r\n";
    $mailText .= 'Kunde: ' . $KundenObject->vorname . ' ' . $KundenObject->nachname . ' (' . $KundenObject->id . ")\r\n";
    $mailText .= 'Artikel: ' . $ArtikelObject->admin_artikel_name . ' (' . $ArtikelObject->artikel_nr . ')' . "\r\n";
    $mailText .= 'Sterne: ' . $Bewertung . "\r\n";
    $mailText .= 'Titel: ' . $Titel . "\r\n";
    $mailText .= 'Beschreibung: ' . $Beschreibung . "\r\n";

    $Mail = new htmlMimeMail();
    $Mail->setHtmlCharset(CHARSET);
    $Mail->setTextCharset(CHARSET);
    $Mail->setHeadCharset(CHARSET);

    //    echo "<pre>";
    //    var_dump($mailText);
    //    echo "</pre>";

    $Mail->setText($mailText);

    if ($ShopeinstellungenObject->url) {
        $Mail->setSubject(str_replace("http://", "", $ShopeinstellungenObject->url) . " - Neue Bewertung zu Artikelnr " . $ArtikelObject->artikel_nr);
    } elseif ($ShopeinstellungenObject->firmen_titel) {
        $Mail->setSubject($ShopeinstellungenObject->firmen_titel . " - Neue Bewertung zu Artikelnr " . $ArtikelObject->artikel_nr);
    } else {
        $Mail->setSubject($ShopeinstellungenObject->name . " - Neue Bewertung zu Artikelnr " . $ArtikelObject->artikel_nr);
    }

    $Mail->setFrom($KundenObject->email);

    $Result = $Mail->send(array($ShopeinstellungenObject->email));

}


function SendMailBewertungsKommentar($BewertungsID) {

    global $a_zahlung, $a_auftragsbest, $a_datum, $a_auftragsnummer, $a_kdnr, $a_lieferA;
    global $a_artnr, $l_artikel, $l_menge, $a_mwst, $l_preis, $a_betrag;
    global $l_zahlung, $c_versandart;
    global $a_bankverbindung, $l_blz, $l_kto, $a_steuernr, $a_ust;
    global $mail_subject_bewertungskommentar;
    global $lang_iban, $lang_bic, $lang_handelsregister;
    global $a_startguthaben;
    global $TrustedShopID;
    global $str_bewertungskommentarMailText;

    $BewertungsObject = GetBewertungDetail($BewertungsID);
    $ArtikelObject = GetArtikelDetail($BewertungsObject->artId);
    $KundenObject = GetKundenDetail("", $BewertungsObject->kunId);
    $ShopeinstellungObject = GetShopeinstellungDetail();

    // ********************************************************************************
    // ** Template ermitteln                                                         **
    // ********************************************************************************
    $TemplateObject = GetTemplateDetail();

    if ($KundenObject->mailtyp == 1) {
        $TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/bewertungskommentar.php";
    } elseif ($KundenObject->mailtyp == 2) {
        $TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/bewertungskommentar.php";
    }

    // ********************************************************************************
    // ** POST-Variablen aufbereiten                                                 **
    // ********************************************************************************

    $PostArray["urlpfad"] = URLPFAD;

    // Texte
    $PostArray["a_zahlung"] = html_entity_decode($a_zahlung);
    $PostArray["a_auftragsbest"] = html_entity_decode($a_auftragsbest);
    $PostArray["a_datum"] = html_entity_decode($a_datum);
    $PostArray["a_auftragsnummer"] = html_entity_decode($a_auftragsnummer);
    $PostArray["a_kdnr"] = html_entity_decode($a_kdnr);
    $PostArray["a_lieferA"] = html_entity_decode($a_lieferA);
    $PostArray["a_artnr"] = html_entity_decode($a_artnr);
    $PostArray["l_artikel"] = html_entity_decode($l_artikel);
    $PostArray["l_menge"] = html_entity_decode($l_menge);
    $PostArray["a_mwst"] = html_entity_decode($a_mwst);
    $PostArray["l_preis"] = html_entity_decode($l_preis);
    $PostArray["a_betrag"] = html_entity_decode($a_betrag);
    $PostArray["l_zahlung"] = html_entity_decode($l_zahlung);
    $PostArray["c_versandart"] = html_entity_decode($c_versandart);
    $PostArray["a_bankverbindung"] = html_entity_decode($a_bankverbindung);
    $PostArray["l_blz"] = html_entity_decode($l_blz);
    $PostArray["l_kto"] = html_entity_decode($l_kto);
    $PostArray["a_steuernr"] = html_entity_decode($a_steuernr);
    $PostArray["a_ust"] = html_entity_decode($a_ust);
    $PostArray["lang_bic"] = html_entity_decode($lang_bic);
    $PostArray["lang_iban"] = html_entity_decode($lang_iban);
    $PostArray["lang_handelsregister"] = html_entity_decode($lang_handelsregister);
    $PostArray["a_startguthaben"] = $a_startguthaben;

    // Agb an die E-Mail haengen
    //    if($ShopeinstellungObject->agb > 0) {
    //        $MenueObject = GetMenueDetails($ShopeinstellungObject->agb);
    //        $PostArray["agb"] = stripslashes(nl2br(html_entity_decode(strip_tags($MenueObject->textEintrag))));
    //    }

    // Betreiberdaten
    if ($ShopeinstellungObject->firmen_titel) { $PostArray["tpl_betreiber_firma"] = $ShopeinstellungObject->firmen_titel; }
    if ($ShopeinstellungObject->name) { $PostArray["tpl_betreiber_name"] = $ShopeinstellungObject->name; } ;
    $PostArray["tpl_betreiber_strasse"] = $ShopeinstellungObject->strasse;
    $PostArray["tpl_betreiber_plz"] = $ShopeinstellungObject->plz;
    $PostArray["tpl_betreiber_ort"] = $ShopeinstellungObject->ort;
    $PostArray["tpl_betreiber_telefon"] = $ShopeinstellungObject->tel;
    $PostArray["tpl_betreiber_telefax"] = $ShopeinstellungObject->fax;
    $PostArray["tpl_betreiber_email"] = $ShopeinstellungObject->email;
    $PostArray["tpl_betreiber_url"] = $ShopeinstellungObject->url;

    $PostArray["tpl_betreiber_steuernummer"] = $ShopeinstellungObject->str_nr;
    $PostArray["tpl_betreiber_ustid"] = $ShopeinstellungObject->ust;
    $PostArray["tpl_betreiber_bank"] = $ShopeinstellungObject->bank;
    $PostArray["tpl_betreiber_blz"] = $ShopeinstellungObject->blz;
    $PostArray["tpl_betreiber_konto"] = $ShopeinstellungObject->konto;
    $PostArray["tpl_betreiber_iban"] = $ShopeinstellungObject->iban;
    $PostArray["tpl_betreiber_bic"] = $ShopeinstellungObject->bic;
    $PostArray["tpl_betreiber_handelsregister"] = $ShopeinstellungObject->handelsregister;
    $PostArray["tpl_trustedshop_id"] = $TrustedShopID;
    $PostArray["tpl_trustedshop_image_link"] = IMAGEPFAD . "bewerten_de.gif";

    // Daten zur Bewertung
    $PostArray["tpl_kunde_anrede"] = $KundenObject->anrede;
    $PostArray["tpl_kunde_vorname"] = $KundenObject->vorname;
    $PostArray["tpl_kunde_nachname"] = $KundenObject->nachname;
    $PostArray["tpl_artikel_name"] = $ArtikelObject->artikel_name;
    $PostArray["tpl_bewertungsdatum"] = date('d.m.Y', $BewertungsObject->timestamp);
    $PostArray["tpl_kommentar"] = $BewertungsObject->kommentar;


    $PostArray["tpl_bewertungskommentarMailText"] = sprintf($str_bewertungskommentarMailText, $ArtikelObject->artikel_name, date('d.m.Y', $BewertungsObject->timestamp));
    $PostArray["imagepfad"] = URLPFAD . "templates/" . $TemplateObject->name  . "/design/" . $TemplateObject->design . "/images/";
    $PostArray['tpl_anrede'] = $KundenObject->briefanrede;

    // ********************************************************************************
    // ** Template f�r Kunden einlesen                                               **
    // ********************************************************************************

    //Abfrage, ob Curl vorhanden, wenn nicht, dann vereinfachte Mail versenden


    // Verbindung �ber CURL mit dem Template herstellen
    $CurlHandler = curl_init();

//        echo "<pre>";
//        var_dump($PostArray);
//        echo "</pre>";

    // Template einlesen
    curl_setopt($CurlHandler, CURLOPT_POST, 1);
    curl_setopt($CurlHandler, CURLOPT_POSTFIELDS, $PostArray);
    curl_setopt($CurlHandler, CURLOPT_URL, $TemplateFile);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($CurlHandler, CURLOPT_USERAGENT, "");
    curl_setopt($CurlHandler, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($CurlHandler, CURLOPT_USERPWD,"thomas:blubber");

//        echo $TemplateFile;

    $ReturnString = curl_exec($CurlHandler);


//            	echo "<pre>";
//            	echo($ReturnString);
//            	echo "</pre>";

    curl_close($CurlHandler);


    // ********************************************************************************
    // ** Mail an Kunden versenden                                                   **
    // ********************************************************************************

    $Mail = new htmlMimeMail();
    $Mail->setHtmlCharset(CHARSET);
    $Mail->setTextCharset(CHARSET);
    $Mail->setHeadCharset(CHARSET);

    if ($KundenObject->mailtyp == 1) {
        $Mail->setHtml($ReturnString);
    } else {
        $Mail->setText($ReturnString);
    }

    if ($ShopeinstellungObject->url) {
        $Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mail_subject_bewertungskommentar);
    } elseif ($ShopeinstellungObject->firmen_titel) {
        $Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mail_subject_bewertungskommentar);
    } else {
        $Mail->setSubject($ShopeinstellungObject->name . " - " . $mail_subject_bewertungskommentar);
    }

    $Mail->setFrom($ShopeinstellungObject->email);
    $Result = $Mail->send(array($KundenObject->email));

}

function SendMailBewertungsanfrage($BestellObject, $KundenObject, $ShopeinstellungObject, $WaehrungObject, $BewertungsGutscheineAktiv = false) {

    global $a_zahlung, $a_auftragsbest, $a_datum, $a_auftragsnummer, $a_kdnr, $a_lieferA;
    global $a_artnr, $l_artikel, $l_menge, $a_mwst, $l_preis, $a_betrag;
    global $l_zahlung, $c_versandart;
    global $a_bankverbindung, $l_blz, $l_kto, $a_steuernr, $a_ust;
    global $lang_iban, $lang_bic, $lang_handelsregister;
    global $a_startguthaben;
    global $TrustedShopID;
    global $str_bewertungsAnfrageMailText, $str_bewertungsAnfrageMailTextDankeschoen, $str_bewertungsAnfrageMailText2, $mail_subject_bewertungsanfrage;
    global $str_jetzt_bewerten;

    // ********************************************************************************
    // ** Template ermitteln                                                         **
    // ********************************************************************************
    $TemplateObject = GetTemplateDetail();

    if ($KundenObject->mailtyp == 1) {
        $TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_html/faktura/bewertungsanfrage.php";
    } elseif ($KundenObject->mailtyp == 2) {
        $TemplateFile = URLPFAD . "templates/" . $TemplateObject->name  . "/mail_text/faktura/bewertungsanfrage.php";
    }

    // ********************************************************************************
    // ** POST-Variablen aufbereiten                                                 **
    // ********************************************************************************

    $PostArray["urlpfad"] = URLPFAD;

    // Texte
    $PostArray["a_zahlung"] = html_entity_decode($a_zahlung);
    $PostArray["a_auftragsbest"] = html_entity_decode($a_auftragsbest);
    $PostArray["a_datum"] = html_entity_decode($a_datum);
    $PostArray["a_auftragsnummer"] = html_entity_decode($a_auftragsnummer);
    $PostArray["a_kdnr"] = html_entity_decode($a_kdnr);
    $PostArray["a_lieferA"] = html_entity_decode($a_lieferA);
    $PostArray["a_artnr"] = html_entity_decode($a_artnr);
    $PostArray["l_artikel"] = html_entity_decode($l_artikel);
    $PostArray["l_menge"] = html_entity_decode($l_menge);
    $PostArray["a_mwst"] = html_entity_decode($a_mwst);
    $PostArray["l_preis"] = html_entity_decode($l_preis);
    $PostArray["a_betrag"] = html_entity_decode($a_betrag);
    $PostArray["l_zahlung"] = html_entity_decode($l_zahlung);
    $PostArray["c_versandart"] = html_entity_decode($c_versandart);
    $PostArray["a_bankverbindung"] = html_entity_decode($a_bankverbindung);
    $PostArray["l_blz"] = html_entity_decode($l_blz);
    $PostArray["l_kto"] = html_entity_decode($l_kto);
    $PostArray["a_steuernr"] = html_entity_decode($a_steuernr);
    $PostArray["a_ust"] = html_entity_decode($a_ust);
    $PostArray["lang_bic"] = html_entity_decode($lang_bic);
    $PostArray["lang_iban"] = html_entity_decode($lang_iban);
    $PostArray["lang_handelsregister"] = html_entity_decode($lang_handelsregister);
    $PostArray["a_startguthaben"] = $a_startguthaben;

    // Agb an die E-Mail haengen
    if($ShopeinstellungObject->agb > 0) {
        $MenueObject = GetMenueDetails($ShopeinstellungObject->agb);
        $PostArray["agb"] = stripslashes(nl2br(html_entity_decode(strip_tags($MenueObject->textEintrag))));
    }

    // Betreiberdaten
    if ($ShopeinstellungObject->firmen_titel) { $PostArray["tpl_betreiber_firma"] = $ShopeinstellungObject->firmen_titel; }
    if ($ShopeinstellungObject->name) { $PostArray["tpl_betreiber_name"] = $ShopeinstellungObject->name; } ;
    $PostArray["tpl_betreiber_strasse"] = $ShopeinstellungObject->strasse;
    $PostArray["tpl_betreiber_plz"] = $ShopeinstellungObject->plz;
    $PostArray["tpl_betreiber_ort"] = $ShopeinstellungObject->ort;
    $PostArray["tpl_betreiber_telefon"] = $ShopeinstellungObject->tel;
    $PostArray["tpl_betreiber_telefax"] = $ShopeinstellungObject->fax;
    $PostArray["tpl_betreiber_email"] = $ShopeinstellungObject->email;
    $PostArray["tpl_betreiber_url"] = $ShopeinstellungObject->url;

    $PostArray["tpl_betreiber_steuernummer"] = $ShopeinstellungObject->str_nr;
    $PostArray["tpl_betreiber_ustid"] = $ShopeinstellungObject->ust;
    $PostArray["tpl_betreiber_bank"] = $ShopeinstellungObject->bank;
    $PostArray["tpl_betreiber_blz"] = $ShopeinstellungObject->blz;
    $PostArray["tpl_betreiber_konto"] = $ShopeinstellungObject->konto;
    $PostArray["tpl_betreiber_iban"] = $ShopeinstellungObject->iban;
    $PostArray["tpl_betreiber_bic"] = $ShopeinstellungObject->bic;
    $PostArray["tpl_betreiber_handelsregister"] = $ShopeinstellungObject->handelsregister;
    $PostArray["tpl_trustedshop_id"] = $TrustedShopID;
    $PostArray["tpl_trustedshop_image_link"] = IMAGEPFAD . "bewerten_de.gif";

    // Kundendaten
    $PostArray["tpl_kunde_firma"] = $BestellObject->firma;
    $PostArray["tpl_kunde_anrede"] = $BestellObject->anrede;
    $PostArray["tpl_kunde_vorname"] = $BestellObject->vorname;
    $PostArray["tpl_kunde_nachname"] = $BestellObject->nachname;
    $PostArray["tpl_kunde_strasse"] = $BestellObject->strasse;
    $PostArray["tpl_kunde_hausnummer"] = $BestellObject->hausnummer;
    if($BestellObject->bundesstaat) {
        $bundesstaat = GetBundesstaat($BestellObject->bundesstaat);
    }
    $PostArray["tpl_kunde_plz"] = ($bundesstaat?$bundesstaat->code . ' ':'') . $BestellObject->plz;
    $PostArray["tpl_kunde_ort"] = $BestellObject->ort;
    $PostArray["tpl_kunde_land"] = $BestellObject->land;

    $PostArray["tpl_kunde_lieferung"] = $BestellObject->wohin_liefern;
    $PostArray["tpl_kunde_la_firma"] = $BestellObject->la_firma;
    $PostArray["tpl_kunde_la_anrede"] = $BestellObject->la_anrede;
    $PostArray["tpl_kunde_la_vorname"] = $BestellObject->la_vorname;
    $PostArray["tpl_kunde_la_nachname"] = $BestellObject->la_nachname;
    $PostArray["tpl_kunde_la_strasse"] = $BestellObject->la_strasse;
    $PostArray["tpl_kunde_la_hausnummer"] = $BestellObject->la_hausnummer;
    if($BestellObject->la_bundesstaat) {
        $la_bundesstaat = GetBundesstaat($BestellObject->la_bundesstaat);
    }
    $PostArray["tpl_kunde_la_plz"] = ($la_bundesstaat?$la_bundesstaat->code . ' ':'') . $BestellObject->la_plz;
    $PostArray["tpl_kunde_la_ort"] = $BestellObject->la_ort;
    $PostArray["tpl_kunde_la_land"] = $BestellObject->la_land;
    $PostArray["tpl_kunde_email"] = $BestellObject->email;

    // Angaben zu der Bestellung
    $PostArray["tpl_kundennummer"] = $BestellObject->kunden_id;
    $PostArray["tpl_auftragsnummer"] = $BestellObject->auftragsnummer;
    $PostArray["tpl_auftragsdatum"] = $BestellObject->auftragsdatum_format;
    $PostArray["tpl_zahlungsart_name"] = $BestellObject->zahlungsart_name;
    $PostArray["tpl_zahlungsart_beschreibung"] = $BestellObject->zahl_beschreibung;
    $PostArray["tpl_waehrung"] = $WaehrungObject->symbol;


    // Warenkorb
    foreach ($BestellObject->warenkorbdataarray["warenkorbarray"] as $Warenkorkey => $Warenkorbdata) {
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][artikel_id]"] = $Warenkorbdata["artikel_id"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][artikel_nr]"] = $Warenkorbdata["artikel_nr"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][artikel_name]"] = $Warenkorbdata["artikel_name"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante1]"] = $Warenkorbdata["variante1"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante2]"] = $Warenkorbdata["variante2"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante3]"] = $Warenkorbdata["variante3"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][variante4]"] = $Warenkorbdata["variante4"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][mwst_format]"] = $Warenkorbdata["mwst_format"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][menge]"] = $Warenkorbdata["menge"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][preis_format_einfach]"] = $Warenkorbdata["preis_format_einfach"];
        $PostArray["tpl_warenkorbarray[" . $Warenkorkey . "][summe_format_einfach]"] = $Warenkorbdata["summe_format_einfach"];
    }

    // MwSt
    if ($BestellObject->warenkorbdataarray["mwstarray"]) {
        foreach ($BestellObject->warenkorbdataarray["mwstarray"] as $MwStkey => $MwStdata) {
            $PostArray["tpl_mwstarray[" . $MwStkey . "][text]"] = $MwStdata["text"];
            $PostArray["tpl_mwstarray[" . $MwStkey . "][mwstsatz_format]"] = $MwStdata["mwstsatz_format"];
            $PostArray["tpl_mwstarray[" . $MwStkey . "][summe_format_einfach]"] = $MwStdata["summe_format_einfach"];
        }
    }


    // Warenwert
    $PostArray["tpl_warenwert"] = $BestellObject->warenwert_format_einfach;
    $PostArray["tpl_warenwert_text"] = $BestellObject->warenwert_text;

    // MwSt-Satz f�r Versandart
    $PostArray["tpl_versandmwst"] = $BestellObject->versand_mwst_format;

    // Zahlungsart
    $PostArray["tpl_zahlungsart_name"] = $BestellObject->zahlungsart_name;
    $PostArray["tpl_zahlungsart_preis"] = $BestellObject->zahlungsart_preis_format_einfach;

    // Versandart
    $PostArray["tpl_versandart_name"] = $BestellObject->versandart_name;
    $PostArray["tpl_versandart_preis"] = $BestellObject->versandart_preis_format_einfach;

    // Rabatt
    $PostArray["tpl_rabatt_name"] = $BestellObject->rabatt_name;
    $PostArray["tpl_rabatt_prozent"] = $BestellObject->rabatt_prozent;
    $PostArray["tpl_rabatt_betrag"] = $BestellObject->rabatt_betrag_format_einfach;

    // Gutschein
    $PostArray["tpl_gutschein_text"] = $BestellObject->gutschein_text;
    $PostArray["tpl_gutschein_betrag"] = $BestellObject->gutschein_betrag_format_einfach;

    // Kundenkonto
    $PostArray["tpl_kundenkonto_betrag"] = $BestellObject->kundenkonto_format_einfach;

    // Summen
    $PostArray["tpl_gesamtsumme"] = $BestellObject->gesamtsumme_format_einfach = number_format($BestellObject->gesamtsumme, 2, ",", ".");
    $PostArray["tpl_gesamtsumme_text"] = $BestellObject->gesamtsumme_text;
    $PostArray["tpl_gesamtsumme_alternativ"] = $BestellObject->gesamtsumme_alternativ_format_einfach;
    $PostArray["tpl_gesamtsumme_alternativ_text"] = $BestellObject->gesamtsumme_alternativ_text;

    // Kundenbemerkung
    $PostArray["tpl_kundenbemerkung"] = $BestellObject->kundenbemerkung;

    $PostArray['str_bewertungsAnfrageMailText'] = $str_bewertungsAnfrageMailText;
    if($BewertungsGutscheineAktiv)
        $PostArray['str_bewertungsAnfrageMailTextDankeschoen'] = $str_bewertungsAnfrageMailTextDankeschoen;
    $PostArray['str_bewertungsAnfrageMailText2'] = $str_bewertungsAnfrageMailText2;
    $PostArray['tpl_anrede'] = $KundenObject->briefanrede;
    $PostArray['str_jetzt_bewerten'] = $str_jetzt_bewerten;

    // ********************************************************************************
    // ** Template f�r Kunden einlesen                                               **
    // ********************************************************************************

    // Verbindung �ber CURL mit dem Template herstellen
    $CurlHandler = curl_init();

//        echo "<pre>";
//        var_dump($PostArray);
//        echo "</pre>";

    // Template einlesen
    curl_setopt($CurlHandler, CURLOPT_POST, 1);
    curl_setopt($CurlHandler, CURLOPT_POSTFIELDS, $PostArray);
    curl_setopt($CurlHandler, CURLOPT_URL, $TemplateFile);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($CurlHandler, CURLOPT_USERAGENT, "");
    curl_setopt($CurlHandler, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($CurlHandler, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($CurlHandler, CURLOPT_USERPWD,"thomas:blubber");

//        echo $TemplateFile;

    $ReturnString = curl_exec($CurlHandler);

//            	echo "<pre>";
//            	echo ($ReturnString);
//            	echo "</pre>";

    curl_close($CurlHandler);


    // ********************************************************************************
    // ** Mail an Kunden versenden                                                   **
    // ********************************************************************************

    $Mail = new htmlMimeMail();
    $Mail->setHtmlCharset(CHARSET);
    $Mail->setTextCharset(CHARSET);
    $Mail->setHeadCharset(CHARSET);

    if ($KundenObject->mailtyp == 1) {
        $Mail->setHtml($ReturnString);
    } else {
        $Mail->setText($ReturnString);
    }

    if ($ShopeinstellungObject->url) {
        $Mail->setSubject(str_replace("http://", "", $ShopeinstellungObject->url) . " - " . $mail_subject_bewertungsanfrage);
    } elseif ($ShopeinstellungObject->firmen_titel) {
        $Mail->setSubject($ShopeinstellungObject->firmen_titel . " - " . $mail_subject_bewertungsanfrage);
    } else {
        $Mail->setSubject($ShopeinstellungObject->name . " - " . $mail_subject_bewertungsanfrage);
    }

    $Mail->setFrom($ShopeinstellungObject->email);
    $Result = $Mail->send(array($BestellObject->email));

}

// Ein einfaches Logfile für die ausgehenden Mails zum nachvollziehen

function MailLog($ReturnString, $HtmlMimeMailObject, $MailTemplateBereich, $BestellObject, $KundenObject, $Email = "") {
	
	// MailLogVerzeichnis bestimmen
    $MailLogVerzeichnisArray = GetMailLogVerzeichnisArray();
    $MailLogVerzeichnis= $MailLogVerzeichnisArray[$MailTemplateBereich-1];
    
	if ($BestellObject) {
		$EmailTo = $BestellObject->email; 
		$KundenID = $BestellObject->kunden_id; 
	} elseif ($KundenObject) {
        $EmailTo = $KundenObject->email;
        $KundenID = $KundenObject->id;
	} else {
		$EmailTo = $Email;
		$KundenID = 0;
	}
	
	$mail_msg = "<table cellpadding=\"0\" cellspacing=\"0\" width=\"650\" align=\"center\" border=\"0\"><tr><td>";
	$mail_msg .= "<strong>Mail Log</strong>";
	$mail_msg .= "</td></tr><tr><td>";
	$mail_msg .= "MIME-Version: " . $HtmlMimeMailObject->headers["MIME-Version"] . "<br />";
	$mail_msg .= "From: " . $HtmlMimeMailObject->headers["From"] . "<br />";
	$mail_msg .= "To: " . $EmailTo . "<br />";
	$mail_msg .= "Content-Type: " . $HtmlMimeMailObject->headers["Content-Type"] . "<br />";
	$mail_msg .= "Content-Transfer-Encoding: " . $HtmlMimeMailObject->headers["Content-Transfer-Encoding"] . "<br />";
	$mail_msg .= "Message-ID: " . $HtmlMimeMailObject->headers["Message-ID"] . "<br />";
	$mail_msg .= "Subject: " . $HtmlMimeMailObject->headers["Subject"] . "<br />";
	$mail_msg .= "</td></tr></table><br />";
	$mail_msg .= $ReturnString;
	
	$FileDatum = date("d_m_y_H_i_s");
	$errorlog_filename = $FileDatum . "_" . $KundenID . ".html";
	
	if(!file_exists(DATEIPFAD . "admin/data/logs/mails/")) {
		mkdir(DATEIPFAD . "admin/data/logs/mails/", 0777, TRUE);
	}
	
	if(!file_exists(DATEIPFAD . "admin/data/logs/mails/" . $MailLogVerzeichnis . "/")) {
		mkdir(DATEIPFAD . "admin/data/logs/mails/" . $MailLogVerzeichnis . "/", 0777, TRUE);
	}
	
	$fh = fopen(DATEIPFAD . "admin/data/logs/mails/" . $MailLogVerzeichnis . "/" . $errorlog_filename, 'a');
	//fwrite($fh, "\n" . date("d.m.Y H:i:s") . "\n");
	$mail_msg = str_replace($KundenObject->password_cleartext, "xxxxxx", $mail_msg);
	fwrite($fh, $mail_msg);
	fclose($fh);
	
	
	// Speichern des Logs in die Datenbank
	
	// Bestellung speichern
	$SQLString = "INSERT INTO " . TABLE_MAIL_LOG . " SET ";
	$SQLString .= TABLE_MAIL_LOG . ".e_mail = '" . $EmailTo . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".bestell_id = '" . $BestellObject->id . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".session = '" . $BestellObject->session . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".kunden_id = '" . $KundenID . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".maildatum = NOW(), ";
	$SQLString .= TABLE_MAIL_LOG . ".datei = '" . $errorlog_filename . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".typ = '" . $MailTemplateBereich . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".betreff = '" . $HtmlMimeMailObject->headers["Subject"] . "', ";
	$SQLString .= TABLE_MAIL_LOG . ".ip = '" . getenv("REMOTE_ADDR") . "'";
	
	//echo $SQLString;
	
	$MySQLQueryReference = errorlogged_mysql_query($SQLString);

	$MailLogID = mysql_insert_id();

}

function GetMailLogVerzeichnisArray() {
	
	$MailLogVerzeichnisArray = array();
	$MailLogVerzeichnisArray[0] = "versandte_bestellungen";
	$MailLogVerzeichnisArray[1] = "bestelleingang_kunde";
	$MailLogVerzeichnisArray[2] = "bestelleingang_shopbetreiber";	
	$MailLogVerzeichnisArray[3] = "mahnungen";	
	$MailLogVerzeichnisArray[4] = "registrierung";	
	$MailLogVerzeichnisArray[5] = "passwort_vergessen";	
	$MailLogVerzeichnisArray[6] = "newsletter_anmeldung";	
	$MailLogVerzeichnisArray[7] = "zahlungserinnerungen";	
		
	return $MailLogVerzeichnisArray;
	
}

