PDA

View Full Version : Shopping Cart to Checkout choices



dtran09
05-21-2013, 09:01 AM
Seems like most people have the split setup of

Returning Customers
email:
password:
"Login and Checkout"

New Customers
"Proceed to Checkout"

The main problem I have with this is for any customer that is already logged in, there is no need to re-enter their login details.

If a logged in customer clicks the "Proceed to Checkout" button that is under the New Customers section, the fields on the checkout page are populated just the same as if they had gone through with the "Login and Checkout" route.

Is there a way to jquery or javascript check Volusion's logged in status variables? That way for anyone logged in, there could just be a cut-and-dry proceed to checkout button.



Of course, if there are other solutions to this critical stage of the conversion process, I'd love to hear them.

KC Tool (http://www.kctoolco.com), if you're curious.

Marc_NY
05-21-2013, 10:29 AM
I wrote a script to do this on the old Volusion forums, perhaps Kelly has it as she saves just about everything else.

GGG
05-21-2013, 10:51 AM
I wrote a script to do this on the old Volusion forums, perhaps Kelly has it as she saves just about everything else.

Marc, sorry...I'm digging all over the place and not finding it in my CliffNotes under checkout, shopping cart, registration, blah, blah. Not even sure if this is fixed on my store?

If it is, I can email you my template for the code...(or you can log in)...because you know I don't know what the heck to look for and paste here :)

eellsworth
05-21-2013, 03:44 PM
Before the old forum when down I tried to extract all the posts with an automated software. Unfortunately I was unsuccessful. :(

Marc_NY
05-21-2013, 03:57 PM
I probably have it somewhere stored on by HD but not motivated enough to look for it.

demitrius
05-21-2013, 05:28 PM
Volusion places a cookie called "CustomerID" when you are logged in. I use this to determine whether they are logged in or not. Has worked for me on varying occasions in regards to checking if logged in or not.

Of course, if they do not allow cookies, then that is another story.

Except browsing any Volusion site without JavaScript or Cookies results in a horrific experience. So what choice do we have?

Marc_NY
05-21-2013, 05:38 PM
Demitrius,

Some time ago I explored the possibility of using the CustomerID cookie to determine if a user was logged in and it was unreliable because it would not disappear when a person logged out under certain circumstances. Since then I never looked at it again to serve that function. It appears now Volusion has fixed that. Finally something Volusion did right.

On the topic of cookies did you know you can save the CartID5 cookie and later set it and have the original cart contents back in the cart. Haven't found a good use for this yet but it was interesting.

demitrius
05-21-2013, 05:49 PM
That is interesting.

I'm curious what exactly your issue is with CustomerID that you feel was fixed? Was it in regards to this article I came across before?

http://lexipixel.com/wordpress/ecommerce/volusion-security-issue-not-me

Essentially you wouldn't be "logged out" unless you used a specific method of logging out?

Marc_NY
05-21-2013, 06:12 PM
Actually I knew about that bug long ago too and also brought it up to Volusion in a ticket and they confirmed it but years went by and no resolution. I also did a script to change the logout string which I still use today in article #70.



<script language="javascript" type="text/javascript">
jQuery(function(){
jQuery("a[href='login.asp?logout=yes']").attr('href', 'login.asp?logout=notme');
});
</script>


To be honest it was so long ago I cannot really remember what exact issue I had with the customerID cookie with regards to checking login/logout status. I haven't looked at it since until you mentioned it and initial tests seems to be that they fix it. To the best of my recollection there were certain instances where the cookie would not disappear. Just cannot remember what that was.

demitrius
05-21-2013, 06:19 PM
Well I'll take comfort knowing the issue is gone at least. :P

Marc_NY
05-21-2013, 06:20 PM
Sorry to get off topic but check this open ticket out. Still to this day it's not fixed.



910 days ago (21850hrs ago) [11/23/2010 9:45:00 AM]
by Volusion Expert!

Hello,

I have tested and confirmed this issue and have forwarded it to the development team for further review. Once any updates are available, we will reply here. Thank you for your patience and thank you for choosing Volusion!

Raymond B.
Volusion Support
800-646-3517
--------------------------------------------------------------------
Review your Volusion experience: http://customercare.volusion.com/review
Check out our online resources including Training Videos, Knowledge Base, and Manuals http://support.volusion.com
911 days ago (21864hrs ago) [11/22/2010 8:02:00 PM]
by Customer

Items in the cart are duplicated when the following occurs. This has been verified on many sites all which are stock sites with no custom javascripts loaded. Please verify on a stock site with soft add turned on.

See this thread on the forums for other comments.

http://forums.volusion.com/t5/Volusion-Software-Discussion/Bug-Report-Items-in-cart-are-duplicated-upon-logout-with-query/td-p/71055


Here is the exactly steps that generate this error.

1- Goto the site that has soft cart turned on and goto any product and add exactly one quantity of an item to the cart.

2- Goto the one-page-checkout.asp page directly or via the shoppingcart.asp page. (you can login as a customer or not it does not matter)

3- On the bottom of the one-page-checkout.asp page you will see a link to "logout"

4- Click this logout link

5- You will be re-directed to the login.asp page and the query string "logout=yes" will be shown in the address bar

6- Now on your page hover over the "view my cart" or "view my cart" image.

7- When the soft cart pops up you will notice that the item in the cart has doubled in quantity.

8- Now do the following additional check

9- Re-enter your complete url + "/login.asp?logout=yes" at the end and then repeat item 7,

10-For each time you re-enter this URL and then hover over the "view cart" it will duplicate the current quantity.

demitrius
05-21-2013, 06:36 PM
lmao, just tested it... that's hilarious. Oh dear.

Marc_NY
05-21-2013, 07:21 PM
Anyway dtran09, this should do what you want based on the CustomerID cookie existence. Will not work on W09 version. Untested.

Add to article# 64



<script type="text/javascript">
jQuery(function(){
if (document.cookie.indexOf("CustomerID") !=-1 ){
jQuery('.v65-checkout-details-row, .v65-checkout-details-row').css('display','none');
jQuery('.v65-checkout-login-button-cell').css('visibility','hidden');
}
});
</script>

dtran09
05-22-2013, 06:45 AM
Anyway dtran09, this should do what you want based on the CustomerID cookie existence. Will not work on W09 version. Untested.

Add to article# 64



<script type="text/javascript">
jQuery(function(){
if (document.cookie.indexOf("CustomerID") !=-1 ){
jQuery('.v65-cart-checkout-header-row, .v65-checkout-details-row').css('display','none');
jQuery('.v65-checkout-login-button-cell').css('visibility','hidden');
}
});
</script>


Awesome, it seems like it is functioning to test for login status.
FYI, just hiding the login fields doesn't work because it still shows the "Login and Checkout" button, and clicking that with those fields hidden gives an 'email address / password incorrect'

I'll figure out how to make it just one button and post the solution. All I needed was the if condition, really. Thanks!

Marc_NY
05-22-2013, 07:28 AM
I made a change to the script above to reflect the correct element class. It should work correctly now. This method does not alter the underlining HTML form.

What you have currently on your site, by replacing HTML, will work but I would use caution when doing that as you never know what Volusion will stick in there that may be required in the future. A blanket replace function as you have it may in the future break some other functionality and you wouldn't know it until sales drop off. I personally would not do it that way.



var simplecheckout = '<input type="image" name="btn_checkout_guest" class="btn_checkout_guest" src="/v/vspfiles/templates/223/images/buttons/btn_checkout_guest.gif">';
jQuery("#v65-cart-checkout-table").replaceWith(simplecheckout);

dtran09
05-22-2013, 07:36 AM
Could be simpler, but here is what I was wanting:


<script type="text/javascript">
jQuery(function(){
if (document.cookie.indexOf("CustomerID") !=-1 ){
var simplecheckout = '<input type="image" name="btn_checkout_guest" class="btn_checkout_guest" src="v/vspfiles/templates/223/images/buttons/btn_checkout_guest.gif">';
$("#v65-cart-checkout-table").replaceWith(simplecheckout);
}
});
</script>