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(); | ||
|  |         } | ||
|  |     } | ||
|  | 
 | ||
|  | 
 | ||
|  | } | ||
|  | 
 | ||
|  | ?>
 |