View Issue Details

IDProjectCategoryView StatusLast Update
0004240OXID eShop (all versions)3.1. Design, GUI, UXpublic2012-12-05 09:45
Reporterleofonic 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version4.6.2 revision 46646 
Target VersionFixed in Version4.8.0_5.1.0_beta1 
Summary0004240: Selectionlist selection is deleted in basket on Update
DescriptionSelectionlist selection is deleted in basket on update if "Load Selection Lists in Product Lists" is deactivated.
Steps To Reproduce1. Create selectionlist and put different selections in basket
2. Change number of an item and click update
3. Different selections are now merged into a single article
TagsNo tags attached.
ThemeAzure
BrowserAll
PHP Versionany
Database Versionany

Relationships

has duplicate 0004931 closedjurate.baseviciene Values of selection lists do not appear in checkout 
related to 0005440 closedcesnauskast basket update resets selection list values and prices 

Activities

belka

2012-10-08 22:15

reporter  

basketcontents.tpl.txt (1,195 bytes)
--- azure.orig/tpl/page/checkout/inc/basketcontents.tpl	2012-10-08 22:08:19.512011176 +0200
+++ azure/tpl/page/checkout/inc/basketcontents.tpl	2012-10-08 22:06:09.407005661 +0200
@@ -79,6 +79,17 @@
                                             [{/foreach}]
                                         </div>
                                     [{/if}]
+						        [{else}]
+                                    [{assign var="oSelections" value=$basketproduct->getSelections(null,$basketitem->getSelList())}]
+                                    [{if $oSelections}]
+								        [{foreach from=$oSelections item=oList name=selections}]
+									        [{assign var="oActiveSelection" value=$oList->getActiveSelection()}]
+									        <p>
+										        [{$oList->getLabel()}]: [{$oActiveSelection->getName()}]
+										        <input type="hidden" name="aproducts[[{$basketindex}]][sel][[{$smarty.foreach.selections.index}]]" value="[{if $oActiveSelection }][{$oActiveSelection->getValue()}][{/if}]">
+									        </p>
+								        [{/foreach}]
+                                    [{/if}]
                                 [{/if}]
                             [{/if }]
 
basketcontents.tpl.txt (1,195 bytes)

ray

2012-10-09 07:57

reporter   ~0007574

possible fix here: http://forum.oxid-esales.com/showthread.php?p=104129

[{if $oViewConf->showSelectListsInList()}]
    [{assign var="oSelections" value=$basketproduct->getSelections(null,$basketitem->getSelList())}]
    [{if $oSelections}]
        <div class="selectorsBox clear" id="cartItemSelections_[{$smarty.foreach.basketContents.iteration}]">
            [{foreach from=$oSelections item=oList name=selections}]
                [{include file="widget/product/selectbox.tpl" oSelectionList=$oList sFieldName="aproducts[`$basketindex`][sel]" iKey=$smarty.foreach.selections.index blHideDefault=true sSelType="seldrop"}]
            [{/foreach}]
        </div>
    [{/if}]
[{else}]
    [{assign var="oSelections" value=$basketproduct->getSelections(null,$basketitem->getSelList())}]
    [{if $oSelections}]
        [{foreach from=$oSelections item=oList name=selections}]
            [{assign var="oActiveSelection" value=$oList->getActiveSelection()}]
            


                [{$oList->getLabel()}]: [{$oActiveSelection->getName()}]
                <input type="hidden" name="aproducts[[{$basketindex}]][sel][[{$smarty.foreach.selections.index}]]" value="[{if $oActiveSelection }][{$oActiveSelection->getValue()}][{/if}]">
            


        [{/foreach}]
    [{/if}]
[{/if}]

jurate.baseviciene

2012-11-09 14:20

reporter   ~0007804

Reminder sent to: leofonic

Hi,

Thanks a lot for submitting this issue, but we can't reproduce such issue nor on current versions 4.6. neither version 5.0. Could you please try to reproduce that on our demo shops:

http://demoshop.oxid-esales.com/community-edition/

Best regards,

leofonic

2012-11-09 14:56

reporter   ~0007806

I can reproduce this in current demoshop with default settings.

belka

2012-11-09 14:59

reporter   ~0007807

http://demoshop.oxid-esales.com/community-edition/Kiteboarding/Kites/Kite-CORE-GT.html

1. Choose the variant "Test" 1 and "In den Warenkorb"
2. Choose the variant "Test" 2 and "In den Warenkorb"
3. "Warenkorb zeigen" -> aktualisieren

leofonic

2012-11-09 15:06

reporter   ~0007808

Yes exactly, that's the select list i just created, you'll need to create it again to reproduce, demoshop has no select lists per default.

aurimas.gladutis

2012-12-05 09:44

reporter   ~0008058

Last edited: 2012-12-05 09:50

View 2 revisions

Hi, as this does require template changes, we will release it only in 5.1. For earlier versions please use this fix (with small changes from ray suggestion):
change azure/tpl/page/checkout/inc/basketcontents.tpl line 84 to:

                            [{if !$basketitem->isBundle() || !$basketitem->isDiscountArticle()}]
                                [{assign var="oSelections" value=$basketproduct->getSelections(null,$basketitem->getSelList())}]
                                [{if $oSelections}]
                                    <div class="selectorsBox clear" id="cartItemSelections_[{$smarty.foreach.basketContents.iteration}]">
                                    [{foreach from=$oSelections item=oList name=selections}]
                                        [{if $oViewConf->showSelectListsInList()}]
                                            [{include file="widget/product/selectbox.tpl" oSelectionList=$oList sFieldName="aproducts[`$basketindex`][sel]" iKey=$smarty.foreach.selections.index blHideDefault=true sSelType="seldrop"}]
                                        [{else}]
                                            [{assign var="oActiveSelection" value=$oList->getActiveSelection()}]
                                            [{if $oActiveSelection}]
                                                <input type="hidden" name="aproducts[[{$basketindex}]][sel][[{$smarty.foreach.selections.index}]]" value="[{if $oActiveSelection }][{$oActiveSelection->getValue()}][{/if}]">
                                                <div>[{$oList->getLabel()}]: [{$oActiveSelection->getName()}]</div>
                                            [{/if}]
                                        [{/if}]
                                    [{/foreach}]
                                    </div>
                                [{/if}]
                            [{/if }]