mirror of
https://github.com/45Drives/cockpit-navigator.git
synced 2025-07-30 17:15:16 +02:00
show properties for editing batches of files
This commit is contained in:
parent
defaf5d1ce
commit
e93eccbab1
@ -173,7 +173,6 @@ class NavEntry {
|
|||||||
handleEvent(e) {
|
handleEvent(e) {
|
||||||
switch (e.type) {
|
switch (e.type) {
|
||||||
case "click":
|
case "click":
|
||||||
this.show_properties();
|
|
||||||
this.nav_window_ref.set_selected(this, e.shiftKey, e.ctrlKey);
|
this.nav_window_ref.set_selected(this, e.shiftKey, e.ctrlKey);
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
break;
|
break;
|
||||||
@ -817,6 +816,16 @@ class NavWindow {
|
|||||||
i.dom_element.nav_item_icon.classList.add("fa-folder-open");
|
i.dom_element.nav_item_icon.classList.add("fa-folder-open");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (this.selected_entries.size > 1){
|
||||||
|
var name_fields = document.getElementsByClassName("nav-info-column-filename");
|
||||||
|
for (let name_field of name_fields) {
|
||||||
|
name_field.innerText = this.selected_entries.size.toString() + " selected"
|
||||||
|
name_field.title = name_field.innerText;
|
||||||
|
}
|
||||||
|
document.getElementById("nav-info-column-properties").innerHTML = "";
|
||||||
|
} else {
|
||||||
|
this.show_selected_properties();
|
||||||
|
}
|
||||||
this.last_selected_index = this.entries.indexOf(entry);
|
this.last_selected_index = this.entries.indexOf(entry);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -848,18 +857,46 @@ class NavWindow {
|
|||||||
"/usr/lib64",
|
"/usr/lib64",
|
||||||
"/usr/sbin",
|
"/usr/sbin",
|
||||||
];
|
];
|
||||||
if (dangerous_dirs.includes(this.selected_entry().path_str())) {
|
var dangerous_selected = [];
|
||||||
if (
|
for (let i of this.selected_entries) {
|
||||||
!window.confirm(
|
var path = i.path_str();
|
||||||
"Warning: editing `" +
|
if (dangerous_dirs.includes(path)) {
|
||||||
this.selected_entry().path_str() +
|
dangerous_selected.push(path);
|
||||||
"` can be dangerous. Are you sure?"
|
}
|
||||||
)
|
}
|
||||||
) {
|
if (dangerous_selected.length > 0) {
|
||||||
|
var last = dangerous_selected.pop();
|
||||||
|
var dangerous_selected_str = dangerous_selected.join(", ");
|
||||||
|
dangerous_selected_str += ", and " + last;
|
||||||
|
if (!window.confirm(
|
||||||
|
"Warning: editing " +
|
||||||
|
dangerous_selected_str +
|
||||||
|
" can be dangerous. Are you sure?"
|
||||||
|
)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else if (this.selected_entries.size > 1) {
|
||||||
|
if (!window.confirm(
|
||||||
|
"Warning: are you sure you want to edit permissions for " +
|
||||||
|
this.selected_entries.size +
|
||||||
|
" files?"
|
||||||
|
)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (this.selected_entries.size === 1) {
|
||||||
this.selected_entry().populate_edit_fields();
|
this.selected_entry().populate_edit_fields();
|
||||||
|
} else {
|
||||||
|
for (let field of ["owner", "group"]) {
|
||||||
|
document.getElementById("nav-edit-" + field).value = "";
|
||||||
|
}
|
||||||
|
var filename = document.getElementById("nav-edit-filename");
|
||||||
|
filename.value = "N/A";
|
||||||
|
filename.disabled = true;
|
||||||
|
for (let checkbox of document.getElementsByClassName("mode-checkbox")) {
|
||||||
|
checkbox.checked = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
this.update_permissions_preview();
|
this.update_permissions_preview();
|
||||||
document.getElementById("nav-edit-properties").style.display = "block";
|
document.getElementById("nav-edit-properties").style.display = "block";
|
||||||
document.getElementById("nav-show-properties").style.display = "none";
|
document.getElementById("nav-show-properties").style.display = "none";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user