diff options
author | Hilmar Runge <sn@wsring.net> | 2021-06-05 07:51:38 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2021-06-05 07:51:38 +0000 |
commit | 25497336bba4ffc8fc702bfc5126e66130bd9cbc (patch) | |
tree | e1f6c6d82d91a47903bb45a5e5a9068d1305bcb5 /Zotlabs/Module/Lang.php | |
parent | 836de7f1a5a999d5133bc957926ba361e5b6c56e (diff) | |
download | volse-hubzilla-25497336bba4ffc8fc702bfc5126e66130bd9cbc.tar.gz volse-hubzilla-25497336bba4ffc8fc702bfc5126e66130bd9cbc.tar.bz2 volse-hubzilla-25497336bba4ffc8fc702bfc5126e66130bd9cbc.zip |
Changed behavior in the user interaction of the languages selection. Now works...
Diffstat (limited to 'Zotlabs/Module/Lang.php')
-rw-r--r-- | Zotlabs/Module/Lang.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/Zotlabs/Module/Lang.php b/Zotlabs/Module/Lang.php index a32f933a6..1a2f1664e 100644 --- a/Zotlabs/Module/Lang.php +++ b/Zotlabs/Module/Lang.php @@ -7,6 +7,52 @@ use Zotlabs\Web\Controller; class Lang extends Controller { + const MYP = 'ZIN'; + const VERSION = '2.0.0'; + + function post() { + + $re = []; + $isajax = is_ajax(); + $eol = $isajax ? "\n" : EOL; + + if (! Apps::system_app_installed(local_channel(), 'Language')) { + $re['msg'] = 'ZIN0202E, ' . t('Language App') . ' (' . t('Not Installed') . ')' ; + notice( $re['msg'] . EOL); + if ($isajax) { + echo json_encode( $re ); + killme(); + exit; + } else { + return; + } + } + + $lc = x($_POST['zinlc']) && preg_match('/^\?\?|[a-z]{2,2}[x_\-]{0,1}[a-zA-Z]{0,2}$/', $_POST['zinlc']) + ? $_POST['zinlc'] : ''; + $lcs= x($_POST['zinlcs']) && preg_match('/^[a-z,_\-]{0,191}$/', $_POST['zinlcs']) + ? $_POST['zinlcs'] : ''; + + if ($isajax) { + + if ($lc == '??') { + $re['lc'] = get_best_language(); + $re['lcs'] = language_list(); + } else { + $re['lc'] = $lc; + $re['alc'] = App::$language; + $re['slc'] = $_SESSION['language']; + $_SESSION['language'] = $lc; + App::$language = $lc; + load_translation_table($lc, true); + } + + echo json_encode( $re ); + killme(); + exit; + } + } + function get() { if(local_channel()) { |