function phpgw_xmlrpc_encode($php_val) { $type = gettype($php_val); $xmlrpc_val = CreateObject('phpgwapi.xmlrpcval'); switch ($type) { case "array": case "object": $arr = array(); while (list($k, $v) = each($php_val)) { $arr[$k] = phpgw_xmlrpc_encode($v); } $xmlrpc_val->addStruct($arr); break; case "integer": $xmlrpc_val->addScalar($php_val, xmlrpcInt); break; case "double": $xmlrpc_val->addScalar($php_val, xmlrpcDouble); break; case "string": $xmlrpc_val->addScalar($php_val, xmlrpcString); break; // <G_Giunta_2001-02-29> // Add support for encoding/decoding of booleans, since they are supported in PHP // <G_Giunta_2001-02-29> // Add support for encoding/decoding of booleans, since they are supported in PHP case "boolean": $xmlrpc_val->addScalar($php_val, xmlrpcBoolean); break; // </G_Giunta_2001-02-29> // </G_Giunta_2001-02-29> case "unknown type": default: $xmlrpc_val = false; break; } return $xmlrpc_val; }
function i_whichToolkit($m) { $ret = array('toolkitDocsUrl' => 'http://xmlrpc.usefulinc.com/php.html', 'toolkitName' => $GLOBALS['xmlrpcName'], 'toolkitVersion' => $GLOBALS['xmlrpcVersion'], 'toolkitOperatingSystem' => $GLOBALS['SERVER_SOFTWARE']); return CreateObject('phpgwapi.xmlrpcresp', phpgw_xmlrpc_encode($ret)); }