From 2d2af72c22e7b3aca2f90f10bcda1c73767d9656 Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Tue, 24 Jul 2012 06:25:28 -0400
Subject: [PATCH] Correctly quote localized labels when used in javascript variables (#1488567)
---
program/include/rcube_template.php | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/program/include/rcube_template.php b/program/include/rcube_template.php
index e779f5a..19510ce 100644
--- a/program/include/rcube_template.php
+++ b/program/include/rcube_template.php
@@ -711,7 +711,15 @@
$vars = $attrib + array('product' => $this->config['product_name']);
unset($vars['name'], $vars['command']);
$label = rcube_label($attrib + array('vars' => $vars));
- return !$attrib['noshow'] ? (get_boolean((string)$attrib['html']) ? $label : Q($label)) : '';
+ $quoting = !empty($attrib['quoting']) ? strtolower($attrib['quoting']) : (get_boolean((string)$attrib['html']) ? 'no' : '');
+ switch ($quoting) {
+ case 'no':
+ case 'raw': break;
+ case 'javascript':
+ case 'js': $label = JQ($label); break;
+ default: $label = Q($label); break;
+ }
+ return !$attrib['noshow'] ? $label : '';
}
break;
--
Gitblit v1.9.1