X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=profile_edit.php;h=5839c7e0f2c1bebafc57e3fa266d93b9f41226f4;hb=d47d579964586e1edeb197882eca183600e4aaa1;hp=d85c1dcc17a91da876af411006e41e62f3b3e5d1;hpb=6970116f343469689e3014845bbff5c77c3bc6c4;p=timetracker.git diff --git a/profile_edit.php b/profile_edit.php index d85c1dcc..5839c7e0 100644 --- a/profile_edit.php +++ b/profile_edit.php @@ -50,19 +50,21 @@ if ($request->isPost()) { if ($user->canManageTeam()) { $cl_team = trim($request->getParameter('team_name')); - $cl_address = trim($request->getParameter('address')); $cl_currency = trim($request->getParameter('currency')); if (!$cl_currency) $cl_currency = CURRENCY_DEFAULT; $cl_lang = $request->getParameter('lang'); $cl_decimal_mark = $request->getParameter('decimal_mark'); - $cl_custom_format_date = $request->getParameter('format_date'); - $cl_custom_format_time = $request->getParameter('format_time'); + $cl_date_format = $request->getParameter('date_format'); + $cl_time_format = $request->getParameter('time_format'); $cl_start_week = $request->getParameter('start_week'); $cl_tracking_mode = $request->getParameter('tracking_mode'); $cl_project_required = $request->getParameter('project_required'); $cl_task_required = $request->getParameter('task_required'); $cl_record_type = $request->getParameter('record_type'); $cl_uncompleted_indicators = $request->getParameter('uncompleted_indicators'); + $cl_bcc_email = trim($request->getParameter('bcc_email')); + + // Plugin checkboxes. $cl_charts = $request->getParameter('charts'); $cl_clients = $request->getParameter('clients'); $cl_client_required = $request->getParameter('client_required'); @@ -72,9 +74,9 @@ if ($request->isPost()) { $cl_expenses = $request->getParameter('expenses'); $cl_tax_expenses = $request->getParameter('tax_expenses'); $cl_notifications = $request->getParameter('notifications'); - $cl_bcc_email = trim($request->getParameter('bcc_email')); $cl_locking = $request->getParameter('locking'); $cl_quotas = $request->getParameter('quotas'); + $cl_week_view = $request->getParameter('week_view'); } } else { $cl_name = $user->name; @@ -82,12 +84,11 @@ if ($request->isPost()) { $cl_email = $user->email; if ($user->canManageTeam()) { $cl_team = $user->team; - $cl_address = $user->address; $cl_currency = ($user->currency == ''? CURRENCY_DEFAULT : $user->currency); $cl_lang = $user->lang; $cl_decimal_mark = $user->decimal_mark; - $cl_custom_format_date = $user->date_format; - $cl_custom_format_time = $user->time_format; + $cl_date_format = $user->date_format; + $cl_time_format = $user->time_format; $cl_start_week = $user->week_start; $cl_tracking_mode = $user->tracking_mode; $cl_project_required = $user->project_required; @@ -109,6 +110,7 @@ if ($request->isPost()) { $cl_notifications = in_array('no', $plugins); $cl_locking = in_array('lk', $plugins); $cl_quotas = in_array('mq', $plugins); + $cl_week_view = in_array('wv', $plugins); } } @@ -123,9 +125,7 @@ $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)); - $DECIMAL_MARK_OPTIONS = array(array('id'=>'.','name'=>'.'),array('id'=>',','name'=>',')); - $form->addInput(array('type'=>'combobox','name'=>'decimal_mark','style'=>'width: 150px','data'=>$DECIMAL_MARK_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_decimal_mark, - 'onchange'=>'adjustDecimalPreview()')); + // Prepare an array of available languages. $lang_files = I18n::getLangFileList(); foreach ($lang_files as $lfile) { @@ -143,17 +143,22 @@ if ($user->canManageTeam()) { } $longname_lang = mu_sort($longname_lang, 'name'); $form->addInput(array('type'=>'combobox','name'=>'lang','style'=>'width: 150px','data'=>$longname_lang,'datakeys'=>array('id','name'),'value'=>$cl_lang)); + + $DECIMAL_MARK_OPTIONS = array(array('id'=>'.','name'=>'.'),array('id'=>',','name'=>',')); + $form->addInput(array('type'=>'combobox','name'=>'decimal_mark','style'=>'width: 150px','data'=>$DECIMAL_MARK_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_decimal_mark, + 'onchange'=>'adjustDecimalPreview()')); + $DATE_FORMAT_OPTIONS = array( array('id'=>'%Y-%m-%d','name'=>'Y-m-d'), array('id'=>'%m/%d/%Y','name'=>'m/d/Y'), array('id'=>'%d.%m.%Y','name'=>'d.m.Y'), array('id'=>'%d.%m.%Y %a','name'=>'d.m.Y a')); - $form->addInput(array('type'=>'combobox','name'=>'format_date','style'=>'width: 150px;','data'=>$DATE_FORMAT_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_custom_format_date, + $form->addInput(array('type'=>'combobox','name'=>'date_format','style'=>'width: 150px;','data'=>$DATE_FORMAT_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_date_format, 'onchange'=>'MakeFormatPreview("date_format_preview", this);')); $TIME_FORMAT_OPTIONS = array( array('id'=>'%H:%M','name'=>$i18n->getKey('form.profile.24_hours')), array('id'=>'%I:%M %p','name'=>$i18n->getKey('form.profile.12_hours'))); - $form->addInput(array('type'=>'combobox','name'=>'format_time','style'=>'width: 150px;','data'=>$TIME_FORMAT_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_custom_format_time, + $form->addInput(array('type'=>'combobox','name'=>'time_format','style'=>'width: 150px;','data'=>$TIME_FORMAT_OPTIONS,'datakeys'=>array('id','name'),'value'=>$cl_time_format, 'onchange'=>'MakeFormatPreview("time_format_preview", this);')); // Prepare week start choices. @@ -190,10 +195,10 @@ if ($user->canManageTeam()) { $form->addInput(array('type'=>'text','maxlength'=>'100','name'=>'bcc_email','value'=>$cl_bcc_email)); } + // Plugin checkboxes. $form->addInput(array('type'=>'checkbox','name'=>'charts','value'=>$cl_charts)); $form->addInput(array('type'=>'checkbox','name'=>'clients','value'=>$cl_clients,'onchange'=>'handlePluginCheckboxes()')); $form->addInput(array('type'=>'checkbox','name'=>'client_required','value'=>$cl_client_required)); - $form->addInput(array('type'=>'checkbox','name'=>'invoices','value'=>$cl_invoices)); $form->addInput(array('type'=>'checkbox','name'=>'paid_status','value'=>$cl_paid_status)); $form->addInput(array('type'=>'checkbox','name'=>'custom_fields','value'=>$cl_custom_fields,'onchange'=>'handlePluginCheckboxes()')); @@ -202,6 +207,7 @@ if ($user->canManageTeam()) { $form->addInput(array('type'=>'checkbox','name'=>'notifications','value'=>$cl_notifications,'onchange'=>'handlePluginCheckboxes()')); $form->addInput(array('type'=>'checkbox','name'=>'locking','value'=>$cl_locking,'onchange'=>'handlePluginCheckboxes()')); $form->addInput(array('type'=>'checkbox','name'=>'quotas','value'=>$cl_quotas,'onchange'=>'handlePluginCheckboxes()')); + $form->addInput(array('type'=>'checkbox','name'=>'week_view','value'=>$cl_week_view,'onchange'=>'handlePluginCheckboxes()')); } $form->addInput(array('type'=>'submit','name'=>'btn_save','value'=>$i18n->getKey('button.save'))); @@ -224,7 +230,6 @@ if ($request->isPost()) { if (!ttValidEmail($cl_email, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.email')); if ($user->canManageTeam()) { if (!ttValidString($cl_team, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.team_name')); - if (!ttValidString($cl_address, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.address')); if (!ttValidString($cl_currency, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.currency')); if ($user->isManager()) { if (!ttValidEmail($cl_bcc_email, true)) $err->add($i18n->getKey('error.field'), $i18n->getKey('label.bcc')); @@ -259,16 +264,27 @@ if ($request->isPost()) { $plugins .= ',lk'; if ($cl_quotas) $plugins .= ',mq'; + if ($cl_week_view) + $plugins .= ',wv'; + + // Recycle week view plugin options as they are not configured on this page. + $existing_plugins = explode(',', $user->plugins); + if (in_array('wvn', $existing_plugins)) + $plugins .= ',wvn'; + if (in_array('wvl', $existing_plugins)) + $plugins .= ',wvl'; + if (in_array('wvns', $existing_plugins)) + $plugins .= ',wvns'; + $plugins = trim($plugins, ','); $update_result = ttTeamHelper::update($user->team_id, array( 'name' => $cl_team, - 'address' => $cl_address, 'currency' => $cl_currency, 'lang' => $cl_lang, 'decimal_mark' => $cl_decimal_mark, - 'date_format' => $cl_custom_format_date, - 'time_format' => $cl_custom_format_time, + 'date_format' => $cl_date_format, + 'time_format' => $cl_time_format, 'week_start' => $cl_start_week, 'tracking_mode' => $cl_tracking_mode, 'project_required' => $cl_project_required,