Merge branch 'main' into joeykimsey-com

This commit is contained in:
Joey Kimsey
2025-02-05 06:53:50 -05:00
80 changed files with 314 additions and 166 deletions

View File

@ -5,7 +5,7 @@
* This is the base admin controller. Every other admin controller should * This is the base admin controller. Every other admin controller should
* extend this class. * extend this class.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the base api controller. Every other api controller should * This is the base api controller. Every other api controller should
* extend this class. * extend this class.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class handles all the hard-coded configurations. * This class handles all the hard-coded configurations.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -69,14 +69,21 @@ class Config extends BedrockConfig {
$html .= '<div class="col-lg-6">'; $html .= '<div class="col-lg-6">';
$html .= $fieldHtml; $html .= $fieldHtml;
$html .= '</div>'; $html .= '</div>';
$html .= '</div>';
if ( 'file' === $node['type'] ) { if ( 'file' === $node['type'] ) {
$html .= '<div class="mb-3 row">'; $html .= '<div class="mb-3 row">';
$html .= '<h4 class="col-lg-3 col-form-label text-end">Current Image</h4>'; $html .= '<h4 class="col-lg-3 col-form-label text-end">Current Value</h4>';
$html .= '<div class="col-lg-6">'; $html .= '<div class="col-lg-6">';
$html .= '<input type="text" class="form-control" name="'.$name.'Text" value="'.$node['value'] . '">';
$html .= '</div>';
$html .= '</div>';
$html .= '<div class="mb-3 row">';
$html .= '<h4 class="col-lg-3 col-form-label text-end">Current Image</h4>';
$html .= '<div class="col-lg-6 d-flex justify-content-center">';
$html .= '<img alt="configured image" src="{ROOT_URL}' . $node['value'] . '" class="img-circle img-fluid p-2 avatar-125">'; $html .= '<img alt="configured image" src="{ROOT_URL}' . $node['value'] . '" class="img-circle img-fluid p-2 avatar-125">';
$html .= '</div>'; $html .= '</div>';
}
$html .= '</div>'; $html .= '</div>';
}
return Template::parse( $html ); return Template::parse( $html );
} }

View File

