[ Index ] |
PHP Cross Reference of Textpattern 4.0.8 |
[Summary view] [Print] [Text view]
1 <?php 2 /* 3 XML-RPC Server for Textpattern 4.0.x 4 http://txp.kusor.com/rpc-api 5 (C)2005-2006 The Textpattern Development Team - http://textpattern.com 6 @author Pedro Palazón - http://kusor.com 7 $HeadURL: https://textpattern.googlecode.com/svn/releases/4.0.8/source/rpc/index.php $ 8 $LastChangedRevision: 2998 $ 9 */ 10 11 #TODO: change error reporting to E_ALL, including E_NOTICE to detect subtle bugs? 12 error_reporting(E_ALL & ~E_NOTICE); 13 #TODO: if display_errors is set to 0... who will ever see errors? 14 ini_set("display_errors","0"); 15 16 if (@ini_get('register_globals')) 17 foreach ( $_REQUEST as $name => $value ) 18 unset($$name); 19 20 define('txpath', dirname(dirname(__FILE__)).'/textpattern'); 21 define('txpinterface','xmlrpc'); 22 23 require_once txpath.'/config.php'; 24 require_once txpath.'/lib/txplib_db.php'; 25 require_once txpath.'/lib/txplib_misc.php'; 26 require_once txpath.'/lib/admin_config.php'; 27 require_once txpath.'/lib/IXRClass.php'; 28 29 if ($connected && safe_query("describe `".PFX."textpattern`")) 30 { 31 #TODO: where is dbversion used? 32 $dbversion = safe_field('val','txp_prefs',"name = 'version'"); 33 34 // Hold it globally, instead of do several calls to the function 35 $prefs = get_prefs(); 36 extract($prefs); 37 38 if (!defined('LANG')) define("LANG", $language); 39 if (!defined('hu')) define("hu", 'http://'.$siteurl.'/'); 40 if (!defined('txrpcpath')) define('txrpcpath', hu.'rpc/'); 41 42 if (!empty($locale)) setlocale(LC_ALL, $locale); 43 $textarray = load_lang(LANG); 44 45 #TODO: include txplib_html instead of duplicating? 46 // from txplib_html.php 47 if (!defined('t')) define("t", "\t"); 48 if (!defined('n')) define("n", "\n"); 49 if (!defined('br')) define("br", "<br />"); 50 if (!defined('sp')) define("sp", " "); 51 if (!defined('a')) define("a", "&"); 52 } 53 54 require_once txpath.'/lib/txplib_wrapper.php'; 55 require_once 'TXP_RPCServer.php'; 56 57 // run the XML-RPC Server 58 $server = new TXP_RPCServer(); 59 $server->serve(); 60 61 #TODO: remove before official release? 62 // save some debug logs: 63 function write_log() 64 { 65 global $HTTP_RAW_POST_DATA; 66 67 if (!defined('txpdmpfile')) define('txpdmpfile', 'txpxmlrpc.txt'); 68 69 $fp = @fopen(dirname(__FILE__).DIRECTORY_SEPARATOR.'xmlrpclog','a'); 70 71 if ($fp) 72 { 73 $lnsep = "\n================================\n"; 74 fwrite($fp, "\n$lnsep".strftime("%Y-%m-%d %H:%M:%S")); 75 fwrite($fp, '[USER_AGENT] '.$_SERVER['HTTP_USER_AGENT']); 76 fwrite($fp, $lnsep); 77 fwrite($fp, '[ACCEPT_ENCODING] '.$_SERVER['HTTP_ACCEPT_ENCODING']); 78 79 if (strpos(strtolower($_SERVER['SERVER_SOFTWARE']),'apache')!==false && is_callable('getallheaders')) 80 { 81 fwrite($fp, $lnsep); 82 fwrite($fp, "Apache Request Headers:\n"); 83 fwrite($fp, $lnsep); 84 $headers = getallheaders(); 85 86 foreach ($headers as $header => $value) 87 { 88 fwrite($fp, "$header: $value \n"); 89 } 90 } 91 92 fwrite($fp, $lnsep); 93 fwrite($fp,"Incoming data, usually utf-8 encoded:\n"); 94 fwrite($fp, $lnsep); 95 fwrite($fp, $HTTP_RAW_POST_DATA); 96 fclose($fp); 97 } 98 } 99 100 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Thu May 21 23:03:01 2009 | Cross-referenced by PHPXref 0.7 |