PATH:
home
/
thebhoeo
/
.trash
/
backwpup
/
src
/
Admin
/
Beacon
<?php declare(strict_types=1); namespace WPMedia\BackWPup\Admin\Beacon; use Inpsyde\BackWPup\Pro\License\License; use WPMedia\BackWPup\Common\AbstractRender; class Beacon extends AbstractRender { /** * Returns the link for corresponding section. * TODO:: Add language option, we could have separate link for diff languages. * * @since 5.4 * * @param string $doc_id Section identifier. Available values: * - 'include_extra_files' * - 'file_format' * - 'user_account' * - 'contact_support'. * @param bool $is_tracked Whether to add tracking data to the URL. * @param array $track_data Tracking data to append to the URL. * Format structure: * [ * 'bwu_event' => string, // Required. The event name to track * 'property1' => string|int, // Optional. Custom event property * 'property2' => string|int, // Optional. Additional event property * // ... more properties * ] * * Examples: * - Simple tracking: * ['bwu_event' => 'help_clicked'] * * - With properties: * [ * 'bwu_event' => 'support_link_clicked', * 'page' => 'job_edit', * 'user_type' => 'pro', * 'job_id' => 123 * ] * * Note: All properties except 'bwu_event' will be * automatically prefixed with 'bwu_event_property_'. * * @return string|array */ public function get_suggest( string $doc_id, bool $is_tracked = false, array $track_data = [] ): array { $suggest = [ 'include_extra_files' => [ 'url' => 'https://backwpup.com/backwpup-5-4/', 'title' => __( 'Welcome to BackWPup 5.4!', 'backwpup' ), ], 'file_format' => [ 'url' => 'https://backwpup.com/backwpup-5-5/', 'title' => __( 'BackWPup 5.5 is here!', 'backwpup' ), ], 'user_account' => [ 'url' => 'https://backwpup.com/my-account/?utm_source=backwpup_plugin&utm_medium=plugin&utm_campaign=in_product&utm_content=my_account', 'title' => __( 'Manage your BackWPup license', 'backwpup' ), ], 'update-payment-method' => [ 'url' => 'https://backwpup.com/my-account/add-payment-method/?utm_source=backwpup_plugin&utm_medium=plugin&utm_campaign=in_product&utm_content=upgrade_cta_plugin', 'title' => __( 'Manage your BackWPup license', 'backwpup' ), ], 'contact_support' => [ 'url' => 'https://backwpup.com/contact/?utm_source=backwpup_plugin&utm_medium=plugin&utm_campaign=in_product&utm_content=get_contact', 'title' => __( 'Contact BackWPup support', 'backwpup' ), ], ]; // change urls by license server. if ( class_exists( License::class ) && License::WC_API_URL === 'https://backwpup.de/' ) { $suggest['user_account']['url'] = 'https://backwpup.de/mein-account/'; $suggest['update-payment-method']['url'] = 'https://backwpup.de/mein-account/add-payment-method/'; } $language = get_user_locale(); // update suggestions to german webseite urls. if ( 'de' === substr( $language, 0, 2 ) ) { $suggest['contact_support']['url'] = 'https://backwpup.de/kontakt/'; } $selected_suggest = $suggest[ $doc_id ] ?? []; // Apply filter on the URL if set. if ( isset( $selected_suggest['url'] ) ) { $selected_suggest['url'] = wpm_apply_filters_typed( 'string', 'backwpup_url_add_hash', $selected_suggest['url'] ); } // Add tracking data if required using the redirect. if ( ! empty( $selected_suggest ) && $is_tracked ) { // Prefix all keys with 'bwu_event_property_' except 'bwu_event'. $prefixed_track_data = []; foreach ( $track_data as $key => $value ) { if ( 'bwu_event' === $key ) { $prefixed_track_data[ $key ] = $value; } else { $prefixed_track_data[ 'bwu_event_property_' . $key ] = $value; } } $prefixed_track_data['bwu_redirect'] = rawurlencode( $selected_suggest['url'] ); $selected_suggest['url'] = add_query_arg( $prefixed_track_data, admin_url( 'admin.php' ) ); // Add nonce for security. $selected_suggest['url'] = wp_nonce_url( $selected_suggest['url'], 'backwpup_redirect_nonce' ); } return $selected_suggest; } }
[-] Beacon.php
[edit]
[+]
..
[-] Subscriber.php
[edit]