| | |
| | | $this->defineInstructions(); |
| | | |
| | | parent::__construct(); |
| | | $this->defineActions(); |
| | | } |
| | | |
| | | protected function defineFields():void |
| | | { |
| | | $token = $this->addField('service_token', 'Server API Token', 'text', 'manage_options'); |
| | | $token->setSubType('password'); |
| | | $token->makeSetupField(); |
| | | $this->updateField('service_token', $token); |
| | | |
| | | $stream = $this->addField('message_stream', 'Message Stream ID', 'text', 'manage_options'); |
| | | $stream->setDefault('outbound'); |
| | | $stream->setHint('Message stream to use (default: outbound)'); |
| | | $stream->makeAdditionalField(); |
| | | $this->updateField('message_stream', $stream); |
| | | |
| | | $from = $this->addField('from_email', 'From Email', 'email', 'manage_options'); |
| | | $from->setPlaceholder('noreply@yourdomain.com'); |
| | | $from->setDefault(get_option('admin_email')); |
| | | $from->makeAdditionalField(); |
| | | $this->updateField('from_email', $from); |
| | | |
| | | $name = $this->addField('from_name', 'From Name', 'text', 'manage_options'); |
| | | $name->setDefault(get_bloginfo('name')); |
| | | $name->setHint('Default sender name'); |
| | | $name->makeAdditionalField(); |
| | | $this->updateField('from_name', $from); |
| | | |
| | | $opens = $this->addField('track_opens', 'Track Opens', 'select', 'manage_options'); |
| | | $opens->setOptions([ |
| | |
| | | ]); |
| | | $opens->setDefault('false'); |
| | | $opens->setHint('Track when emails are opened'); |
| | | $opens->makeAdvancedField(); |
| | | $this->updateField('track_opens', $opens); |
| | | |
| | | $links = $this->addField('track_links', 'Track Links', 'select', 'manage_options'); |
| | | $links->setOptions([ |
| | |
| | | ]); |
| | | $links->setDefault('None'); |
| | | $links->setHint('Track link clicks in emails'); |
| | | $links->makeAdvancedField(); |
| | | $this->updateField('track_links', $links); |
| | | } |
| | | protected function defineInstructions():void |
| | | { |