[TYPO3-shop] [BUG] 2.6.1 agb checkbox state can't be reset to false

Felix Buenemann Felix.Buenemann at googlemail.com
Sat Nov 14 00:00:38 CET 2009


Hi,

I've been trying to fix this bug for hours, but to no avail:

Once the AGB checkbox on the BASKET_INFO page is set to true, there is 
no way to get it back to disabled state until the payment process is 
finished.

Here's how you can reproduce:
Fill out the form on the info template, check the "I agree to Terms and 
Conditions" (AGB) checkbox, but leave another required field, eg. name 
empty.

Now it'll complain that the name field is required. Then go back to info 
template and fill in a name, but uncheck the AGB checkbox and submit.

It'll complain about missing consent to terms and conditions. Now go 
back to info template.

The bug appears: The AGB checkbox is now checked, although it was 
unchecked before submitting the info template.

There is now no way to get the agb checkbox back to unchecked state 
until you completed the order.


The problem seems to be, that the code in the info->init() function, 
that should reset the state of the checkbox is working on a copy of the 
basket records array, so the real data never gets changed. So while this 
does temporarily reset the state of the agb for the payment template, it 
has no effect when calling the info template, so the old data (checked 
state) gets used once we go back to the info template.

While this problem seems relativly minor regarding the AGB, it is a 
bigger problem for me, because I have added additional checkboxes to the 
info template, that are also stuck at enabled once they were checked.


The solution would probably be to pass the basket records array all the 
way through into info->init() as a reference, but I wasn't able to trace 
it back to it's origin, due to the deep encapsulation of calls.

Best Regards,
     Felix Buenemann


More information about the TYPO3-project-tt-products mailing list