Replaced Moment with Carbon #84
11 changed files with 92 additions and 624 deletions
|
@ -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');
|
||||
}
|
||||
|
|
|
@ -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]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -124,7 +124,7 @@ nav {
|
|||
}
|
||||
|
||||
nav img {
|
||||
width: 50px;
|
||||
width: 40px;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +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="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 4 6 L 20 6"/>
|
||||
<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" fill="none" stroke="#1d3040" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" d="M 4 18 L 20 18"/>
|
||||
<!-- 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 |
|
@ -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…
Add table
Reference in a new issue