The upcoming 5.51 release includes a significant cleanup of the import code. Anyone who has ever delved into this code will know that a four-hour deep dive often left you re-surfacing none-the-wiser. There is an ongoing cost to having code like this but - addressing it required a significant amount of change with an associated risk of regression. Hence I am putting out the request for as many people as possible to download the 5.51 rc and specifically test the import code.
civix is a development tool. It generates code for extensions, providing a baseline for developers and hackers who want to improve and add onto CiviCRM.
civix generates a lot of code. Much of this code is educational; hopefully, some of it is even useful. But some parts of it are redundant or excessive. The excess bits don't matter much with a single extension. However, in practice, they are copied to almost every extension. Individually, these are small bits. Collectively, they add up.
Skvare is the maintainer of International Mountain Bicycling Association (IMBA)’s Drupal 8 / CiviCRM website. IMBA is a network of local chapters, that provides resources to find local trails as well as information on building and protecting trails. The website utilizes CiviCRM integrated with Drupal 8 to allow local chapters to see membership reports, send emails to their members, and much much more.
In 1992, there was a little known new thing called the world wide web. By 1995, it was a "thing". Now, what exactly do those quotes do to the word "thing"? And what does this have to do with "entities"? Cue my favorite programming joke.
This blog post explains how you could insert data from a CSV file into CiviCRM. We use Pentaho Data Integration to read the CSV file and to call a Form Processor in CiviCRM.
This blog post is an example and when you follow the steps described in this post you can run the same import as me.
Pentaho is a tool to extract and transform data.
The form processor is an extension to create end points for forms in CiviCRM. Those end points can then be called through the api.
In the coming weeks, you can expect a series of changes going into the development pipeline to support the CiviCRM-Drupal 8 integration. Individually, these will seem unrelated and disjoint - they may not explicitly reference “D8”. I wanted to spend a moment to discuss the concept which ties them together: the clean install process, which will make Civi-D8 an equal member of the Civi CMS club and a good base for continued development and maintenance.
With generous support from the community funding our first Form Builder Make-it-happen campaign, Tim Otten & Coleman Watts have begun regular code sprints for phase 1 of the Form Builder project. The extension is evolving rapidly, but I wanted to take a break from development for a few minutes to update you on what we've accomplished so far and where we go from here.
The recent DevCamp in New Jersey presented several sessions on new developments in CiviCRM land as well as showcased several of its inner workings. One session presented by Core Team member Tim Otten stood out for me: Form Builder. If you’re like me, you listen to folks like Tim with a great deal of respect and appreciation for what they say (and do).
As our North American colleagues (and those who have made the big trip over there) head into the governance sprint now seems like a good time to recap on product maintenance in CiviCRM. Product maintenance, as I discuss, is the monthly routine processes we do to incorporate patches & contributions into the CiviCRM product. This blog is kinda long & weedsy - so if it’s not for you then take a look at this baby octopus instead.
In this blog post I want to show how you could use the new form processor extension to handle form submissions from an external website.
My (imaginary) organisation provides buddies for young people and the form on our website is submitted when somebody is interested in becoming a buddy for a teenager. We ask for the name, address, e-mail, telephone number, birth date and gender.
A couple of months ago, I made the first commits to a repository in which I have been experimenting with CiviCRM Buildkit on Docker. It's gone quite well so far.
This is a first blog post about how we build the team portal for Roparun.
During this coming April, you may notice something peculiar on the civicrm.org download page -- instead of 4.7.32, you'll see a jump up to 5.0.0. Does this mean that CiviCRM is finally implementing a personal voice-assistant to take-down Amazon Echo? Nope. Maybe it means open-season on changes, granting a general license to break backward-compatibility? Nope. 5.0 is boring. It's basically the same thing as 4.7. It's just a big number with a little change.
I have finished a working prototype of the form-processor and action-provider extension. See my previous blog post for where the idea came from.
Below I will explain what you can do with this extension. Lets assume we have an external website where students can signup to volunteer in a summer program. When a student has signed up we want this data to be present in CiviCRM and the student added to the group student volunteers.
Last week we had a Sprint in the wonderful city of Brussels. This blog post is a recap of what I have been up to.
I started the sprint to work on a new extension the form processor. This idea came to my mind as I had a few clients at which I had to develop a custom api for data coming from their website (in those cases CiviCRM was separated from the website). And my idea was that I wanted to give system administrator and implementers a tool in which they could create those kind of API by themselves. So the form processor was born.
civicrm-setup library aims to replace the CiviCRM installer. Following the December/January iteration, it's available for use as a CLI installer and as a web-based WordPress installer.
A big thank you to all our CiviCON UK Sponsors. Here's a special post from Gold Sponsor Yoti:
DOING THINGS DIFFERENTLY: REGISTRATIONS IN SECONDS, LOGINS WITHOUT PASSWORDS AND MINIMISING DATA.
Over the last 15 years I’ve probably been responsible for around 50 or so websites or microsites that in some way or another have tried to gather people’s data. Either to enter into an event, join a forum or buy something. And like most other marketeers I’ve been obsessed by two things. Funnels and Data. i.e how easily are people signing up and how much do I now know about my customers. I’ve always known that by asking people for more information there was a danger people would drop out of my acquisition funnel but we marketeers are hungry for data. We want it all and we want it now.
Compatibility with PHP 5.3 will end in December 2017, and compatibility with PHP 5.4 will end in March 2018. These changes follow a number of discussions and a multi-year deprecation process. The current recommended version is PHP 5.6.
The 4.7.24 release is scheduled for the first Wednesday of September. Ordinarily, there would be an announcement about the release-candidate (RC) in mid-August, but we're doing something a bit different this time around -- extending the RC to a full month, which mean the RC is available now at http://download.civicrm.org/latest. Testing out the RC is a great way to ensure that your systems will continue to work in the next release. Let me talk about how this change helps.
CiviCooP and Systopia and Palasthotel have been working together on CiviProxy and CiviProxy. This blog is a round up of what we have achieved in the last couple of days. The first thing we have achieved is that we had fun and a very good work atmosphere. We made long days and made lots of progress.
What are CiviProxy and CiviMcRestFace?
At the CiviCons and developer meetings this year, we've had several conversations about release strategy. The topic is a bit abstract -- touching on a web of interrelated issues of technology and scheduling and business-process. I've been searching for a way to explain this topic to people who don't eat and breathe code in CiviCRM's
git repos -- an analysis which is a bit simpler and more transcendent.
The best analysis predates us by a few years -- Will Durant attributed the idea to Aristotle's Nicomachean Ethics, paraphrasing:
CiviCRM 4.7.x has made significant progress towards supporting PHP 7, MySQL 5.7, and Ubuntu 16.04. I'm pleased to announce the availability of the release-candidate for v4.7.12.
These improvements were made possible with the collaborative efforts of several people and organizations, including Mark Burdett (EFF), Mattias Michaux, Seamus Lee (Australian Greens), the New York State Senate, and the CiviCRM core team (Jitendra Purohit and me).
To ensure that CiviCRM continues to work with standard, contemporary PHP hosting platforms, a future version may make a subtle change in hosting requirements. We expect this to be mostly seamless; however, we're looking for administrators responsible for sites running a recent CiviCRM (e.g. v4.7+) to spend a few minutes to help ensure a smooth transition.
Q: I'm not too fluent in geek-speak. What should I do?
Forward this to whoever manages your server. If you work with a CiviCRM partner, they may be thinking of you already.
For many years CiviCRM has had the capability to log all actions that take place in the database but while it mostly works well there have been a few issues. I looked into these recently and came up with some improvements, which shipped in 4.7.7 - but if you want to take advantage of them there are some actions you might need to take. This article is mostly intended for a technical audience.
How does CiviCRM logging work?
Busy sites have often encountered problems with deadlocks on the group contact cache. There were no less that 3 different code contributions to mitigate this problem put up for 4.7.8 and a number of other discussions have been going on in JIRA.
Merged into 4.7.8 are some improvements which we hope will mitigate this problem for those sites that experience it. JIRA is the primary source of information on this, however I wanted to share a brief overview.
There are two powerful modules used in the Drupal world for creating fast custom searches. Search API is a framework which provides an interface for site builders to create custom searches on any entity known to Drupal. It supports several search backends, including Apache Solr and native database search. It has a flexible API so developers can easily extend, customize, and alter aspects of the search process.
It's becoming a common request from our clients to find user-friendly ways to integrate CiviCRM data with the rest of their Drupal website functionality. Oftentimes content creators without direct user access to CiviCRM need to do simple things, such as create, update, and delete contacts in simple, specific ways.
CiviCRM Entity is a Drupal module which greatly enhances CiviCRM integration with Drupal. This module exposes many CiviCRM entities as true Drupal entities. That means that almost any module can use Drupal entities. As a result, these modules can access and manipulate CiviCRM data directly from within Drupal via Drupal’s Entity API.