Fix gitignore, add missing files
This commit is contained in:
parent
95e3737e91
commit
71f157d393
9 changed files with 2903 additions and 6 deletions
8
.gitignore
vendored
8
.gitignore
vendored
|
@ -60,9 +60,5 @@ typings/
|
|||
# Local development config file
|
||||
config.json
|
||||
package-lock.json
|
||||
**/app.js
|
||||
**/app.css
|
||||
**/app.css.map
|
||||
**/admin.js
|
||||
**/admin.css
|
||||
**/admin.css.map
|
||||
**/public/**/app.js
|
||||
**/public/**/admin.js
|
||||
|
|
12
nfp_moe/app/admin/admin.js
Normal file
12
nfp_moe/app/admin/admin.js
Normal file
|
@ -0,0 +1,12 @@
|
|||
const EditPage = require('./editpage')
|
||||
const AllPages = require('./site_pages')
|
||||
const AllArticles = require('./site_articles')
|
||||
const EditArticle = require('./editarticle')
|
||||
const AllStaff = require('./stafflist')
|
||||
const EditStaff = require('./editstaff')
|
||||
|
||||
window.adminRoutes = {
|
||||
pages: [AllPages, EditPage],
|
||||
articles: [AllArticles, EditArticle],
|
||||
staff: [AllStaff, EditStaff],
|
||||
}
|
66
nfp_moe/public/assets/admin.css
Normal file
66
nfp_moe/public/assets/admin.css
Normal file
|
@ -0,0 +1,66 @@
|
|||
/*
|
||||
===================== Variables =====================
|
||||
*/
|
||||
:root {
|
||||
--admin-table-border: #01579b;
|
||||
--admin-table-header-bg: #3D77C7;
|
||||
--admin-table-header-fg: #fff;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== main =====================
|
||||
*/
|
||||
|
||||
.admin .inside {
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.admin table {
|
||||
margin: 1rem;
|
||||
}
|
||||
|
||||
.admin table {
|
||||
border: solid 1px var(--admin-table-border);
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
font-size: 0.75em;
|
||||
}
|
||||
|
||||
.admin table thead th,
|
||||
.admin table tbody td {
|
||||
text-align: left;
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
.admin table thead th {
|
||||
background-color: var(--admin-table-header-bg);
|
||||
border: solid 1px var(--admin-table-border);
|
||||
color: var(--admin-table-header-fg);
|
||||
}
|
||||
.admin table tbody td {
|
||||
border: solid 1px var(--admin-table-border);
|
||||
color: var(--alt-color);
|
||||
}
|
||||
|
||||
.admin table button {
|
||||
color: var(--link);
|
||||
background: transparent;
|
||||
border-color: transparent;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.admin table td.right,
|
||||
.admin table th.right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.admin .actions {
|
||||
margin: 0.5rem 1rem 0;
|
||||
display: flex;
|
||||
justify-content: flex-end;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.admin .actions a {
|
||||
margin-left: 0.5rem;
|
||||
}
|
596
nfp_moe/public/assets/app.css
Normal file
596
nfp_moe/public/assets/app.css
Normal file
|
@ -0,0 +1,596 @@
|
|||
/*
|
||||
===================== Variables =====================
|
||||
*/
|
||||
:root {
|
||||
--content-max-width: 1280px;
|
||||
--primary-darker-bg: #002f6c;
|
||||
--primary-darker-fg: #fff;
|
||||
--primary-darker-fg-light: #999;
|
||||
--primary-darker-link: #ffad42;
|
||||
|
||||
--primary-bg: #3d77c7;
|
||||
--primary-fg: #fff;
|
||||
--primary-fg-light: #999;
|
||||
--primary-link: #f57c00;
|
||||
|
||||
--bg: #fff;
|
||||
--color: #000;
|
||||
--light: #757575;
|
||||
--link: #bb4d00;
|
||||
--title-bg: #f57c00;
|
||||
--title-fg: #000;
|
||||
--title-sublink: #27159C;
|
||||
--seperator: #ccc;
|
||||
--content-bg: #fff;
|
||||
--content-border: 0px solid transparent;
|
||||
|
||||
--alt-bg: #ccc;
|
||||
--alt-inside-bg: #fff;
|
||||
--alt-inside-border: 1px solid #555;
|
||||
--alt-color: #555;
|
||||
|
||||
--footer-bg: #ccc;
|
||||
--footer-color: #000;
|
||||
--footer-seperator: #fff;
|
||||
--footer-link: #8F3C00;
|
||||
|
||||
--button-border: 1px solid #f57c00;
|
||||
--button-bg: #ffad42;
|
||||
--button-fg: #000;
|
||||
|
||||
--error-bg: red;
|
||||
--error-fg: white;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== Reset =====================
|
||||
*/
|
||||
|
||||
/* Box sizing rules */
|
||||
*, *::before, *::after { box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* Remove default margin */
|
||||
body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Inter var';
|
||||
font-weight: 100 900;
|
||||
font-display: swap;
|
||||
font-style: oblique 0deg 10deg;
|
||||
src: url("Inter.var.woff2?v=3.19") format("woff2");
|
||||
}
|
||||
|
||||
body {
|
||||
min-height: 100vh;
|
||||
text-rendering: optimizeSpeed;
|
||||
line-height: 1.5;
|
||||
font-size: 16px;
|
||||
font-family: 'Inter var', sans-serif;
|
||||
font-feature-settings: "slnt" 0deg, "case", "frac", "tnum", "ss02", "calt", "ccmp", "kern";
|
||||
}
|
||||
|
||||
.italic { font-variation-settings: "slnt" 10deg; }
|
||||
|
||||
a {
|
||||
text-decoration-skip-ink: auto;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
display: block;
|
||||
}
|
||||
|
||||
input, button, textarea, select {
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
*, *::before, *::after {
|
||||
animation-play-state: paused !important;
|
||||
transition: none !important;
|
||||
scroll-behavior: auto !important;
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.488rem;
|
||||
}
|
||||
h2 {
|
||||
font-size: 2.074rem;
|
||||
}
|
||||
h3 {
|
||||
font-size: 1.728rem;
|
||||
}
|
||||
h4 {
|
||||
font-size: 1.44rem;
|
||||
}
|
||||
h5 {
|
||||
font-size: 1.0rem;
|
||||
}
|
||||
|
||||
a, a:visited, button {
|
||||
text-decoration: none;
|
||||
border: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
font-weight: bold;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
input[type=text],
|
||||
input[type=password] {
|
||||
border: 1px solid var(--color);
|
||||
background: var(--bg);
|
||||
color: var(--color);
|
||||
border-radius: 0;
|
||||
padding: 0.25rem;
|
||||
}
|
||||
|
||||
label {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 500;
|
||||
margin-top: 1rem;
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
|
||||
input[type=text]:hover,
|
||||
input[type=text]:active,
|
||||
input[type=password]:hover,
|
||||
input[type=password]:active {
|
||||
border-color: var(--link);
|
||||
}
|
||||
|
||||
button {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== Common =====================
|
||||
*/
|
||||
|
||||
.inside {
|
||||
width: 100%;
|
||||
max-width: var(--content-max-width);
|
||||
display: flex;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.inside.vertical {
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.container {
|
||||
margin: 1rem;
|
||||
}
|
||||
|
||||
.error {
|
||||
background: var(--error-bg);
|
||||
color: var(--error-fg);
|
||||
cursor: pointer;
|
||||
text-align: center;
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
.wrapper {
|
||||
background: var(--footer-bg);
|
||||
color: var(--footer-color);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
min-height: calc(100vh - 200px);
|
||||
padding: 1rem;
|
||||
}
|
||||
|
||||
.wrapper .inside {
|
||||
flex-direction: column;
|
||||
color: var(--alt-color);
|
||||
background: var(--alt-inside-bg);
|
||||
border: var(--alt-inside-border);
|
||||
}
|
||||
|
||||
.wrapper .error {
|
||||
border: 1px solid var(--error-bg);
|
||||
color: var(--error-bg);
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
@keyframes spinner-loader {
|
||||
to {transform: rotate(360deg);}
|
||||
}
|
||||
|
||||
.loading-spinner:after {
|
||||
content: '';
|
||||
box-sizing: border-box;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
margin-top: -10px;
|
||||
margin-left: -10px;
|
||||
border-radius: 50%;
|
||||
border: 2px solid #ccc;
|
||||
border-top-color: #333;
|
||||
animation: spinner-loader .6s linear infinite;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== Header =====================
|
||||
*/
|
||||
|
||||
header {
|
||||
background: var(--primary-darker-bg);
|
||||
color: var(--primary-darker-fg);
|
||||
}
|
||||
|
||||
header a,
|
||||
header a:visited,
|
||||
header button {
|
||||
color: var(--primary-darker-link);
|
||||
}
|
||||
|
||||
header p {
|
||||
color: var(--primary-darker-fg-light);
|
||||
}
|
||||
|
||||
header .logo,
|
||||
header .logo:visited {
|
||||
height: 100px;
|
||||
padding-left: 120px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
background: 25px center no-repeat;
|
||||
background-size: auto 91px;
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
header .logo h1 {
|
||||
font-weight: 500;
|
||||
color: var(--primary-darker-fg);
|
||||
}
|
||||
|
||||
header aside {
|
||||
flex: 2 1 auto;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-end;
|
||||
font-size: 0.8rem;
|
||||
padding: 0.5rem 0.5rem;
|
||||
}
|
||||
|
||||
header aside .actions a {
|
||||
margin-left: 1rem;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.avifsupport header .logo {
|
||||
background-image:url("/assets/img/logo.avif")
|
||||
}
|
||||
.jpegonly header .logo {
|
||||
background-image:url("/assets/img/logo_small.jpg")
|
||||
}
|
||||
|
||||
/*
|
||||
===================== Nav =====================
|
||||
*/
|
||||
|
||||
nav {
|
||||
background: var(--primary-bg);
|
||||
}
|
||||
|
||||
nav a, nav a:visited, nav .loading-spinner {
|
||||
flex: 2 0 auto;
|
||||
text-align: center;
|
||||
font-weight: 300;
|
||||
padding: 10px 10px 7px 10px;
|
||||
border-bottom: 3px solid var(--primary-bg);
|
||||
color: var(--primary-fg);
|
||||
}
|
||||
|
||||
nav a.active {
|
||||
border-bottom-color: var(--primary-link);
|
||||
}
|
||||
|
||||
nav .loading-spinner {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== main =====================
|
||||
*/
|
||||
|
||||
.page-banner {
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
height: 150px;
|
||||
width: 100%;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.page-banner-title {
|
||||
color: white;
|
||||
text-align: right;
|
||||
padding: 0.5rem 1rem;
|
||||
font-size: 1.6rem;
|
||||
flex: 2 1 auto;
|
||||
text-shadow: 0 0 .3em #000;
|
||||
}
|
||||
|
||||
.page-goback {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
|
||||
main a,
|
||||
main a:visited {
|
||||
color: var(--link);
|
||||
}
|
||||
|
||||
main h5 {
|
||||
padding: 0 0.5rem 0.5rem;
|
||||
margin: 0 0 0.75rem;
|
||||
border-bottom: 1px solid var(--seperator);
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
main .loading-spinner {
|
||||
position: fixed;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
}
|
||||
|
||||
main h2 {
|
||||
font-size: 1.4rem;
|
||||
background: var(--title-bg);
|
||||
color: var(--title-fg);
|
||||
text-align: center;
|
||||
font-weight: 400;
|
||||
padding: 0.375rem;
|
||||
line-height: 1.4rem;
|
||||
}
|
||||
|
||||
main .container {
|
||||
flex: 2 1 auto;
|
||||
}
|
||||
|
||||
main .cover picture img {
|
||||
margin-bottom: 1rem;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
main button,
|
||||
input[type=submit] {
|
||||
border: var(--button-border);
|
||||
background: #ffad42;
|
||||
color: #000;
|
||||
align-self: center;
|
||||
padding: 0.25rem 1rem;
|
||||
}
|
||||
|
||||
/* ************** aside ************** */
|
||||
|
||||
main aside {
|
||||
padding: 0 0.5rem;
|
||||
margin: 1rem;
|
||||
font-size: 0.875rem;
|
||||
flex: 0 1 250px;
|
||||
}
|
||||
|
||||
main aside a {
|
||||
display: block;
|
||||
}
|
||||
|
||||
main aside h5 {
|
||||
margin: 0 -0.5rem 0.75rem;
|
||||
}
|
||||
|
||||
main aside ul {
|
||||
margin: 0 0 0.5rem;
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
|
||||
/* ************** paginator ************** */
|
||||
|
||||
paginator {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
paginator a {
|
||||
color: var(--link);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
paginator a,
|
||||
paginator div {
|
||||
display: block;
|
||||
font-size: 0.8rem;
|
||||
max-width: 80px;
|
||||
flex-grow: 2;
|
||||
text-align: center;
|
||||
padding: 0.5rem;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
|
||||
/* ************** articleslim ************** */
|
||||
|
||||
articleslim {
|
||||
display: flex;
|
||||
margin-bottom: 0.75rem;
|
||||
padding-right: 0.5rem;
|
||||
}
|
||||
|
||||
articleslim p.description {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
articleslim .cover {
|
||||
flex: 0 0 124px;
|
||||
margin-right: 0.75rem;
|
||||
}
|
||||
|
||||
articleslim .cover picture img {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
articleslim a.nobg {
|
||||
height: 70px;
|
||||
background: var(--seperator);
|
||||
display: block;
|
||||
}
|
||||
|
||||
articleslim a.title {
|
||||
display: block;
|
||||
margin-bottom: 0.375rem;
|
||||
}
|
||||
|
||||
/* ************** article ************** */
|
||||
|
||||
|
||||
article .row {
|
||||
margin: 1rem 0;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
article .cover {
|
||||
flex: 0 0 auto;
|
||||
margin-right: 1rem;
|
||||
align-self: flex-start;
|
||||
}
|
||||
|
||||
article a.title {
|
||||
flex: 0 0 100%;
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
article .description {
|
||||
font-size: 0.875rem;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
article .meta {
|
||||
font-size: 0.625rem;
|
||||
line-height: 0.75rem;
|
||||
color: var(--light);
|
||||
font-weight: 500;
|
||||
margin-top: 1.25rem;
|
||||
}
|
||||
|
||||
article.fullsize .row {
|
||||
margin: 1rem;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
article.fullsize .cover {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
/* ************** fileinfo ************** */
|
||||
|
||||
fileinfo {
|
||||
padding-left: 0.25rem;
|
||||
margin-bottom: 0.5rem;
|
||||
color: var(--light);
|
||||
line-height: 1rem;
|
||||
font-size: 0.75rem;
|
||||
display: block;
|
||||
}
|
||||
|
||||
fileinfo.slim {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
fileinfo p span,
|
||||
fileinfo p a {
|
||||
margin-right: 0.25rem;
|
||||
}
|
||||
|
||||
fileinfo p a {
|
||||
font-weight: 550;
|
||||
padding-right: 0.25rem;
|
||||
border-right: 1px solid var(--seperator);
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
fileinfo p span {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
fileinfo ul {
|
||||
margin: 0.5rem 0;
|
||||
padding-left: 1.5rem;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== login =====================
|
||||
*/
|
||||
|
||||
.login {
|
||||
align-items: center;
|
||||
font-size: 1rem;
|
||||
padding: 1rem 1rem 2rem;
|
||||
margin: 1rem;
|
||||
max-width: 400px;
|
||||
}
|
||||
|
||||
.login .title {
|
||||
font-size: 1.4rem;
|
||||
font-weight: 200;
|
||||
margin-bottom: 2rem;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.login input,
|
||||
.login label {
|
||||
width: 100%;
|
||||
max-width: 300px;
|
||||
}
|
||||
|
||||
.login input[type=submit] {
|
||||
min-width: 150px;
|
||||
margin-top: 1rem;
|
||||
}
|
||||
|
||||
/*
|
||||
===================== footer =====================
|
||||
*/
|
||||
|
||||
footer {
|
||||
background: var(--footer-bg);
|
||||
color: var(--footer-color);
|
||||
text-align: center;
|
||||
padding: 1rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
font-weight: 500;
|
||||
font-size: 0.625rem;
|
||||
}
|
||||
|
||||
footer ul {
|
||||
margin: 0 0 0.25rem;
|
||||
padding: 0 0 0.25rem;
|
||||
border-bottom: 1px solid var(--footer-seperator);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
flex-wrap: wrap;
|
||||
min-width: 300px;
|
||||
}
|
||||
|
||||
footer ul li {
|
||||
padding: 0 0.25rem;
|
||||
list-style-position: inside;
|
||||
}
|
||||
|
||||
footer a {
|
||||
color: var(--footer-link);
|
||||
margin: 0 0 0.25rem;
|
||||
}
|
||||
|
||||
|
12
nfp_moe_old/app/admin.js
Normal file
12
nfp_moe_old/app/admin.js
Normal file
|
@ -0,0 +1,12 @@
|
|||
const EditPage = require('./admin/editpage')
|
||||
const AdminPages = require('./admin/pages')
|
||||
const AdminArticles = require('./admin/articles')
|
||||
const EditArticle = require('./admin/editarticle')
|
||||
const AdminStaffList = require('./admin/stafflist')
|
||||
const EditStaff = require('./admin/editstaff')
|
||||
|
||||
window.adminRoutes = {
|
||||
pages: [AdminPages, EditPage],
|
||||
articles: [AdminArticles, EditArticle],
|
||||
staff: [AdminStaffList, EditStaff],
|
||||
}
|
588
nfp_moe_old/public/assets/admin.css
Normal file
588
nfp_moe_old/public/assets/admin.css
Normal file
|
@ -0,0 +1,588 @@
|
|||
/* Dark theme */
|
||||
.error {
|
||||
font-size: 0.8em;
|
||||
color: #bb4d00;
|
||||
font-weight: bold;
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
|
||||
.admin-wrapper table {
|
||||
width: calc(100% - 20px);
|
||||
margin: 10px;
|
||||
border: solid 1px #01579b;
|
||||
border-collapse: collapse;
|
||||
border-spacing: 0;
|
||||
font-size: 0.8em;
|
||||
position: relative;
|
||||
}
|
||||
.admin-wrapper table thead th {
|
||||
background-color: #3D77C7;
|
||||
border: solid 1px #01579b;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
text-align: left;
|
||||
}
|
||||
.admin-wrapper table tbody td {
|
||||
text-align: left;
|
||||
border: solid 1px #01579b;
|
||||
color: #333;
|
||||
padding: 10px;
|
||||
}
|
||||
.admin-wrapper table a,
|
||||
.admin-wrapper table a:visited,
|
||||
.admin-wrapper table a:hover {
|
||||
text-decoration: none;
|
||||
color: #bb4d00;
|
||||
font-weight: bold;
|
||||
}
|
||||
.admin-wrapper table button {
|
||||
color: #bb4d00;
|
||||
background: transparent;
|
||||
border: 1px solid #bb4d00;
|
||||
}
|
||||
.admin-wrapper table td.right,
|
||||
.admin-wrapper table th.right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.floating-container {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
background: rgba(0, 0, 0, 0.6);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.input-row {
|
||||
display: flex;
|
||||
}
|
||||
.input-row > * {
|
||||
margin-right: 1rem;
|
||||
flex: 2 1 auto;
|
||||
}
|
||||
.input-row > .small {
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
.input-row > *:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.admin-wrapper .loading-spinner {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: rgba(0, 0, 0, 0.4);
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
.admin-wrapper {
|
||||
flex-grow: 2;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background: #01579b;
|
||||
padding: 0 20px 50px;
|
||||
}
|
||||
|
||||
.admin-actions {
|
||||
background: #01579b;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
min-height: 37px;
|
||||
}
|
||||
.admin-actions span {
|
||||
color: white;
|
||||
padding: 10px;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
.admin-actions a {
|
||||
padding: 10px;
|
||||
text-decoration: none;
|
||||
color: #ffad42;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.fr-box,
|
||||
.fr-toolbar,
|
||||
.fr-box .second-toolbar {
|
||||
border-radius: 0 !important;
|
||||
}
|
||||
|
||||
article.editpage {
|
||||
text-align: center;
|
||||
background: white;
|
||||
padding: 0 0 20px;
|
||||
}
|
||||
article.editpage header {
|
||||
padding: 10px;
|
||||
background: #f57c00;
|
||||
}
|
||||
article.editpage header h1 {
|
||||
color: black;
|
||||
}
|
||||
article.editpage header a {
|
||||
font-size: 14px;
|
||||
text-decoration: none;
|
||||
margin-left: 10px;
|
||||
color: black;
|
||||
}
|
||||
article.editpage fileupload {
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
article.editpage fileupload .inside {
|
||||
height: 150px;
|
||||
}
|
||||
article.editpage fileupload.cover {
|
||||
align-self: center;
|
||||
min-width: 178px;
|
||||
}
|
||||
article.editpage fileupload.cover .display {
|
||||
background-size: auto 100%;
|
||||
}
|
||||
article.editpage form {
|
||||
padding: 0 40px 20px;
|
||||
}
|
||||
article.editpage form textarea {
|
||||
height: 300px;
|
||||
}
|
||||
article.editpage form .loading-spinner {
|
||||
height: 300px;
|
||||
position: relative;
|
||||
}
|
||||
article.editpage h5 {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
article.editpage > .loading-spinner {
|
||||
width: 240px;
|
||||
height: 50px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
table span.subpage {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
article.editarticle {
|
||||
background: white;
|
||||
padding: 0 0 20px;
|
||||
}
|
||||
article.editarticle header {
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
background: #f57c00;
|
||||
}
|
||||
article.editarticle header h1 {
|
||||
color: black;
|
||||
}
|
||||
article.editarticle header a {
|
||||
font-size: 14px;
|
||||
text-decoration: none;
|
||||
margin-left: 10px;
|
||||
color: black;
|
||||
}
|
||||
article.editarticle fileupload {
|
||||
margin: 0 0 20px;
|
||||
}
|
||||
article.editarticle fileupload .inside {
|
||||
height: 150px;
|
||||
}
|
||||
article.editarticle fileupload.cover {
|
||||
align-self: center;
|
||||
min-width: 178px;
|
||||
}
|
||||
article.editarticle form {
|
||||
padding: 0 2rem 1rem;
|
||||
}
|
||||
article.editarticle form textarea {
|
||||
height: 300px;
|
||||
}
|
||||
article.editarticle form label.slim {
|
||||
font-size: 0.7em;
|
||||
}
|
||||
article.editarticle form input.slim {
|
||||
font-size: 0.8em;
|
||||
padding: 2px 5px;
|
||||
}
|
||||
article.editarticle form .loading-spinner {
|
||||
height: 300px;
|
||||
position: relative;
|
||||
}
|
||||
article.editarticle form button.submit {
|
||||
margin-left: 20px;
|
||||
}
|
||||
article.editarticle table tr.rowhidden td {
|
||||
background: #e6e6e6;
|
||||
}
|
||||
article.editarticle table tr.rowfeatured td {
|
||||
background: hsl(120deg, 60%, 85%);
|
||||
}
|
||||
article.editarticle h5 {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
article.editarticle > .loading-spinner {
|
||||
width: 240px;
|
||||
height: 50px;
|
||||
position: relative;
|
||||
}
|
||||
article.editarticle > .loading-spinner.full {
|
||||
width: 100%;
|
||||
}
|
||||
article.editarticle .fileupload {
|
||||
align-self: flex-start;
|
||||
padding: 0.5rem;
|
||||
margin: 0.5rem 0 0.5rem 2rem;
|
||||
min-width: 150px;
|
||||
border: none;
|
||||
border: 1px solid #f57c00;
|
||||
background: #ffad42;
|
||||
color: black;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
}
|
||||
article.editarticle .fileupload input {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
opacity: 0.01;
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
text-indent: -9999px;
|
||||
z-index: 2;
|
||||
}
|
||||
article.editarticle files {
|
||||
align-items: stretch;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 1rem 2rem 0;
|
||||
text-align: left;
|
||||
}
|
||||
article.editarticle files h4 {
|
||||
font-size: 1.1em;
|
||||
font-weight: bold;
|
||||
padding: 0 5px 5px;
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
|
||||
table span.subarticle {
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
article.editstaff {
|
||||
text-align: center;
|
||||
background: white;
|
||||
padding: 0 0 20px;
|
||||
}
|
||||
article.editstaff header {
|
||||
padding: 10px;
|
||||
background: #f57c00;
|
||||
}
|
||||
article.editstaff header h1 {
|
||||
color: black;
|
||||
}
|
||||
article.editstaff header a {
|
||||
font-size: 14px;
|
||||
text-decoration: none;
|
||||
margin-left: 10px;
|
||||
color: black;
|
||||
}
|
||||
article.editstaff form {
|
||||
padding: 0 40px 20px;
|
||||
}
|
||||
article.editstaff form textarea {
|
||||
height: 300px;
|
||||
}
|
||||
article.editstaff form .loading-spinner {
|
||||
height: 300px;
|
||||
position: relative;
|
||||
}
|
||||
article.editstaff h5 {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
article.editstaff > .loading-spinner {
|
||||
width: 240px;
|
||||
height: 50px;
|
||||
position: relative;
|
||||
}
|
||||
article.editstaff > .loading-spinner.full {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.date-selector-wrapper {
|
||||
width: 200px;
|
||||
padding: 3px;
|
||||
background-color: #fff;
|
||||
box-shadow: 1px 1px 10px 1px #5c5c5c;
|
||||
position: absolute;
|
||||
font-size: 12px;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
-o-user-select: none;
|
||||
z-index: 10;
|
||||
/* user-select: none; */
|
||||
}
|
||||
|
||||
.cal-header, .cal-row {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.cal-cell, .cal-nav {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.cal-day-names {
|
||||
height: 25px;
|
||||
line-height: 25px;
|
||||
}
|
||||
|
||||
.cal-day-names .cal-cell {
|
||||
cursor: default;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.cal-cell-prev, .cal-cell-next {
|
||||
color: #777;
|
||||
}
|
||||
|
||||
.cal-months .cal-row, .cal-years .cal-row {
|
||||
height: 60px;
|
||||
line-height: 60px;
|
||||
}
|
||||
|
||||
.cal-nav-prev, .cal-nav-next {
|
||||
flex: 0.15;
|
||||
}
|
||||
|
||||
.cal-nav-current {
|
||||
flex: 0.75;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.cal-months .cal-cell, .cal-years .cal-cell {
|
||||
flex: 0.25;
|
||||
}
|
||||
|
||||
.cal-days .cal-cell {
|
||||
flex: 0.143;
|
||||
}
|
||||
|
||||
.cal-value {
|
||||
color: #fff;
|
||||
background-color: #286090;
|
||||
}
|
||||
|
||||
.cal-cell:hover, .cal-nav:hover {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
.cal-value:hover {
|
||||
background-color: #204d74;
|
||||
}
|
||||
|
||||
/* time footer */
|
||||
.cal-time {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
height: 27px;
|
||||
line-height: 27px;
|
||||
}
|
||||
|
||||
.cal-time-label, .cal-time-value {
|
||||
flex: 0.12;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.cal-time-slider {
|
||||
flex: 0.77;
|
||||
background-image: linear-gradient(to right, #d1d8dd, #d1d8dd);
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 1px;
|
||||
background-position: left 50%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.cal-time-slider input {
|
||||
width: 100%;
|
||||
-webkit-appearance: none;
|
||||
background: 0 0;
|
||||
cursor: pointer;
|
||||
height: 100%;
|
||||
outline: 0;
|
||||
user-select: auto;
|
||||
}
|
||||
|
||||
.ce-block__content,
|
||||
.ce-toolbar__content {
|
||||
max-width: calc(100% - 120px) !important;
|
||||
}
|
||||
|
||||
.cdx-block {
|
||||
max-width: 100% !important;
|
||||
}
|
||||
|
||||
.codex-editor {
|
||||
border: 1px solid var(--input-border);
|
||||
background: var(--input-bg);
|
||||
color: var(--input-fg);
|
||||
}
|
||||
|
||||
.codex-editor:hover,
|
||||
.codex-editor:active {
|
||||
border-color: var(--secondary-bg);
|
||||
}
|
||||
|
||||
fileupload {
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: stretch;
|
||||
flex-direction: column;
|
||||
justify-content: stretch;
|
||||
}
|
||||
fileupload .showicon,
|
||||
fileupload .showbordericon,
|
||||
fileupload .display {
|
||||
flex-grow: 2;
|
||||
}
|
||||
fileupload .showbordericon {
|
||||
border: 3px solid #555;
|
||||
border-style: dashed;
|
||||
background-image: url("./img/upload.svg");
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: 50px;
|
||||
}
|
||||
fileupload .showicon {
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
right: 5px;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
background-image: url("./img/upload.svg");
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
fileupload img {
|
||||
max-width: 600px;
|
||||
width: 100%;
|
||||
align-self: center;
|
||||
min-height: 100px;
|
||||
}
|
||||
fileupload .display {
|
||||
background-size: cover;
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
}
|
||||
fileupload .loading-spinner {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: rgba(51, 51, 51, 0.5333333333);
|
||||
width: 100%;
|
||||
}
|
||||
fileupload input {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
opacity: 0.01;
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
text-indent: -9999px;
|
||||
z-index: 2;
|
||||
}
|
||||
fileupload .remove {
|
||||
border: none;
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
right: 60px;
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
background-image: url("./img/delete.svg");
|
||||
background-position: center;
|
||||
background-repeat: no-repeat;
|
||||
background-color: transparent;
|
||||
background-size: contain;
|
||||
z-index: 3;
|
||||
outline: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
dialogue {
|
||||
background: white;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
text-align: center;
|
||||
width: calc(100% - 40px);
|
||||
max-width: 500px;
|
||||
color: black;
|
||||
}
|
||||
dialogue h2 {
|
||||
background: #bb4d00;
|
||||
color: white;
|
||||
font-size: 1.5em;
|
||||
padding: 10px;
|
||||
}
|
||||
dialogue p {
|
||||
padding: 10px;
|
||||
}
|
||||
dialogue .buttons {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
padding: 10px;
|
||||
}
|
||||
dialogue button {
|
||||
border: 1px solid #bb4d00;
|
||||
background: transparent;
|
||||
color: #bb4d00;
|
||||
padding: 5px 15px;
|
||||
min-width: 150px;
|
||||
}
|
||||
dialogue button.alert {
|
||||
border-color: red;
|
||||
color: red;
|
||||
}
|
||||
dialogue button.cancel {
|
||||
border-color: #999;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.codex-editor {
|
||||
margin-bottom: 0.5rem;
|
||||
}
|
||||
|
||||
input[type=checkbox] {
|
||||
display: block;
|
||||
height: 20px;
|
||||
margin: 0.5rem 0;
|
||||
width: 20px;
|
||||
}
|
||||
|
||||
.darkmodeon .maincontainer .admin-wrapper {
|
||||
color: black;
|
||||
}
|
||||
.darkmodeon .error {
|
||||
color: #e05e00;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=admin.css.map */
|
1
nfp_moe_old/public/assets/admin.css.map
Normal file
1
nfp_moe_old/public/assets/admin.css.map
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../../app/_common.scss","../../app/admin.scss","../../app/admin/admin.scss","../../app/admin/pages.scss","../../app/admin/articles.scss","../../app/admin/staff.scss","../../app/widgets/admin.scss"],"names":[],"mappings":"AAiCA;AC/BA;EACE;EACA,ODSkB;ECRlB;EACA;;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE,kBDnBe;ECoBf;EACA,ODpBe;ECqBf;EACA;;AAEF;EACE;EACA;EACA,ODhBO;ECiBP;;AAEF;AAAA;AAAA;EAGE;EACA,OD1BgB;EC2BhB;;AAGF;EACE,OD/BgB;ECgChB;EACA;;AAGF;AAAA;EAEE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAKF;EACE;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AC7FF;EACE;EACA;EACA;EACA,YFJW;EEKX;;;AAGF;EACE,YFTW;EEUX;EACA;EACA;;AAEA;EACE,OFdS;EEeT;EACA;EACA;;AAGF;EACE;EACA;EACA,OFdiB;EEejB;EACA;;;AAIJ;AAAA;AAAA;EAGE;;;ACjCF;EACE;EACA;EACA;;AAEA;EACE;EACA,YHCW;;AGCX;EACE,OHDS;;AGIX;EACE;EACA;EACA;EACA,OHNe;;AGUnB;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;;;AC/DF;EACE;EACA;;AAEA;EACE;EACA;EACA,YJCW;;AICX;EACE,OJDS;;AIIX;EACE;EACA;EACA;EACA,OJNe;;AIUnB;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAGF;EACE;;AAEA;EACE;;AAGF;EACE;;AAEF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;AAKF;EACE;;AAGF;EACE;;AAIJ;EACE;;AAGF;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA,YJhFiB;EIiFjB,OJhFiB;EIiFjB;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;;AAKN;EACE;;;AChIF;EACE;EACA;EACA;;AAEA;EACE;EACA,YLCW;;AKCX;EACE,OLDS;;AKIX;EACE;EACA;EACA;EACA,OLNe;;AKUnB;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;EACA;;AAEA;EACE;;;AHHN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;;;AAEF;EACE;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;;;AAEF;EACE;EACA;;;AAEF;EACE;;;AAEF;EACE;;;AAGF;AACA;EACE;EACA;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EACuB;;;AACvB;EAAa;;;AAEb;EACE;EACA;EACA;;;AAGF;AAAA;EAEE;;;AIlJF;EACE;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;EAGE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA,ONvEQ;;AMyER;EACE,YNtFgB;EMuFhB,ONtFgB;EMuFhB;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA,ONzGgB;EM0GhB;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AL9BJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAIA;EACE,ODxFM;;AC2FR;EACE,ODtEqB","file":"admin.css"}
|
1625
nfp_moe_old/public/assets/app.css
Normal file
1625
nfp_moe_old/public/assets/app.css
Normal file
File diff suppressed because it is too large
Load diff
1
nfp_moe_old/public/assets/app.css.map
Normal file
1
nfp_moe_old/public/assets/app.css.map
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue