Global write permission | lock button

+ lock icon added: click -> toggle global write permission
This commit is contained in:
Daniel
2025-04-27 09:36:03 +02:00
parent bd9efaa3de
commit a9ca113f2c
8 changed files with 119 additions and 76 deletions

View File

@ -239,31 +239,31 @@ function updateStatus(component) {
status_info.innerHTML = component.formatted;
}
status_icon.classList.remove('status-icon-disabled');
status_icon.classList.remove('status-icon-idle');
status_icon.classList.remove('status-icon-warn');
status_icon.classList.remove('status-icon-busy');
status_icon.classList.remove('status-icon-error');
status_icon.classList.remove('icon-status-disabled');
status_icon.classList.remove('icon-status-idle');
status_icon.classList.remove('icon-status-warn');
status_icon.classList.remove('icon-status-busy');
status_icon.classList.remove('icon-status-error');
row.classList.remove('row-disabled');
right.classList.remove = 'col-right-disabled';
switch (statusCode) {
case 0:
status_icon.classList.add('status-icon-disabled');
status_icon.classList.add('icon-status-disabled');
row.classList.add('row-disabled');
right.classList.add = 'col-right-disabled';
break;
case 1:
status_icon.classList.add('status-icon-idle');
status_icon.classList.add('icon-status-idle');
break;
case 2:
status_icon.classList.add('status-icon-warn');
status_icon.classList.add('icon-status-warn');
break;
case 3:
status_icon.classList.add('status-icon-busy');
status_icon.classList.add('icon-status-busy');
break;
case 4:
status_icon.classList.add('status-icon-error');
status_icon.classList.add('icon-status-error');
break;
}
@ -399,7 +399,7 @@ function successHandler(s, message) {
isl = appendToGridElement(2, message.title, 'parameters', createContent(message));
adjustGrid();
if (nColumns == 1 || nColumns == 2 || nColumns == 3) {
document.getElementById('close-cross').innerHTML = '<img class = "icon-close" src="res/icon_close.png">';
document.getElementsByClassName('icon-close-container')[0].innerHTML = '<img class = "icon-main icon-close" src="res/icon_close.png">';
}
}
nextInitCommand();

View File

@ -82,7 +82,7 @@ function createRowForParameters(component) {
break;
case 'pushbutton':
input_element = createPushbutton(component);
input_element.classList.add('input-element-button');
input_element.classList.add('input-element-button', 'input-element-button-hidden');
break;
case 'input':
input_element = createInput(component);
@ -104,7 +104,7 @@ function createRowForParameters(component) {
function createIconEdit () {
let icon_edit = document.createElement('img');
icon_edit.setAttribute('src', 'res/icon_edit.png');
icon_edit.classList.add('modules-icon', 'edit-icon');
icon_edit.classList.add('icon-modules', 'icon-edit', 'icon-edit-hidden');
icon_edit.onclick = function () {
let is_hidden = input_element.classList.contains('input-element-hidden');
@ -156,14 +156,14 @@ function createLeftColumnForModules(component) {
let icon_status = document.createElement('img');
icon_status.setAttribute('src', 'res/icon_status.png');
icon_status.setAttribute('name', component.title + ':status');
icon_status.classList.add('modules-icon', 'status-icon');
icon_status.classList.add('icon-modules', 'icon-status');
return icon_status;
}
function createInfoIcon(component) {
let icon_info = document.createElement('img');
icon_info.setAttribute('src', 'res/icon_info.png');
icon_info.classList.add('modules-icon', 'icon-info');
icon_info.classList.add('icon-modules', 'icon-info');
if (isTouchDevice) {
icon_info.onclick = function (event) {
event.stopPropagation()
@ -206,7 +206,7 @@ function createRightColumnForModules(component) {
function createIconEdit () {
let icon_edit = document.createElement('img');
icon_edit.setAttribute('src', 'res/icon_edit.png');
icon_edit.classList.add('modules-icon', 'edit-icon');
icon_edit.classList.add('icon-modules', 'icon-edit', 'icon-edit-hidden');
icon_edit.onclick = function (event) {
event.stopPropagation()

View File

@ -148,32 +148,36 @@ window.onload = function() {
// rows 'n'
adjustGrid();
let crossElement = document.getElementById("close-cross");
/* ----------------------------------------------------------------------------------------------------- */
/* MIAN ICONS */
let icon_close_container = document.getElementsByClassName("icon-close-container")[0];
let icon_log_container = document.getElementsByClassName("icon-log-container")[0];
let icon_lock_container = document.getElementsByClassName("icon-lock-container")[0];
if (window.hideRightPart){
document.body.removeChild(crossElement);
document.body.removeChild(icon_close_container);
} else {
crossElement.onclick = function(){
icon_close_container.onclick = function(){
if (showParams) {
showParams = false;
document.getElementById('close-cross').innerHTML = '<img class = "icon-close" src="res/icon_sinus.png">';
icon_close_container.innerHTML = '<img class = "icon-main icon-close" src="res/icon_sinus.png">';
} else {
if (window.wideGraphs) {
window.wideGraphs = false;
document.getElementById('close-cross').innerHTML = '<img class = "icon-close" src="res/icon_sinus.png">';
document.getElementsByClassName('log-icon-container')[0].classList.remove("log-icon-container-hidden");
icon_close_container.innerHTML = '<img class = "icon-main icon-close" src="res/icon_sinus.png">';
icon_log_container.classList.remove("icon-main-container-hidden");
} else {
window.wideGraphs = true;
document.getElementById('close-cross').innerHTML = '<img class = "icon-close" src="res/icon_modules.png">';
document.getElementsByClassName('log-icon-container')[0].classList.add("log-icon-container-hidden");
icon_close_container.innerHTML = '<img class = "icon-main icon-close" src="res/icon_modules.png">';
icon_log_container.classList.add("icon-main-container-hidden");
}
}
adjustGrid();
}
}
let logIcon = document.getElementsByClassName("log-icon-container")[0];
logIcon.onclick = function(){
icon_log_container.onclick = function(){
if (showConsole) {
showConsole = false;
} else {
@ -182,6 +186,30 @@ window.onload = function() {
adjustGrid();
}
icon_lock_container.onclick = function(){
let array_icon_edit = document.getElementsByClassName('icon-edit');
let array_button = document.getElementsByClassName('input-element-button');
if (writePermission == false) {
writePermission = true;
icon_lock_container.innerHTML = '<img class = "icon-main icon-lock" src="res/icon_lock_open.png">';
for(i = 0; i < array_icon_edit.length; i++) {
array_icon_edit[i].classList.remove('icon-edit-hidden');
}
for(i = 0; i < array_button.length; i++) {
array_button[i].classList.remove('input-element-button-hidden');
}
} else {
writePermission = false;
icon_lock_container.innerHTML = '<img class = "icon-main icon-lock" src="res/icon_lock_closed.png">';
for(i = 0; i < array_icon_edit.length; i++) {
array_icon_edit[i].classList.add('icon-edit-hidden');
}
for(i = 0; i < array_button.length; i++) {
array_button[i].classList.add('input-element-button-hidden');
}
}
}
var homeButton = document.getElementById("home-icon");
homeButton.onclick = function () {