EISEAL Posted April 6, 2015 Share Posted April 6, 2015 Salut la communauté, Je pose ici une astuce toute simple qui permet de générer de jolis codes de réduction de ce type : VJX7C-RIH7B-12K49 Ouvrez le fichier js/admin.js, trouvez (vers la ligne 350) : /* Code generator for Affiliation and vouchers */ function gencode(size) { getE('code').value = ''; /* There are no O/0 in the codes in order to avoid confusion */ var chars = "123456789ABCDEFGHIJKLMNPQRSTUVWXYZ"; for (var i = 1; i <= size; ++i) getE('code').value += chars.charAt(Math.floor(Math.random() * chars.length)); } et ajoutez juste en dessous cette nouvelle fonction : function genserialnumber(size) { getE('code').value = ''; /* There are no O/0 in the codes in order to avoid confusion */ var chars = "123456789ABCDEFGHIJKLMNPQRSTUVWXYZ"; var serie1 = ''; var serie2 = ''; var serie3 = ''; for (var i = 1; i <= size; ++i) serie1 += chars.charAt(Math.floor(Math.random() * chars.length)); for (var j = 1; j <= size; ++j) serie2 += chars.charAt(Math.floor(Math.random() * chars.length)); for (var k = 1; k <= size; ++k) serie3 += chars.charAt(Math.floor(Math.random() * chars.length)); getE('code').value += serie1+'-'+serie2+'-'+serie3; } Puis ouvrez VOTREADMIN/themes/default/templates/controllers/cart_rules/informations.tpl et trouvez : <a href="javascript:gencode(8);" class="btn btn-default"><i class="icon-random"></i> {l s='Generate'}</a> et remplacez par : <a href="javascript:genserialnumber(5);" class="btn btn-default"><i class="icon-random"></i> {l s='Generate'}</a> Et voilà vos prochains codes de réductions seront générés par trois groupes de 5 lettres ou chiffres Si vous mettez genserialnumber(4), ils seront générés par trois groupes de 4 lettres ou chiffres, etc... Je trouvais les codes de base, générés par Prestashop, un peu fades ^^ Link to comment Share on other sites More sharing options...
carlitos666 Posted September 2, 2015 Share Posted September 2, 2015 Bonjour, Saurais-tu comment faire la même opération pour les codes générés via le BO (lors d'un remboursement dans Commandes > remboursement partiel > bon de réduction ? La modification sur admin.js n'impacte pas cette génération de bon. Merci Charles Link to comment Share on other sites More sharing options...
carlitos666 Posted September 6, 2015 Share Posted September 6, 2015 (edited) J'ai trouvé une solution, c'est dans AdminOrderController.php. J'ai remplacé sprintf('V%1$dC%2$dO%3$d' par sprintf('V%1$dC%2$dS%3$d' (ça remplace la lettre O par S) ce qui évite la confusion en O et zéro lors de la saisie du code promo. // Update the voucher code and name foreach ($languages as $language) $cart_rule->name[$language['id_lang']] = sprintf('V%1$dC%2$dS%3$d', $cart_rule->id, $order->id_customer, $order->id); $cart_rule->code = sprintf('V%1$dC%2$dS%3$d', $cart_rule->id, $order->id_customer, $order->id); Edited September 8, 2015 by carlitos666 (see edit history) Link to comment Share on other sites More sharing options...
akhawat Posted December 30, 2015 Share Posted December 30, 2015 Bonjour super cette petite modif, la confusion entre le O et le 0 devenais agaçante. Savez vous comment faire la même chose pour les codes lors de la génération de code de réduction aléatoire manuellement depuis le BO je suis en 1.5.6.1 cdlt 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