GSoC: Recording Actions Logs, Accessible by Super Admin (Final statement)

Written by | 11 September 2016 | Published in Joomla! Community Magazine - September 2016
Google Summer of Code is now over. Amazing three months I worked with the amazing team of Joomla. Learnt a lot and had much fun. My project was “Recording Actions Logs, Accessible by Super Admin” which I wish would be a good addition to the Joomla project.

Proposal vs Final Product

As many projects, the expectations sometimes don’t match the reality. After speaking with my mentors, we decided to have this list of features:

  • Global setting to activate or disable logging (some websites looking for performance or with 1 admin do not require logging)
  • Settings to self-clean logs after specific time period, e.g.: rolling log for past 90 days.
  • Settings to notify administrators (via email) of specific actions (e.g.: a successful admin login generates a notification mail to a super admin, new content creation generates an email... etc.).
  • View all logs via an admin screen, with a filter for date, the extension type, user account.
  • View specific user action logs under the User Manager page
  • General logging to include User IP, Username, User ID, Event Action, Event Location, Time/date.
  • System will utilize Joomla permissions system to allow super admin to choose what groups could view this extension?
  • Button to export Logs to CSV file
  • If IP logging is activated, a notice should show to inform the admin that this is happening (perhaps a notice to agree to the once?)
  • The super user can undo users actions from the component's dashboard 

I can say that I achieved almost all of these features except for the last one as it would take much time which I didn’t have during GSoC.

Project Features and Benefits

As a super-user you would expect to have a plugin that stores the logs of the users and to have a component that shows you these logs. You can sort these logs by date, user or extension.

This image will show you the component part:

gsoc

GSoC Experience

GSoC experience was great to me. Watching PHP communities speak about Joomla as a better/stronger CMS always made me want to learn more about this great tool, but I didn’t have the chance/time to do so. I took the chance of GSoC to learn Joomla and to be a part of its great team.

I learnt a lot from this project. I saw what it means to build a well-designed software, how different design patterns can be used and the importance of coding standards.

Joomla! Community

I saw the power of the open-source and how people that don’t know you and won’t get paid can help you to achieve a common goal. It was really awesome. This made me feel that I’m a part of a great team and want to give more to this great team.

My contribution to the Joomla community would be taking care of my project, fix its bugs and help adding more feature in the future. Also from time to time I’ll help with some issues. I also can help with the documentation.

Important Links

 

Read 5859 times Tagged under Google Summer of Code, English