****UPDATE****
Turnbulm will shortly be starting a new thread as the functionality has been drastically improved. In the meantime I recommend reading these posts to keep abreast of changes
Start of new project http://gallery.menalto.com/index.php?name=PNphpBB2&file=viewtopic&t=27789&postdays=0&postorder=asc&start=32
Expanding the functionality and breaking it into 3 modules, also requires CVS build of g2
http://gallery.menalto.com/index.php?name=PNphpBB2&file=viewtopic&t=27789&postdays=0&postorder=asc&start=103
Most recent changelog
http://gallery.menalto.com/index.php?name=PNphpBB2&file=viewtopic&t=27789&postdays=0&postorder=asc&start=150#149817
Torch being passed: http://gallery.menalto.com/index.php?name=PNphpBB2&file=viewtopic&t=27789&postdays=0&postorder=asc&start=210
****UPDATE****
Turnbulm has taken over improving this module (and is doing a wonderful job of it). New functionality has been added and I recommend reading through the first 5 pages to see what has been done.
****UPDATE****
Gallery2 Beta 3 is out and the beta 2 plugin works just fine with no modifications. DOWNLOAD THE BETA2 MODULE.
****UPDATE****
Gallery2 Beta 2 is out and as promised here is the latest checkout plugin. Changes include:
*changed the checkout module template files and made them compatible with the new layout (only tested on the default theme)
*Bumped the version required for the core API so it will work with the new api without complaining
*changed "snooping" to "intrusion" on the last jump to paypal page to sound more professional.
****UPDATE****
I've corrected the bug with session info remaining. Redownload this zip file. I've also looked at the layout changes made. I'm not too happy as they went from a css layout to table based. I'm not exactly an html layout person and I've had a hard time making it look as good on todays CVS as the Beta 1. I recommend installing Beta-1 which I've verified working. When Beta 2 comes out I'll update the module. I will not make changes until a new Beta comes out. I don't have the time and the Layout changes are in full swing.
____________________________________________________
I've just finished whipping up a paypal checkout module. It's not terribly complex functionality-wise but you can easily sell photos with it.
Features:
*Up to 8 size/price options
*Up to 3 paper options
*Customizable currency option for display. (need to change line 40 in GoPaypal.tpl so paypal picks up which currency though)
*It uses paypals advanced cart feature. Each picture is added to the cart so it's not just a lump sum payment thing.
*shipping costs are handled through paypal. Setup your shipping costs there.
What it does not do:
*Can't specify albums not to sell. All items are for sale for the same prices
*Does not save order information. Paypal will do that for you
*Doesn't hook into anything but paypal
Current Bugs:
*The only thing that I haven't been able to figure out is in the site admin you click on install module. It says it installed. Then you click on configure and set the settings. After that you have to go down and click on activate. I'm not sure if the 3rd one is just part of the flow but it seems redundant.
*This is more a "feature" If you cancel the checkout the gallery cart items are lost. Gallery clears the cart right after handing off to the module. Not a huge issue but someone might complain.
I'm running it on Gallery2 CVS as of about a week ago. It should run on Gallery2 Beta 1
Posts: 239
This is how modules work.
Thanks for the contribution!
Posts: 7994
Awesome! I've added it to our contributions page.
Posts: 239
bharat, awesome job adding his awesome contribution to our contributions page!
Posts: 35
I have some suggestions for your module, as well as some bugs i found.
1. When i go to checkout via paypal, all the checkout size selection stuff is displayed beneath the photo blocks and the rest of the side bar info. I have to scroll down to see it, and it would be easy for people to not realize its down there. I think it would be good if you could make it be displayed to the right of the sidebar.
2. The "checkout via paypal" option is not very noticeable. I think it would be great if you had a "purchase photos" button on the shopping cart, seperate from the cart actions menu.
3. I added a photo to my cart and then selected "checkout via paypal" then i clicked the browser back button and went back to my gallery. I closed the browser window. Couple hours later I opened up my gallery, and added two photos to the cart. Those were the only two photos in the cart (you say in known bugs that gallery clears the cart so iguess this is normal). I then went to "checkout via paypal" and 3 photos were in the checkout screen (one of them was the one i added earlier that should have been cleared), but the one i added earlier didnt have a thumbnail. I proceeded to the next screen but got this error:
Error (ERROR_BAD_PARAMETER) :
in modules/core/classes/helpers/GalleryEntityHelper_simple.class at line 50 (gallerystatus::error)
in modules/core/classes/GalleryCoreApi.class at line 2055 (galleryentityhelper_simple::loadentitiesbyid)
in modules/cart/ModifyCart.inc at line 109 (gallerycoreapi::loadentitiesbyid)
in main.php at line 168 (modifycartcontroller::handlerequest)
in main.php at line 74
in main.php at line 65
Posts: 8601
regarding #2, dleaberr1 just wrote it to the cart api.. that's where cart plugins currently appear.
Posts: 14
Regarding number 3: A lot of data is stored to the session. When you successfully complete a checkout the session data is removed. What I didn't know how to do was remove the session data if they exited early. I think I'll modify the code so when you start a checkout it clears the session data. I'll probably do that today.
Regarding number 1: What theme are you using? I've only used it with the default matrix theme. Anything else and you're on your own. You probably have to modify the html in the *.tpl files under the modules/checkout/templates directory.
Thanks for the comments
Posts: 35
I'm using the default matrix theme, yesterday's nightly build.
I think it might be a problem with yesterdays build because i also noticed that the album actions menu that normally appears under album thumbnails moves to the right of the thumbnail if i stretch my browser screen to allow room. You might wanna try it with the most recent build to see if you get this problem to.
Thanks!
EDIT: Now when i try to checkout via paypal i get this error:
Error (ERROR_BAD_PARAMETER) :
in modules/core/classes/helpers/GalleryEntityHelper_simple.class at line 50 (gallerystatus::error)
in modules/core/classes/GalleryCoreApi.class at line 2055 (galleryentityhelper_simple::loadentitiesbyid)
in modules/cart/ModifyCart.inc at line 109 (gallerycoreapi::loadentitiesbyid)
in main.php at line 168 (modifycartcontroller::handlerequest)
in main.php at line 74
in main.php at line 65
Same error as last time but this time it doesnt even make it past the cart screen.
Posts: 14
I've updated my original post but thought I'd also post here.
I've corrected the bug with session info remaining. Redownload the zip file. It also shows up in the cart menu as "Purchase Photos" which makes it much clearer and I don't know why I didn't think of that.
I've also looked at the layout changes made. I'm not too happy as they went from a css layout to table based. I'm not exactly an html layout person and I've had a hard time making it look as good on todays CVS as the Beta 1. I recommend installing Beta-1 which I've verified working. When Beta 2 comes out I'll update the module. I will not make changes until a new Beta comes out. I don't have the time and the Layout changes are major. If you're really going to sell photos with this though you probably don't want to have a bleeding edge CVS version
Posts: 3236
If you are going to sell photos, you may want to avoid G2 entirely since its not really recommended for production environments
Posts: 35
Why is that? I keep hearing that, but its seems pretty stable to me. The only time i have any problems is when i try to upgrade it or add a module or something. I was thinking about starting a photo gallery service using G2 for local photographers, is there any reason why that would be a bad idea? Like is g2 going to suddenly stop working for no reason or delete all their photos?
Posts: 7994
We don't recommend G2 for production environments because we are not geared up to provide the level of support that would be required for production. We'd rather spend that time on improving the product and completing our own goals for it (like improving performance and the theming system).
Posts: 14
I've updated the module to support Gallery2. The announcement and download are in the original post.
Posts: 32509
dleaberr1, great. good to see that it's kept up to date and working!
Posts: 30
I've downloaded and installed the latest checkout into Gallery 2 - but I'm having a problem.
I can add pictures to the cart, select the size and quantity, then when I go to purchase photos - the shopping cart is empty.
Another question as well - how do I update pricing? Uninstall then reconfigure?
Posts: 14
Concerning issue #1 I haven't seen this and highly suspect you've done something wrong. The checkout module ignores the quantity selected in the cart module and once you hit purchase photos the gallery cart is cleared because it handed off fulfillment to the checkout module.
Issue #2: Goto the admin page, find the checkout module and modify to taste. You need to set it up to begin with which might be why you're having issue #1 in the first place.
Posts: 30
Thanks for the reply - I fixed the issue, and yes I had done something wrong.
When I entered my original pricing, I included a $ before each value. In the cart page, this translated into double $$ on the pricing. Which apparently led to the shopping cart being empty when I went to checkout.
I removed the extra $ and then it was fixed. FYI, in case someone else does this.
Next question - how do I add an extra pricing option? The mod has 8 choices, and I need 9.
Thanks
Posts: 14
To add an extra pricing option you will have to modify the following files:
line 115 in Admin.inc
line 91 in SelectSizes.inc
That should be about it. Everywhere else should pick up the changes. I make no guarentees the layout will look nice but that shall be left as an exersize for the reader.
Incidentally if you want to add more paper options it's just a few lines below the price/size lines.
Posts: 30
Thanks - it worked and it looks fine!
Posts: 9
I tried to install the checkout, and it doesn't show up
in module administration. Is there any more information
on where it should be placed?
I got a packagecheckoutmodule with subdir
packagecheckout and cart.
If it gets installed correctly, which section will it appear under.
(pointers to more docs appreciated
Thanks
Seth
PS another thing I hope to do - eliminate the word Photo....
Add Item to your cart is better.
Posts: 8601
pachai, did you extract the file into your modules dir? ie, you should have modules/packagecheckout and modules/cart/templates/local
Posts: 9
Yes. Actually, just to make sure that there was no ill effect
from using cp -r, I removed the directory and re-did the extract
after a cd modules
(i.e., cd gallery/modules; unzip ../../g2checkout.zip)
Q1: Which section of the Modules Admin should I expect to see it in?
Q2: what is minimally necessary and sufficient to reload the modules list?
Do I need to logout? I have been doing this, though
intuitively, it really shouldn't be needed.
Thanks
Seth
Posts: 8601
Site Admin / Modules, you don't have to relogin.
Posts: 9
What name will it have?
I already had a "cart" - it doesn't have any configuration option.
I was experting to see a "checkout" or the like.
Thanks for all your help.
Seth
PS once it is installed & activated, will I then see the features mentioned above?
pricing, Checkout with Paypal?
Posts: 11
Perhaps it's a Windows vs Linux thing or something BUT.... I downloaded the zip file. Unzipped it locally using Xp built in extract..... there is no packagecheckoutmodule with subdir packagecheckout and cart. Just checkout with subs of classes and templates......is the beta2 ZIP file not setup to be extracted locally in Windows? Would it actually extract differently some other way. I'm a hobbiest photographer and not linux/php inclined ~at all~ Just loving Gallery2 but straining to commit to the time required to understand how this all works.
Posts: 9
Re: Not seeing checkout module....no clue what the problem was,
I deleted previous attempts, downloaded anew using lynx,
this time I did the unzip with the .zip file in the modules directory,
and it works.
Posts: 9
Another issue - did anyone see this issue.....
I did not see the Paypal Icon when viewing with Firefox.
Exploder shows the icon fine.
I did not try it from a Linux client yet.
Server is LAMP/Apache 2.
Any thoughts?
Thanks alot!
Posts: 14
pachai:
packagecheckoutmodule is a completely different checkout module. It's not really maintained anymore and expect to do a lot of hacking on it. My checkout module is (surprise) named checkout. Secondly I do all my testing in firefox so it's very strange that the icon didn't show up. I've noticed a few times that paypal bogs down or something when it's trying to fetch that image, maybe you ran into that. I just tested it and it works fine in firefox
I see that beta 3 just came out so I will test it out and see what I need to do for the module to work correctly
Posts: 147
any update for beta 3?
Posts: 14
I just did a clean install of gallery2 beta-3 (the upgrade didn't really work, I couldn't use mysql with transactions) and I'm happy to anounce that the same module from beta2 will work just fine in beta3. So download the beta2 module for beta3 also. I've updated the 1st post to reflect this.
Posts: 431
dleaberr1- thanks for a really great module! This answered one of my main problems, and it's nice to see it's being so actively maintained as well. One thing that bugged me a bit was the whole thing about Stage 3 - I just get to a page where I have to click to go on to PayPal, which seems a bit pointless.
I've modified your module slightly (just cutting and pasting things around) to replace the "Confirm Order" button in Stage 2 with the PayPal button out of Stage 3. The modified files are attached - if you install these, there is no longer any need for either GoPaypal.inc or GoPaypal.tpl
I'd be really interested if you have any kind of feature roadmap for this module. There are a few things I'm interested in, and I might start tinkering myself - but I'd focus my tinkering on things you're not just about to finish and release yourself!
Edited - removed files, they're included in the full version in my post below.
Posts: 14
Turnbulm: I have no plans for adding any other features to the module. I coded it for my own photography site and it does everything I need it to do. I will maintain the module for each beta and the final but after that I'm done. As such my interest in adding new features is low.
I'm perfectly okay with you taking it to the next level. I'm not really sure what you would do but don't make it an ugly hack. If you need to create some database tables to store shipping info figure out how to do it using gallery's abstraction layers. Obviously you can ignore that if you want, but you will spend way more time answering questions about how to install the ugly hack then if you just do it right.
If you do a dramatically different release I only ask you start a new thread so people don't get confused.
Posts: 431
dleaberr1 - I've kept this in here for now as I think it's appropriate that people realise this is your module at heart - you deserve credit for it! If you would prefer me to move into a different thread at any time just let me know.
I've put together a list of the features I was interested in for this module below. This was written before I started playing with the code over the past couple of days, and so it includes some things I've already finished. It's in no particular order:
1. (Done) Persistent storage of transactions (within the G2 model)
2. Price Lists - the ability to have different price lists applying to different users/groups and even to albums or items. This would allow me to offer discounted pricing to my regular customers, or to put a premium on articular items for instance. There's going to have to be some interesting logic about how the "winning" price is selected for a particular item being purchased by a particular user...
3. Quantity discounting - my printing supplier offers these discounts to me, and I'd like to be able to pass them along. So, if someone orders more than a set quantity of a particular product type then they should get a lower price per unit. This should apply to all items ordered for a particular product type, not just a single item with sufficient quantity (i.e. ten 6x4 prints of different images should still qualify for the 10+ price)
4. Allow the "paper type" choice to be enabled or disabled per product - it's not appropriate to all the products I would like to sell (e.g. Canvas prints)
5. (Done) PayPal Instant Payment Notification - accepting notification from PayPal and updating the persistent transaction record with that information
6. PayPal encrypted transactions - not sure if I really want/need this, as I can just validate the total price paid against what I think it should have been before I fulfill the order. I can see it might be more important if I ever do automated fulfillment.
7. (Done) Configurable shipping amounts that can be shown within Gallery then persisted into the PayPal transaction
8. Admin view of transactions
9. Admin setting to use the PayPal Sandbox for testing instead of going straight to the live site
I'd be interested to hear if anyone else has any suggestions. I'm not saying that I'm going to write them in, but if they're things I think "hey - that's a good idea" for then there might be hope
In the meantime, attached below is my current version of the module.
*** UPDATED ***
Version 0.1.4 of the module is now available, with some enhancements. See my new post on page 4 of this thread to download the new version.[/]
Posts: 45
Thanks Gallery for such a great program! Another donation from me is due!
dleaberr1 and turnbulm thanks for the great effort that you are putting into this module!
This is a great start to what I am looking for to sell my pictures on the internet.
Thanks!
Now my question...
I haven't actually installed the module yet but I have not read anywhere about having the option to email the cart to someone. 95% of my pictures sales are to local parents wanting pictures of Johnny or Mary playing their sports. They don't want to deal with PayPal they just want to send me a personal check.
Right now I have them email me with picture numbers, size, and quantity wanted. I also have them send me their address so I can mail the prints out to them right away. It would be great to have them load their cart up with the pictures with size and quantity they want and they can select either to send me their cart order or through PayPal.
A little comments box would be needed also that would allow them to give me their address and any other comments like "great pictures, thanks".
I am no programmer so I would have no clue what it would take. I barely have time to install G2 and try it out. I take thousands of pictures a week and that keeps me very busy.
I love how G2 is looking and I was excited to see the "cart" option but since I do my own printing, the cart option wasn't very useful as far as I can see right now. Am I missing something?
Another sidenote about being able to email the cart to someone, parents I know would love to pick out their kids pictures from the hundreds of pictures and email the thumbnails to family members. I usually put up 500+ pictures per game so that makes a lot of pictures for someone to look through to get to their kids.
Am I asking to much? I don't think so...
Thanks again!
Brian
www.HighPulse.com
Posts: 45
I just finished the install of the module and the only problem I have is when I send it to PayPal, the currency is in "Pounds". How can I have it set to US dollar?
Thanks.
Posts: 431
Brian,
Full reply to follow... but as a quick answer:
Currency - search through the template files - I think it's in ConfirmPhotos.tpl - and change "GBP" to "USD". I must make this configurable.
Email - PayPal will email you when an order is placed, so that's handled.
(edited - I just read your post properly and realised what you asked :oops
I'm not sure about getting the cart to just email you instead of heading off to PayPal. I guess it shouldn't be that hard - Gallery has an email sender in there somewhere, and it should basically just be a different kind of action instead of the "PayPal" button in Stage 2. I'll have a bit of a think about this because it probably opens up a whole new element to the module, which is to plug in different payment processors.
I'll post some more details later,
Matt.
Posts: 45
You were right about the location of the needed change for US dollar. That took care of it, thanks!
Getting an email of the "cart" without going through PayPal is the key for me. PayPal will only send me an email if the purchase goes through them completely.
Thanks!
Posts: 157
turnbulm - I tryied to install "checkout - Version 0.1.3
" on "G2 Beta3" but, can't configure it, when I save setings gave me the error on the bottom, can you help me.
Error Detail -
Error (ERROR_STORAGE_FAILURE)
in modules/core/classes/GalleryStorage/DatabaseStorage.class at line 1236 (gallerystatus::error)
in modules/core/classes/GalleryStorage.class at line 261 (mysqldatabasestorage::addmapentry)
in modules/core/classes/interfaces/GalleryPluginParameterMap.inc at line 98 (gallerystorage::addmapentry)
in modules/core/classes/helpers/GalleryPluginHelper_medium.class at line 397 (gallerypluginparametermap::addmapentry)
in modules/core/classes/helpers/GalleryPluginHelper_medium.class at line 347 (gallerypluginhelper_medium::_addparameter)
in modules/core/classes/GalleryCoreApi.class at line 374 (gallerypluginhelper_medium::setparameter)
in modules/checkout/Admin.inc at line 79 (gallerycoreapi::setpluginparameter)
in main.php at line 182 (admincontroller::handlerequest)
in main.php at line 86
in main.php at line 77
Posts: 431
pgilbert - it looks like you might have a different version of the admin.tpl file. The error you show is when we're retrieving the postage amount from the form and saving it. On the configuration page, is there a box asking you for the postage amount? If there isn't then that shows that you have a mismatched version of admin.tpl - make sure you have the one that was in the zip file for v0.1.3.
If this was an upgrade of a previous version rather than a fresh install of the module, please can you try uninstalling it completely (including deleting the 'checkout' tree from inside 'modules') then reinstalling?
I ran v0.1.3 on G2B3 with no problems before I posted it, so it should be fine. If you still have problems then let me know and I'll see what I can find out.
Matt.
Posts: 8
Hi there,
I found this great Gallery extension today and have started messing around with it. Everything seems to be working fine, except for the currency thing mentioned earlier. Every order that is sent to Paypal ends up in GBP. I looked through the files and could not find anything in ConfirmPhotos.tpl. However, I did find this in GoPaypal.tpl:
<input type="hidden" name="currency_code" value="USD">
Curiously, this is set to USD and not GBP, and changing the value to "EUR" doesn't seem to have any effect. Please help me out here...
Oh by the way... the gallery is located at: http://www.piep.nu/gallery2/main.php so you can see for yourself.
Thanks in advance!
Peter
Posts: 431
PiEp - I looked at your gallery, and there was something a bit strange going on with the cart. It looks a bit like you're using v0.1.3 that includes the postage option, but the workflow is out of an earlier version (where PayPal is a separate stage 3 screen).
There also seems to be some kind of problem with the link to stage 3 when you click the "pay with paypal" button on the ConfirmPhotos view - I get an error when I click that.
Which version did you download and install? Was it a clean install, or did you upgrade from a previous version?
Posts: 8
I am VERY sorry, but I guess I was messing around with the module while you were looking at it. I have put it back the way it was now. Please check again if you have the time.
Peter
Posts: 431
PiEp - no problem
Can you tell me which version of the module you have installed please (in Site Admin -> Modules)?
Posts: 8
It's version 0.1.3.
Thanks!
Posts: 431
PiPe - OK, I just looked at it again, and it seems you have v0.1.3 set up. The currency code is being set in ConfirmPhotos.tpl, and it's currently showing GBP. If you view the HTML source of the confirmphotos view just before you click the paypal link, you can see this near the bottom.
FWIW I've made the currency a configurable parameter in the next version, which I'm hoping to upload within the next day or two.
Posts: 8
Then it seems that $ConfirmPhotos.csymbol is not set right in my environment, since the Paypal transaction shows up in GBP. Did you try placing an order?
Posts: 431
PiEp - csymbol is the display symbol for the currency - it doesn't relate to the currency code that is passed to PayPal to process the transaction.
If you take a look in ConfirmPhotos.tpl, you will see the following line down near the bottom:
This is where you need to change GPB to EUR so that PayPal takes payment in Euros.
Posts: 8
Well, it seems I don't have that line in my version...
Posts: 431
I've just downloaded the v0.1.3 zip file from this thread and confirmed that line is there. It's line 116 in ConfirmPhotos.tpl - make sure you are looking at the .tpl file (in modules/checkout/templates) and not the .inc file.
If the line isn't in your installed .tpl file then it looks like you have some old files left over from a previous version.
Posts: 8
OK, I just downloaded v0.1.3 from this thread (can't remember if I did that before). Found the line, changed it and it works now! Thanks for all the help so far and I am looking forward to future developments.
Suggestion/feature request from me: possibility to send an e-mail with the order to a specified address.
Thanks again!
Peter
Posts: 431
No problem - glad it's working! v0.1.4 is undergoing stress testing at the moment (i.e. I've just told my wife to go try and break it!), there are a number of small improvements in there, including admin settings for currency code.
I assume you mean an email direct from Gallery instead of going through PayPal for payment - otherwise you'd already have the email from PayPal anyway. Someone else mentioned this earlier in the thread as well. My initial reaction is that this isn't exactly what I (and probably dleaberr1) wanted from this module, but it does raise the interesting concept of different payment/fulfillment modules within this same framework. After all, the basic cart in Gallery doesn't have the product/price options that are in checkout. That's something I'm going to have to give some thought...