Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add a navigation indicator for table rows #575

Merged
merged 2 commits into from
May 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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");
erwindon marked this conversation as resolved.
Show resolved Hide resolved
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
Loading