Fixes agent types selection on add/edit

main
Yasen Pramatarov 2024-10-03 11:28:23 +03:00
parent d0ef53a176
commit 1468843cac
4 changed files with 37 additions and 10 deletions

View File

@ -40,6 +40,17 @@ class Agent {
return $query->fetchAll(PDO::FETCH_ASSOC); return $query->fetchAll(PDO::FETCH_ASSOC);
} }
// get agent types
public function getAgentTypes() {
$sql = 'SELECT *
FROM jilo_agent_types
ORDER BY id';
$query = $this->db->prepare($sql);
$query->execute();
return $query->fetchAll(PDO::FETCH_ASSOC);
}
// add new agent // add new agent
public function addAgent($platform_id, $newAgent) { public function addAgent($platform_id, $newAgent) {
try { try {

View File

@ -20,7 +20,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// new agent adding // new agent adding
if (isset($_POST['new']) && isset($_POST['item']) && $_POST['new'] === 'true' && $_POST['item'] === 'agent') { if (isset($_POST['new']) && isset($_POST['item']) && $_POST['new'] === 'true' && $_POST['item'] === 'agent') {
$newAgent = [ $newAgent = [
'type_id' => 1, 'type_id' => $_POST['type'],
'url' => $_POST['url'], 'url' => $_POST['url'],
'secret_key' => $_POST['secret_key'], 'secret_key' => $_POST['secret_key'],
]; ];
@ -58,7 +58,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
} elseif (isset($_POST['agent'])) { } elseif (isset($_POST['agent'])) {
$updatedAgent = [ $updatedAgent = [
'id' => $agent, 'id' => $agent,
'agent_type_id' => 1, 'agent_type_id' => $_POST['type'],
'url' => $_POST['url'], 'url' => $_POST['url'],
'secret_key' => $_POST['secret_key'], 'secret_key' => $_POST['secret_key'],
]; ];
@ -126,6 +126,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
default: default:
switch ($action) { switch ($action) {
case 'add-agent': case 'add-agent':
$jilo_agent_types = $agentObject->getAgentTypes();
include '../app/templates/config-add-agent.php'; include '../app/templates/config-add-agent.php';
break; break;
case 'add': case 'add':
@ -134,6 +135,7 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
case 'edit': case 'edit':
if (isset($_GET['agent'])) { if (isset($_GET['agent'])) {
$agentDetails = $agentObject->getAgentDetails($platform_id, $agent); $agentDetails = $agentObject->getAgentDetails($platform_id, $agent);
$jilo_agent_types = $agentObject->getAgentTypes();
include '../app/templates/config-edit-agent.php'; include '../app/templates/config-edit-agent.php';
} else { } else {
include '../app/templates/config-edit-platform.php'; include '../app/templates/config-edit-platform.php';

View File

@ -3,7 +3,7 @@
<div class="card text-center w-50 mx-auto"> <div class="card text-center w-50 mx-auto">
<p class="h4 card-header">Add new Jilo Agent to Jitsi platform "<strong><?= htmlspecialchars($platformDetails[0]['name']) ?></strong>"</p> <p class="h4 card-header">Add new Jilo Agent to Jitsi platform "<strong><?= htmlspecialchars($platformDetails[0]['name']) ?></strong>"</p>
<div class="card-body"> <div class="card-body">
<!--p class="card-text">add new platform:</p--> <!--p class="card-text">add new agent:</p-->
<form method="POST" action="<?= $app_root ?>?platform=<?= htmlspecialchars($platform_id) ?>&page=config"> <form method="POST" action="<?= $app_root ?>?platform=<?= htmlspecialchars($platform_id) ?>&page=config">
<div class="row mb-3"> <div class="row mb-3">
@ -12,7 +12,14 @@
<span class="text-danger" style="margin-right: -12px;">*</span> <span class="text-danger" style="margin-right: -12px;">*</span>
</div> </div>
<div class="col-md-8"> <div class="col-md-8">
<input class="form-control" type="text" name="type" value="" required autofocus /> <select class="form-control" type="text" name="type" id="agent_type_id" required>
<option></option>
<?php foreach ($jilo_agent_types as $agent_type) { ?>
<option value="<?= $agent_type['id']?>">
<?= $agent_type['description'] ?>
</option>
<?php } ?>
</select>
<p class="text-start"><small>type of agent (meet, jvb, jibri, all)</small></p> <p class="text-start"><small>type of agent (meet, jvb, jibri, all)</small></p>
</div> </div>
</div> </div>

View File

@ -12,7 +12,14 @@
<span class="text-danger" style="margin-right: -12px;">*</span> <span class="text-danger" style="margin-right: -12px;">*</span>
</div> </div>
<div class="col-md-8"> <div class="col-md-8">
<input class="form-control" type="text" name="type_id" value="<?= htmlspecialchars($agentDetails[0]['agent_type_id'])?>" required autofocus /> <select class="form-control" type="text" name="type" id="agent_type_id" required>
<option></option>
<?php foreach ($jilo_agent_types as $agent_type) { ?>
<option value="<?= $agent_type['id']?>" <?php if ($agentDetails[0]['agent_type_id'] === $agent_type['id']) echo 'selected'; ?>>
<?= $agent_type['description'] ?>
</option>
<?php } ?>
</select>
<p class="text-start"><small>type of agent (meet, jvb, jibri, all)</small></p> <p class="text-start"><small>type of agent (meet, jvb, jibri, all)</small></p>
</div> </div>
</div> </div>