Visit the site

Visit the site

Organizations Involved

Bijleshuis is an online platform for students to book classes from various tutors. Students can search for tutors and classes based on various filters and criteria. These classes can be both online via web conference, or home tutoring.

About the project

Project Goals

This project was meant to be a website for students to book classes from various tutors online. The tutors would register online and fill up various information and their resume.They can then book the two modes of classes - either online or offline (if a tutor has added this option to his profile). Then the student makes payment deposit as per selected tutor as per selected time slot and per hour rate of the tutor. And once done, the payment is escrowed to the tutor, after he enters his bank details, IBAN and BIC details.The main challenge of this site, was the group referral mechanism, which was pretty extensive, and a few feature for the client’s business model. We custom coded the entire feature, using Drupal APIs. tables were created using hook_schema and integrated and exposed to views through Views API. Other than that, there were advanced usages of ctools object cache to make the site user-friendly and provide a great user experience. Some of the processes, especially referral discount calculation was very complex, and our team of experienced backend developers successfully handled those challenges and went above and beyond every expectation.

Requirements

Group Class Mechanism

The client wanted to implement a new feature called group class. So instead of an one on one session, a tutor can create a class at some future date, and allow multiple students to sign up for the same class. This was supposed to be an extension of the existing class system, but would need special wage and fees calculation mechanism in place.

Referral Credits & Discounts

Client also wanted to start a referral mechanism programme. Here, one student can refer another student to join the site. Such users who join in, becomes the referral of the invitee, and any subsequent classes they purchase will entitle invitee for some discounts on the class the invitee purchases. Also, this referral mechanism was supposed to be multi level, instead of one level. So if a referred student further refers another one, the invitee of this referred student also gains a referral credit/discount.

Online Video Conferencing for Online Tutoring Classes

Also, the client needed some enhancements to the online video conferencing feature on top of the existing system.

Design Improvements

There were quite a few pages, which was lacklustre and did not uphold the spirit of the site. The client discussed this matter with our designing team and engaged us to revamp and improve the design elements across the site to make it look more attractive.

Outcome

All the requirements were met perfectly. Though the group class and referral features were extremely complex to realise, and it took a lot of time to do QA, testing and finalisation for it. The client was constantly co working with us, checking things and making his recommendations. It was a very enjoying experience and finally we pulled off the features to perfection. Needless to say, our development team and the designing team successfully completed other bits and pieces of the requirement and at the end, as they say

the greater the challenge, the more the fulfilment

Why Drupal was chosen

The site was already in Drupal and we needed to build some complicated functionalities and enhancements on top of it. Drupal provided us with all the right tools and APIs to build those easily and effortlessly. Some of the calculation logics were extremely complicated, but during the course of implementation, the Drupal APIs were extremely helpful in order to achieve the tasks within the deadline.

Technical Specifications

Drupal version:

Key modules/theme/distribution used:

Why these modules/theme/distribution were chosen

Most of the tasks involved in this project was custom calculation and API implementation. However we to some extent used Views, CTools, Rules and Search API modules as helper modules