/var/www/vhosts/ihelp.ro/ajutam.ro/wp-content/plugins/woocommerce/includes
NameSizeModeActions
abstracts/-0755rm
admin/-0755rm
blocks/-0755rm
cli/-0755rm
customizer/-0755rm
data-stores/-0755rm
emails/-0755rm
export/-0755rm
gateways/-0755rm
import/-0755rm
integrations/-0755rm
interfaces/-0755rm
legacy/-0755rm
libraries/-0755rm
log-handlers/-0755rm
payment-tokens/-0755rm
queue/-0755rm
rest-api/-0755rm
shipping/-0755rm
shortcodes/-0755rm
theme-support/-0755rm
tracks/-0755rm
traits/-0755rm
walkers/-0755rm
wccom-site/-0755rm
widgets/-0755rm
class-wc-ajax.php1021580644editdlrm
class-wc-api.php51050644editdlrm
class-wc-auth.php118820644editdlrm
class-wc-autoloader.php28100644editdlrm
class-wc-background-emailer.php46850644editdlrm
class-wc-background-updater.php35350644editdlrm
class-wc-breadcrumb.php97220644editdlrm
class-wc-cache-helper.php120630644editdlrm
class-wc-cart-fees.php34920644editdlrm
class-wc-cart-session.php150320644editdlrm
class-wc-cart-totals.php288230644editdlrm
class-wc-cart.php665200644editdlrm
class-wc-checkout.php450810644editdlrm
class-wc-cli.php11900644editdlrm
class-wc-comments.php158880644editdlrm
class-wc-countries.php471720644editdlrm
class-wc-coupon.php347090644editdlrm
class-wc-customer-download-log.php34520644editdlrm
class-wc-customer-download.php107020644editdlrm
class-wc-customer.php296060644editdlrm
class-wc-data-exception.php13210644editdlrm
class-wc-data-store.php59890644editdlrm
class-wc-datetime.php22510644editdlrm
class-wc-deprecated-action-hooks.php70420644editdlrm
class-wc-deprecated-filter-hooks.php69890644editdlrm
class-wc-discounts.php334430644editdlrm
class-wc-download-handler.php246740644editdlrm
class-wc-emails.php230160644editdlrm
class-wc-embed.php42840644editdlrm
class-wc-form-handler.php450340644editdlrm
class-wc-frontend-scripts.php265310644editdlrm
class-wc-geo-ip.php311410644editdlrm
class-wc-geolite-integration.php20360644editdlrm
class-wc-geolocation.php105880644editdlrm
class-wc-https.php44300644editdlrm
class-wc-install.php637420644editdlrm
class-wc-integrations.php13080644editdlrm
class-wc-log-levels.php26000644editdlrm
class-wc-logger.php89750644editdlrm
class-wc-meta-data.php22340644editdlrm
class-wc-order-factory.php31940644editdlrm
class-wc-order-item-coupon.php41750644editdlrm
class-wc-order-item-fee.php89720644editdlrm
class-wc-order-item-meta.php59420644editdlrm
class-wc-order-item-product.php134530644editdlrm
class-wc-order-item-shipping.php79690644editdlrm
class-wc-order-item-tax.php66440644editdlrm
class-wc-order-item.php110360644editdlrm
class-wc-order-query.php26150644editdlrm
class-wc-order-refund.php50000644editdlrm
class-wc-order.php631860644editdlrm
class-wc-payment-gateways.php55450644editdlrm
class-wc-payment-tokens.php60440644editdlrm
class-wc-post-data.php207400644editdlrm
class-wc-post-types.php287870644editdlrm
class-wc-privacy-background-process.php17070644editdlrm
class-wc-privacy-erasers.php139340644editdlrm
class-wc-privacy-exporters.php150440644editdlrm
class-wc-privacy.php158960644editdlrm
class-wc-product-attribute.php71370644editdlrm
class-wc-product-download.php73340644editdlrm
class-wc-product-external.php49550644editdlrm
class-wc-product-factory.php36680644editdlrm
class-wc-product-grouped.php53490644editdlrm
class-wc-product-query.php22310644editdlrm
class-wc-product-simple.php19380644editdlrm
class-wc-product-variable.php220220644editdlrm
class-wc-product-variation.php172710644editdlrm
class-wc-query.php323610644editdlrm
class-wc-rate-limiter.php41000644editdlrm
class-wc-regenerate-images-request.php84110644editdlrm
class-wc-regenerate-images.php156530644editdlrm
class-wc-register-wp-admin-settings.php51710644editdlrm
class-wc-rest-authentication.php199880644editdlrm
class-wc-rest-exception.php2760644editdlrm
class-wc-session-handler.php119670644editdlrm
class-wc-shipping-rate.php56280644editdlrm
class-wc-shipping-zone.php133920644editdlrm
class-wc-shipping-zones.php41060644editdlrm
class-wc-shipping.php118460644editdlrm
class-wc-shortcodes.php176480644editdlrm
class-wc-structured-data.php177330644editdlrm
class-wc-tax.php378890644editdlrm
class-wc-template-loader.php208730644editdlrm
class-wc-tracker.php238860644editdlrm
class-wc-validation.php59750644editdlrm
class-wc-webhook.php306900644editdlrm
class-woocommerce.php351040644editdlrm
wc-account-functions.php132260644editdlrm
wc-attribute-functions.php211100644editdlrm
wc-cart-functions.php175680644editdlrm
wc-conditional-functions.php127800644editdlrm
wc-core-functions.php800210644editdlrm
wc-coupon-functions.php27410644editdlrm
wc-deprecated-functions.php334850644editdlrm
wc-formatting-functions.php439850644editdlrm
wc-notice-functions.php76770644editdlrm
wc-order-functions.php348920644editdlrm
wc-order-item-functions.php51530644editdlrm
wc-page-functions.php70870644editdlrm
wc-product-functions.php492790644editdlrm
wc-rest-functions.php111470644editdlrm
wc-stock-functions.php135320644editdlrm
wc-template-functions.php1178290644editdlrm
wc-template-hooks.php126810644editdlrm
wc-term-functions.php211130644editdlrm
wc-update-functions.php696990644editdlrm
wc-user-functions.php272420644editdlrm
wc-webhook-functions.php57310644editdlrm
wc-widget-functions.php20630644editdlrm
Edit: /var/www/vhosts/ihelp.ro/ajutam.ro/wp-content/plugins/woocommerce/includes/class-wc-privacy.php (15896B)
name = __( 'WooCommerce', 'woocommerce' ); if ( ! self::$background_process ) { self::$background_process = new WC_Privacy_Background_Process(); } // Include supporting classes. include_once __DIR__ . '/class-wc-privacy-erasers.php'; include_once __DIR__ . '/class-wc-privacy-exporters.php'; // This hook registers WooCommerce data exporters. $this->add_exporter( 'woocommerce-customer-data', __( 'WooCommerce Customer Data', 'woocommerce' ), array( 'WC_Privacy_Exporters', 'customer_data_exporter' ) ); $this->add_exporter( 'woocommerce-customer-orders', __( 'WooCommerce Customer Orders', 'woocommerce' ), array( 'WC_Privacy_Exporters', 'order_data_exporter' ) ); $this->add_exporter( 'woocommerce-customer-downloads', __( 'WooCommerce Customer Downloads', 'woocommerce' ), array( 'WC_Privacy_Exporters', 'download_data_exporter' ) ); $this->add_exporter( 'woocommerce-customer-tokens', __( 'WooCommerce Customer Payment Tokens', 'woocommerce' ), array( 'WC_Privacy_Exporters', 'customer_tokens_exporter' ) ); // This hook registers WooCommerce data erasers. $this->add_eraser( 'woocommerce-customer-data', __( 'WooCommerce Customer Data', 'woocommerce' ), array( 'WC_Privacy_Erasers', 'customer_data_eraser' ) ); $this->add_eraser( 'woocommerce-customer-orders', __( 'WooCommerce Customer Orders', 'woocommerce' ), array( 'WC_Privacy_Erasers', 'order_data_eraser' ) ); $this->add_eraser( 'woocommerce-customer-downloads', __( 'WooCommerce Customer Downloads', 'woocommerce' ), array( 'WC_Privacy_Erasers', 'download_data_eraser' ) ); $this->add_eraser( 'woocommerce-customer-tokens', __( 'WooCommerce Customer Payment Tokens', 'woocommerce' ), array( 'WC_Privacy_Erasers', 'customer_tokens_eraser' ) ); } /** * Add privacy policy content for the privacy policy page. * * @since 3.4.0 */ public function get_privacy_message() { $content = '
' . '

