From 6547ed0c04466ca0d1994c642e002f12ef0b0ace Mon Sep 17 00:00:00 2001 From: Yaman Qalieh Date: Tue, 10 May 2022 03:37:53 -0400 Subject: [PATCH] [docs] Add documentation for html.php functions (#2714) --- docs/06_Helper_functions/index.md | 102 +++++++++++++++++++++++++++++- lib/html.php | 5 +- 2 files changed, 103 insertions(+), 4 deletions(-) diff --git a/docs/06_Helper_functions/index.md b/docs/06_Helper_functions/index.md index da06d251..708155a8 100644 --- a/docs/06_Helper_functions/index.md +++ b/docs/06_Helper_functions/index.md @@ -89,4 +89,104 @@ $html = defaultLinkTo($html, $this->getURI()); // Using bridge URL // Output // -``` \ No newline at end of file +``` + +# backgroundToImg +Replaces tags with styles of `backgroud-image` by `` tags. + +```php +backgroundToImg(mixed $htmlContent) : object +``` + +Returns a DOM object (even if provided a string). + +# extractFromDelimiters +Extract the first part of a string matching the specified start and end delimiters. +```php +function extractFromDelimiters(string $string, string $start, string $end) : mixed +``` + +Returns the extracted string if delimiters were found and false otherwise. + +**Example** + +```php +$string = '
Post author: John Doe
'; +$start = 'author: '; +$end = '<'; +$extracted = extractFromDelimiters($string, $start, $end); + +// Output +// 'John Doe' +``` + +# stripWithDelimiters +Remove one or more part(s) of a string using a start and end delmiters. +It is the inverse of `extractFromDelimiters`. + +```php +function stripWithDelimiters(string $string, string $start, string $end) : string +``` + +Returns the cleaned string, even if no delimiters were found. + +**Example** + +```php +$string = 'foobar'; +$start = ''; +$cleaned = stripWithDelimiters($string, $start, $end); + +// Output +// 'foobar' +``` + +# stripRecursiveHTMLSection +Remove HTML sections containing one or more sections using the same HTML tag. + +```php +function stripRecursiveHTMLSection(string $string, string $tag_name, string $tag_start) : string +``` + +**Example** + +```php +$string = 'foo
ads
ads
bar'; +$tag_name = 'div'; +$tag_start = '
'; +$cleaned = stripRecursiveHTMLSection($string, $tag_name, $tag_start); + +// Output +// 'foobar' +``` + +# markdownToHtml +Converts markdown input to HTML using [Parsedown](https://parsedown.org/). + +```php +function markdownToHtml(string $string) : string +``` + +**Example** +```php +$input = <<RELEASE-2.8

+//
    +//
  • Share QR code of a token
  • +//
  • Dark mode improvemnet
  • +//
  • Fix some layout issues
  • +//
  • Add shortcut to launch the app with screenshot mode on
  • +//
  • Translation improvements
  • +//
+``` diff --git a/lib/html.php b/lib/html.php index 892ecb17..69bd1424 100644 --- a/lib/html.php +++ b/lib/html.php @@ -147,7 +147,7 @@ function extractFromDelimiters($string, $start, $end) { * Remove one or more part(s) of a string using a start and end delmiters * * @param string $string Input string, e.g. `foobar` - * @param string $start Start delimiter, e.g. `` * @param string $end End delimiter, e.g. `` * @return string Cleaned string, e.g. `foobar` */ @@ -197,8 +197,7 @@ function stripRecursiveHTMLSection($string, $tag_name, $tag_start){ /** * Convert Markdown into HTML with Parsedown. * - * @link https://daringfireball.net/projects/markdown/ Markdown - * @link https://github.github.com/gfm/ GitHub Flavored Markdown Spec + * @link https://parsedown.org/ Parsedown * * @param string $string Input string in Markdown format * @return string output string in HTML format