Brak opisu

Analytics.php 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace MailPoet\Twig;
  3. if (!defined('ABSPATH')) exit;
  4. use MailPoet\Analytics\Analytics as AnalyticsGenerator;
  5. use MailPoet\DI\ContainerWrapper;
  6. use MailPoet\InvalidStateException;
  7. use MailPoetVendor\Twig\Extension\AbstractExtension;
  8. use MailPoetVendor\Twig\TwigFunction;
  9. class Analytics extends AbstractExtension {
  10. public function getFunctions() {
  11. $analytics = ContainerWrapper::getInstance()->get(AnalyticsGenerator::class);
  12. if (!$analytics instanceof AnalyticsGenerator) {
  13. throw new InvalidStateException('AnalyticsGenerator service was not registered!');
  14. }
  15. return [
  16. new TwigFunction(
  17. 'get_analytics_data',
  18. [$analytics, 'generateAnalytics'],
  19. ['is_safe' => ['all']]
  20. ),
  21. new TwigFunction(
  22. 'is_analytics_enabled',
  23. [$analytics, 'isEnabled'],
  24. ['is_safe' => ['all']]
  25. ),
  26. new TwigFunction(
  27. 'get_analytics_public_id',
  28. [$analytics, 'getPublicId'],
  29. ['is_safe' => ['all']]
  30. ),
  31. new TwigFunction(
  32. 'is_analytics_public_id_new',
  33. [$analytics, 'isPublicIdNew'],
  34. ['is_safe' => ['all']]
  35. ),
  36. ];
  37. }
  38. }