| | |
| | | |
| | | public function getIntegrationFields():array |
| | | { |
| | | if ($this->registrar && $this->registrar->getType() === 'user' && $this->config->isCustomer()) { |
| | | return JVB()->connect($this->service_name)->getAdditionalFields('customer'); |
| | | } |
| | | $fields = [ |
| | | 'share_to_'.$this->service_name => [ |
| | | 'type' => 'true_false', |
| | |
| | | } |
| | | |
| | | if ($this->config->getCanSchedule()) { |
| | | $fields['schedule_'.$this->service_name] = [ |
| | | $fields['_'.$this->service_name.'_scheduled_at'] = [ |
| | | 'type' => 'datetime', |
| | | 'label' => 'Schedule for later?', |
| | | 'condition' => [ |
| | |
| | | } |
| | | $additional = JVB()->connect($this->service_name)->getAdditionalFields($this->config->getContentType()); |
| | | if (!empty($additional)) { |
| | | $additional = array_combine( |
| | | array_map(fn($k) => str_starts_with($k, '_'.$this->service_name) ? $k : "_{$this->service_name}_{$k}", array_keys($additional)), |
| | | $additional |
| | | ); |
| | | $fields = array_merge($fields, $additional); |
| | | } |
| | | return $fields; |