This had been one of the first Drupal sites integrated with Salesforce.com, and lead to the development of the CRMAPI for Drupal.
Challenge and Approach
Management Leadership for Tomorrow had been using a custom Salesforce.com application for managing enrollment in programs, and wanted to continue using it because it performed the tasks it was designed for and their staff was trained on the system. When they decided build an online collaboration platform that would allow students to self-manage their contact record information, they decided to avoid the per-seat licensing fees associated with the platform by integrating with an external system instead. Trellon worked with ML4T to develop a Drupal website that integrates directly with Salesforce.com and the custom applications for managing enrollment in their academic programs. A major challenge involved taking program enrollment data from Salesforce and using it within Drupal, to enable online collaboration and ensure the privacy of people participating in academic programs. Besides allowing users to update their personal information and have it synchronize with Salesforce in real time, we developed a custom module that syncrhonizes users with programs according to their status in Salesforce. Another major challenge was the information architecture and the need to have separate front-end and back-end experiences for users. The site serves as the main web site for the organization as well as the portal for online collaboration, and it was important to distinguish between the two.
ML4T had been making the most out of their Salesforce.com system for quite some time, and it was important to provide a solution that similarly leverages the power of the platform to provide a robust solution. The system we provided needed to go beyond simple profile updates to truly support the organization's needs. We established a two-way system for updating information about users that allows changes made within Salesforce to synchronize with Drupal in real time, and vice versa. Trellon developed a custom profile module that directly links user profile data with Salesforce, including personal information, job and academic history, tags (which are specific to Salesforce in this case), and other bits of information with a one-to-many relationship. Fairly generic, we developed a number of modules for abstracting the profile information and storing it in a way that anticipates changes to the data model over time. Users are also enrolled in academic programs, and one key requirement is that the site had to reflect changes in course enrollment. Trellon developed a custom module that drew enrollment data out of a custom Salesforce.com application and used it to associate users with the organic groups module in Drupal. The system we developed would create new accounts within Drupal for users who did not exist, and remove users from groups where their enrollment ceased. We created a set of custom permissions for users who were graduates of courses, allowing them read only access to information when registered as a mentor.
Mentoring and Online Collaboration
The system we designed for ML4T was built to allow people to collaborate online. Content authors on the site have the ability to contribute to a community blog for sharing news, announcements and events. Job opportunities published in the Salesforce.com system are synchronized along with other content and users are able to search through them based on location and job title. Program participants all have personal account profile pages and are able to share information about themselves through the system. Access to personal account information is controlled by the user, who can select what information to reveal about him or herself through personal profile pages. Users are able to search for mentors and contact them through the site as well. Personal contact forms and inboxes are enabled for each account, allowing participants to reach out to one another without having to sacrifice their privacy. Users are able to disable these features at will through their personal account pages. Participants are also able to search for other participants through the central ML4T directory, which allows people to search based on academic and professional background information stored originally in the Salesforce.com system. With enrollment information stretching back a number of years, this directory provides users with a powerful tool for connecting with potential members and networking within the site.
The site Trellon developed for ML4T serves as both their main organizational web portal and online collaboration platform for participants. One important information architecture consideration was that information published for participants should only be available for participants, and not appear in other areas of the site or within search results. Another main concern was over usability, the site needed to be able to be updated by non-technical staff without the need for extensive training. Trellon implemented a number of features in Drupal to provide separate navigation patterns for the main site and the collaboration portal. We create a number of unique content types for publishing information that allowed users to deploy content without needing to worry too much about permissions. This technique extended down to the program level, with users being able to publish information within program groups and have it be available only to people within those program groups. Trellon implemented a number of features for easing the administration of content, including Drupal's rich text editor and various enhancements to forms to simplify the process. We implemented a separate theme for the online collaboration sections of the site, providing visual differentiation between various aspects of the system.