Server IP : 172.67.216.182 / Your IP : 162.158.88.157 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/wwwroot/coircraft.com/wp-content/plugins/caldera-forms/classes/api/ |
Upload File : |
<?php /** * REST API route for settings * * @package Caldera_Forms * @author Josh Pollock <[email protected]> * @license GPL-2.0+ * @link * @copyright 2016 CalderaWP LLC */ class Caldera_Forms_API_Settings implements Caldera_Forms_API_Route{ /** * @since 1.5.0 * @inheritdoc */ public function add_routes( $namespace ) { register_rest_route( $namespace, '/settings/entries', array( 'methods' => array( 'POST' ), 'callback' => array( $this, 'update_entry_settings' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => array( 'per_page' => array( 'required' => 'false', 'type' => 'integer', ) ) ) ); register_rest_route( $namespace, '/settings', array( 'methods' => array( 'POST' ), 'callback' => array( $this, 'update_settings' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => array( 'styleIncludes' => array( 'required' => 'false', 'type' => 'array', ), 'cdnEnable' => array( 'required' => 'false', 'type' => 'boolean', ), ) ) ); register_rest_route( $namespace, '/settings', array( 'methods' => array( 'GET' ), 'callback' => array( $this, 'get_settings' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), ) ); } /** * Update entry settings * * @since 1.5.0 * * @param WP_REST_Request $request * * @return Caldera_Forms_API_Response */ public function update_entry_settings( WP_REST_Request $request ){ Caldera_Forms_Entry_Viewer::update_entries_per_page( $request[ 'per_page' ] ); $response = new Caldera_Forms_API_Response( array( 'per_page' => Caldera_Forms_Entry_Viewer::entries_per_page() )); return $response; } /** * Update general settings * * @since 1.7.3 * * @param WP_REST_Request $request * @return Caldera_Forms_API_Response */ public function update_settings( \WP_REST_Request $request ){ $style_includes = Caldera_Forms_Render_Assets::get_style_includes(); $new_values = []; foreach ( $style_includes as $key => $saved ){ $request[$key] = !is_bool($request[$key]) && $request[$key] === "false" ? false : $request[$key]; $new_values[ $key ] = isset($request[$key]) ? boolval($request[$key]) : $saved; } update_option( '_caldera_forms_styleincludes', $new_values); if( $request['cdnEnable'] === true ){ Caldera_Forms::settings()->get_cdn()->enable(); }else if( $request['cdnEnable'] === false ) { Caldera_Forms::settings()->get_cdn()->disable(); } return Caldera_Forms_API_Response_Factory::general_settings_response( $new_values, Caldera_Forms::settings()->get_cdn()->enabled(), 201 ); } /** * Get general settings * * @since 1.7.3 * * @return Caldera_Forms_API_Response */ public function get_settings(){ return Caldera_Forms_API_Response_Factory::general_settings_response( Caldera_Forms_Render_Assets::get_style_includes(), Caldera_Forms::settings()->get_cdn()->enabled(), 201 ); } /** * Permissions for settings read * * @since 1.8.0 * * @param WP_REST_Request $request * * @return bool */ public function get_items_permissions_check( WP_REST_Request $request ){ $allowed = current_user_can( Caldera_Forms::get_manage_cap( 'entry-view' ) ); /** * Filter permissions for viewing settings config via Caldera Forms REST API * * @since 1.8.0 * * @param bool $allowed Is request authorized? * @param WP_REST_Request $request The current request */ return apply_filters( 'caldera_forms_api_allow_settings_view', $allowed, $request ); } /** * Permissions for settings create/update/delete * * @since 1.8.0 * * @param WP_REST_Request $request * * @return bool */ public function create_item_permissions_check( WP_REST_Request $request ){ $allowed = current_user_can( Caldera_Forms::get_manage_cap( 'entry-edit' ) ); /** * Filter permissions for updating settings via Caldera Forms REST API * * @since 1.8.0 * * @param bool $allowed Is request authorized? * @param WP_REST_Request $request The current request */ return apply_filters( 'caldera_forms_api_allow_settings_edit', $allowed, $request ); } }