fabrizio.brignone Posted October 24, 2014 Share Posted October 24, 2014 hi, i want to add an email form in every product's page. I think to edit the product.tpl but i can't see where i change the code. someone can help me? Link to comment Share on other sites More sharing options...
Roman0002 Posted October 24, 2014 Share Posted October 24, 2014 Hi, I do not understand .... To display email form in every products, you must copy you code(email form) to a product.tpl file. But when if you want edit product list you must copy your code on product-list.tpl or front product controller Link to comment Share on other sites More sharing options...
fabrizio.brignone Posted October 24, 2014 Author Share Posted October 24, 2014 where can i found the mail form code? from contact_form? Link to comment Share on other sites More sharing options...
DarthFener Posted October 24, 2014 Share Posted October 24, 2014 At line 270 there's a div element with this tag: <!-- pb-right-column--> this is the right column with all the information about the product. You must jump this div adding another one next to it, which will contain your email form. Ciao Link to comment Share on other sites More sharing options...
fabrizio.brignone Posted October 25, 2014 Author Share Posted October 25, 2014 (edited) Ok, i have copied che code from the contact-form.tpl but i have a problem....the variable isn't initializated so i can't get the value. This is the code attached to product.tpl <!-- /MODULE Block contact infos --> <form action="{$request_uri|escape:'html':'UTF-8'}" method="post" class="contact-form-box" enctype="multipart/form-data"> <fieldset> <h3 class="page-subheading">{l s='Info'}</h3> <div class="clearfix"> <div class="col-xs-12 col-md-3"> <div class="form-group selector1"> <label for="id_contact">{l s='Subject Heading'}</label> {if isset($customerThread.id_contact)} {foreach from=$contacts item=contact} {if $contact.id_contact == $customerThread.id_contact} <input type="text" class="form-control" id="contact_name" name="contact_name" value="{$contact.name|escape:'html':'UTF-8'}" readonly="readonly" /> <input type="hidden" name="id_contact" value="{$contact.id_contact}" /> {/if} {/foreach} {else} <select id="id_contact" class="form-control" name="id_contact"> <option value="0">{l s='-- Choose --'}</option> {foreach from=$contacts item=contact} <option value="{$contact.id_contact|intval}" {if isset($smarty.request.id_contact) && $smarty.request.id_contact == $contact.id_contact}selected="selected"{/if}>{$contact.name|escape:'html':'UTF-8'}</option> {/foreach} </select> </div> <p id="desc_contact0" class="desc_contact"> </p> {foreach from=$contacts item=contact} <p id="desc_contact{$contact.id_contact|intval}" class="desc_contact contact-title" style="display:none;"> <i class="icon-comment-alt"></i>{$contact.description|escape:'html':'UTF-8'} </p> {/foreach} {/if} <p class="form-group"> <label for="email">{l s='Email address'}</label> {if isset($customerThread.email)} <input class="form-control grey" type="text" id="email" name="from" value="{$customerThread.email|escape:'html':'UTF-8'}" readonly="readonly" /> {else} <input class="form-control grey validate" type="text" id="email" name="from" data-validate="isEmail" value="{$email|escape:'html':'UTF-8'}" /> {/if} </p> {if !$PS_CATALOG_MODE} {if (!isset($customerThread.id_order) || $customerThread.id_order > 0)} <div class="form-group selector1"> <label>{l s='Order reference'}</label> {if !isset($customerThread.id_order) && isset($is_logged) && $is_logged} <select name="id_order" class="form-control"> <option value="0">{l s='-- Choose --'}</option> {foreach from=$orderList item=order} <option value="{$order.value|intval}"{if $order.selected|intval} selected="selected"{/if}>{$order.label|escape:'html':'UTF-8'}</option> {/foreach} </select> {elseif !isset($customerThread.id_order) && empty($is_logged)} <input class="form-control grey" type="text" name="id_order" id="id_order" value="{if isset($customerThread.id_order) && $customerThread.id_order|intval > 0}{$customerThread.id_order|intval}{else}{if isset($smarty.post.id_order) && !empty($smarty.post.id_order)}{$smarty.post.id_order|escape:'html':'UTF-8'}{/if}{/if}" /> {elseif $customerThread.id_order|intval > 0} <input class="form-control grey" type="text" name="id_order" id="id_order" value="{$customerThread.id_order|intval}" readonly="readonly" /> {/if} </div> {/if} {if isset($is_logged) && $is_logged} <div class="form-group selector1"> <label class="unvisible">{l s='Product'}</label> {if !isset($customerThread.id_product)} {foreach from=$orderedProductList key=id_order item=products name=products} <select name="id_product" id="{$id_order}_order_products" class="unvisible product_select form-control"{if !$smarty.foreach.products.first} style="display:none;"{/if}{if !$smarty.foreach.products.first} disabled="disabled"{/if}> <option value="0">{l s='-- Choose --'}</option> {foreach from=$products item=product} <option value="{$product.value|intval}">{$product.label|escape:'html':'UTF-8'}</option> {/foreach} </select> {/foreach} {elseif $customerThread.id_product > 0} <input class="form-control grey" type="text" name="id_product" id="id_product" value="{$customerThread.id_product|intval}" readonly="readonly" /> {/if} </div> {/if} {/if} {if $fileupload == 1} <p class="form-group"> <label for="fileUpload">{l s='Attach File'}</label> <input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> <input type="file" name="fileUpload" id="fileUpload" class="form-control" /> </p> {/if} </div> <div class="col-xs-12 col-md-9"> <div class="form-group"> <label for="message">{l s='Message'}</label> <textarea class="form-control" id="message" name="message">{if isset($message)}{$message|escape:'html':'UTF-8'|stripslashes}{/if}</textarea> </div> </div> </div> <div class="submit"> <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button> </div> </fieldset> </form> Edited October 25, 2014 by fabrizio.brignone (see edit history) Link to comment Share on other sites More sharing options...
DarthFener Posted October 26, 2014 Share Posted October 26, 2014 Because that form is controlled by a ContactController.php and Contact.php which initialize all the variables used by smarty You could create a form by your own, either calling these classes or creating one from scratch <form action="contatto.php" method="POST"> <input name="oggetto" /> <input name="testo" /> <button type="submit" value="Invia" /> </form> and a file contatto.php : <?php $oggetto = $_POST['oggetto']; $testo= $_POST['testo']; mail("[email protected]",$oggetto,$testo); ?> Link to comment Share on other sites More sharing options...
fabrizio.brignone Posted October 27, 2014 Author Share Posted October 27, 2014 And if you want to calling this classes from a form, how i can do it? Link to comment Share on other sites More sharing options...
DarthFener Posted October 27, 2014 Share Posted October 27, 2014 you must STUDY both the classes and functionalities Link to comment Share on other sites More sharing options...
fabrizio.brignone Posted October 27, 2014 Author Share Posted October 27, 2014 For sure but, when in my homepage when i click to "Contact Us" what happenend? When open the page mysite.com/contact-us what is the first page,class,module.... that is loaded? Link to comment Share on other sites More sharing options...
fabrizio.brignone Posted October 27, 2014 Author Share Posted October 27, 2014 Maybe a i understand, but how i can use two controller in the same page? Link to comment Share on other sites More sharing options...
onlinez Posted August 23, 2015 Share Posted August 23, 2015 Ciao Fabrizio, come hai risolto la cosa? Interesserebbe molto anche a me inserire un form in product.tpl grazie! 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