Current Path: > home > codekrsu > > cuddlebuds.lk > wp-content > plugins > woocommerce > src > Admin > API > >
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
AI | Directory | - | - | |
Reports | Directory | - | - | |
Templates | Directory | - | - | |
Coupons.php | File | 2202 bytes | April 20 2022 06:50:54. | |
CustomAttributeTraits.php | File | 3484 bytes | April 20 2022 06:50:54. | |
Customers.php | File | 2163 bytes | April 20 2022 06:50:54. | |
Data.php | File | 939 bytes | April 20 2022 06:50:54. | |
DataCountries.php | File | 1149 bytes | April 20 2022 06:50:54. | |
DataDownloadIPs.php | File | 4248 bytes | April 20 2022 06:50:54. | |
Experiments.php | File | 1864 bytes | April 20 2022 06:50:54. | |
Features.php | File | 1740 bytes | April 20 2022 06:50:54. | |
Init.php | File | 9187 bytes | May 12 2025 21:07:28. | |
LaunchYourStore.php | File | 5273 bytes | December 18 2024 22:19:16. | |
Leaderboards.php | File | 18660 bytes | July 30 2024 19:31:16. | |
Marketing.php | File | 4960 bytes | November 14 2024 01:17:00. | |
MarketingCampaignTypes.php | File | 6160 bytes | January 25 2023 03:19:12. | |
MarketingCampaigns.php | File | 9868 bytes | March 26 2024 16:56:02. | |
MarketingChannels.php | File | 5878 bytes | January 25 2023 03:19:12. | |
MarketingOverview.php | File | 3443 bytes | April 20 2022 06:50:54. | |
MarketingRecommendations.php | File | 6085 bytes | January 30 2024 23:24:56. | |
MobileAppMagicLink.php | File | 2147 bytes | September 20 2022 22:53:36. | |
NoteActions.php | File | 2449 bytes | March 21 2023 20:45:06. | |
Notes.php | File | 26407 bytes | September 23 2024 20:44:04. | |
Notice.php | File | 2437 bytes | March 03 2025 22:28:12. | |
OnboardingFreeExtensions.php | File | 2639 bytes | July 30 2024 19:31:16. | |
OnboardingPlugins.php | File | 13150 bytes | May 12 2025 21:07:28. | |
OnboardingProductTypes.php | File | 1840 bytes | April 20 2022 06:50:54. | |
OnboardingProducts.php | File | 1983 bytes | January 30 2024 23:24:56. | |
OnboardingProfile.php | File | 18817 bytes | May 12 2025 21:07:28. | |
OnboardingTasks.php | File | 32800 bytes | January 21 2025 18:53:44. | |
OnboardingThemes.php | File | 18529 bytes | November 14 2024 01:17:00. | |
Options.php | File | 10236 bytes | May 26 2025 19:11:58. | |
Orders.php | File | 10376 bytes | July 30 2024 19:31:16. | |
PaymentGatewaySuggestions.php | File | 5998 bytes | March 03 2025 22:28:12. | |
Plugins.php | File | 21729 bytes | April 01 2025 15:51:36. | |
ProductAttributeTerms.php | File | 4467 bytes | April 20 2022 06:50:54. | |
ProductAttributes.php | File | 4568 bytes | April 20 2022 06:50:54. | |
ProductCategories.php | File | 458 bytes | April 20 2022 06:50:54. | |
ProductForm.php | File | 3137 bytes | February 22 2023 07:17:34. | |
ProductReviews.php | File | 1330 bytes | April 20 2022 06:50:54. | |
ProductVariations.php | File | 6178 bytes | January 21 2025 18:53:44. | |
Products.php | File | 9963 bytes | October 21 2024 23:53:16. | |
ProductsLowInStock.php | File | 17986 bytes | May 12 2025 21:07:28. | |
SettingOptions.php | File | 878 bytes | March 21 2023 20:45:06. | |
Settings.php | File | 4299 bytes | March 03 2025 22:28:12. | |
ShippingPartnerSuggestions.php | File | 5876 bytes | March 21 2023 20:45:06. | |
Taxes.php | File | 5020 bytes | April 20 2022 06:50:54. | |
Themes.php | File | 6263 bytes | February 27 2024 18:59:46. |
<?php /** * REST API Options Controller * * Handles requests to get and update options in the wp_options table. * * IMPORTANT: This API is for legacy support only. DO NOT add new options here. See p90Yrv-2vK-p2#comment-6482 for more details. * For new settings/options, use Settings REST API (https://woocommerce.github.io/woocommerce-rest-api-docs/#setting-option-properties) or create dedicated endpoints instead. * * Example: * - Use register_rest_route() to create a new endpoint * - Follow WooCommerce REST API standards * - Implement proper permission checks * - Add proper documentation * See Automattic\WooCommerce\Admin\API\OnboardingProfile for examples. */ declare(strict_types=1); namespace Automattic\WooCommerce\Admin\API; defined( 'ABSPATH' ) || exit; /** * Options Controller. * * @deprecated since 6.2.0 * * @extends WC_REST_Data_Controller */ class Options extends \WC_REST_Data_Controller { /** * Endpoint namespace. * * @var string */ protected $namespace = 'wc-admin'; /** * Route base. * * @var string */ protected $rest_base = 'options'; /** * Register routes. */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => \WP_REST_Server::READABLE, 'callback' => array( $this, 'get_options' ), 'permission_callback' => array( $this, 'get_item_permissions_check' ), ), 'schema' => array( $this, 'get_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => \WP_REST_Server::EDITABLE, 'callback' => array( $this, 'update_options' ), 'permission_callback' => array( $this, 'update_item_permissions_check' ), ), 'schema' => array( $this, 'get_item_schema' ), ) ); } /** * Check if a given request has access to get options. * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|boolean */ public function get_item_permissions_check( $request ) { $params = ( isset( $request['options'] ) && is_string( $request['options'] ) ) ? explode( ',', $request['options'] ) : array(); if ( ! $params ) { return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'You must supply an array of options.', 'woocommerce' ), 500 ); } foreach ( $params as $option ) { if ( ! $this->user_has_permission( $option, $request ) ) { return new \WP_Error( 'woocommerce_rest_cannot_view', __( 'Sorry, you cannot view these options.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); } } return true; } /** * Check if the user has permission given an option name. * * @param string $option Option name. * @param WP_REST_Request $request Full details about the request. * @param bool $is_update If the request is to update the option. * @return boolean */ public function user_has_permission( $option, $request, $is_update = false ) { $permissions = $this->get_option_permissions( $request ); if ( isset( $permissions[ $option ] ) ) { return $permissions[ $option ]; } wc_deprecated_function( 'Automattic\WooCommerce\Admin\API\Options::' . ( $is_update ? 'update_options' : 'get_options' ), '6.3' ); // Disallow option updates in non-production environments unless the option is whitelisted, prompting developers to create specific endpoints in case they miss the deprecation notice. if ( 'production' !== wp_get_environment_type() ) { return false; } return current_user_can( 'manage_options' ); } /** * Check if a given request has access to update options. * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|boolean */ public function update_item_permissions_check( $request ) { $params = $request->get_json_params(); if ( ! is_array( $params ) ) { return new \WP_Error( 'woocommerce_rest_cannot_update', __( 'You must supply an array of options and values.', 'woocommerce' ), 500 ); } foreach ( $params as $option_name => $option_value ) { if ( ! $this->user_has_permission( $option_name, $request, true ) ) { return new \WP_Error( 'woocommerce_rest_cannot_update', __( 'Sorry, you cannot manage these options.', 'woocommerce' ), array( 'status' => rest_authorization_required_code() ) ); } } return true; } /** * Get an array of options and respective permissions for the current user. * * @param WP_REST_Request $request Full details about the request. * @return array */ public function get_option_permissions( $request ) { $permissions = self::get_default_option_permissions(); return apply_filters_deprecated( 'woocommerce_rest_api_option_permissions', array( $permissions, $request ), '6.3.0' ); } /** * Get the default available option permissions. * * @return array */ public static function get_default_option_permissions() { $is_woocommerce_admin = \Automattic\WooCommerce\Internal\Admin\Homescreen::is_admin_user(); /** * IMPORTANT: This list is frozen for legacy support. * New options MUST use dedicated endpoints instead of being added here. */ $legacy_whitelisted_options = array( 'woocommerce_setup_jetpack_opted_in', 'woocommerce_stripe_settings', 'woocommerce-ppcp-settings', 'woocommerce_ppcp-gateway_setting', 'woocommerce_demo_store', 'woocommerce_demo_store_notice', 'woocommerce_ces_tracks_queue', 'woocommerce_navigation_intro_modal_dismissed', 'woocommerce_shipping_dismissed_timestamp', 'woocommerce_allow_tracking', 'woocommerce_task_list_keep_completed', 'woocommerce_default_homepage_layout', 'woocommerce_setup_jetpack_opted_in', 'woocommerce_no_sales_tax', 'woocommerce_calc_taxes', 'woocommerce_bacs_settings', 'woocommerce_bacs_accounts', 'woocommerce_settings_shipping_recommendations_hidden', 'woocommerce_task_list_dismissed_tasks', 'woocommerce_setting_payments_recommendations_hidden', 'woocommerce_navigation_favorites_tooltip_hidden', 'woocommerce_admin_transient_notices_queue', 'woocommerce_task_list_hidden', 'woocommerce_task_list_complete', 'woocommerce_extended_task_list_hidden', 'woocommerce_ces_shown_for_actions', 'woocommerce_clear_ces_tracks_queue_for_page', 'woocommerce_admin_install_timestamp', 'woocommerce_task_list_tracked_completed_tasks', 'woocommerce_show_marketplace_suggestions', 'woocommerce_task_list_reminder_bar_hidden', 'wc_connect_options', 'woocommerce_admin_created_default_shipping_zones', 'woocommerce_admin_reviewed_default_shipping_zones', 'woocommerce_admin_reviewed_store_location_settings', 'woocommerce_ces_product_feedback_shown', 'woocommerce_marketing_overview_multichannel_banner_dismissed', 'woocommerce_manage_stock', 'woocommerce_dimension_unit', 'woocommerce_weight_unit', 'woocommerce_product_editor_show_feedback_bar', 'woocommerce_single_variation_notice_dismissed', 'woocommerce_product_tour_modal_hidden', 'woocommerce_block_product_tour_shown', 'woocommerce_revenue_report_date_tour_shown', 'woocommerce_orders_report_date_tour_shown', 'woocommerce_show_prepublish_checks_enabled', 'woocommerce_date_type', 'date_format', 'time_format', 'woocommerce_onboarding_profile', 'woocommerce_default_country', 'blogname', 'wcpay_welcome_page_incentives_dismissed', 'wcpay_welcome_page_viewed_timestamp', 'wcpay_welcome_page_exit_survey_more_info_needed_timestamp', 'woocommerce_customize_store_onboarding_tour_hidden', 'woocommerce_customize_store_ai_suggestions', 'woocommerce_admin_customize_store_completed', 'woocommerce_admin_customize_store_completed_theme_id', 'woocommerce_admin_customize_store_survey_completed', 'woocommerce_coming_soon', 'woocommerce_store_pages_only', 'woocommerce_private_link', 'woocommerce_share_key', 'woocommerce_show_lys_tour', 'woocommerce_remote_variant_assignment', 'woocommerce_gateway_order', 'woocommerce_woopayments_nox_profile', // WC Test helper options. 'wc-admin-test-helper-rest-api-filters', 'wc_admin_helper_feature_values', ); $theme_permissions = array( 'theme_mods_' . get_stylesheet() => current_user_can( 'edit_theme_options' ), 'stylesheet' => current_user_can( 'edit_theme_options' ), ); return array_merge( array_fill_keys( $theme_permissions, current_user_can( 'edit_theme_options' ) ), array_fill_keys( $legacy_whitelisted_options, $is_woocommerce_admin ) ); } /** * Gets an array of options and respective values. * * @param WP_REST_Request $request Full details about the request. * @return array Options object with option values. */ public function get_options( $request ) { $options = array(); if ( empty( $request['options'] ) || ! is_string( $request['options'] ) ) { return $options; } $params = explode( ',', $request['options'] ); foreach ( $params as $option ) { $options[ $option ] = get_option( $option ); } return $options; } /** * Updates an array of objects. * * @param WP_REST_Request $request Full details about the request. * @return array Options object with a boolean if the option was updated. */ public function update_options( $request ) { $params = $request->get_json_params(); $updated = array(); if ( ! is_array( $params ) ) { return array(); } foreach ( $params as $key => $value ) { $updated[ $key ] = update_option( $key, $value ); } return $updated; } /** * Get the schema, conforming to JSON Schema. * * @return array */ public function get_item_schema() { $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'options', 'type' => 'object', 'properties' => array( 'options' => array( 'type' => 'array', 'description' => __( 'Array of options with associated values.', 'woocommerce' ), 'context' => array( 'view' ), 'readonly' => true, ), ), ); return $this->add_additional_fields_schema( $schema ); } }
SILENT KILLER Tool