This summer has been really amazing, I learnt a lot and worked crazy hours it has been a crazy yet amazing ride. I am not going to stop working on open source projects and posting the blog post.
In this post, I would like to summarize all the work that I did during this summer. Working with FOSSASIA was an amazing experience for me. I got to learn a lot during this summer. Thanks to such amazing mentors.
My project Engelsystem is an online tool for helper and shift planning on major events. It lets the user organize their helper in teams, they share in layers or let them decide when and where they want to help themselves.
The Project was provided an A-Grade certificate from CODACY.
Here the link to view all my GitHub contributions to the project during this summer,
The list of issues solved and features implemented by me is provided below.
Creating new themes for Engelsystem. Two themes have been added to the system, Engelsystem color scheme-1 and Engelsystem color scheme-2.
- Languages for Localisation
- https://github.com/fossasia/engelsystem/issues/52 [Language support-I]
Implement localization in different languages as it will make this system reach many people across the world. There 10+ International languages added to the system. The list of languages can be checked in the issue tracker
- Added Travis-CI
Setup the Travis-CI for Engelsystem. Added a stable .travis.yml file to the system
- Feature Request: User: Registration form
- https://github.com/fossasia/engelsystem/issues/33 [Marking First Name and Last Name as required]
- https://github.com/fossasia/engelsystem/issues/35 [Adding more item to the Registration form]
Adding more fields to the registration form(First name, Last Name, GitHub, Facbook, Twitter, Organization)
- Feature Request: Admin: Export database of all Angels
- https://github.com/fossasia/engelsystem/issues/114 [Use temporary files for exporting the database]
- https://github.com/fossasia/engelsystem/issues/144 [Improve User export]
- https://github.com/fossasia/engelsystem/issues/155 [remove password hashes from the export]
- https://github.com/fossasia/engelsystem/issues/154 [Restore Frab import]
Exporting the database of the angels in the .csv format.
- Feature Request: Admin: Shifts: Batch Deleting of Shifts
- https://github.com/fossasia/engelsystem/issues/113 [Adding checkboxes and delete button]
Implementing batch deleting of Shifts in the shifts page allowing the admin to delete multiple shifts at once. Created checkbox for selecting the shifts to be deleted and a delete button in the Shifts page to delete the selected shifts.
- Feature Request: User: Registration Form and Shifts [Captcha]
- https://github.com/fossasia/engelsystem/issues/124 [Captcha in the Registration form]
- https://github.com/fossasia/engelsystem/issues/128 [Captcha in Shifts page]
- https://github.com/fossasia/engelsystem/issues/132 [Documentation for captcha]
- https://github.com/fossasia/engelsystem/issues/142 [Refining captcha code]
- https://github.com/fossasia/engelsystem/issues/148 [Removing keys and added it via config.php]
- https://github.com/fossasia/engelsystem/issues/148 [enable and disable re-Captcha]
Implementing Google re-Captcha in the Registration form and Shifts pages for enhancing the security
- DB: Convert char(1) to Booleans
This issue was listed in the engelsystem/engelsystem issue tracker.
- Bug: Disallow self-signup of shifts
- https://github.com/fossasia/engelsystem/issues/199 [Create new Groups Page]
- https://github.com/fossasia/engelsystem/issues/201 [Providing Privileges to the new Groups Created]
Disallowing self-signup of restricted shifts when an Engel is approved for certain groups. Created a page to create new groups and provide specific privileges to them so that they won’t get Admin privileges to automatically signup for the Shifts
- Feature: User: Date/time picker for Shifts
Implementing a date/time picker in the Shifts view for selecting the shifts.
- Documentation: Setting up the system
Added documentation for setting up the system on the local as well as online server.
- Feature: User : Registration Form: Check if E-mail already exist
Implement a check in the registration form to check if an Email already exists in the system.
- User : Registration Form : Update database for setting email as unique
Set constraint in the registration from to set email as unique.
- Solving bug
- Implement database migrations
Worked in implementing database migrations for the system.
- Improving code quality and documentation.
- https://github.com/fossasia/engelsystem/issues/57 [Code and branch cleanup]
- https://github.com/fossasia/engelsystem/issues/59 [Updating documentation]
- https://github.com/fossasia/engelsystem/issues/100 [Translate comments in install.sql]
- https://github.com/fossasia/engelsystem/issues/118 [Translating comments of user_shift.php and sys_template.php]
- https://github.com/fossasia/engelsystem/issues/135 [Cleanup Project: Delete Branches, set up development branch, deploy dev branch to heroku]
- https://github.com/fossasia/engelsystem/issues/156 [Improving documentation]
- Feature Request: Creating new Settings page for Admin
Created a separate settings page for Admin, which allows admin to change specific Admin settings
- Updating settings page for User
Updating the settings page for both Admin and User to change the new fields that were added to the registration form.
- Updating users_view.php
Updating the users_view.php for the changes made in the Users table.
- Update user_model.php
Updating the users_model.php for the changes made in the Users table.
- Adding more search options in user_model
Implementing function for search by Facebook link, GitHub link, Twitter link, Organization name.
- Feature Request: Languages as profile attributes
- https://github.com/fossasia/engelsystem/issues/103 [Updating the DB for `Users` table]
- https://github.com/fossasia/engelsystem/issues/104 [Updating the registration form]
- https://github.com/fossasia/engelsystem/issues/105 [Displaying native and other languages in the users view]
- Adding forgot password link in the registration form
Adding forgot password link in the error message of the registration form, when “Email already exist” error message is displayed.
- Integrate more automated testings to the system
Integrated Travis-CI, Codacy, Code climate, Circle-CI, Gemnasium to the system
- Fixing errors Codacy and Circle-CI issues
- Improving Code quality: Removing whitespaces, translating comments and soving CI issues
- Implementing MVC model for the system
- https://github.com/fossasia/engelsystem/issues/169 [ Implement MVC for admin free, groups and import pages]
- https://github.com/fossasia/engelsystem/issues/171 [Implement MVC for admin rooms, settings, shifts pages]
- https://github.com/fossasia/engelsystem/issues/173 [Implement MVC for guest start, stats and user atom pages]
- https://github.com/fossasia/engelsystem/issues/174 [Implement MVC for user ical, messages, myshifts pages]
- https://github.com/fossasia/engelsystem/issues/175 [Implement MVC for user news, questions, settings and shifts pages]
- https://github.com/fossasia/engelsystem/issues/186 [Implement MVC for user_shifts]
- https://github.com/fossasia/engelsystem/issues/190 [Implementing MVC for the existing controller files]
There were 26 pages. Create controller files for all of them. For the pages which accesses the SQL queries, needed to be separated them into model files. There were only model files for a few pages.
- Managing different events on the same system
- https://github.com/fossasia/engelsystem/issues/82 [Creating new table ‘Events’]
- https://github.com/fossasia/engelsystem/issues/81 [Create new Events page]
- Implement an upgrade process for Engelsystem similar to WordPress
- https://github.com/fossasia/engelsystem/issues/219 [Add enable/disable for Auto-upgrade]
- Writing tests for Travis-CI
- https://github.com/fossasia/engelsystem/issues/215 [update .travis.yml for setting up the database]
Setting up the database in travis. Updated .travis.yml for setting up the database for testing.
- Writing test codes for all the model files
- https://github.com/fossasia/engelsystem/issues/194 [Write test codes for ShiftType, Shift models]
- https://github.com/fossasia/engelsystem/issues/195 [Test codes for NeededAngelType, Room, Angeltype Models]
- https://github.com/fossasia/engelsystem/issues/207 [Unit Tests for Groups, GroupPrivileges, NewsComments, News, Privileges model files]
- https://github.com/fossasia/engelsystem/issues/208 [Unit Tests for Questions, Settings, User AngelTypes, UserGroups, User, WelcomeMessage model files]
- Update Documentation
Updated the documentation for the code.
This kind of make me feel happy that I have around 230 commits on the master branch now and I believe that I will be working a lot more on EngelSystem to bring a lot of cool and useful feature to it. In case you have any suggestion feel free to file issues on EngelSystem Issues.