Gossamer Forum
Home : Products : Gossamer Links : Development, Plugins and Globals :

2.0.4 File Upload Question

Quote Reply
2.0.4 File Upload Question
Hi all,

Still working on the seemingly never ending project of a high end shopping cart pluging for Links SQL. Its come along way since I've last written - I will put a demo store for everyone to play with again soon.

But just to be clear, this isn't a little shopping cart plugin... My project converts Links SQL into a high end shopping cart, with major order processing features, inventory control, vendor management, credit card transactions, interaction with the USPS, FedEx etc...

It is quite possible alot more than some of the people that have been looking for shopping cart plugins need.

Anyways.... As many of my fellow plugin writers know... Almost each verion upgrade of LinksSQL breaks the plugsins... The deeper you modify things the more breaks it does... So quite a ways back, I had to cut my time losses and go with version 2.0.4.

So my question here is regarding versions before file upload was added back to Links.

I know that the features for form file uploading are written into the GT:CGI module... However, I have had a tough time getting them to function for me.

I know it has been done... Does anyone have any tips on using this module? Any code you might care to share would be great....

I sure hate re-inventing the wheel.....

Thanks for any suggestions/help!

Quote Reply
Re: [AlexJ] 2.0.4 File Upload Question In reply to

I hate reinventing the wheel, but version 2.04 is missing _a_lot_ of improvements from 2.1.0

I don't know how you started designing this, but 90% of the real work would (or could) be in the templates, template globals, and using ../Plugins/ShoppingCart as a repository for the template functions, even if you aren't using the plug-in system, per se. New scripts or changes to the links codes would be (or should be) less than 10% of the changes.

The template parser is incredibly powerful, and the plugin system gives you access to your own libraries and configuration files, even if you are not using them as a true plugin.

I realize the frustration with the plugin system, and upgrades, something the plugin system was supposed to avoid, but there _really_ is a way to add your "major" upgrades into Links, leaving the core Links codes unchanged (for the most part).

Before going much further, you might want to upgrade to 2.1.0, and build the cart modules into that.

I've gone backwards, and re-written, re-thought, and updated all my programs and sites to 2.1.0. It's been _WORTH_ the upgrade, and it's quite possible that this would be the last major rewrite, _except_ for integration into Gossamer Community.

All my "module" code survived pretty well intact. Moving the user scripts into the new shell/calling format using back-end .pm files in a hierarchy was fairly easy (I had been moving sort of in that direction anyway).

I really would suggest taking this moment to look at 2.1.0, and re-engineer your code into it. Even "hacking" your current code into your own back-end module system quickly, and doing further development in the new layout will pay back big rewards.

By doing so, you will be able to also tap into the ratings/review system, and upgrades people will write for that. You will be able to use and integrate other code and features into your cart.

By taking a bit of time, you can prevent locking yourself into any specific version, more now, than before.

It's what I'm doing, and have been doing, and the up-front time to build my own module library on top of Links is paying off, and will continue to do so. The bigger the project, the more it will payback.

PUGDOG´┐Ż Enterprises, Inc.

The best way to contact me is to NOT use Email.
Please leave a PM here.
Quote Reply
Re: [pugdog] 2.0.4 File Upload Question In reply to
Thank you for thoughs on making the jump to 2.1.0. Hearing it from a fellow developer, gives me quite a different view on it...

I will have to seriously look into how much work the conversion would be.... and I will.

In the meantime, I have solved this problem on my own...

Thanks again for your time and comments...