private function _handleCreateContact() { $scalarVals = array('firstName', 'middleName', 'lastName', 'prefix', 'suffix', 'nickname', 'organization', 'jobTitle', 'anniversary', 'gender', 'spouse', 'children', 'hobby', 'assistant'); $arrayVals = array('phone', 'phonePref', 'im', 'imPref', 'address', 'addressPref', 'email', 'emailPref', 'weburl', 'weburlPref'); $vnames = array_merge($scalarVals, $arrayVals); $vnames[] = 'createContact'; $this->copyToSession($vnames); if (!isset($_SESSION['createContact'])) { return; } $reqParams = $this->_getContactArrayData(); foreach ($scalarVals as $val) { if (isset($_SESSION[$val]) && strlen($_SESSION[$val]) > 0) { $reqParams[$val] = $_SESSION[$val]; } } try { $cc = ContactCommon::fromArray($reqParams); $aabSrvc = new AABService($this->apiFQDN, $this->getSessionToken()); $location = $aabSrvc->createContact($cc); $this->results[C_CREATE_CONTACT] = $location; $this->clearSession($vnames); } catch (Exception $e) { $this->errors[C_CONTACT_ERROR] = $e->getMessage(); $this->clearSession($vnames); } }