@ -4,7 +4,7 @@
* *
* This is the main controller class. * This is the main controller class.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the main TempusProject database model. * This is the main TempusProject database model.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is our class for constructing and sending various kinds of emails. * This is our class for constructing and sending various kinds of emails.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -7,7 +7,7 @@
* error reporting to easily define exactly what feedback you * error reporting to easily define exactly what feedback you
* would like to give. * would like to give.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -6,7 +6,7 @@
* the application. It handles installing the application, installing and updating * the application. It handles installing the application, installing and updating
* models as well as the database, and generating and checking the htaccess file. * models as well as the database, and generating and checking the htaccess file.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class handles all the hard-coded permissions. * This class handles all the hard-coded permissions.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class is used as a foundation for all plugins to build from. * This class is used as a foundation for all plugins to build from.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class handles all the hard-coded preferences. * This class handles all the hard-coded preferences.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin log controller. * This is the admin log controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the composer controller. Its only very effective when using composer for autoloading. * This is the composer controller. Its only very effective when using composer for autoloading.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the error logs controller. * This is the error logs controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the groups admin controller. * This is the groups admin controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin dashboard controller. * This is the admin dashboard controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin app/user tokens controller. * This is the admin app/user tokens controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -36,6 +36,8 @@ class Images extends AdminController {
APP_ROOT_DIRECTORY . 'app/plugins' APP_ROOT_DIRECTORY . 'app/plugins'
]; ];
private $spacer = [];
private $excludedDirectories = [ private $excludedDirectories = [
'.', '.',
'..', '..',
@ -97,12 +99,13 @@ class Images extends AdminController {
$names = explode( DIRECTORY_SEPARATOR, $folder ); $names = explode( DIRECTORY_SEPARATOR, $folder );
$folderName = array_pop( $names ); $folderName = array_pop( $names );
$out = [ $out = [
'spacer' => implode( '', $this->spacer ),
'folderName' => $folderName, 'folderName' => $folderName,
'location' => $folder, 'location' => $folder,
'subdirs' => $subdirs, 'subdirs' => $subdirs,
]; ];
if ( ! empty( $subdirs ) ) { if ( ! empty( $subdirs ) ) {
$out['folderexpand'] = '<i class="fa-solid fa-caret-down justify-content-end"></i>'; $out['folderexpand'] = '<i class="fa fa-caret-down"></i>';
} else { } else {
$out['folderexpand'] = ''; $out['folderexpand'] = '';
} }
@ -116,7 +119,9 @@ class Images extends AdminController {
if ( $top == $sub ) { if ( $top == $sub ) {
$html = ''; $html = '';
} else { } else {
$this->spacer[] = '-> ';
$children = $this->generateFolderHtml( $sub ); $children = $this->generateFolderHtml( $sub );
array_pop( $this->spacer );
Components::set( 'parentfolderName', $object->folderName ); Components::set( 'parentfolderName', $object->folderName );
$html = Views::simpleView( 'forms.folderSelectParent', $children ); $html = Views::simpleView( 'forms.folderSelectParent', $children );
Components::set( 'parentfolderName', '' ); Components::set( 'parentfolderName', '' );
@ -223,12 +228,38 @@ class Images extends AdminController {
} }
public function delete() { public function delete() {
if ( self::$token->delete( [ $id ] ) ) { if ( ! Input::exists( 'fileLocation' ) ) {
Session::flash( 'success', 'Token deleted.' ); Session::flash( 'warning', 'Unknown image.' );
}
Redirect::to( 'admin/images' ); Redirect::to( 'admin/images' );
} }
$fileLocation = Input::get('fileLocation');
// Ensure the file exists
if ( ! file_exists( $fileLocation ) ) {
Session::flash('error', 'File does not exist.');
Redirect::to('admin/images');
}
// Check if the file is an image
$validMimeTypes = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'];
$fileMimeType = mime_content_type( $fileLocation );
if ( ! in_array( $fileMimeType, $validMimeTypes ) ) {
Session::flash('error', 'Invalid file type. Only images can be deleted.');
Redirect::to('admin/images');
}
// Attempt to delete the file
if (@unlink($fileLocation)) {
Session::flash('success', 'Image deleted.');
} else {
Session::flash('error', 'Failed to delete the image.');
}
Redirect::to('admin/images');
}
public function rename() { public function rename() {
if ( ! Input::exists( 'fileLocation' ) ) { if ( ! Input::exists( 'fileLocation' ) ) {

View File

@ -4,7 +4,7 @@
* *
* This is the login logs controller. * This is the login logs controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the generic logs controller. * This is the generic logs controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the installed plugins controller. * This is the installed plugins controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin routes/redirects controller. * This is the admin routes/redirects controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin email controller. The only real use is to send out emails to the various lists. * This is the admin email controller. The only real use is to send out emails to the various lists.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the configuration and settings controller. * This is the configuration and settings controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the admin app/user tokens controller. * This is the admin app/user tokens controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the users admin controller. * This is the users admin controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the api authentication controller. * This is the api authentication controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the api authentication controller. * This is the api authentication controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the users' api controller. * This is the users' api controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the error controller. * This is the error controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the home or 'index' controller. * This is the home or 'index' controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the user registration controller. * This is the user registration controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the user control panel controller. * This is the user control panel controller.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -31,7 +31,7 @@ use TheTempusProject\Bedrock\Functions\Session;
class Usercp extends Controller { class Usercp extends Controller {
public function __construct() { public function __construct() {
parent::__construct(); parent::__construct();
if ( !App::$isLoggedIn ) { if ( ! App::$isLoggedIn ) {
Session::flash( 'notice', 'You must be logged in to view this page!' ); Session::flash( 'notice', 'You must be logged in to view this page!' );
Redirect::home(); Redirect::home();
} }

View File

@ -3,7 +3,7 @@
* *
* This is css used in the debuging console. * This is css used in the debuging console.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -3,7 +3,7 @@
* *
* This file provides dark mode styles to override existing Bootstrap 5 base styles. * This file provides dark mode styles to override existing Bootstrap 5 base styles.
* *
* @version 3.0-dark * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -12,6 +12,9 @@
.context-main-border { .context-main-border {
border-color: #f5f5f5!important; border-color: #f5f5f5!important;
} }
.context-main-border-other {
border-color: #1e1e1e!important;
}
.context-main-bg { .context-main-bg {
background-color: #2c2c2c; background-color: #2c2c2c;

View File

@ -3,7 +3,7 @@
* *
* This file is for any css that should be applied site wide. * This file is for any css that should be applied site wide.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -12,6 +12,9 @@
.context-main-border { .context-main-border {
border-color: #1e1e1e!important; border-color: #1e1e1e!important;
} }
.context-main-border-other {
border-color: #f5f5f5!important;
}
.context-main-bg { .context-main-bg {
background-color: #f7f7f7; background-color: #f7f7f7;

View File

@ -2,7 +2,7 @@
/** /**
* app/functions/common.php * app/functions/common.php
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

BIN
app/images/ttp-gitlab.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -3,7 +3,7 @@
* *
* This file is for 'access anywhere' javascript. * This file is for 'access anywhere' javascript.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -80,14 +80,14 @@ function copyElementText( id ) {
} }
} }
$(document).ready(function() { document.addEventListener("DOMContentLoaded", function () {
$('select').each(function() { document.querySelectorAll("select").forEach(function (select) {
var selectedValue = $(this).attr('value'); var selectedValue = select.getAttribute("value");
if (selectedValue) { if (selectedValue) {
$(this).removeAttr('value'); select.removeAttribute("value");
$(this).find('option').each(function() { select.querySelectorAll("option").forEach(function (option) {
if ($(this).attr('value') === selectedValue) { if (option.getAttribute("value") === selectedValue) {
$(this).prop('selected', true); option.selected = true;
} }
}); });
} }
@ -178,16 +178,46 @@ document.addEventListener('DOMContentLoaded', function () {
}); });
} }
function toggleDarkModePref( value ) { function toggleDarkModePref(value) {
var fields = {}; var fields = new URLSearchParams();
fields.prefName = 'darkMode'; fields.append("prefName", "darkMode");
fields.prefValue = value; fields.append("prefValue", value);
$.post( '/usercp/updatePref', fields ).done(function(response) {
// alert('Timer updated successfully!'); fetch("/usercp/updatePref", {
}); method: "POST",
body: fields,
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
})
// .then(response => response.text()) // Handle response if needed
.catch(error => console.error("Error:", error));
} }
}); });
// this reverses the carets for the folderSelect
document.querySelectorAll('[data-bs-toggle="collapse"]').forEach(button => {
button.addEventListener('click', () => {
setTimeout(() => {
const icon = button.querySelector('i');
// Only proceed if the icon already has one of the relevant classes
if (icon && (icon.classList.contains('fa-caret-down') || icon.classList.contains('fa-caret-up'))) {
icon.classList.toggle('fa-caret-down', button.classList.contains('collapsed'));
icon.classList.toggle('fa-caret-up', !button.classList.contains('collapsed'));
}
}, 150);
});
});
// this should load all popovers
document.addEventListener("DOMContentLoaded", function () {
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'));
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
return new bootstrap.Popover(popoverTriggerEl);
});
});
document.addEventListener('DOMContentLoaded', function () { document.addEventListener('DOMContentLoaded', function () {
const postSelector = document.getElementById('postSelector'); const postSelector = document.getElementById('postSelector');

View File

@ -4,7 +4,7 @@
* *
* This class is used for the manipulation of the groups database table. * This class is used for the manipulation of the groups database table.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* Model for handling all logging. * Model for handling all logging.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class is used for the manipulation of the routes database table. * This class is used for the manipulation of the routes database table.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -7,7 +7,7 @@
* Notes: After refactor, the sessions will use ID's for short term, and Cookies * Notes: After refactor, the sessions will use ID's for short term, and Cookies
* will use the token for long term storage * will use the token for long term storage
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This class is used for the manipulation of the tokens database table. * This class is used for the manipulation of the tokens database table.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -8,7 +8,7 @@
* @todo finish fixing the check functions that were migrated here * @todo finish fixing the check functions that were migrated here
* These could go in the Forms class? * These could go in the Forms class?
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the Blog admin controller. * This is the Blog admin controller.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the blog controller. * This is the blog controller.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This houses all of the form checking functions for this plugin. * This houses all of the form checking functions for this plugin.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This class is used for the manipulation of the blog database table. * This class is used for the manipulation of the blog database table.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This houses all of the main plugin info and functionality. * This houses all of the main plugin info and functionality.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the loader for the blog template. * This is the loader for the blog template.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* app/plugins/blog/templates/blog.tpl * app/plugins/blog/templates/blog.tpl
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -130,7 +130,6 @@
{FOOT} {FOOT}
</div> </div>
<!-- Bootstrap core JavaScript and jquery --> <!-- Bootstrap core JavaScript and jquery -->
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{JQUERY_CDN}jquery.min.js"></script>
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script> <script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script> <script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script>
<!-- Custom javascript for this template --> <!-- Custom javascript for this template -->

View File

@ -5,7 +5,7 @@
* This is the loader for the rss template. * This is the loader for the rss template.
* *
* @package TP Blog * @package TP Blog
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the contact admin controller. * This is the contact admin controller.
* *
* @package TP Contact * @package TP Contact
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This is the home controller for the contact plugin. * This is the home controller for the contact plugin.
* *
* @package TP Contact * @package TP Contact
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This houses all of the form checking functions for this plugin. * This houses all of the form checking functions for this plugin.
* *
* @package TP Contact * @package TP Contact
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -7,7 +7,7 @@
* @todo make this send a confirmation email * @todo make this send a confirmation email
* *
* @package TP Contact * @package TP Contact
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -5,7 +5,7 @@
* This houses all of the main plugin info and functionality. * This houses all of the main plugin info and functionality.
* *
* @package TP Contact * @package TP Contact
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,8 +4,8 @@
* *
* This houses all of the form checking functions for this plugin. * This houses all of the form checking functions for this plugin.
* *
* @package TP Status-Updates * @package TP Notifications
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the loader for the admin template. * This is the loader for the admin template.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -3,7 +3,7 @@
<!-- <!--
* app/templates/admin/admin.tpl * app/templates/admin/admin.tpl
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -28,26 +28,35 @@
<!-- Main Content Area --> <!-- Main Content Area -->
<div class="d-flex flex-grow-1"> <div class="d-flex flex-grow-1">
<!-- Side Navigation --> <!-- Side Navigation -->
<div class="d-flex flex-column flex-shrink-0 p-3 text-bg-dark" style="width: 280px;"> <div class="d-flex flex-column p-md-3 text-bg-dark">
<a href="/" class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-white text-decoration-none"> <div class="collapse d-md-block" id="mainMenu">
<img src="{ROOT_URL}{LOGO}" class="bi me-2" height="48" role="img" aria-label="{SITENAME} Logo"> <a href="/" class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-white text-decoration-none justify-content-center">
<img src="{ROOT_URL}{LOGO}" class="bi me-2" width="40" height="32" role="img" aria-label="{SITENAME} Logo">
</a> </a>
<hr> <div class="border-top border-bottom border-white mt-4 mb-2 pt-3 pb-5">
{ADMIN} {ADMIN}
{ADMIN_LINKS} {ADMIN_LINKS}
{/ADMIN} {/ADMIN}
<hr> </div>
<div class="d-flex align-items-center"> <div class="d-flex align-items-center p-2">
{topNavRight} {topNavRight}
</div> </div>
</div> </div>
</div>
<!-- Center Element --> <!-- Center Element -->
<div class="flex-grow-1 d-flex flex-column"> <div class="flex-grow-1 d-flex flex-column">
<!-- Top Navigation Bar --> <!-- Top Navigation Bar -->
<div class="p-2 text-bg-dark"> <div class="p-2 text-bg-dark">
<div class="d-flex flex-wrap align-items-center justify-content-center justify-content-lg-start"> <div class="d-flex justify-content-between justify-content-md-center">
<div class="d-flex flex-wrap align-items-center justify-content-lg-start">
{topNavLeft} {topNavLeft}
</div> </div>
<div class="mx-3 d-md-none">
<button class="my-3 btn btn-lg btn-outline-light" type="button" data-bs-toggle="collapse" data-bs-target="#mainMenu" aria-controls="mainMenu" aria-expanded="false" aria-label="Toggle navigation">
<i class="fa fa-bars"></i>
</button>
</div>
</div>
</div> </div>
<!-- Main Content --> <!-- Main Content -->
@ -65,26 +74,62 @@
</div> </div>
<!-- Footer --> <!-- Footer -->
<footer class="border-top context-main-bg"> <div class="container mt-auto border-top context-main-border">
<div class="container pb-4 pt-3 align-items-center"> <footer class="pt-0">
<div class="d-flex justify-content-between align-items-center context-main-bg"> <div class="d-md-block collapse" id="footerMenu">
{COPY} <div class="d-flex justify-content-between align-items-center py-2 my-2">
<div class="col-6 col-md-2"> <a href="/" class="text-decoration-none lh-1 d-flex align-items-center px-md-5 mx-md-5">
<div class="material-switch"> <img src="{ROOT_URL}{LOGO}" class="bi me-2" width="40" height="32" alt="Joey Kimsey Logo">
</a>
<div class="material-switch d-flex align-items-center">
<input name="dark-mode-toggle" type="checkbox" id="dark-mode-toggle" class="form-check-input"> <input name="dark-mode-toggle" type="checkbox" id="dark-mode-toggle" class="form-check-input">
<label for="dark-mode-toggle" class="label-default"></label> <label for="dark-mode-toggle" class="label-default"></label>
</div> </div>
<ul class="list-unstyled d-flex align-items-center mb-0">
<li class="ms-3">
<a class="context-main" href="{ROOT_URL}fb">
<span class="fa-brands fa-fw fa-facebook"></span>
</a>
</li>
<li class="ms-3">
<a class="context-main" href="{ROOT_URL}twitter">
<span class="fa-brands fa-fw fa-twitter"></span>
</a>
</li>
<li class="ms-3">
<a class="context-main" href="{ROOT_URL}in">
<span class="fa-brands fa-fw fa-linkedin"></span>
</a>
</li>
<li class="ms-3">
<a class="context-main" href="{ROOT_URL}youtube">
<span class="fa-brands fa-fw fa-youtube"></span>
</a>
</li>
<li class="ms-3">
<a class="context-main" href="{ROOT_URL}git">
<span class="fa-brands fa-fw fa-github"></span>
</a>
</li>
</ul>
</div> </div>
{SOCIAL} <div class="d-flex justify-content-center justify-content-md-center text-center text-md-center my-2">
<span>© 2025 {SITENAME}, Powered by <a href="https://thetempusproject.com" class="text-decoration-none">The Tempus Project</a></span>
</div> </div>
</div> </div>
<div class="text-center">
<button class="d-md-none my-3 btn btn-lg context-main context-main-border" type="button" data-bs-toggle="collapse" data-bs-target="#footerMenu" aria-controls="footerMenu" aria-expanded="false" aria-label="Toggle footer navigation">
<i class="fa fa-bars"></i>
</button>
</div>
</footer> </footer>
</div> </div>
</div>
</div> </div>
</div> </div>
<!-- Bootstrap core JavaScript and jquery --> <!-- Bootstrap core JavaScript and jquery -->
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{JQUERY_CDN}jquery.min.js"></script>
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script> <script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script> <script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script>
<!-- Custom javascript for this template --> <!-- Custom javascript for this template -->

View File

@ -4,7 +4,7 @@
* *
* This is the loader for the admin template. * This is the loader for the admin template.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -4,7 +4,7 @@
* *
* This is the loader for the default template. * This is the loader for the default template.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -23,7 +23,6 @@ use TheTempusProject\TheTempusProject as App;
class DefaultLoader extends Loader { class DefaultLoader extends Loader {
private static $loaded = false; private static $loaded = false;
const TEMPLATE_NAME = 'Default Tempus Project Template'; const TEMPLATE_NAME = 'Default Tempus Project Template';
const JQUERY_CDN = 'https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/';
const BOOTSTRAP_CDN = 'https://cdn.jsdelivr.net/npm/bootstrap@3.3.6/dist/'; const BOOTSTRAP_CDN = 'https://cdn.jsdelivr.net/npm/bootstrap@3.3.6/dist/';
const FONT_AWESOME_URL = 'https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/'; const FONT_AWESOME_URL = 'https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/';
@ -36,10 +35,8 @@ class DefaultLoader extends Loader {
if ( VENDOR_AUTOLOADED === true ) { if ( VENDOR_AUTOLOADED === true ) {
Components::set( 'FONT_AWESOME_URL', '/vendor/fortawesome/font-awesome/css/' ); Components::set( 'FONT_AWESOME_URL', '/vendor/fortawesome/font-awesome/css/' );
Components::set( 'BOOTSTRAP_CDN', '/vendor/twbs/bootstrap/dist/' ); Components::set( 'BOOTSTRAP_CDN', '/vendor/twbs/bootstrap/dist/' );
Components::set( 'JQUERY_CDN', '/vendor/components/jquery/' );
} else { } else {
Components::set( 'BOOTSTRAP_CDN', self::BOOTSTRAP_CDN ); Components::set( 'BOOTSTRAP_CDN', self::BOOTSTRAP_CDN );
Components::set( 'JQUERY_CDN', self::JQUERY_CDN );
Components::set( 'FONT_AWESOME_URL', self::FONT_AWESOME_URL ); Components::set( 'FONT_AWESOME_URL', self::FONT_AWESOME_URL );
} }
$this->addJs( '<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{ROOT_URL}app/js/main.js"></script>' ); $this->addJs( '<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{ROOT_URL}app/js/main.js"></script>' );

View File

@ -3,7 +3,7 @@
<!-- <!--
* app/templates/default/default.tpl * app/templates/default/default.tpl
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -100,7 +100,6 @@
<!-- User Pref to control Dark mode across frontend and backend --> <!-- User Pref to control Dark mode across frontend and backend -->
<input type="hidden" name="dark-mode-pref" id="dark-mode-pref" value="{DARK_MODE_SETTING}"> <input type="hidden" name="dark-mode-pref" id="dark-mode-pref" value="{DARK_MODE_SETTING}">
<!-- Bootstrap core JavaScript and jquery --> <!-- Bootstrap core JavaScript and jquery -->
<script crossorigin="anonymous" src="{JQUERY_CDN}jquery.min.js"></script>
<script crossorigin="anonymous" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script> <script crossorigin="anonymous" src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.6/dist/umd/popper.min.js"></script>
<script crossorigin="anonymous" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script> <script crossorigin="anonymous" src="{BOOTSTRAP_CDN}js/bootstrap.min.js"></script>
<!-- Custom javascript for this template --> <!-- Custom javascript for this template -->

View File

@ -1,14 +1,14 @@
Folder: <strong>{FOLDER_SELECT_ROOT}</strong> Folder: <strong>{FOLDER_SELECT_ROOT}</strong>
<div class="list-group mx-0 mx-auto"> <div class="list-group mx-0 mx-auto">
{LOOP} {LOOP}
<label class="list-group-item d-flex justify-content-between align-items-center"> <label class="list-group-item d-flex align-items-center">
<div class="d-flex align-items-center"> <input class="form-check-input me-2" type="radio" name="folderSelect" value="{location}">
<input class="form-check-input me-2" type="radio" name="folderSelect" value="{location}" data-bs-toggle="collapse" data-bs-target="#top-{folderName}"> <button class="btn d-flex justify-content-between align-items-center w-100" type="button" aria-expanded="false" aria-controls="top-{folderName}" data-bs-toggle="collapse" data-bs-target="#top-{folderName}">
<span> <span class="d-flex flex-grow-1">
{folderName} {folderName}
</span> </span>
</div> <i class="fa fa-solid fa-caret-down"></i>
{folderexpand} </button>
</label> </label>
<div id="top-{folderName}" class="collapse"> <div id="top-{folderName}" class="collapse">
{subdirs} {subdirs}

View File

@ -1,12 +1,12 @@
{LOOP} {LOOP}
<label class="list-group-item d-flex justify-content-between align-items-center"> <label class="list-group-item d-flex align-items-center">
<div class="d-flex align-items-center"> <input class="form-check-input me-2" type="radio" name="folderSelect" value="{location}">
<input class="form-check-input me-2" type="radio" name="folderSelect" value="{location}" data-bs-toggle="collapse" data-bs-target="#{parentfolderName}-{folderName}"> <button class="btn d-flex justify-content-between align-items-center w-100" type="button" aria-expanded="false" aria-controls="{parentfolderName}-{folderName}" data-bs-toggle="collapse" data-bs-target="#{parentfolderName}-{folderName}">
<span> <span class="d-flex flex-grow-1">
{folderName} {spacer}{folderName}
</span> </span>
</div> <i class="fa fa-solid fa-caret-down"></i>
{folderexpand} </button>
</label> </label>
<div id="{parentfolderName}-{folderName}" class="collapse"> <div id="{parentfolderName}-{folderName}" class="collapse">
{subdirs} {subdirs}

View File

@ -4,7 +4,7 @@
* *
* Handles the application startup by requiring our autoloaders and loading constants. * Handles the application startup by requiring our autoloaders and loading constants.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]
@ -46,6 +46,8 @@ if ( ! VENDOR_AUTOLOADED && ! defined( 'TEMPUS_PROJECT_AUTOLOADED' ) ) {
function ttp_autoload() { function ttp_autoload() {
$Autoloader = new Autoloader; $Autoloader = new Autoloader;
if ( ! VENDOR_AUTOLOADED ) {
$Autoloader->addNamespace( $Autoloader->addNamespace(
APP_SPACE . '\Controllers', APP_SPACE . '\Controllers',
CONTROLLER_DIRECTORY, CONTROLLER_DIRECTORY,
@ -73,8 +75,9 @@ function ttp_autoload() {
); );
$Autoloader->includeFolder(FUNCTIONS_DIRECTORY); $Autoloader->includeFolder(FUNCTIONS_DIRECTORY);
$Autoloader->register(); $Autoloader->register();
}
// handle plugins // Composer cannot handle autoloading plugins dynamically as they are added, so regardless, we need hermes for this part.
$pluginDirectoryArray = Plugin::getPluginDirectories(); $pluginDirectoryArray = Plugin::getPluginDirectories();
foreach ( $pluginDirectoryArray as $pluginName => $locations ) { foreach ( $pluginDirectoryArray as $pluginName => $locations ) {
foreach ( $locations as $location ) { foreach ( $locations as $location ) {

View File

@ -6,7 +6,7 @@
* In this file we initiate all models we will need, authenticate sessions, set * In this file we initiate all models we will need, authenticate sessions, set
* template objects, and call appload to initialize the appropriate controller/method. * template objects, and call appload to initialize the appropriate controller/method.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -23,8 +23,6 @@
], ],
"require": "require":
{ {
"components/jquery": "1.9.*",
"endroid/qr-code": "^6.0",
"fortawesome/font-awesome": "4.7", "fortawesome/font-awesome": "4.7",
"thetempusproject/bedrock": "1.1.5", "thetempusproject/bedrock": "1.1.5",
"thetempusproject/canary": "1.0.9", "thetempusproject/canary": "1.0.9",

BIN
images/icon-mask.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
images/logoWhite192.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
images/logoWhite512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

View File

@ -5,7 +5,7 @@
* All application traffic should be directed to/through this file. * All application traffic should be directed to/through this file.
* It mostly handles some last minute routing and initializes the app. * It mostly handles some last minute routing and initializes the app.
* *
* @version 3.0 * @version 5.0.1
* @author Joey Kimsey <Joey@thetempusproject.com> * @author Joey Kimsey <Joey@thetempusproject.com>
* @link https://TheTempusProject.com * @link https://TheTempusProject.com
* @license https://opensource.org/licenses/MIT [MIT LICENSE] * @license https://opensource.org/licenses/MIT [MIT LICENSE]

View File

@ -1,7 +1,40 @@
{ {
"name": "The tempus project.",
"short_name": "TTP",
"description": "Saving you time on every aspect of app development.",
"start_url": "/",
"display": "standalone",
"background_color": "#7d7f83",
"theme_color": "#3fa9f5",
"icons": [ "icons": [
{ "src": "/images/icon-192.png", "type": "image/png", "sizes": "192x192" }, { "src": "/images/logoWhite192.png", "type": "image/png", "sizes": "192x192" },
{ "src": "/images/icon-mask.png", "type": "image/png", "sizes": "512x512", "purpose": "maskable" }, { "src": "/images/logoWhite512.png", "type": "image/png", "sizes": "512x512" },
{ "src": "/images/icon-512.png", "type": "image/png", "sizes": "512x512" } { "src": "/images/icon-mask.png", "type": "image/png", "sizes": "512x512", "purpose": "maskable" }
],
"screenshots": [
{
"src": "/images/screenshot-wide-dark.png",
"type": "image/png",
"sizes": "1788x942",
"form_factor": "wide"
},
{
"src": "/images/screenshot-wide-light.png",
"type": "image/png",
"sizes": "1788x942",
"form_factor": "wide"
},
{
"src": "/images/screenshot-mobile-dark.png",
"type": "image/png",
"sizes": "478x609",
"form_factor": "narrow"
},
{
"src": "/images/screenshot-mobile-light.png",
"type": "image/png",
"sizes": "478x609",
"form_factor": "narrow"
}
] ]
} }