More onion drupal development blog
In the last weeks I did some work on optimizing queries for the "Manage Supporter"-Interface in campaignion (online campaigning / online fundraising distribution). The goal is to filter Redhen contacts and then apply bulk-operations on them. In our larger databases we have up to 500,000 contacts and millions of activities - and the queries are not that simple either. How do you get “All supporters that signed at least two petitions last year but never made a donation”?
Usually when you try to uninstall a field-based module you're confronted with the following error message:
[module] is a required module and can't be disabled. Reason: Field type(s) in use - see Field list
In this blogpost I'm showing you how to uninstall such a module anyway (deleting all the stored data).
This week I've finally found the core of several issues that I've had in the past. Are you using install-profiles or features? Then this bug is likely to have affected you too.
Recently I came in a situation where I wanted to extend all entities of a specific type (payment) to reliably provide (and store) an additional property. At first glance this seems like a no brainer: simply use hook_entity_* to save/update/load the property to or from the database and that should do it. Turns out it isn't … and there is a lot to learn about how entities work in D7.
Lets take a look at a specific example.
A few weeks ago we've released our first public open-source version of Campaignion. It's a tool that helps non-profits and NGOs with online campaigning, fundraising and digital marketing. In this blopgost we'll explain some of the technical background and how it works.