Sector(s)
Team Members
Project Team
The 2013 redesign of the website was done by JurriaanRoelofs. The implementation of this design (and the initial migration from Drupal 6 to Drupal 7, and current maintenance on the website) is performed by the Amsterdam based Drupal company LimoenGroen along with team members above.
Visit the site
Visit the siteOrganizations Involved
Community contributions
During the project, patches for several projects were created including Conditional Fields, Feed Comment Processor, GTranslate, Notifications, Shortcode and Workbench Moderation.
This project resulted in two new modules that were shared on drupal.org: Node Webform Access (to deny access to nodes attached to a web form when access to the web form is restricted to certain roles) and OG Formatters (to separate multiple group names with commas, just like Term Formatters does).
PrestoCentre is a non-profit, membership driven organization that serves an international community of stakeholders in audiovisual digitisation and digital preservation.
About the project
The main business goals of this project were the following:
- Provide a scalable publishing platform for a small to medium community
- Allow distributed and collaborative work
- Allow the site to adapt to new requirements and moving targets from a variety of projects
These goals were achieved by working side-by-side with the client in an Agile process. The User Stories were discussed during sprints and - as with all Agile projects - given solutions were always open for discussion.
A highlight of some important features of the site
Content and users in groups
Organic Groups is used throughout the site. The site’s Library consists of 9 sections (groups) in which content (Tools, Resources and Projects) is saved. The same sections are used in the Forum to organize discussions. Every organization registered with the site is a group, and any employee of that organization is a member within the related group.
Specific functionality for the site’s community was made available with custom modules. For instance, when registering on the site one can select an existing organization or add a new one. When linking one’s account with an existing organization, the e-mail domain is validated against the company’s domain as well as against the member limit set for the organization.
Advanced search functionality
The site makes extensive use of the Search API module, using a href="drupal.org/project/search_api_solr">Solr back-end and multiple indexes. We use it to show listings like the Calendar and the Member Directory (restricted section, see screenshot), but also to suggest related content when someone views a news item. We wrote also custom Search API fields. One example allows users to filter the list of members by entering the first letter of their name.
Fine-tuned permissions on content
The website's business logic demanded a lot of flexibility around site users content access levels. For instance, some documents in the Library can only be downloaded by authenticated users but others may be downloaded by anonymous users. The same goes for the forum: some forums are visible to non-members, but they can't read individual posts or add content, whereas other forums are visible to everyone. The site also has forums that are hidden from non-members.
We integrated the Workbench Moderation module to allow multiple editors to work on content and enable drafts to be reviewed for approval before they go live.
Lots of layout flexibility for editors
The Shortcode module allowed us to add custom markdown code giving editors the ability to design more advanced pages. Just by using simple tags they can place content in columns, add fancy looking buttons and highlight images with drop-shadows.
Why Drupal was chosen
Drupal was chosen for its scalability. The vast number of high-quality contributed projects also made Drupal a great choice for developing a growing community website like PrestoCentre.org.
The website was initially released as beta in Drupal 6 back in 2011, but in 2012 the site was migrated to Drupal 7. New functionality is regularly being added during ongoing maintenance releases. In January 2013 a new design and several new features were introduced.
Technical Specifications
Drupal version:
Key modules/theme/distribution used:
- Organic groups: Used for sections in the Library, for discussions in the Forum and for users in each Organization.
- Search API (Solr): Used for the indexing of all content. We use two indexes; one for nodes and one for users. We also use several child modules like Search API Autocomplete, Search API Views, FacetAPI and Date Facets.
- Display Suite: We love Display Suite. .tpl files and divitus are history. We want semantic markup, not semantic classes.
- Features: We manage each of our projects in a controlled DTAP environment using continuous integration. To be able to do so, we use Features (with Strongarm) to export configuration to code. For more information about our process you can view our presentation about continuous integration.
- Views: For the overviews, slideshows, related content and what not.
- Workbench Moderation: Used for workflows in which editors need to approve written content before it is published (and when it's edited again).
- Manual Crop: With this module, editors can crop images for slideshows and overviews.
- Shortcode: This is an input filter with WYSIWYG integration that allows editors to insert fancy HTML using simple bbcode-like tags. For example:
[button link="http://drupal.org" size="large"]Click me[/button]. - Bakery Single Sign-On System: To connect prestocentre.org with communities.prestocentre.org (an Open Atrium installation).
- Migrate: used as a framework to migrate the content from Drupal 6 to Drupal 7.
- WYSIWYG: For obvious reasons, using CKEditor.