From 8edc5d1205541c92688e3d2a03da0b1bd9a61613 Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Thu, 12 Sep 2024 09:41:01 -0600 Subject: [PATCH] User edit add a Settings button --- core/user_settings/app_languages.php | 55 ++++++++++++++++++++++++++++ core/user_settings/user_settings.php | 47 +++++++++++++++++++----- core/users/app_languages.php | 55 ---------------------------- core/users/user_edit.php | 13 +++---- 4 files changed, 98 insertions(+), 72 deletions(-) diff --git a/core/user_settings/app_languages.php b/core/user_settings/app_languages.php index e9f5cab8b0..655ce3fcbe 100644 --- a/core/user_settings/app_languages.php +++ b/core/user_settings/app_languages.php @@ -1,5 +1,60 @@ get(); + +//action add or update + if (!empty($_REQUEST["id"]) && is_uuid($_REQUEST["id"])) { + $action = "update"; + $user_uuid = $_REQUEST["id"]; + $id = $_REQUEST["id"]; + } + else { + $action = "add"; + } + //get the http post data if (!empty($_POST['action'])) { $action = $_POST['action'] ?? ''; @@ -146,8 +160,8 @@ $sql .= "from v_user_settings "; $sql .= "where user_uuid = :user_uuid "; $sql .= "and not ( "; - $sql .= "(user_setting_category = 'domain' and user_setting_subcategory = 'language') "; - $sql .= "or (user_setting_category = 'domain' and user_setting_subcategory = 'time_zone') "; + $sql .= " (user_setting_category = 'domain' and user_setting_subcategory = 'language') "; + $sql .= " or (user_setting_category = 'domain' and user_setting_subcategory = 'time_zone') "; $sql .= ") "; if (!empty($order_by)) { $sql .= "order by user_setting_category, user_setting_subcategory, user_setting_order asc "; @@ -164,10 +178,17 @@ $object = new token; $token = $object->create('/core/user_settings/user_settings.php'); +//include the header + $document['title'] = $text['title-user_settings']; + require_once "resources/header.php"; + //show the content echo "
\n"; - echo "
".$text['header-user_settings']."
\n"; + echo "
".$text['title-user_settings']."
\n"; echo "
\n"; + if (permission_exists('user_add') || permission_exists('user_edit')) { + echo button::create(['type'=>'button','label'=>$text['button-back'],'icon'=>$_SESSION['theme']['button_icon_back'],'id'=>'btn_back','link'=>'/core/users/user_edit.php?id='.$user_uuid]); + } echo button::create(['type'=>'button','id'=>'action_bar_sub_button_back','label'=>$text['button-back'],'icon'=>$button_icon_back,'style'=>'margin-right: 15px; display: none;','link'=>'users.php']); if (permission_exists('user_setting_add')) { echo button::create(['type'=>'button','label'=>$text['button-add'],'icon'=>$button_icon_add,'id'=>'btn_add','link'=>PROJECT_PATH.'/core/user_settings/user_setting_edit.php?user_uuid='.urlencode($_GET['id'])]); @@ -189,15 +210,14 @@ echo modal::create(['id'=>'modal-delete','type'=>'delete','actions'=>button::create(['type'=>'button','label'=>$text['button-continue'],'icon'=>'check','id'=>'btn_delete','style'=>'float: right; margin-left: 15px;','collapse'=>'never','onclick'=>"modal_close(); list_action_set('delete'); list_form_submit('form_list');"])]); } - echo $text['header_description-user_settings']."\n"; + echo $text['title_description-user_settings']."\n"; echo "

