[checkout] Inheriting custom prices for Album custom fields

gallery@linuxce...

Joined: 2006-04-09
Posts: 3
Posted: Sun, 2006-04-09 10:00

Is it possible to have a feature where all items in an album (and sub-albums) derive a price from album customer fields in the same way as you can do per-item pricing?

I would be desirable to have a hierarchical override feature where the tope-level album would have pricing, then sub albums could override the parent album pricing.

I did try to mdify the checkout code but after quite a number of hours I gave up. My PHP skills are not really the strongest :-(

The method I used in updatePerItemPricing() was to simply lookup the parent item ID, then to parse the custom fields for that album, and so on and having the most specific price taking precedence.

BTW: Using checkout v0.1.14 with latest Gallery 2.1 and it works v.well.

Thanks

Phil L

 
Luke7799

Joined: 2007-07-10
Posts: 35
Posted: Wed, 2008-01-23 09:50

I have a similar problem.
Custom fields isn't working how id like it to..
I'm trying to make it so I can add only 3 out of my 5 prices to all of my albums/images, and then be able to go into one album and just change that one album so it only has 1 price. While all the remaining albums stay at 3 out of possible 5 prices.

Hope you can help me, it's kind of urgent.
Thankyou!

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Wed, 2008-01-23 13:17

As I understand it, that's what the per-item / per-album prices does already. Or else I haven't understood what you're trying to do. Perhaps you could explain a bit more clearly, perhaps with examples?

 
Luke7799

Joined: 2007-07-10
Posts: 35
Posted: Wed, 2008-01-23 21:50

Thanks for your reply.
Here is the problem in detail.

Our website is a sport photography business, so we have action photos(running, discus, etc.) and team photos. Without the use of custom fields people are ordering the action photos in the "custom A4 team photo" size. When they can only order the images in either a 6" x 8", 8" x 12" or Magazine Cover. And the Team photos on the website are being ordered in the 6" x 8" size. I need to resrict certain prices to certain albums. I would like every single album in my Gallery to only have 3 prices(6" x 8", 8" x 12" and Magazine Cover) and then I can go into those couple of albums with Team Photos and change the custom field for that album so the images inside that album can only be purchased in a "Custom A4 Team Photo".

So basically I want 3/4 prices to be for every album on Gallery, and 1/4 prices to be for only a few albums in Gallery.

Hope I explained this well enough.

Thanks!

Gallery version = 2.2.2 core 1.2.0.4
PHP version = 4.4.6 apache
Webserver = Apache/1.3.37 (Unix) mod_auth_passthrough/1.8 mod_log_bytes/1.2 mod_bwlimited/1.4 PHP/4.4.6 FrontPage/5.0.2.2635.SR1.2 mod_ssl/2.8.28 OpenSSL/0.9.7a
Database = mysqlt 4.1.22-standard, lock.system=flock
Toolkits = ImageMagick
Acceleration = full/900, full/21600
Operating system = Linux mars.websiteactive.com 2.4.21-47.0.1.ELsmp #1 SMP Fri Oct 13 17:56:20 EDT 2006 i686
Default theme = matrix
gettext = enabled
Locale = en_US
Browser = Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; .NET CLR 1.1.4322)
Rows in GalleryAccessMap table = 31
Rows in GalleryAccessSubscriberMap table = 66283
Rows in GalleryUser table = 2
Rows in GalleryItem table = 66282
Rows in GalleryAlbumItem table = 2122
Rows in GalleryCacheMap table = 71005

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Thu, 2008-01-24 11:16

You should be able to achieve that with the module as written:

Mark the teamA4 item as "Custom Field Only", and give it an internal reference, "teamA4". It will then not appear in any album, by default.

In the team-only albums, set the custom field "CheckoutProducts" to the value "only listed products" and set the custom field "CheckoutPricing" to "teamA4". This should prevent the non-listed products appearing in the album, but permit the listed product.

I've corresponded with the module maintainer and volunteered my time to rewrite the custom pricing section to remove its dependence on the custom fields module, and improve the interface and flexibility, and I'm waiting to hear a response.

 
Luke7799

Joined: 2007-07-10
Posts: 35
Posted: Thu, 2008-01-24 11:30

Thankyou for your reply.
I am already able to restrict only one image to one product etc.
Though what I was needing was the ability to set the custom fields for the whole Gallery structure.
So that every album has only 3/5 prices.
Then I can manually go in and change just those few albums to the "teamA4" price.
I have replied to another post in this forum.
Maybe that can explain my problem a little better.

Also its not letting me add a custom field to the album, like i can add it, but it doesnt work on all the items inside the album, any ideas?

And i dont quite understand by what you mean "change the CheckoutPricing to "teamA4". Do you mean in the picklist values?

Thanks!

 
Luke7799

Joined: 2007-07-10
Posts: 35
Posted: Thu, 2008-01-24 11:46

So basically,
I want to disable the prices that arn't beign used in the custom field mod.
So if its a plain image, no custom field data, i want only 3/5 prices to show up.
Though if an image does have custom field data, i want which ever price is specified in the custom field data for that image to be available only for that image.

Hope this explains the problem better.

Thanks!

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Thu, 2008-01-24 14:20

It sounds like you haven't really understood the custom fields pricing syntax (which I am the first to admit is hack-y opaque - hence my wish to improve that part of the module) or else I still don't understand what you want.

