- Hintergrundeinstellungen: Man kann damit denn Hintergrund ändern z.B. von Blau auf Orange. #
- Event-timeline: Auf der Home (oder auch auf anderen pages) werden bald-stattfindende Events aufgelistet (große Events im Hotel z.B. Knastevent) und sobald das Event staffindet,kann man auf einen Button klicken,der dich direkt zu denn Raum hinführt. (Ausnahme Raum ist geschlossen)
- Erinnerungs-timeline: Dies soll dazu führen,dass man aufmerksam auf Newsevents gemacht wird um z.B. mehr Teilnehmer zu gewinnen.
- Kommentarfunktion: In denn News kann man Kommentare abgeben z.B. wie man das Event findet. Die Kommentarfunktion kann von Administratoren aber auch von dennen die die News verfasst haben abgeschaltet werden (auf einzelne News)
[DEV] KiteCMS
-
-
-
Danke, ich werde die TODO-Liste erweitern.
-
Warum machst du nicht das alte CMS weiter?
Gruß, MustiFreak -
Warum machst du nicht das alte CMS weiter?
Gruß, MustiFreakIch habe in meiner Abwesenheit, viele neue Sachen gelernt. Und alles umzuschreiben dauert zu lange, darum mach ich es neu. Aber ich werde die alte Theme hinzufügen.
Cheers,
Sir Akaya -
UPDATE
- Routing System hinzugefügt
- Web-Logging hinzugefügt
Es gab ein paar Startschwierigkeiten darum erst jetzt dieses kleine Update.
Das Web-Logging kann man ein- und ausschalten. Man kann auch Einstellen, dass die Logs alle 24h geleert werden. Ein Web-Log sieht ungefähr so aus:Spoiler anzeigen
Es kann sein das es sich noch ein wenig ändert.
Snippets
Spoiler anzeigen
PHP
Alles anzeigen<?php /* * [ Author: Sir Akaya ] * [ Version: 1.0 ] * [ Copyright: (c) 2015, Sir Akaya ] */ namespace System\Controllers; use System\Controllers\PageController; class RouteController extends BaseController { private $view; private $model; private $route; public function __construct($config) { parent::__construct($config); if(isset($_GET['page'])) { $this->route = $this->getFilter()->url($_GET['page']); $this->route = explode('/', rtrim($this->route, '/')); } else { $this->route = null; } if(isset($this->route[0]) && !empty($this->route[0])) { if(file_exists($this->getConfig()['app']['root'] . '/System/Views/' . $this->getConfig()['site']['theme'] . '/' . ucfirst($this->route[0]) . '.php')) { $this->view = $this->route[0]; $this->model = $this->route[0] . 'Model'; } else { $this->view = 'Error'; $this->model = 'ErrorModel'; } } else { $this->view = 'Index'; $this->model = 'IndexModel'; } $this->getLog()->Logged(ucfirst($this->view), 'kite.log'); new PageController($this->getConfig(), ucfirst($this->view), ucfirst($this->model)); } public function __destruct() { $this->view = null; $this->model = null; $this->route = null; } } ?>
PHP
Alles anzeigen<?php /* * [ Author: Sir Akaya ] * [ Version: 1.0 ] * [ Copyright: (c) 2015, Sir Akaya ] */ namespace System\Controllers; class PageController extends BaseController { private $view; private $model; private $object; private $language; public function __construct($config, $view, $model) { parent::__construct($config); $this->view = $view; $this->model = $model; $this->object = $this->getModel(); $this->language = $this->getLanguage(); $this->getOutput(); } public function getModel() { if(file_exists($this->getConfig()['app']['root'] . '/System/Models/' . $this->model . '.php')) { $this->object = 'System\Models\\' . $this->model; $this->object = new $this->object($this->getConfig()); return $this->object; } } public function getLanguage() { if(file_exists($this->getConfig()['app']['root'] . '/App/Langs/' . $this->getConfig()['site']['language'] . '.json')) { $this->language = json_decode(file_get_contents($this->getConfig()['app']['root'] . '/App/Langs/' . $this->getConfig()['site']['language'] . '.json'), true); $this->language = str_replace(['{site_url}', '{site_name}'], [$this->getConfig()['site']['url'], $this->getConfig()['site']['name']], $this->language); return $this->language; } else { die('Language file not found.'); exit; } } public function getOutput() { ob_start(); if(file_exists($this->getConfig()['app']['root'] . '/System/Views/' . $this->getConfig()['site']['theme'] . '/' . $this->view . '.php')) { require_once $this->getConfig()['app']['root'] . '/System/Views/' . $this->getConfig()['site']['theme'] . '/' . $this->view . '.php'; } $output = ob_get_contents(); foreach($this->language as $key => $value) { $output = str_replace('{lang.' . $key . '}', $value, $output); } ob_end_clean(); echo $output; } public function __destruct() { $this->view = null; $this->model = null; $this->object = null; $this->language = null; } } ?>
PHP
Alles anzeigen<?php /* * [ Author: Sir Akaya ] * [ Version: 1.0 ] * [ Copyright: (c) 2015, Sir Akaya ] */ namespace System\Librarys; use System\App; class Log extends App { public function __construct($config) { parent::__construct($config); } public function ClearLogs() { $files = glob($this->getConfig()['app']['root'] . '/System/Storage/Logs/*'); foreach($files as $file) { if(time() - filemtime($file) >= 86400) { unlink($file); fopen($file, 'w'); } } } public function Logged($log, $file) { if($this->getConfig()['logs']['clear'] === true) { $this->ClearLogs(); } if(file_exists($this->getConfig()['app']['root'] . '/System/Storage/Logs/' . $file)) { $logged = '[' . date('d/m/y - H:i:s') . '] ' . $this->getUser()->getUserIp() . ' [**] GET /System/Views/' . $this->getConfig()['site']['theme'] . '/' . $log . '.php' . "\n"; file_put_contents($this->getConfig()['app']['root'] . '/System/Storage/Logs/' . $file, $logged, FILE_APPEND | LOCK_EX); } } } ?>
Ich werde zuerst die Theme von SyncCMS machen.
Cheers,
Sir Akaya -
UPDATE
- Helper Classes hinzugefügt
- Komplette Material Design Palette hinzugefügt
Ich habe ein CSS File gemacht, die die Arbeite erleichtert. Darin findet man z.B. die Class "no-margin" und dass löscht dann das ganze margin. Auch positionieren ist möglich, mit z.B. "align-left", "align-right" und "align-center". Dazu hab ich noch die ganze Material Design Farbpalette hinzugefügt. Das war sehr mühsam. Ich habe dazu einen selbstgemachten Generator benutzt.
Snippets
Spoiler anzeigen
PHP
Alles anzeigen<?php $colors = [ '50' => 'eceff1', '100' => 'cfd8dc', '200' => 'b0bec5', '300' => '90a4ae', '400' => '78909c', '500' => '607d8b', '600' => '546e7a', '700' => '455a64', '800' => '37474f', '900' => '263238', 'a100' => 'ff9e80', 'a200' => 'ff6e40', 'a400' => 'ff3d00', 'a700' => 'dd2c00' ]; foreach($colors as $key => $value) { echo '.text-red-' . $key . ' { <br> color: #' . $value . ' !important;<br> }<br><br>'; } foreach($colors as $key => $value) { echo '.fill-red-' . $key . ' { <br> background: #' . $value . ' !important;<br> }<br><br>'; } ?>
Color Palette: Colors.css
Helper Class: Helpers.cssIch werde weniger Zeit haben, daran zu arbeiten, wie bei der alten CMS, weil ich jetzt wieder Arbeiten muss.
Cheers,
Sir Akaya -
UPDATE
- Color Palette erweitert
- Panels hinzugefügt
- Messages hinzugefügt
Die Color Palette wurde erweitert. Jetzt kann man nicht nur die Hintergrund- und Textfarbe ändern, sondern auch den Border-Color. Bei den Panels und Messages kann man jede Farbe nehmen die auf dieser Material Design Palette ist. Wenn man jetzt z.B. einen Roten Hintergrund möchte, macht man einfach die Class "fill-red-{Zahl}" bei der Zahl einfach bei der Farbpalette schauen welche Zahl man möchte, z.B. 500.
Screens
Snippets
Spoiler anzeigen
Code
Alles anzeigen<div class="panel panel-msg fill-blue-500 border-blue-600"> <div class="panel-heading"> <h5>Message</h5> <a class="close" href="#"> <i class="fa fa-close"></i> </a> </div> <div class="panel-body"> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </div> </div>
Cheers,
Sir Akaya -
UPDATE
- Panel Layout geändert/erweitert
- Colors Palette vereinfacht
- Helper Classes vereinfacht
- Update zu neuster Font-Awsome Version
Panel wurde mit "panel-tools", "panel-heading" und "panel-footer" erweitert. Alle Classnamen von der Color Palette und Helper Classes wurden geändert. Somit sind die Classnames kürzer und einfacher.
Screens / Snippets
Spoiler anzeigen
Basic
Spoiler anzeigen
Mit Tools
Spoiler anzeigen
Code
Alles anzeigen<div class="panel panel-default"> <div class="panel-title"> Mit Tools </div> <ul class="panel-tools"> <li> <a class="minimize" href="#minimized"> <i class="fa fa-minus"></i> </a> </li> <li> <a class="close" href="#closed"> <i class="fa fa-close"></i> </a> </li> </ul> <div class="panel-body"> Text </div> </div>
Mit Heading
Spoiler anzeigen
Code
Alles anzeigen<div class="panel panel-default"> <div class="panel-title"> Mit Heading </div> <ul class="panel-tools"> <li> <a class="minimize" href="#minimized"> <i class="fa fa-minus"></i> </a> </li> <li> <a class="close" href="#closed"> <i class="fa fa-close"></i> </a> </li> </ul> <div class="panel-heading">Hey</div> <div class="panel-body"> Text </div> </div>
Mit Footer
Spoiler anzeigen
Code
Alles anzeigen<div class="panel panel-default"> <div class="panel-title"> Mit Footer </div> <ul class="panel-tools"> <li> <a class="minimize" href="#minimized"> <i class="fa fa-minus"></i> </a> </li> <li> <a class="close" href="#closed"> <i class="fa fa-close"></i> </a> </li> </ul> <div class="panel-heading">Hey</div> <div class="panel-body"> Text </div> <div class="panel-footer"> Oh damn, its a footer! </div> </div>
Cheers,
Sir Akaya -
Das Design gefällt mir, wirklich aktuell! Ich freue mich auf jegliche Updates, mein Interesse hast du auf jeden Fall geweckt. Viel Erfolg!
-
UPDATE
- Buttons hinzugefügt
Man hat verschieden Classes die man nutzen kann, um den Button zu stylen. Wenn man z.B. einen runden Button möchte macht man die Class "btn-rounded" hin, bei einem Outlined die Class "btn-outlined", ist ja logisch xd. Man kann jede Farbe von der Material Design Farbpalette nehmen. Es gibt auch verschiedene Grössen.
Screens (Livedemo wieder verfügbar)
Cheers,
Sir Akaya -
Passiert hier noch etwas?
-
Ja es ist aber momentan pausiert weil ich stress im RL habe.
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!