18 October, 2011

I recently completed a conversion of about 8 years of history from a 5 year old Blackbaud Kintera site to a Drupal CiviCRM solution. Confused yet? Don't worry, all we be revealed in time. As a way of giving back, I am planning to share my experiences good and bad, what worked, what did not, what I learned and what I will and won't do next time.

Let's start with a little background. I have been the technology consultant for Women in Development, New York (www.widny.org) for the past 8+ years now. I started out as a member, graduated to a board member and in the end became their consultant. I have been with this organization since before they had a formal database to manage their members and before they had their first website. Back then, I used my own mail servers to send out their mass emails, my how the times have changed. In addition, to selecting and managing their original database solution, maintaining their first website and...

Read more
16 October, 2011
I've just released the stable 2.0 version of the Drupal Webform CiviCRM Integration module and wanted to share some of the cool new things you can do with it. Version 1, which I wrote earlier this year, was basically built for a single purpose: you could have a user fill out a webform, and their contact record (name, address, email, etc.) would be created/updated and an activity of the form submission would be logged. That alone is pretty darn useful, but suggestions from users, the advent of API v3, and a commission from the core team got me setting sights higher for the next release.

New Features in Version 2

  • Handling multiple contacts and contact types

    Instead of processing a single contact per form submission, you can now have as many contacts on the form as you like, and they don't all have to be individuals. A simple use for this would be to allow a person to fill out their own...
Read more
28 September, 2011
By cpc

As a freelancer, here are a few notes and an overview on how I solved a client's contacts consolidation when the data came from external sources:

My Use Case
- Client had ongoing events and conferences over several years which meant there were databases and mailing lists all over the place (many of which had crossover).
- I set up ongoing JSON exports of the contact data from the external sites, which could be queried by date range to get the latest changes.
- I had a contact consolidation script on the CiviCRM end, that took these JSON exports, and loaded them into Civ via the API.
- About 5 different source sites created about 1200 contacts

A Few Challenges
- The documentation can be quite scattered and it was difficult sometimes to find the right versions. I really pity whoever has to deal with this challenge though!
- It took me much longer than it should have to learn how to activate the API...

Read more
13 September, 2011
Filed under CiviCRM, Drupal
At NS Web Solutions, we recently got a chance to work on a cool project for one of Pogstone's clients. Thanks to this client's generosity, we expect soon to release a Drupal module which will provide a feed of each user's assigned activities in iCalendar format, ready to be subscribed to from with Google Calendar and/or Outlook.

Key features

Here's a short list of what you can expect from this module:
  • General description: Users can access an iCal feed of their upcoming (future) Activities, suitable for subscription via Google Calendar, Microsoft Outlook, and/or similar software
  • Activities are represented as VEVENT objects, matching applicable properties (DTSTART, DTEND based on duration, etc.) where possible and appending names of any other asignees to the DESCRIPTION property
  • Feed includes activities...
Read more
31 August, 2011
By jamie
Filed under API, Drupal
I hope Michal will forgive me for typing during his Developer training presentation on tests. Since I heard the presentation at CiviCon, I instead tried, as an exercise based on what we learned this morning, to create a custom group and custom field via the install hook in a Drupal module. Here are the results...

