morning changes

This commit is contained in:
Nick Yeoman 2025-12-15 06:14:07 -08:00
parent 934e134941
commit 7b064eb6da
27 changed files with 127 additions and 21 deletions

View File

@ -13,6 +13,9 @@ $framework_routes = [
'/novaconium/dashboard' => [ '/novaconium/dashboard' => [
'get' => 'NOVACONIUM/dashboard' 'get' => 'NOVACONIUM/dashboard'
], ],
'/novaconium/settings' => [
'get' => 'NOVACONIUM/settings'
],
'/novaconium/pages' => [ '/novaconium/pages' => [
'get' => 'NOVACONIUM/pages' 'get' => 'NOVACONIUM/pages'
], ],

View File

@ -1,9 +1,11 @@
<?php <?php
$data['title'] = 'Novaconium Login Page'; $data = array_merge($data, [
'title' => 'Novaconium Login Page',
'pageclass' => 'novaconium'
]);
// Don't come here if logged in // Don't come here if logged in
if ($session->get('username')) { if ($session->get('username')) {
$redirect->url('/novaconium/dashboard'); $redirect->url('/novaconium/dashboard');
makeitso(); makeitso();
} }
view('@novacore/login'); view('@novacore/auth/login');

View File

@ -1,7 +1,8 @@
<?php <?php
$data = array_merge($data, [ $data = array_merge($data, [
'title' => 'Novaconium Dashboard Page', 'title' => 'Novaconium Dashboard Page',
'pageclass' => 'novaconium' 'pageclass' => 'novaconium',
'pageid' => 'controlPanel'
]); ]);
if ( empty($session->get('username'))) { if ( empty($session->get('username'))) {

View File

@ -3,6 +3,7 @@
$data = array_merge($data, [ $data = array_merge($data, [
'title' => 'Novaconium Edit Page', 'title' => 'Novaconium Edit Page',
'pageclass' => 'novaconium', 'pageclass' => 'novaconium',
'pageid' => 'controlPanel',
'editor' => 'ace' 'editor' => 'ace'
]); ]);

View File

@ -2,7 +2,8 @@
$data = array_merge($data, [ $data = array_merge($data, [
'title' => 'Novaconium Messages', 'title' => 'Novaconium Messages',
'pageclass' => 'novaconium' 'pageclass' => 'novaconium',
'pageid' => 'controlPanel'
]); ]);
if ( empty($session->get('username'))) { if ( empty($session->get('username'))) {

View File

@ -2,7 +2,8 @@
$data = array_merge($data, [ $data = array_merge($data, [
'title' => 'Novaconium Pages', 'title' => 'Novaconium Pages',
'pageclass' => 'novaconium' 'pageclass' => 'novaconium',
'pageid' => 'controlPanel'
]); ]);
if ( empty($session->get('username'))) { if ( empty($session->get('username'))) {

15
controllers/settings.php Normal file
View File

@ -0,0 +1,15 @@
<?php
$data = array_merge($data, [
'title' => 'Novaconium Settings',
'pageclass' => 'novaconium',
'pageid' => 'controlPanel'
]);
if ( empty($session->get('username'))) {
$redirect->url('/novaconium/login');
$messages->error('You are not loggedin');
makeitso();
}
view('@novacore/settings', $data);

View File

@ -21,3 +21,13 @@ Compressed:
docker run --rm -v "$(pwd):/usr/src/app" -w /usr/src/app sass-container --style=compressed sass/novaconium.sass skeleton/novaconium/public/css/novaconium.css docker run --rm -v "$(pwd):/usr/src/app" -w /usr/src/app sass-container --style=compressed sass/novaconium.sass skeleton/novaconium/public/css/novaconium.css
``` ```
Dev:
```bash
docker run --rm \
-v "$(pwd)/sass:/usr/src/sass" \
-v "/home/nick/tmp/novaproject/novaconium/public/css:/usr/src/css" \
-w /usr/src \
sass-container \
sass sass/novaconium.sass css/novaconium.css --no-source-map --style=compressed
```

View File

@ -0,0 +1,4 @@
body#controlPanel
footer
padding: 1rem

View File

@ -0,0 +1,8 @@
body#controlPanel
header
padding: 0
h1#biglogo
padding: 10px 0 0 0
margin: 0

View File

@ -0,0 +1,11 @@
body#controlPanel
div#panel
main#content
flex: 1
padding: 20px 40px
min-width: 0
background-color: #0b0b0bd6
border-left: 2px solid #104910

View File

@ -0,0 +1,22 @@
@use '../abstracts' as *
body#controlPanel
div#panel
div#cp-menu
background-color: #000
width: 360px
padding: 0
white-space: nowrap
ul#cp-nav
list-style: none
margin: 0
padding: 20px 0 0 0
li a
display: block
border-bottom: 1px solid $border-light
padding: 4px 10px
&:hover
background-color: #222

View File

@ -0,0 +1,5 @@
body#controlPanel
div#panel
display: flex
flex-direction: row

View File

@ -0,0 +1,10 @@
@forward 'header';
@forward 'panel';
@forward 'menu';
@forward 'main';
@forward 'footer';
body#controlPanel
h1
font-family: "VT323", "Courier New", "SF Mono", "Fira Code", Consolas, monospace
font-size: 48px

View File

@ -3,7 +3,7 @@
@use '../abstracts' as * @use '../abstracts' as *
@use 'sass:color' // For color.adjust()non-deprecated color tweaks @use 'sass:color' // For color.adjust()non-deprecated color tweaks
body.novaconium body#controlPanel
// Simplified tab styling: Square borders, no rounds // Simplified tab styling: Square borders, no rounds
.tab-container .tab-container
margin: space('lg') auto margin: space('lg') auto

View File

@ -74,7 +74,7 @@ body.novaconium
display: inline-flex display: inline-flex
align-items: center align-items: center
background: color.adjust($accent-light, $alpha: -0.2) background: color.adjust($accent-light, $alpha: -0.2)
color: $accent-light color: #fff
padding: space('xs') space('sm') padding: space('xs') space('sm')
border-radius: 4px border-radius: 4px
font-size: 12px font-size: 12px

View File

@ -2,3 +2,4 @@
@use 'abstracts' as * @use 'abstracts' as *
@use 'base' as * @use 'base' as *
@use 'framework' as * @use 'framework' as *
@use 'controlPanel' as *

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"version":3,"sourceRoot":"","sources":["../../../../sass/abstracts/_variables.sass","../../../../sass/base/_reset.sass","../../../../sass/base/_background.sass","../../../../sass/framework/_main.sass","../../../../sass/framework/_ui.sass","../../../../sass/framework/_forms.sass","../../../../sass/framework/_login_form.sass","../../../../sass/framework/_logo.sass","../../../../sass/framework/_tabs.sass","../../../../sass/framework/_edit_page.sass","../../../../sass/framework/_tooltip.sass","../../../../sass/framework/_ace.sass","../../../../sass/framework/_tags.sass"],"names":[],"mappings":"CAoEA,MACE,0BACA,8BACA,+BACA,mCACA,iCACA,oCACA,qCACA,qCACA,kCACA,yCACA,8CC1EF,EACE,sBAEF,KACE,eACA,gBACA,uBACA,iBDWQ,aCVR,MDYW,KCVb,KACE,SACA,UACA,YDgBW,kCCfX,iBDIQ,aCHR,MDKW,KCJX,iBAGF,kBACE,gBACA,gBACA,gBACA,qBAEF,GACE,iBAEF,GACE,eAEF,GACE,kBAEF,GACE,iBAEF,GACE,kBAEF,GACE,eAGF,EACE,eAEF,MACE,kBAEF,SACE,gBAEF,KACE,kBAGF,EACE,MDnCa,eCoCb,qBACA,sCACA,iCAEA,gBACE,oBDzCW,eC0CX,aAGJ,MACE,eACA,mBAEF,GACE,oBAGF,WACE,aACA,iBACA,qCACA,kCACA,MD7DW,KCgEb,cACE,YDvDU,uDCwDV,iBACA,oCACA,qBACA,kBAEF,IACE,aACA,YACA,cACA,oCACA,kBACA,SACE,gBACA,UAGJ,MACE,WACA,yBACA,aAEF,MACE,cACA,gBACA,2CAEF,GACE,gBAGF,6BACE,oBACA,kBACA,oCACA,MDpGW,KCqGX,oCACA,kBACA,aAEA,qDACE,aACA,aDxGW,eCyGX,wCAEJ,OACE,eACA,qCAEA,gBACE,WACA,mBAGJ,IACE,eACA,YACA,kBAEF,OACE,aAGF,GACE,YACA,WACA,oCACA,aAGF,gBACE,iCACA,mBAGF,aACE,KACE,2BACA,uBAEJ,YACE,8BACA,MDnJW,KCsJb,kBACE,8BACA,MDxJW,KEtBb,gBACI,sBACA,0uKCEF,iCACE,aACA,UACA,uBACA,uBACA,mBAGF,wBACE,aACA,cACA,aACA,SACA,iBHGM,aGFN,gCAEF,2BACE,YACA,cACA,gBACA,UACA,oBACA,iBHNM,aGON,gCAEF,4BACE,6CAEA,uCACE,mBAEJ,2BACE,cACA,mBACA,qBACA,MHjBS,KGmBT,kEACE,oCACA,MHlBS,eGmBT,kBAGJ,0BACE,iCACE,sBACA,mBAEF,iDACE,WACA,gBACA,cAEF,yBACE,gBCtDJ,qBACE,2EACA,kBACA,gCACA,MJcS,KIbT,qBACA,kBACA,sCACA,sCAGF,uBACE,kBAGF,+EACE,mBACA,YACA,eACA,kBACA,iBAEF,0BACE,oCACA,qBACA,4BAEF,2BACE,sCACA,uBACA,8BAEF,0BACE,gCACA,MJdS,iBIeT,kCACA,gBACA,mBAGF,6BACE,WACA,sCAEA,gEACE,sCACA,gBAEF,gCACE,qCACA,MJ/BS,iBIgCT,gBClDF,uDACE,mBAEA,0EACE,WACA,gBAEJ,2DACE,kBAGF,gOAIE,gCACA,sCACA,WACA,cACA,kBACA,2EAEA,wPACE,aLHO,eKIP,2CACA,aAEJ,gEACE,aLRS,eKWX,+DACE,iBLZS,eKaT,mBACA,YACA,mBACA,kBACA,eACA,2EAEA,0IACE,sBACA,sCAGJ,6CACE,ML3BO,iBK6BT,6CACE,ML7BS,eK+BT,mDACE,MLlCO,iBKmCP,0BCzDR,uBAEE,UAIA,+HAGE,WACA,gBACA,aACA,mBACA,sBACA,eACA,sCACA,kBACA,WNEM,aMDN,MNGS,6CMCT,uUACA,4BACA,gCACA,qBACA,kBAEF,4CACE,iVACA,4BACA,gCACA,qBACA,kBAEF,2CACE,WNZW,eMaX,aNbW,eMcX,eACA,0BAEA,iDACE,WNlBS,eMmBT,uCAGF,kDACE,aACA,kBCnDJ,yBACE,kBACA,qBACA,eACA,gBACA,gBAEA,iCACE,WACA,kBACA,MACA,OACA,QACA,SACA,gJACA,0BACA,WACA,oBAGF,gCACE,WACA,kBACA,MACA,OACA,QACA,WACA,qEACA,YACA,kCAEF,+BACE,cACA,kCACA,iBACA,gBACA,WACA,oBACA,gBACA,yBAGA,yFACA,mDAEF,8BACE,cACA,kCACA,iBACA,gBACA,WACA,qBACA,iBACA,0EACA,mDAIA,qCACE,8BAEN,gBACE,GACE,SACF,KACE,UAEJ,kBACE,QACE,uBACF,IACE,+BACF,IACE,gCACF,IACE,8BACF,IACE,gCCvEJ,+BACE,mBACA,WRcM,aQZR,yBACE,aACA,iBRWQ,eQVR,6CAEF,4BACE,mBACA,WRMQ,eQLR,sCACA,mBACA,eACA,eACA,gBACA,kBACA,WACA,YRSQ,uDQPR,kCACE,iCAEF,wCACE,iBAEF,mCACE,iBRZI,aQaJ,uCACA,MRTS,eQUT,iBAEJ,6BACE,aACA,eACA,iBRpBM,aQqBN,MRnBS,KQoBT,YAEA,oCACE,cC5CN,iBACI,gBAEA,wBACI,WACA,iBACA,aAEJ,qBACI,gBACA,oBCRN,yBACE,kBACA,qBACA,YACA,eACA,MViBW,eUhBX,mBACA,QAEA,sCACE,kBACA,YACA,iBVMM,eULN,MVMO,KULP,gBACA,gBACA,cACA,eACA,aACA,UACA,uBACA,eACA,oCACA,oBAEA,6CACE,WACA,kBACA,SACA,UACA,iBACA,mBACA,sEAEJ,4CACE,mBACA,UAGJ,8BACE,kBACA,aC1CJ,kBACE,WACA,iBAEF,YACE,aACA,gCACA,YXuBU,uDWpBV,wBACE,qCACA,kCACA,iDAEF,0BACE,mCAEF,8CACE,oCAGF,6CACE,yCCtBF,+BACE,kBACA,SACA,OACA,QACA,iBACA,gBACA,WZWQ,eYVR,sCACA,gBACA,0BACA,gBACA,SACA,UACA,WACA,UACA,kBACA,uBAEA,mDACE,UACA,mBAEF,kCACE,qBACA,eACA,MZPO,KYQP,eACA,sCAEA,mFAEE,8BACA,MZXO,eYaT,6CACE,mBAEN,4BACE,kBAGF,4BACE,aACA,eACA,WACA,mBACA,sCACA,eACA,WZ/BQ,eYgCR,gBACA,cAEA,kCACE,YACA,yBACA,MZrCO,KYsCP,YZ5BM,uDY6BN,eACA,OACA,gBACA,aAEA,+CACE,MZ3CK,iBY6CX,0BACE,oBACA,mBACA,8BACA,MZhDW,eYiDX,qBACA,kBACA,eACA,gBACA,gBACA,uBACA,mBAEA,sCACE,gBACA,YACA,cACA,eACA,mBACA,eACA,UACA,cAEA,4CACE,WAWN,2EACE","file":"novaconium.css"}

View File

@ -9,17 +9,17 @@
{# Page Header #} {# Page Header #}
<header> <header>
<h1 id="biglogo"><span class="main">Novaconium PHP</span></h1> <h1 id="biglogo"><span class="main">Novaconium</span></h1>
</header> </header>
<!-- Main Content Of The Page --> <!-- Main Content Of The Page -->
<div id="panel" class="container"> <div id="panel" class="container">
{% include ['@novaconium/controlPanel/menu.html.twig'] %} {% include ['@novaconium/cp/menu.html.twig'] %}
<article> <main id="content">
{% block content %}{% endblock %} {% block content %}{% endblock %}
</article> </main>
</div> </div>
@ -28,6 +28,12 @@
<div class="copyright">&copy; {{ 'now' | date('Y') }} Novaconium</div> <div class="copyright">&copy; {{ 'now' | date('Y') }} Novaconium</div>
</footer> </footer>
{% include '@novaconium/javascript/page-edit.html.twig' %}
{% if editor == 'ace' %}
{% include '@novaconium/javascript/ace.html.twig' %}
{% endif %}
{% if debug is not empty %} {% if debug is not empty %}
<div id="debug"> <div id="debug">
<h2>Debugging Information</h2> <h2>Debugging Information</h2>

View File

@ -1,9 +1,9 @@
<div class="left"> <div id="cp-menu">
<ul id="leftnav"> <ul id="cp-nav">
<li><a href="/novaconium/dashboard">Dashboard</a></li> <li><a href="/novaconium/dashboard">Dashboard</a></li>
<li><a href="/novaconium/pages">Pages</a></li> <li><a href="/novaconium/pages">Pages</a></li>
<li><a href="/novaconium/messages">Messages</a></li> <li><a href="/novaconium/messages">Messages</a></li>
<li><a href="/novaconium/settings">Settings</a></li>
<li><a href="/novaconium/logout">Logout</a></li> <li><a href="/novaconium/logout">Logout</a></li>
<li><a href="/novaconium/login">Login</a></li>
</ul> </ul>
</div> </div>

View File

@ -1,4 +1,4 @@
{% extends '@novaconium/master.html.twig' %} {% extends '@novaconium/cp/control-panel.html.twig' %}
{% block content %} {% block content %}
<h1>{{title}}</h1> <h1>{{title}}</h1>

View File

@ -1,4 +1,4 @@
{% extends '@novaconium/master.html.twig' %} {% extends '@novaconium/cp/control-panel.html.twig' %}
{% block content %} {% block content %}
<h2>Edit Page - {{ title }}</h2> <h2>Edit Page - {{ title }}</h2>

View File

@ -1,4 +1,4 @@
{% extends '@novaconium/master.html.twig' %} {% extends '@novaconium/cp/control-panel.html.twig' %}
{% block content %} {% block content %}
<h1>{{title}}</h1> <h1>{{title}}</h1>

View File

@ -1,4 +1,4 @@
{% extends '@novaconium/master.html.twig' %} {% extends '@novaconium/cp/control-panel.html.twig' %}
{% block content %} {% block content %}
<h1>{{title}}</h1> <h1>{{title}}</h1>

6
views/settings.html.twig Normal file
View File

@ -0,0 +1,6 @@
{% extends '@novaconium/cp/control-panel.html.twig' %}
{% block content %}
<h1>{{title}}</h1>
<p>Settings will go here.</p>
{% endblock %}