+ Antworten
Ergebnis 1 bis 8 von 8

Thema: Bestellstatus Beschreibung als HTML E-Mail versenden

  1. #1
    Neu an Board
    Registriert seit
    15.11.2008
    Beiträge
    85
    Bedankte sich
    10
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard Bestellstatus Beschreibung als HTML E-Mail versenden

    Hallo!

    In diesem Thread http://www.joomlaportal.de/e-commerc...ellstatus.html steht, wie man den Beschreibungstext zusätzlich zum Bestellstatus mit in der E-Mail verschicken kann.

    Für mich wäre es wichtig, auch einen Link darin einzufügen. Leider wird die Mail aber nicht als HTML Mail versandt und es nimmt mir immer alle Tags raus.

    Ich habe leider keine Ahnung, wie man das umschreiben könnte, damit dies als HTML Mail versendet wird...

    PHP-Code:
        /**
         * notifies the customer that the Order Status has been changed
         *
         * @param array $d
         */
        
    function notify_customer( &$d ){

            global  
    $sess$VM_LANG$vmLogger;

            
    $url SECUREURL."index.php?option=com_virtuemart&page=account.order_details&order_id=".urlencode($d["order_id"]).'&Itemid='.$sess->getShopItemid();

            
    $db = new ps_DB;
            
    $dbv = new ps_DB;
            
    $q "SELECT vendor_name,contact_email FROM #__{vm}_vendor ";
            
    $q .= "WHERE vendor_id='".$_SESSION['ps_vendor_id']."'";
            
    $dbv->query($q);
            
    $dbv->next_record();

            
    /**Hack für das Mitsenden der Bestellstatusbeschreibung, sofern diese nicht leer ist. T.G.**/

            
    $q "SELECT first_name,last_name,user_email,order_status_name,order_status_description FROM #__{vm}_order_user_info,#__{vm}_orders,#__{vm}_order_status ";
            
    $q .= "WHERE #__{vm}_orders.order_id = '".$db->getEscaped($d["order_id"])."' ";
            
    $q .= "AND #__{vm}_orders.user_id = #__{vm}_order_user_info.user_id ";
            
    $q .= "AND #__{vm}_orders.order_id = #__{vm}_order_user_info.order_id ";
            
    $q .= "AND order_status = order_status_code ";
            
    $db->query($q);
            
    $db->next_record();

            
    // MAIL BODY
            
    $message $VM_LANG->_('HI',false) .' '$db->f("first_name") . ($db->f("middle_name")?' '.$db->f("middle_name") : '' ). ' ' $db->f("last_name") . ",\n\n";
            
    $message .= $VM_LANG->_('PHPSHOP_ORDER_STATUS_CHANGE_SEND_MSG_1',false)."\n\n";
    if( 
    $db->f("order_status_description") == '' ) {

            if( !empty(
    $d['include_comment']) && !empty($d['order_comment']) ) {
                
    $message .= $VM_LANG->_('PHPSHOP_ORDER_HISTORY_COMMENT_EMAIL',false).":\n";
                
    $message .= $d['order_comment'];
                
    $message .= "\n____________________________________________________________\n\n";
            }

            
    $message .= $VM_LANG->_('PHPSHOP_ORDER_STATUS_CHANGE_SEND_MSG_2',false)."\n";
            
    $message .= "____________________________________________________________\n\n";
            
    $message .= $db->f("order_status_name");

            if( 
    VM_REGISTRATION_TYPE != 'NO_REGISTRATION' ) {
                
    $message .= "\n____________________________________________________________\n\n";
                
    $message .= $VM_LANG->_('PHPSHOP_ORDER_STATUS_CHANGE_SEND_MSG_3',false)."\n";
                
    $message .= $url;
            }
            
    $message .= "\n\n____________________________________________________________\n\n";
    }
    else {
            
    $message .= "::: " $db->f("order_status_name") . " :::\n\n";
            
    $message .= $db->f("order_status_description") . "\n\n";
        }
            
    $message .= ":::::::::::::::::::::::::::::::::::::\n\n";
            
    $message .= URL."\n";
            
    $message .= $dbv->f("contact_email");

            
    /**Ende Hack für das Mitsenden der Bestellstatusbeschreibung. T.G.**/

            
    $message str_replace"{order_id}"$d["order_id"], $message );

            
    $mail_Body html_entity_decode($message);
            
    $mail_Subject str_replace"{order_id}"$d["order_id"], $VM_LANG->_('PHPSHOP_ORDER_STATUS_CHANGE_SEND_SUBJ',false));
            
            
            
    $result vmMail$dbv->f("contact_email"),  $dbv->f("vendor_name"), 
                        
    $db->f("user_email"), $mail_Subject$mail_Body'' );
            
            
    /* Send the email */
            
    if ($result) {
                
    $vmLogger->info$VM_LANG->_('PHPSHOP_DOWNLOADS_SEND_MSG',false). " "$db->f("first_name") . " " $db->f("last_name") . ", ".$db->f("user_email") );
            }
            else {
                
    $vmLogger->warning$VM_LANG->_('PHPSHOP_DOWNLOADS_ERR_SEND',false).' '$db->f("first_name") . " " $db->f("last_name") . ", ".$db->f("user_email")." ("$result->ErrorInfo.")" );
            }
        } 
    Dies ist der entsprechende Code, durch welchen die Mail versandt wird.

    Kann mir da vielleicht jemand helfen?

  2. #2
    Neu an Board
    Registriert seit
    08.01.2007
    Beiträge
    54
    Bedankte sich
    1
    Erhielt 10 Danksagungen
    in 10 Beiträgen

    Standard

    hallo pixelprinzessin,
    die Tags werden in dieser Zeile
    $mail_Body = html_entity_decode($message);
    rausgefiltert.
    sieha auch unter http://php.net/manual/de/function.ht...ity-decode.php
    Gruß Thomas

    www.pixellaeufer.de

  3. #3
    Neu an Board
    Registriert seit
    15.11.2008
    Beiträge
    85
    Bedankte sich
    10
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard

    huhu! danke für deine schnelle Anwtort.

    Ich habe die Zeile nun mal in $mail_Body = htmlentities($message); geändert. Leider bringt das nicht viel, außer dass es mir mein ä komisch anzeigt Aber mein Link ist trotzdem nicht da. Komischerweise wird der Link aber auch im JoomlaEditor dort wieder rausgelöscht, wenn ich auf bearbeiten klicke. Da ist der a-Tag auch wieder weg. Also kann das auch am Editor liegen? Habe aber auch den Editor ausgeschalten und den HTML-Modus genutzt. Hmm.... jemand eine Idee?

    LG Denise

  4. #4
    Neu an Board
    Registriert seit
    08.01.2007
    Beiträge
    54
    Bedankte sich
    1
    Erhielt 10 Danksagungen
    in 10 Beiträgen

    Standard

    Hi, hast Du schon mal im VM nachgesehn ob man die Mailfunktion umschalten kann? lt. Beschreibung sollen HTML Mails möglich sein. Vielleicht muss hier noch etwas im VM umkonfiguriert werden.
    Gruß Thomas

    www.pixellaeufer.de

  5. #5
    Neu an Board
    Registriert seit
    15.11.2008
    Beiträge
    85
    Bedankte sich
    10
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard

    Ja, man kann da was einstellen, und das ist auch auf HTML EMail, allerdings geht es da um die Bestellungen.

    Die Bestellbeschreibung wird normalerweise auch nicht mit in die Mail geschrieben, nur durch den Hack aus dem anderen Thread wird das veranlasst. Und da es ja eigentlich nur eine Beschreibung ist nimmt wohl schon der Editor die Tags wieder raus... Also müsste man vielleicht mal in der Datei schauen... Wenn man die erstmal findet ^^

    LG

  6. #6
    Neu an Board
    Registriert seit
    08.01.2007
    Beiträge
    54
    Bedankte sich
    1
    Erhielt 10 Danksagungen
    in 10 Beiträgen

    Standard

    such doch nach der Funkeion vmMail(... ich denke das es dort passiert
    Gruß Thomas

    www.pixellaeufer.de

  7. #7
    Neu an Board
    Registriert seit
    15.11.2008
    Beiträge
    85
    Bedankte sich
    10
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard

    Der Editor wird für den Bestellstatus so aufgerufen:

    PHP-Code:
    <?php editorArea'order_status_description'$db->sf("order_status_description"), 'order_status_description''100%''300''55''25' ); ?>
    und bei der Produktbeschreibung in der product.product_form.php wird sie so aufgerufen:

    PHP-Code:
    <?php
            editorArea
    'editor1'htmlspecialchars$db->sf("product_desc"), ENT_QUOTES ), 'product_desc''100%''300''55''25' )
        
    ?>
    also habe ich das bei der bestellbeschreibung auch so probiert, aber es löscht die tags immernoch raus... aber ich denke mal, ich bin auf dem richtigen weg irgendwie...

  8. #8
    War schon öfter hier
    Registriert seit
    18.04.2009
    Ort
    Bautzen
    Alter
    28
    Beiträge
    129
    Bedankte sich
    20
    Erhielt 36 Danksagungen
    in 35 Beiträgen

    Standard

    Guten Morgen,

    es wäre schön, wenn du in dem anderen Thread wenigstens ein Vermerk gepostet hättest, dass du das Problem in einem neuen Thread weiter verfolgen willst.
    Und ihr habt recht, der Editor filter die html - Tags heraus. Ich denke, es wird euch nur schwer gelingen, das Ganze auf html - eMail umzustellen, ohne es in die php - Datei als Hack zu schreiben.
    Grüße

    Tobias

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein