X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fpref%2Fpref-process.html;h=974b96dc2cc4aedb0746436c3c8d213637d896db;hb=fb4ab1073f0d15d660c6cdc4e07afebf68ef3924;hp=0ee48fd9ea98972f7d6f888850ea4c6bfc89bf12;hpb=83053569b3d965924e2e1d4f5b199609ec7c29af;p=freeside.git diff --git a/httemplate/pref/pref-process.html b/httemplate/pref/pref-process.html index 0ee48fd9e..974b96dc2 100644 --- a/httemplate/pref/pref-process.html +++ b/httemplate/pref/pref-process.html @@ -48,7 +48,7 @@ unless ( $error ) { # if ($access_user) { my %param = $access_user->options; #XXX autogen - my @paramlist = qw( locale menu_position default_customer_view + my @paramlist = qw( locale menu_position default_customer_view mobile_menu disable_html_editor email_address snom-ip snom-username snom-password @@ -73,4 +73,16 @@ unless ( $error ) { # if ($access_user) { } +if ( !$error and ($FS::TicketSystem::system || '') eq 'RT_Internal' ) { + # sync RT user locale on every update + my $locale = $access_user->option('locale'); + FS::TicketSystem->init; + my $UserObj = FS::TicketSystem->session('')->{'CurrentUser'}->UserObj; + # Bypass RT ModifySelf ACL + $UserObj->CurrentUser( RT::SystemUser ); + if ( $UserObj->Lang ne $locale ) { + my ($val, $msg) = $UserObj->SetLang($locale); + $error = $msg if !$val; + } +}