<?php

class functions
{
    function __contruct()
    {
        if (!isset($_SESSION['user_id'])) {
            echo "<script>window.location.href='login.php';</script>";
        }
    }
    public function user_did($message)
    {
        $db = new db();
        $db->query("INSERT INTO `user_log` (`user_id`, `log`) VALUES ('{$_SESSION['user_id']}', '{$message}')");
    }

    public function user_park_credits($user_id)
    {
        $db = new db();
        $res = $db->query("SELECT SUM(amount) as total FROM visit_trans WHERE user_id = {$user_id} AND type='PARK'");
        if ($res->num_rows < 1) {
            return 0;
        } else {
            return $res->fetch_assoc()['total'];
        }
    }

    public function user_training_credits($user_id)
    {
        $db = new db();
        $res = $db->query("SELECT SUM(amount) as total FROM visit_trans WHERE user_id = {$user_id} AND type='TRAINING'");
        if ($res->num_rows < 1) {
            return 0;
        } else {
            return $res->fetch_assoc()['total'];
        }
    }

    public function get_latest_booking($user_id)
    {
        $db = new db();
        $res = $db->query("SELECT * FROM bookings WHERE user_id = {$user_id} AND `status` = 1 ORDER BY record_id DESC LIMIT 1");
        if ($res->num_rows < 1) {
            return "NO BOOKINGS YET";
        } else {
            $data = $res->fetch_assoc();
            return $data['date_of_booking'] . " <br> " . $data['time_start'] . " - " . $data['time_end'];
        }
    }

    public function get_total_dogs($user_id)
    {
        $db = new db();
        $res = $db->query("SELECT * FROM user_animals WHERE user_id = {$user_id}");
        if ($res->num_rows < 1) {
            return "0";
        } else {
            return $res->num_rows;
        }
    }

    public function get_wallet_amount($user_id)
    {
        $db = new db();
        $res = $db->query("SELECT SUM(zar) as total FROM payments WHERE user_id = {$user_id}");
        if ($res->num_rows < 1) {
            return "0";
        } else {
            return $res->fetch_assoc()['total'];
        }
    }

    public function get_park_price()
    {
        $db = new db();
        $res = $db->query("SELECT price FROM park_prices WHERE `name` = 'PARK'");
        if ($res->num_rows < 1) {
            return "0";
        } else {
            return $res->fetch_assoc()['price'];
        }
    }

    function get_user_name_and_email($user_id){
        $db = new db();
        $res = $db->query("SELECT username, email FROM users WHERE record_id = {$user_id}");
        if ($res->num_rows < 1) {
            return "0";
        } else {
            return $res->fetch_assoc();
        }
    }
    public function get_park_group_price()
    {
        $db = new db();
        $res = $db->query("SELECT price FROM park_prices WHERE `name` = 'GROUP'");
        if ($res->num_rows < 1) {
            return "0";
        } else {
            return $res->fetch_assoc()['price'];
        }
    }

    public function event_handler($subject, $message)
    {
        $db = new db();
        $db->query("INSERT INTO event_handler (`user_id`, `subject`, `message`) VALUES ('{$_SESSION['user_id']}', '{$subject}', '{$message}')");
    }
}