2025-02-04 23:06:08 +01:00
# Module 3 - TFU
A PHP-based web application for managing team campaigns and followups.
## Getting Started
### Prerequisites
2025-02-10 03:04:50 +01:00
- Docker and Docker Compose
- OR PHP 7.4 or higher with MySQL/MariaDB
2025-02-04 23:06:08 +01:00
2025-02-10 03:04:50 +01:00
### Docker Installation (Recommended)
1. Clone this repository to your local machine
2. Run the following command in the project root:
``` bash
docker-compose up -d
```
3. The services will be available at:
- Application: http://localhost:9000
- PHPMyAdmin: http://localhost:8889 (credentials: root/root)
4. Import the database schema:
- Access PHPMyAdmin at http://localhost:8889
- Login with username: root, password: root
- Create a new database named 'tfu_db'
- Import the `db.sql` file
- import the `migration.sql` file
### Traditional Installation
2025-02-04 23:06:08 +01:00
1. Clone this repository to your local machine
2. Configure your database connection in `config.php`
3. Import the database schema using the provided `db.sql` file
### Running the Application
2025-02-10 03:04:50 +01:00
#### Using Docker (Recommended)
The application will be automatically running at http://localhost:9000
2025-02-04 23:06:08 +01:00
2025-02-10 03:04:50 +01:00
#### Using PHP Built-in Server
Start the development server using:
2025-02-04 23:06:08 +01:00
``` bash
php -S localhost:9000
```
Then visit `http://localhost:9000` in your web browser.
2025-02-10 03:04:50 +01:00
### Login Credentials
2025-02-04 23:06:08 +01:00
2025-02-10 03:04:50 +01:00
Admin Login `http://localhost:9000/admin/login`
- Email: admin@manaknight .com
- Password: a123456
2025-02-04 23:06:08 +01:00
Client Login `http://localhost:9000/client/login`
2025-02-10 03:04:50 +01:00
- Email: emmy@manaknight .com
- Password: a123456
2025-02-04 23:06:08 +01:00
## Features
- Campaign management
2025-02-10 03:04:50 +01:00
- Followup tracking
2025-02-04 23:06:08 +01:00
- Add and edit campaign details
- Database-driven application
## Core Project Files
├── README.md
├── config.php # Database configuration
├── db.sql # Database schema
├── migration.sql # Database seed data
├── index.php # Main entry point
2025-02-10 03:04:50 +01:00
├── docker-compose.yml # Docker configuration
2025-02-04 23:06:08 +01:00
## Tasks
### Miscs
1. On admin login redirect to Access Log
2. Client login is broken
3. Add bulk delete functionality to the Admin License list
4. Change the pagination type from offset to cursor pagination on Admin License list (https://www.merge.dev/blog/cursor-pagination)
### Filter functionality
5. Add a fuzzy email search to the Admin license list
6. Add a fuzzy search for the project & webhook fields to the Admin Availability Checker list
7. Add a fuzzy search filter for the project field in Admin Reports
8. Add a date range filter for the date field in Admin Reports
### Integrations
9. User should be able to Add Campign without connecting drive. On the Add Campign screen when the user selects the Select Google sheet button, display the google picker modal to select spreadsheets only.
https://developers.google.com/drive/picker/guides/overview
Google console creds:
Client id: 356934742115-c707dqbhct9b7gj64eo9rqfdfi47rb8o.apps.googleusercontent.com
API key: AIzaSyB7JhbYloABBC-jZebyjHoiXUiM-s_7sBA