Feature #13

Create a donation drive module

Added by J. Simmons about 12 years ago. Updated almost 3 years ago.

Status:Resolved Start date:04/08/2011
Priority:Normal Due date:
Assignee:- % Done:


Target version:v0.2.1 - Public Beta Enhancements


This should be a plugin and work similar to Pledgie or similar offerings. May just create it as a Pledgie plugin.


Updated by J. Simmons about 12 years ago

Looking into how we could do this. And one idea would be a new wiki macro for donation drive sites like pledgie and chip-in. Could be modeled after wiki macro plugins like this one for youtube.

One quick question then is do the wiki macros work everywhere there is formatted text (like the project and main site homepages or in forums and issues). If so, then you could even do drives for individual features and put drives on the project page... Or in news stories.

Updated by J. Simmons about 12 years ago

Blog post series on writing Redmine Plugins:

Updated by J. Simmons over 11 years ago

First draft of full list of types of payments to accept.

  • Pledgie - specifically embed the Pledgie Badge
  • ChipIn - specifically embed the ChipIn Widget
  • KickStarter - specifically embed the KickStarter widget
  • PayPal - specifically embed PayPal buttons
    • Buy now
    • Add to Cart
    • Donate

Updated by J. Simmons about 11 years ago

  • % Done changed from 0 to 70

Pledgie and ChipIn support are up and working (https://opendesignengine.net/projects/ode/wiki/Features#Embed-Chipin-Badge). Probably need an hour or two to wrap the other two up.

Updated by J. Simmons about 11 years ago

  • Status changed from New to In Progress

Updated by J. Simmons over 10 years ago

  • Target version changed from v0.2 - Public Beta to v0.2.1 - Public Beta Enhancements

Moving to v0.2.1 for the other two donation drive services to facilitate the launch of the public beta.

Updated by Kevin Bouwkamp over 10 years ago

  • % Done changed from 70 to 90

Fixed the Chipin badge, and got the Kickstart one working. Below is my wiki-formatting code I was testing with.

h2. Embed Kickstarter Badge

@{ {kickstarter(*account name*,*project name or url path*)} }@ (without the spaces) =>


@{ {kickstarter(fallmedia,Alphabet Apparel)} }@
@{ {kickstarter(fallmedia,alphabet-apparel)} }@


Updated by Kevin Bouwkamp over 10 years ago

The PayPal one is a little bit different since there isn't really a concept of projects or funds that pre-exist. I created a button on their generator and this is how it comes out:

1 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
2   <input type="hidden" name="cmd" value="_s-xclick">
3   <input type="hidden" name="hosted_button_id" value="6P7UX7ZAUBD9J">
4   <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
5   <img alt="" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
6 </form>

The only thing that really matters here is the hosted_button_id hidden input's value, in this case '6P7UX7ZAUBD9J'. Seems to be something PayPal creates on their end because there is a lot of pre-defined information built into these future transactions.

  1. Obtain a business account in order to gain API access. They have a button manager part of their API. Not sure if this would work for our arbitrary intentions, or if we could create buttons for other business accounts besides ours
  2. Let the user be able to just paste the HTML they have generated into the page. Letting any ol' user paste any HTML into the page has it's obvious drawbacks.

I'll stew on it a bit

Updated by J. Simmons over 10 years ago

As long as the hosted_button_id field is sufficient to identify the button for paypal, I would be fine with the macro being something like { {paypal(6P7UX7ZAUBD9J)} } (obviously without the spaces). We should also check and see if the "donate" vs "buy" buttons use different html in their rendering. Let me know if you want to get on a hangout sometime to chat about this one from a requirements standpoint, since it is more tricky than the others.

Thanks for all the work on this.

Updated by Kevin Bouwkamp over 10 years ago

OK so I went ahead and made the PayPal ones. Here is the wiki-formatting code I was playing with:

h2. Embed Paypal Badge

h3. PayPal Button Types

@{ {paypal_donate(*button id*)} }@ (without the spaces) =>

*OR* @{ {paypal_buynow(*button id*)} }@ (without the spaces) =>
*button id* is generated from "PayPal":https://www.paypal.com/us/cgi-bin/webscr?cmd=_singleitem-intro-outside _example where *7T7Z7DHEDQA6L* becomes our button id_ <pre> <form> ... <input type="hidden" name="hosted_button_id" value="7T7Z7DHEDQA6L"> ... </form> </pre>

It was either do it with individual macros, or make a macro: paypal(id,type). So I did both, but this wiki code only uses the former.

Just realized I forgot to do the add to cart button. Let me throw it in quick

Updated by Kevin Bouwkamp over 10 years ago

K here's some code for the PayPal add to cart button:

@{ {paypal_cart(*button id*)} }@ (without the spaces) =>


Updated by Kevin Bouwkamp over 10 years ago

  • % Done changed from 90 to 100

Updated by J. Simmons over 10 years ago

This is great news. I will get these on my test server this week and take a look. With any luck we could see them on the live server over the weekend.

Updated by Admin Administrator over 10 years ago

  • Status changed from In Progress to Resolved

Tested, and published to the live server.

Updated by Ida wallace almost 3 years ago

Thanks for sharing with us this kind of useful post. I appreciate an efforts for sharing this posts.
Ida, Assignment writer. http://www.secureassignmenthelp.com/psychology-assignment-help/

Also available in: Atom PDF