Alumni sites are gaining popularity especially school/ college alumni sites. After graduation, students usually disperse to different parts of the world so alumni associations are a great way to keep in touch or even to get everyone together. We were approached to streamline the whole process of creation of alumni portals.
The idea was to introduce the concept of ‘Chapters’ in Alumni sites to unite alumni found in the same geographical location. A group of students located in one place could start a chapter portal there and post their events in the alumni site under the Chapter tag. If there are many chapter portals like this then it gets difficult for the site admin to manage and update all their events and activities on site. Also if a member of one chapter portal need to make an announcement to all its members, site admin needed a provision for this.
To overcome these issues we planned to create an alumni association portal and chapter portals. The alumni association portal can be planned for any number of chapter portals. Chapter portal may have its alumni sssociation portal or a data store portal. Here alumni association portal will be the parent portal or parent site. All sub-portals or chapter portals or chapter site will come under parent portal. Next step is to identify the workflow of these portals.
When a content is published in alumni portal, it must be published in its chapter portals as well. Also, the alumni portal must be able to receive contents published in the chapter portals and publish it on the alumni site.
Members register in the alumni portal and get the corresponding chapter portal. Social Media Integration could be done as well.
When a content is published in chapter portal, it must be published in its parent portal as well. Also, chapter portals must receive contents published in the alumni portal and publish the same in the chapter site.
When a user tries to register or login into the chapter portal, they are redirected to the alumni website and the registration or login takes place on the alumni site. Once the registration and login are complete, the user is redirected to their corresponding chapter portal and a session is created for the user.
The tools and platforms used were:
- Drupal 8
Modules used in the project were the following
- Conditional Fields
- Google Analytics
- JSON API
- Mail System
- Rest UI
- Simple Oauth
- SimpleSAMLphp Auth
- Swift Mailer
- Ultimate Cron
To publish content in multi-site we needed to integrate Simple Oauth and Rest UI module and learn its working. Then we created a custom module to send data from one site to another. In the custom module on node create and update functions, we invoked the events for sending the data to other sites. One of the problems faced is that once the node is created in a chapter site, the same event was invoked and data sent back. To avoid this we added reference fields for each content type. So based on the values set in reference fields we could manage the event calls.
User registration and login
We implemented a central login system, for this, we integrated SimpleSAMLphp in the local machine. For SimpleSAMLphp we need a Service Provider(SP) and an Identity Provider(IdP) as well. For the local machine, we couldn’t get an IdP so we created a custom IdP for testing. When a user tries to login using SimpleSAMLphp server, they get registered as a new user and gets logged in. We had to debug this issue and find a solution for this.
Other functionalities common to both portals are the gallery, social media integration, events, news, groups, mentors etc.
For help with work on your alumni website, get in touch with us.