mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2025-03-01 10:33:28 +00:00
priorities rework, webc update (#366)
* update * update * tabs test * update * test * ... * fix editor * update ui * fix visual glitch if help is off * fix fadecandy error and th [skip ci]
This commit is contained in:
121
assets/webconfig/js/settings.js
Normal file
121
assets/webconfig/js/settings.js
Normal file
@@ -0,0 +1,121 @@
|
||||
var storedAccess;
|
||||
var storedLang;
|
||||
var availLang = ['en','de'];
|
||||
var availAccess = ['default','advanced','expert'];
|
||||
//$.i18n.debug = true;
|
||||
|
||||
$(document).ready( function() {
|
||||
|
||||
//i18n
|
||||
function initTrans(lc){
|
||||
if (lc == 'auto')
|
||||
{
|
||||
$.i18n().load().done(
|
||||
function() {
|
||||
performTranslation();
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
$.i18n().locale = lc;
|
||||
$.i18n().load( "i18n", lc ).done(
|
||||
function() {
|
||||
performTranslation();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
if (storageComp())
|
||||
{
|
||||
storedLang = getStorage("langcode");
|
||||
if (storedLang == null)
|
||||
{
|
||||
setStorage("langcode", 'auto')
|
||||
storedLang = 'auto';
|
||||
initTrans(storedLang);
|
||||
}
|
||||
else
|
||||
{
|
||||
initTrans(storedLang);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
showInfoDialog('warning', "Can't store settings", "Your browser doesn't support localStorage. You can't save a specific language setting (fallback to 'auto detection') and access level (fallback to 'default'). Some wizards may be hidden. You could still use the webinterface without further issues");
|
||||
initTrans('auto');
|
||||
storedLang = 'auto';
|
||||
storedAccess = "default";
|
||||
$('#btn_setlang').toggle();
|
||||
$('#btn_setaccess').toggle();
|
||||
}
|
||||
|
||||
$('#btn_setlang').off().on('click',function() {
|
||||
var newLang;
|
||||
showInfoDialog('select', $.i18n('InfoDialog_lang_title'), $.i18n('InfoDialog_lang_text'));
|
||||
|
||||
for (var lcx = 0; lcx<availLang.length; lcx++)
|
||||
{
|
||||
$('#id_select').append(createSelOpt(availLang[lcx], $.i18n('general_speech_'+availLang[lcx])))
|
||||
}
|
||||
|
||||
if (storedLang != "auto")
|
||||
$('#id_select').val(storedLang);
|
||||
|
||||
$('#id_select').off().on('change',function() {
|
||||
newLang = $('#id_select').val();
|
||||
if (newLang == storedLang)
|
||||
$('#id_btn_saveset').attr('disabled', true);
|
||||
else
|
||||
$('#id_btn_saveset').attr('disabled', false);
|
||||
});
|
||||
|
||||
$('#id_btn_saveset').off().on('click',function() {
|
||||
setStorage("langcode", newLang);
|
||||
reload();
|
||||
});
|
||||
|
||||
$('#id_select').trigger('change');
|
||||
});
|
||||
|
||||
//access
|
||||
if (storageComp())
|
||||
{
|
||||
storedAccess = getStorage("accesslevel");
|
||||
if (storedAccess == null)
|
||||
{
|
||||
setStorage("accesslevel", "default");
|
||||
storedAccess = "default";
|
||||
}
|
||||
}
|
||||
|
||||
$('#btn_setaccess').off().on('click',function() {
|
||||
var newAccess;
|
||||
showInfoDialog('select', $.i18n('InfoDialog_access_title'), $.i18n('InfoDialog_access_text'));
|
||||
|
||||
for (var lcx = 0; lcx<availAccess.length; lcx++)
|
||||
{
|
||||
$('#id_select').append(createSelOpt(availAccess[lcx], $.i18n('general_access_'+availAccess[lcx])));
|
||||
}
|
||||
|
||||
$('#id_select').val(storedAccess);
|
||||
|
||||
$('#id_select').off().on('change',function() {
|
||||
newAccess = $('#id_select').val();
|
||||
if (newAccess == storedAccess)
|
||||
$('#id_btn_saveset').attr('disabled', true);
|
||||
else
|
||||
$('#id_btn_saveset').attr('disabled', false);
|
||||
});
|
||||
|
||||
$('#id_btn_saveset').off().on('click',function() {
|
||||
setStorage("accesslevel", newAccess);
|
||||
reload();
|
||||
});
|
||||
|
||||
$('#id_select').trigger('change');
|
||||
});
|
||||
|
||||
//hide menu elements
|
||||
if (storedAccess != 'expert')
|
||||
$('#load_webconfig').toggle(false);
|
||||
});
|
Reference in New Issue
Block a user