| | |
| | | list($col, $type) = explode(':', $col); |
| | | if (!is_array($this->coltypes[$col])) { |
| | | $subtypes = $type ? array($type) : null; |
| | | $this->coltypes[$col] = array('limit' => 2, 'subtypes' => $subtypes); |
| | | $this->coltypes[$col] = array('limit' => 1, 'subtypes' => $subtypes); |
| | | } |
| | | elseif ($type) { |
| | | $this->coltypes[$col]['subtypes'][] = $type; |
| | |
| | | $this->fieldmap[$col] = $lf; |
| | | } |
| | | |
| | | if ($this->fieldmap['street'] && $this->fieldmap['locality']) |
| | | $this->coltypes['address'] = array('limit' => 1); |
| | | // support for composite address |
| | | if ($this->fieldmap['street'] && $this->fieldmap['locality']) { |
| | | $this->coltypes['address'] = array('limit' => max(1, $this->coltypes['locality']['limit']), 'subtypes' => $this->coltypes['locality']['subtypes']); |
| | | foreach (array('street','locality','zipcode','region','country') as $childcol) |
| | | unset($this->coltypes[$childcol]); // remove address child col from global coltypes list |
| | | } |
| | | else if ($this->coltypes['address']) |
| | | $this->coltypes['address'] = array('type' => 'textarea', 'childs' => null, 'limit' => 1, 'size' => 40); |
| | | |