VirtueMart Forum

VirtueMart 2 + 3 => Virtuemart Development and bug reports => Topic started by: SteP[IT] on July 03, 2015, 13:21:03 pm

Title: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 13:21:03 pm
I'm dealing with the EU Privacy Directory compliance in my site, and decided to use a third party plugin to let the user choose to accept or deny cookies.
I have installed the plugin, solved some conflicts and now it works smoothly, except for the "add to cart" function!
The plugin I use does not let the site put any kind of cookie on the customer side until he explicitally accept them.
It means that NO COOKIES are set at all on (this to be fully compliant to the European Directive: no cookies can be set until the user accept them in explicit way) the customer browser BOTH in the case he waits to place the cookie acceptance decision (not clicking on the ACCEPT or the DENY button, but navigating the site) AND in the case he refused to accept cookies.
If I'm not wrong, there is no way to have the "add to cart" process working without setting cookies: is this true?
Is there a way to solve this important problem?
Being fully compliant to the Europen Directive is imperative, and VM should work also without putting cookies on the client side.
Waiting for your kindly reply very ASAP
Best regards

(Joomla 3.4.3 - VM 3.0.9.4)

Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Milbo on July 03, 2015, 13:55:47 pm
You may give us the link to the extension, so we can try with it
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 14:02:53 pm
I've sent you a PM with the link.
Thank you in advance.
Regards
Stefano
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Milbo on July 03, 2015, 14:15:17 pm
Hmmm, for me it works. Maybe connected to your payment/shipment plugin?
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 14:23:03 pm
I have only the Standard vmplugin activated, and only the "By weight, ZIP and countries" vmshipment
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Studio 42 on July 03, 2015, 14:38:39 pm
Hi SteP[IT],
The law is completly stupid !
At the moment you add user info in database, cookies, localstorage or anything else, you have to add the message.
This mean on a shop, if the user don't accept the cookies then you have to reject all possible action.
This is not only the browser cookies as many mean! And saving a product to cart(in a cookie or not) is not compliant with the EU directive

For info;
http://extensions.virtuemart.net/ not legal
http://shop.st42.fr not legal
http://www.amazon.fr/ not legal
90% shops are illegal in EU
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 14:42:50 pm
For Milbo:

It seems that the problem arised when I wrongly turned on the Mootools option inside that plugin (instead of using jQuery), my fault
Thank you for wasting your time addressing me to a coffee cup to wake me up :)
Regards


for Studio 42:

The law may be stupid, but you must deal with it: right now in my Country (Italy) you may be charged by $$ penalty if you do NOT place that EU notice on your website, so you must do it also if you think it's stupid or not :)
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Studio 42 on July 03, 2015, 14:48:59 pm
Add a notice: This site cannot work without cookies, please leave if you don't agree.
I think the user are not stupid.
A shop have to save the datas.
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 14:55:16 pm
I live in Italy, not in the USA or in a more advanced Country.... I must deal with non-tech-aware people, many of them not discerning between a lamp and a smartphone :)
I'm not reach as Amazon, so I do not intend to spend money for penalties, well knowing that I must at least show them I comply with rules.
The question that rules are effective or not is not in my target :)
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Studio 42 on July 03, 2015, 15:04:33 pm
I think as this was a good idea, at end, this only frustrate the users.
Another problem, is if you use 3 party plugins, services, you don't know if this services use cookies,storage(eg google) or not.
This mean that all site(99%) have to display the cookie message to be compliant with the EU directive.
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: alatak on July 03, 2015, 15:52:27 pm
Hello

Can you check what cookies do you have?
ON chrome, if you click rigth, and use "view page info" then you have the cookies stored
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 16:24:23 pm
When setting the EU Privacy plugin OFF, I can see 2 cookies:

4a152e3638e35a2ab1dd5a8abb6fdbe7 (content: it-IT)
7ef1704505c7cfd4cbb09f31d5aeda5e (content: 71pbv7vccb7qnc8oikp84sfc35)

When setting the plugin ON, a I see only 1 cookie:
4a152e3638e35a2ab1dd5a8abb6fdbe7 (content: it-IT)

I have also noted that, when turning on the plugin, this line disappear from the page header:

Code: [Select]
  <script src="/components/com_virtuemart/assets/js/vmkeepalive.js?vmver=8872" type="text/javascript" defer="defer" async="async"></script>
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 16:46:06 pm
Cheking the same behaviour in Firefox v 39, both the cookies are correctly set when the plugin is ON or OFF
This same thing (2 cookies correctly set) happens in my non-chome smartphone browser (android), both with plugin ON or OFF

It seems to be restricted to chrome....
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 17:00:45 pm
Further testing, I made this:

1) loaded the product page turning on the privacy plugin.
2) saved that page locally
3) loaded the saved file in Firefox 39, and added the product to the cart: IT WORKED
4) loaded the same file in Chrome, and added the product to the cart: IT DID NOT WORK

It seems to be restricted to some odd chrome problem: the same configuration works normally on my android non-chrome browser....

Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Milbo on July 03, 2015, 20:14:44 pm
Code: [Select]
if (!class_exists('VirtueMartCart')) require(VMPATH_SITE . DS . 'helpers' . DS . 'cart.php');
$cart = VirtueMartCart::getCart();
if(!empty($cart->cartProductsData)){
vmJsApi::keepAlive(1,4);
}

I wonder if it is connected to this lines.

Hmm odd problem, with FF and Chrome. Sounds like the plugin does not work correctly on FF, right?
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: SteP[IT] on July 03, 2015, 20:24:02 pm
Yes, Chrome seems to lack the keepalive script.
I un-officially really hate Chrome :), but my site stats are telling me tath it's the largest used browser by visitors...
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: lostmail on July 03, 2017, 12:40:07 pm
Which cookie extension works with Joomla/virtuemart ?
I installed this one but my new product scoller breaks and virtuemart cart does not work any more..
https://extensions.joomla.org/extension/cookie-accept/

Which extension do you recommend ?
Title: Re: Add to cart not working if user does not accept cookies (eu-privacy directive)
Post by: Studio 42 on July 03, 2017, 12:56:20 pm
This worked always for me :
https://extensions.joomla.org/extension/cookies-ck/