/** * Converts a basic SMS object from the database to a useful * full-fat data object * @param object $stdObject DB object to upgrade * @return MoodletxtOutboundSMS Full data object with children * @version 2013081501 * @since 2012031901 */ private function convertSMSStandardClassToBeans($stdObject) { $sms = new MoodletxtOutboundSMS($stdObject->messageid, $stdObject->ticketnumber, $stdObject->messagetext); $sms->setId($stdObject->id); // Build recipient if (isset($stdObject->contactfirst) || isset($stdObject->contactlast) || isset($stdObject->company)) { $sms->setRecipientObject(new MoodletxtAddressbookRecipient(new MoodletxtPhoneNumber($stdObject->destination), $stdObject->contactfirst, $stdObject->contactlast, $stdObject->company, $stdObject->contactid)); } else { if (isset($stdObject->userfirst) || isset($stdObject->userlast)) { $sms->setRecipientObject(new MoodletxtBiteSizedUser($stdObject->userid, $stdObject->username, $stdObject->userfirst, $stdObject->userlast, new MoodletxtPhoneNumber($stdObject->destination))); } else { $sms->setRecipientObject(new MoodletxtAdditionalRecipient(new MoodletxtPhoneNumber($stdObject->destination), $stdObject->sendfirstname, $stdObject->sendlastname)); } } // Optionally drop in statuses, if they were retrieved if (isset($stdObject->status) && $stdObject->status != null) { $sms->setStatusUpdates(array(new MoodletxtOutboundSMSStatus($stdObject->ticketnumber, $stdObject->status, $stdObject->statusmessage, $stdObject->updatetime, $stdObject->statusid))); } return $sms; }