diff --git a/Utils/Parser/Calendar/ICalParser.php b/Utils/Parser/Calendar/ICalParser.php
index dc0c8bc05..6d3b7c791 100755
--- a/Utils/Parser/Calendar/ICalParser.php
+++ b/Utils/Parser/Calendar/ICalParser.php
@@ -43,28 +43,28 @@ class ICalParser
$event = [];
\preg_match('/UID:(.*?)\n/', $match[1], $uidMatch);
- $event['uid'] = \DateTime::createFromFormat('Ymd\THis', $uidMatch[1] ?? '');
+ $event['uid'] = $uidMatch[1] ?? null;
\preg_match('/STATUS:(.*?)\n/', $match[1], $statusMatch);
- $event['status'] = \DateTime::createFromFormat('Ymd\THis', $statusMatch[1] ?? '');
+ $event['status'] = $statusMatch[1] ?? null;
\preg_match('/DTSTART:(.*?)\n/', $match[1], $startMatch);
- $event['start'] = \DateTime::createFromFormat('Ymd\THis', $startMatch[1] ?? '');
+ $event['start'] = $startMatch[1] ?? null;
\preg_match('/DTEND:(.*?)\n/', $match[1], $endMatch);
- $event['end'] = \DateTime::createFromFormat('Ymd\THis', $endMatch[1] ?? '');
+ $event['end'] = $endMatch[1] ?? null;
\preg_match('/ORGANIZER:(.*?)\n/', $match[1], $organizerMatch);
- $event['organizer'] = $organizerMatch[1] ?? '';
+ $event['organizer'] = $organizerMatch[1] ?? null;
\preg_match('/SUMMARY:(.*?)\n/', $match[1], $summaryMatch);
- $event['summary'] = $summaryMatch[1] ?? '';
+ $event['summary'] = $summaryMatch[1] ?? null;
\preg_match('/DESCRIPTION:(.*?)\n/', $match[1], $descriptionMatch);
- $event['description'] = $descriptionMatch[1] ?? '';
+ $event['description'] = $descriptionMatch[1] ?? null;
\preg_match('/LOCATION:(.*?)\n/', $match[1], $locationMatch);
- $event['location'] = $locationMatch[1] ?? '';
+ $event['location'] = $locationMatch[1] ?? null;
\preg_match('/GEO:(.*?)\n/', $match[1], $geo);
$temp = \explode(';', $geo[1]);
@@ -74,7 +74,7 @@ class ICalParser
];
\preg_match('/URL:(.*?)\n/', $match[1], $url);
- $event['url'] = $url[1] ?? '';
+ $event['url'] = $url[1] ?? null;
// Check if this event is recurring
if (\preg_match('/RRULE:(.*?)\n/', $match[1], $rruleMatch)) {
@@ -102,17 +102,27 @@ class ICalParser
$rrule = [];
\preg_match('/FREQ=(.*?);/', $rruleString, $freqMatch);
- $rrule['freq'] = $freqMatch[1] ?? '';
+ $rrule['freq'] = $freqMatch[1] ?? null;
\preg_match('/INTERVAL=(.*?);/', $rruleString, $intervalMatch);
- $rrule['interval'] = (int) ($intervalMatch[1] ?? 0);
+ $rrule['interval'] = $intervalMatch[1] ?? null;
+
+ \preg_match('/BYMONTH=(.*?);/', $rruleString, $monthMatch);
+ $rrule['bymonth'] = $monthMatch[1] ?? null;
+
+ \preg_match('/BYMONTHDAY=(.*?);/', $rruleString, $monthdayMatch);
+ $rrule['bymonthday'] = $monthdayMatch[1] ?? null;
if (\preg_match('/COUNT=(.*?);/', $rruleString, $countMatch)) {
$rrule['count'] = (int) ($countMatch[1] ?? 0);
+ } else {
+ $rrule['count'] = null;
}
if (\preg_match('/UNTIL=(.*?);/', $rruleString, $untilMatch)) {
- $rrule['until'] = \DateTime::createFromFormat('Ymd\THis', $untilMatch[1] ?? '');
+ $rrule['until'] = $untilMatch[1] ?? null;
+ } else {
+ $rrule['until'] = null;
}
return $rrule;
diff --git a/tests/Stdlib/Tree/BinarySearchTreeTest.php b/tests/Stdlib/Tree/BinarySearchTreeTest.php
index adc01a2eb..c64a2876a 100644
--- a/tests/Stdlib/Tree/BinarySearchTreeTest.php
+++ b/tests/Stdlib/Tree/BinarySearchTreeTest.php
@@ -35,6 +35,16 @@ final class BinarySearchTreeTest extends \PHPUnit\Framework\TestCase
$bst->insert(new Node('A', 'A'));
$bst->insert(new Node('U', 'U'));
$bst->insert(new Node('R', 'R'));
+
+ self::assertEquals(
+ [
+ 'key' => 'D',
+ 0 => ['key' => 'I'],
+ 1 => ['key' => 'I'],
+ ],
+ $bst->toArray()
+ );
+
$bst->delete($bst->search('I'));
$bst->insert(new Node('Z', 'Z'));
diff --git a/tests/Utils/Parser/Calendar/data/1.json b/tests/Utils/Parser/Calendar/data/1.json
index 9aeaa8621..1ddc70f1e 100644
--- a/tests/Utils/Parser/Calendar/data/1.json
+++ b/tests/Utils/Parser/Calendar/data/1.json
@@ -4,18 +4,18 @@
"status": "CONFIRMED",
"start": "20080212",
"end": "20080213",
- "organizer": "",
+ "organizer": null,
"summary": "Abraham Lincoln",
- "description": "Born February 12, 1809\nSixteenth President (1861-1865)\n\n\n\nhttp://AmericanHistoryCalendar.com",
+ "description": "Born February 12, 1809\nSixteenth President (1861-1865)\\n\\n\\n\\nhttp://AmericanHistoryCalendar.com",
"location": "Hodgenville, Kentucky",
"geo": {
- "lat": -85.7399606,
- "lon": 37.5739497
+ "lat": 37.5739497,
+ "lon": -85.7399606
},
"url": "http://americanhistorycalendar.com/peoplecalendar/1,328-abraham-lincoln",
"freq": "YEARLY",
"interval": "1",
- "count": "",
- "until": ""
+ "count": null,
+ "until": null
}
]
\ No newline at end of file
diff --git a/tests/Utils/Parser/Markdown/MarkdownTest.php b/tests/Utils/Parser/Markdown/MarkdownTest.php
index a8ec9ed6a..a8fbf2a6f 100755
--- a/tests/Utils/Parser/Markdown/MarkdownTest.php
+++ b/tests/Utils/Parser/Markdown/MarkdownTest.php
@@ -50,7 +50,10 @@ final class MarkdownTest extends \PHPUnit\Framework\TestCase
$parser = new Markdown();
$parser->setSafeMode(true);
- self::assertTrue(\file_get_contents(__DIR__ . '/manualdata/xss_bad_url.html') === ($parsed = $parser->text(\file_get_contents(__DIR__ . '/manualdata/xss_bad_url.md'))), $parsed);
+ self::assertEquals(
+ \file_get_contents(__DIR__ . '/manualdata/xss_bad_url.html'),
+ $parser->text(\file_get_contents(__DIR__ . '/manualdata/xss_bad_url.md'))
+ );
}
public function testTablespan() : void
@@ -61,7 +64,10 @@ final class MarkdownTest extends \PHPUnit\Framework\TestCase
]
]);
- self::assertTrue(\file_get_contents(__DIR__ . '/manualdata/tablespan.html') === ($parsed = $parser->text(\file_get_contents(__DIR__ . '/manualdata/tablespan.md'))), $parsed);
+ self::assertEquals(
+ \file_get_contents(__DIR__ . '/manualdata/tablespan.html'),
+ $parser->text(\file_get_contents(__DIR__ . '/manualdata/tablespan.md'))
+ );
}
public function testMath() : void
@@ -70,7 +76,10 @@ final class MarkdownTest extends \PHPUnit\Framework\TestCase
'math' => true
]);
- self::assertTrue(\file_get_contents(__DIR__ . '/manualdata/katex.html') === ($parsed = $parser->text(\file_get_contents(__DIR__ . '/manualdata/katex.md'))), $parsed);
+ self::assertEquals(
+ \file_get_contents(__DIR__ . '/manualdata/katex.html'),
+ $parser->text(\file_get_contents(__DIR__ . '/manualdata/katex.md'))
+ );
}
public function testTOC() : void
@@ -79,7 +88,10 @@ final class MarkdownTest extends \PHPUnit\Framework\TestCase
'toc' => true
]);
- self::assertTrue(\file_get_contents(__DIR__ . '/manualdata/toc.html') === ($parsed = $parser->text(\file_get_contents(__DIR__ . '/manualdata/toc.md'))), $parsed);
- self::assertTrue('' === $parser->contentsList());
+ self::assertEquals(
+ \file_get_contents(__DIR__ . '/manualdata/toc.html'),
+ $parser->text(\file_get_contents(__DIR__ . '/manualdata/toc.md'))
+ );
+ self::assertEquals('', $parser->contentsList());
}
}
diff --git a/tests/Utils/Parser/Presentation/data/Powerpoint.html b/tests/Utils/Parser/Presentation/data/Powerpoint.html
index 1267a631d..76023bf04 100644
--- a/tests/Utils/Parser/Presentation/data/Powerpoint.html
+++ b/tests/Utils/Parser/Presentation/data/Powerpoint.html
@@ -1 +1 @@
-
- folder_open PhpPresentation
- info Info "PhpPresentation"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "Drawing\Gd"
- Shape "RichText"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "RichText"
-
\ No newline at end of file
+
- folder_open PhpPresentation
- info Info "PhpPresentation"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "Drawing\Gd"
- Shape "RichText"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "RichText"
- Shape "RichText"
- Shape "Drawing\Gd"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "RichText"
- Shape "RichText"
- Shape "Drawing\Gd"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "RichText"
- Shape "RichText"
- Shape "Drawing\Gd"
- indeterminate_check_box Slide
- info Info "Slide"
- Shape "Drawing\Gd"
- Shape "RichText"
- Number of slides
- 5
- Document Layout Name
- screen4x3
- Document Layout Height
- 190.5 mm
- Document Layout Width
- 254 mm
- Properties : Category
- demo
- Properties : Company
- Microsoft Corporation
- Properties : Created
- 1608365230
- Properties : Creator
- Orange Management
- Properties : Description
- Demo
- Properties : Keywords
- demo helper report
- Properties : Last Modified By
- Orange Management
- Properties : Modified
- 1608365230
- Properties : Subject
- Orange Management - Demo Report
- Properties : Title
- Orange Management - Demo Report
- HashCode
- 5473d00752162f63ef1106e28d53f116
- Offset X
- 180
- Offset Y
- 120
- Extent X
- 780
- Extent Y
- 750
- Background Color
- #434a51
- HashCode
- bfa8d66e658147e79162f47fbcb8b67a
- Offset X
- 320
- Offset Y
- 120
- Height
- 300
- Width
- 319
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- Name
- Company Logo
- Description
- Company Logo
- Mime-Type
- image/png
- Image

