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/fobiler.xyz/public_html/wp-content/plugins/instant-images/api/settings.php
<?php
/**
 * Custom /settings route to update plugin settings.
 *
 * @author ConnektMedia <support@connekthq.com>
 * @since 4.5
 * @package InstantImages
 */

add_action(
	'rest_api_init',
	function () {
		$my_namespace = 'instant-images';
		$my_endpoint  = '/settings';
		register_rest_route(
			$my_namespace,
			$my_endpoint,
			[
				'methods'             => 'POST',
				'callback'            => 'instant_images_settings',
				'permission_callback' => function () {
					return InstantImages::instant_img_has_settings_access();
				},
			]
		);
	}
);

/**
 * Save plugin settings.
 *
 * @param WP_REST_Request $request API request.
 * @author ConnektMedia <support@connekthq.com>
 * @package InstantImages
 */
function instant_images_settings( WP_REST_Request $request ) {
	if ( InstantImages::instant_img_has_settings_access() ) {

		// Get JSON Data.
		$data = json_decode( $request->get_body(), true ); // Get contents of request body.

		if ( $data ) {
			$option = INSTANT_IMAGES_API_SETTINGS;

			// Global settings.
			$options = get_option( $option );
			$setting = sanitize_text_field( $data['setting'] ); // The setting to update.
			$value   = sanitize_text_field( $data['value'] ); // The value to update.

			if ( $setting ) {
				$options[ $setting ] = $value;
				update_option( $option, $options );

				// Success.
				$response = [
					'success' => true,
					'msg'     => __( 'Settings saved.', 'instant-images' ),
				];
			} else {
				// Error.
				$response = [
					'success' => false,
					'msg'     => __( 'Unable to save settings.', 'instant-images' ),
				];
			}

			// Send response as JSON.
			wp_send_json( $response );

		}
	}
}