sender = $sender; } /** * @copydoc Variable::descriptions() */ public static function descriptions(): array { return [ self::SENDER_NAME => __('emailTemplate.variable.sender.senderName'), self::SENDER_EMAIL => __('emailTemplate.variable.sender.senderEmail'), self::SENDER_CONTACT_SIGNATURE => __('emailTemplate.variable.sender.signature'), ]; } /** * @copydoc Variable::values() */ public function values(string $locale): array { return [ self::SENDER_NAME => htmlspecialchars($this->sender->getFullName(true, false, $locale)), self::SENDER_EMAIL => htmlspecialchars($this->sender->getData('email')), self::SENDER_CONTACT_SIGNATURE => $this->getSignature($locale), ]; } /** * Sender's contact signature */ protected function getSignature(string $locale): string { $signature = $this->sender->getSignature($locale); return $signature ? PKPString::stripUnsafeHtml($signature) : '
' . htmlspecialchars($this->sender->getFullName(true, false, $locale)) . '
'; } }