diff --git a/lib/modulekit/lang b/lib/modulekit/lang index 80118dbc..832b12cc 160000 --- a/lib/modulekit/lang +++ b/lib/modulekit/lang @@ -1 +1 @@ -Subproject commit 80118dbcaafa9ab95298be95548126071efc069f +Subproject commit 832b12cc0d0ac674339e1ed722d2800ab0d8885b diff --git a/src/language.php b/src/language.php index 35852bf7..da93d2e7 100644 --- a/src/language.php +++ b/src/language.php @@ -4,3 +4,29 @@ 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 = <<query($query); + } + + foreach ($strings as $k => $count) { + $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); + } +});