MCPcopy Create free account
hub / github.com/dedsec1121fk/DedSec / draw_settings_grid_menu

Function draw_settings_grid_menu

Scripts/Settings.py:7787–7924  ·  view source on GitHub ↗
(stdscr, options)

Source from the content-addressed store, hash-verified

7785 var profiles = Array.from(document.querySelectorAll('#userProfilesList option')).map(function(node){ return node.value; }).filter(Boolean);
7786 var currentName = document.getElementById('displayNameInput').value.trim();
7787 if (currentName && profiles.indexOf(currentName) === -1) profiles.push(currentName);
7788 var payload = {
7789 display_name: currentName,
7790 wallpaper: document.getElementById('wallpaperInput').value.trim(),
7791 terminal_theme: document.getElementById('terminalThemeSelect').value,
7792 terminal_zoom: state.terminalZoom,
7793 sidebar_hidden: state.sidebarHidden,
7794 user_profiles: profiles,
7795 login_enabled: document.getElementById('loginEnabledChk').checked,
7796 login_password: document.getElementById('loginPasswordSetting').value,
7797 totp_enabled: document.getElementById('totpEnabledChk').checked,
7798 security_questions: [
7799 { question: document.getElementById('securityQuestion1Setting').value, answer: document.getElementById('securityAnswer1Setting').value },
7800 { question: document.getElementById('securityQuestion2Setting').value, answer: document.getElementById('securityAnswer2Setting').value },
7801 { question: document.getElementById('securityQuestion3Setting').value, answer: document.getElementById('securityAnswer3Setting').value }
7802 ]
7803 };
7804 var fileInput = document.getElementById('wallpaperUpload');
7805 if (fileInput.files && fileInput.files[0]) {
7806 payload.wallpaper_upload = await readFileAsDataUrl(fileInput.files[0]);
7807 payload.wallpaper_filename = fileInput.files[0].name;
7808 }
7809 var data = await apiPost('/api/config', payload);
7810 state.config = data.config;
7811 if (state.info) state.info.display_name = data.config.display_name;
7812 applyWallpaper(state.config);
7813 applyTranslations();
7814 renderSystem();
7815 showToast(t('Settings saved'));
7816 } catch (err) { handleError(err); }
7817 }
7818
7819 function readFileAsDataUrl(file) {
7820 return new Promise(function(resolve, reject) {
7821 var reader = new FileReader();
7822 reader.onload = function(){ resolve(reader.result); };
7823 reader.onerror = reject;
7824 reader.readAsDataURL(file);
7825 });
7826 }
7827
7828 function handleError(error) {
7829 console.error(error);
7830 showToast(error.message || String(error), true);
7831 hideLoading();
7832 }
7833
7834 function closeWebFaceView() {
7835 window.setTimeout(function(){
7836 try { window.open('', '_self'); } catch (err) {}
7837 try { window.close(); } catch (err) {}
7838 window.location.replace('about:blank');
7839 }, 220);
7840 }
7841
7842 async function exitDedsecOs() {
7843 var question = currentLang() === 'el'
7844 ? 'Να κλείσει το DedSec OS, να τερματιστεί πρώτα το Termux API και μετά το ίδιο το Termux;'

Callers 1

run_settings_grid_menuFunction · 0.70

Calls 3

safe_curses_addstrFunction · 0.70
_Function · 0.70
clearMethod · 0.45

Tested by

no test coverage detected