Wow, your response time beats mine out of sight!
I thought you might look to look at my attempts to develop private file stores, and enable member subdirectories on some folders. It works by checking local album.cfg during upload, so you can set local overrides to any variable.
You can have a look at a work in progress site.
http://www.warrenpointmatters.com/YaWPS-0.3/cgi-bin/yawps.cgi From there you will get a cookie identifying you as a guest, or else login as "ordinary" password="ordinary". Then click on Photo Archive on the left hand menu.
Get rid of the surrounding frame if you want by going to
http://www.warrenpointmatters.com/album57/cgi-bin/album.pl in the same window. (Presentation in frame needs work...)
If you did not login then you can browse everywhere except Paul_Smith. And you cannot upload except to /Public.
If you logged in as "ordinary" you can browse everywhere - if you go to Paul_Smith you will be asked for an album password = "paul". You can also upload
- images to the root (per_member_upload=1) so your file goes to member directory.
- .doc to the Paul_Smith album. (per_member_upload=0, logfile changed so files don't end up in public recent list, password=paul, movies gif changed, movies type=doc,)
- public album, you may view images, and upload.
Right you thought that was confusing. Here is how it works :-/ :
- Upload Form amended such that category applies to all uploads, so only need to get default album.cfg then one other album.cfg for each set of uploads. Category always points to a directory never "per_member_upload" as there can be many per_member_upload directories. "No Upload Allowed" form disabled as I don't know all directory permissions when writing form

- Main routine amended to readconfig (categrory,1) early in script if function="upload". Authentication in main now checks if user is recognised (username, password and authentication type) then checks if there is ALSO an album password set, if so then an additional cookie or form password is checked before granting view or upload to this private folder
- local album.cfg amendments stored in album.cfg file in directory where default values need to be overridden.
As yet error messages to failed upload or authentication are poor, portability is poor, commenting is poor, confidence in algorithm is moderate....
Please bear in mind that I am still developing this as a proof of concept, so my code is not tidy and runs only with my modified membership and session authentication script.... but you can download my modifications to vers5.7 code from
http://www.systematic-ni.com/downloads/perl/album5-7-PDS0-1.zipLet me know if this is useful to yourself and or others. How do you generally work with other contributors? I'm prepared to put some time into helping to get this into the standard code - what would you like me to do next?
Thanks for a great app.