diff options
| -rw-r--r-- | src/view/CalendarBuilder.php | 15 | ||||
| -rw-r--r-- | src/view/HeadBuilder.php | 31 | ||||
| -rw-r--r-- | src/view/templates/calendar.php | 26 |
3 files changed, 36 insertions, 36 deletions
diff --git a/src/view/CalendarBuilder.php b/src/view/CalendarBuilder.php index 4229866..65592f8 100644 --- a/src/view/CalendarBuilder.php +++ b/src/view/CalendarBuilder.php | |||
| @@ -19,21 +19,6 @@ class CalendarBuilder extends AbstractBuilder | |||
| 19 | extract($node->getNodeData()->getData()); | 19 | extract($node->getNodeData()->getData()); |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | |||
| 23 | if($_SESSION['admin']) | ||
| 24 | { | ||
| 25 | |||
| 26 | |||
| 27 | // squelette d'un nouvel article () | ||
| 28 | /*ob_start(); | ||
| 29 | require self::VIEWS_PATH . 'article.php'; | ||
| 30 | $new_article = ob_get_clean();*/ | ||
| 31 | } | ||
| 32 | |||
| 33 | // articles existants | ||
| 34 | /*$this->useChildrenBuilder($node); | ||
| 35 | $content = $this->html;*/ | ||
| 36 | |||
| 37 | ob_start(); | 22 | ob_start(); |
| 38 | require $viewFile; | 23 | require $viewFile; |
| 39 | $this->html = ob_get_clean(); // pas de concaténation ici, on écrase | 24 | $this->html = ob_get_clean(); // pas de concaténation ici, on écrase |
diff --git a/src/view/HeadBuilder.php b/src/view/HeadBuilder.php index fa0f063..16bf2b6 100644 --- a/src/view/HeadBuilder.php +++ b/src/view/HeadBuilder.php | |||
| @@ -19,30 +19,30 @@ class HeadBuilder extends AbstractBuilder | |||
| 19 | 19 | ||
| 20 | $css = ''; | 20 | $css = ''; |
| 21 | foreach($page->getCSS() as $name){ | 21 | foreach($page->getCSS() as $name){ |
| 22 | $css .= '<link rel="stylesheet" href="' . self::versionedFileURL('css', $name) . '">' . "\n"; | 22 | $css .= self::insertCSS($name); |
| 23 | } | 23 | } |
| 24 | 24 | ||
| 25 | $js = ''; | 25 | $js = ''; |
| 26 | foreach($page->getJS() as $name){ | 26 | foreach($page->getJS() as $name){ |
| 27 | $js .= '<script src="' . self::versionedFileURL('js', $name) . '"></script>' . "\n"; | 27 | $js .= self::insertJS($name); |
| 28 | } | 28 | } |
| 29 | 29 | ||
| 30 | if(MainBuilder::$modif_mode){ | 30 | if(MainBuilder::$modif_mode){ |
| 31 | $css .= '<link rel="stylesheet" href="' . self::versionedFileURL('css', 'modif_page') . '">' . "\n"; | 31 | $css .= self::insertCSS('modif_page'); |
| 32 | $js .= '<script src="' . self::versionedFileURL('js', 'modif_page') . '"></script>' . "\n"; | 32 | $js .= self::insertJS('modif_page'); |
| 33 | } | 33 | } |
| 34 | 34 | ||
| 35 | if($_SESSION['admin']){ | 35 | if($_SESSION['admin']){ |
| 36 | // édition éléments sur toutes les pages (header, footer et favicon) | 36 | // édition éléments sur toutes les pages (header, footer et favicon) |
| 37 | $js .= '<script src="' . self::versionedFileURL('js', 'Input') . '"></script>' . "\n"; | 37 | $js .= self::insertJS('Input'); |
| 38 | 38 | ||
| 39 | // sert partout? | 39 | // sert partout? |
| 40 | $js .= '<script src="' . self::versionedFileURL('js', 'Fetcher') . '"></script>' . "\n"; | 40 | $js .= self::insertJS('Fetcher'); |
| 41 | 41 | ||
| 42 | // tinymce, nécéssite un script de copie dans composer.json | 42 | // tinymce, nécéssite un script post-install et post-update dans composer.json |
| 43 | $css .= '<link rel="stylesheet" href="' . self::versionedFileURL('css', 'tinymce') . '">' . "\n"; | 43 | $css .= self::insertCSS('tinymce'); |
| 44 | $js .= '<script src="' . self::versionedFileURL('js', 'tinymce/tinymce.min') . '"></script>' . "\n"; // pour js/tinymce/tinymce.min.js | 44 | $js .= self::insertJS('tinymce/tinymce.min'); |
| 45 | $js .= '<script src="' . self::versionedFileURL('js', 'tinymce') . '"></script>' . "\n"; | 45 | $js .= self::insertJS('tinymce'); |
| 46 | } | 46 | } |
| 47 | 47 | ||
| 48 | $title = Model::$page_path->getLast()->getPageName(); | 48 | $title = Model::$page_path->getLast()->getPageName(); |
| @@ -60,7 +60,16 @@ class HeadBuilder extends AbstractBuilder | |||
| 60 | } | 60 | } |
| 61 | } | 61 | } |
| 62 | 62 | ||
| 63 | static public function versionedFileURL(string $type, string $filename): string | 63 | static function insertCSS(string $name): string |
| 64 | { | ||
| 65 | return '<link rel="stylesheet" href="' . self::versionedFileURL('css', $name) . '">' . "\n"; | ||
| 66 | } | ||
| 67 | static function insertJS(string $name): string | ||
| 68 | { | ||
| 69 | return '<script src="' . self::versionedFileURL('js', $name) . '"></script>' . "\n"; | ||
| 70 | } | ||
| 71 | |||
| 72 | static function versionedFileURL(string $type, string $filename): string | ||
| 64 | { | 73 | { |
| 65 | $path = $type . '/' . $filename . '.' . $type; | 74 | $path = $type . '/' . $filename . '.' . $type; |
| 66 | 75 | ||
diff --git a/src/view/templates/calendar.php b/src/view/templates/calendar.php index e45f631..8e765c4 100644 --- a/src/view/templates/calendar.php +++ b/src/view/templates/calendar.php | |||
| @@ -1,19 +1,25 @@ | |||
| 1 | <?php declare(strict_types=1); ?> | ||
| 2 | <section class="calendar" id="<?= $this->id_node ?>"> | ||
| 3 | <script src='js/fullcalendar/packages/core/index.global.min.js'></script> | ||
| 4 | <script src='js/fullcalendar/packages/daygrid/index.global.min.js'></script> | ||
| 5 | <script src='js/fullcalendar/packages/timegrid/index.global.min.js'></script> | ||
| 6 | <script src='js/fullcalendar/packages/list/index.global.min.js'></script> | ||
| 7 | <script src='js/fullcalendar/packages/interaction/index.global.min.js'></script> | ||
| 8 | <script src='js/fullcalendar/packages/core/locales/fr.global.min.js'></script> | ||
| 9 | <?php | 1 | <?php |
| 2 | declare(strict_types=1); | ||
| 3 | |||
| 4 | $calendar_js_files = [ | ||
| 5 | 'fullcalendar/packages/core/index.global.min', | ||
| 6 | 'fullcalendar/packages/daygrid/index.global.min', | ||
| 7 | 'fullcalendar/packages/timegrid/index.global.min', | ||
| 8 | 'fullcalendar/packages/list/index.global.min', | ||
| 9 | 'fullcalendar/packages/interaction/index.global.min', | ||
| 10 | 'fullcalendar/packages/core/locales/fr.global.min' | ||
| 11 | ]; | ||
| 10 | if($_SESSION['admin'] === true){ | 12 | if($_SESSION['admin'] === true){ |
| 11 | echo '<script src="' . HeadBuilder::versionedFileURL('js', 'calendar_admin') . '"></script>' . "\n"; | 13 | $calendar_js_files[] = 'calendar_admin'; |
| 12 | } | 14 | } |
| 13 | else{ | 15 | else{ |
| 14 | echo '<script src="' . HeadBuilder::versionedFileURL('js', 'calendar') . '"></script>' . "\n"; | 16 | $calendar_js_files[] = 'calendar'; |
| 15 | } | 17 | } |
| 16 | ?> | 18 | ?> |
| 19 | <section class="calendar" id="<?= $this->id_node ?>"> | ||
| 20 | <?php foreach($calendar_js_files as $file){ | ||
| 21 | echo HeadBuilder::insertJS($file); | ||
| 22 | } ?> | ||
| 17 | <h3><?= $title ?></h3> | 23 | <h3><?= $title ?></h3> |
| 18 | <div id="calendar_zone"> | 24 | <div id="calendar_zone"> |
| 19 | <div id="calendar"></div> | 25 | <div id="calendar"></div> |
