ste0024 Posted September 30, 2011 Share Posted September 30, 2011 Bonjour cherche modidfication permettant de passer d une commande a une autre sans avoir a cliquer a chaque fois sur commande + numéro de commande. Avec 1 ou 2 commande par jour c est pas gênant mais avec 25 a 30 commandes ca devient une galère. Merci @++ Link to comment Share on other sites More sharing options...
leeloo Posted September 30, 2011 Share Posted September 30, 2011 Bonjour, Vous voulez sans doute parler du système de navigation entre les commandes lorsqu'on est déjà sur une fiche de commande (a partir de PS 1.4). C'est cela ? Pour arriver à faire cela dans PS 1.2.5 et PS 1.3 : - Ouvrer AdminOrders.php - Chercher la ligne : $row = array_shift($history); - juste en dessous de cette ligne, rajouter: if ($prevOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order < '.(int)$order->id.' ORDER BY id_order DESC')) $prevOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$prevOrder.'"><img style="width: 24px; height: 24px" src="../img/admin/arrow-left.gif" alt="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" title="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" /></a>'; if ($nextOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order > '.(int)$order->id.' ORDER BY id_order ASC')) $nextOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$nextOrder.'"><img style="width: 24px; height: 24px" src="../img/admin/arrow-right.gif" alt="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" title="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" /></a>'; Pensez à ajouter des images arrow-right.gif et arrow-left.gif dans le répertoire /img/admin ! - Puis chercher : // display order header echo ' <div style="float: left;">'; echo ' <h2 style="width: 430px;">'.$customer->firstname.' '.$customer->lastname.' '.$this->l('#').sprintf('%06d', $order->id). ((($currentState->invoice OR $order->invoice_number) AND count($products)) ? ' - <a href="pdf.php?id_order='.$order->id.'&pdf"><img src="../img/admin/tab-invoice.gif" alt="'.$this->l('View invoice').'" title="'.$this->l('View invoice').'" /></a>' : ''). (($currentState->delivery OR $order->delivery_number) ? ' - <a href="pdf.php?id_delivery='.$order->delivery_number.'"><img src="../img/admin/delivery.gif" alt="'.$this->l('View delivery slip').'" title="'.$this->l('View delivery slip').'" /></a>' : ''). ' - <a href="javascript:window.print()"><img src="../img/admin/printer.gif" alt="'.$this->l('Print order').'" title="'.$this->l('Print order').'" /></a>'; echo '</h2>'; - A la fin de la ligne echo '</h2>'; Modifier comme ci-dessous (ou modifier votre présentation à votre guise) : echo '</h2>'.$prevOrder.' |<span style="padding: 1px; border: 1px solid #000000; color: #000000; font-weight: bold; font-size: 10px;">'.$this->l('Order Navigation').'</span>| '.$nextOrder.''; Voila vous y êtes! Vous avez une navigation entre les commandes à partir de la fiche d'une commande. N'oubliez pas de traduire votre langue. Salutations Link to comment Share on other sites More sharing options...
jolvil Posted September 30, 2011 Share Posted September 30, 2011 EDIT: résolu, erreur de ma part - mauvais format de commentaire Gros probleme avec cette modif que j'ai testé sur ma boutique 1.3.7 J'ai bien mis en place le code ci dessus comme indiqué mais ma page de commande ne s'affichait plus. J'ai donc remis ma page d'origine que j'avais sauvegardée. Mais voilà la page des commandes ne s'affiche plus.... ma boutique en live n'est plus utilisable J'ai effacé les cookies, rechargé, rien n'y fait, que se passe t'il? Merci de votre aide, là je suis dans le caca Link to comment Share on other sites More sharing options...
leeloo Posted September 30, 2011 Share Posted September 30, 2011 Bonsoir jolvil, Cette modification fonctionne parfaitement de mon coté. J'ai intégralement repris la modification sur un fichier issus de pack original de PS et cest ok. Quand tu dis que la boutique en live n'est plus utilisable, tu parles du FO ou du BO ? N'as tu pas raté l'insertion du code en omettant par exemple un ; Quoi qu'il en soit, en remettant ton fichier initial tu dois retrouver ton BO. As-tu vidé le cache dans \tools\smarty\compile !! Link to comment Share on other sites More sharing options...
jolvil Posted September 30, 2011 Share Posted September 30, 2011 Finalement je crois que c'est du a un commentaire que j'avais ajouté pour une modif qui n'etait pas au bon format et que je n'avais pas du uploader, j'ai retrouvé les commandes avec le fichier d'origine. Merci pour ta réponse rapide. Link to comment Share on other sites More sharing options...
leeloo Posted September 30, 2011 Share Posted September 30, 2011 Ouf, tu m'as quand même fait peur! La modification fonctionne ou pas pour toi ? Link to comment Share on other sites More sharing options...
jolvil Posted September 30, 2011 Share Posted September 30, 2011 La modif fonctionne bien, fausse alerte de ma part Je ne comprenais pas j'ai un peu paniqué... comme d'hab Je propose d'utiliser des images de flèches déja existantes dans le dossier admin: if ($prevOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order < '.(int)$order->id.' ORDER BY id_order DESC')) $prevOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$prevOrder.'"><img style="width: 16px; height: 16px" src="../img/admin/previous.gif" alt="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" title="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" /></a>'; if ($nextOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order > '.(int)$order->id.' ORDER BY id_order ASC')) $nextOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$nextOrder.'"><img style="width: 16px; height: 16px" src="../img/admin/next.gif" alt="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" title="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" /></a>'; et les flèches je les met au-dessus du nom du client sans texte: '.$prevOrder.' '.$nextOrder.' <!-- Ajout fleches pour navigation entre commandes --> <h2 style="width: 430px;">'.$customer->firstname.' '.$customer->lastname.' '.$this->l('#').sprintf('%06d', $order->id). Link to comment Share on other sites More sharing options...
ste0024 Posted October 1, 2011 Author Share Posted October 1, 2011 Bonjour, Vous voulez sans doute parler du système de navigation entre les commandes lorsqu'on est déjà sur une fiche de commande (a partir de PS 1.4). C'est cela ? Pour arriver à faire cela dans PS 1.2.5 et PS 1.3 : - Ouvrer AdminOrders.php - Chercher la ligne : $row = array_shift($history); - juste en dessous de cette ligne, rajouter: if ($prevOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order < '.(int)$order->id.' ORDER BY id_order DESC')) $prevOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$prevOrder.'"><img style="width: 24px; height: 24px" src="../img/admin/arrow-left.gif" alt="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" title="'.$this->l('Preview ID Order :').' '.sprintf('%06d', $prevOrder).'" /></a>'; if ($nextOrder = Db::getInstance()->getValue('SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_order > '.(int)$order->id.' ORDER BY id_order ASC')) $nextOrder = '<a href="'.$currentIndex.'&token='.Tools::getValue('token').'&vieworder&id_order='.$nextOrder.'"><img style="width: 24px; height: 24px" src="../img/admin/arrow-right.gif" alt="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" title="'.$this->l('Next ID Order :').' '.sprintf('%06d', $nextOrder).'" /></a>'; Pensez à ajouter des images arrow-right.gif et arrow-left.gif dans le répertoire /img/admin ! - Puis chercher : // display order header echo ' <div style="float: left;">'; echo ' <h2 style="width: 430px;">'.$customer->firstname.' '.$customer->lastname.' '.$this->l('#').sprintf('%06d', $order->id). ((($currentState->invoice OR $order->invoice_number) AND count($products)) ? ' - <a href="pdf.php?id_order='.$order->id.'&pdf"><img src="../img/admin/tab-invoice.gif" alt="'.$this->l('View invoice').'" title="'.$this->l('View invoice').'" /></a>' : ''). (($currentState->delivery OR $order->delivery_number) ? ' - <a href="pdf.php?id_delivery='.$order->delivery_number.'"><img src="../img/admin/delivery.gif" alt="'.$this->l('View delivery slip').'" title="'.$this->l('View delivery slip').'" /></a>' : ''). ' - <a href="javascript:window.print()"><img src="../img/admin/printer.gif" alt="'.$this->l('Print order').'" title="'.$this->l('Print order').'" /></a>'; echo '</h2>'; - A la fin de la ligne echo '</h2>'; Modifier comme ci-dessous (ou modifier votre présentation à votre guise) : echo '</h2>'.$prevOrder.' |<span style="padding: 1px; border: 1px solid #000000; color: #000000; font-weight: bold; font-size: 10px;">'.$this->l('Order Navigation').'</span>| '.$nextOrder.''; Voila vous y êtes! Vous avez une navigation entre les commandes à partir de la fiche d'une commande. N'oubliez pas de traduire votre langue. Salutations je te remercie pour la motif tres pratique. fonctionne du 1 er coup. je serai aussi intéressé par la même présentation au centre que sur ton site. je trouve ca mieux et plus lisible. est ce qu il est possible d ajouter le même style de motif mais de 10 en 10 Merci @++ Link to comment Share on other sites More sharing options...
leeloo Posted October 1, 2011 Share Posted October 1, 2011 Bonjour, Je me disais bien que cela ne venait pas de mes indications. Voila qui est réglé ! @ ste0024, Que veux-tu dire par "style de motif mais de 10 en 10" ? Est-ce que veux dire passer d'une commande à l'autre par pas de 10 ? Mais je ne vois pas trop l'intéret, il y a certaines commandes que tu n'atteindras jamais à travers la navigation ! Toutefois, pour avoir un pas de 10 en 10, tu ajoutes un -11 pour la variable $prevOrder et un +11 pour la variable $nextOrder dans les requêtes après le: $row = array_shift($history); exemple: orders WHERE id_order - 11 Concernant la présentation telle que tu l'as vu sur mon site de démonstration, je te dirai qu'il faut un peu de créativité et un minimum d'effort. Les styles css et modifications html sont assez personnelles. Afin de t'aider au moins à positionner le nom du client avec la navigation entre commandes, tout en haut de la page, tu mets ta balise h2 dans une div centrée. Salutations PS : J'ai pas mal de modifications tirées de PS 1.4x à intégrer à PS 1.2.5 et 1.3, telle que sélectionner les facture par statut de commande avant de les imprimer, comme dans PS14 (onglet commandes/factures), si cela peut intéresser. Link to comment Share on other sites More sharing options...
ste0024 Posted October 1, 2011 Author Share Posted October 1, 2011 bonjour oui je parlais de 10 commande en 10 ou + mais en gardant aussi le principe de 1 commandes en 1 commandes comme explique dans ton 1 er message. Par exemple quand j ai 25 commandes je traites les commandes selon le types d envoi et comme les commande ne se suive pas il me faut sauter pas mal de commandes. Apres un pas de +10 et peut etre trop. +5 me suffirait peut être. A tester. Pour la présentation centre j ai deja teste hier mais ca me décale facture , information transporteur et Détail de la commande.. Prestashop 1.4 j ai pas teste car pas le temps et vu les problèmes ca ne me donne pas envie. Certain module on l air tres intéressant comme ebay, ou les exports vers les comparateurs ou les modules de paiements. Pour la facture papier ou internet je veux bien l astuce car personnellement je met systématiquement la facture dans le colis et je pense que pas mal de personne risque d etre intéresse. en plus ca va dans le bon sens de l écologie et du réchauffement de la planète.Économie de papier, encre. Merci bien pour la modif et ton aide leeloo Étrange je ne reçois jamais de message pour etre averti d une nouvelle réponse. obliger de surveiller régulièrement..... Link to comment Share on other sites More sharing options...
leeloo Posted October 1, 2011 Share Posted October 1, 2011 Allez un coup de main pour centrer ta barre de navigation avec le nom du client. Fais cela entre : // display order header et /* Display current state */ tu mets en forme comme cela : // display order header echo ' <div class="center">'; echo ' <h2 >'.$customer->firstname.' '.$customer->lastname.' '.$this->l('#').sprintf('%06d', $order->id). ((($currentState->invoice OR $order->invoice_number) AND count($products)) ? ' - <a href="pdf.php?id_order='.$order->id.'&pdf"><img src="../img/admin/tab-invoice.gif" alt="'.$this->l('View invoice').'" title="'.$this->l('View invoice').'" /></a>' : ''). (($currentState->delivery OR $order->delivery_number) ? ' - <a href="pdf.php?id_delivery='.$order->delivery_number.'"><img src="../img/admin/delivery.gif" alt="'.$this->l('View delivery slip').'" title="'.$this->l('View delivery slip').'" /></a>' : ''). ' - <a href="javascript:window.print()"><img src="../img/admin/printer.gif" alt="'.$this->l('Print order').'" title="'.$this->l('Print order').'" /></a> </h2> '.$prevOrder.' |<span style="padding: 1px; border: 1px solid #000000; color: #000000; font-weight: bold; font-size: 10px;">'.$this->l('Order Navigation').'</span>| '.$nextOrder.' </div>'; echo '<div class="clear"> </div>'; Salutations Link to comment Share on other sites More sharing options...
ste0024 Posted October 5, 2011 Author Share Posted October 5, 2011 (edited) bonjour Merci bien je testerai ca dans la soiree je pense et te dirai ce qu il en ai. @++ EDIT la modif pour passer d une commande a l autre c est trop pratique. encore merci leeloo Edited October 5, 2011 by ste0024 (see edit history) Link to comment Share on other sites More sharing options...
Julien13720 Posted December 12, 2011 Share Posted December 12, 2011 Super utile cette astuce! Peut-on faire de même pour passer de produit en produit dans le BO? 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