using the generator!
authorEduardo <[email protected]>
Thu, 23 Nov 2023 19:40:38 +0000 (20:40 +0100)
committerEduardo <[email protected]>
Thu, 23 Nov 2023 19:40:38 +0000 (20:40 +0100)
page-generator/index.php

index f35d0bcd4054c4101f9f80db14c0b549b7653c5f..4edba1e0d4d9847b2c36903a9b68efb6b5197ac0 100644 (file)
@@ -102,24 +102,9 @@ $generator->writeToFile($head_path, '
 
 // generate footer
 $footer_path = $partialsPath . "/footer.html";
-$generator->writeToFile($footer_path, '<section id="footer"><p>');
-
-$footer_line = 1;
-foreach ($data['footer'] as $item) {
-    if ($item['line'] != $footer_line) {
-        $footer_line = $item['line'];
-        $generator->writeToFile($footer_path, '<br>');
-    }
-
-    if (!is_null($item['url']))
-        $generator->writeToFile($footer_path, $generator->a($item['url'], $item['text'], $item['title']));
-    else if (!is_null($item['title']))
-        $generator->writeToFile($footer_path, $generator->spanTitle($item['title'], $item['text']));
-    else
-        $generator->writeToFile($footer_path, $item['text'] . " ");
-}
-
-$generator->writeToFile($footer_path, '</p></section></body></html>');
+$generator->writeToFile($footer_path, '<section id="footer">');
+$generator->writeToFile($footer_path, $generator->form_html($data['footer'], null, "en"));
+$generator->writeToFile($footer_path, '</section></body></html>');
 
 #endregion
 #region menu
@@ -174,6 +159,7 @@ foreach ($menu_list as $item)
 
 foreach ($data['pages'] as $page) {
     $page_path = BASE_PATH_TEMP . "/pages/" . $page['path'] . "/index.html";
+    $page['class'] = array_map('trim', explode(",", $page['class']));
 
     // put page title in header
     if (!empty($path_title[$page['path']]))
@@ -184,7 +170,7 @@ foreach ($data['pages'] as $page) {
     // put headers
     $generator->writeToFile($page_path, $formed_head);
     $generator->writeToFile($page_path, file_get_contents($header_path));
-    $generator->writeToFile($page_path, '<section id="content" class="' . $page["type"] . '">');
+    $generator->writeToFile($page_path, '<section id="content" class="' . implode(' ', $page['class']) . '">');
 
     // add title if any
     if (!empty($path_title[$page['path']])) {
@@ -192,89 +178,13 @@ foreach ($data['pages'] as $page) {
     }
 
     // get page data
-
     if (empty($data['pages'][$page['path']]))
         $data['pages'][$page['path']] = load_data(URL . '?sheet=' . $page['path']);
 
     $page_data = $data['pages'][$page['path']];
-
-    switch ($page["type"]) {
-        case '1-col':
-            $section = "";
-            foreach ($page_data as $key => $line) {
-                if ($line['section'] != $section) {
-                    if ($key != 0)
-                        $generator->writeToFile($page_path, '</p>');
-                    $section = $line['section'];
-                    $generator->writeToFile($page_path, '<h2>' . $line['section'] . '</h2><p>');
-                } elseif ($key == 0)
-                    $generator->writeToFile($page_path, '<p>');
-
-                if (array_key_exists('url', $line) && $line['url'] != null)
-                    $generator->writeToFile($page_path, $generator->a($line['url'], $line['text']));
-                else
-                    $generator->writeToFile($page_path, $line['text']);
-
-                $generator->writeToFile($page_path, '<br>');
-            }
-            $generator->writeToFile($page_path, '</p>');
-            break;
-
-        case '1-col-list':
-            $section = "";
-            foreach ($page_data as $key => $line) {
-                if ($line['section'] != $section) {
-                    if ($key != 0)
-                        $generator->writeToFile($page_path, '</ul>');
-                    $section = $line['section'];
-                    $generator->writeToFile($page_path, '<h2>' . $line['section'] . '</h2><ul>');
-                } elseif ($key == 0)
-                    $generator->writeToFile($page_path, '<ul>');
-
-                $generator->writeToFile($page_path, '<li>' . $line['text'] . '</li>');
-            }
-            $generator->writeToFile($page_path, '</ul>');
-            break;
-
-        case '2-col':
-            $section = "";
-            $generator->writeToFile($page_path, '<div class="row">');
-            $generator->writeToFile($page_path, '<div class="col">');
-            foreach ($page_data as $key => $line) {
-                if ($line['section'] != $section) {
-                    if ($key != 0)
-                        $generator->writeToFile($page_path, '</div><div class="col">');
-
-                    $section = $line['section'];
-                    $generator->writeToFile($page_path, '<h2>' . $line['section'] . '</h2>');
-                }
-                $generator->writeToFile($page_path, $line['text'] . '<br>');
-            }
-
-            $generator->writeToFile($page_path, '</div></div>');
-            break;
-
-        case '2-col-list':
-            $section = "";
-            $generator->writeToFile($page_path, '<div class="row">');
-            $generator->writeToFile($page_path, '<div class="col">');
-            foreach ($page_data as $key => $line) {
-                if ($line['section'] != $section) {
-                    if ($key != 0)
-                        $generator->writeToFile($page_path, '</ul></div><div class="col">');
-
-                    $section = $line['section'];
-                    $generator->writeToFile($page_path, '<h2>' . $line['section'] . '</h2><ul>');
-                } elseif ($key == 0)
-                    $generator->writeToFile($page_path, '<ul>');
-
-                $generator->writeToFile($page_path, '<li>' . $line['text'] . '</li>');
-            }
-
-            $generator->writeToFile($page_path, '</ul></div></div>');
-            break;
-    }
-
+    // generate page
+    $generator->writeToFile($page_path, $generator->form_html($page_data, "en"));
     $generator->writeToFile($page_path, '</section>');
     $generator->writeToFile($page_path, file_get_contents($footer_path));
 }