Skip to content
This repository has been archived by the owner on Jan 23, 2025. It is now read-only.

Commit

Permalink
fix entity count modal
Browse files Browse the repository at this point in the history
Signed-off-by: Musilah <nataleigh.nk@gmail.com>
  • Loading branch information
Musilah committed Mar 14, 2024
1 parent a3c1c9c commit 8f37d8b
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 22 deletions.
8 changes: 4 additions & 4 deletions internal/postgres/postgres.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ var (
// Config defines the options that are used when connecting to the PostgresSQL instance.
type Config struct {
Host string `env:"MG_UI_DB_HOST" envDefault:"localhost"`
Port string `env:"MG_UI_DB_PORT" envDefault:"5432"`
User string `env:"MG_UI_DB_USER" envDefault:"magistrala-ui"`
Pass string `env:"MG_UI_DB_PASS" envDefault:"magistrala-ui"`
Name string `env:"MG_UI_DB_NAME" envDefault:"dashboards"`
Port string `env:"MG_UI_DB_PORT" envDefault:"6007"`
User string `env:"MG_UI_DB_USER" envDefault:"magistrala"`
Pass string `env:"MG_UI_DB_PASS" envDefault:"magistrala"`
Name string `env:"MG_UI_DB_NAME" envDefault:"ui"`
SSLMode string `env:"MG_UI_DB_SSL_MODE" envDefault:"disable"`
SSLCert string `env:"MG_UI_DB_SSL_CERT" envDefault:""`
SSLKey string `env:"MG_UI_DB_SSL_KEY" envDefault:""`
Expand Down
5 changes: 2 additions & 3 deletions ui/web/static/js/charts.js
Original file line number Diff line number Diff line change
Expand Up @@ -620,8 +620,7 @@ class EntityCount extends Chart {
<p class="card-text count"> 35</p>
</div>
<div class="card-footer text-right">
<p class="card-text"> Domain Name: ${this.chartData.domainName}</p>
<p class="card-text"> Channel Name: ${this.chartData.channelName}</p>
<p class="card-text"> Entity Name: ${this.chartData.entityType}</p>
</div>
</div>
</div>
Expand Down Expand Up @@ -1822,7 +1821,7 @@ class ValueCard extends Chart {
async function getData() {
try {
const response = await fetch(
"/data?channel=${this.chartData.channel}"+
"${pathPrefix}/data?channel=${this.chartData.channel}"+
"&publisher=${this.chartData.thing}" +
"&name=${this.chartData.valueName}" +
"&limit=1",
Expand Down
86 changes: 71 additions & 15 deletions ui/web/templates/charts/entitycountmodal.html
Original file line number Diff line number Diff line change
Expand Up @@ -64,30 +64,56 @@ <h5 class="modal-title" id="entityCountModalLabel">Entity Count Card</h5>
aria-labelledby="data-tab"
>
<div class="mb-3">
<label for="channel-id" class="form-label">Channel ID</label>
<label for="entity-type" class="form-label">Select Entity</label>
<select class="form-select mb-3" name="entityType" id="entity-type" onchange="handleEntityTypeChange(this)">
<option value="things">Things</option>
<option value="groups">Groups</option>
<option value="channels">Channels</option>
<option value="thing-channels">Thing-Channels</option>
<option value="channel-things">Channel-Things</option>
<option value="group-things">Group-Things</option>
<option value="channel-groups">Channel-Groups</option>
</select>
</div>
<div id="thing-channels-input" style="display: none;">
<label for="thing-channels-id" class="form-label">Thing ID</label>
<input
type="text"
pattern="{{ .UUIDPattern }}"
class="form-control mb-3"
name="channel"
id="channel-id"
placeholder="Enter the channel ID"
required
name="thingChannelsId"
id="thing-channels-id"
placeholder="Enter the Thing ID"
/>
<div class="invalid-feedback">Please enter a valid uuid</div>
</div>
<div class="mb-3">
<label for="domain-id" class="form-label">Domain ID</label>
<div id="channel-things-input" style="display: none;">
<label for="channel-things-id" class="form-label">Channel ID</label>
<input
type="text"
class="form-control mb-3"
name="channelThingsId"
id="channel-things-id"
placeholder="Enter the Channel ID"
/>
</div>
<div id="group-things-input" style="display: none;">
<label for="group-things-id" class="form-label">Group ID</label>
<input
type="text"
pattern="{{ .UUIDPattern }}"
class="form-control mb-3"
name="domain"
id="domain-id"
placeholder="Enter the Domain ID"
required
name="groupThingsId"
id="group-things-id"
placeholder="Enter the Group ID"
/>
</div>
<div id="channel-groups-input" style="display: none;">
<label for="channel-groups-id" class="form-label">Channel ID</label>
<input
type="text"
class="form-control mb-3"
name="channelGroupsId"
id="channel-groups-id"
placeholder="Enter the Channel ID"
/>
<div class="invalid-feedback">Please enter a valid uuid</div>
</div>
</div>
<!-- Appearance Tab -->
Expand Down Expand Up @@ -138,6 +164,36 @@ <h5 class="modal-title" id="entityCountModalLabel">Entity Count Card</h5>
</div>
</div>
<script>
// add entity-entities blocks
function handleEntityTypeChange(selectElement) {
var thingChannelsInput = document.getElementById('thing-channels-input');
var channelThingsInput = document.getElementById('channel-things-input');
var groupThingsInput = document.getElementById('group-things-input');
var channelGroupsInput = document.getElementById('channel-groups-input');

// Hide all inputs by default
thingChannelsInput.style.display = 'none';
channelThingsInput.style.display = 'none';
groupThingsInput.style.display = 'none';
channelGroupsInput.style.display = 'none';

// Show the appropriate input based on the selected option
switch (selectElement.value) {
case 'thing-channels':
thingChannelsInput.style.display = 'block';
break;
case 'channel-things':
channelThingsInput.style.display = 'block';
break;
case 'group-things':
groupThingsInput.style.display = 'block';
break;
case 'channel-groups':
channelGroupsInput.style.display = 'block';
break;
}
}

// entity count form
document.getElementById("create-entityCount-button").addEventListener("click", function () {
let form = document.getElementById("create-entityCount-form");
Expand Down

0 comments on commit 8f37d8b

Please sign in to comment.