get('tracking.enabled')) ? self::getFullShortcode($action) : $url; } static function processShortcodeAction( $shortcode_action, $newsletter, $subscriber, $queue, $wp_user_preview ) { switch($shortcode_action) { case 'subscription_unsubscribe_url': $settings = new SettingsController(); // track unsubscribe event if((boolean)$settings->get('tracking.enabled') && !$wp_user_preview) { $unsubscribe_event = new Unsubscribes(); $unsubscribe_event->track($newsletter->id, $subscriber->id, $queue->id); } $url = SubscriptionUrl::getUnsubscribeUrl($subscriber); break; case 'subscription_manage_url': $url = SubscriptionUrl::getManageUrl($subscriber); break; case 'newsletter_view_in_browser_url': $url = NewsletterUrl::getViewInBrowserUrl( $type = null, $newsletter, $subscriber, $queue ); break; default: $shortcode = self::getFullShortcode($shortcode_action); $url = apply_filters( 'mailpoet_newsletter_shortcode_link', $shortcode, $newsletter, $subscriber, $queue, $wp_user_preview ); $url = ($url !== $shortcode_action) ? $url : false; break; } return $url; } private static function getFullShortcode($action) { return sprintf('[link:%s]', $action); } }