/** * Public function that gets a list of first 50 events in the account * * @return array $allEvents - an array of two arrays, array 1 is event objects, array 2 is link for next 50 events */ public function listEvents() { $utility = new CTCTUtility(); $return = $utility->httpGet($utility->getApiPath() . '/ws/customers/' . $utility->getLogin() . '/events'); $allEvents = array(); $eventArray = array(); $returnedXml = str_replace('atom:', '', $return['xml']); $eventList = array(); $pages = array(); $xml = simplexml_load_string($returnedXml); foreach ($xml->entry as $item) { $eventArray['event_link'] = $item->link['href']; $eventArray['event_name'] = $item->content->Event->Name; $eventArray['event_description'] = $item->content->Event->Description; $eventArray['event_title'] = $item->Event->content->Title; $eventArray['registered'] = $item->content->Event->Registered; $eventArray['created_date'] = $item->content->Event->CreatedDate; $eventArray['event_status'] = $item->content->Event->Status; $eventArray['event_type'] = $item->content->Event->EventType; $eventArray['event_start'] = $item->content->Event->StartDate; $eventArray['event_end'] = $item->content->Event->EndDate; $eventArray['event_publishdate'] = $item->content->Event->PublishDate; $eventArray['event_webpage'] = $item->content->Event->WebPage; $eventArray['attended_count'] = $item->content->Event->AttendedCount; $eventArray['cancelled_count'] = $item->content->Event->CancelledCount; $eventArray['location'] = $item->content->Event->EventLocation->Location; $eventArray['event_addr1'] = $item->content->Event->EventLocation->Address1; $eventArray['event_addr2'] = $item->content->Event->EventLocation->Address2; $eventArray['event_addr3'] = $item->content->Event->EventLocation->Address3; $eventArray['event_city'] = $item->content->Event->EventLocation->City; $eventArray['event_state'] = $item->content->Event->EventLocation->State; $eventArray['event_country'] = $item->content->Event->EventLocation->Country; $eventArray['event_postalcode'] = $item->content->Event->EventLocation->PostalCode; $event = new CTCTEvent($eventArray); $eventList[] = $event; } if ($xml->link[2]) { $pages[] = $xml->link[2]->Attributes()->href; } $allEvents = array($eventList, $pages); return $allEvents; }
protected static function validateApi() { $utility = new CTCTUtility(); $return = $utility->httpGet($utility->getApiPath() . '/ws/customers/' . $utility->getLogin() . '/contacts?email=' . urlencode('*****@*****.**')); return $return['info']['http_code'] === 200 && empty($return['error']); }