95 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			PHP
		
	
			
		
		
	
	
			95 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			PHP
		
	
<?php
 | 
						|
 | 
						|
class Platform {
 | 
						|
    private $db;
 | 
						|
 | 
						|
    public function __construct($database) {
 | 
						|
        $this->db = $database->getConnection();
 | 
						|
    }
 | 
						|
 | 
						|
    // get details of a specified platform ID (or all)
 | 
						|
    public function getPlatformDetails($platform_id = '') {
 | 
						|
        $sql = 'SELECT * FROM platforms';
 | 
						|
        if ($platform_id !== '') {
 | 
						|
            $sql .= ' WHERE id = :platform_id';
 | 
						|
            $query = $this->db->prepare($sql);
 | 
						|
            $query->bindParam(':platform_id', $platform_id);
 | 
						|
        } else {
 | 
						|
            $query = $this->db->prepare($sql);
 | 
						|
        }
 | 
						|
 | 
						|
        $query->execute();
 | 
						|
 | 
						|
        return $query->fetchAll(PDO::FETCH_ASSOC);
 | 
						|
    }
 | 
						|
 | 
						|
    // add new platform
 | 
						|
    public function addPlatform($newPlatform) {
 | 
						|
        try {
 | 
						|
            $sql = 'INSERT INTO platforms
 | 
						|
                    (name, jitsi_url, jilo_database)
 | 
						|
                    VALUES
 | 
						|
                    (:name, :jitsi_url, :jilo_database)';
 | 
						|
 | 
						|
            $query = $this->db->prepare($sql);
 | 
						|
            $query->execute([
 | 
						|
                ':name'			=> $newPlatform['name'],
 | 
						|
                ':jitsi_url'		=> $newPlatform['jitsi_url'],
 | 
						|
                ':jilo_database'	=> $newPlatform['jilo_database'],
 | 
						|
            ]);
 | 
						|
 | 
						|
            return true;
 | 
						|
 | 
						|
        } catch (Exception $e) {
 | 
						|
            return $e->getMessage();
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    // edit an existing platform
 | 
						|
    public function editPlatform($platform_id, $updatedPlatform) {
 | 
						|
        try {
 | 
						|
            $sql = 'UPDATE platforms SET
 | 
						|
                        name = :name,
 | 
						|
                        jitsi_url = :jitsi_url,
 | 
						|
                        jilo_database = :jilo_database
 | 
						|
                    WHERE
 | 
						|
                        id = :platform_id';
 | 
						|
 | 
						|
            $query = $this->db->prepare($sql);
 | 
						|
            $query->execute([
 | 
						|
                ':name'			=> $updatedPlatform['name'],
 | 
						|
                ':jitsi_url'		=> $updatedPlatform['jitsi_url'],
 | 
						|
                ':jilo_database'	=> $updatedPlatform['jilo_database'],
 | 
						|
                ':platform_id'		=> $platform_id,
 | 
						|
            ]);
 | 
						|
 | 
						|
            return true;
 | 
						|
 | 
						|
        } catch (Exception $e) {
 | 
						|
            return $e->getMessage();
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
    // delete a platform
 | 
						|
    public function deletePlatform($platform_id) {
 | 
						|
        try {
 | 
						|
            $sql = 'DELETE FROM platforms
 | 
						|
                    WHERE
 | 
						|
                    id = :platform_id';
 | 
						|
 | 
						|
            $query = $this->db->prepare($sql);
 | 
						|
            $query->bindParam(':platform_id', $platform_id);
 | 
						|
 | 
						|
            $query->execute();
 | 
						|
            return true;
 | 
						|
 | 
						|
        } catch (Exception $e) {
 | 
						|
            return $e->getMessage();
 | 
						|
        }
 | 
						|
    }
 | 
						|
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
?>
 |