\n"; echo "
\n"; echo "\n"; echo "\n"; - echo "
\n"; - echo "\n"; + if (!empty($user_settings)) { $previous_user_setting_category = ''; $x = 0; @@ -217,13 +237,16 @@ } if ($previous_user_setting_category != $row['user_setting_category']) { - if ($previous_user_setting_category != '') { - echo "
\n"; - echo "
\n"; + if (!empty($previous_user_setting_category)) { + echo "\n"; + echo "
\n"; + echo "
\n"; } + echo "
\n"; echo "".escape($label_user_setting_category)."
\n"; + echo "
\n"; echo "\n"; echo "\n"; if (permission_exists('user_setting_add') || permission_exists('user_setting_edit') || permission_exists('user_setting_delete')) { @@ -376,7 +399,10 @@ echo "
\n"; echo "
\n"; + echo "
\n"; echo "
\n"; + + echo "
".$paging_controls."
\n"; echo "\n"; echo "\n"; @@ -398,4 +424,7 @@ echo "\n"; +//include the footer + require_once "resources/footer.php"; + ?> diff --git a/core/users/app_languages.php b/core/users/app_languages.php index 38bf9a6a00..ca0ff692f9 100644 --- a/core/users/app_languages.php +++ b/core/users/app_languages.php @@ -2246,61 +2246,6 @@ $text['header-user_import']['zh-cn'] = "用户导入"; $text['header-user_import']['ja-jp'] = "ユーザーのインポート"; $text['header-user_import']['ko-kr'] = "사용자 가져오기"; -$text['header-user_settings']['en-us'] = "User Settings"; -$text['header-user_settings']['en-gb'] = "User Settings"; -$text['header-user_settings']['ar-eg'] = "إعدادات المستخدم"; -$text['header-user_settings']['de-at'] = "Benutzereinstellungen"; -$text['header-user_settings']['de-ch'] = "Benutzereinstellungen"; -$text['header-user_settings']['de-de'] = "Benutzereinstellungen"; -$text['header-user_settings']['el-gr'] = "Ρυθμίσεις χρήστη"; -$text['header-user_settings']['el-gr'] = "Ρυθμίσεις χρήστη"; -$text['header-user_settings']['es-cl'] = "Ajustes de usuario"; -$text['header-user_settings']['es-mx'] = "Ajustes de usuario"; -$text['header-user_settings']['fr-ca'] = "Paramètres Utilisateur"; -$text['header-user_settings']['fr-fr'] = "Paramètres Utilisateur"; -$text['header-user_settings']['he-il'] = "הגדרות משתמש"; -$text['header-user_settings']['it-it'] = "Impostazioni utente"; -$text['header-user_settings']['ka-ge'] = "მომხმარებლის პარამეტრები"; -$text['header-user_settings']['nl-nl'] = "Gebruikersinstellingen"; -$text['header-user_settings']['pl-pl'] = "Ustawienia Użytkownika"; -$text['header-user_settings']['pt-br'] = "Configurações do Usuário"; -$text['header-user_settings']['pt-pt'] = "Configurações do Usuário"; -$text['header-user_settings']['ro-ro'] = "Setarile utilizatorului"; -$text['header-user_settings']['ru-ru'] = "Пользовательские настройки"; -$text['header-user_settings']['sv-se'] = "Användarinställningar"; -$text['header-user_settings']['uk-ua'] = "Налаштування користувача"; -$text['header-user_settings']['tr-tr'] = "Kullanıcı ayarları"; -$text['header-user_settings']['zh-cn'] = "用户设置"; -$text['header-user_settings']['ja-jp'] = "ユーザー設定"; -$text['header-user_settings']['ko-kr'] = "사용자 설정"; - -$text['header_description-user_settings']['en-us'] = "Settings for this user that should override those defined in Domain or Default Settings."; -$text['header_description-user_settings']['en-gb'] = "Settings for this user that should override those defined in Domain or Default Settings."; -$text['header_description-user_settings']['ar-eg'] = "يجب أن تتجاوز الإعدادات الخاصة بهذا المستخدم الإعدادات المحددة في النطاق أو الإعدادات الافتراضية."; -$text['header_description-user_settings']['de-at'] = "Einstellungen für diesen Benutzer, die die in den Domänen- oder Standardeinstellungen definierten überschreiben sollen."; -$text['header_description-user_settings']['de-ch'] = "Einstellungen für diesen Benutzer, die die in den Domänen- oder Standardeinstellungen definierten überschreiben sollen."; -$text['header_description-user_settings']['de-de'] = "Einstellungen für diesen Benutzer, die die in den Domänen- oder Standardeinstellungen definierten überschreiben sollen."; -$text['header_description-user_settings']['el-gr'] = "Ρυθμίσεις για αυτόν τον χρήστη που θα πρέπει να αντικαθιστούν αυτές που ορίζονται στις Ρυθμίσεις Τομέα ή Προεπιλεγμένες Ρυθμίσεις."; -$text['header_description-user_settings']['es-cl'] = "Configuración para este usuario que debe anular las definidas en Dominio o Configuración predeterminada."; -$text['header_description-user_settings']['es-mx'] = "Configuración para este usuario que debe anular las definidas en Dominio o Configuración predeterminada."; -$text['header_description-user_settings']['fr-ca'] = "Paramètres pour cet utilisateur qui doivent remplacer ceux définis dans le domaine ou les paramètres par défaut."; -$text['header_description-user_settings']['fr-fr'] = "Paramètres pour cet utilisateur qui doivent remplacer ceux définis dans le domaine ou les paramètres par défaut."; -$text['header_description-user_settings']['he-il'] = "הגדרות עבור משתמש זה שצריכות לעקוף את אלו שהוגדרו בהגדרות דומיין או ברירת מחדל."; -$text['header_description-user_settings']['it-it'] = "Impostazioni per questo utente che devono sovrascrivere quelle definite in Dominio o Impostazioni predefinite."; -$text['header_description-user_settings']['ka-ge'] = "ამ მომხმარებლის პარამეტრები, რომლებიც დომენის ან ნაგულისხმევ პარამეტრებში აღწერილ მნიშვნელობებს გადაფარავს."; -$text['header_description-user_settings']['nl-nl'] = "Instellingen voor deze gebruiker die de instellingen in Domein- of Standaardinstellingen moeten overschrijven."; -$text['header_description-user_settings']['pl-pl'] = "Ustawienia dla tego użytkownika, które powinny zastąpić te zdefiniowane w Domenie lub Ustawieniach Domyślnych."; -$text['header_description-user_settings']['pt-br'] = "Configurações para este usuário que devem substituir aquelas definidas em Domínio ou Configurações padrão."; -$text['header_description-user_settings']['pt-pt'] = "Configurações para este usuário que devem substituir aquelas definidas em Domínio ou Configurações padrão."; -$text['header_description-user_settings']['ro-ro'] = "Setări pentru acest utilizator care ar trebui să le înlocuiască pe cele definite în Domeniu sau Setări implicite."; -$text['header_description-user_settings']['ru-ru'] = "Настройки для этого пользователя, которые должны иметь приоритет над настройками, определенными в настройках домена или по умолчанию."; -$text['header_description-user_settings']['sv-se'] = "Inställningar för denna användare som ska åsidosätta de som definierats i Domän eller Standardinställningar."; -$text['header_description-user_settings']['uk-ua'] = "Налаштування для цього користувача, які мають замінити параметри, визначені в домені або налаштуваннях за замовчуванням."; -$text['header_description-user_settings']['tr-tr'] = "Bu kullanıcının Etki Alanı veya Varsayılan Ayarlar'da tanımlanan ayarları geçersiz kılması gereken ayarlar."; -$text['header_description-user_settings']['zh-cn'] = "此用户的设置应覆盖域或默认设置中定义的设置。"; -$text['header_description-user_settings']['ja-jp'] = "ドメインまたはデフォルト設定で定義されているものを上書きするこのユーザーの設定。"; -$text['header_description-user_settings']['ko-kr'] = "이 사용자에 대한 설정은 도메인 또는 기본 설정에서 정의된 것을 무시해야 합니다."; - $text['description-user_manager']['en-us'] = "Add, edit, delete, and search users. "; $text['description-user_manager']['en-gb'] = "Add, edit, delete, and search users. "; $text['description-user_manager']['ar-eg'] = "إضافة، تحرير، حذف، ومستعملي البحث."; diff --git a/core/users/user_edit.php b/core/users/user_edit.php index 5ecf874610..c6f74c4c9d 100644 --- a/core/users/user_edit.php +++ b/core/users/user_edit.php @@ -17,7 +17,7 @@ The Initial Developer of the Original Code is Mark J Crane - Portions created by the Initial Developer are Copyright (C) 2008-2023 + Portions created by the Initial Developer are Copyright (C) 2008-2024 the Initial Developer. All Rights Reserved. Contributor(s): @@ -725,6 +725,9 @@ echo button::create(['type'=>'button','label'=>$text['button-permissions'],'icon'=>'key','style'=>$button_margin,'link'=>PROJECT_PATH.'/app/user_permissions/user_permissions.php?id='.urlencode($user_uuid)]); unset($button_margin); } + if (permission_exists('user_setting_view')) { + echo button::create(['type'=>'button','label'=>$text['button-settings'],'icon'=>$_SESSION['theme']['button_icon_settings'],'id'=>'btn_settings','style'=>'','link'=>PROJECT_PATH.'/core/user_settings/user_settings.php?id='.urlencode($user_uuid)]); + } echo button::create(['type'=>'button','label'=>$text['button-save'],'icon'=>$_SESSION['theme']['button_icon_save'],'id'=>'btn_save','style'=>'margin-left: 15px;','onclick'=>'submit_form();']); echo "
\n"; echo "
\n"; @@ -1221,14 +1224,8 @@ echo ""; - if (permission_exists("user_edit") && permission_exists('user_setting_view') && $action == 'edit') { - require $_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/core/user_settings/user_settings.php"; - echo "

"; - } - - echo "