public function format($data, $format = null, $ignore_hidden = true)
 {
     if (!isset($data['value'])) {
         $value = array();
         foreach ($this->options['fields'] as $field) {
             $f_id = $field->getId();
             if ($ignore_hidden && $field instanceof waContactHiddenField) {
                 continue;
             }
             /**
              * @var $field waContactField
              */
             if (isset($data['data'][$f_id])) {
                 $tmp = trim($field->format($data['data'][$f_id], 'value', $data['data']));
                 if ($tmp) {
                     if (!in_array($f_id, array('country', 'region', 'zip', 'street', 'city'))) {
                         $tmp = $field->getName() . ' ' . $tmp;
                     }
                     $value[] = $tmp;
                 }
             }
         }
         $data['value'] = implode(", ", array_filter($value, 'strlen'));
     }
     return parent::format($data, $format);
 }
 public function format($data, $format = null)
 {
     if (!isset($data['value'])) {
         $value = array();
         foreach ($this->options['fields'] as $field) {
             /**
              * @var $field waContactField
              */
             if (isset($data['data'][$field->getId()])) {
                 $value[] = $field->format($data['data'][$field->getId()], 'value');
             }
         }
         $data['value'] = implode(", ", $value);
     }
     return parent::format($data, $format);
 }