CiviCRM
- Not Just a Contact Database
-
These optional components give you more power to connect and engage your supporters.

civiCONTRIBUTE
Online fundraising and donor management.

civiEVENT
Online event registration and participant tracking.

civiMEMBER
Online signup and membership management.

civiMAIL
Personalized email blasts and newsletters.
- Recent Blog and Forum Posts
-
Recent Blog Posts
Recent Forum Posts
Make your Voice Heard
Next stop Bristol for CiviCRM UK usergroup
Next meet up for the UK usergroup will be at the Create Centre in Bristol on Tuesday 22nd July, 4-6pm. Thanks to Dave Moreton, Circle Interactive, and and Sean Kenny, VOSCUR, for kindly organising and donating the venue. We're keeping the agenda open and attendee led so it is of maximum use: we'll start with introductions and a couple of short presentations (volunteers, anyone?), and then follow with an open discussion/round table.
- michaelmcandrew's blog
- Login or register to post comments
- Read more
CiviCRM integration with views ...
The Drupal Views module has some pretty cool functionality. Views 2 fixed the "everything is a node" concept from Views 1, this enables integration with CiviCRM (which does nothing with nodes). A concise description of Views from its project page: This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results.
CiviCRM profiles (in view/search mode) behaves like views. However it is not a flexible or configurable as views is for the end user. Integrating with views also allows the potential of integrating CiviCRM information with other Drupal specific information. e.g. Contact information on folks who are most active on your blog / forum / comments
I took user.views.inc as a model and started hacking away to create civicrm.views.inc. You can get a copy of that file from our svn respository. So far its quite simple and just integrates the civicrm_contact and civicrm_email tables. I hope to add the phone/address fields in the next couple of hours/days and get a better idea of how to potentially generalize it.
Default Dedupe Rule Settings
We made few changes to default settings for New dedupe
Now default dedupe rules settings are as follows
Fuzzy Rules for
- Individual => First Name AND Last Name AND Email
- Organization => Organization Name OR Email
- Household => Household Name OR Email
Strict Rules for
- Individual => Email
- Organization => Organization Name OR Email
- Household => Household Name OR Email
Implementing a custom ACL system in CiviCRM
From a forum post by Chris Burgess (with Green Party NZ). A related blog post is: Another approach to ACL and permissioning for hierarchical organizations
Our (Drupal5+CiviCRM2.0) site needed a regional ACL implementation in order to give us the ability to easily grant access for our internal staff to contacts in their geographic region. Because we have staff at a provincial, regional and branch level, we needed to be able to configure permissions for each level.
We did this by implementing code which overrides the ACL implementation in CiviCRM. I'd appreciate any input and suggestions on our methodology - it's a work in progress, but it's working well for us so far.
Event Price Sets and some explorations with custom search
CiviEvent is one of the more popular components in CiviCRM (followed by CiviContribute, CiviMember and CiviMail). We have improved CiviEvent significantly in the past few releases and more improvements are slated for CiviEvent in v2.1. With this increased usage, we've seen more folks using Price Sets. Briefly, price sets gives admins the option to break an event into smaller pieces and charge for each selected piece. Price Sets was one of the first significant of code contributions to CiviCRM (thanx to Ideal Solutions and Marshal Newrock). We were planning to restructure this code in 2.2, but there were two missing features which came up a few times with some of our 'regular' users.
The first missing feature was that two options in a price set item could not have the same amount. In order to include meals on multiple days with the same price, you would have to separate them into different items. Price Sets did not allow an amount of 0 either in an option. Fixing this was relatively easy, we just shuffled around a few fields that we used in the civicrm_option_value table to fix the above problems.
- lobo's blog
- Login or register to post comments
- Read more
Injecting CiviCRM profiles in Joomla Registration Flow ..
We've had the ability to add one/more CiviCRM Profiles to the drupal registration page since the first release (thanx to the flexibility of Drupal hooks). This was not possible in Joomla 1.0.x and we hoped the 1.5.x series might help solve this issue and be more open. While Joomla 1.5 is a major step forward in multiple aspects, it did not address this issue. So to some extent we were stuck. I was hoping for someone in the community to step up and do the needful. But that did not seem to be happening either :(
After yet another forum post on this topic, i decided to take a look at the code and figure out what needs to be done. We had abstracted most of the pieces from drupal already, so we just need to make a few function calls at the right places. I started looking for an example component that does something similar, that I could base my work on. Had heard good things about Community Builder, so that was my first choice. The CB 1.1 release does not support Joomla 1.5 and you need to become a "paid subscriber" to get the 1.2 RC. I'm not really a big fan of the pay money to get the latest version of the software, so I moved on from CB and started looking at other possibilities. Found a couple of others, but realized that all these components are commercial and require registration / payment to download it etc. Definitely a very different ecosystem than drupal.
- lobo's blog
- Login or register to post comments
- Read more
Missing features in CiviCRM ...
With Blackbaud's acquisition of Kintera, there has been some talk of what this means for the nonprofit sector. This along with Convio's acquistion of GetActive last year reduces the options available for the medium-large size NPO's. This is not a bad thing for us, since it makes open source software like Joomla, Drupal and CiviCRM a more attractive option.
On that line, I started thinking about some of the big holes in the CiviCRM feature set / ecosystem. Here's my current list:
More hooks coming in 2.1 ...
So while doing the custom data hook, CRM-1594, I also implemented a hook for setting the default values of a 'Form' in CiviCRM, CRM-3176. So now we have a defaults and validate hook for the form object. The two missing hooks are for buildQuickForm and postProcess, which I'm planning to implement in the next couple of days. This coupled with template customization will allow developers to inject form elements and save them to the database (similar to drupal hook_form_alter). I'm also planning to implement the ACL improvements as an ACL related hook (along with a sample implementation). These new features should give CiviCRM developers more power and flexibility in tailoring CiviCRM to their specific needs without hacking core.
Next UK meet up, and a report from our first meeting
The next meet up for the UK usergroup will be at Drupal for NGOs, an event organised by Rob Purdie of Important Projects on Tuesday 10 June from 6pm-8pm. It's a Drupal as opposed to CiviCRM focused event, but there should be lots of overlap. It's hosted by Amnesty International, and there will be presentations from Greenpeace UK and Oxfam International.
- michaelmcandrew's blog
- Login or register to post comments
- Read more
Associating PHP Code with a custom data group ..
With the new custom data model in 2.0, it seemed a good time to allow developers to add columns to a custom group that are computed rather than entered. Some examples of this is computing the GPA of a student given the student's individual grades, computing the age of a contact given his/her birthday. This has been an outstanding issue, CRM-1594, for quite some time.





