Closed (fixed)
Project:
UC Worldpay
Version:
6.x-1.x-dev
Component:
Code
Priority:
Normal
Category:
Feature request
Assigned:
Unassigned
Reporter:
Created:
4 Feb 2009 at 14:48 UTC
Updated:
19 Nov 2011 at 15:40 UTC
Jump to comment: Most recent file
Comments
Comment #1
dublin drupaller commentedhi Alan,
LOL!
glad the Drupal ecommerce worldpay.module was of help...do you have a live worldpay account I can test the module on?
Cheers
Dub
Comment #2
NecroHill commentedPage looks better, thank you!
but WorldPay still returns URL which looks like https://select.worldpay.com/wcc/card?op-PMGetNextPage&PaymentID=xxxxxxxx...
instead of http://www.yoursite.com/cart/worldpay/complete
therefore customer doesn't have saved cookies for this URL and sees User login form
any ideas?
Comment #3
alanburke commentedAssuming the user login form is contained in the login block,
set the block visibility for the login block to NOT appear on that page.
As soon as the user navigates to another page,
they are back on your site, and their session is active.
That page is always served from the Worldpay site, so that might be your only option.
Alan
Comment #4
davej commentedIs there any reason not to replace:
with simply:
and similarly for the other print/exits in function uc_worldpay_complete? - That function is the page callback for cart/worldpay/complete and a page callback normally returns, rather than prints, the page content, which is then themed as normal. Have I missed something?
Thanks,
Dave J
Comment #5
alanburke commentedYes.
This "page" isn't actually returned from your server.
It is returned by the Worldpay server.
This is the reason for setting "base href".
It also explains the problems at
http://drupal.org/node/369096#comment-1284460
The login block appears because the response is coming from the Worldpay server,
and therefore the cookie which knows you are logged in doesn't work.
Alan
Comment #6
davej commentedGood point! Here's my patch, applying the theming for all cases rather than just successful transaction.
Dave J
Comment #7
andrew.lansdowne commentedThis is good, but is it possible to use the node template to display the messages? Or to create a new themeable template? in our theme, if the content is written directly to $content in page template, it has no content wrapper divs which place margin/padding around the content. I would do this if i knew how.... will try
thanks
Comment #8
Alice Heaton commentedHello,
Thanks for this patch :) It works well for anonymous users, however there is a problem for logged in users : when uc_worldpay displays those messages, the page is actually loaded by Worldpay and displayed by Worldpay : the original cookies are not available, and so the page displays as if the user was not logged in.
This can be confusing, so I think it would be better to theme this using a separate template - which can be made to be the same as 'page' for people who are ok with this approach.
I've posted a patch to solve a different problem (here : http://drupal.org/node/506286#comment-1975864 ) which also implements the themeing (in a way similar to davej's patch) but by using a different theme function ('uc_worldpay_redirect').
What do people think ?
Anselm
Comment #9
matason commentedThanks alanburke, davej - code committed - http://drupal.org/cvs?commit=281064
Comment #11
hixster commentedHi guys,
First time using UC_Worldpay module. I am using the 6.1rc-1, so I should have all the patches etc described in the thread. Unfortunately the confirmation page world page generates for me is garbage (see attached), I have a hunch that this could be due to my Acquia Prosper based theme that uses Skinr and the fusion base theme, although I could be wrong.
How /Where can I switch the module to use my own custom themed page or handcode markup?
regards
Hixster
Comment #12
matason commentedHi hixster, it's worth checking your completion page for empty divs, RBS makes a mess of them and it can make your theme look broken.
Comment #13
hixster commentedThanks for the quick response matason. I have a couple of questions relating to it.
- even if I find missing divs, how/where do I fix them.
- how does the confirmation page get generated, is it from the page.tmpl template as mentioned above (assuming yes
)
- the page is missing my cufon fonts etc and im assuming this is due to some missing CSS classes and/or JavaScript
- for above reasons I think it would be easier to provide a really simple page template of my own, how would I do that
Thanks for your time
Comment #14
matason commentedIt depends, I think the first thing is to determine whether this is your problem, then we can worry about how to fix it ;)
There are a number of things you can do here:
a) Make sure your completion page produces valid mark-up when you visit it directly. i.e. not by going through the normal check out process but by hitting the URL directly, (empty divs are valid mark-up AFAIK) but if you find any chances are RBS are messing those up.
b) Take the HTML source from your completion page that you get back from RBS and compare against the source in you got in a.
Here's the email exchange I had with RBS when I was testing and got this issue, I was on a pretty clean install of Drupal 6 using Garland:
And their classic "feature not a bug" response...
Comment #15
hixster commentedThanks for all the help Matason. I switched of all my blocks and customised the CSS a bit specifically for that page.
Thankfully Acquia prosper/fusion has custom id's per page, so quite easy. All working well now.
Many thanks.
Comment #16
thoughtcat commentedI've had this problem in my site, where the "payment complete" message was squished into a sidebar (I'm using Analytic). I resolved it by turning off all blocks on the cart/worldpay/complete page so the "payment complete" text now appears fine in the page, at least in Firefox (8). In IE(9) however *ALL* styles drop off that page altogether :-(
The WorldPay URL is even different depending on the two browsers. In FF my complete page url is https://secure-test.worldpay.com/wcc/card and in IE it says https://secure-test.worldpay.com/wcc/card?Lang=en&DispatcherID=mm2imscs4...
I don't know if this makes any difference to configuring the solution "Using different page templates depending on the current path" but I've not been able to get my head round the instructions there tbh. Is there a simpler CSS solution for this?