- HashCode
- 872e49519eb64c92926c23d868b2d63d
- Offset X
- 180
- Offset Y
- 450
- Height
- 300
- Width
- 600
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 1
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_CENTER
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 0 px / 0px
- Alignment Indent
- 0 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_NONE
- Line Spacing
- 100
- RichText
- TextElement
- Demo Report
- Font Name
- Calibri
- Font Size
- 35
- Font Color
- #FF3697db
- Font Transform
- Bold : Y - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- c7b2cb235a43f11b6f2ca6d3165d8c5a
- Offset X
- 10
- Offset Y
- 65
- Extent X
- 940
- Extent Y
- 770
- HashCode
- dd5d9a65362968b071b8bfa8a63bf497
- Offset X
- 50
- Offset Y
- 65
- Height
- 75
- Width
- 860
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 1
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 0 px / 0px
- Alignment Indent
- 0 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_NONE
- Line Spacing
- 100
- RichText
- TextElement
- Demo Report - 2020-12-01
- Font Name
- Calibri
- Font Size
- 35
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- cdcf6214a499846d79f3d6049606824e
- Offset X
- 10
- Offset Y
- 170
- Height
- 600
- Width
- 930
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 13
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- Create custom localized reports
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- They are 100% customizable in terms of style, layout and content
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- You can export them as:
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Excel
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- PDF
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Print
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- PowerPoint
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- CSV
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Word
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- 5753a442448e9f6f03a089322cf23219
- Offset X
- 880
- Offset Y
- 650
- Height
- 50
- Width
- 53
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- Name
- Company Logo
- Description
- Company Logo
- Mime-Type
- image/png
- Image