' . __( 'This sample language includes the basics around what personal data your store may be collecting, storing and sharing, as well as who may have access to that data. Depending on what settings are enabled and which additional plugins are used, the specific information shared by your store will vary. We recommend consulting with a lawyer when deciding what information to disclose on your privacy policy.', 'woocommerce' ) . '

' . '

' . __( 'We collect information about you during the checkout process on our store.', 'woocommerce' ) . '

' . '

' . __( 'What we collect and store', 'woocommerce' ) . '

' . '

' . __( 'While you visit our site, we’ll track:', 'woocommerce' ) . '

' . '' . '

' . __( 'We’ll also use cookies to keep track of cart contents while you’re browsing our site.', 'woocommerce' ) . '

' . '

' . __( 'Note: you may want to further detail your cookie policy, and link to that section from here.', 'woocommerce' ) . '

' . '

' . __( 'When you purchase from us, we’ll ask you to provide information including your name, billing address, shipping address, email address, phone number, credit card/payment details and optional account information like username and password. We’ll use this information for purposes, such as, to:', 'woocommerce' ) . '

' . '' . '

' . __( 'If you create an account, we will store your name, address, email and phone number, which will be used to populate the checkout for future orders.', 'woocommerce' ) . '

' . '

' . __( 'We generally store information about you for as long as we need the information for the purposes for which we collect and use it, and we are not legally required to continue to keep it. For example, we will store order information for XXX years for tax and accounting purposes. This includes your name, email address and billing and shipping addresses.', 'woocommerce' ) . '

