From a95323ce1ae75fe97d5976b7d177f59dd278207b Mon Sep 17 00:00:00 2001 From: Nik Okuntseff Date: Thu, 22 Feb 2018 16:24:24 +0000 Subject: [PATCH] Work in progress on roles. --- WEB-INF/lib/ttUser.class.php | 2 ++ WEB-INF/templates/footer.tpl | 2 +- WEB-INF/templates/profile_edit.tpl | 6 ++++++ profile_edit.php | 6 ++++++ 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/WEB-INF/lib/ttUser.class.php b/WEB-INF/lib/ttUser.class.php index 815eff7c..37907c4d 100644 --- a/WEB-INF/lib/ttUser.class.php +++ b/WEB-INF/lib/ttUser.class.php @@ -52,6 +52,7 @@ class ttUser { var $uncompleted_indicators = 0; // Uncompleted time entry indicators (show nowhere or on users page). var $bcc_email = null; // Bcc email. var $currency = null; // Currency. + var $roles = 1; // Whether we use configurable roles. var $plugins = null; // Comma-separated list of enabled plugins. var $config = null; // Comma-separated list of miscellaneous config options. var $team = null; // Team name. @@ -116,6 +117,7 @@ class ttUser { $config_array = explode(',', $this->config); // Set user config options. + $this->roles = in_array('roles', $config_array); $this->show_holidays = in_array('show_holidays', $config_array); $this->punch_mode = in_array('punch_mode', $config_array); $this->allow_overlap = in_array('allow_overlap', $config_array); diff --git a/WEB-INF/templates/footer.tpl b/WEB-INF/templates/footer.tpl index 865790b1..c60a07a9 100644 --- a/WEB-INF/templates/footer.tpl +++ b/WEB-INF/templates/footer.tpl @@ -12,7 +12,7 @@
- + {if defined(DEBUG_ROLES)} + + + + + {/if} diff --git a/profile_edit.php b/profile_edit.php index c4e325df..ec8e1d89 100644 --- a/profile_edit.php +++ b/profile_edit.php @@ -52,6 +52,7 @@ if ($request->isPost()) { $cl_team = trim($request->getParameter('team_name')); $cl_currency = trim($request->getParameter('currency')); if (!$cl_currency) $cl_currency = CURRENCY_DEFAULT; + $cl_roles = $request->getParameter('roles'); $cl_lang = $request->getParameter('lang'); $cl_decimal_mark = $request->getParameter('decimal_mark'); $cl_date_format = $request->getParameter('date_format'); @@ -89,6 +90,7 @@ if ($request->isPost()) { if ($user->canManageTeam()) { $cl_team = $user->team; $cl_currency = ($user->currency == ''? CURRENCY_DEFAULT : $user->currency); + $cl_roles = $user->roles; $cl_lang = $user->lang; $cl_decimal_mark = $user->decimal_mark; $cl_date_format = $user->date_format; @@ -133,6 +135,8 @@ $form->addInput(array('type'=>'text','maxlength'=>'100','name'=>'email','value'= if ($user->canManageTeam()) { $form->addInput(array('type'=>'text','maxlength'=>'200','name'=>'team_name','value'=>$cl_team)); $form->addInput(array('type'=>'text','maxlength'=>'7','name'=>'currency','value'=>$cl_currency)); + // Roles checkbox. + $form->addInput(array('type'=>'checkbox','name'=>'roles','value'=>$cl_roles)); // Prepare an array of available languages. $lang_files = I18n::getLangFileList(); @@ -296,6 +300,8 @@ if ($request->isPost()) { $plugins = trim($plugins, ','); // Prepare config string. + if ($cl_roles) + $config .= ',roles'; if ($cl_show_holidays) $config .= ',show_holidays'; if ($cl_punch_mode) -- 2.20.1
 Anuko Time Tracker 1.17.29.4011 | Copyright © Anuko | +  Anuko Time Tracker 1.17.29.4012 | Copyright © Anuko | {$i18n.footer.credits} | {$i18n.footer.license} | {$i18n.footer.improve} diff --git a/WEB-INF/templates/profile_edit.tpl b/WEB-INF/templates/profile_edit.tpl index 48511182..3dc8bc9b 100644 --- a/WEB-INF/templates/profile_edit.tpl +++ b/WEB-INF/templates/profile_edit.tpl @@ -141,6 +141,12 @@ function handlePluginCheckboxes() { {$i18n.label.currency}: {$forms.profileForm.currency.control}
{$i18n.label.roles}:{$forms.profileForm.roles.control} {$i18n.label.what_is_it}
{$i18n.label.language}: {$forms.profileForm.lang.control}