PoOoOoZ Posted September 27, 2012 Share Posted September 27, 2012 Bonjour, sur PS 1.4 le passage en type d'attribut "couleur" laissait la liste déroulante, maintenant elle est supprimée, comment la rajouter ? J'ai énormément de couleurs à gérer et cela devient presque impossible de retrouver une référence de couleur facilement : Merci... Link to comment Share on other sites More sharing options...
PoOoOoZ Posted September 30, 2012 Author Share Posted September 30, 2012 Dans le "product.tpl" de base 1.5, il y'a deux codes différents pour l'affichage des couleurs, j'ai l'impression que dans le premier code le sélecteur de couleurs fait une update sur une liste <select>/<option> ? updateColorSelect ? {*{if isset($colors) && $colors} <!-- colors --> <div id="color_picker"> <p>{l s='Pick a color:' js=1}</p> <div class="clear"></div> <ul id="color_to_pick_list" class="clearfix"> {foreach from=$colors key='id_attribute' item='color'} <li><a id="color_{$id_attribute|intval}" class="color_pick" style="background: {$color.value};" onclick="updateColorSelect({$id_attribute|intval});$('#wrapResetImages').show('slow');" title="{$color.name}">{if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')}<img src="{$img_col_dir}{$id_attribute}.jpg" alt="{$color.name}" width="20" height="20" />{/if}</a></li> {/foreach} </ul> <div class="clear"></div> </div> {/if}*} Voici le onclick du second code d'affichage des couleurs : onclick="colorPickerClick(this);getProductAttribute();{if $colors|@count > 0}$('#wrapResetImages').show('slow');{/if}" Dans quel cas est appellé le premier code pour les couleurs ? Dans mon cas c'est le deuxième qui est parsé, je n'ai rien trouvé dans le back office. Merci. Link to comment Share on other sites More sharing options...
PoOoOoZ Posted October 19, 2012 Author Share Posted October 19, 2012 J'ai rajouté le code contenu dans "{if ($group.group_type == 'select')}" a la fin de "{elseif ($group.group_type == 'color')}" Le select pour les couleurs s'affiche bien mais n'est pas synchronisé avec la palette/nuancier. Quel code ajouter pour faire cette synchronisation ? voici mon div attribute_list actuel : <div class="attribute_list"> {if ($group.group_type == 'select')} <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="attribute_select" onchange="findCombination();getProductAttribute();{if $colors|@count > 0}$('#wrapResetImages').show('slow');{/if};"> {foreach from=$group.attributes key=id_attribute item=group_attribute} <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'htmlall':'UTF-8'}">{$group_attribute|escape:'htmlall':'UTF-8'}</option> {/foreach} </select> {elseif ($group.group_type == 'color')} <ul id="color_to_pick_list" class="clearfix"> {assign var="default_colorpicker" value=""} {foreach from=$group.attributes key=id_attribute item=group_attribute} <li{if $group.default == $id_attribute} class="selected"{/if}> <a id="color_{$id_attribute|intval}" class="color_pick{if ($group.default == $id_attribute)} selected{/if}" style="background: {$colors.$id_attribute.value};" title="{$colors.$id_attribute.name}" onclick="colorPickerClick(this);getProductAttribute();{if $colors|@count > 0}$('#wrapResetImages').show('slow');{/if}"> {if file_exists($col_img_dir|cat:$id_attribute|cat:'.jpg')} <img src="{$img_col_dir}{$id_attribute}.jpg" alt="{$colors.$id_attribute.name}" width="20" height="20" /><br> {/if} </a> </li> {if ($group.default == $id_attribute)} {$default_colorpicker = $id_attribute} {/if} {/foreach} </ul> <input type="hidden" class="color_pick_hidden" name="{$groupName}" value="{$default_colorpicker}" /> <select name="{$groupName}" id="group_{$id_attribute_group|intval}" class="attribute_select" onchange="findCombination();getProductAttribute();{if $colors|@count > 0}$('#wrapResetImages').show('slow');{/if};"> {foreach from=$group.attributes key=id_attribute item=group_attribute} <option value="{$id_attribute|intval}"{if (isset($smarty.get.$groupName) && $smarty.get.$groupName|intval == $id_attribute) || $group.default == $id_attribute} selected="selected"{/if} title="{$group_attribute|escape:'htmlall':'UTF-8'}">{$group_attribute|escape:'htmlall':'UTF-8'}</option> {/foreach} </select> {elseif ($group.group_type == 'radio')} {foreach from=$group.attributes key=id_attribute item=group_attribute} <input type="radio" class="attribute_radio" name="{$groupName}" value="{$id_attribute}" {if ($group.default == $id_attribute)} checked="checked"{/if} onclick="findCombination();getProductAttribute();{if $colors|@count > 0}$('#wrapResetImages').show('slow');{/if}"> {$group_attribute|escape:'htmlall':'UTF-8'}<br/> {/foreach} {/if} </div> Link to comment Share on other sites More sharing options...
Fenn Posted December 21, 2012 Share Posted December 21, 2012 Bonjour, Je me permet de faire remonter le topic car depuis que j'ai fait la mise à jour j'ai également le même soucis, certain de mes produits ont un nuancier composé d'une cinquantaine de teintes, j'ai besoin d'avoir comme sur la 1.4 le nuancier ET la liste déroulante en même temps Link to comment Share on other sites More sharing options...
cocoges Posted March 8, 2013 Share Posted March 8, 2013 (edited) Bonjour, Même problème exposé sur mon topic ci-après. Pas de solution pour l'instant. Je fais rediriger mon topic ici si l'on trouve la solution. Merci à tous. http://www.prestasho...16#entry1135616 Edited March 11, 2013 by cocoges (see edit history) Link to comment Share on other sites More sharing options...
Crea67 Posted May 1, 2013 Share Posted May 1, 2013 Des solutions depuis ?? Je relance car cela m'intéresse aussi 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