' . '

' . __( 'We will also store comments or reviews, if you choose to leave them.', 'woocommerce' ) . '

' . '

' . __( 'Who on our team has access', 'woocommerce' ) . '

' . '

' . __( 'Members of our team have access to the information you provide us. For example, both Administrators and Shop Managers can access:', 'woocommerce' ) . '

' . '' . '

' . __( 'Our team members have access to this information to help fulfill orders, process refunds and support you.', 'woocommerce' ) . '

' . '

' . __( 'What we share with others', 'woocommerce' ) . '

' . '

' . __( 'In this section you should list who you’re sharing data with, and for what purpose. This could include, but may not be limited to, analytics, marketing, payment gateways, shipping providers, and third party embeds.', 'woocommerce' ) . '

' . '

' . __( 'We share information with third parties who help us provide our orders and store services to you; for example --', 'woocommerce' ) . '

' . '

' . __( 'Payments', 'woocommerce' ) . '

' . '

' . __( 'In this subsection you should list which third party payment processors you’re using to take payments on your store since these may handle customer data. We’ve included PayPal as an example, but you should remove this if you’re not using PayPal.', 'woocommerce' ) . '

' . '

' . __( 'We accept payments through PayPal. When processing payments, some of your data will be passed to PayPal, including information required to process or support the payment, such as the purchase total and billing information.', 'woocommerce' ) . '

' . '

' . __( 'Please see the PayPal Privacy Policy for more details.', 'woocommerce' ) . '

