Compare commits

...

3 Commits

Author SHA1 Message Date
Yasen Pramatarov 06bf414f41 Adds phpdoc comments 2024-11-26 16:22:27 +02:00
Yasen Pramatarov 4b4a9603b9 Clears extra spaces 2024-11-26 16:17:41 +02:00
Yasen Pramatarov 396b449bf2 Adds phpdoc comments 2024-11-26 16:16:16 +02:00
4 changed files with 63 additions and 11 deletions

View File

@ -25,7 +25,7 @@ class Host {
*
* @param string $platform_id The platform ID to filter the hosts by (optional).
* @param string $host_id The host ID to filter the details (optional).
*
*
* @return array The details of the host(s) in the form of an associative array.
*/
public function getHostDetails($platform_id = '', $host_id = '') {
@ -65,7 +65,7 @@ class Host {
* Add a new host to the database.
*
* @param array $newHost An associative array containing the details of the host to be added.
*
*
* @return bool True if the host was added successfully, otherwise false.
*/
public function addHost($newHost) {
@ -95,7 +95,7 @@ class Host {
*
* @param string $platform_id The platform ID to which the host belongs.
* @param array $updatedHost An associative array containing the updated details of the host.
*
*
* @return bool True if the host was updated successfully, otherwise false.
*/
public function editHost($platform_id, $updatedHost) {
@ -127,7 +127,7 @@ class Host {
* Delete a host from the database.
*
* @param int $host_id The ID of the host to be deleted.
*
*
* @return bool True if the host was deleted successfully, otherwise false.
*/
public function deleteHost($host_id) {

View File

@ -1,13 +1,32 @@
<?php
/**
* Class Platform
*
* Handles platform management in the database, including retrieving, adding, editing, and deleting platforms.
*/
class Platform {
/**
* @var PDO|null $db The database connection instance.
*/
private $db;
/**
* Platform constructor.
*
* @param Database $database The database connection object.
*/
public function __construct($database) {
$this->db = $database->getConnection();
}
// get details of a specified platform ID (or all)
/**
* Retrieve details of a specific platform or all platforms.
*
* @param string $platform_id The ID of the platform to retrieve details for (optional).
*
* @return array An associative array containing platform details.
*/
public function getPlatformDetails($platform_id = '') {
$sql = 'SELECT * FROM platforms';
if ($platform_id !== '') {
@ -23,7 +42,16 @@ class Platform {
return $query->fetchAll(PDO::FETCH_ASSOC);
}
// add new platform
/**
* Add a new platform to the database.
*
* @param array $newPlatform An associative array containing the details of the new platform:
* - `name` (string): The name of the platform.
* - `jitsi_url` (string): The URL for the Jitsi integration.
* - `jilo_database` (string): The database name for Jilo integration.
*
* @return bool|string True if the platform was added successfully, or an error message on failure.
*/
public function addPlatform($newPlatform) {
try {
$sql = 'INSERT INTO platforms
@ -45,7 +73,17 @@ class Platform {
}
}
// edit an existing platform
/**
* Edit an existing platform in the database.
*
* @param int $platform_id The ID of the platform to update.
* @param array $updatedPlatform An associative array containing the updated platform details:
* - `name` (string): The updated name of the platform.
* - `jitsi_url` (string): The updated Jitsi URL.
* - `jilo_database` (string): The updated Jilo database name.
*
* @return bool|string True if the platform was updated successfully, or an error message on failure.
*/
public function editPlatform($platform_id, $updatedPlatform) {
try {
$sql = 'UPDATE platforms SET
@ -70,7 +108,13 @@ class Platform {
}
}
// delete a platform
/**
* Delete a platform from the database.
*
* @param int $platform_id The ID of the platform to delete.
*
* @return bool|string True if the platform was deleted successfully, or an error message on failure.
*/
public function deletePlatform($platform_id) {
try {
$sql = 'DELETE FROM platforms

View File

@ -13,7 +13,7 @@ class User {
/**
* User constructor.
*
*
* @param Database $database Database instance to retrieve a connection.
*/
public function __construct($database) {

View File

@ -1,17 +1,24 @@
<?php
// Jilo components status checks
//
/**
* Jilo Components Status Checks
*
* This page ("status") checks the status of various Jilo platform components
* by fetching data from agents and determining their availability.
* It generates output for each platform and agent.
*/
require '../app/classes/agent.php';
$agentObject = new Agent($dbWeb);
include '../app/templates/status-server.php';
// loop through all platforms to check their agents
foreach ($platformsAll as $platform) {
include '../app/templates/status-platform.php';
// fetch agent details for the current platform
$agentDetails = $agentObject->getAgentDetails($platform['id']);
foreach ($agentDetails as $agent) {
$agent_url = parse_url($agent['url']);
@ -23,6 +30,7 @@ foreach ($platformsAll as $platform) {
$agent_response = $agentObject->fetchAgent($agent['id'], true);
$agent_data = json_decode($agent_response);
// determine agent availability based on response data
if (json_last_error() === JSON_ERROR_NONE) {
$agent_availability = '<span class="text-warning">unknown</span>';
foreach ($agent_data as $key => $value) {