ERRIN is a well-established Brussels-based platform of more than 130 regional stakeholder organisations from 24 European countries. It is composed of regional authorities, universities, research organisations , chambers of commerce and clusters. It basically facilitates regional collaboration and knowledge exchange to the benefit of all its members and partner organisations. Their mission is to strengthen the regional and local dimension in the EU Research and Innovation policy and programs using the 4Ps approach, namely Project development, Policy, Profile-raising, and Partnership building.
About the project
Goals
The goal of the project was to first set up a perfectly lined up content management system for the client's growing content needs. The site was content rich, with news, events, partners, working groups etc, which contained intricate relationships amongst each other. Apart from that, we needed to set up some complicated functionalities like invoicing, content moderation and approval mechanism and calendar features. An extensive search for various content was a must for this project.
Requirements
Foundation Level CMS Setup & Reusable Content Sections
The client, being experienced in Drupal already, wanted to explore the power of the Drupal CMS to the limit. He wanted to be able to create and conjure up elements on the fly, through various reusable sections, and content types that can be placed on any page, and new pages with new designs could be created. We came up with a concept called sectional data. We created a set of content types, which had certain set of fields, each content type will then allow selection if certain number of templates. Finally nodes of these content were exposed as blocks, and the block when displayed will pick up the template selected in the node. The blocks were made reusable through the Reusable Blocks module. The end result was a powerful display dystem giving the client the power to created and design standard pages on the fly.
Yearly Calendar
The client wanted to display all his events in a yearly calendar format. We preferred out usual calendar plugin - Fullcalendar. However in the drupal Fullcalendar integration, the fullcalendar version that was available did not have any yearly calendar view. We found one fork of the fullcalendar, but that version was very different to the one used in drupal integration. Our team wrote a full integration of the new fullcalendar fork, and finally enabled the client to have a yearly view. We also enabled the click event details feature for the events through the fullcalendar API where the events displayed as title, but on clicking it, the details would popup in a modal.
In depth Invoicing System
The client wanted to have an in depth invoicing system, and preferred his own custom solution as opposed to standard plugins available as it had a lot of constraints. We wrote the invoicing system from grounds up, providing all the standard features to raise an invoice, price calculation, reminder, drafts etc. It covered all the functionalities asked by the client and our team engineered the solution to make it extremely user friendly and easy to use.
Content Moderation
As a base we used the awesome workbench moderation module for this. But this was heavily customised through it's APIs and through rules integration.
Outcome
The client was extremely satisfied with the outcome. This is not the first time we were working together, so throughout the project, we developed great co ordination. Our team constantly exceeded expectations in terms of the features that needed to be rolled out, and finally once things were completed, client appreciated our work. Especially the content management flow we did for reusable content sections was super helpful to the client and he was surprised how easily he could make use of it. That is what success means to us!
Why Drupal was chosen
Drupal is naturally a choice for project cases like this where it will be a data driven platform, with lots of content relations and intricacies on one hand, and some robust functionalities in the backend on the other hand. This site is more of an informational site in it's outward appearance, but provides some complicated functionalities like a full blown invoicing system, an advanced editorial workflow, facebook like wall for group discussion and a multi year view calendar which displays events through categorically coded colours. Drupal provided all the necessary modules for developing a site like this plus it provides robust APIs that will allow us to easily do the necessary customisations. The client had already done a series of drupal websites with us, and as such right from the start both us and the client preferred Drupal for this project.
Technical Specifications
Drupal version:
Key modules/theme/distribution used:
The extensive CMS system was set up using field collections, field collection table and tabs and other field modules and creating necessary templates. We made the blocks reusable using Multiblock module. The content moderation flow was implemented using the Workbench Moderation module. Calendar used fullcalendar plugin at it's heart but had to be largely rewritten to make sure the fullcalendar fork which has support for yearly view was could be supported.