HEX
Server: LiteSpeed
System: Linux venus 5.15.0-153-generic #163-Ubuntu SMP Thu Aug 7 16:37:18 UTC 2025 x86_64
User: axxoncom (1007)
PHP: 8.3.19
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/axxoncom/domains/ogundem.xyz/public_html/wp-content/themes/spectra-one/inc/admin/settings.php
<?php
/**
 * Admin Global settings route.
 *
 * @package Spectra One
 * @author Brainstorm Force
 * @since 1.0.2
 */

declare(strict_types=1);

namespace Swt;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

add_action( 'rest_api_init', SWT_NS . 'create_rest_routes' );

/**
 * Creating rest routes
 *
 * @since 1.0.2
 * @return void
 */
function create_rest_routes(): void {
	register_rest_route(
		'swt/v1',
		'/global_settings',
		array(
			array(
				'methods'             => \WP_REST_Server::READABLE,
				'callback'            => SWT_NS . 'swt_get_global_settings',
				'permission_callback' => static function () {
					return true;
				},
			),
			array(
				'methods'             => \WP_REST_Server::EDITABLE,
				'callback'            => SWT_NS . 'swt_update_global_settings',
				'permission_callback' => static function () {
					return current_user_can( 'edit_theme_options' );
				},
			),
		)
	);
}

/**
 * Get configs
 *
 * @since 1.0.2
 * @param \WP_REST_Request $request Full details about the request.
 * @return \WP_REST_Response|\WP_Error Response object on success, or WP_Error object on failure.
 */
function swt_get_global_settings( \WP_REST_Request $request ) {
	$settings = get_option( 'swt_theme_options' );

	return rest_ensure_response( $settings );
}

/**
 * Set configs
 *
 * @param \WP_REST_Request $request Full details about the request.
 * @return \WP_REST_Response|\WP_Error Response object on success, or WP_Error object on failure.
 * @since 1.0.2
 */
function swt_update_global_settings( \WP_REST_Request $request ) {

	$fields = isset( $request['setting'] ) ? $request['setting'] : array();

	if ( ! empty( $fields ) ) {
		update_option( 'swt_theme_options', $fields );
	}

	return rest_ensure_response( 'success' );
}