Quote:
I want to disable the prices that arn't beign used in the custom field mod.

You can't specifically *disable* individual items with a custom field. But you *can* achieve exactly what you want in a slightly different way.

Quote:
So if its a plain image, no custom field data, i want only 3/5 prices to show up.

Simple: just have those three items/prices set as normal in the Admin page. They will show up by default on all albums except where you change the custom field contacts as described in the following....

Quote:
Though if an image does have custom field data, i want which ever price is specified in the custom field data for that image to be available only for that image.

Also simple. For that item or album, set the custom field called "CheckoutProducts" to "only listed products" (which prevents the three default items from showing up) then *list* the items you *do* want to show up using the <internal-reference1>:<price1>|<internal-reference2>:<price2>|<internal-reference3>:<price3>|.... syntax in the "CheckoutPricing" custom field. If you don't specify a price here then the price from the admin page is used. If there's only *one* item to enable, and you want to use its default price, the contents of this field is just the product reference. Make sure to set *these* item/s to "Restrict to Custom Field Items" in the Admin page, or they'll show up in all the other albums too.

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Thu, 2008-01-24 16:43
Luke7799 wrote:
I have replied to another post in this forum.
Maybe that can explain my problem a little better.

In which you ask about editing the database tables - I don't think that's a sensible way to do what you want to do.

Quote:
Also its not letting me add a custom field to the album, like i can add it, but it doesnt work on all the items inside the album, any ideas?

You'll have to explain in much more details what you did, what you hoped would happen, and what actually did happen for anyone to be able to help

Quote:
And i dont quite understand by what you mean "change the CheckoutPricing to "teamA4". Do you mean in the picklist values?

I meant, put the value "teamA4" which was my example Internal Reference for that product into the "CheckoutPricing" custom field. The "CheckoutPricing" custom field doesn't have a pick-list, it should be free-form text entry. See the "per-item" part of this page: http://codex.gallery2.org/Gallery2:Modules:checkout

 
Luke7799

Joined: 2007-07-10
Posts: 35
Posted: Fri, 2008-01-25 03:34

That would be fantastic if this would work as you have explained it can.
Where abouts is the ""Restrict to Custom Field Items"" checkbox or something?

Thanks!

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Fri, 2008-01-25 09:57

It's on the admin page for the module, in the next to rightmost column of the list of items, as far as I remember. If you don't see it, you're not running the latest version of the module.

 
amarks
amarks's picture

Joined: 2006-12-14
Posts: 42
Posted: Fri, 2008-02-01 19:36

Hi I have a custom field pricing issue as the above user with pricing and it involves 19 different price list. I ahve followed all the instructions in the checkout (paypal) modules. I followed the pricing syntax as of coping and pasting with my internal references (attached). The prices show up but it is the same price for all sizes available and the only price available is the last and highest priced. The only photographs available are in the Print Pricing Menu Tree. Also the only two prices roght now are the top two just because of this issue.

Is there a way to make the View Cart more visible?

Gallery version = 2.2.2 core 1.2.0.4
PHP version = 4.3.11 cgi-fcgi
Webserver = Apache
Database = mysqlt 4.1.22-max-log, lock.system=flock
Toolkits = ArchiveUpload, Exif, Getid3, LinkItemToolkit, Thumbnail, Gd, ImageMagick
Acceleration = none/21600, none/21600
Operating system = Linux linhost265.prod.mesa1.secureserver.net 2.4.21-47.0.1.ELsmp #1 SMP Fri Oct 13 17:56:20 EDT 2006 i686
Default theme = carbon
gettext = enabled
Locale = en_US
Browser = Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
Rows in GalleryAccessMap table = 23
Rows in GalleryAccessSubscriberMap table = 3871
Rows in GalleryUser table = 2
Rows in GalleryItem table = 3869
Rows in GalleryAlbumItem table = 121
Rows in GalleryCacheMap table = 0

Thank you!
Adam

 
alecmyers

Joined: 2006-08-01
Posts: 4342
Posted: Sat, 2008-02-02 11:23

You have a lot of identical "internal references" - (9 different products *all* called "Print_Size_1" !!!!) - since each product is (not surprisingly) referenced internally by the internal reference, non-unique (that is to say identical) internal references will result in a failure to distinguish between them and they'll not surprisingly all end up with the same single price.

Make the internal reference for each product unique.

 
amarks
amarks's picture

Joined: 2006-12-14
Posts: 42
Posted: Sat, 2008-02-02 19:01

Thank you for the properly guided instruction on how to configure the custom field pricing using the Checkout/Checkout by Payapl feature.

Quote:
Mark the teamA4 item as "Custom Field Only", and give it an internal reference, "teamA4". It will then not appear in any album, by default.

In the team-only albums, set the custom field "CheckoutProducts" to the value "only listed products" and set the custom field "CheckoutPricing" to "teamA4". This should prevent the non-listed products appearing in the album, but permit the listed product.

Putting the Internal Reference (Print_Size_1) name in the Folder Print Size 1 Custom Field area along with putting the Print_Size_1 in the login > admin > checkout -> Internal Reference fields
I was able to set all the pricing accordingly.

Progress attatched.

Thanks!!

- Humility and Knowledge Create Wisdom -