? .svn
? json_encoding_195509.patch
Index: json_server.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/json_server/json_server.js,v
retrieving revision 1.1
diff -u -p -r1.1 json_server.js
--- json_server.js	9 Nov 2007 17:34:57 -0000	1.1
+++ json_server.js	26 Nov 2007 21:47:36 -0000
@@ -1,4 +1,11 @@
 //$Id: json_server.js,v 1.1 2007/11/09 17:34:57 dmitrig01 Exp $
+function isArray(obj) {
+   if (obj.constructor.toString().indexOf("Array") == -1)
+      return false;
+   else
+      return true;
+}
+
 Drupal.toJson = function(v) {
   switch (typeof v) {
     case 'boolean':
@@ -8,11 +15,16 @@ Drupal.toJson = function(v) {
     case 'string':
       return '"'+ v +'"';
     case 'object':
-      var output = "{";
+      if (!isArray(v)) {
+        alert("JSON Parser Error: [Object] parameters not supported");
+        return 'null'
+      }
+      // HANDLE ARRAYS ONLY
+      a = [];
       for(i in v) {
-        output = output + i + ":" + Drupal.toJson(v[i]) + ",";
+        a.push(Drupal.toJson(v[i]));
       }
-      output = output + "}";
+      output = '[' + a.join(',') + ']';
       return output;
     default:
       return 'null';
Index: json_server.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/json_server/json_server.module,v
retrieving revision 1.6
diff -u -p -r1.6 json_server.module
--- json_server.module	9 Nov 2007 18:17:29 -0000	1.6
+++ json_server.module	26 Nov 2007 21:47:36 -0000
@@ -71,10 +71,10 @@ function drupal_parse_json($v) {
     }
   }
   elseif ($v{0} == '[') {
-    $var = explode(",", substr($v, 1, -2));
+    $var = explode(",", substr($v, 1, -1));
     $v = array();
     foreach ($var as $value) {
-      $v[] = drupal_parse_json($va[0]);
+      $v[] = drupal_parse_json($value);
     }
   }
   return $v;
