Week 4 - Library and Content Management
Week 4 - Library and Content Management
In Week 4, I focused on creating a shared library resource, integrating Google Drive for content management, and improving user accountability with admin logs. Additionally, I enhanced the user creation process by sending welcome emails to new users using smtplib in python, streamlining communication.
Day 20: Developing a Library Page
I created a library page that provides a centralized resource hub for all logged-in users, including admins and students. This page displays books and other learning materials,enhancing resource accessibility.
* Library Display - This route queries all items from the `library_books` table in the database and displays them on the library page.
* Access Control - Ensures only logged-in users can access the library page using the @login_required decorator.
Day 21: Google Drive Integration for Library Management
To make library management easier for superadmins, I integrated Google Drive for uploading, updating, and deleting resources. Google Drive serves as a backend for storing large files, with only metadata (like file name and link) stored in the database.
Day 22: Adding Admin Logs for Monitoring Actions
I implemented an admin logging feature that tracks important actions, like adding or deleting content. These logs help superadmins monitor platform activity, promoting accountability.
Day 23: Welcome Emails with Login Details Using smtplib
I enhanced the user creation process by sending a welcome email with login credentials to new students and to new admins. This feature simplifies onboarding for students and admins.
Conclusion
Week 4 introduced crucial content management features, enhanced user onboarding, and improved admin monitoring. The integration of Google Drive, admin logs, and welcome emails has made the platform more user-friendly and manageable.
Technologies Used
- Flask - For server-side functionality.
- MySQL - For managing user data and library items.
- Google Drive API - For managing large files and storing them securely.
- smtplib - For sending automated welcome emails.
- HTML/CSS - Structuring and styling the library and log pages.