Skip to content

Commit

Permalink
Merge pull request #575 from erwindon/visnav
Browse files Browse the repository at this point in the history
add a navigation indicator for table rows
  • Loading branch information
erwindon authored May 1, 2024
2 parents bf2e523 + cc0fe32 commit b6517b6
Show file tree
Hide file tree
Showing 15 changed files with 34 additions and 16 deletions.
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Beacons.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export class BeaconsPanel extends Panel {
this.addSearchButton();
this.addTable(["Minion", "Status", "Beacons", "-menu-"]);
this.setTableSortable("Minion", "asc");
this.setTableClickable();
this.setTableClickable("page");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/BeaconsMinion.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ export class BeaconsMinionPanel extends Panel {
]);
this.addTable(["Name", "-menu-", "Config", "Timestamp", "Value", "-help-"]);
this.setTableSortable("Name", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Grains.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ export class GrainsPanel extends Panel {
]);
this.addWarningField();
this.addTable(["Minion", "Status", "Salt version", "OS version", "Grains", "-menu-"]);
this.setTableClickable();

// cannot initialize sorting before all columns are present
// this.setTableSortable("Minion", "asc");
Expand All @@ -41,6 +40,7 @@ export class GrainsPanel extends Panel {
tr.appendChild(th);
}
this.previewColumsAdded = true;
this.setTableClickable("page");
}

// initialize sorting after all columns are present
Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/GrainsMinion.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export class GrainsMinionPanel extends Panel {
this.addWarningField();
this.addTable(["Name", "-menu-", "Value"]);
this.setTableSortable("Name", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/HighState.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export class HighStatePanel extends Panel {
this.addWarningField();
this.addTable(["Minion", "State", "Latest JID", "Target", "Function", "Start Time", "-menu-", "States"]);
this.setTableSortable("Minion", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();

// collect the list of hidden/shown environments
Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Issues.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export class IssuesPanel extends Panel {
"that are observed in various categories."
]);
this.addTable(["-menu-", "Description"]);
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();

// keep the list of "loading..." messages
Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/JobsDetails.js
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ export class JobsDetailsPanel extends JobsPanel {
]);
this.addTable(["JID", "Target", "Function", "Start Time", "-menu-", "Status", "Details"], "data-list-jobs");
this.setTableSortable("JID", "desc");
this.setTableClickable();
this.setTableClickable("page");
this.addMsg();
}

Expand Down
4 changes: 2 additions & 2 deletions saltgui/static/scripts/panels/JobsSummary.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ export class JobsSummaryPanel extends JobsPanel {

this.addTitle("Recent Jobs");
this.addSearchButton();
this.addTable(null);
this.setTableClickable();
this.addTable(["-dummy-", "-dummy-"]);
this.setTableClickable("page");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Minions.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export class MinionsPanel extends Panel {
this.addWarningField();
this.addTable(["Minion", "Status", "Salt version", "OS version", "-menu-"]);
this.setTableSortable("Minion", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Nodegroups.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export class NodegroupsPanel extends Panel {
this.addPlayPauseButton();
this.addWarningField();
this.addTable(["Minion", "Status", "Salt version", "OS version", "-menu-"]);
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down
20 changes: 19 additions & 1 deletion saltgui/static/scripts/panels/Panel.js
Original file line number Diff line number Diff line change
Expand Up @@ -224,9 +224,27 @@ export class Panel {
}
}

setTableClickable () {
setTableClickable (pType) {
// this function is only called when the table is clickable
// pType is "cmd" or "page"
this.table.classList.add("highlight-rows");
if (!this.table.tHead) {
return;
}
const tr = this.table.tHead.children[0];
const nrColumns = tr.children.length;
const th = tr.children[nrColumns - 1];
th.innerHTML = "<span id='tableinfo' style='float:right'>" + Character.CIRCLED_INFORMATION_SOURCE + "</span>" + th.innerHTML;
const tableinfo = this.table.querySelector("#tableinfo");
switch (pType) {
case "cmd":
Utils.addToolTip (tableinfo, "Click row to show Manual Run for that row", "bottom-right");
break;
case "page":
Utils.addToolTip (tableinfo, "Click row to navigate to details page\nCTRL-click to open in a new tab and stay here\nALT-click to open in a new tab and go to it", "bottom-right");
break;
default:
}
}

setTableSortable (pColumnName, pDirection = "asc") {
Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Pillars.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export class PillarsPanel extends Panel {
this.addWarningField();
this.addTable(["Minion", "Status", "Pillars", "-menu-"]);
this.setTableSortable("Minion", "asc");
this.setTableClickable();
this.setTableClickable("page");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Schedules.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export class SchedulesPanel extends Panel {
this.addSearchButton();
this.addTable(["Minion", "Status", "Schedules", "-menu-"]);
this.setTableSortable("Minion", "asc");
this.setTableClickable();
this.setTableClickable("page");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/SchedulesMinion.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export class SchedulesMinionPanel extends Panel {
}
this.addTable(["Name", "-menu-", "Details"]);
this.setTableSortable("Name", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down
2 changes: 1 addition & 1 deletion saltgui/static/scripts/panels/Templates.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export class TemplatesPanel extends Panel {
this.addSearchButton();
this.addTable(["Name", "Category", "Key", "Description", "Target", "Command", "-menu-"], "data-list-templates");
this.setTableSortable("Name", "asc");
this.setTableClickable();
this.setTableClickable("cmd");
this.addMsg();
}

Expand Down

0 comments on commit b6517b6

Please sign in to comment.