SanitizeExtension.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. /* vim: set expandtab sw=4 ts=4 sts=4: */
  3. /**
  4. * hold PhpMyAdmin\Twig\SanitizeExtension class
  5. *
  6. * @package PhpMyAdmin\Twig
  7. */
  8. declare(strict_types=1);
  9. namespace PhpMyAdmin\Twig;
  10. use Twig\Extension\AbstractExtension;
  11. use Twig\TwigFilter;
  12. use Twig\TwigFunction;
  13. /**
  14. * Class SanitizeExtension
  15. *
  16. * @package PhpMyAdmin\Twig
  17. */
  18. class SanitizeExtension extends AbstractExtension
  19. {
  20. /**
  21. * Returns a list of filters to add to the existing list.
  22. *
  23. * @return TwigFilter[]
  24. */
  25. public function getFilters()
  26. {
  27. return [
  28. new TwigFilter(
  29. 'escape_js_string',
  30. 'PhpMyAdmin\Sanitize::escapeJsString',
  31. ['is_safe' => ['html']]
  32. ),
  33. new TwigFilter(
  34. 'js_format',
  35. 'PhpMyAdmin\Sanitize::jsFormat',
  36. ['is_safe' => ['html']]
  37. ),
  38. new TwigFilter(
  39. 'sanitize',
  40. 'PhpMyAdmin\Sanitize::sanitizeMessage',
  41. ['is_safe' => ['html']]
  42. ),
  43. ];
  44. }
  45. /**
  46. * Returns a list of functions to add to the existing list.
  47. *
  48. * @return TwigFunction[]
  49. */
  50. public function getFunctions()
  51. {
  52. return [
  53. new TwigFunction(
  54. 'get_js_value',
  55. 'PhpMyAdmin\Sanitize::getJsValue',
  56. ['is_safe' => ['html']]
  57. ),
  58. ];
  59. }
  60. }