summaryrefslogtreecommitdiff
path: root/roundcubemail/plugins/emoticons
diff options
context:
space:
mode:
authorthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2009-04-19 17:44:29 +0000
committerthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2009-04-19 17:44:29 +0000
commitc4185d03cfb5c4e9df4c004b2c13a9b3c3196eac (patch)
tree4f7ca23360a62cf181bb23a0f2264d69481cac03 /roundcubemail/plugins/emoticons
parent137ee56eda15ecccb6a619a906ac532fc5d6c042 (diff)
Merged branch devel-api (from r2208 to r2387) back into trunk (omitting some sample plugins)
git-svn-id: https://svn.roundcube.net/trunk@2401 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/plugins/emoticons')
-rw-r--r--roundcubemail/plugins/emoticons/emoticons.php39
1 files changed, 39 insertions, 0 deletions
diff --git a/roundcubemail/plugins/emoticons/emoticons.php b/roundcubemail/plugins/emoticons/emoticons.php
new file mode 100644
index 000000000..be736b625
--- /dev/null
+++ b/roundcubemail/plugins/emoticons/emoticons.php
@@ -0,0 +1,39 @@
+<?php
+
+/**
+ * Display Emoticons
+ *
+ * Sample plugin to replace emoticons in plain text message body with real icons
+ *
+ * @version 1.0.1
+ * @author Thomas Bruederli
+ * @website http://roundcube.net
+ */
+class emoticons extends rcube_plugin
+{
+ public $task = 'mail';
+ private $map;
+
+ function init()
+ {
+ $this->task = 'mail';
+ $this->add_hook('message_part_after', array($this, 'replace'));
+
+ $this->map = array(
+ ':)' => html::img(array('src' => './program/js/tiny_mce/plugins/emotions/img/smiley-smile.gif', 'alt' => ':)')),
+ ':-)' => html::img(array('src' => './program/js/tiny_mce/plugins/emotions/img/smiley-smile.gif', 'alt' => ':-)')),
+ ':(' => html::img(array('src' => './program/js/tiny_mce/plugins/emotions/img/smiley-cry.gif', 'alt' => ':(')),
+ ':-(' => html::img(array('src' => './program/js/tiny_mce/plugins/emotions/img/smiley-cry.gif', 'alt' => ':-(')),
+ );
+ }
+
+ function replace($args)
+ {
+ if ($args['type'] == 'plain')
+ return array('body' => strtr($args['body'], $this->map));
+
+ return null;
+ }
+
+}
+