Upcoming Events
CiviCRM Europe FOSDEM training camp – Brussels
February 8th, 2010
This 2-day hands-on session is targeted at experienced users, integrators and (more...)
NYC CiviCRM Meeting - February 2010
February 9th, 2010
This next NYC meetup will feature a case study (TBD), group discussions and a (more...)
San Francisco CiviCRM Meetup - February 2010
February 10th, 2010
Come meet others from the Bay Area who are interested in, using or developing (more...)
CiviCRM Seminar - London
February 26th, 2010
MTL Software Solutions are hosting a free seminar at our Central London
offices (more...)
CiviCRM Seminar - Dublin
March 18th, 2010
MTL Software Solutions are hosting a free seminar at The IBOA, Stephen
St (more...)
CiviCRM User Training - Atlanta (pre NTC)
April 7th, 2010
This full-day hands-on training session is aimed at non-profit staff and (more...)
Configuring and Customizing CiviCRM - Atlanta (after NTC)
April 11th, 2010
This hands-on 1-day training session is targeted at administrators, integrators (more...)
CiviCRM Developer Training - Atlanta (after NTC)
April 12th, 2010
This hands-on 1-day training session is targeted at experienced developers who (more...)
Configuring, Customizing and Extending CiviCRM - San Francisco (before DrupalCon SF)
April 18th, 2010
This hands-on 1-day training session is targeted at administrators, integrators (more...)
CiviCRM User Training - San Francisco (before DrupalCon SF) This full-day hands-on training session is aimed at non-profit staff and (more...)
April 18th, 2010
CiviCon San Francisco 2010
April 22nd, 2010
Join us for the first ever CiviCon in San Francisco this April! CiviCon brings (more...)
lobo's blog
- 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.

