I am waiting on a CVS account. Until then I have provided links to my modules.
uc_discounts module:
http://groe.net/drupal/uc_discounts-2009-02-14-1723.zip (updated link x2)
I started writing a Ubercart v2 (drupal v6) discounts module before uc_coupon was recently ported. So I did not intend to duplicate any work but I now have. I evaluated merging my changes with uc_coupon but decided the two modules were too far apart and my module was far enough along to release to the public. Let me stress that I am just beginning formal testing. This is a beta release. I plan to use this module in a production system but only after I complete testing. I welcome comments and bug notices. I will have this on drupal's CVS server as soon as possible. I am also working on simple documentation.
Why this module over uc_coupon? My module does the following that uc_coupon does not (at least that I am aware of):
1. Filtering based on multiple products or multiple terms: choose to filter based on products or terms then select the multiple products or multiple terms that apply to the discounted.
2. Multiple codes or no codes: you can enter one or more codes for a discount or you can choose to make the discount work without a code.
3. Qualification based on quantity: choose the number of items required to qualify for a discount (e.g. buy 5 items to qualify).
4. Checkout preview and javascript callback: you can get a discount quote on the checkout page just like shipping quotes.
5. Speed: should be faster than uc_coupon for mulitple products (as it stands now) because in my module products and terms are stored in separate tables one per row allowing for joins.
6. Weighting: weight discounts and determine the order in which they are applied.
7. Choose which discounts can be combined and which can only applied by themselves.
8. Force qualification based on a single product: if you have a "buy 4 get one free" discount that applies to all of your products, you can insist that a customer buy 4 of the same product to qualify.
9. Provides a CCK-based module for displaying codeless discount inside product pages (requires CCK).
What it does the same:
1. Discount # of products, a percentage or a fixed amount off.
2. Max number of uses.
3. Usage reports.
4. Expiration date.
What my module does not do that uc_coupon does:
1. Filter by user or role.
2. Report totals.
3. Disabling (in my module this is easily done by setting the expiration to a date in the past)
Requirements:
ubercart v2
date_popup (from date module: http://drupal.org/project/date)
CCK (for codeless product property) (http://drupal.org/project/cck)
Installation:
Extract and copy to /sites/all/modules/ or /sites/all/modules/ubercart/. Then install under modules section. The module adds a menu item under "Store administration"/Configuration, and a Reports menu item.
uc_referrals module:
http://groe.net/drupal/uc_referrals-2009-02-14-1723.zip
I wrote a simple referral module without looking too much at the affiliates module. I know my module is not as sophisticated as that module but it is Ubercart v2 and drupal v6 compatible (I'm not sure if the affiliates module has been ported, v2 still lists as Ubercart v1). You create a referral account and get provided a link. Then track referrals in the reports section. This is also a beta release that requires formal testing.
Requirements:
ubercart v2
Installation:
Extract and copy to /sites/all/modules/ or /sites/all/modules/ubercart/. Then install under modules section. The module adds a menu item under "Store administration"/Configuration, and a Reports menu item.
Please use these modules freely (though remember they are provided as-is without warranty). I welcome comments on either.
Thanks,
Ryan


