]> git.donarmstrong.com Git - roundcube.git/blobdiff - debian/patches/changeset_r3170.patch
Fix link to jQuery, thanks to Niccolò Belli!
[roundcube.git] / debian / patches / changeset_r3170.patch
index f820edcd32ad4695b80e3e77151a95a7316d8c1c..962a62698eeabaeafd3924b6d4e2f517a97a8dc3 100644 (file)
 Use json_encode to ensure compatibility with JQuery 1.4.\r
 \r
-Index: roundcubemail/program/include/rcube_template.php\r
-===================================================================\r
---- roundcubemail/program/include/rcube_template.php (revision 2980)\r
-+++ roundcubemail/program/include/rcube_template.php (revision 3170)\r
-@@ -415,10 +415,10 @@\r
-         $out = '';\r
-         if (!$this->framed && !empty($this->js_env)) {\r
--            $out .= JS_OBJECT_NAME . '.set_env('.json_serialize($this->js_env).");\n";\r
-+            $out .= JS_OBJECT_NAME . '.set_env('.json_encode($this->js_env).");\n";\r
-         }\r
-         foreach ($this->js_commands as $i => $args) {\r
-             $method = array_shift($args);\r
-             foreach ($args as $i => $arg) {\r
--                $args[$i] = json_serialize($arg);\r
-+                $args[$i] = json_encode($arg);\r
-             }\r
-             $parent = $this->framed || preg_match('/^parent\./', $method);\r
-Index: roundcubemail/program/include/rcube_shared.inc\r
-===================================================================\r
---- roundcubemail/program/include/rcube_shared.inc (revision 3132)\r
-+++ roundcubemail/program/include/rcube_shared.inc (revision 3170)\r
-@@ -106,95 +106,4 @@\r
-     exit;\r
-     }\r
--}\r
--\r
--\r
--/**\r
-- * Returns whether an $str is a reserved word for any of the version of Javascript or ECMAScript\r
-- * @param str String to check\r
-- * @return boolean True if $str is a reserver word, False if not\r
-- */\r
--function is_js_reserved_word($str)\r
--{\r
--  return in_array($str, array(\r
--    // ECMASript ver 4 reserved words\r
--    'as','break','case','catch','class','const','continue',\r
--    'default','delete','do','else','export','extends','false','finally','for','function',\r
--    'if','import','in','instanceof','is','namespace','new','null','package','private',\r
--    'public','return','super','switch','this','throw','true','try','typeof','use','var',\r
--    'void','while','with',\r
--    // ECMAScript ver 4 future reserved words\r
--    'abstract','debugger','enum','goto','implements','interface','native','protected',\r
--    'synchronized','throws','transient','volatile',\r
--    // special meaning in some contexts\r
--    'get','set',\r
--    // were reserved in ECMAScript ver 3\r
--    'boolean','byte','char','double','final','float','int','long','short','static'\r
--  ));\r
--}\r
--\r
--\r
--/**\r
-- * Convert a variable into a javascript object notation\r
-- *\r
-- * @param mixed Input value\r
-- * @return string Serialized JSON string\r
-- */\r
--function json_serialize($var)\r
--{\r
--  if (is_object($var))\r
--    $var = get_object_vars($var);\r
--\r
--  if (is_array($var))\r
--  {\r
--    // empty array\r
--    if (!sizeof($var))\r
--      return '[]';\r
--    else\r
--    {\r
--      $keys_arr = array_keys($var);\r
--      $is_assoc = $have_numeric = 0;\r
--\r
--      for ($i=0; $i<sizeof($keys_arr); ++$i)\r
--      {\r
--        if (is_numeric($keys_arr[$i]))\r
--          $have_numeric = 1;\r
--        if (!is_numeric($keys_arr[$i]) || $keys_arr[$i] != $i)\r
--          $is_assoc = 1;\r
--        if ($is_assoc && $have_numeric)\r
--          break;\r
--      }\r
--      \r
--      $brackets = $is_assoc ? '{}' : '[]';\r
--      $pairs = array();\r
--\r
--      foreach ($var as $key => $value)\r
--      {\r
--        // enclose key with quotes if it is not variable-name conform\r
--        if (!preg_match('/^[_a-zA-Z]{1}[_a-zA-Z0-9]*$/', $key) || is_js_reserved_word($key))\r
--          $key = "'$key'";\r
--\r
--        $pairs[] = sprintf("%s%s", $is_assoc ? "$key:" : '', json_serialize($value));\r
--      }\r
--\r
--      return $brackets{0} . implode(',', $pairs) . $brackets{1};\r
--    }\r
--  }\r
--  else if (!is_string($var) && strval(intval($var)) === strval($var))\r
--    return $var;\r
--  else if (is_bool($var))\r
--    return $var ? '1' : '0';\r
--  else\r
--    return "'".JQ($var)."'";\r
--}\r
--\r
--\r
--/**\r
-- * Function to convert an array to a javascript array\r
-- * Actually an alias function for json_serialize()\r
-- * @deprecated\r
-- */\r
--function array2js($arr, $type='')\r
--{\r
--  return json_serialize($arr);\r
- }\r
\r
-Index: roundcubemail/program/include/rcube_json_output.php\r
-===================================================================\r
---- roundcubemail/program/include/rcube_json_output.php (revision 2905)\r
-+++ roundcubemail/program/include/rcube_json_output.php (revision 3170)\r
-@@ -240,5 +240,5 @@\r
-           $response['callbacks'] = $this->callbacks;\r
\r
--        echo json_serialize($response);\r
-+        echo json_encode($response);\r
-     }\r
-     \r
-@@ -256,5 +256,5 @@\r
-             $method = array_shift($args);\r
-             foreach ($args as $i => $arg) {\r
--                $args[$i] = json_serialize($arg);\r
-+                $args[$i] = json_encode($arg);\r
-             }\r
\r
-Index: roundcubemail/program/steps/mail/func.inc\r
-===================================================================\r
---- roundcubemail/program/steps/mail/func.inc (revision 3099)\r
-+++ roundcubemail/program/steps/mail/func.inc (revision 3170)\r
-@@ -523,5 +523,5 @@\r
-   if (is_array($quota)) {\r
-     $OUTPUT->add_script('$(document).ready(function(){\r
--      rcmail.set_quota('.json_serialize($quota).')});', 'foot');\r
-+      rcmail.set_quota('.json_encode($quota).')});', 'foot');\r
-     $quota = '';\r
-     }\r
-Index: roundcubemail/program/steps/mail/compose.inc\r
-===================================================================\r
---- roundcubemail/program/steps/mail/compose.inc (revision 3166)\r
-+++ roundcubemail/program/steps/mail/compose.inc (revision 3170)\r
-@@ -507,5 +507,5 @@\r
-       JQ(Q(rcube_label('revertto'))),\r
-       JQ(Q(rcube_label('nospellerrors'))),\r
--      json_serialize($spellcheck_langs),\r
-+      json_encode($spellcheck_langs),\r
-       $lang,\r
-       $attrib['id'],\r
+Index: b/program/include/rcube_json_output.php
+===================================================================
+--- a/program/include/rcube_json_output.php    2009-09-01 17:13:45.000000000 +0200
++++ b/program/include/rcube_json_output.php    2010-07-17 17:33:24.000000000 +0200
+@@ -239,7 +239,7 @@
+         if (!empty($this->callbacks))
+           $response['callbacks'] = $this->callbacks;
+-        echo json_serialize($response);
++        echo json_encode($response);
+     }
+     
+     
+@@ -255,7 +255,7 @@
+         foreach ($this->commands as $i => $args) {
+             $method = array_shift($args);
+             foreach ($args as $i => $arg) {
+-                $args[$i] = json_serialize($arg);
++                $args[$i] = json_encode($arg);
+             }
+             $out .= sprintf(
+Index: b/program/include/rcube_shared.inc
+===================================================================
+--- a/program/include/rcube_shared.inc 2009-10-27 10:43:39.000000000 +0100
++++ b/program/include/rcube_shared.inc 2010-07-17 17:33:24.000000000 +0200
+@@ -109,97 +109,6 @@
+ /**
+- * Returns whether an $str is a reserved word for any of the version of Javascript or ECMAScript
+- * @param str String to check
+- * @return boolean True if $str is a reserver word, False if not
+- */
+-function is_js_reserved_word($str)
+-{
+-  return in_array($str, array(
+-    // ECMASript ver 4 reserved words
+-    'as','break','case','catch','class','const','continue',
+-    'default','delete','do','else','export','extends','false','finally','for','function',
+-    'if','import','in','instanceof','is','namespace','new','null','package','private',
+-    'public','return','super','switch','this','throw','true','try','typeof','use','var',
+-    'void','while','with',
+-    // ECMAScript ver 4 future reserved words
+-    'abstract','debugger','enum','goto','implements','interface','native','protected',
+-    'synchronized','throws','transient','volatile',
+-    // special meaning in some contexts
+-    'get','set',
+-    // were reserved in ECMAScript ver 3
+-    'boolean','byte','char','double','final','float','int','long','short','static'
+-  ));
+-}
+-
+-
+-/**
+- * Convert a variable into a javascript object notation
+- *
+- * @param mixed Input value
+- * @return string Serialized JSON string
+- */
+-function json_serialize($var)
+-{
+-  if (is_object($var))
+-    $var = get_object_vars($var);
+-
+-  if (is_array($var))
+-  {
+-    // empty array
+-    if (!sizeof($var))
+-      return '[]';
+-    else
+-    {
+-      $keys_arr = array_keys($var);
+-      $is_assoc = $have_numeric = 0;
+-
+-      for ($i=0; $i<sizeof($keys_arr); ++$i)
+-      {
+-        if (is_numeric($keys_arr[$i]))
+-          $have_numeric = 1;
+-        if (!is_numeric($keys_arr[$i]) || $keys_arr[$i] != $i)
+-          $is_assoc = 1;
+-        if ($is_assoc && $have_numeric)
+-          break;
+-      }
+-      
+-      $brackets = $is_assoc ? '{}' : '[]';
+-      $pairs = array();
+-
+-      foreach ($var as $key => $value)
+-      {
+-        // enclose key with quotes if it is not variable-name conform
+-        if (!preg_match('/^[_a-zA-Z]{1}[_a-zA-Z0-9]*$/', $key) || is_js_reserved_word($key))
+-          $key = "'$key'";
+-
+-        $pairs[] = sprintf("%s%s", $is_assoc ? "$key:" : '', json_serialize($value));
+-      }
+-
+-      return $brackets{0} . implode(',', $pairs) . $brackets{1};
+-    }
+-  }
+-  else if (!is_string($var) && strval(intval($var)) === strval($var))
+-    return $var;
+-  else if (is_bool($var))
+-    return $var ? '1' : '0';
+-  else
+-    return "'".JQ($var)."'";
+-}
+-
+-
+-/**
+- * Function to convert an array to a javascript array
+- * Actually an alias function for json_serialize()
+- * @deprecated
+- */
+-function array2js($arr, $type='')
+-{
+-  return json_serialize($arr);
+-}
+-
+-
+-/**
+  * Similar function as in_array() but case-insensitive
+  *
+  * @param mixed Needle value
+Index: b/program/include/rcube_template.php
+===================================================================
+--- a/program/include/rcube_template.php       2009-09-22 20:08:45.000000000 +0200
++++ b/program/include/rcube_template.php       2010-07-17 17:33:24.000000000 +0200
+@@ -414,12 +414,12 @@
+     {
+         $out = '';
+         if (!$this->framed && !empty($this->js_env)) {
+-            $out .= JS_OBJECT_NAME . '.set_env('.json_serialize($this->js_env).");\n";
++            $out .= JS_OBJECT_NAME . '.set_env('.json_encode($this->js_env).");\n";
+         }
+         foreach ($this->js_commands as $i => $args) {
+             $method = array_shift($args);
+             foreach ($args as $i => $arg) {
+-                $args[$i] = json_serialize($arg);
++                $args[$i] = json_encode($arg);
+             }
+             $parent = $this->framed || preg_match('/^parent\./', $method);
+             $out .= sprintf(
+Index: b/program/steps/mail/compose.inc
+===================================================================
+--- a/program/steps/mail/compose.inc   2009-10-06 08:55:08.000000000 +0200
++++ b/program/steps/mail/compose.inc   2010-07-17 17:33:24.000000000 +0200
+@@ -493,7 +493,7 @@
+       JQ(Q(rcube_label('close'))),
+       JQ(Q(rcube_label('revertto'))),
+       JQ(Q(rcube_label('nospellerrors'))),
+-      json_serialize($spellcheck_langs),
++      json_encode($spellcheck_langs),
+       $lang,
+       $attrib['id'],
+       JS_OBJECT_NAME), 'foot');
+Index: b/program/steps/mail/func.inc
+===================================================================
+--- a/program/steps/mail/func.inc      2009-10-24 21:09:23.000000000 +0200
++++ b/program/steps/mail/func.inc      2010-07-17 17:33:24.000000000 +0200
+@@ -522,7 +522,7 @@
+   
+   if (is_array($quota)) {
+     $OUTPUT->add_script('$(document).ready(function(){
+-      rcmail.set_quota('.json_serialize($quota).')});', 'foot');
++      rcmail.set_quota('.json_encode($quota).')});', 'foot');
+     $quota = '';
+     }
+