\WP_REST_Server::READABLE, 'callback'=>function($request){ $aligncenter_size =get_option('blocksapre_general_settings_aligncenter_size',[]); $alignwide_size =get_option('blocksapre_general_settings_alignwide_size',[]); $tablet_breakpoint =get_option('blocksapre_general_settings_tablet_breakpoint',[]); $mobile_breakpoint =get_option('blocksapre_general_settings_mobile_breakpoint',[]); return rest_ensure_response([ 'aligncenter_size'=>$aligncenter_size, 'alignwide_size'=>$alignwide_size, 'tablet_breakpoint'=>$tablet_breakpoint, 'mobile_breakpoint'=>$mobile_breakpoint, ],200); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ], )); register_rest_route('blockspare-dashboard/v1', '/updateblocksettings', array( //Endpoint to Update settings [ 'methods'=>\WP_REST_Server::EDITABLE, 'callback'=>function($request){ $settings = $request->get_params('data'); update_option('blocksapre_general_settings_aligncenter_size',$settings['aligncenter_size']); update_option('blocksapre_general_settings_alignwide_size',$settings['alignwide_size']); update_option('blocksapre_general_settings_tablet_breakpoint',$settings['tablet_breakpoint']); update_option('blocksapre_general_settings_mobile_breakpoint',$settings['mobile_breakpoint']); return rest_ensure_response([ 'success'=>'success' ],201); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ] )); //color settings register_rest_route('blockspare-dashboard/v1', '/getcolorsettings', array( //Endpoint to get settings [ 'methods' => \WP_REST_Server::READABLE, 'callback'=>function($request){ $primary =get_option('blocksapre_general_color_primary',[]); $secondary =get_option('blocksapre_general_color_secondary',[]); return rest_ensure_response([ 'primary'=>$primary, 'secondary'=>$secondary, ],200); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ], )); //updatecolor settings register_rest_route('blockspare-dashboard/v1', '/updatecolorsettings', array( //Endpoint to get settings [ 'methods'=>\WP_REST_Server::EDITABLE, 'callback'=>function($request){ $settings = $request->get_params('data'); if($settings['name']=='primary'){ update_option('blocksapre_general_color_primary',$settings['primary']); } if($settings['name']=='secondary'){ update_option('blocksapre_general_color_secondary',$settings['secondary']); } return rest_ensure_response([ 'success'=>'success' ],201); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ] )); //Typo settings register_rest_route('blockspare-dashboard/v1', '/gettyposettings', array( //Endpoint to get settings [ 'methods' => \WP_REST_Server::READABLE, 'callback'=>function($request){ $primary =get_option('blocksapre_general_primary_font',[]); return rest_ensure_response([ 'primaryFonts'=>($primary)?$primary:['value'=>'','label'=>'Default','Weight'=>[],'google'=>false], ],200); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ], )); //update typo settings register_rest_route('blockspare-dashboard/v1', '/updatetypoettings', array( //Endpoint to get settings [ 'methods'=>\WP_REST_Server::EDITABLE, 'callback'=>function($request){ $settings = $request->get_params('data'); update_option('blocksapre_general_primary_font',$settings['primaryFonts']); return rest_ensure_response([ 'primaryFonts'=>$settings, ],201); }, 'permission_callback'=>function(){ return current_user_can('manage_options'); } ] )); }