problem z sendOrderToClient_v0.6

Pyzdra

No avatar

2009-01-24 12:41

Pracuje na Quick Cart 3.1. Chciałbym dodać możliowść wysyłania e-maila do kleinta z potwierdzeniem zamówienia. Postępowałem zgodnie z wytycznymi ale coś jest nie tak z wpisem w pliku en w katalogu lang. Czy możecie mi podpowiedzieć czy umieszczny przeze mnie fragment kodu w tym pliku ma prawidłową składnię bo po wprowadzeniu kodu zamieszczonego poniżej wyskakują błedy na stronie i w adminie i wszytko sie rozjeżdza. Oto wycinek kodu:
<?php
// plugins?>

$lang['Order_customer_info_title'] = "Thank You for ordering our products. Order id: ";
$lang['Order_customer_personal'] = "Your personal data";
$lang['Order_customer_products'] = "Ordered products";
$lang['Order_customer_delivery'] = "Delivery and payment";
$lang['Order_customer_email_head'] = "";
$lang['Order_customer_email_foot'] = "";

» Quick.Cart v3.x

treewood (OpenSolution)

Avatar: treewood

2009-01-26 08:31

Langi miales wstawic miedzy:
<?php
// plugins
// TUTAJ WSTAW TE LANGI
?>

a nie za tym ?>

Pyzdra

No avatar

2009-01-27 21:15

Dziękuje za podpowiedź. Ale mam kolejne pytanie. W adminie w jezyku en pojawiły mi sie nowe pola. Moge je teraz zmieniac i po zapisaniu nie wywala mi sklepu ale w wiadomości e-mail do klienta mam tylko nastepujace informacje:
- w temacie wiadomości sam nr zamowienia
- natomiast w treści wiadomości tylko dane zamawiajacego, rodzaj produktu, platność i koszt wysyłki bez zadnej treści jaką umieściłem w Order_customer_email_head i Order_customer_email_foot. Czy w pozostałych plikach tj. lang/pl i lang/1 tez muszę przenieść skladnie z pliku lang/en ? Już próbowałem ale wywala mi admina i strone sklepu. W tej chwili w wchodząc w języki z poziomu admina mam jezyku en o 6 pól więcej niż w jeżyku pl. Co należy zrobić żeby w treści emaila oprócz danych podstawowych pokazyława się treść np. Dziękujemy Państwu za zlożenie zamóweinia..."?

treewood (OpenSolution)

Avatar: treewood

2009-01-28 07:40

edytuj templates/orders_print.tpl i w bloku CUSTOMER_ORDER_EMAIL_BODY sproboj wstawic gdzies wlasnie te zmienne
$lang['Order_customer_email_head'] i $lang['Order_customer_email_foot']

Pyzdra

No avatar

2009-01-29 22:43

Te zmienne znajdują sie w pliku templates/orders_print.tpl w bloku CUSTOMER_ORDER_EMAIL_BODY. Jeszcze raz wstawiam wstawione przeze mnie wpisy w poszczególnych plikach. Może ktoś dopatrzy się błedu. Proszę o szczegółowe sprawdzenie pliku lang/en i w przypadku błedu wklejenie całej prawidłowej składni. Teraz jest ok choć wydaje mi bo jak pisałem zmieniał słowa i po zapisaniu ni wywala mi sklepu. Jak postąpiłem zgodnie z Twoją instrukcją to nie wrzucał mi do jezyka 1 lini tzn. $lang['Order_customer_info_title'] i po zapisaniu zmian po przetłumaczeniu wyskakiwał bład admina.
Oto moje pliki:
1) templates/orders_print.tpl
<!-- BEGIN ORDER_EMAIL_LIST -->|n|- $aData[sName] - $aData[sPrice] $config[currency_symbol] * $aData[iQuantity] = $aData[sSummary] $config[currency_symbol]<!-- END ORDER_EMAIL_LIST -->
<!-- BEGIN ORDER_EMAIL_HEAD --><!-- END ORDER_EMAIL_HEAD -->
<!-- BEGIN ORDER_EMAIL_FOOT --><!-- END ORDER_EMAIL_FOOT -->


<!-- BEGIN CUSTOMER_ORDER_EMAIL_TITLE -->$lang[Order_customer_info_title]$aData[iOrder]<!-- END CUSTOMER_ORDER_EMAIL_TITLE -->
<!-- BEGIN CUSTOMER_ORDER_EMAIL_BODY -->
$lang[Order_customer_email_head]
------------------------
$lang[Order_customer_personal]
------------------------
$aData[sFirstName] $aData[sLastName]
$aData[sCompanyName]
$aData[sStreet]
$aData[sZipCode] $aData[sCity]
$aData[sPhone]
$aData[sEmail]

