3 require_once('lib/ACConnection.php');
5 class ACUser extends ACConnection {
8 public function getUserSession($username) {
10 $fp = @fsockopen($this->adobe_connect_host, $this->adobe_connect_port);
15 $url = '/api/xml?action=login&external-auth=use';
17 fputs($fp, "GET ".$url." HTTP/1.0\r\n".$this->adobe_connect_adminpass.":".$username."\r\nHost: ".$this->adobe_connect_host."\r\n\r\n");
19 while($line = fgets($fp)) {
21 if (preg_match('/BREEZESESSION=(.*)\;/', $line, $result)) {
22 $session = explode(';', $result[1]);
23 $sessionid = $session[0];
30 if (empty($sessionid)) {
38 public function createUser($sessionid, $username, $fname, $lname) {
40 $fp = @fsockopen($this->adobe_connect_host, $this->adobe_connect_port);
45 if ($this->checkUser($sessionid, $username)) {
49 if ($fname == '' OR $fname == false OR $fname == ' ') { return false;}
50 if ($lname == '' OR $lname == false OR $lname == ' ') { return false;}
51 if ($username == '' OR $username == false OR $username == ' ') { return false;}
52 if (strlen($fname) > 40) { return false;}
53 if (strlen($lname) > 40) { return false;}
54 if (strlen($username) > 40) { return false;}
55 $username = trim($username);
57 $url = "/api/xml?action=principal-update&login=$username&first-name=$fname&has-children=0&last-name=$lname&type=user&session=$sessionid";
58 fputs($fp, "GET ".$url." HTTP/1.0\r\nHost: ".$this->adobe_connect_host."\r\n\r\n");
60 while($line = fgets($fp)) {
61 if (preg_match('/\ principal-id=\"([0-9]*)\"/', $line, $result)) {
62 $principalid = $result[1];
67 if (empty($principalid)) {
75 public function deleteUser($sessionid, $username) {
77 if (!$principalid = $this->checkUser($sessionid, $username)) {
81 $fp = @fsockopen($this->adobe_connect_host, $this->adobe_connect_port);
86 $url = "/api/xml?action=principals-delete&principal-id=$principalid&session=$sessionid";
87 fputs($fp, "GET ".$url." HTTP/1.0\r\nHost: ".$this->adobe_connect_host."\r\n\r\n");
89 $response = $this->checkResponse($fp, __FUNCTION__);
96 public function checkUser($sessionid, $username) {
98 $fp = @fsockopen($this->adobe_connect_host, $this->adobe_connect_port);
103 $url = "/api/xml?action=principal-list&filter-login=$username&session=$sessionid";
104 fputs($fp, "GET ".$url." HTTP/1.0\r\nHost: ".$this->adobe_connect_host."\r\n\r\n");
106 while($line = fgets($fp)) {
108 if (preg_match('/\ principal-id=\"([0-9]*)\"/', $line, $result)) {
109 $principalid = $result[1];
115 if (empty($principalid)) {