twig = $twig; $this->error_handler = $error_handler; } /** * @param string $template_name * @param array $params * * @return string */ public function get_view( $template_name, array $params = [] ) { try { return $this->try_render( $template_name, $params ); } catch ( Exception $e ) { return $this->error_handler->capture_exception( $e )->to_notification( $e ); } } /** * @param string $template_name * @param array $params * * @return string * * @throws LoaderError * @throws RuntimeError * @throws SyntaxError */ public function try_render( $template_name, array $params = [] ) { $params['assets_url'] = TWOFAS_ASSETS_URL; $params['login_url'] = wp_login_url(); return $this->twig->render( $template_name, $params ); } }