Skip to content

Commit

Permalink
fix(ui): Only show presets if the robot is capable of having those
Browse files Browse the repository at this point in the history
  • Loading branch information
Hypfer committed Mar 11, 2021
1 parent 82e4fe3 commit d996beb
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 27 deletions.
22 changes: 13 additions & 9 deletions client/zones.html
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
<ons-page id="zones-page">
<div class="progress-bar-container"><ons-progress-bar id="loading-bar-zones" value="0"></ons-progress-bar></div>

<ons-list-title style="margin-top:20px;">Configured zones</ons-list-title>
<ons-list id="zones-list">
<ons-list-item>No zones are configured yet.</ons-list-item>
</ons-list>
<div id="zone-presets-item" hidden>
<ons-list-title style="margin-top:20px;">Configured zones</ons-list-title>
<ons-list id="zones-list">
<ons-list-item>No zones are configured yet.</ons-list-item>
</ons-list>
</div>

<ons-list-title style="margin-top:20px;">Configured goto locations</ons-list-title>
<ons-list id="spot-list">
<ons-list-item>No spots are configured yet.</ons-list-item>
</ons-list>
<div id="goto-location-presets-item" hidden>
<ons-list-title style="margin-top:20px;">Configured goto locations</ons-list-title>
<ons-list id="spot-list">
<ons-list-item>No spots are configured yet.</ons-list-item>
</ons-list>
</div>

<div id="forbidden-zones-item" hidden>
<ons-list-title style="margin-top:20px;">Segment edit</ons-list-title>
<ons-list-title style="margin-top:20px;">Virtual Restrictions</ons-list-title>
<ons-list id="forbidden-zones-list">
<ons-list-item tappable class="locations-list-item" onclick="switchToForbiddenMarkersEdit()">
<label><ons-icon icon="edit"></ons-icon></label>
Expand Down
45 changes: 27 additions & 18 deletions client/zones.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ let zonesList = document.getElementById("zones-list");
let spotList = document.getElementById("spot-list");
let forbiddenZonesItem = document.getElementById("forbidden-zones-item");
let segmentEditItem = document.getElementById("segment-edit-item");
let zonePresetsItem = document.getElementById("zone-presets-item");
let gotoLocationPresetsItem = document.getElementById("goto-location-presets-item");

/** @type {Array<{id:number, name:string, user: boolean, areas: Array}>} */
let zonesConfig = [];
Expand Down Expand Up @@ -212,24 +214,6 @@ function generateSpotList() {
async function ZonesInit() {
loadingBarZones.setAttribute("indeterminate", "indeterminate");

/* check for area and go to configuration */
try {
zonesConfig = Object.values(await ApiService.getZones());
generateZonesList();
} catch (err) {
ons.notification.toast(err.message,
{buttonLabel: "Dismiss", timeout: window.fn.toastErrorTimeout});
}

try {
spotConfig = await ApiService.getSpots();
generateSpotList();
} catch (err) {
ons.notification.toast(err.message,
{buttonLabel: "Dismiss", timeout: window.fn.toastErrorTimeout});
}

/* forbidden zones are not supported by gen 1 vacuums */
try {
let robotCapabilities = await ApiService.getRobotCapabilities();
if (robotCapabilities.includes("CombinedVirtualRestrictionsCapability")) {
Expand All @@ -238,6 +222,31 @@ async function ZonesInit() {
if (robotCapabilities.includes("MapSegmentationCapability")) {
segmentEditItem.hidden = false;
}

if (robotCapabilities.includes("ZoneCleaningCapability")) {
zonePresetsItem.hidden = false;

try {
zonesConfig = Object.values(await ApiService.getZones());
generateZonesList();
} catch (err) {
ons.notification.toast(err.message,
{buttonLabel: "Dismiss", timeout: window.fn.toastErrorTimeout});
}
}

if (robotCapabilities.includes("GoToLocationCapability")) {
gotoLocationPresetsItem.hidden = false;

try {
spotConfig = await ApiService.getSpots();
generateSpotList();
} catch (err) {
ons.notification.toast(err.message,
{buttonLabel: "Dismiss", timeout: window.fn.toastErrorTimeout});
}

}
} catch (err) {
ons.notification.toast(err.message,
{buttonLabel: "Dismiss", timeout: window.fn.toastErrorTimeout});
Expand Down

0 comments on commit d996beb

Please sign in to comment.