mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-31 01:35:36 +02:00
Merge branch 'ent-10340-gotty-quickshell-no-funciona' into 'develop'
Fix gotty host missing on ws.php See merge request artica/pandorafms!5812
This commit is contained in:
commit
37d0cff221
@ -80,6 +80,30 @@ $t->data[1][] = html_print_label_input_block(
|
|||||||
);
|
);
|
||||||
|
|
||||||
html_print_input_hidden('update_config', 1);
|
html_print_input_hidden('update_config', 1);
|
||||||
|
|
||||||
|
// Test.
|
||||||
|
$row = [];
|
||||||
|
$test_start = '<span id="test-gotty-spinner" class="invisible"> '.html_print_image('images/spinner.gif', true).'</span>';
|
||||||
|
$test_start .= ' <span id="test-gotty-message" class="invisible"></span>';
|
||||||
|
$row['gotty_test'] = html_print_label_input_block(
|
||||||
|
__('Test'),
|
||||||
|
html_print_button(
|
||||||
|
__('Start'),
|
||||||
|
'test-gotty',
|
||||||
|
false,
|
||||||
|
'handleTest()',
|
||||||
|
[
|
||||||
|
'icon' => 'cog',
|
||||||
|
'mode' => 'secondary mini',
|
||||||
|
'style' => 'width: 115px;',
|
||||||
|
],
|
||||||
|
true
|
||||||
|
).$test_start,
|
||||||
|
['div_class' => 'inline_flex row']
|
||||||
|
);
|
||||||
|
|
||||||
|
$t->data['gotty_test'] = $row;
|
||||||
|
|
||||||
html_print_table($t);
|
html_print_table($t);
|
||||||
|
|
||||||
echo '</fieldset>';
|
echo '</fieldset>';
|
||||||
@ -99,3 +123,73 @@ html_print_action_buttons(
|
|||||||
);
|
);
|
||||||
|
|
||||||
echo '</form>';
|
echo '</form>';
|
||||||
|
|
||||||
|
echo '<script>';
|
||||||
|
echo 'var server_addr = "'.$_SERVER['SERVER_ADDR'].'";';
|
||||||
|
$handle_test_js = "var handleTest = function (event) {
|
||||||
|
|
||||||
|
var ws_proxy_url = $('input#text-ws_proxy_url').val();
|
||||||
|
var ws_port = $('input#text-ws_port').val();
|
||||||
|
var httpsEnabled = window.location.protocol == 'https' ? true : false;
|
||||||
|
if (ws_proxy_url == '') {
|
||||||
|
ws_url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + ':' + ws_port;
|
||||||
|
} else {
|
||||||
|
ws_url = ws_proxy_url;
|
||||||
|
}
|
||||||
|
|
||||||
|
var showLoadingImage = function () {
|
||||||
|
$('#button-test-gotty').children('div').attr('class', 'subIcon cog rotation secondary mini');
|
||||||
|
}
|
||||||
|
|
||||||
|
var showSuccessImage = function () {
|
||||||
|
$('#button-test-gotty').children('div').attr('class', 'subIcon tick secondary mini');
|
||||||
|
}
|
||||||
|
|
||||||
|
var showFailureImage = function () {
|
||||||
|
$('#button-test-gotty').children('div').attr('class', 'subIcon fail secondary mini');
|
||||||
|
}
|
||||||
|
|
||||||
|
var hideMessage = function () {
|
||||||
|
$('span#test-gotty-message').hide();
|
||||||
|
}
|
||||||
|
var showMessage = function () {
|
||||||
|
$('span#test-gotty-message').show();
|
||||||
|
}
|
||||||
|
var changeTestMessage = function (message) {
|
||||||
|
$('span#test-gotty-message').text(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
var errorMessage = '".__('WebService engine has not been started, please check documentation.')."';
|
||||||
|
|
||||||
|
|
||||||
|
hideMessage();
|
||||||
|
showLoadingImage();
|
||||||
|
|
||||||
|
var ws = new WebSocket(ws_url);
|
||||||
|
// Catch errors.
|
||||||
|
|
||||||
|
ws.onerror = () => {
|
||||||
|
showFailureImage();
|
||||||
|
changeTestMessage(errorMessage);
|
||||||
|
showMessage();
|
||||||
|
ws.close();
|
||||||
|
};
|
||||||
|
|
||||||
|
ws.onopen = () => {
|
||||||
|
showSuccessImage();
|
||||||
|
hideMessage();
|
||||||
|
ws.close();
|
||||||
|
};
|
||||||
|
|
||||||
|
ws.onclose = (event) => {
|
||||||
|
changeTestMessage(errorMessage);
|
||||||
|
hideLoadingImage();
|
||||||
|
showMessage();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$('#button-test-ehorus').click(handleTest);";
|
||||||
|
|
||||||
|
echo $handle_test_js;
|
||||||
|
echo '</script>';
|
||||||
|
@ -301,7 +301,7 @@ class WSManager extends WebSocketServer
|
|||||||
\db_pandora_audit(
|
\db_pandora_audit(
|
||||||
AUDIT_LOG_WEB_SOCKETS,
|
AUDIT_LOG_WEB_SOCKETS,
|
||||||
'WebSocket connection started',
|
'WebSocket connection started',
|
||||||
$user->account->idUser
|
'N/A'
|
||||||
);
|
);
|
||||||
$this->stderr('ONLINE '.$user->address.'('.$user->account->idUser.')');
|
$this->stderr('ONLINE '.$user->address.'('.$user->account->idUser.')');
|
||||||
|
|
||||||
@ -424,7 +424,7 @@ class WSManager extends WebSocketServer
|
|||||||
\db_pandora_audit(
|
\db_pandora_audit(
|
||||||
AUDIT_LOG_WEB_SOCKETS,
|
AUDIT_LOG_WEB_SOCKETS,
|
||||||
'WebSocket connection finished',
|
'WebSocket connection finished',
|
||||||
$user->account->idUser
|
'N/A'
|
||||||
);
|
);
|
||||||
|
|
||||||
$this->stderr('OFFLINE '.$user->address.'('.$user->account->idUser.')');
|
$this->stderr('OFFLINE '.$user->address.'('.$user->account->idUser.')');
|
||||||
|
@ -472,7 +472,7 @@ abstract class WebSocketServer
|
|||||||
} else if ($numBytes == 0) {
|
} else if ($numBytes == 0) {
|
||||||
$this->disconnect($socket);
|
$this->disconnect($socket);
|
||||||
$this->stderr(
|
$this->stderr(
|
||||||
'Client disconnected. TCP connection lost: '.$socket
|
'Client disconnected. TCP connection lost'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$user = $this->getUserBySocket($socket);
|
$user = $this->getUserBySocket($socket);
|
||||||
@ -521,7 +521,7 @@ abstract class WebSocketServer
|
|||||||
} else if ($numBytes == 0) {
|
} else if ($numBytes == 0) {
|
||||||
$this->disconnect($socket);
|
$this->disconnect($socket);
|
||||||
$this->stderr(
|
$this->stderr(
|
||||||
'Client disconnected. TCP connection lost: '.$socket
|
'Client disconnected. TCP connection lost.'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
$user = $this->getUserBySocket($socket);
|
$user = $this->getUserBySocket($socket);
|
||||||
@ -581,6 +581,7 @@ abstract class WebSocketServer
|
|||||||
$sockErrNo=null
|
$sockErrNo=null
|
||||||
) {
|
) {
|
||||||
$user = $this->getUserBySocket($socket);
|
$user = $this->getUserBySocket($socket);
|
||||||
|
|
||||||
if ($user !== null) {
|
if ($user !== null) {
|
||||||
if (array_key_exists($user->id, $this->users)) {
|
if (array_key_exists($user->id, $this->users)) {
|
||||||
unset($this->users[$user->id]);
|
unset($this->users[$user->id]);
|
||||||
|
@ -10616,6 +10616,11 @@ button div.cog {
|
|||||||
contain;
|
contain;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button div.tick {
|
||||||
|
mask: url(../../images/input_tick.png) no-repeat center / contain;
|
||||||
|
-webkit-mask: url(../../images/input_tick.png) no-repeat center / contain;
|
||||||
|
}
|
||||||
|
|
||||||
button div.info {
|
button div.info {
|
||||||
mask: url(../../images/info@svg.svg) no-repeat center / contain;
|
mask: url(../../images/info@svg.svg) no-repeat center / contain;
|
||||||
-webkit-mask: url(../../images/info@svg.svg) no-repeat center / contain;
|
-webkit-mask: url(../../images/info@svg.svg) no-repeat center / contain;
|
||||||
|
@ -116,7 +116,7 @@ if (substr($os, 0, 3) !== 'win') {
|
|||||||
|
|
||||||
// Common.
|
// Common.
|
||||||
$base_cmd = 'nohup "'.$config['gotty'].'" '.$gotty_creds;
|
$base_cmd = 'nohup "'.$config['gotty'].'" '.$gotty_creds;
|
||||||
$base_cmd .= ' --permit-arguments -a 127.0.0.1 -w ';
|
$base_cmd .= ' --permit-arguments -a '.$config['gotty_host'].' -w ';
|
||||||
|
|
||||||
// Launch gotty - SSH.
|
// Launch gotty - SSH.
|
||||||
$cmd = $base_cmd.' --port '.$config['gotty_ssh_port'];
|
$cmd = $base_cmd.' --port '.$config['gotty_ssh_port'];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user