Hallo,
da es bei minem Problem um zwei Module geht, schreibe ich das mal hier rein.
Ich habe versucht, PDF-Rechnung 3 und COWOA zu kombinieren. Es geht dabei speziell um die Datei root/XXXXXXX/orders.php
Ich habe mit WinMerge die beiden Dateien der Downloads kombiniert und auch eine kleine eigene Änderung eingebracht (Rechnungsnummer, ist aber unwichtig, da es ohne auch das Problem gibt). Es muss mir irgendwo ein Fehler unterlaufen sein, aber ich weiß einfach nicht wo. Ich habe
zuerst die COWOA-orders.php genommen und in diese alles aus der PDF3-orders.php eingefügt.
Ich habe die Datei an diesen Beitrag angehängt, da Sie zum posten zu lange wäre.
Also nun zum Problem: Wenn ich bei einer Bestellung den Status ändere und dabei festlege, dass eine Mail versendet werden soll, wird $customer_notified auf 0 gesetzt, also wie wenn ich als Option "kein Email" auswähle. Wenn ich "verstecken" (-1) auswähle klappt alles wunderbar. Also ist das Problem, dass $customer_notified nie auf 1 gesetzt wird.
Das kuriose dabei ist aber, dass dieses Problem nur bei Bestellungen von angemeldeten Kunden auftritt. Also nicht bei COWOA-Kunden.
Ich vermute ja, dass ich irgendwo eine Klammer vergessen habe, aber ich finde nicht wo.
Kann sich das jemand mal anschauen?
Vielen Dank,
Niklas
Update1:
Habe mitlerweile das System der Datei verstanden. Es fehlen keine Klammern. Der Code ist korrekt. Das Problem ist, dass
$check_status->fields['COWOA_order'] == 1
nicht war ist und das System deswegen nicht in die Klammer springt. Werde nun nachforschen, warum das so ist.
Lösung:
Das hier unter den if-Block if ($check_status->fields['COWOA_order'] == 1), der sich wiederum im if-Block if (COWOA_ORDER_STATUS == 'true') befindet, einfügen, da es ja auch die Situation gibt: COWOA-Anmeldung aktiviert aber auch richtige Anmeldung möglich. Deswegen gibt es Bestellungen beider Arten.
da es bei minem Problem um zwei Module geht, schreibe ich das mal hier rein.
Ich habe versucht, PDF-Rechnung 3 und COWOA zu kombinieren. Es geht dabei speziell um die Datei root/XXXXXXX/orders.php
Ich habe mit WinMerge die beiden Dateien der Downloads kombiniert und auch eine kleine eigene Änderung eingebracht (Rechnungsnummer, ist aber unwichtig, da es ohne auch das Problem gibt). Es muss mir irgendwo ein Fehler unterlaufen sein, aber ich weiß einfach nicht wo. Ich habe
zuerst die COWOA-orders.php genommen und in diese alles aus der PDF3-orders.php eingefügt.
Ich habe die Datei an diesen Beitrag angehängt, da Sie zum posten zu lange wäre.
Also nun zum Problem: Wenn ich bei einer Bestellung den Status ändere und dabei festlege, dass eine Mail versendet werden soll, wird $customer_notified auf 0 gesetzt, also wie wenn ich als Option "kein Email" auswähle. Wenn ich "verstecken" (-1) auswähle klappt alles wunderbar. Also ist das Problem, dass $customer_notified nie auf 1 gesetzt wird.
Das kuriose dabei ist aber, dass dieses Problem nur bei Bestellungen von angemeldeten Kunden auftritt. Also nicht bei COWOA-Kunden.
Ich vermute ja, dass ich irgendwo eine Klammer vergessen habe, aber ich finde nicht wo.
Kann sich das jemand mal anschauen?
Vielen Dank,
Niklas
Update1:
Habe mitlerweile das System der Datei verstanden. Es fehlen keine Klammern. Der Code ist korrekt. Das Problem ist, dass
$check_status->fields['COWOA_order'] == 1
nicht war ist und das System deswegen nicht in die Klammer springt. Werde nun nachforschen, warum das so ist.
Lösung:
Das hier unter den if-Block if ($check_status->fields['COWOA_order'] == 1), der sich wiederum im if-Block if (COWOA_ORDER_STATUS == 'true') befindet, einfügen, da es ja auch die Situation gibt: COWOA-Anmeldung aktiviert aber auch richtige Anmeldung möglich. Deswegen gibt es Bestellungen beider Arten.
PHP-Code:
if ($check_status->fields['COWOA_order'] != 1) {
$message =
EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID . "\n\n" .
EMAIL_TEXT_INVOICE_URL . ' ' . zen_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') . "\n\n" .
EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']) . "\n\n" .
strip_tags($notify_comments) .
EMAIL_TEXT_STATUS_UPDATED . sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ) .
EMAIL_TEXT_STATUS_PLEASE_REPLY;
$html_msg['EMAIL_CUSTOMERS_NAME'] = $check_status->fields['customers_name']; //+ " false & ungleich 1";
$html_msg['EMAIL_TEXT_ORDER_NUMBER'] = EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID;
$html_msg['EMAIL_TEXT_INVOICE_URL'] = '<a href="' . zen_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') .'">'.str_replace(':','',EMAIL_TEXT_INVOICE_URL).'</a>';
$html_msg['EMAIL_TEXT_DATE_ORDERED'] = EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']);
$html_msg['EMAIL_TEXT_STATUS_COMMENTS'] = nl2br($notify_comments);
$html_msg['EMAIL_TEXT_STATUS_UPDATED'] = str_replace('\n','', EMAIL_TEXT_STATUS_UPDATED);
$html_msg['EMAIL_TEXT_STATUS_LABEL'] = str_replace('\n','', sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ));
$html_msg['EMAIL_TEXT_NEW_STATUS'] = $orders_status_array[$status];
$html_msg['EMAIL_TEXT_STATUS_PLEASE_REPLY'] = str_replace('\n','', EMAIL_TEXT_STATUS_PLEASE_REPLY);
zen_mail($check_status->fields['customers_name'], $check_status->fields['customers_email_address'], EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status');
$customer_notified = '1';
}