diff --git a/library/Class/Newsletter.php b/library/Class/Newsletter.php index cdfbb7715e4feb9e23db756c215348c0839a1d1d..e1b21a281a01cf1fc629b1a51b2d9b358678a59b 100644 --- a/library/Class/Newsletter.php +++ b/library/Class/Newsletter.php @@ -358,7 +358,7 @@ class Class_Newsletter extends Storm_Model_Abstract { } - public function unsubscribeUser(Class_Users $user, string $mail='') { + public function unsubscribeUser(Class_Users $user, string $mail='') :bool { return Class_Newsletter_Blacklist::unsubscribeUser($user, $this->getId(), $mail); } @@ -451,10 +451,9 @@ class Class_Newsletter extends Storm_Model_Abstract { public function getFirstImageUrl() : string { $template = $this->newTemplate(); - $text = $template->getRawHTML(); $matches = []; - return (preg_match('/< *img[^>]*src *= *["\']?([^"\'>]*)/i', $text, $matches) > 0) + return (preg_match('/< *img[^>]*src *= *["\']?([^"\'>]*)/i', $template->getRawHTML(), $matches) > 0) ? $matches[1] : ''; } diff --git a/library/Class/Newsletter/Blacklist.php b/library/Class/Newsletter/Blacklist.php index 6a87a7781f1e4078a6ec5ebe7556b3c1eaf6b791..696767f1fcf7713e03120d27ab4eec33a03f6414 100644 --- a/library/Class/Newsletter/Blacklist.php +++ b/library/Class/Newsletter/Blacklist.php @@ -28,12 +28,12 @@ class Newsletter_BlacklistLoader extends Storm_Model_Loader { } - public function unsubscribeUser(Class_Users $user, int $newsletter_id, string $mail = '') { + public function unsubscribeUser(Class_Users $user, int $newsletter_id, string $mail = '') :bool { if (Class_Newsletter_Blacklist::isBlackListed($user, $newsletter_id)) return false; if (!$mail) - $mail = $user->getMail(); + $mail = $user->getMail() ?? ''; $blacklist = Class_Newsletter_Blacklist::newInstance(['user_id' => $user->getId(), 'mail' => $mail, @@ -50,11 +50,9 @@ class Newsletter_BlacklistLoader extends Storm_Model_Loader { 'user_id' => $user->getId()])) return true; - if (($mail = $user->getMail()) - && (0 < Class_Newsletter_Blacklist::countBy(['newsletter_id' => $newsletter_id, - 'mail' => $mail]))) - return true; - return false; + return (($mail = $user->getMail()) + && (0 < Class_Newsletter_Blacklist::countBy(['newsletter_id' => $newsletter_id, + 'mail' => $mail]))); } } diff --git a/library/Class/Newsletter/TemplateHelper.php b/library/Class/Newsletter/TemplateHelper.php index f7cc9a0837639a183acea015aed3cc9b43c1e430..51cdf7a0f006bd9aa4a040ed7cdb5e121e72edc6 100644 --- a/library/Class/Newsletter/TemplateHelper.php +++ b/library/Class/Newsletter/TemplateHelper.php @@ -102,11 +102,10 @@ class Class_Newsletter_TemplateHelper { public function getRawHTML() : string { if ( $this->_body_html_cache ) return $this->_body_html_cache; - $html = $this->_renderNewsletterWith('_getContentAsHTML', + + return $this->_body_html_cache = $this->_renderNewsletterWith('_getContentAsHTML', 'renderHtml', '_getUnsubscribeHTML'); - - return $this->_body_html_cache = $html; } @@ -158,7 +157,6 @@ class Class_Newsletter_TemplateHelper { ...$this->_renderContent($mail_renderer_function), call_user_func([$this, $unsubscribe_function])]; - return $implode_callback ? call_user_func([$this, $implode_callback], $content) : implode($content); diff --git a/tests/application/modules/admin/controllers/NewsletterControllerTest.php b/tests/application/modules/admin/controllers/NewsletterControllerTest.php index dba24eb598d58ed4085606343818a243e54892d7..7611c007753ae1031455047f8d47b6762866c65f 100644 --- a/tests/application/modules/admin/controllers/NewsletterControllerTest.php +++ b/tests/application/modules/admin/controllers/NewsletterControllerTest.php @@ -2241,9 +2241,9 @@ class Admin_NewsletterControllerPreviewActionWithTemplateLayoutAndRenderingSelec public function cardDescriptionShouldContainsIlEstBeauIlEstFier() { $this->assertXPathContentContains('//div[@class="card"]//p[@class="model_description_Class_Article"]' , 'Il est beau, il est fier'); - } + /** @test */ public function cardBadgeShouldContains() { $this->assertXPathContentContains('//div[@class="card"]//div[contains(@class,"badge-group")]//span[contains(@class,"badge_text")]' diff --git a/tests/application/modules/opac/controllers/AbonneControllerNewslettersTest.php b/tests/application/modules/opac/controllers/AbonneControllerNewslettersTest.php index 07cd8da6b60da1d460f3ef2bd30c15837efb783c..df29ec862c2b02abc863000d7b9f6b4823a19953 100644 --- a/tests/application/modules/opac/controllers/AbonneControllerNewslettersTest.php +++ b/tests/application/modules/opac/controllers/AbonneControllerNewslettersTest.php @@ -844,6 +844,7 @@ class AbonneControllerNewslettersUnsubscribeUserWithoutMailTest extends Abstract 1)); } + /** @test */ public function flashMessengerShouldContains() { $this->assertFlashMessengerContentContains('Vous êtes désinscrit de la liste de diffusion: Nouveautés classique'); diff --git a/tests/library/Class/ArticleTest.php b/tests/library/Class/ArticleTest.php index f4dc8ae55bcb307c45f3b0811401f5226daa2c2a..c7b91e93a0b0d7f3413be0125a3d65063afdeb7d 100644 --- a/tests/library/Class/ArticleTest.php +++ b/tests/library/Class/ArticleTest.php @@ -409,10 +409,10 @@ class ArticleTestSmallArticle extends ModelTestCase { /** @test **/ public function urlProfilShoulNotContainProfil() { - $this->assertEquals(['controller' => 'cms', + $this->assertEquals(['module'=> 'opac', + 'controller' => 'cms', 'action' => 'articleview', - 'id' => '0', - 'module'=> 'opac'], + 'id' => '0'], $this->_article->getUrl()); } } diff --git a/tests/scenarios/Templates/TemplatesNewslettersTest.php b/tests/scenarios/Templates/TemplatesNewslettersTest.php index 0d0ae4d78684e97872b45c822428b23c17d92999..a722b7a111fba56acd29eb62975fc297f62c738f 100644 --- a/tests/scenarios/Templates/TemplatesNewslettersTest.php +++ b/tests/scenarios/Templates/TemplatesNewslettersTest.php @@ -22,9 +22,6 @@ class TemplatesNewslettersWidgetWithDescriptionLengthTest extends AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; - - public function setUp() { parent::setUp(); Class_AdminVar::set('TEMPLATING', 1); @@ -78,7 +75,6 @@ class TemplatesNewslettersWidgetWithCatalogueTestCase extends AbstractControllerTestCase { protected - $_storm_default_to_volatile = true, $_nb_notices; @@ -149,7 +145,6 @@ class TemplatesNewslettersWidgetNewsletterCarouselWithCustomCssTestCase extends AbstractControllerTestCase { protected - $_storm_default_to_volatile = true, $_nb_notices; @@ -264,9 +259,6 @@ class TemplatesNewslettersWidgetWithCatalogueAndOneNbRecords extends TemplatesNe abstract class TemplatesNewslettersIndexWithWidgetTestCase extends AbstractControllerTestCase { - protected $_storm_default_to_volatile = true; - - public function setUp() { parent::setUp(); @@ -384,7 +376,6 @@ class TemplatesNewslettersPreviewWithCustomCssTestCase extends AbstractControllerTestCase { protected - $_storm_default_to_volatile = true, $_nb_notices;