コード例 #1
0
 function testGetEmailbyId()
 {
     $params = CRM_CiviMailchimp_UtilsTest::sampleContactParams();
     $email = $params['email'][0]['email'];
     $contact = CRM_Contact_BAO_Contact::create($params);
     $contact_email_id = $contact->email[0]->id;
     $returned_email = CRM_CiviMailchimp_Utils::getEmailbyId($contact_email_id);
     $this->assertEquals($email, $returned_email->email);
 }
コード例 #2
0
/**
 * Implements hook_civicrm_pre for Individual and Organization Email.
 */
function civimailchimp_civicrm_pre_Email($op, $email_id, &$email)
{
    // We don't want to run this processing if the full contact record is edited
    // so we check for a static variable we're setting in the contact pre edit
    // hook and only continue if that is not set.
    $old_contact = civimailchimp_static('old_contact');
    if (!$old_contact) {
        // When an email is deleted, $email is empty, so we have to lookup the
        // contact ID.
        if (!empty($email['contact_id'])) {
            $contact_id = $email['contact_id'];
        } else {
            $email = CRM_CiviMailchimp_Utils::getEmailbyId($email_id);
            $contact_id = $email->contact_id;
        }
        $old_contact_from_email = CRM_CiviMailchimp_Utils::getContactById($contact_id);
        civimailchimp_static('old_contact_from_email', $old_contact_from_email);
    }
}