示例#1
0
 /**
  * Helper function to set an address in vObject
  */
 protected function setVCardAddress($vCard, $addressType, &$contactProperties, $propertyPrefix)
 {
     $this->logger->trace("setVCardAddress - {$addressType}");
     $p = $this->bridge->getExtendedProperties();
     $address = array();
     if (isset($contactProperties[$p[$propertyPrefix . "_address"]])) {
         $address[] = '';
         // post office box
         $address[] = '';
         // extended address
         $address[] = isset($contactProperties[$p[$propertyPrefix . '_address_street']]) ? $contactProperties[$p[$propertyPrefix . '_address_street']] : '';
         $address[] = isset($contactProperties[$p[$propertyPrefix . '_address_city']]) ? $contactProperties[$p[$propertyPrefix . '_address_city']] : '';
         $address[] = isset($contactProperties[$p[$propertyPrefix . '_address_state']]) ? $contactProperties[$p[$propertyPrefix . '_address_state']] : '';
         $address[] = isset($contactProperties[$p[$propertyPrefix . '_address_postal_code']]) ? $contactProperties[$p[$propertyPrefix . '_address_postal_code']] : '';
         $address[] = isset($contactProperties[$p[$propertyPrefix . '_address_country']]) ? $contactProperties[$p[$propertyPrefix . '_address_country']] : '';
     }
     $address = implode(';', $address);
     if ($address != ';;;;;;') {
         $this->logger->trace("Not empty address - adding {$address}");
         $element = new Sabre_VObject_Property('ADR');
         $element->setValue($address);
         $element->offsetSet('TYPE', $addressType);
         $vCard->add($element);
     }
 }