Esempio n. 1
0
 /** -------------------------------------
 	/**  Constructor, more or less
 	/** -------------------------------------*/
 function XML_RPC_Server($functions = '', $auto = TRUE, $xss_clean = TRUE)
 {
     parent::XML_RPC();
     $this->set_system_methods();
     $this->xss_clean = $xss_clean;
     if (is_array($functions) && $auto) {
         $this->methods = $functions;
         $this->serve();
     }
 }
Esempio n. 2
0
 /** ---------------------------------
 	/**  Send Pings
 	/** ---------------------------------*/
 function send_pings($ping_servers, $blog_title, $ping_url, $rss_url)
 {
     global $DB, $PREFS;
     $sql = "SELECT server_name, server_url, port FROM exp_ping_servers WHERE id IN (";
     foreach ($ping_servers as $id) {
         $sql .= "'{$id}',";
     }
     $sql = substr($sql, 0, -1) . ') ';
     $query = $DB->query($sql);
     if ($query->num_rows == 0) {
         return FALSE;
     }
     if (!class_exists('XML_RPC')) {
         require PATH_CORE . 'core.xmlrpc' . EXT;
     }
     $XRPC = new XML_RPC();
     $result = array();
     foreach ($query->result as $row) {
         if (($response = $XRPC->weblogs_com_ping($row['server_url'], $row['port'], $blog_title, $ping_url, $rss_url)) !== TRUE) {
             $result[] = array($row['server_name'], $response);
         }
     }
     return $result;
 }
Esempio n. 3
0
 function XML_RPC_Values($val = -1, $type = '')
 {
     parent::XML_RPC();
     if ($val != -1 || $type != '') {
         $type = $type == '' ? 'string' : $type;
         if ($this->xmlrpcTypes[$type] == 1) {
             $this->addScalar($val, $type);
         } elseif ($this->xmlrpcTypes[$type] == 2) {
             $this->addArray($val);
         } elseif ($this->xmlrpcTypes[$type] == 3) {
             $this->addStruct($val);
         }
     }
 }