예제 #1
0
파일: metaweblog.php 프로젝트: armpit/e107
        foreach ($meta_tags as $key => $value) {
            $structArray[] = new xmlrpcval(array('tag_id' => new xmlrpcval($key, 'string'), 'name' => new xmlrpcval($value, 'string'), 'count' => new xmlrpcval('1', 'string'), 'slug' => new xmlrpcval('1', 'string'), 'html_url' => new xmlrpcval('1', 'string'), 'rss_url' => new xmlrpcval('1', 'string')), 'struct');
        }
        return new xmlrpcresp(new xmlrpcval($structArray, 'array'));
        // Return type is struct[] (array of struct)
    } else {
        return new xmlrpcresp(0, $xmlrpcerruser + 1, 'Login Failed');
    }
}
//
//METHODS DECLARATION
//
$o = new xmlrpc_server_methods_container();
$a = array('blogger.getUsersBlogs' => array('function' => 'getUsersBlogs', 'docstring' => $getUsersBlogs_doc, 'signature' => $getUsersBlogs_sig), 'metaWeblog.newPost' => array('function' => 'newPost', 'signature' => $newPost_sig, 'docstring' => $newPost_doc), 'metaWeblog.editPost' => array('function' => 'editPost', 'signature' => $editPost_sig, 'docstring' => $editPost_doc), 'metaWeblog.getPost' => array('function' => 'getPost', 'signature' => $getPost_sig, 'docstring' => $getPost_doc), 'metaWeblog.getRecentPosts' => array('function' => 'getRecentPosts', 'signature' => $getRecentPosts_sig, 'docstring' => $getRecentPosts_doc), 'metaWeblog.getCategories' => array('function' => 'getCategories', 'signature' => $getCategories_sig, 'docstring' => $getCategories_doc), 'metaWeblog.newMediaObject' => array('function' => 'newMediaObject', 'signature' => $newMediaObject_sig, 'docstring' => $newMediaObject_doc), 'blogger.deletePost' => array('function' => 'deletePost', 'docstring' => 'Deletes a post.', 'signature' => array(array($xmlrpcBoolean, $xmlrpcString, $xmlrpcString, $xmlrpcString, $xmlrpcString, $xmlrpcBoolean))), 'wp.getPage' => array('function' => 'getPage', 'signature' => $getPage_sig, 'docstring' => $getPage_doc), 'wp.getPages' => array('function' => 'getPages', 'signature' => $getPages_sig, 'docstring' => $getPages_doc), 'wp.newPage' => array('function' => 'newPage', 'signature' => $newPage_sig, 'docstring' => $newPage_doc), 'wp.deletePage' => array('function' => 'deletePage', 'signature' => $deletePage_sig, 'docstring' => $deletePage_doc), 'wp.editPage' => array('function' => 'editPage', 'signature' => $editPage_sig, 'docstring' => $editPage_doc), 'wp.getPageList' => array('function' => 'getPageList', 'signature' => $getPageList_sig, 'docstring' => $getPageList_doc), 'wp.getAuthors' => array('function' => 'getAuthors', 'signature' => $getAuthors_sig, 'docstring' => $getAuthors_doc), 'wp.getCategories' => array('function' => 'getCategories', 'signature' => $getCategories_sig, 'docstring' => $getCategories_doc), 'wp.getTags' => array('function' => 'getTags', 'signature' => $getTags_sig, 'docstring' => $getTags_doc), 'wp.newCategory' => array('function' => 'newCategory', 'signature' => $newCategory_sig, 'docstring' => $newCategory_doc), 'wp.deleteCategory' => array('function' => 'deleteCategory', 'signature' => $deleteCategory_sig, 'docstring' => $deleteCategory_doc), 'wp.uploadFile' => array('function' => 'newMediaObject', 'signature' => $newMediaObject_sig, 'docstring' => $newMediaObject_doc), 'mt.getCategoryList' => array('function' => 'getCategoryList', 'signature' => $getCategoryList_sig, 'docstring' => $getCategoryList_doc), 'mt.setPostCategories' => array('function' => 'setPostCategories', 'signature' => $setPostCategories_sig, 'docstring' => $setPostCategories_doc), 'mt.getPostCategories' => array('function' => 'getPostCategories', 'signature' => $getPostCategories_sig, 'docstring' => $getPostCategories_doc));
$s = new xmlrpc_server($a, false);
$s->setdebug(1);
$s->service();
// that should do all we need!
/*
 *********************************************
 ********** XML FUNCTIONS  *******************
 *********************************************
 */
