Ginkgo Street Labs is pleased to announce the availability of CiviVolunteer 2.2.
Two themes are evident in this release: improving stability and furthering the multi-tier use case. The increased adoption of CiviVolunteer as a multi-tier system, where one organization facilitates the volunteer programs of partner organizations, has necessitated improvements to permissions granularity as well as streamlining of interfaces. Improvements in CiviVolunteer 2.2 include:
Version 2.1 introduced settings for volunteer project defaults under Volunteers > Configure Volunteer Settings. Version 2.2 builds on this work, adding the ability to set defaults for a project's manager, beneficiary, and other relationships.
New permissions Edit Volunteer Project Relationships and Edit Volunteer Registration Profiles provide an easy way for site administrators to simplify the volunteer project creation workflow for partner organizations or less technical staff. Users who don't have these permissions won't see the relevant configuration options during project creation/edit; their projects will use the site-wide defaults for these configurations.
Fifteen bug reports were closed in the production of CiviVolunteer 2.2, and lessons learned in the adoption of the Angular paradigm applied under the hood, to improve system reliability. VOL-267 is a particularly nasty bug that can result in accidental mass deletions of project data; upgrading to CiviVolunteer 2.2 is strongly recommended to eliminate this possibility.
Increased support for using custom fields as columns and filters in the volunteer report.
Notes for Developers
CiviVolunteer 2.2 changes the return of api.VolunteerUtil.getsupportingdata; the array relating to project relationships is structured differently, significantly simplifying the code required to consume it on the client side. We don't expect this API was being used downstream, so it is unlikely this change will have practical implications for anyone.
The result of api.VolunteerProjectContact.get previously included a flag can_be_read_by_current_user for each contact. This has been removed.
api.VolunteerProject.create now creates a flexible need for new projects. Previously this required a separate call to api.VolunteerNeed.create. To mitigate problems for downstream developers expecting to need to make this call, api.VolunteerNeed.create now throws an exception if the call would result in the creation of a second flexible need for a given project. More details in VOL-269.
Thanks to everyone who has contributed to CiviVolunteer through financial support, code, bug reporting, testing, and documentation.