Files
2026-07-02 15:54:39 -06:00

38 lines
1.0 KiB
PHP

<?php
namespace Gravity_Forms\Gravity_SMTP\Data_Store;
use Gravity_Forms\Gravity_SMTP\Connectors\Endpoints\Save_Connector_Settings_Endpoint;
class Plugin_Opts_Data_Store implements Data_Store {
public function get( $setting_name, $connector = 'config', $default = null ) {
$opts = $this->get_opts();
return isset( $opts[ $setting_name ] ) ? $opts[ $setting_name ] : $default;
}
public function save( $setting_name, $value, $connector = 'config' ) {
$opts_name = sprintf( 'gravitysmtp_%s', strtolower( $connector ) );
$opts = $this->get_opts();
$opts[ $setting_name ] = $value;
update_option( $opts_name, json_encode( $opts ) );
}
public function save_all( $value, $connector = 'config' ) {
$opts_name = sprintf( 'gravitysmtp_%s', strtolower( $connector ) );
update_option( $opts_name, json_encode( $value ) );
}
private function get_opts() {
$opts_name = 'gravitysmtp_config';
$opts = get_option( $opts_name, '{}' );
$opts = json_decode( $opts, true );
return $opts;
}
}