Completed
Pull Request — master (#1473)
by Tim
31:22 queued 01:19
created

MembershipConfirmationMailSubjectRenderer   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 17
Duplicated Lines 0 %

Test Coverage

Coverage 88.89%

Importance

Changes 0
Metric Value
eloc 10
dl 0
loc 17
ccs 8
cts 9
cp 0.8889
rs 10
c 0
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A render() 0 5 2
1
<?php
2
3
declare( strict_types = 1 );
4
5
namespace WMDE\Fundraising\Frontend\Infrastructure\Mail;
6
7
use Symfony\Component\Translation\TranslatorInterface;
8
use WMDE\Fundraising\MembershipContext\Domain\Model\Application;
9
use WMDE\Fundraising\PaymentContext\Domain\Model\PaymentMethod;
10
11
/**
12
 * @license GNU GPL v2+
13
 */
14
class MembershipConfirmationMailSubjectRenderer implements MailSubjectRendererInterface {
15
16
	private $translator;
17
	private $activeMembershipSubject;
18
	private $sustainingMembershipSubject;
19
20 19
	public function __construct( TranslatorInterface $translator, string $activeMembershipSubject, string $sustainingMembershipSubject ) {
21 19
		$this->translator = $translator;
22 19
		$this->activeMembershipSubject = $activeMembershipSubject;
23 19
		$this->sustainingMembershipSubject = $sustainingMembershipSubject;
24 19
	}
25
26 12
	public function render( array $templateArguments = [] ): string {
27 12
		if ( $templateArguments['membershipType'] === Application::ACTIVE_MEMBERSHIP ) {
28
			return $this->translator->trans( $this->activeMembershipSubject );
29
		}
30 12
		return $this->translator->trans( $this->sustainingMembershipSubject );
31
	}
32
33
}
34