------------------------
$lang[Order_customer_products]
------------------------$aData[sProducts]

------------------------
$lang[Order_customer_delivery]
------------------------
$aData[sCarrierName] ($aData[sPaymentName]) = $aData[sPaymentCarrierPrice] $config[currency_symbol]

$lang[Summary_cost]: $aData[sOrderSummary] $config[currency_symbol]
------------------------
$lang[Order_customer_email_foot]
<!-- END CUSTOMER_ORDER_EMAIL_BODY -->

<!-- BEGIN CUSTOMER_ORDER_EMAIL_LIST -->|n|- $aData[sName] - $lang[Price]: $aData[sPrice] $config[currency_symbol], $lang[Quantity]: $aData[iQuantity], $lang[Summary]: $aData[sSummary] $config[currency_symbol]<!-- END CUSTOMER_ORDER_EMAIL_LIST -->
<!-- BEGIN CUSTOMER_ORDER_EMAIL_HEAD --><!-- END CUSTOMER_ORDER_EMAIL_HEAD -->
<!-- BEGIN CUSTOMER_ORDER_EMAIL_FOOT --><!-- END CUSTOMER_ORDER_EMAIL_FOOT -->

2) lang/en.php
<?php
// plugins

$lang['Order_customer_info_title'] = "Thank You for ordering our products. Order id: ";
$lang['Order_customer_personal'] = "Your personal ";
$lang['Order_customer_products'] = "Ordered ";
$lang['Order_customer_delivery'] = "Delivery ";
$lang['Order_customer_email_head'] = "";
$lang['Order_customer_email_foot'] = "";?>

3) templates/orders.php
$oTpl->setVariables( 'aData', $aData );
$aSend['sMailContent'] = ereg_replace( '\|n\|', "\n", $oTpl->tbHtml( $sFile, 'ORDER_EMAIL_BODY' ) );
$aSend['sTopic'] = $oTpl->tbHtml( $sFile, 'ORDER_EMAIL_TITLE' );
$aSend['sSender']= $GLOBALS['config']['orders_email'];
sendEmail( $aSend, null, $GLOBALS['config']['orders_email'] );
$this->sendEmailToCustomerWithOrderDetails( $sFile, $iOrder );


} // end function sendEmailWithOrderDetails


/**
* Send email to customer with order details
* @return void
* @param string $sFile
* @param int $iOrder
*/
function sendEmailToCustomerWithOrderDetails( $sFile, $iOrder ){
$oTpl =& TplParser::getInstance( );
$content = null;
$aData = $this->throwOrder( $iOrder );

$aData['sProducts'] = $this->listProducts( $sFile, $iOrder, 'CUSTOMER_ORDER_EMAIL_' );
$aData['sOrderSummary'] = $this->aOrders[$iOrder]['sOrderSummary'];

$oTpl->setVariables( 'aData', $aData );
$aSend['sMailContent'] = ereg_replace( '\|n\|', "\n", $oTpl->tbHtml( $sFile, 'CUSTOMER_ORDER_EMAIL_BODY' ) );
$aSend['sTopic'] = $oTpl->tbHtml( $sFile, 'CUSTOMER_ORDER_EMAIL_TITLE' );
$aSend['sSender']= $GLOBALS['config']['orders_email'];
sendEmail( $aSend, null, $aData['sEmail'] );
} // end function sendEmailToCustomerWithOrderDetails



};

treewood (OpenSolution)

Avatar: treewood

2009-01-30 07:26

no dopatruje sie tego, ze w pliku lang te dwie zmienne nie maja wartosci wiec tez nic sie nie bedzie wyswietlac

Pyzdra

No avatar

2009-01-30 12:02

No tak nie mają ale jak w adminie dopisywałem w tych polach wartości, to po złożeniu zamówienia na testowego emaila też dochodziło zamówienie bez wstawionego w adminie tekstu.

treewood (OpenSolution)

Avatar: treewood

2009-02-02 07:47

Hmmm to bardzo dziwne a czy te wartosci jak wpisywales w adminie sie zapisywaly? Tzn czy po zapisie pozostawalo to co wstawiles?

Pyzdra

No avatar

2009-02-02 08:23

Tak. Wszystko zapisuje się bez problemu i pozostaje w adminie. Jednak po wysłaniu e-mail testowego prychodzi wiadomość tylko z informacjami dotyczącymi dqanych adresowych nabywcy, zamówionych produktach oraz sposobie wysyłki bez żadnej treści

Do góry
o nas | kontakt