<?php
// app/controllers/ProjectController.php

require_once __DIR__ . '/../models/Project.php';

class ProjectController {
    private $pdo;
    private $projectModel;

    public function __construct($pdo) {
        $this->pdo = $pdo;
        $this->projectModel = new Project($pdo);
    }

    // Show the list of projects
    public function index() {
        $projects = $this->projectModel->getAll();
        $pageTitle = "My Projects";
        
        require_once __DIR__ . '/../views/layouts/header.php';
        require_once __DIR__ . '/../views/projects/index.php';
        require_once __DIR__ . '/../views/layouts/footer.php';
    }

    // Show the "Create New" form
    public function create() {
        $pageTitle = "New Project";
        require_once __DIR__ . '/../views/layouts/header.php';
        require_once __DIR__ . '/../views/projects/create.php';
        require_once __DIR__ . '/../views/layouts/footer.php';
    }

    // Handle the form submission
    public function store() {
        if ($_SERVER['REQUEST_METHOD'] === 'POST') {
            $data = [
                'name' => $_POST['name'],
                'description' => $_POST['description'],
                'owner_id' => $_SESSION['user_id'], // Currently logged in user
                'start_date' => $_POST['start_date'],
                'end_date' => $_POST['end_date'],
                'status' => 'active'
            ];

            if ($this->projectModel->create($data)) {
                header('Location: /projects.php');
                exit;
            } else {
                echo "Error creating project.";
            }
        }
    }
}
?>