Jump to content

pouc

Members
  • Posts

    178
  • Joined

  • Last visited

Profile Information

  • Location
    France
  • Activity
    Agency

pouc's Achievements

Newbie

Newbie (1/14)

3

Reputation

2

Community Answers

  1. Alors j'ai plus ou moins réussi le champ de recherche fonctionne par contre les résultats s'affiche pas comme je le voudrais. pour l'instant j'ai ceci: ligne 189 admindmulistecommade j'ai rajouter un élément dans la requête: $this->_select = ' a.id_order AS id_pdf, cl.name AS carrier_name, CONCAT(c.`company`, \' \', c.`firstname`) AS company1, CONCAT(c.`lastname`, \' \', c.`firstname`) AS customer, osl.`name` AS `osname`, os.`color`, IF((SELECT COUNT(so.id_order) FROM `'._DB_PREFIX_.'orders` so WHERE so.id_customer = a.id_customer) > 1, 0, 1) as new, (SELECT COUNT(od.`id_order`) FROM `'._DB_PREFIX_.'order_detail` od WHERE od.`id_order` = a.`id_order` GROUP BY `id_order`) AS product_number'; Ensuite ligne 242 et 255 'company1' => array('title' => $this->l('Societe'), 'filter_key' => 'company1', 'tmpTableFilter' => true, 'callback' => 'detailCompany1', 'class_callback' => 'admindmulistecommandes'), Et ligne 482 : public function detailCompany1($customer, $tr) { $delivery = new Address($tr['id_address_delivery']); $company1 = new Customer($tr['id_customer']); $iso = Country::getIsoById($delivery->id_country); $title = '<strong>'.$customer->company." <span class='upper'>".$customer->firstname.'</span></strong><br/> <em>'.$customer->email.'</em><br/><br/> <strong>'.$this->text_shipping.' :</strong><br/> '.$delivery->firstname.' '.$delivery->company.'<br/> '.str_replace('"', '', $delivery->address1).'<br/> '.(!empty($delivery->address2) ? str_replace('"', '', ($delivery->address2)).'<br/>' : '') .$delivery->postcode.' '.$delivery->city.'<br/> '.$delivery->country; return '<img alt="'.$iso.'" src="/modules/dmulistecommandes/pays/'.$iso.'.png" width="14" /> <a href="javascript:;" class="lien_customer'.((Tools::getBrightness($tr['color']) < 128) ? '_white' : '').'" title="'.$title.'">'.substr($customer->firstname, 0, 1).'. <span class="upper">'.$customer->lastname.'</span></a>'; } Au niveau des résultats ça fonctionne sauf qu'ils apparaissent dans le champs clients et non dans le champ société. je continue à chercher et mettrais à jour mes résultats. Baptiste
  2. C'est pas faux!! autant pour moi!=) Du coup le message d'erreur c'est "mauvaise requête sql" j'ai apporté d'autre modification sur le code : 'company' => array('title' => $this->l('Societe'), 'widthColumn' => 120, 'width' => 100, 'filter_key' => 'company', 'tmpTableFilter' => true, 'callback' => 'detailCustomer', 'class_callback' => 'admindmulistecommandes'), public function detailCompany($company, $tr) Mzis toujours le même message d'erreur. Merci.
  3. Bonjour je souhaiterais dans commandes->commande ameliorer ajouter le champ société quelqu'un aurait-il une idée? J'ai commencé dans adminmulistcommandes lg236 'societe' => array('title' => $this->l('Societe'), 'widthColumn' => 120, 'width' => 100, 'filter_key' => 'company', 'tmpTableFilter' => true, 'callback' => 'detailCustomer', 'class_callback' => 'admindmulistecommandes'), mais ça me retourne un message d'erreur dès que je tape quelque chose dans le champs de recherche. j'ai ensuite continué sur le même fichier lg465 ou j'ai copié la même fonction que pour la recherche client public function detailCustomer($customer, $tr) { $delivery = new Address($tr['id_address_delivery']); $customer = new Customer($tr['id_customer']); $iso = Country::getIsoById($delivery->id_country); $title = '<strong>'.$customer->firstname." <span class='upper'>".$customer->lastname.'</span></strong><br/> <em>'.$customer->email.'</em><br/><br/> <strong>'.$this->text_shipping.' :</strong><br/> '.$delivery->firstname.' '.$delivery->lastname.'<br/> '.str_replace('"', '', $delivery->address1).'<br/> '.(!empty($delivery->address2) ? str_replace('"', '', ($delivery->address2)).'<br/>' : '') .$delivery->postcode.' '.$delivery->city.'<br/> '.$delivery->country; return '<img alt="'.$iso.'" src="/modules/dmulistecommandes/pays/'.$iso.'.png" width="14" /> <a href="javascript:;" class="lien_customer'.((Tools::getBrightness($tr['color']) < 128) ? '_white' : '').'" title="'.$title.'">'.substr($customer->firstname, 0, 1).'. <span class="upper">'.$customer->lastname.'</span></a>'; } public function detailCompany($customer, $tr) { $delivery = new Address($tr['id_address_delivery']); $customer = new Customer($tr['id_customer']); $iso = Country::getIsoById($delivery->id_country); $title = '<strong>'.$customer->firstname." <span class='upper'>".$customer->lastname.'</span></strong><br/> <em>'.$customer->email.'</em><br/><br/> <strong>'.$this->text_shipping.' :</strong><br/> '.$delivery->firstname.' '.$delivery->lastname.'<br/> '.str_replace('"', '', $delivery->address1).'<br/> '.(!empty($delivery->address2) ? str_replace('"', '', ($delivery->address2)).'<br/>' : '') .$delivery->postcode.' '.$delivery->city.'<br/> '.$delivery->country; return '<img alt="'.$iso.'" src="/modules/dmulistecommandes/pays/'.$iso.'.png" width="14" /> <a href="javascript:;" class="lien_customer'.((Tools::getBrightness($tr['color']) < 128) ? '_white' : '').'" title="'.$title.'">'.substr($customer->firstname, 0, 1).'. <span class="upper">'.$customer->lastname.'</span></a>'; } Merci. Baptiste
  4. Bonjour je souhaiterais lors de la création d'une facture ajouter un champ de recherche exclusivement pour les clients ayant le champs société de remplie. Fichier: ./controllers/admin/AdminOrdersController.php Dans AdminOrdersController j'ai ajouté les lignes suivantes ressemblant à celle de la recherche client: public function ajaxProcessSearchCustomers() { if ($customers = Customer::searchByName(pSQL(Tools::getValue('customer_search')))) $to_return = array('customers' => $customers, 'found' => true); else $to_return = array('found' => false); $this->content = Tools::jsonEncode($to_return); } public function ajaxProcessSearchCompany() { if ($customers = Customer::searchByCompany(pSQL(Tools::getValue('company_search')))) $to_return = array('company' => $company, 'found' => true); else $to_return = array('found' => false); $this->content = Tools::jsonEncode($to_return); } Fichier:./adminxxxx/themes/default/template/controllers/orders/form.tpl et ensuite dans form.tpl une nouvelle fonction ajax ressemblant à celle de recherche des clients. function searchCustomers() { $.ajax({ type:"POST", url : "{$link->getAdminLink('AdminOrders')|escape:'html'}", async: true, dataType: "json", data : { ajax: "1", token: "{$token}", tab: "AdminOrders", action: "searchCustomers", customer_search: $('#customer').val()}, success : function(res) { if(res.found) { var html = '<ul>'; $.each(res.customers, function() { html += '<li class="customerCard"><div class="customerName"><a class="fancybox" href="{$link->getAdminLink('AdminCustomers')}&id_customer='+this.id_customer+'&viewcustomer&liteDisplaying=1">'+this.firstname+' '+this.lastname+'</a><span class="customerBirthday"> '+((this.birthday != '0000-00-00') ? this.birthday : '')+'</span></div>'; html += '<div class="customerEmail"><a href="mailto:'+this.email+'">'+this.email+'</div>'; html += '<a onclick="setupCustomer('+ this.id_customer+');return false;" href="#" class="id_customer button">{l s='Choose'}</a></li>'; }); html += '</ul>'; } else html = '<div class="warn">{l s='No customers found'}</div>'; $('#customers').html(html); resetBind(); } }); } function searchCompany() { $.ajax({ type:"POST", url : "{$link->getAdminLink('AdminOrders')|escape:'html'}", async: true, dataType: "json", data : { ajax: "1", token: "{$token}", tab: "AdminOrders", action: "searchCompany", company_search: $('#company').val()}, success : function(res) { if(res.found) { var html = '<ul>'; $.each(res.company, function() { html += '<li class="customerCard"><div class="customerName"><a class="fancybox" href="{$link->getAdminLink('AdminCustomers')}&id_customer='+this.id_customer+'&viewcustomer&liteDisplaying=1">'+this.firstname+' '+this.lastname+'</a><span class="customerBirthday"> '+((this.birthday != '0000-00-00') ? this.birthday : '')+'</span></div>'; html += '<div class="customerEmail"><a href="mailto:'+this.email+'">'+this.email+'</div>'; html += '<a onclick="setupCustomer('+ this.id_customer+');return false;" href="#" class="id_customer button">{l s='Choose'}</a></li>'; }); html += '</ul>'; } else html = '<div class="warn">{l s='No customers found'}</div>'; $('#company').html(html); resetBind(); } }); } Fichier:./adminxxxx/themes/default/template/controllers/orders/form.tpl et ensuite le champ de recherche toujours sur le form.tpl <input type="text" id="company" value="" /> <p>{l s='Search a customer by typing the first letters of his/her name'}</p> <a class="fancybox button" href="{$link->getAdminLink('AdminCustomers')|escape:'htmlall':'UTF-8'}&addcustomer&liteDisplaying=1&submitFormAjax=1#"> <img src="../img/admin/add.gif" title="new"/><span>{l s='Add new customer'}</span> </a> Vu que je n'ai quasiment aucune connaissance en ajax est-ce quelqu'un pourrait me dire ou est-ce que je me trompe! Merci. Baptiste
  5. je sais pas si vous avez regardé ce topic mais je pense qu'il pourrait vous aider!! https://www.prestashop.com/forums/topic/355025-frais-de-port-selon-transporteur-et-zones/page-2 Baptiste
  6. Il y avait un champ qui avait été supprimé dans la base de donnés Baptiste
  7. Bonjour, mon problème est le suivant, je suis dans l'impossibilité de créer un compte client et le message suivant apparait :"Une erreur s'est produite pendant la création de l'objet. customer ()". Quelqu'un saurait d’où ça pourrait venir? Merci Baptiste
  8. Parfait!! j'ai réussi avec quelques légère modification mais en tout cas ça marche. alors ligne 220 dans customer.php j'ai ceux-ci: public function __construct($id = null) { $ma_variable = Tools::getValue('nthera'); $id_special_group = '800'; if (!empty($ma_variable)) { $this->id_default_group = (int)Configuration::get('PS_CUSTOMER_GROUP'); $this->id_group = (int)$id_special_group; } else{ $this->id_default_group = (int)Configuration::get('PS_CUSTOMER_GROUP'); $this->id_group =6; } parent::__construct($id); } Donc si ma variable est remplie il est inscrit dans le groupe client et dans l'id 800 sinon il est inscrit dans le groupe client et l'id 6. Merci beaucoup pour votre aide!! Baptiste
×
×
  • Create New...