Browse Source

Merge branch 'report-non-translated'

master
parent
commit
431ffe9791
  1. 2
      lib/modulekit/form
  2. 2
      lib/modulekit/lang
  3. 28
      src/language.php

2
lib/modulekit/form

@ -1 +1 @@
Subproject commit c26a06bdac5ba37a1ef020dd62a53de7ccce61d1
Subproject commit 02fb3cbae52f78801d1c8ae131df4065e8b35ae0

2
lib/modulekit/lang

@ -1 +1 @@
Subproject commit 3688eae14c7cd2b7aa2f54ed23ffaa5e1c7b8338
Subproject commit eb4addba3c06cd2ffbb973fb9c8193a1af655aec

28
src/language.php

@ -4,3 +4,31 @@ register_hook('options_save', function ($options) {
$_SESSION['ui_lang'] = $options['ui_lang'];
}
});
register_hook('lang_report_non_translated', function ($strings, $ui_lang) {
if (!is_writeable('data')) {
return;
}
$db = new PDO('sqlite:data/lang.db');
$res = $db->query('select 1 from lang_non_translated');
if (!$res) {
$query = <<<EOT
create table lang_non_translated (
str varchar(255) not null,
lang varchar(32) not null,
count integer not null default 0,
primary key(str, lang)
);
EOT;
$db->query($query);
}
foreach ($strings as $k => $count) {
if ($count > 0) {
$query = 'insert or replace into lang_non_translated values (' . $db->quote($k) . ', ' . $db->quote($ui_lang) . ', coalesce((select count + ' . $db->quote($count) . ' from lang_non_translated where str=' . $db->quote($k) . ' and lang=' . $db->quote($ui_lang) . '), ' . $db->quote($count) . '))';
$db->query($query);
}
}
});
Loading…
Cancel
Save