public static function insertOnDuplicate($guacamoleConnectionParameter)
 {
     //Récupère les valeurs de l'objet Guacamole_Connection_Parameter passé en para de la méthode
     $connectionId = $guacamoleConnectionParameter->getConnection()->getConnectionId();
     //int
     $parameterName = $guacamoleConnectionParameter->getParameterName();
     //string
     $parameterValue = $guacamoleConnectionParameter->getParameterValue();
     //string
     if (is_null(self::findByCP($connectionId, $parameterName))) {
         $sql = 'INSERT INTO guacamole_connection_parameter (connection_id, parameter_name, parameter_value) ' . ' VALUES (?,?,?) ';
         //Prépare les info concernant les types de champs
         $params = array('iss', &$connectionId, &$parameterName, &$parameterValue);
     } else {
         $sql = 'UPDATE guacamole_connection_parameter ' . 'SET connection_id = ?, ' . 'parameter_name = ?, ' . 'parameter_value = ? ' . 'WHERE connection_id = ? AND parameter_name = ?';
         //Prépare les info concernant les type de champs
         $params = array('issis', &$connectionId, &$parameterName, &$parameterValue, &$connectionId, &$parameterName);
     }
     //Exec la requête
     $idInsert = BaseSingletonGuacamole::insertOrEdit($sql, $params);
     return $idInsert;
 }
 public static function insertOnDuplicate($guacamoleUser)
 {
     //Récupère les valeurs de l'objet guacamoleConnection passé en para de la méthode
     $username = $guacamoleUser->getUsername();
     //string
     $passwordHash = $guacamoleUser->getPasswordHash();
     //string
     $disabled = $guacamoleUser->getDisabled();
     //int
     $expired = $guacamoleUser->getExpired();
     //int
     $accessWindowStart = $guacamoleUser->getAccessWindowStart();
     //string
     $accessWindowEnd = $guacamoleUser->getAccessWindowEnd();
     //string
     $validFrom = $guacamoleUser->getValidFrom();
     //string
     $validUntil = $guacamoleUser->getValidUntil();
     //string
     $timezone = $guacamoleUser->getTimezone();
     //string
     $userId = $guacamoleUser->getUserId();
     //int
     if ($userId < 0) {
         $sql = 'INSERT INTO guacamole_user (username, password_salt, password_hash, disabled, expired, access_window_start, access_window_end, valid_from, valid_until, timezone) ' . 'VALUES (?,UNHEX(SHA2(UUID(), 256)), UNHEX(SHA2(CONCAT(?, HEX(password_salt)), 256)),?,?,?,?,?,?,?);';
         //sssiisssss
         //Prépare les info concernant les type de champs
         $params = array('ssiisssss', &$username, &$passwordHash, &$disabled, &$expired, &$accessWindowStart, &$accessWindowEnd, &$validFrom, &$validUntil, &$timezone);
     } else {
         $sql = 'UPDATE guacamole_user ' . 'SET username = ?, ' . 'password_salt = UNHEX(SHA2(UUID(), 256)), ' . 'password_hash = UNHEX(SHA2(CONCAT(?, HEX(password_salt)), 256)), ' . 'disabled = ?, ' . 'expired = ?, ' . 'access_window_start = ?, ' . 'access_window_end = ?, ' . 'valid_from = ?, ' . 'valid_until = ?, ' . 'timezone = ? ' . 'WHERE user_id = ?;';
         //Prépare les info concernant les type de champs
         $params = array('ssiisssssi', &$username, &$passwordHash, &$disabled, &$expired, &$accessWindowStart, &$accessWindowEnd, &$validFrom, &$validUntil, &$timezone, &$userId);
     }
     //Exec la requête
     $idInsert = BaseSingletonGuacamole::insertOrEdit($sql, $params);
     return $idInsert;
 }
 public static function insertOnDuplicate($guacamoleConnectionPermission)
 {
     //Récupère les valeurs de l'objet Guacamole_Connection_Permission passé en para de la méthode
     $userId = $guacamoleConnectionPermission->getUser()->getUserId();
     //int
     $connectionId = $guacamoleConnectionPermission->getConnection()->getConnectionId();
     //int
     $permission = $guacamoleConnectionPermission->getPermission();
     //string
     if (is_null(self::findByUCP($userId, $connectionId, $permission))) {
         $sql = 'INSERT INTO guacamole_connection_permission (user_id, connection_id, permission) ' . ' VALUES (?,?,?) ';
         //Prépare les info concernant les types de champs
         $params = array('iis', &$userId, &$connectionId, &$permission);
     } else {
         $sql = 'UPDATE guacamole_connection_permission ' . 'SET user_id = ?, ' . 'connection_id = ?, ' . 'permission = ? ' . 'WHERE user_id = ? AND connection_id = ?';
         //Prépare les info concernant les type de champs
         $params = array('iisii', &$userId, &$connectionId, &$permission, &$userId, &$connectionId);
     }
     //Exec la requête
     $idInsert = BaseSingletonGuacamole::insertOrEdit($sql, $params);
     return $idInsert;
 }
 public static function insertOnDuplicate($guacamoleConnection)
 {
     //Récupère les valeurs de l'objet guacamoleConnection passé en para de la méthode
     $connectionName = $guacamoleConnection->getConnectionName();
     //string
     $parentId = null;
     $parent = $guacamoleConnection->getParent();
     //int
     if ($parent != null) {
         $parentId = $guacamoleConnection->getParent()->getId();
         //int
     }
     $protocol = $guacamoleConnection->getProtocol();
     //string
     $maxConnections = $guacamoleConnection->getMaxConnections();
     //int
     $maxConnectionsPerUser = $guacamoleConnection->getMaxConnectionsPerUser();
     //int
     $connectionId = $guacamoleConnection->getConnectionId();
     //int
     if ($connectionId < 0) {
         $sql = 'INSERT INTO guacamole_connection (connection_name, parent_id, protocol, max_connections, max_connections_per_user) ' . ' VALUES (?,?,?,?,?) ';
         //Prépare les info concernant les type de champs
         $params = array('sisii', &$connectionName, &$parentId, &$protocol, &$maxConnections, &$maxConnectionsPerUser);
     } else {
         $sql = 'UPDATE guacamole_connection ' . 'SET connection_name = ?, ' . 'parent_id = ?, ' . 'protocol = ?, ' . 'max_connections = ?, ' . 'max_connections_per_user = ? ' . 'WHERE connection_id = ? ';
         //Prépare les info concernant les type de champs
         $params = array('sisiii', &$connectionName, &$parentId, &$protocol, &$maxConnections, &$maxConnectionsPerUser, &$connectionId);
     }
     //Exec la requête
     $idInsert = BaseSingletonGuacamole::insertOrEdit($sql, $params);
     return $idInsert;
 }