]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - include/Smarty/plugins/function.sugar_translate.php
Release 6.5.0
[Github/sugarcrm.git] / include / Smarty / plugins / function.sugar_translate.php
1 <?php
2
3 /*
4
5 Modification information for LGPL compliance
6
7 r58601 - 2010-10-20 13:52:53 -0700 (Wed, 20 Oct 2010) - engsvnbuild - Author: Stanislav Malyshev <smalyshev@gmail.com>
8     handle japanese : too
9
10 r58597 - 2010-10-20 11:40:04 -0700 (Wed, 20 Oct 2010) - engsvnbuild - Author: Jenny Gonsalves <jenny@sugarcrm.com>
11     Revert "Merge branch 'RC2'"
12
13 r58596 - 2010-10-20 09:50:45 -0700 (Wed, 20 Oct 2010) - engsvnbuild - Merge: a813190 e0a061b
14 Author: Jenny Gonsalves <jenny@sugarcrm.com>
15     Merge branch 'RC2'
16
17 r56990 - 2010-06-16 13:05:36 -0700 (Wed, 16 Jun 2010) - kjing - snapshot "Mango" svn branch to a new one for GitHub sync
18
19 r56989 - 2010-06-16 13:01:33 -0700 (Wed, 16 Jun 2010) - kjing - defunt "Mango" svn dev branch before github cutover
20
21 r55980 - 2010-04-19 13:31:28 -0700 (Mon, 19 Apr 2010) - kjing - create Mango (6.1) based on windex
22
23 r54045 - 2010-01-26 12:25:05 -0800 (Tue, 26 Jan 2010) - roger - merge from Kobe rev: 53336 - 54021
24
25 r51719 - 2009-10-22 10:18:00 -0700 (Thu, 22 Oct 2009) - mitani - Converted to Build 3  tags and updated the build system 
26
27 r51634 - 2009-10-19 13:32:22 -0700 (Mon, 19 Oct 2009) - mitani - Windex is the branch for Sugar Sales 1.0 development
28
29 r50375 - 2009-08-24 18:07:43 -0700 (Mon, 24 Aug 2009) - dwong - branch kobe2 from tokyo r50372
30
31 r42807 - 2008-12-29 11:16:59 -0800 (Mon, 29 Dec 2008) - dwong - Branch from trunk/sugarcrm r42806 to branches/tokyo/sugarcrm
32
33 r33667 - 2008-04-01 19:23:40 -0700 (Tue, 01 Apr 2008) - nsingh - bug 20642 fixed.
34
35 r29994 - 2007-11-26 12:55:38 -0800 (Mon, 26 Nov 2007) - majed - bug # 18244 translates what is displayed in listviews multiselects
36
37 r16020 - 2006-08-16 14:58:47 -0700 (Wed, 16 Aug 2006) - wayne - trim colon by default
38
39 r15131 - 2006-07-29 15:46:10 -0700 (Sat, 29 Jul 2006) - majed - translate function
40
41
42 */
43
44
45 /**
46  * Smarty plugin
47  * @package Smarty
48  * @subpackage plugins
49  */
50
51
52 /**
53  * Smarty {sugar_translate} function plugin
54  *
55  * Type:     function<br>
56  * Name:     sugar_translate<br>
57  * Purpose:  translates a label into the users current language
58  *
59  * @author Majed Itani {majed at sugarcrm.com
60  * @param array
61  * @param Smarty
62  */
63 function smarty_function_sugar_translate($params, &$smarty)
64 {
65         if (!isset($params['label'])){
66                 $smarty->trigger_error("sugar_translate: missing 'label' parameter");
67                 return '';
68         }
69
70         $module = (isset($params['module']))? $params['module']: '';
71     if(isset($params['select'])){
72         if(empty($params['select']))
73                     $value = "";
74                 else
75                     $value = translate($params['label'] , $module, $params['select']);
76         }else{
77                 $value = translate($params['label'] , $module);
78     }
79     if (!empty($params['for_js']) && $params['for_js']) {
80         $value = addslashes($value);
81         $value = str_replace(array('&#039;', '&#39;'), "\'", $value);
82     }
83     if(isset($params['trimColon']) && !$params['trimColon']) {
84         return $value;
85     } elseif($params['label'] == '0') {
86         return translate("DEFAULT", $module);
87     } else {
88         return preg_replace("/([:]|\xEF\xBC\x9A)[\\s]*$/", "", $value);
89     }
90 }