diff --git a/app/Http/Controllers/API/SettingsAPIController.php b/app/Http/Controllers/API/SettingsAPIController.php index 79e8ae7..5496f7e 100644 --- a/app/Http/Controllers/API/SettingsAPIController.php +++ b/app/Http/Controllers/API/SettingsAPIController.php @@ -8,6 +8,7 @@ use App\Services\SettingsService; use App\Services\RenderService; use App\Services\MaintenanceService; use App\Services\AuthService; +use App\Services\AssetService; class SettingsAPIController extends Controller { @@ -15,21 +16,25 @@ class SettingsAPIController extends Controller protected $render; protected $mainteance; protected $auth; + protected $assets; public function __construct( SettingsService $settingsService, RenderService $renderService, MaintenanceService $maintenanceService, - AuthService $authService + AuthService $authService, + AssetService $assetService ) { $this->settings = $settingsService; $this->render = $renderService; $this->maintenance = $maintenanceService; $this->auth = $authService; + $this->assets = $assetService; } public function publish(Request $request) { + $this->assets->moveToTheme(true); $result = $this->render->publishAll(); return response()->json($result)->header('Content-Type', 'application/json'); } diff --git a/app/Services/AssetService.php b/app/Services/AssetService.php index 641644d..c4e38f2 100644 --- a/app/Services/AssetService.php +++ b/app/Services/AssetService.php @@ -15,6 +15,9 @@ class AssetService $this->themeTestImagePath = '../public/theme/images/global/'; $this->themeTestCSSPath = '../public/theme/css/theme/'; $this->themeTestScriptsPath = '../public/theme/scripts/theme/'; + $this->themeImagePath = '../public/assets/images/global/'; + $this->themeCSSPath = '../public/assets/css/theme/'; + $this->themeScriptsPath = '../public/assets/scripts/theme/'; $this->themes = $themeService; $this->currentTheme = $this->themes->getCurrentTheme(); } @@ -24,8 +27,14 @@ class AssetService return $this->currentTheme; } - public function moveToTheme() + public function moveToTheme($live = false) { + $imagePath = ''; + $cssPath = ''; + $scriptPath = ''; + ($live) ? $imagePath = $this->themeImagePath : $imagePath = $this->themeTestImagePath; + ($live) ? $cssPath = $this->themeCSSPath : $cssPath = $this->themeTestCSSPath; + ($live) ? $scriptPath = $this->themeScriptsPath : $scriptPath = $this->themeTestScriptsPath; //get current theme foreach ( new \DirectoryIterator('../content/themes/' . $this->currentTheme . '/assets/images/global/') as $file @@ -34,17 +43,17 @@ class AssetService continue; } //make theme directory if not present - if (!is_dir($this->themeTestImagePath)) { - mkdir($this->themeTestImagePath, 0755, true); + if (!is_dir($imagePath)) { + mkdir($imagePath, 0755, true); } - if (!is_file($this->themeTestImagePath . $file->getFileName())) { + if (!is_file($imagePath . $file->getFileName())) { copy( '../content/themes/' . $this->currentTheme . '/assets/images/global/' . $file->getFileName(), - $this->themeTestImagePath . $file->getFileName() + $imagePath . $file->getFileName() ); } else { //image is already there, so chill @@ -52,40 +61,38 @@ class AssetService //print $file->getFilename() . "\n"; } //clear test theme css and script directories - $styles = glob($this->themeTestCSSPath . '*'); // get all file names + $styles = glob($cssPath . '*'); // get all file names foreach ($styles as $file) { // iterate files if (is_file($file)) { unlink($file); // delete file } } - $scripts = glob($this->themeTestScriptsPath . '*'); // get all file names + $scripts = glob($scriptPath . '*'); // get all file names foreach ($scripts as $file) { // iterate files if (is_file($file)) { unlink($file); // delete file } } - // - //copy theme assets to public $newcss = glob('../content/themes/' . $this->currentTheme . '/assets/css/*'); - if (!is_dir($this->themeTestCSSPath)) { - mkdir($this->themeTestCSSPath, 0755, true); + if (!is_dir($cssPath)) { + mkdir($cssPath, 0755, true); } foreach ($newcss as $file) { // iterate files if (is_file($file)) { $path = explode('/', $file); - copy($file, $this->themeTestCSSPath . $path[6]); + copy($file, $cssPath . $path[6]); } } $newjs = glob('../content/themes/' . $this->currentTheme . '/assets/scripts/*'); - if (!is_dir($this->themeTestScriptsPath)) { - mkdir($this->themeTestScriptsPath, 0755, true); + if (!is_dir($scriptPath)) { + mkdir($scriptPath, 0755, true); } foreach ($newjs as $file) { // iterate files if (is_file($file)) { $path = explode('/', $file); - copy($file, $this->themeTestScriptsPath . $path[6]); + copy($file, $scriptPath . $path[6]); } } } diff --git a/content/themes/fipamo-default-v2/assets/css/frame.css b/content/themes/fipamo-default-v2/assets/css/frame.css index c4da05a..9e23128 100644 --- a/content/themes/fipamo-default-v2/assets/css/frame.css +++ b/content/themes/fipamo-default-v2/assets/css/frame.css @@ -124,7 +124,7 @@ nav { } nav img { - width: 50px; + width: 40px; border-bottom: none; } diff --git a/content/themes/fipamo-default-v2/assets/images/global/menu.svg b/content/themes/fipamo-default-v2/assets/images/global/menu.svg index 6724ec1..94a8804 100644 --- a/content/themes/fipamo-default-v2/assets/images/global/menu.svg +++ b/content/themes/fipamo-default-v2/assets/images/global/menu.svg @@ -1,8 +1,7 @@ - - - - - - + + + + + diff --git a/public/assets/css/base.css b/public/assets/css/base.css deleted file mode 100644 index 2242b2b..0000000 --- a/public/assets/css/base.css +++ /dev/null @@ -1,600 +0,0 @@ -h1, h2, h3 { - color: #ebe5d4; -} - -h1 { - font-size: 2em; - font-weight: 400; -} - -h2 { - font-size: 1.75em; - font-weight: 400; -} - -h3 { - font-size: 1.5em; - font-weight: 300; -} - -html { - line-height: 1.15; - -ms-text-size-adjust: 100%; - -webkit-text-size-adjust: 100%; -} - -body { - margin: 0; -} - -article, -aside, -footer, -header, -nav, -section { - display: block; -} - -h1 { - font-size: 2em; - margin: 0.67em 0; - line-height: 1em; -} - -figcaption, -figure, -main { - display: block; -} - -figure { - margin: 1em 40px; -} - -hr { - box-sizing: content-box; - height: 0; - overflow: visible; -} - -pre { - font-family: monospace, monospace; - font-size: 1em; -} - -a { - background-color: transparent; - -webkit-text-decoration-skip: objects; -} - -a:active, -a:hover { - outline-width: 0; -} - -abbr[title] { - border-bottom: none; - text-decoration: underline; - text-decoration: underline dotted; -} - -b, -strong { - font-weight: inherit; - font-weight: bolder; -} - -kbd, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -dfn { - font-style: italic; -} - -mark { - background-color: #ff0; - color: #000; -} - -small { - font-size: 80%; -} - -sub, -sup { - font-size: 60%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.55em; - background: #151d26; - color: #151d26; - border-radius: 2px; - padding: 0 2px 0 2px; - margin: 0 2px 0 0; -} - -audio, -video { - display: inline-block; -} - -audio:not([controls]) { - display: none; - height: 0; -} - -img { - border-style: none; -} - -svg:not(:root) { - overflow: hidden; -} - -button, -input, -optgroup, -select, -textarea { - font-family: sans-serif; - font-size: 100%; - line-height: 1.15; - margin: 0; -} - -button, -input { - overflow: visible; -} - -button, -select { - text-transform: none; -} - -button, html [type=button], -[type=reset], -[type=submit] { - -webkit-appearance: button; -} - -[type=button]::-moz-focus-inner, -[type=reset]::-moz-focus-inner, -[type=submit]::-moz-focus-inner, -button::-moz-focus-inner { - border-style: none; - padding: 0; -} - -[type=button]:-moz-focusring, -[type=reset]:-moz-focusring, -[type=submit]:-moz-focusring, -button:-moz-focusring { - outline: 1px dotted ButtonText; -} - -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} - -legend { - box-sizing: border-box; - color: inherit; - display: table; - max-width: 100%; - padding: 0; - white-space: normal; -} - -progress { - display: inline-block; - vertical-align: baseline; -} - -textarea { - overflow: auto; -} - -[type=checkbox], -[type=radio] { - box-sizing: border-box; - padding: 0; -} - -[type=number]::-webkit-inner-spin-button, -[type=number]::-webkit-outer-spin-button { - height: auto; -} - -[type=search] { - -webkit-appearance: textfield; - outline-offset: -2px; -} - -[type=search]::-webkit-search-cancel-button, -[type=search]::-webkit-search-decoration { - -webkit-appearance: none; -} - -::-webkit-file-upload-button { - -webkit-appearance: button; - font: inherit; -} - -details, -menu { - display: block; -} - -summary { - display: list-item; -} - -canvas { - display: inline-block; -} - -template { - display: none; -} - -[hidden] { - display: none; -} - -form { - display: inline-block; -} -form a { - color: #151d26; -} -form p { - background: #e8c33e; - color: #151d26; - padding: 5px; - display: block; - border-radius: 5px; - text-align: left; -} - -input[type=email], input[type=password], input[type=text] { - border: 0; - border-radius: 5px; - padding: 5px; - margin: 10px 5px 0 0; - font: 18px Helvetica, Arial, sans-serif; - display: inline-block; - background: #151d26; - color: #e8c33e; -} - -textarea { - border: 0; - border-radius: 3px; - color: #ebe5d4; - font: 15px Helvetica, Arial, sans-serif; - background: #151d26; -} - -button, input[type=submit] { - background: #7ED07E; - color: #151d26; - font: 20px Helvetica, Arial, sans-serif; - border-radius: 5px; - position: relative; - cursor: pointer; - border: 0; - padding: 10px 0 5px 0; - transition: all 0.3s linear; -} - -select { - font: 14px Helvetica, Arial, sans-serif; - border: 1px solid #FC6399; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - color: #151d26; -} - -::-webkit-input-placeholder { - font: 25px Helvetica, Arial, sans-serif; - color: #ebe5d4; -} - -:-moz-placeholder { - /* Firefox 18- */ - font: 25px Helvetica, Arial, sans-serif; - color: #ebe5d4; -} - -::-moz-placeholder { - /* Firefox 19+ */ - font: 15px Helvetica, Arial, sans-serif; - color: #ebe5d4; -} - -:-ms-input-placeholder { - font: 25px Helvetica, Arial, sans-serif; - color: #ebe5d4; -} - -html { - margin: 0; - padding: 0; - width: 100%; - height: 100%; - overflow: hidden; - font: 400 1.2em/1.4em Helvetica, Arial, sans-serif; -} -html body { - background: #ebe5d4; - margin: 0; - padding: 0; - perspective: 1px; - transform-style: preserve-3d; - height: 100%; - width: 100%; - overflow-y: scroll; - overflow-x: hidden; -} -html body a { - color: #151d26; - text-decoration: none; - border-bottom: 1px solid #7ED07E; -} -html body a:hover { - border-bottom: 1px solid #FC6399; -} -html body code { - background: #32302f; - color: #7ED07E; - border-radius: 3px; - padding: 3px; -} -html body pre { - background: #32302f; - color: #7ED07E; - border-radius: 3px; - padding: 3px; -} -html body code { - color: #FC6399; - background: none; -} -html body svg.icons { - width: 25px; - fill: #ebe5d4; -} -html body header { - background: #151d26; - height: 90%; - width: 100%; - border-top: #ebe5d4 3px solid; -} -html body header #media { - width: 100%; - height: 90%; - position: absolute; -} -html body header #media .slide { - transition: all 0.7s linear; - width: 100%; - height: 100%; - position: absolute; -} -html body header #media .hide { - opacity: 0; -} -html body header #media .show { - opacity: 1; -} -html body header #media video { - width: 100%; - height: 100%; - object-fit: cover; -} -html body header nav { - width: 97%; - margin: 10px auto; - z-index: 1000; - position: relative; - color: #151d26; -} -html body header nav .left, html body header nav .right { - width: 50%; - display: inline-block; - vertical-align: top; -} -html body header nav .left a.logo-link { - border-bottom: none; - margin: 0 0 20px 0; - display: block; -} -html body header nav .left a.logo-link #logo { - width: 50px; - border-bottom: none; -} -html body header nav .right { - text-align: right; -} -html body header nav .right a.menu-link { - background: #FC6399; - margin-bottom: 4px; - padding: 3px; - border-radius: 2px; - display: inline-block; - font-size: 0.8em; - border-bottom: none; -} -html body header nav .right a.menu-link:hover { - background: #FC6399; -} -html body .container { - z-index: 2; - background: #ebe5d4; - line-height: 30px; - font-weight: lighter; - width: 100%; - color: #32302f; -} -html body .container article { - position: relative; - width: 80%; - height: 80%; - max-width: 840px; - background: #ebe5d4; - vertical-align: top; - color: #32302f; - margin: 0 auto; -} -html body .container article .index, html body .container article .page { - padding: 0 0 15px 0; -} -html body .container article .index img, html body .container article .page img { - display: block; - width: 100%; -} -html body .container article .index h1, html body .container article .index h2, html body .container article .page h1, html body .container article .page h2 { - color: #151d26; -} -html body .container article .index p, html body .container article .page p { - font: 300 1.25em/1.6em Helvetica, Arial, sans-serif; -} -html body .container article .index .page_files .page_doc a, html body .container article .page .page_files .page_doc a { - background: #32302f; - border-radius: 3px; - color: #ebe5d4; - padding: 3px; - margin: 0 5px 0 0; -} -html body .container article .index .meta, html body .container article .page .meta { - font: 500 0.8em/1.3em Helvetica, Arial, sans-serif; - padding: 5px 0 0 0; - border-top: 1px solid #151d26; - background: #ebe5d4; -} -html body .container article .index .meta a, html body .container article .page .meta a { - font-size: 0.8em; - font-weight: 400; -} -html body .container article .index .archive-item, html body .container article .page .archive-item { - padding: 15px 0 20px 0; -} -html body .container article .index .archive-item span.year, html body .container article .page .archive-item span.year { - font-size: 1.5em; - font-weight: 500; - padding: 5px; - display: block; - color: #151d26; -} -html body .container article .index .archive-item .archive-month, html body .container article .page .archive-item .archive-month { - display: inline-block; - vertical-align: top; - width: 30%; - padding: 5px; -} -html body .container article .index .archive-item .archive-month span.month, html body .container article .page .archive-item .archive-month span.month { - color: #FC6399; - font-size: 1.5em; - font-weight: 300; - padding: 5px; - display: block; -} -html body .container section { - padding: 0 0 20px 0; - background: #151d26; -} -html body .container section a { - color: #ebe5d4; -} -html body .container section .index-lists, html body .container section .page-title { - max-width: 840px; - width: 80%; - margin: 0 auto; - padding: 20px 0 0 0; -} -html body .container section .index-lists span, html body .container section .page-title span { - font-size: 2em; - color: #FC6399; - font-weight: 400; - width: 80%; - margin: 0 auto; - padding: 20px 0 0 0; -} -html body .container section .index-lists .recent, html body .container section .index-lists .featured, html body .container section .page-title .recent, html body .container section .page-title .featured { - display: inline-block; - width: 50%; - vertical-align: top; -} -html body .container section .index-lists label, html body .container section .page-title label { - background: #32302f; - color: #ebe5d4; - font-size: 1.5em; - line-height: 1.3; -} -html body footer { - background: #ebe5d4; - padding: 10px; - color: #151d26; - font-size: 0.8em; - font-weight: 600; - height: 100px; -} -html body footer .inner { - margin: 20px auto; - width: 80%; - max-width: 840px; -} -html body footer .inner a { - color: #FC6399; -} -html body header nav { - width: 98%; -} -html body header span { - font-size: 2.5em; -} -html body header .container article .index .archive-item .archive-month, html body header .container article .page .archive-item .archive-month { - width: 45%; -} -html body header nav { - width: 96%; -} -html body header .container article .index, html body header .container article .page { - margin: 0; -} -html body header .container article .index p, html body header .container article .page p { - font: 300 1em/1.6em Helvetica, Arial, sans-serif; -} -html body header .container section .index-lists .recent, html body header .container section .index-lists .featured { - width: 100% !important; -} -html body header nav { - width: 95%; -} -html body .container article .index, html body .container article .page { - margin: 0; -} -html body .container article .index p, html body .container article .page p { - font: 300 0.9em/1.7em Helvetica, Arial, sans-serif; -} -html body .container article .index .archive-item .archive-month, html body .container article .page .archive-item .archive-month { - width: 95%; -} - -/*# sourceMappingURL=base.css.map */ diff --git a/public/assets/css/base.css.map b/public/assets/css/base.css.map deleted file mode 100644 index 361940b..0000000 --- a/public/assets/css/base.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["../../../styles/_typography.sass","../../../styles/_normalize.sass","../../../styles/_colors.sass","../../../styles/_forms.sass","../../../styles/_structure.sass"],"names":[],"mappings":"AAGA;EACI;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;EACA;;;AChBJ;EACI;EACA;EACA;;;AAEJ;EACI;;;AAEJ;AAAA;AAAA;AAAA;AAAA;AAAA;EAMI;;;AAEJ;EACI;EACA;EACA;;;AAEJ;AAAA;AAAA;EAGI;;;AAEJ;EACI;;;AAEJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;;;AACJ;EACI;EACA;;;AAEJ;AAAA;EAEI;;;AAEJ;EACI;EACA;EACA;;;AAEJ;AAAA;EAEI;EACA;;;AAGJ;AAAA;EAEI;EACA;;;AAEJ;EACI;;;AAEJ;EACI;EACA;;;AAEJ;EACI;;;AAEJ;AAAA;EAEI;EACA;EACA;EACA;;;AAEJ;EACI;;;AAEJ;EACI;EACA,YCnFM;EDoFN,OCpFM;EDqFN;EACA;EACA;;;AAEJ;AAAA;EAEI;;;AAGA;EACI;EACA;;;AAER;EACI;;;AAGA;EACI;;;AAER;AAAA;AAAA;AAAA;AAAA;EAKI;EACA;EACA;EACA;;;AAEJ;AAAA;EAEI;;;AAEJ;AAAA;EAEI;;;AAEJ;AAAA;AAAA;EAGI;;;AAEJ;AAAA;AAAA;AAAA;EAII;EACA;;;AAEJ;AAAA;AAAA;AAAA;EAII;;;AAEJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;;;AAEJ;EACI;EACA;;;AAEJ;EACI;;;AAEJ;AAAA;EAEI;EACA;;;AAEJ;AAAA;EAEI;;;AAEJ;EACI;EACA;;;AAEJ;AAAA;EAEI;;;AAEJ;EACI;EACA;;;AAEJ;AAAA;EAEI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AEpMJ;EACI;;AACA;EACI,ODHE;;ACIN;EACI,YDHI;ECIJ,ODNE;ECOF;EACA;EACA;EACA;;;AAER;EACI;EACA;EACA;EACA;EACA;EACA;EACA,YDnBM;ECoBN,ODlBQ;;;ACoBZ;EACI;EACA;EACA,ODrBK;ECsBL;EACA,YD3BM;;;AC6BV;EACI,YD3BS;EC4BT,OD/BM;ECgCN;EACA;EACA;EACA;EACA;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA,OD9CM;;;ACgDV;EACI;EACA,OD9CK;;;ACgDT;AACI;EACA;EACA,ODnDK;;;ACqDT;AACI;EACA;EACA,ODxDK;;;AC0DT;EACI;EACA,OD5DK;;;AEJT;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE,YFLK;EEML;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE,OFpBI;EEqBJ;EACA;;AAEA;EACE;;AAEJ;EACE,YFvBG;EEwBH,OF1BO;EE2BP;EACA;;AAEF;EACE,YF7BG;EE8BH,OFhCO;EEiCP;EACA;;AACF;EACE,OFtCO;EEuCP;;AAEF;EACE;EACA,MFxCG;;AE0CL;EACE,YF/CI;EEgDJ;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE;EACA;EACA;EACA;;AACF;EACE;;AACF;EACE;;AACF;EACE;EACA;EACA;;AACJ;EACE;EACA;EACA;EACA;EACA,OFzEE;;AE0EF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AACA;EACE;EACA;;AACN;EACE;;AACA;EACE,YFxFC;EEyFD;EACA;EACA;EACA;EACA;EACA;;AACA;EACE,YFhGD;;AEkGT;EACE;EACA,YFjGG;EEkGH;EACA;EACA;EAEA,OFrGG;;AEsGH;EACE;EACA;EACA;EACA;EAEA,YF7GC;EE8GD;EACA,OF9GC;EE+GD;;AAGA;EACE;;AACA;EACE;EACA;;AACF;EACE,OF7HF;;AE8HA;EACE;;AAIE;EACE,YF/HP;EEgIO;EACA,OFlIP;EEmIO;EACA;;AACN;EACE;EACA;EACA;EACA,YFzIH;;AE0IG;EACE;EACA;;AAEJ;EACE;;AACA;EACE;EACA;EACA;EACA;EACA,OFzJJ;;AE0JE;EACE;EACA;EACA;EACA;;AACA;EACE,OF/JH;EEgKG;EACA;EACA;EACA;;AACV;EACE;EACA,YFvKE;;AEwKF;EACE,OFrKD;;AEsKD;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA,OFjLC;EEkLD;EACA;EACA;EACA;;AACF;EACE;EACA;EACA;;AACF;EACE,YFvLH;EEwLG,OFzLH;EE0LG;EACA;;AAER;EACE,YF9LG;EE+LH;EACA,OFpMI;EEqMJ;EACA;EACA;;AACA;EACE;EACA;EACA;;AACA;EACE,OF5MG;;AEkNP;EACE;;AACF;EACE;;AAKM;EACE;;AAIV;EACE;;AAGE;EACE;;AACA;EACE;;AAGF;EACE;;AAIR;EACE;;AAGA;EACE;;AACA;EACE;;AAEA;EACE","file":"base.css"} \ No newline at end of file diff --git a/public/assets/images/global/close.svg b/public/assets/images/global/close.svg new file mode 100644 index 0000000..8f2a9ce --- /dev/null +++ b/public/assets/images/global/close.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/public/assets/images/global/default-avi-2.png b/public/assets/images/global/default-avi-2.png new file mode 100644 index 0000000..99ee4bb Binary files /dev/null and b/public/assets/images/global/default-avi-2.png differ diff --git a/public/assets/images/global/menu.svg b/public/assets/images/global/menu.svg new file mode 100644 index 0000000..94a8804 --- /dev/null +++ b/public/assets/images/global/menu.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/public/assets/scripts/theme/Base.js b/public/assets/scripts/theme/Base.js new file mode 100644 index 0000000..a9d7156 --- /dev/null +++ b/public/assets/scripts/theme/Base.js @@ -0,0 +1,35 @@ +export default class Base { + //-------------------------- + // constructor + //-------------------------- + constructor() { + this.currentSlide = 0; + this.slides = document.querySelectorAll('.slide'); + //alert('FRESH'); + document.getElementById('menu-open').addEventListener('click', e => { + document.getElementById('menu').style.opacity = '100%'; + document.getElementById('menu').style.visibility = 'visible'; + }); + document.getElementById('menu-close').addEventListener('click', e => { + document.getElementById('menu').style.opacity = '0'; + document.getElementById('menu').style.visibility = 'hidden'; + }); + this.start(); + } + start() { + if (this.slides.length > 1) { + this.slideInterval = setInterval(() => { + this.slides[this.currentSlide].className = 'hide slide'; + this.currentSlide = (this.currentSlide + 1) % this.slides.length; + this.slides[this.currentSlide].className = 'show slide'; + }, 3000); + } + } + //-------------------------- + // methods + //-------------------------- + + //-------------------------- + // event handlers + //-------------------------- +} diff --git a/public/assets/scripts/theme/ThemeStart.js b/public/assets/scripts/theme/ThemeStart.js new file mode 100644 index 0000000..6f275a3 --- /dev/null +++ b/public/assets/scripts/theme/ThemeStart.js @@ -0,0 +1,9 @@ +import Base from "./Base.js"; + +document.addEventListener( + "DOMContentLoaded", + function () { + var base = new Base(); + }, + false +);