ActiveServiceTemplateFactory.php
817 Bytes
<?php
namespace WPML\TM\Menu\TranslationServices;
use function WPML\Container\make;
use function WPML\FP\partial;
class ActiveServiceTemplateFactory {
/**
* @return \Closure
*/
public static function createRenderer() {
$activeService = ActiveServiceRepository::get();
if ( $activeService ) {
$templateRenderer = self::getTemplateRenderer();
return partial( ActiveServiceTemplate::class . '::render', [ $templateRenderer, 'show' ], $activeService );
}
return function () {
return null;
};
}
/**
* @return \WPML_Twig_Template
*/
private static function getTemplateRenderer() {
$paths = [ WPML_TM_PATH . '/templates/menus/translation-services/' ];
$twigLoader = make( \WPML_Twig_Template_Loader::class, [ ':paths' => $paths ] );
return $twigLoader->get_template();
}
}