<?php
namespace FindStr;
class ModalSettings extends Settings {
public function __construct() {
$this->settings_option_name = 'findstrModalSettings';
/**
* Filter the modal settings save path
*
* @hook findstr_modal_setting_save_path
*
* @param {string} $settings_save_file
*
* @return {string} $settings_save_file
*/
$this->settings_save_file = apply_filters( 'findstr_modal_setting_save_path', 'findstr/modal-settings.json' );
parent::__construct();
}
/**
* Get the modal settings.
*
* @param string $option_name
* @param $default
*
* @return array
*/
public function get( string $option_name = '', $default = null ): array {
$settings = parent::get( $option_name, $default );
//deep transform the settings to ensure they are always an array
if ( ! is_array( $settings ) && is_object( $settings ) ) {
$settings = json_decode( wp_json_encode( $settings ), true );
}
return $settings;
}
}