In the wider world of hosting, "shared" services are the discount offering that you use when you don't value your site or really don't have any budget. But amongst non-profits and open-source projects, sharing is a positive value, and in many cases essential. Can we reclaim the concept?
I've been hosting CiviCRM sites since 2007. About 3 years ago, before I knew anything about containers, I started looking at my services, how I deliver them, and what I wanted to change. It was a much bigger investment than I was expecting, but a year ago I finished converting all my in-house hosting services over to using containers. I've been trying to write out the interesting parts of that story, and here are a few of them:Read more
What is Docker?
At it's simplest, Docker is a tool for building "containers". A "container" is system-level collection of magic that allows some useful process isolation. Containers have been around for more than 10 years. Docker started just over 5 years ago, and has exploded in popularity over the past several years. Most large-scale software systems now use containers, and most of the rest are figuring out how to get there.
Why you shouldn't care
If you're using CiviCRM and happy with your hosting and development, then you don't need to care about Docker, any more than you need to think about any other aspects of your hosting environment. End of story.
Why you might want to care
If you create CiviCRM sites with any frequency - copies of existing sites for development purposes, new sites on a production server, or whatever, then Docker and containers are a useful tool to do that. The first and still the most popular purpose of Docker...Read 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.
Q: What are the two hardest problems in computer programming?
A: Naming things, garbage collection, and off-by-one calculations.
All of that joke is true, but it's the first problem that is the point of this blog post. Because "entity" is just a fancy word for "thing", i.e. coders have the same problem naming some "things" as everyone else does.
What is an Entity?
Just as in our vernacular usage, an "entity" is a "thing with something extra", and it's the "extra" that makes it an entity. To make it more concrete: lots of things can be entities, and in CiviCRM, all contacts, contributions, and events are entities. It's not to hard to think of a contact as a "thing", but in fact, a lot more things in CiviCRM are...Read more
Building a WordPress website with integrated CiviCRM is now even easier and more awesome. Add a new plugin to your toolkit with the Content Views CiviCRM plugin, https://github.com/agileware/content-views-civicrm
The Content Views CiviCRM plugin integrates the fabulous Content Views plugin, https://wordpress.org/plugins/content-views-query-and-display-post-page/ with CiviCRM, utilising the new Data Processor extension, https://lab.civicrm.org/extensions/dataprocessor
The Data Processor extension makes it incredibly easy and flexible to create new data sources for Content Views, which can then be used to design the layout and presentation of CiviCRM data on your website.
Content Views CiviCRM also supports features included with Content Views Pro...Read more
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.
- Pentaho Data Integration installed on your computer (https://sourceforge.net/projects/pentaho/)
- Form processor extension installed in CiviCRM (https://lab.civicrm.org/extensions/form-processor/)
- Know your Site Key and API key (the api key is attached to a civicrm user). See...
As many of you know, the civicrm.org is both the main site for promoting CiviCRM, and also where we blog, list extensions, promote partners and contributors, list the events organized by the community, showcase case studies, jobs offers, and provide many more features. The data from the site and from the CiviCRM database attached to it also feeds various other systems, such as some of the in-app default dashboard dashlets (welcome and blog), or the in-app extension installer. Over the past two months, over 240 people have logged-in and 26 blog posts were published.
Recently the community agreed that translation should be a major focus for the website. CiviCRM works great in many languages (officially we support 47 languages, including a few regional...Read more
In CiviCRM currently, if a Membership Type has Membership records in CiviCRM there is no way in the CiviCRM administration interface to change the Relationship Types that will be used to inherit this membership. This is problematic when your membership structure changes and you need to add or change the Relationship Types used for membership inheritance. This type of change can be implemented using direct database queries or API calls, however this is time-consuming, costly and potentially problematic to implement correctly. This issue has been raised and discussed on the CiviCRM Stack Exchange see https://civicrm.stackexchange.com/questions/14497/need-to-change-membership-inheritance
Introducing the new CiviCRM extension, Membership Relationship Type Editor for...Read more
Have you ever wished you could configure the actions you can perform after a search in CiviCRM?
It is now possible to do this with the Search Action Designer extension.
An example use case
Your organisation works with activities and one activity is send a renewal reminder by postal mail 6 weeks before the end of the membership. The activity is scheduled with CiviRules when a new membership is created.
Now you want to do the following:
- Search on activity send renewal reminder by postal mail and status scheduled. Possible with the Find Activities
- You want to generate a letter for each activity Not possible in CiviCRM at the moment
- And you want to set the status of the activity to completed. Possible...
How can we find a user-friendly way of creating templates for serial letters and other mass communication? Is it possible to integrate CiviCRM with open-source online applications to facilitate the creation of office templates for our users?
This has been bothering us for some time, because many of our users find it hard to set up and work with templates in HTML format. So we started a proof of concept to check possible options… and we found an answer!
After the server version of libreoffice unfortunately turned out to be unsuitable, we found a feasible solution using the open-source office suite ONLYOFFICE, and created an extension to plug it into CiviCRM.
In a first draft version of the extension “onlyoffice”, you will be able to ….
- Install ONLYOFFICE on a CiviCRM server and use its comprehensive functionality for document management.
- Display files created with ONLYOFFICE in CiviCRM ...
We’re continuing to use Gitlab (https://lab.civicrm.org/explore/groups) more and more as both a project management and development tool. One area that we’ve been tinkering with over the past several months is using Gitlab for feature requests in CiviCRM. As you can imagine, there’s real potential here to empower the CiviCRM community to create, discuss and promote new features and functionality in CiviCRM. There’s also potential to create a very long, very unorganized list of “to-do’s” that can serve as points of contention should they not be done or rejected outright.
After a great deal of consideration, the CiviCRM Core Team is rolling this capability out officially via the Feature Request project in Gitlab and encouraging community members to review, add and vote on feature improvements in CiviCRM. Though this project is public, meaning...Read more