summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2019-03-02 17:57:32 +0300
committerAndrew Dolgov <[email protected]>2019-03-02 17:57:32 +0300
commit79945082b31689f6bbb8e074336ad20a96c81a64 (patch)
tree9f3d2425c4843838ef37437ed7d26dad29318ed7 /classes
parentda1b3e3ba151945eb8574b37d4f0231335c9faee (diff)
parent72fcc81919b76a73624bac67d6d71cae6a50033b (diff)
Merge branch 'master' of git.tt-rss.org:fox/tt-rss
Diffstat (limited to 'classes')
-rwxr-xr-xclasses/pluginhost.php23
1 files changed, 23 insertions, 0 deletions
diff --git a/classes/pluginhost.php b/classes/pluginhost.php
index 96b1ce499..2ad9ae11d 100755
--- a/classes/pluginhost.php
+++ b/classes/pluginhost.php
@@ -1,4 +1,18 @@
<?php
+/* gettext helpers for plugins */
+
+function P__($plugin, $msgid) {
+ return P_gettext($plugin, $msgid);
+}
+
+function P_gettext($plugin, $msgid) {
+ return _dgettext(PLuginHost::object_to_domain($plugin), $msgid);
+}
+
+function P_ngettext($plugin, $singular, $plural, $number) {
+ return _dngettext(PLuginHost::object_to_domain($plugin), $singular, $plural, $number);
+}
+
class PluginHost {
private $pdo;
private $hooks = array();
@@ -63,6 +77,10 @@ class PluginHost {
const KIND_SYSTEM = 2;
const KIND_USER = 3;
+ static function object_to_domain($plugin) {
+ return strtolower(get_class($plugin));
+ }
+
function __construct() {
$this->pdo = Db::pdo();
@@ -211,6 +229,11 @@ class PluginHost {
continue;
}
+ if (file_exists(dirname($file) . "/locale")) {
+ _bindtextdomain($class, dirname($file) . "/locale");
+ _bind_textdomain_codeset($class, "UTF-8");
+ }
+
$this->last_registered = $class;
switch ($kind) {