update Debian packaging
[diogenes.git] / include / Tree / Node.php
index 04668ba..9006ea7 100644 (file)
@@ -43,23 +43,24 @@ function var_encode_text($var, $level = 0, $no_children = FALSE, $tabstr = '  ',
     {
       $code .= str_repeat($tabstr, $level+1) . "* children" . $eol;
       foreach ($var->children as $index => $child)
+      {
         $code .= str_repeat($tabstr, $level+2) . "index : $index" . $eol;
         $code .= var_encode_text($child, $level+2, $no_children, $tabstr, $eol);
+      }
     }
     return $code;
   } elseif (is_array($var)) {
     $arraysep = ",$eol";
-    $code = "array(".$eol;
+    $vcode = '';
     foreach ($var as $key => $value) {
-      $code .= str_repeat($tabstr, $level + 1);
-      $code .= "'$key'=>".var_encode_text($value, $level + 1, $no_children, $tabstr, $eol);
-      $code .= $arraysep;
+      $vcode .= str_repeat($tabstr, $level + 1);
+      $vcode .= "'$key'=>".var_encode_text($value, $level + 1, $no_children, $tabstr, $eol);
+      $vcode .= $arraysep;
     }
-    if (substr($code, -strlen($arraysep)))
-      $code = substr($code, 0, - strlen($arraysep));
-    $code .= $eol;
-    //$code = chop($code, ','); //remove unnecessary coma
-    $code .= str_repeat($tabstr, $level) . ")";
+    if (substr($vcode, -strlen($arraysep)) == $arraysep)
+      $vcode = substr($vcode, 0, - strlen($arraysep));
+
+    $code = "array(".($vcode ? "$eol$vcode$eol".str_repeat($tabstr, $level)  : ""). ")";
     return $code;
   } elseif (is_scalar($var)) {
     return "'".$var."'";