1 | <?php |
||
9 | class LipsumImplementation extends AbstractFusionObject { |
||
10 | |||
11 | const MIN_WORDS_PER_SENTENCE = 4; |
||
12 | const MAX_WORDS_PER_SENTENCE = 10; |
||
13 | |||
14 | protected $latinWords = |
||
15 | array('donec', 'at', 'posuere', 'est', 'in', 'volutpat', 'nam', 'egestas', 'tempus', 'turpis', |
||
16 | 'ac', 'gravida', 'morbi', 'faucibus', 'sapien', 'ut', 'erat', 'lacinia', 'commodo', 'nullam', |
||
17 | 'vestibulum', 'venenatis', 'leo', 'nec', 'pharetra', 'sed', 'blandit', 'urna', 'lorem', 'convallis', |
||
18 | 'quis', 'porta', 'rutrum', 'nulla', 'nibh', 'eros', 'etiam', 'magna', 'velit', 'tincidunt', 'ultrices', |
||
19 | 'et', 'libero', 'efficitur', 'felis', 'aliquet', 'ante', 'cursus', 'fusce', 'massa', 'non', 'odio', |
||
20 | 'id', 'fermentum', 'purus', 'maecenas', 'semper', 'dignissim', 'mauris', 'diam', 'neque', |
||
21 | 'suspendisse', 'arcu', 'sit', 'amet', 'elit', 'facilisi', 'bibendum', 'eget', 'ipsum', 'primis', |
||
22 | 'orci', 'luctus', 'cubilia', 'curae', 'vehicula', 'suscipit', 'viverra', 'pellentesque', 'ligula', |
||
23 | 'proin', 'ullamcorper', 'nisi', 'praesent', 'ultricies', 'lacus', 'scelerisque', 'maximus', 'vitae', |
||
24 | 'curabitur', 'sem', 'ex', 'hendrerit', 'euismod', 'nunc', 'tortor', 'eleifend', 'duis', 'eu', 'dui', |
||
25 | 'facilisis', 'dapibus', 'nisl', 'cras', 'rhoncus', 'consequat', 'aliquam', 'vel', 'quam', 'tristique', |
||
26 | 'sodales', 'tellus', 'phasellus', 'aenean', 'feugiat', 'vivamus', 'dictum', 'finibus', 'enim', |
||
27 | 'pulvinar', 'mi', 'malesuada', 'risus', 'auctor', 'pretium', 'augue', 'placerat', 'a', 'consectetur', |
||
28 | 'metus', 'justo', 'lectus', 'vulputate', 'congue', 'dolor', 'iaculis', 'varius', 'molestie', |
||
29 | 'condimentum', 'accumsan', 'porttitor', 'mollis', 'quisque', 'ornare', 'imperdiet', 'class', 'aptent', |
||
30 | 'taciti', 'sociosqu', 'ad', 'litora', 'torquent', 'per', 'conubia', 'nostra', 'inceptos', 'himenaeos', |
||
31 | 'interdum', 'mattis', 'lobortis', 'cum', 'sociis', 'natoque', 'penatibus', 'magnis', 'dis', |
||
32 | 'parturient', 'montes', 'nascetur', 'ridiculus', 'mus', 'tempor', 'sollicitudin', 'fringilla', |
||
33 | 'elementum', 'sagittis', 'integer'); |
||
34 | |||
35 | protected $lastWord = ''; |
||
36 | |||
37 | /** |
||
38 | * Evaluate this TypoScript object and return the result |
||
39 | * @return string |
||
40 | */ |
||
41 | public function evaluate() |
||
54 | |||
55 | /** |
||
56 | * Select a random word from array and make sure it isn't used twice in a row |
||
57 | * |
||
58 | * @return string |
||
59 | */ |
||
60 | protected function randomWord() |
||
71 | |||
72 | /** |
||
73 | * Create a sentence consisting of randomly selected words |
||
74 | * |
||
75 | * @param $length |
||
76 | * @return string |
||
77 | */ |
||
78 | protected function createSentence($length) |
||
96 | |||
97 | /** |
||
98 | * @param $wordCount |
||
99 | * @param $usedWordsCount |
||
100 | * @return int |
||
101 | */ |
||
102 | protected function getSentenceLength($wordCount, $usedWordsCount) |
||
114 | |||
115 | /** |
||
116 | * Create an array of sentences with the given word count |
||
117 | * |
||
118 | * @param $wordCount |
||
119 | * @param $startLipsum |
||
120 | * @return array |
||
121 | */ |
||
122 | protected function createSentences($wordCount, $startLipsum) |
||
141 | |||
142 | /** |
||
143 | * Create a specified number of paragraphs from the given sentences array |
||
144 | * |
||
145 | * @param $sentences |
||
146 | * @param $paragraphCount |
||
147 | * @param $sentencesPerParagraph |
||
148 | * @param $textAlign |
||
149 | * @return array |
||
150 | */ |
||
151 | protected function createParagraphs($sentences, $paragraphCount, $sentencesPerParagraph, $textAlign) |
||
167 | } |
||
168 |