123maverick456 Posted May 23, 2011 Share Posted May 23, 2011 Hi para master.. ada yang tau ga, gmn caranya menempatkan module "send to a friend" pada halaman produk?Tanpa redirect ke halaman lain.. jadi field friend's name and friend's email ada di halaman produk..saya mencoba untuk memindahkan code ini dari sentoafriend.tpl: {include file="$tpl_dir./errors.tpl"} {if isset($smarty.get.submited)} {l s='Your email has been sent successfully' mod='sendtoafriend'} {else} <form method="post" action="{$request_uri}"> {l s='Friend\'s name:' mod='sendtoafriend'} <input type="text" id="friend-name" name="name" value="{if isset($smarty.post.name)}{$smarty.post.name|escape:'htmlall':'UTF-8'|stripslashes}{/if}" /> {l s='Friend\'s email:' mod='sendtoafriend'} <input type="text" id="friend-address" name="email" value="{if isset($smarty.post.name)}{$smarty.post.email|escape:'htmlall'|stripslashes}{/if}" /> <input class="buttonCustom" style="padding: 2px 3px 2px 3px;" type="submit" name="submitAddtoafriend" value="{l s='send' mod='sendtoafriend'}" /> <input type="button" class="buttonCustomPrev" id="buttonTellCancel" value="Cancel" /> </form> {/if} memang field2nya itu tampil di product page, tapi ketika saya send, tidak ada konfirmasi dan email pun tidak sampai ke email tujuan...Tolong bantu donk, ada yang tau?Thanks Link to comment Share on other sites More sharing options...
gonebdg - webindoshop.com Posted May 23, 2011 Share Posted May 23, 2011 Ganti variabel "{$request_uri}" dengan "{$module_dir}sendtoafriend/sendtoafriend-form.php?id_product={$smarty.get.id_product|intval}"Sebelum : <form method="post" action="{$request_uri}"> Sesudah : <form method="post" action="{$module_dir}sendtoafriend/sendtoafriend-form.php?id_product={$smarty.get.id_product|intval}"> Link to comment Share on other sites More sharing options...
123maverick456 Posted May 23, 2011 Author Share Posted May 23, 2011 Yup that's works... tapi ujung2nya tetap di halaman baru.. ketika actionnya diarahkan ke sendtoafriend-form.php maka email terkirim namun halaman tidak kembali pada halaman product terakhir.. pada kasus ini, saya mencoba mengganti code pada sendtoafriend.php return $this->display(__FILE__, 'sendtoafriend.tpl'); menjadi: Tools::redirect($productLink); sehingga setelah email terkirim, maka halaman di redirect kembali ke halaman product terakhir.namun, yg jadi masalah adalah, tidak adanya notifikasi bahwa email berhasil terkirim.Code pada product.tpl: {if isset($smarty.get.submited)} {l s='Your email has been sent successfully' mod='sendtoafriend'} tidak memunculkan notifikasi apapun... bagaimana cara mengatasinya? Bingung jg nih Link to comment Share on other sites More sharing options...
gonebdg - webindoshop.com Posted May 24, 2011 Share Posted May 24, 2011 konfirmasi e-mail terkirim akan muncul bila variabel $smarty.get.submited ada nilainya.Tambahkan variabel ini kedalam link redirect Anda pada bagian pengiriman e-mail sukses {if isset($smarty.get.submited)} {l s='Your email has been sent successfully' mod='sendtoafriend'} {/if} Jadi yang diganti bukan baris script ini : return $this->display(__FILE__, 'sendtoafriend.tpl'); Tapi gantilah baris script yang ini : Tools::redirectLink(_MODULE_DIR_.$this->name.'/sendtoafriend-form.php?id_product='.$product->id.'&submited;'); Menjadi Tools::redirectLink(LINK_YANG_DIINGINKAN'&submited=1'); Link to comment Share on other sites More sharing options...
123maverick456 Posted May 24, 2011 Author Share Posted May 24, 2011 Ohh.. ternyata ada Tools::redirect lagi yah di bagian tengah code.Hmm jadi begitu yah cara smarty mengambil data submit, saya kira submit value itu merupakan data yang harus diberikan oleh file php kepada file tpl: $smarty.get.submited, ternyata itu adalah bentuk parsing variabel pada URL yah.. saya blm begitu mengerti smarty sebelumnya, langsung saja terjun ke prestashop.Oh iyah, jika saya hendak menambal field pada module send to a friend ini, gmn yah caranya? Misal saya mau menambahkan comment untuk dikirim kepada email yang dituju, tidak hanya berisi nama dan email saja, tapi ada field comment.yang sudah saya pelajari: ada folder mail di module "send to a friend", di module mail tersebut ada bbrp folder yg merepresentasikan bahasa2 yang disediakan. Didalamnya ada 2 files berupa text dan HTML... nah isi files tersebut adalah isi email yang akan dikirimkan.saya menemukan variabel2 seperti: {product}, {name}, dsbnah yang hendak saya tanyakan adalah,bagaimana assign variabel tersebut (saya hendak menambah variabel untuk comment)? --baik di tpl maupun phplalu apakah saya perlu mengubah smua files di folder mail tersebut?Thanks Link to comment Share on other sites More sharing options...
gonebdg - webindoshop.com Posted May 24, 2011 Share Posted May 24, 2011 Anda bisa mempelajarinya dari form contact-us File: # contact-form.php# contact-form.tpl# ContactController.php (PS v.1.4.x)Jika Anda sudah paham dasar2 cara kerja Form (html dan php), saya rasa tidak ada masalah untuk menambahkan field data yang diinginkan. Link to comment Share on other sites More sharing options...
123maverick456 Posted May 24, 2011 Author Share Posted May 24, 2011 Belum 100% bisa mengerti sistem mailnya.. tapi sudah berhasil menambahkan field baru untuk message-content di module send to a friend.ohyah, sapa tau momod bisa bantu trit saya yg ini: http://www.prestashop.com/forums/viewthread/110405/SOLVED -- Thanks banget Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now