forked from projects/fipamo
edited asset moving class
conversion of markdown files to html works fine, but the coresponding css, js and image assets were not being moved, so the class responsible for moving them was edited so theme assets are moved to their appropriate directories when the site is published. also made some css and image edits, and removed a legacy css files that were no longer in use
This commit is contained in:
parent
a92e124957
commit
8bf640ee18
11 changed files with 92 additions and 624 deletions
|
@ -8,6 +8,7 @@ use App\Services\SettingsService;
|
||||||
use App\Services\RenderService;
|
use App\Services\RenderService;
|
||||||
use App\Services\MaintenanceService;
|
use App\Services\MaintenanceService;
|
||||||
use App\Services\AuthService;
|
use App\Services\AuthService;
|
||||||
|
use App\Services\AssetService;
|
||||||
|
|
||||||
class SettingsAPIController extends Controller
|
class SettingsAPIController extends Controller
|
||||||
{
|
{
|
||||||
|
@ -15,21 +16,25 @@ class SettingsAPIController extends Controller
|
||||||
protected $render;
|
protected $render;
|
||||||
protected $mainteance;
|
protected $mainteance;
|
||||||
protected $auth;
|
protected $auth;
|
||||||
|
protected $assets;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
SettingsService $settingsService,
|
SettingsService $settingsService,
|
||||||
RenderService $renderService,
|
RenderService $renderService,
|
||||||
MaintenanceService $maintenanceService,
|
MaintenanceService $maintenanceService,
|
||||||
AuthService $authService
|
AuthService $authService,
|
||||||
|
AssetService $assetService
|
||||||
) {
|
) {
|
||||||
$this->settings = $settingsService;
|
$this->settings = $settingsService;
|
||||||
$this->render = $renderService;
|
$this->render = $renderService;
|
||||||
$this->maintenance = $maintenanceService;
|
$this->maintenance = $maintenanceService;
|
||||||
$this->auth = $authService;
|
$this->auth = $authService;
|
||||||
|
$this->assets = $assetService;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function publish(Request $request)
|
public function publish(Request $request)
|
||||||
{
|
{
|
||||||
|
$this->assets->moveToTheme(true);
|
||||||
$result = $this->render->publishAll();
|
$result = $this->render->publishAll();
|
||||||
return response()->json($result)->header('Content-Type', 'application/json');
|
return response()->json($result)->header('Content-Type', 'application/json');
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,6 +15,9 @@ class AssetService
|
||||||
$this->themeTestImagePath = '../public/theme/images/global/';
|
$this->themeTestImagePath = '../public/theme/images/global/';
|
||||||
$this->themeTestCSSPath = '../public/theme/css/theme/';
|
$this->themeTestCSSPath = '../public/theme/css/theme/';
|
||||||
$this->themeTestScriptsPath = '../public/theme/scripts/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->themes = $themeService;
|
||||||
$this->currentTheme = $this->themes->getCurrentTheme();
|
$this->currentTheme = $this->themes->getCurrentTheme();
|
||||||
}
|
}
|
||||||
|
@ -24,8 +27,14 @@ class AssetService
|
||||||
return $this->currentTheme;
|
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
|
//get current theme
|
||||||
foreach (
|
foreach (
|
||||||
new \DirectoryIterator('../content/themes/' . $this->currentTheme . '/assets/images/global/') as $file
|
new \DirectoryIterator('../content/themes/' . $this->currentTheme . '/assets/images/global/') as $file
|
||||||
|
@ -34,17 +43,17 @@ class AssetService
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
//make theme directory if not present
|
//make theme directory if not present
|
||||||
if (!is_dir($this->themeTestImagePath)) {
|
if (!is_dir($imagePath)) {
|
||||||
mkdir($this->themeTestImagePath, 0755, true);
|
mkdir($imagePath, 0755, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!is_file($this->themeTestImagePath . $file->getFileName())) {
|
if (!is_file($imagePath . $file->getFileName())) {
|
||||||
copy(
|
copy(
|
||||||
'../content/themes/' .
|
'../content/themes/' .
|
||||||
$this->currentTheme .
|
$this->currentTheme .
|
||||||
'/assets/images/global/' .
|
'/assets/images/global/' .
|
||||||
$file->getFileName(),
|
$file->getFileName(),
|
||||||
$this->themeTestImagePath . $file->getFileName()
|
$imagePath . $file->getFileName()
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
//image is already there, so chill
|
//image is already there, so chill
|
||||||
|
@ -52,40 +61,38 @@ class AssetService
|
||||||
//print $file->getFilename() . "\n";
|
//print $file->getFilename() . "\n";
|
||||||
}
|
}
|
||||||
//clear test theme css and script directories
|
//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
|
foreach ($styles as $file) { // iterate files
|
||||||
if (is_file($file)) {
|
if (is_file($file)) {
|
||||||
unlink($file); // delete 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
|
foreach ($scripts as $file) { // iterate files
|
||||||
if (is_file($file)) {
|
if (is_file($file)) {
|
||||||
unlink($file); // delete file
|
unlink($file); // delete file
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
|
|
||||||
//copy theme assets to public
|
//copy theme assets to public
|
||||||
$newcss = glob('../content/themes/' . $this->currentTheme . '/assets/css/*');
|
$newcss = glob('../content/themes/' . $this->currentTheme . '/assets/css/*');
|
||||||
if (!is_dir($this->themeTestCSSPath)) {
|
if (!is_dir($cssPath)) {
|
||||||
mkdir($this->themeTestCSSPath, 0755, true);
|
mkdir($cssPath, 0755, true);
|
||||||
}
|
}
|
||||||
foreach ($newcss as $file) { // iterate files
|
foreach ($newcss as $file) { // iterate files
|
||||||
if (is_file($file)) {
|
if (is_file($file)) {
|
||||||
$path = explode('/', $file);
|
$path = explode('/', $file);
|
||||||
copy($file, $this->themeTestCSSPath . $path[6]);
|
copy($file, $cssPath . $path[6]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$newjs = glob('../content/themes/' . $this->currentTheme . '/assets/scripts/*');
|
$newjs = glob('../content/themes/' . $this->currentTheme . '/assets/scripts/*');
|
||||||
if (!is_dir($this->themeTestScriptsPath)) {
|
if (!is_dir($scriptPath)) {
|
||||||
mkdir($this->themeTestScriptsPath, 0755, true);
|
mkdir($scriptPath, 0755, true);
|
||||||
}
|
}
|
||||||
foreach ($newjs as $file) { // iterate files
|
foreach ($newjs as $file) { // iterate files
|
||||||
if (is_file($file)) {
|
if (is_file($file)) {
|
||||||
$path = explode('/', $file);
|
$path = explode('/', $file);
|
||||||
copy($file, $this->themeTestScriptsPath . $path[6]);
|
copy($file, $scriptPath . $path[6]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,7 +124,7 @@ nav {
|
||||||
}
|
}
|
||||||
|
|
||||||
nav img {
|
nav img {
|
||||||
width: 50px;
|
width: 40px;
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!-- Generated by Pixelmator Pro 3.3.8 -->
|
<!-- Generated by Pixelmator Pro 3.5.8 -->
|
||||||
<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
<svg width="20" height="16" viewBox="0 0 20 16" xmlns="http://www.w3.org/2000/svg">
|
||||||
<path id="Path" fill="none" stroke="none" d="M 0 0 L 24 0 L 24 24 L 0 24 Z"/>
|
<path id="path1-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 2 L 18 2"/>
|
||||||
<path id="path1" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 4 6 L 20 6"/>
|
<path id="path2-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 8 L 18 8"/>
|
||||||
<path id="path2" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 4 12 L 20 12"/>
|
<path id="path3-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 14 L 18 14"/>
|
||||||
<path id="path3" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 4 18 L 20 18"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
Before Width: | Height: | Size: 658 B After Width: | Height: | Size: 589 B |
|
@ -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 */
|
|
|
@ -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"}
|
|
7
public/assets/images/global/close.svg
Normal file
7
public/assets/images/global/close.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!-- Generated by Pixelmator Pro 3.3.8 -->
|
||||||
|
<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path id="Path" fill="none" stroke="none" d="M 0 0 L 24 0 L 24 24 L 0 24 Z"/>
|
||||||
|
<path id="path1" fill="none" stroke="#f3ebd2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 18 6 L 6 18"/>
|
||||||
|
<path id="path2" fill="none" stroke="#f3ebd2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 6 6 L 18 18"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 523 B |
BIN
public/assets/images/global/default-avi-2.png
Normal file
BIN
public/assets/images/global/default-avi-2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
7
public/assets/images/global/menu.svg
Normal file
7
public/assets/images/global/menu.svg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!-- Generated by Pixelmator Pro 3.5.8 -->
|
||||||
|
<svg width="20" height="16" viewBox="0 0 20 16" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path id="path1-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 2 L 18 2"/>
|
||||||
|
<path id="path2-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 8 L 18 8"/>
|
||||||
|
<path id="path3-copy" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 2 14 L 18 14"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 589 B |
35
public/assets/scripts/theme/Base.js
Normal file
35
public/assets/scripts/theme/Base.js
Normal file
|
@ -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
|
||||||
|
//--------------------------
|
||||||
|
}
|
9
public/assets/scripts/theme/ThemeStart.js
Normal file
9
public/assets/scripts/theme/ThemeStart.js
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
import Base from "./Base.js";
|
||||||
|
|
||||||
|
document.addEventListener(
|
||||||
|
"DOMContentLoaded",
|
||||||
|
function () {
|
||||||
|
var base = new Base();
|
||||||
|
},
|
||||||
|
false
|
||||||
|
);
|
Loading…
Reference in a new issue