function civicrmtest_install() {
  require_once 'api/api.php';
  $params = array(
    'version' => 3,
    'extends' => array('Individual'),
    'title' => 'JamieGroup',
    'is_active' => 1,
  $result = civicrm_api('CustomGroup','Create',$params);
  if($result['is_error'] == 1) {
    drupal_set_message('Error creating Custom Group');
  } else {
    $value = array_pop($result['values']);
    $custom_group_id = $value['id'];
    $params = array(
      'version' => 3,
      'label' => 'JamieField',
Read more
29 August, 2011
By Eileen
Filed under v3.4 and v4.0, Drupal

The transition to Drupal 7 is probably the biggest challenge this year for the Drupal community. As discussed in previous blogs the intention has been that 3.4 would be the last release supporting Drupal 6. Unfortunately many sites aren't ready to upgrade to Drupal 7. The hidden risk of this is that if a sizeable portion of CiviCRM sites are not using 4.1 then the number of people testing, fixing & enhancing 4.1 will be much reduced. The cost of not having a drupal 6 release is likely to be higher than the cost of having one - even for Drupal 7 and Joomla! sites.


One of the things we have looked for at the codesprint has been Tim Otten's suggestion of supporting Drupal 6 as a separate CMS (like Joomla! & WordPress). The good news is that we think that a Drupal 6 release for 4.1 is a realistic option. Of course resources will continue to be a problem so please commit to helping or...

Read more
25 August, 2011
By jamie
Filed under CiviCampaign, Drupal, Sprints

If you are running Drupal, the process of configuring CiviCampaign will be a lot easier with the 3.4.6 release. The CiviCRM Engage Drupal module has always provided an xml configuration file which, if imported, setup many default custom fields designed to make CiviCampaign really shine. Previously, the process for importing it required looking up your site key, the absolute unix path to an xml file on the server, and your Drupal username and password. These pieces had to then be combined into an extraordinarily long and error-prone URL which you had to place into your browser. And, you also had to create several contact subtypes and fiddle with several other CiviCRM configuration settings. Now - all of these steps are done automatically by simply enabling the Civicrm Engage module from within Drupal. Furthermore, Eileen has exposed a number of ways to configure the behavior of the Walklist and Phonelist reports in the upcoming release - including the ability to:

  • ...
Read more
24 August, 2011

In May, Giant Rabbit relaunched CompassPoint Nonprofit Services’ website and CRM, transitioning them away from a proprietary CMS and CRM to a Drupal/CiviCRM solution.  We came across a lot of unique requirements and challenges throughout the transition process.  This post will focus on one feature that required significant customizations to CiviCRM:  A multiple event registration shopping cart.


The Goal

CompassPoint offers a large selection of workshops and trainings for nonprofits throughout the year.  On their old proprietary platform, individuals were able to add events to a shopping cart and pay for them in a single transaction.  In addition to their workshop offerings, CompassPoint also organizes a number of conferences throughout the year, with each conference containing a number of sessions for the attendee...

Read more
13 August, 2011
Filed under CiviCRM, Drupal, Joomla

CiviCon London is only 1 week away which means it's time to draft a "State of the Project" presentation for the opening session. It's a good time to look up from our computer screens so we can think about and discuss goals for the next few years.

Our number one goal is to build a strong vibrant community which can sustain the project for a long time to come. We think this means folks from across the community participating in ALL aspects of the project, and the project becoming self-sustaining from a financial point of view. We are super-excited to see folks in the community taking on important tasks in lots of areas …

  • Organizing CiviCon and UK Code / Book sprints
  • API v3 team
  • Accounting system integration
  • Case studies / website redesign
  • Floss manuals book
  • CRM Idol marketing and coordination
  • Number of consulting providers and Civi-ASP's on the rise
  • Number of people...
Read more
09 June, 2011
By lobo
Filed under CiviCRM, Drupal, Joomla

In the past three weeks, we worked with a client to build scheduled email reminders for activities in CiviCRM. Detailed project specifications are on the wiki at ARMS Project Home. We've added the following new features to CiviCRM as part of this work:

  • We've extended Profile View/Edit to handle a combination of Contact + Activity + Custom Fields. Thus we can send a mailing with a link to a profile edit form and collect activity related details from the end user.
  • Coleman W integrated a similar set of changes for CiviCRM WebForm v2. He also incorporated a bunch of other changes in the v2 version including the ability to create multiple contacts and create an associated activity. The new v2 UI is quite spiffy
  • You can schedule a reminder email to be sent to a group of activities that meet a certain criteria. You...
Read more