' . '
'; return apply_filters( 'wc_privacy_policy_content', $content ); } /** * Spawn events for order cleanup. */ public function queue_cleanup_personal_data() { self::$background_process->push_to_queue( array( 'task' => 'trash_pending_orders' ) ); self::$background_process->push_to_queue( array( 'task' => 'trash_failed_orders' ) ); self::$background_process->push_to_queue( array( 'task' => 'trash_cancelled_orders' ) ); self::$background_process->push_to_queue( array( 'task' => 'anonymize_completed_orders' ) ); self::$background_process->push_to_queue( array( 'task' => 'delete_inactive_accounts' ) ); self::$background_process->save()->dispatch(); } /** * Handle some custom types of data and anonymize them. * * @param string $anonymous Anonymized string. * @param string $type Type of data. * @param string $data The data being anonymized. * @return string Anonymized string. */ public function anonymize_custom_data_types( $anonymous, $type, $data ) { switch ( $type ) { case 'address_state': case 'address_country': $anonymous = ''; // Empty string - we don't want to store anything after removal. break; case 'phone': $anonymous = preg_replace( '/\d/u', '0', $data ); break; case 'numeric_id': $anonymous = 0; break; } return $anonymous; } /** * Find and trash old orders. * * @since 3.4.0 * @param int $limit Limit orders to process per batch. * @return int Number of orders processed. */ public static function trash_pending_orders( $limit = 20 ) { $option = wc_parse_relative_date_option( get_option( 'woocommerce_trash_pending_orders' ) ); if ( empty( $option['number'] ) ) { return 0; } return self::trash_orders_query( apply_filters( 'woocommerce_trash_pending_orders_query_args', array( 'date_created' => '<' . strtotime( '-' . $option['number'] . ' ' . $option['unit'] ), 'limit' => $limit, // Batches of 20. 'status' => 'wc-pending', 'type' => 'shop_order', ) ) ); } /** * Find and trash old orders. * * @since 3.4.0 * @param int $limit Limit orders to process per batch. * @return int Number of orders processed. */ public static function trash_failed_orders( $limit = 20 ) { $option = wc_parse_relative_date_option( get_option( 'woocommerce_trash_failed_orders' ) ); if ( empty( $option['number'] ) ) { return 0; } return self::trash_orders_query( apply_filters( 'woocommerce_trash_failed_orders_query_args', array( 'date_created' => '<' . strtotime( '-' . $option['number'] . ' ' . $option['unit'] ), 'limit' => $limit, // Batches of 20. 'status' => 'wc-failed', 'type' => 'shop_order', ) ) ); } /** * Find and trash old orders. * * @since 3.4.0 * @param int $limit Limit orders to process per batch. * @return int Number of orders processed. */ public static function trash_cancelled_orders( $limit = 20 ) { $option = wc_parse_relative_date_option( get_option( 'woocommerce_trash_cancelled_orders' ) ); if ( empty( $option['number'] ) ) { return 0; } return self::trash_orders_query( apply_filters( 'woocommerce_trash_cancelled_orders_query_args', array( 'date_created' => '<' . strtotime( '-' . $option['number'] . ' ' . $option['unit'] ), 'limit' => $limit, // Batches of 20. 'status' => 'wc-cancelled', 'type' => 'shop_order', ) ) ); } /** * For a given query trash all matches. * * @since 3.4.0 * @param array $query Query array to pass to wc_get_orders(). * @return int Count of orders that were trashed. */ protected static function trash_orders_query( $query ) { $orders = wc_get_orders( $query ); $count = 0; if ( $orders ) { foreach ( $orders as $order ) { $order->delete( false ); $count ++; } } return $count; } /** * Anonymize old completed orders. * * @since 3.4.0 * @param int $limit Limit orders to process per batch. * @return int Number of orders processed. */ public static function anonymize_completed_orders( $limit = 20 ) { $option = wc_parse_relative_date_option( get_option( 'woocommerce_anonymize_completed_orders' ) ); if ( empty( $option['number'] ) ) { return 0; } return self::anonymize_orders_query( apply_filters( 'woocommerce_anonymize_completed_orders_query_args', array( 'date_created' => '<' . strtotime( '-' . $option['number'] . ' ' . $option['unit'] ), 'limit' => $limit, // Batches of 20. 'status' => 'wc-completed', 'anonymized' => false, 'type' => 'shop_order', ) ) ); } /** * For a given query, anonymize all matches. * * @since 3.4.0 * @param array $query Query array to pass to wc_get_orders(). * @return int Count of orders that were anonymized. */ protected static function anonymize_orders_query( $query ) { $orders = wc_get_orders( $query ); $count = 0; if ( $orders ) { foreach ( $orders as $order ) { WC_Privacy_Erasers::remove_order_personal_data( $order ); $count ++; } } return $count; } /** * Delete inactive accounts. * * @since 3.4.0 * @param int $limit Limit users to process per batch. * @return int Number of users processed. */ public static function delete_inactive_accounts( $limit = 20 ) { $option = wc_parse_relative_date_option( get_option( 'woocommerce_delete_inactive_accounts' ) ); if ( empty( $option['number'] ) ) { return 0; } return self::delete_inactive_accounts_query( strtotime( '-' . $option['number'] . ' ' . $option['unit'] ), $limit ); } /** * Delete inactive accounts. * * @since 3.4.0 * @param int $timestamp Timestamp to delete customers before. * @param int $limit Limit number of users to delete per run. * @return int Count of customers that were deleted. */ protected static function delete_inactive_accounts_query( $timestamp, $limit = 20 ) { $count = 0; $user_query = new WP_User_Query( array( 'fields' => 'ID', 'number' => $limit, 'role__in' => apply_filters( 'woocommerce_delete_inactive_account_roles', array( 'Customer', 'Subscriber', ) ), 'meta_query' => array( // phpcs:ignore WordPress.DB.SlowDBQuery.slow_db_query_meta_query 'relation' => 'AND', array( 'key' => 'wc_last_active', 'value' => (string) $timestamp, 'compare' => '<', 'type' => 'NUMERIC', ), array( 'key' => 'wc_last_active', 'value' => '0', 'compare' => '>', 'type' => 'NUMERIC', ), ), ) ); $user_ids = $user_query->get_results(); if ( $user_ids ) { if ( ! function_exists( 'wp_delete_user' ) ) { require_once ABSPATH . 'wp-admin/includes/user.php'; } foreach ( $user_ids as $user_id ) { wp_delete_user( $user_id ); $count ++; } } return $count; } } new WC_Privacy();