diff options
author | patdenice <patdenice@piwigo.org> | 2007-11-18 14:54:18 +0000 |
---|---|---|
committer | patdenice <patdenice@piwigo.org> | 2007-11-18 14:54:18 +0000 |
commit | ee4fbd7cec24f0b57a3924e9af7aed9ba2759cb7 (patch) | |
tree | 71a8b9919f28add3ead114b988046953da356782 /plugins/extended_description/main.inc.php | |
parent | 711018af5e3de7d568752c72f3a3331554a9f97a (diff) |
Add plugin "Extended Description".
This plugin allow multilanguage descriptions.
git-svn-id: http://piwigo.org/svn/trunk@2160 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'plugins/extended_description/main.inc.php')
-rw-r--r-- | plugins/extended_description/main.inc.php | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/plugins/extended_description/main.inc.php b/plugins/extended_description/main.inc.php new file mode 100644 index 000000000..aef78082c --- /dev/null +++ b/plugins/extended_description/main.inc.php @@ -0,0 +1,47 @@ +<?php +/* +Plugin Name: Extended Description +Version: 1.8.a +Description: Allow multilanguage description / Permet d'avoir des descriptions mutilingues +Plugin URI: http://phpwebgallery.net/ext/extension_view.php?eid=175 +Author: PhpWebGallery team +Author URI: http://www.phpwebgallery.net +*/ + +if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!'); + +function get_user_language_desc($desc) +{ + global $user; + + $user_lang = substr($user['language'], 0, 2); + + if (!substr_count(strtolower($desc), '[lang=' . $user_lang . ']')) + { + $user_lang = 'default'; + if (!substr_count(strtolower($desc), '[lang=default]')) + { + $desc = preg_replace("#(\A|\[/lang\])(.*?)(\[lang=(.*?)\]|\Z)#is", '$1[lang=default]$2[/lang]$3', $desc); + } + } + + preg_match_all("#\[lang=(" . $user_lang . "|all)\](.*?)\[/lang\]#is", $desc, $matches); + + return implode('', $matches[2]); +} + +function extended_desc_mail_group_assign_vars($assign_vars) +{ + if (isset($assign_vars['CPL_CONTENT'])) + { + $assign_vars['CPL_CONTENT'] = get_user_language_desc($assign_vars['CPL_CONTENT']); + } + return $assign_vars; +} + +add_event_handler ('render_category_description', 'get_user_language_desc'); +add_event_handler ('render_element_description', 'get_user_language_desc'); +add_event_handler('nbm_render_user_customize_mail_content', 'get_user_language_desc'); +add_event_handler('mail_group_assign_vars', 'extended_desc_mail_group_assign_vars'); + +?>
\ No newline at end of file |