summaryrefslogtreecommitdiff
path: root/lib/plugin.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/plugin.php')
-rw-r--r--lib/plugin.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/plugin.php b/lib/plugin.php
index 87d7be5a7..de7313e59 100644
--- a/lib/plugin.php
+++ b/lib/plugin.php
@@ -65,6 +65,8 @@ class Plugin
Event::addHandler(mb_substr($method, 2), array($this, $method));
}
}
+
+ $this->setupGettext();
}
function initialize()
@@ -76,4 +78,31 @@ class Plugin
{
return true;
}
+
+ /**
+ * Checks if this plugin has localization that needs to be set up.
+ * Gettext localizations can be called via the _m() helper function.
+ */
+ protected function setupGettext()
+ {
+ $class = get_class($this);
+ if (substr($class, -6) == 'Plugin') {
+ $name = substr($class, 0, -6);
+ $path = INSTALLDIR . "/plugins/$name/locale";
+ if (file_exists($path) && is_dir($path)) {
+ bindtextdomain($name, $path);
+ }
+ }
+ }
+
+ protected function log($level, $msg)
+ {
+ common_log($level, get_class($this) . ': '.$msg);
+ }
+
+ protected function debug($msg)
+ {
+ $this->log(LOG_DEBUG, $msg);
+ }
}
+