ParsedownExtra.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. /**
  3. * @package Grav\Common\Markdown
  4. *
  5. * @copyright Copyright (C) 2015 - 2019 Trilby Media, LLC. All rights reserved.
  6. * @license MIT License; see LICENSE file for details.
  7. */
  8. namespace Grav\Common\Markdown;
  9. use Grav\Common\Page\Interfaces\PageInterface;
  10. use Grav\Common\Page\Markdown\Excerpts;
  11. class ParsedownExtra extends \ParsedownExtra
  12. {
  13. use ParsedownGravTrait;
  14. /**
  15. * ParsedownExtra constructor.
  16. *
  17. * @param Excerpts|null $excerpts
  18. * @param array|null $defaults
  19. * @throws \Exception
  20. */
  21. public function __construct($excerpts = null, $defaults = null)
  22. {
  23. if (!$excerpts || $excerpts instanceof PageInterface || null !== $defaults) {
  24. // Deprecated in Grav 1.6.10
  25. if ($defaults) {
  26. $defaults = ['markdown' => $defaults];
  27. }
  28. $excerpts = new Excerpts($excerpts, $defaults);
  29. user_error(__CLASS__ . '::' . __FUNCTION__ . '($page, $defaults) is deprecated since Grav 1.6.10, use new ' . __CLASS__ . '(new ' . Excerpts::class . '($page, [\'markdown\' => $defaults])) instead.', E_USER_DEPRECATED);
  30. }
  31. parent::__construct();
  32. $this->init($excerpts, $defaults);
  33. }
  34. }