- HashCode
- 7df9c52d3eb7b4c23c36cfcc7f7b89a9
- Offset X
- 10
- Offset Y
- 65
- Extent X
- 940
- Extent Y
- 770
- HashCode
- edbd71a9b845d4a99963e8112cb86776
- Offset X
- 50
- Offset Y
- 65
- Height
- 75
- Width
- 860
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 1
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 0 px / 0px
- Alignment Indent
- 0 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_NONE
- Line Spacing
- 100
- RichText
- TextElement
- Ideas for helpers
- Font Name
- Calibri
- Font Size
- 35
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- 6b19e52dd9b7e450602d6813afecb67a
- Offset X
- 10
- Offset Y
- 170
- Height
- 600
- Width
- 930
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 11
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- Reports (e.g. sales, finance marketing
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- Mailing generator based on pre-defined layouts
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- Document generator based on pre-defined layouts
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- Calculators (e.g. margin calculator)
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- HashCode
- 1a404662c6d64bec647979f186708bdc
- Offset X
- 880
- Offset Y
- 650
- Height
- 50
- Width
- 53
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- Name
- Company Logo
- Description
- Company Logo
- Mime-Type
- image/png
- Image

- HashCode
- 30e10df209968d6d7bec3606e5aa4adc
- Offset X
- 10
- Offset Y
- 65
- Extent X
- 940
- Extent Y
- 770
- HashCode
- a96da89c95fca5c8551dec6687c42792
- Offset X
- 50
- Offset Y
- 65
- Height
- 75
- Width
- 860
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 1
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 0 px / 0px
- Alignment Indent
- 0 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_NONE
- Line Spacing
- 100
- RichText
- TextElement
- Data Source
- Font Name
- Calibri
- Font Size
- 35
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- 80b93448d037c9583c528a8c0ad574c4
- Offset X
- 10
- Offset Y
- 170
- Height
- 600
- Width
- 930
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 7
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 50 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- •
- Line Spacing
- 100
- RichText
- TextElement
- You can provide data for the helpers in many different ways
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Manual user input
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- File upload (e.g. excel, csv)
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Database upload (e.g. sqlite)
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Database connection to local or remote database
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- External APIs
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
Paragraph- Alignment Horizontal
- Alignment::HORIZONTAL_GENERAL
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 150 px / 0px
- Alignment Indent
- -25 px
- Alignment Level
- 1
- Bullet Style
- Bullet::TYPE_BULLET
- Bullet Font
- Calibri
- Bullet Color
- FF000000
- Bullet Char
- ◦
- Line Spacing
- 100
- RichText
- TextElement
- Internal APIs (everything from the Orange Management backend)
- Font Name
- Calibri
- Font Size
- 21
- Font Color
- #FF000000
- Font Transform
- Bold : N - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
- HashCode
- 8f18ffdb8c9371cdfa5093f87c08a3f6
- Offset X
- 880
- Offset Y
- 650
- Height
- 50
- Width
- 53
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- Name
- Company Logo
- Description
- Company Logo
- Mime-Type
- image/png
- Image

- HashCode
- 6785ef4f1168f66db3142f2fc74399a5
- Offset X
- 180
- Offset Y
- 120
- Extent X
- 780
- Extent Y
- 750
- Background Color
- #434a51
- HashCode
- cf83e9bf79d09d1c570a528c2a4a020f
- Offset X
- 320
- Offset Y
- 120
- Height
- 300
- Width
- 319
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- Name
- Company Logo
- Description
- Company Logo
- Mime-Type
- image/png
- Image

- HashCode
- f7940b69c864380686e3c9357c78bec5
- Offset X
- 180
- Offset Y
- 450
- Height
- 300
- Width
- 600
- Rotation
- 0°
- Hyperlink
- False
- Fill
- None
- Border
- @Todo
- IsPlaceholder
- false
- # of paragraphs
- 1
- Inset (T / R / B / L)
- 4.8px / 9.6px / 4.8px / 9.6px
- Text
- Paragraph
- Alignment Horizontal
- Alignment::HORIZONTAL_CENTER
- Alignment Vertical
- Alignment::VERTICAL_BASE
- Alignment Margin (L / R)
- 0 px / 0px
- Alignment Indent
- 0 px
- Alignment Level
- 0
- Bullet Style
- Bullet::TYPE_NONE
- Line Spacing
- 100
- RichText
- TextElement
- Thank You!
- Font Name
- Calibri
- Font Size
- 42
- Font Color
- #FF3697db
- Font Transform
- Bold : Y - Italic : N - Underline : Underline::UNDERLINE_NONE - Strikethrough : N - SubScript : N - SuperScript : N
\ No newline at end of file