protected function resolveContactWebFormEntry($contactWebForm, $contact) { $contactFormAttributes = $_POST['Contact']; $contactFormAttributes['owner'] = $contactWebForm->defaultOwner->id; $contactFormAttributes['state'] = $contactWebForm->defaultState->id; if ($contact->validate()) { $contactWebFormEntryStatus = ContactWebFormEntry::STATUS_SUCCESS; $contactWebFormEntryMessage = ContactWebFormEntry::STATUS_SUCCESS_MESSAGE; } else { $contactWebFormEntryStatus = ContactWebFormEntry::STATUS_ERROR; $contactWebFormEntryMessage = ContactWebFormEntry::STATUS_ERROR_MESSAGE; } if (isset($contact->id) && intval($contact->id) > 0) { $contactWebFormEntryContact = $contact; } else { $contactWebFormEntryContact = null; } $hashIndex = Yii::app()->getRequest()->getPost(ContactWebFormEntry::HASH_INDEX_HIDDEN_FIELD); $contactWebFormEntry = ContactWebFormEntry::getByHashIndex($hashIndex); if ($contactWebFormEntry === null) { $contactWebFormEntry = new ContactWebFormEntry(); } $contactWebFormEntry->serializedData = serialize($contactFormAttributes); $contactWebFormEntry->status = $contactWebFormEntryStatus; $contactWebFormEntry->message = $contactWebFormEntryMessage; $contactWebFormEntry->contactWebForm = $contactWebForm; $contactWebFormEntry->contact = $contactWebFormEntryContact; $contactWebFormEntry->hashIndex = $hashIndex; $contactWebFormEntry->save(); }