*/ class Simple_Job_Board_Settings_Init { /** * Initialize the class and set its properties. * * @since 2.2.3 */ public function __construct() { /** * The class responsible for defining all the plugin general settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-general.php'; // Check if General Settings Class Exists if (class_exists('Simple_Job_Board_Settings_General')) { // Initialize General Settings class new Simple_Job_Board_Settings_General(); } /** * The class responsible for defining all the plugin appearance settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-appearance.php'; // Check if Appearance Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Appearance')) { // Initialize Appearance Settings Class new Simple_Job_Board_Settings_Appearance(); } /** * The class responsible for defining all the plugin job features settings that occur in the admin area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-job-features.php'; // Check if Job Features Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Job_Features')) { // Initialize Job Features Class new Simple_Job_Board_Settings_Job_Features(); } /** * The class responsible for defining all the plugin job application form settings that occur in the admin area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-application-form-fields.php'; // Check if Job Application Form Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Application_Form_Fields')) { // Initialize Job Application Form Settings Class new Simple_Job_Board_Settings_Application_Form_Fields(); } /** * The class responsible for defining all the plugin job filters settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-filters.php'; // Check if Job Filters Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Filters')) { // Initialize Job Filters Settings Class new Simple_Job_Board_Settings_Filters(); } /** * The class responsible for defining all the plugin email notifications settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-email-notifications.php'; // Check if Email Notifications Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Email_Notifications')) { // Initialize Email Notifications Settings Class new Simple_Job_Board_Settings_Email_Notifications(); } /** * The class responsible for defining all the plugin uplaod file extensions settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-upload-file-extensions.php'; // Check if Upload File Extension Settings Class Exists if (class_exists('Simple_Job_Board_Settings_Upload_File_Extensions')) { // Initialize Upload File Extension Settings Class new Simple_Job_Board_Settings_Upload_File_Extensions(); } /** * The class responsible for defining all the plugin uplaod file extensions settings that occur in the frontend area. */ require_once plugin_dir_path(dirname(__FILE__)) . 'admin/settings/class-simple-job-board-settings-privacy.php'; // Check if Simple_Job_Board_GDPR_Settings Class Exists if (class_exists('Simple_Job_Board_Privacy')) { // Initialize Simple_Job_Board_GDPR_Settings Class new Simple_Job_Board_Privacy(); } // Action - Add Settings Menu add_action('admin_menu', array($this, 'sjb_admin_menu'), 12); // Action - Save Settings add_action('admin_notices', array($this, 'sjb_save_settings')); } /** * Add Settings Page Under Job Board Menu. * * @since 2.0.0 */ public function sjb_admin_menu() { add_submenu_page('edit.php?post_type=jobpost', esc_html__('Settings', 'simple-job-board'), esc_html__('Settings', 'simple-job-board'), 'manage_options', 'job-board-settings', array($this, 'sjb_settings_tab_menu')); } /** * Add Settings Tab Menu. * * @Since 2.0.0 */ public function sjb_settings_tab_menu() { ?>