summaryrefslogtreecommitdiffstats
path: root/src/etc/inc/auth.inc
diff options
context:
space:
mode:
Diffstat (limited to 'src/etc/inc/auth.inc')
-rw-r--r--src/etc/inc/auth.inc60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/etc/inc/auth.inc b/src/etc/inc/auth.inc
index bb42ca2..942a34d 100644
--- a/src/etc/inc/auth.inc
+++ b/src/etc/inc/auth.inc
@@ -1513,6 +1513,66 @@ function is_account_disabled($username) {
return false;
}
+function get_user_settings($username) {
+ global $config;
+ $settings = array();
+ $settings['widgets'] = $config['widgets'];
+ $settings['webgui']['dashboardcolumns'] = $config['system']['webgui']['dashboardcolumns'];
+ $settings['webgui']['webguihostnamemenu'] = $config['system']['webgui']['webguihostnamemenu'];
+ $settings['webgui']['webguicss'] = $config['system']['webgui']['webguicss'];
+ $settings['webgui']['dashboardavailablewidgetspanel'] = isset($config['system']['webgui']['dashboardavailablewidgetspanel']);
+ $settings['webgui']['webguifixedmenu'] = isset($config['system']['webgui']['webguifixedmenu']);
+ $settings['webgui']['webguileftcolumnhyper'] = isset($config['system']['webgui']['webguileftcolumnhyper']);
+ $settings['webgui']['systemlogsfilterpanel'] = isset($config['system']['webgui']['systemlogsfilterpanel']);
+ $settings['webgui']['systemlogsmanagelogpanel'] = isset($config['system']['webgui']['systemlogsmanagelogpanel']);
+ $settings['webgui']['statusmonitoringsettingspanel'] = isset($config['system']['webgui']['statusmonitoringsettingspanel']);
+ $settings['webgui']['pagenamefirst'] = isset($config['system']['webgui']['pagenamefirst']);
+ $user = getUserEntry($username);
+ if (isset($user['customsettings'])) {
+ $settings['customsettings'] = true;
+ if (isset($user['widgets'])) {
+ // This includes the 'sequence', and any widgetname-config per-widget settings.
+ $settings['widgets'] = $user['widgets'];
+ }
+ if (isset($user['dashboardcolumns'])) {
+ $settings['webgui']['dashboardcolumns'] = $user['dashboardcolumns'];
+ }
+ if (isset($user['webguicss'])) {
+ $settings['webgui']['webguicss'] = $user['webguicss'];
+ }
+ if (isset($user['webguihostnamemenu'])) {
+ $settings['webgui']['webguihostnamemenu'] = $user['webguihostnamemenu'];
+ }
+ $settings['webgui']['dashboardavailablewidgetspanel'] = isset($user['dashboardavailablewidgetspanel']);
+ $settings['webgui']['webguifixedmenu'] = isset($user['webguifixedmenu']);
+ $settings['webgui']['webguileftcolumnhyper'] = isset($user['webguileftcolumnhyper']);
+ $settings['webgui']['systemlogsfilterpanel'] = isset($user['systemlogsfilterpanel']);
+ $settings['webgui']['systemlogsmanagelogpanel'] = isset($user['systemlogsmanagelogpanel']);
+ $settings['webgui']['statusmonitoringsettingspanel'] = isset($user['statusmonitoringsettingspanel']);
+ $settings['webgui']['pagenamefirst'] = isset($user['pagenamefirst']);
+ } else {
+ $settings['customsettings'] = false;
+ }
+
+ if ($settings['webgui']['dashboardcolumns'] < 1) {
+ $settings['webgui']['dashboardcolumns'] = 2;
+ }
+
+ return $settings;
+}
+
+function save_widget_settings($username, $settings) {
+ global $config, $userindex;
+ $user = getUserEntry($username);
+ if (isset($user['customsettings'])) {
+ $config['system']['user'][$userindex[$username]]['widgets'] = $settings;
+ write_config(sprintf(gettext("Widget configuration has been changed for user %s."), $username));
+ } else {
+ $config['widgets'] = $settings;
+ write_config(gettext("Widget configuration has been changed."));
+ }
+}
+
function auth_get_authserver($name) {
global $config;
OpenPOWER on IntegriCloud