//19/08/2009 13.36.16 unused!
function checkXmlElement($xml, $element)
{
    // DOMElement->getElementsByTagName() -- Gets elements by tagname
    // nodeValue : The value of this node, depending on its type.
    // Load XML File. You can use loadXML if you wish to load XML data from a string
    $objDOM = new DOMDocument();
    $objDOM->loadXML($xml);
예제 #2
0
    global $xmlrpcName, $xmlrpcVersion, $SERVER_SOFTWARE;
    $ret = array("toolkitDocsUrl" => "http://phpxmlrpc.sourceforge.net/", "toolkitName" => $xmlrpcName, "toolkitVersion" => $xmlrpcVersion, "toolkitOperatingSystem" => isset($SERVER_SOFTWARE) ? $SERVER_SOFTWARE : $_SERVER['SERVER_SOFTWARE']);
    return new xmlrpcresp(php_xmlrpc_encode($ret));
}
$o = new xmlrpc_server_methods_container();
$a = array("examples.getStateName" => array("function" => "findstate", "signature" => $findstate_sig, "docstring" => $findstate_doc), "examples.sortByAge" => array("function" => "agesorter", "signature" => $agesorter_sig, "docstring" => $agesorter_doc), "examples.addtwo" => array("function" => "addtwo", "signature" => $addtwo_sig, "docstring" => $addtwo_doc), "examples.addtwodouble" => array("function" => "addtwodouble", "signature" => $addtwodouble_sig, "docstring" => $addtwodouble_doc), "examples.stringecho" => array("function" => "stringecho", "signature" => $stringecho_sig, "docstring" => $stringecho_doc), "examples.echo" => array("function" => "echoback", "signature" => $echoback_sig, "docstring" => $echoback_doc), "examples.decode64" => array("function" => "echosixtyfour", "signature" => $echosixtyfour_sig, "docstring" => $echosixtyfour_doc), "examples.invertBooleans" => array("function" => "bitflipper", "signature" => $bitflipper_sig, "docstring" => $bitflipper_doc), "examples.generatePHPWarning" => array("function" => array($o, "phpwarninggenerator")), "examples.raiseException" => array("function" => array($o, "exceptiongenerator")), "examples.getallheaders" => array("function" => 'getallheaders_xmlrpc', "signature" => $getallheaders_sig, "docstring" => $getallheaders_doc), "examples.setcookies" => array("function" => 'setcookies', "signature" => $setcookies_sig, "docstring" => $setcookies_doc), "examples.getcookies" => array("function" => 'getcookies', "signature" => $getcookies_sig, "docstring" => $getcookies_doc), "mail.send" => array("function" => "mail_send", "signature" => $mail_send_sig, "docstring" => $mail_send_doc), "validator1.arrayOfStructsTest" => array("function" => "v1_arrayOfStructs", "signature" => $v1_arrayOfStructs_sig, "docstring" => $v1_arrayOfStructs_doc), "validator1.easyStructTest" => array("function" => "v1_easyStruct", "signature" => $v1_easyStruct_sig, "docstring" => $v1_easyStruct_doc), "validator1.echoStructTest" => array("function" => "v1_echoStruct", "signature" => $v1_echoStruct_sig, "docstring" => $v1_echoStruct_doc), "validator1.manyTypesTest" => array("function" => "v1_manyTypes", "signature" => $v1_manyTypes_sig, "docstring" => $v1_manyTypes_doc), "validator1.moderateSizeArrayCheck" => array("function" => "v1_moderateSizeArrayCheck", "signature" => $v1_moderateSizeArrayCheck_sig, "docstring" => $v1_moderateSizeArrayCheck_doc), "validator1.simpleStructReturnTest" => array("function" => "v1_simpleStructReturn", "signature" => $v1_simpleStructReturn_sig, "docstring" => $v1_simpleStructReturn_doc), "validator1.nestedStructTest" => array("function" => "v1_nestedStruct", "signature" => $v1_nestedStruct_sig, "docstring" => $v1_nestedStruct_doc), "validator1.countTheEntities" => array("function" => "v1_countTheEntities", "signature" => $v1_countTheEntities_sig, "docstring" => $v1_countTheEntities_doc), "interopEchoTests.echoString" => array("function" => "i_echoString", "signature" => $i_echoString_sig, "docstring" => $i_echoString_doc), "interopEchoTests.echoStringArray" => array("function" => "i_echoStringArray", "signature" => $i_echoStringArray_sig, "docstring" => $i_echoStringArray_doc), "interopEchoTests.echoInteger" => array("function" => "i_echoInteger", "signature" => $i_echoInteger_sig, "docstring" => $i_echoInteger_doc), "interopEchoTests.echoIntegerArray" => array("function" => "i_echoIntegerArray", "signature" => $i_echoIntegerArray_sig, "docstring" => $i_echoIntegerArray_doc), "interopEchoTests.echoFloat" => array("function" => "i_echoFloat", "signature" => $i_echoFloat_sig, "docstring" => $i_echoFloat_doc), "interopEchoTests.echoFloatArray" => array("function" => "i_echoFloatArray", "signature" => $i_echoFloatArray_sig, "docstring" => $i_echoFloatArray_doc), "interopEchoTests.echoStruct" => array("function" => "i_echoStruct", "signature" => $i_echoStruct_sig, "docstring" => $i_echoStruct_doc), "interopEchoTests.echoStructArray" => array("function" => "i_echoStructArray", "signature" => $i_echoStructArray_sig, "docstring" => $i_echoStructArray_doc), "interopEchoTests.echoValue" => array("function" => "i_echoValue", "signature" => $i_echoValue_sig, "docstring" => $i_echoValue_doc), "interopEchoTests.echoBase64" => array("function" => "i_echoBase64", "signature" => $i_echoBase64_sig, "docstring" => $i_echoBase64_doc), "interopEchoTests.echoDate" => array("function" => "i_echoDate", "signature" => $i_echoDate_sig, "docstring" => $i_echoDate_doc), "interopEchoTests.whichToolkit" => array("function" => "i_whichToolkit", "signature" => $i_whichToolkit_sig, "docstring" => $i_whichToolkit_doc));
if ($findstate2_sig) {
    $a['examples.php.getStateName'] = $findstate2_sig;
}
if ($findstate3_sig) {
    $a['examples.php2.getStateName'] = $findstate3_sig;
}
if ($findstate4_sig) {
    $a['examples.php3.getStateName'] = $findstate4_sig;
}
if ($findstate5_sig) {
    $a['examples.php4.getStateName'] = $findstate5_sig;
}
$s = new xmlrpc_server($a, false);
$s->setdebug(3);
$s->compress_response = true;
// out-of-band information: let the client manipulate the server operations.
// we do this to help the testsuite script: do not reproduce in production!
if (isset($_GET['RESPONSE_ENCODING'])) {
    $s->response_charset_encoding = $_GET['RESPONSE_ENCODING'];
}
if (isset($_GET['EXCEPTION_HANDLING'])) {
    $s->exception_handling = $_GET['EXCEPTION_HANDLING'];
}
$s->service();
// that should do all we need!
예제 #3
0
<?php

if (isset($GLOBALS['HTTP_RAW_POST_DATA'])) {
    if (defined('XMLRPCDBG')) {
        logfile(array($GLOBALS['HTTP_RAW_POST_DATA']), 'xmlrpcdbglog');
    }
}
include_once FLGR_COMMON . '/rfunctions.php';
$xmlrpc_server = new xmlrpc_server($manifesto_xmlrpc, false);
//dbg($xmlrpc_server, 'server object');
$xmlrpc_server->setdebug(3);
//$xmlrpc_server->compress_response = true;
$xmlrpc_server->compress_response = false;
//$xmlrpc_server->allow_system_funcs = false;
$xmlrpc_server->debug = false;
// out-of-band information: let the client manipulate the server operations.
// we do this to help the testsuite script: do not reproduce in production!
if (isset($_GET['RESPONSE_ENCODING'])) {
    $xmlrpc_server->response_charset_encoding = $_GET['RESPONSE_ENCODING'];
}
$xmlrpc_server->service();
// that should do all we need!
exit;