civiREPORT
Report generation and template management.
CiviCRM User, Integration and Developer Training Schedule for first half of 2010
We have quite a few paid training events lined up for this year. You can read some of the reports on prior trainings on our blog. Participants who have attended these trainings have remarked as to how much it has helped demystify CiviCRM for them (and their clients). Learn some valuable tips and tricks from the core CiviCRM developers and help the project! We offer a User training mainly for the CiviCRM end user / newbie, an integrator training for the CiviCRM administrator and a developer training for folks who want to extend and customize CiviCRM. Our current training schedule is:
- Integrator (Jan 21) and Developer Training (Jan 22) in Boston.
- Developer training on February 8 - 9, 2010 in Brussels.
- User (April 7), Integrator (April 11) and Developer (April 12) training in Atlanta.
- User (April 18) and Integrator (April 18) training in San Francisco.
- The first CiviCon - April 22, 2010 immediately after DrupalCon San Francisco. More details on this in future blog posts.
CiviCRM integration with Drupal Rules module
Workflow has been an important piece missing from CiviCRM. We figured that integrating with the Rules module in Drupal would address this problem. I decided to tackle it on as a weekend project :)
Kudos to the rules developer, Wolfgang Zeigler for designing AND documenting an excellent module. The developer documentation is very comprehensive and along with the integration modules, i was able to write an integration module in a few hours. The source code for the module can be found in our svn repository
We hope to address and answer some of the integration questions with the community, similar to how the Views Integration Module has been developed. CiviCRM has got pretty good hook support, so I suspect adding extensive rules support is very feasible, i.e. fire rules based on CiviCRM hooks. We need to answer a few other questions to help us move this integration forward in a fruitful manner:
Extending contact demographic information with a custom group
We are working with PTP and Dharmatech to incorporate their work on Canvass and Phonebank into CiviCRM v3.1. Initially we plan to package and release this as the civicrm_canvass drupal module
As part of this work, we need to "extend" the core demographic information in a seamless manner. CiviCRM holds the gender / birth date / deceased date as core fields. However PTP also wanted to collect additional demographic information: ethnicity, primary language, secondary language and number of kids. We plan on storing this additinal demographic data as a custom group. We had to inject this custom group into the demographic section for the contact view and edit forms. We also wanted to hide the custom group showing up as a tabbed pane in the contact view screen.
We accomplished all this using the all powerful and mighty hook system. We could inject a complete custom group into the edit field by implementing the buildForm hook and using some internal CiviCRM functions
Looking for Beta Testers for the School Module
Some of you'll are aware of the work i've done for The San Francisco School using Drupal 6.x / CiviCRM 2.2. You can read more technical details about this project on my blog.
Database
- Maintain name/email/phone/address information for people associated with the school (students, staff and parents)
- Maintain relationships between parents and their children
- Maintain relationships between a teacher / advisor and their students
Current Features deployed at SFS
- Give all parents and staff a login/password
- Online signups for all Parent Teacher Conferences
- Online signups for all extended care activity (classes after school)
- Sign-in / Sign-out for students attending extended care
- Computation of how many "activity" blocks a student has spent on extended care
- Parent viewing of the various extended care activities their kids have attended in the past
- Online maps of "Where we Live" of the school families
- Online directories of the schools and grades.
Handling Attendance for Extended Care Activities in CiviCRM
This is a continuing series of blog posts on deploying CiviCRM at San Francisco School. In the previous blog posts we discussed how to expose relationship information in a profile and how to manage parent teacher conferences. There are also some slides explaining the module from a recent training seminar
Our latest project was automating the extended care (classes before and after school) system. The previous process was quite manual and labor intensive (and error prone). The attendance sheet was printed (via a CiviReport) from the students signed in. The students queued up and were signed into the extended care program. Some of the students had to be manually written in (if they were not signed up). At the end of the day, the parents would pick up the child and locate the childs name in the multiple sheets and sign them out. Typically 10-20% of parents would not sign their children out. The business office would then take this piece of paper and then calculate the "activity blocks" (based on time spent in extended care) and enter them in an excel spreadsheet. There were a few exceptions to the rule (children of staff, students who signed up for unlimited extended care and some activities are free)
Final Call for CiviCRM / Joomla Developers at Joomla Dev Camp, NY, Dec 5-6
Worried that CiviCRM integration with Joomla is not keeping pace with Drupal? Wanna take CiviCRM / Joomla integration to the next level? Want better permissioning support for CiviCRM in Joomla? Want more front end exposure of CiviCRM in Joomla?
If you want any (or all of the above), then do attend the Joomla Develoepr Conference in New York from Dec 5 - 7. We definitely need more participation and support from the CiviCRM/Joomla Developer community to help bridge the gap and strengthen the integration. This is a great time and moment for CiviCRM/Joomla to take the next leap forward.
Details and event registration are found here: http://opensourcematters.org/devconferenceinformation.html (note the reg form uses Civi for event info/registration!).
We are looking to put together a team of Joomla+CiviCRM developers to attend and work together at the camp. We currently have 2 confirmed developers attending the camp, and need at least 2-3 more developers to make progress on any of the above topics. You have to be experienced with PHP and be familiar with the internals of CiviCRM or Joomla to help out.
For those of you who are non-programmers, encourage / sponsor / coerce your local programmer / consultant / development partner to attend the conference
Report from the CiviCRM testing sprint in San Francisco
The past two days a group of us gathered at the Mitchell Kapor Foundation offices in downtown San Francisco for the first CiviCRM Test Sprint. Some of the highlights of the event were:
Creating and Managing your own contact types and sub types
We've been having quite a few requests for the ability to modify and extend the types of contact records which we can be stored in CiviCRM (currently limited to Individuals, Households and Organizations). Thanx to the nice folks at Alpha International, we will be adding the ability to rename or "hide" the existing Contact Types AND define Contact Sub-types as part of CiviCRM v3.1. Here is a first draft of what we plan to implement. Your comments and feedback are appreciated.
Contact Sub-types
In v3.1 we will introduce the notion of a Contact Sub-type. This will allow users to create specific types of Contacts for their use cases. For example, a school could introduce three new sub-types: Student, Parent and Staff. Sub-Types will inherit from one of the three contact types (Individuals in this case). Sub-types will have all the properties and features of the main contact types. Thus an admin will be able to:
More adventures with the school module
I continue my work on deploying CiviCRM for my kids school. In previous blog posts i documented how to use hooks and custom templates to schedule parent teacher conferences and extended care activities and how to expose relationship information in a profile view. In this blog post I'll describe some more advanced features. I'll also describe the code and directory structure.
New Code Structure and Directory Layout
Adapting CiviCRM for the needs of a school ...
I've been working on customizing CiviCRM for my kids school. I documented how i exposed relationship information on a profile view in this blog post. In the past week i've also exposed "activities" and "a multiple record custom group" via profiles which i'll describe in this blog post. All this work was done via civicrm hooks and custom templates and run on CiviCRM v2.2.8. You can download the code from here. In this blog post i'll discuss two features that i've implemented: Scheduling Parent Teacher Conferences and Managing Extended Care.
Scheduling Parent Teacher Conferences
The school wanted an automated system to schedule parent teacher conferences. These meetings typically last 30 mins. For some grades its all done in one day, for some other classes its spread out over a couple of weeks (few slots / day). I decided to create a new activity type called "Parent Teacher Conference". For the first parent teacher conference, we have 4 advisors and 30 students. The conferences happen on the same day between 7:00 am - 6:00 pm. Each advisor has 10 students. Some students have 2 advisors. I wrote a script to populate these activities automatically with the assignee being the advisor. The advisor also has the option of going into his activities tab and deleting all the times when she/he does not want a meeting. We also created a new relationship type called "Advisor <-> Advisee" and used import to create these relationships.






