mirror of
https://github.com/maxpozdeev/mytinytodo.git
synced 2026-03-11 08:55:27 +00:00
+ can use own markdown converter with MTTMarkdown::setInstanceClass
This commit is contained in:
parent
0c451ee8ee
commit
30e6d8c5ae
3 changed files with 23 additions and 6 deletions
|
|
@ -6,7 +6,6 @@
|
|||
Licensed under the GNU GPL version 2 or any later. See file COPYRIGHT for details.
|
||||
*/
|
||||
|
||||
require_once(MTTINC. 'markup.php');
|
||||
require_once(MTTINC. 'smartsyntax.php');
|
||||
|
||||
class TasksController extends ApiController {
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
/*
|
||||
This file is a part of myTinyTodo.
|
||||
(C) Copyright 2021-2022 Max Pozdeev <maxpozdeev@gmail.com>
|
||||
(C) Copyright 2021-2025 Max Pozdeev <maxpozdeev@gmail.com>
|
||||
Licensed under the GNU GPL version 2 or any later. See file COPYRIGHT for details.
|
||||
*/
|
||||
|
||||
|
|
@ -19,18 +19,35 @@ final class MTTMarkdown
|
|||
/** @var MTTMarkdownInterface */
|
||||
private static $instance;
|
||||
|
||||
/** @var string */
|
||||
private static $instanceClass = MTTParsedownWrapper::class;
|
||||
//private static $instanceClass = MTTCommonmarkWrapper::class;
|
||||
|
||||
/**
|
||||
*
|
||||
* @return MTTMarkdownInterface
|
||||
*/
|
||||
public static function instance() : MTTMarkdownInterface
|
||||
{
|
||||
if (!isset(self::$instance)) {
|
||||
self::$instance = new MTTParsedownWrapper();
|
||||
//self::$instance = new MTTCommonmarkWrapper();
|
||||
}
|
||||
if (isset(self::$instance))
|
||||
return self::$instance;
|
||||
|
||||
// if (do_filter('markdownConverterClass', self::$instanceClass, $newClass) && $newClass) {
|
||||
// self::setInstanceClass($newClass);
|
||||
// }
|
||||
|
||||
self::$instance = new self::$instanceClass();
|
||||
return self::$instance;
|
||||
}
|
||||
|
||||
public static function setInstanceClass(string $class)
|
||||
{
|
||||
if (!is_a($class, MTTMarkdownInterface::class, true)) {
|
||||
throw new Exception("Class '$class' is not a MTTMarkdownInterface");
|
||||
}
|
||||
self::$instanceClass = $class;
|
||||
self::$instance = null;
|
||||
}
|
||||
}
|
||||
|
||||
function noteMarkup($note, $toExternal = false)
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ require_once(MTTINC. 'class.dbcore.php');
|
|||
require_once(MTTINC. 'class.config.php');
|
||||
require_once(MTTINC. 'notifications.php');
|
||||
require_once(MTTINC. 'filters.php');
|
||||
require_once(MTTINC. 'markup.php');
|
||||
|
||||
configureDbConnection();
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue