mirror of
https://github.com/itsdave-de/dockercompose-guacamole-for-msp-remoteadmin.git
synced 2025-05-06 20:15:12 +02:00
61 lines
1.9 KiB
Bash
Executable File
61 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
if [ -f /home/guacamole/tomcat/webapps/guacamole/templates.js ]; then
|
|
cat <<'EOF' >> /home/guacamole/tomcat/webapps/guacamole/templates.js
|
|
$(window).on('load', function() {
|
|
function getHashParam(param) {
|
|
var hash = window.location.hash.substr(1);
|
|
var hashParams = new URLSearchParams(hash.split('?')[1]);
|
|
return hashParams.get(param);
|
|
}
|
|
|
|
setTimeout(function() {
|
|
var quickconnectValue = getHashParam('quickconnect');
|
|
if (quickconnectValue) {
|
|
// Extração dos componentes da URI sem decodificação completa
|
|
var baseUri = quickconnectValue.split('?')[0];
|
|
var queryParams = quickconnectValue.split('?')[1];
|
|
|
|
// Manuseio manual dos parâmetros devido a caracteres especiais
|
|
var params = queryParams.split('&');
|
|
var newParams = [];
|
|
var password = '';
|
|
|
|
for (var i = 0; i < params.length; i++) {
|
|
var param = params[i];
|
|
var [key, value] = param.split('=');
|
|
|
|
if (key === 'password') {
|
|
password = param.substring(param.indexOf('=') + 1);
|
|
// Trata o restante da string como parte do password
|
|
for (var j = i + 1; j < params.length; j++) {
|
|
password += '&' + params[j];
|
|
}
|
|
break; // exit loop after password is captured
|
|
} else {
|
|
newParams.push(param);
|
|
}
|
|
}
|
|
|
|
// Codificar novamente apenas o campo password
|
|
if (password) {
|
|
var encodedPassword = encodeURIComponent(password);
|
|
newParams.push(`password=${encodedPassword}`);
|
|
}
|
|
|
|
// Construir a nova URI com o password codificado
|
|
var formattedValue = `${baseUri}?${newParams.join('&')}`;
|
|
|
|
// Preencher o campo do formulário e disparar eventos
|
|
var $field = $('.quickconnect-field');
|
|
$field.val(formattedValue);
|
|
$field.trigger('input');
|
|
$field.trigger('change');
|
|
$('.quickconnect-button').click();
|
|
}
|
|
}, 500);
|
|
});
|
|
EOF
|
|
fi
|
|
|