Refactor getSubscriptionUrl to instance method

[MAILPOET-2381]
This commit is contained in:
Rostislav Wolny
2019-09-23 15:36:57 +02:00
committed by Jack Kitterhing
parent d90d5c6385
commit ae83364297
2 changed files with 12 additions and 11 deletions

View File

@ -78,13 +78,14 @@ class Pages {
} }
static function getPageData($page) { static function getPageData($page) {
$subscription_url_factory = Subscription\Url::getInstance();
return [ return [
'id' => $page->ID, 'id' => $page->ID,
'title' => $page->post_title, 'title' => $page->post_title,
'url' => [ 'url' => [
'unsubscribe' => Subscription\Url::getSubscriptionUrl($page, 'unsubscribe'), 'unsubscribe' => $subscription_url_factory->getSubscriptionUrl($page, 'unsubscribe'),
'manage' => Subscription\Url::getSubscriptionUrl($page, 'manage'), 'manage' => $subscription_url_factory->getSubscriptionUrl($page, 'manage'),
'confirm' => Subscription\Url::getSubscriptionUrl($page, 'confirm'), 'confirm' => $subscription_url_factory->getSubscriptionUrl($page, 'confirm'),
], ],
]; ];
} }

View File

@ -27,30 +27,30 @@ class Url {
function getCaptchaUrl() { function getCaptchaUrl() {
$post = self::getPost($this->settings->get('subscription.pages.captcha')); $post = self::getPost($this->settings->get('subscription.pages.captcha'));
return self::getSubscriptionUrl($post, 'captcha', null); return $this->getSubscriptionUrl($post, 'captcha', null);
} }
function getCaptchaImageUrl($width, $height) { function getCaptchaImageUrl($width, $height) {
$post = self::getPost($this->settings->get('subscription.pages.captcha')); $post = self::getPost($this->settings->get('subscription.pages.captcha'));
return self::getSubscriptionUrl($post, 'captchaImage', null, ['width' => $width, 'height' => $height]); return $this->getSubscriptionUrl($post, 'captchaImage', null, ['width' => $width, 'height' => $height]);
} }
function getConfirmationUrl(Subscriber $subscriber = null) { function getConfirmationUrl(Subscriber $subscriber = null) {
$post = self::getPost($this->settings->get('subscription.pages.confirmation')); $post = self::getPost($this->settings->get('subscription.pages.confirmation'));
return self::getSubscriptionUrl($post, 'confirm', $subscriber); return $this->getSubscriptionUrl($post, 'confirm', $subscriber);
} }
function getManageUrl(Subscriber $subscriber = null) { function getManageUrl(Subscriber $subscriber = null) {
$post = self::getPost($this->settings->get('subscription.pages.manage')); $post = self::getPost($this->settings->get('subscription.pages.manage'));
return self::getSubscriptionUrl($post, 'manage', $subscriber); return $this->getSubscriptionUrl($post, 'manage', $subscriber);
} }
function getUnsubscribeUrl(Subscriber $subscriber = null) { function getUnsubscribeUrl(Subscriber $subscriber = null) {
$post = self::getPost($this->settings->get('subscription.pages.unsubscribe')); $post = self::getPost($this->settings->get('subscription.pages.unsubscribe'));
return self::getSubscriptionUrl($post, 'unsubscribe', $subscriber); return $this->getSubscriptionUrl($post, 'unsubscribe', $subscriber);
} }
static function getSubscriptionUrl( function getSubscriptionUrl(
$post = null, $post = null,
$action = null, $action = null,
Subscriber $subscriber = null, Subscriber $subscriber = null,
@ -58,7 +58,7 @@ class Url {
) { ) {
if ($post === null || $action === null) return; if ($post === null || $action === null) return;
$url = WPFunctions::get()->getPermalink($post); $url = $this->wp->getPermalink($post);
$link_tokens = new LinkTokens; $link_tokens = new LinkTokens;
if ($subscriber !== null) { if ($subscriber !== null) {
$data = [ $data = [
@ -83,7 +83,7 @@ class Url {
$url_params = parse_url($url); $url_params = parse_url($url);
if (empty($url_params['scheme'])) { if (empty($url_params['scheme'])) {
$url = WPFunctions::get()->getBloginfo('url') . $url; $url = $this->wp->getBloginfo('url') . $url;
} }
return $url; return $url;