PATH:
home
/
letacommog
/
laperouse
/
wp-content
/
plugins
/
woocommerce
/
packages
/
woocommerce-admin
/
src
/
Notes
<?php /** * WC Admin Note Traits * * WC Admin Note Traits class that houses shared functionality across notes. */ namespace Automattic\WooCommerce\Admin\Notes; defined( 'ABSPATH' ) || exit; /** * NoteTraits class. */ trait NoteTraits { /** * Test how long WooCommerce Admin has been active. * * @param int $seconds Time in seconds to check. * @return bool Whether or not WooCommerce admin has been active for $seconds. */ public static function wc_admin_active_for( $seconds ) { // Getting install timestamp reference class-wc-admin-install.php. $wc_admin_installed = get_option( 'woocommerce_admin_install_timestamp', false ); if ( false === $wc_admin_installed ) { update_option( 'woocommerce_admin_install_timestamp', time() ); return false; } return ( ( time() - $wc_admin_installed ) >= $seconds ); } /** * Check if the note has been previously added. */ public static function note_exists() { $data_store = \WC_Data_Store::load( 'admin-note' ); $note_ids = $data_store->get_notes_with_name( self::NOTE_NAME ); return ! empty( $note_ids ); } /** * Checks if a note can and should be added. * * @return bool */ public static function can_be_added() { $note = self::get_note(); if ( ! $note instanceof WC_Admin_Note ) { return; } if ( self::note_exists() ) { return false; } if ( 'no' === get_option( 'woocommerce_show_marketplace_suggestions', 'yes' ) && WC_Admin_Note::E_WC_ADMIN_NOTE_MARKETING === $note->get_type() ) { return false; } return true; } /** * Add the note if it passes predefined conditions. */ public static function possibly_add_note() { $note = self::get_note(); if ( ! self::can_be_added() ) { return; } $note->save(); } /** * Alias this method for backwards compatibility. */ public static function add_note() { self::possibly_add_note(); } /** * Possibly delete the note, if it exists in the database. Note that this * is a hard delete, for where it doesn't make sense to soft delete or * action the note. */ public static function possibly_delete_note() { $data_store = \WC_Data_Store::load( 'admin-note' ); $note_ids = $data_store->get_notes_with_name( self::NOTE_NAME ); foreach ( $note_ids as $note_id ) { $note = WC_Admin_Notes::get_note( $note_id ); if ( $note ) { $data_store->delete( $note ); } } } /** * Get if the note has been actioned. * * @return bool */ public static function has_note_been_actioned() { $data_store = \WC_Data_Store::load( 'admin-note' ); $note_ids = $data_store->get_notes_with_name( self::NOTE_NAME ); if ( ! empty( $note_ids ) ) { $note = WC_Admin_Notes::get_note( $note_ids[0] ); if ( WC_Admin_Note::E_WC_ADMIN_NOTE_ACTIONED === $note->get_status() ) { return true; } } return false; } }
[+]
..
[-] WC_Admin_Notes_Selling_Online_Courses.php
[edit]
[-] NoteTraits.php
[edit]
[-] WC_Admin_Notes_Tracking_Opt_In.php
[edit]
[-] WC_Admin_Notes_Giving_Feedback_Notes.php
[edit]
[-] WC_Admin_Notes_Historical_Data.php
[edit]
[-] WC_Admin_Notes_WooCommerce_Subscriptions.php
[edit]
[-] WC_Admin_Notes_Marketing.php
[edit]
[-] WC_Admin_Notes_Choose_Niche.php
[edit]
[-] WC_Admin_Notes_WooCommerce_Payments.php
[edit]
[-] WC_Admin_Notes_Personalize_Store.php
[edit]
[-] WC_Admin_Notes_Onboarding_Email_Marketing.php
[edit]
[-] WC_Admin_Notes_New_Sales_Record.php
[edit]
[-] WC_Admin_Notes_Onboarding_Profiler.php
[edit]
[-] WC_Admin_Notes_Set_Up_Additional_Payment_Types.php
[edit]
[-] WC_Admin_Notes_Install_JP_And_WCS_Plugins.php
[edit]
[-] WC_Admin_Notes_Online_Clothing_Store.php
[edit]
[-] WC_Admin_Notes_Google_Ads_And_Marketing.php
[edit]
[-] WC_Admin_Notes_Insight_First_Sale.php
[edit]
[-] DataStore.php
[edit]
[-] WC_Admin_Notes_First_Product.php
[edit]
[-] WC_Admin_Notes_Home_Screen_Feedback.php
[edit]
[-] WC_Admin_Notes_Coupon_Page_Moved.php
[edit]
[-] WC_Admin_Notes_Woo_Subscriptions_Notes.php
[edit]
[-] WC_Admin_Notes_Onboarding_Payments.php
[edit]
[-] WC_Admin_Notes_Start_Dropshipping_Business.php
[edit]
[-] WC_Admin_Notes_Draw_Attention.php
[edit]
[-] WC_Admin_Notes_Review_Shipping_Settings.php
[edit]
[-] WC_Admin_Notes_Launch_Checklist.php
[edit]
[-] WC_Admin_Notes_Mobile_App.php
[edit]
[-] WC_Admin_Notes_Customize_Store_With_Blocks.php
[edit]
[-] WC_Admin_Notes_Test_Checkout.php
[edit]
[-] WC_Admin_Notes_Real_Time_Order_Alerts.php
[edit]
[-] WC_Admin_Notes_EU_VAT_Number.php
[edit]
[-] WC_Admin_Notes_Migrate_From_Shopify.php
[edit]
[-] WC_Admin_Notes_Order_Milestones.php
[edit]
[-] ConfirmTaxSettings.php
[edit]
[-] WC_Admin_Note.php
[edit]
[-] WC_Admin_Notes.php
[edit]
[-] WC_Admin_Notes_Performance_On_Mobile.php
[edit]
[-] WC_Admin_Notes_Deactivate_Plugin.php
[edit]
[-] WC_Admin_Notes_Edit_Products_On_The_Move.php
[edit]
[-] WC_Admin_Notes_Need_Some_Inspiration.php
[edit]