missed bits
[freeside.git] / fs_selfservice / fri / includes / freeside.class.php
1 <?php
2 class FreesideSelfService  {
3
4     //Change this to match the location of your selfservice xmlrpc.cgi or daemon
5     //var $URL = 'https://www.example.com/selfservice/xmlrpc.cgi';
6     var $URL = 'http://localhost/selfservice/xmlrpc.cgi';
7
8     function FreesideSelfService() {
9       $this;
10     }
11
12     public function __call($name, $arguments) {
13
14         error_log("[FreesideSelfService] $name called, sending to ". $this->URL);
15
16         $request = xmlrpc_encode_request("FS.SelfService.XMLRPC.$name", $arguments);
17         $context = stream_context_create( array( 'http' => array(
18             'method' => "POST",
19             'header' => "Content-Type: text/xml",
20             'content' => $request
21         )));
22         $file = file_get_contents($this->URL, false, $context);
23         if (!$file) {
24             trigger_error("[FreesideSelfService] XML-RPC communication error: file_get_contents did not return");
25         } else {
26             $response = xmlrpc_decode($file);
27             if (xmlrpc_is_fault($response)) {
28                 trigger_error("[FreesideSelfService] XML-RPC communication error: $response[faultString] ($response[faultCode])");
29             } else {
30                 //error_log("[FreesideSelfService] $response");
31                 return $response;
32             }
33         }
34     }
35
36 }
37
38 ?>