Improved PHP code, Included Quantum font, Temporarily fixed htaccess
This commit is contained in:
@@ -2,5 +2,5 @@
|
||||
.idea/
|
||||
.dockerignore
|
||||
.gitignore
|
||||
notes.txt
|
||||
readme.md
|
||||
*.txt
|
||||
*.md
|
||||
|
4
.gitignore
vendored
4
.gitignore
vendored
@@ -8,9 +8,7 @@ resources/ChartJs/
|
||||
resources/FontAwesomePro/
|
||||
resources/GoogleFonts/
|
||||
resources/HalfMoon/
|
||||
resources/Icons8/
|
||||
resources/Quantum/
|
||||
|
||||
# Other folders (Will be removed once the content system is finished !)
|
||||
content/page/
|
||||
files/
|
||||
/files/
|
||||
|
93
.htaccess
93
.htaccess
@@ -1,9 +1,24 @@
|
||||
# Prevent access to .htaccess
|
||||
<Files ~ "^.*\.([Hh][Tt][Aa]|[Pp][Yy])">
|
||||
Order allow,deny
|
||||
Deny from all
|
||||
## Apache 2.2
|
||||
Order allow,deny
|
||||
Deny from all
|
||||
## Apache 2.4
|
||||
# Require all denied
|
||||
</Files>
|
||||
|
||||
## Deny access to some common leftovers
|
||||
#<FilesMatch "(\.(bak|config|dist|fla|inc|ini|log|psd|sh|sql|swp)|~)$">
|
||||
# ## Apache 2.2
|
||||
# Order allow,deny
|
||||
# Deny from all
|
||||
# Satisfy All
|
||||
# ## Apache 2.4
|
||||
# # Require all denied
|
||||
#</FilesMatch>
|
||||
|
||||
ServerSignature Off
|
||||
|
||||
# Redirecting HTTP traffic to HTTPS. (Keep commented on localhost !)
|
||||
# This is handled other services, but it should still be enabled in production just to be safe.
|
||||
#RewriteEngine On
|
||||
@@ -19,61 +34,63 @@ ErrorDocument 403 /403.php
|
||||
ErrorDocument 404 /404.php
|
||||
|
||||
# Setting some headers for security.
|
||||
# TODO: Implement a proper module check and redirection to clean 503 error page if module is not enabled !
|
||||
Header always set X-Detected-Country "NK"
|
||||
Header always set X-Frame-Options "deny"
|
||||
# Prevents CloudFlare from injecting some JS code through their hidden apps...
|
||||
Header always set Content-Security-Policy "default-src 'self'; object-src 'none'; child-src 'self'; frame-ancestors 'none'; upgrade-insecure-requests; block-all-mixed-content"
|
||||
Header always set X-XSS-Protection " 1; mode=block"
|
||||
Header always set Referrer-Policy "no-referrer"
|
||||
Header always set X-Content-Type-Options "nosniff"
|
||||
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
|
||||
Header always set Cache-Control "max-age=300, public"
|
||||
# FIXME: Apparently, the 'Permissions-Policy' header is not properly formatted, IDK why...
|
||||
# Remark: Apparently, the 'Permissions-Policy' header is not properly formatted, IDK why...
|
||||
Header always set Permissions-Policy "accelerometer=(),autoplay=(),camera=(),display-capture=(),document-domain=(),encrypted-media=(),fullscreen=(),geolocation=(),gyroscope=(),magnetometer=(),microphone=(),midi=(),payment=(),picture-in-picture=(),publickey-credentials-get=(),screen-wake-lock=(),sync-xhr=(self),usb=(),web-share=(),xr-spatial-tracking=()"
|
||||
Header always set Access-Control-Allow-Origin "*"
|
||||
Header unset X-Powered-By
|
||||
Header always set X-Powered-By "Amiga 1200, Kickstart 3.1"
|
||||
|
||||
# Removed the condition to prevent silent errors since the module is required for the website
|
||||
# <IfModule mod_rewrite.c></IfModule>
|
||||
|
||||
# Handling all other redirections.
|
||||
<IfModule mod_rewrite.c>
|
||||
# TODO: Raise error if not available
|
||||
RewriteEngine On
|
||||
RewriteEngine On
|
||||
|
||||
# Sending a 404 for git and IDEs folders just in case they ever get copied to the web server,
|
||||
# or if one of the honeypot files is acessed directly.
|
||||
# A 404 is preferred to prevent further scanning of this folder and from raising some flags.
|
||||
# FIXME: These rules break the later honeypot rules !!!
|
||||
#RedirectMatch 404 ^.*\.?(git|vs(code)|idea).*
|
||||
#RedirectMatch 404 ^.*honeypot.*
|
||||
# Sending a 404 for git and IDEs folders just in case they ever get copied to the web server,
|
||||
# or if one of the honeypot files is acessed directly.
|
||||
# A 404 is preferred to prevent further scanning of this folder and from raising some flags.
|
||||
# FIXME: These rules break the later honeypot rules !!!
|
||||
#RedirectMatch 404 ^.*\.?(git|vs(code)|idea).*
|
||||
#RedirectMatch 404 ^.*honeypot.*
|
||||
|
||||
# Languages. (Does not work with a regex)
|
||||
RewriteRule ^en/(.*)$ /$1 [QSA]
|
||||
RewriteRule ^fr/(.*)$ /$1 [QSA]
|
||||
RewriteRule ^lb/(.*)$ /$1 [QSA]
|
||||
# Languages. (Does not work with a regex)
|
||||
RewriteRule ^en/(.*)$ /$1 [QSA]
|
||||
RewriteRule ^fr/(.*)$ /$1 [QSA]
|
||||
RewriteRule ^lb/(.*)$ /$1 [QSA]
|
||||
|
||||
# Content categories. - Should be removed ?
|
||||
#RewriteRule ^((en|fr|lb)/)?blog/article/(.*)$ /content/page/$1 [QSA]
|
||||
#RewriteRule ^((en|fr|lb)/)?programming/(applications|tutorials|tools)/(.*)$ /content/page/$1 [QSA]
|
||||
##RewriteRule ^((en|fr|lb)/)?electronics/ham/(.*)$ /content/page/$1 [QSA]
|
||||
# Content categories. - Should be removed ?
|
||||
#RewriteRule ^((en|fr|lb)/)?blog/article/(.*)$ /content/page/$1 [QSA]
|
||||
#RewriteRule ^((en|fr|lb)/)?programming/(applications|tutorials|tools)/(.*)$ /content/page/$1 [QSA]
|
||||
##RewriteRule ^((en|fr|lb)/)?electronics/ham/(.*)$ /content/page/$1 [QSA]
|
||||
|
||||
# Content root pages. - Should be removed ?
|
||||
#RewriteRule ^((en|fr|lb)/)?programming/(purebasic|python|others)/(.*)$ /content/$1 [QSA]
|
||||
#RewriteRule ^((en|fr|lb)/)?electronics/(iot|experiments)/(.*)$ /content/$1 [QSA]
|
||||
# Content root pages. - Should be removed ?
|
||||
#RewriteRule ^((en|fr|lb)/)?programming/(purebasic|python|others)/(.*)$ /content/$1 [QSA]
|
||||
#RewriteRule ^((en|fr|lb)/)?electronics/(iot|experiments)/(.*)$ /content/$1 [QSA]
|
||||
|
||||
# Content pages. (Old regex are taken care of by the "content/index.php" page)
|
||||
RewriteRule ^((en|fr|lb)/)?(blog|programming|electronics)/(.*)$ /content/$1 [QSA]
|
||||
# Content pages. (Old regex are taken care of by the "content/index.php" page)
|
||||
RewriteRule ^((en|fr|lb)/)?(blog|programming|electronics)/(.*)$ /content/$1 [QSA]
|
||||
|
||||
# Internal redirections for scanning and exploit attempts.
|
||||
# These rules are here since they're easier to implement in the .htaccess.
|
||||
#RewriteRule ^.*(install|xmlrpc)\.php.*$ /honeypot/file-php.php [QSA]
|
||||
#RewriteRule ^.*\.xml.*$ /honeypot/file-xml.php [QSA]
|
||||
#RewriteRule ^.*wlwmanifest\.xml.*$ /honeypot/file-xml-wlwmanifest.php [QSA]
|
||||
#RewriteRule ^.*\.env.*$ /honeypot/file-env.php [QSA]
|
||||
#RewriteRule ^.*(ap(i|p.*)|cms|sit[eo]|shop.*|wp.*).*$ /honeypot/folder.php [QSA]
|
||||
# Internal redirections for scanning and exploit attempts.
|
||||
# These rules are here since they're easier to implement in the .htaccess.
|
||||
#RewriteRule ^.*(install|xmlrpc)\.php.*$ /honeypot/file-php.php [QSA]
|
||||
#RewriteRule ^.*\.xml.*$ /honeypot/file-xml.php [QSA]
|
||||
#RewriteRule ^.*wlwmanifest\.xml.*$ /honeypot/file-xml-wlwmanifest.php [QSA]
|
||||
#RewriteRule ^.*\.env.*$ /honeypot/file-env.php [QSA]
|
||||
#RewriteRule ^.*(ap(i|p.*)|cms|sit[eo]|shop.*|wp.*).*$ /honeypot/folder.php [QSA]
|
||||
|
||||
# Cases left to handle:
|
||||
# * /wp-admin/post.php?id=whatever
|
||||
# * /public /vendor /storage
|
||||
# Cases left to handle:
|
||||
# * /wp-admin/post.php?id=whatever
|
||||
# * /public /vendor /storage
|
||||
# * //vendor/phpunit/phpunit/src/Util/PHP/eval-stdin.php
|
||||
|
||||
# TODO: Implement bee-movie themed tarpit once I have a rate-limiting solution in place !
|
||||
|
||||
# TODO: Implement bee-movie themed tarpit once I have a rate-limiting solution in place !
|
||||
</IfModule>
|
||||
|
6
403.php
6
403.php
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('./commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('./commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
|
6
404.php
6
404.php
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('./commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('./commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
|
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('../commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('../commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
@@ -16,7 +20,7 @@
|
||||
data-sidebar-shortcut-enabled="true">
|
||||
<?php include 'body-root.php'; ?>
|
||||
<div class="page-wrapper with-sidebar with-navbar-fixed-bottom">
|
||||
<?php const SIDEBAR_ID = 'about'; include 'sidebar.php'; ?>
|
||||
<?php $SIDEBAR_ID = 'about'; include 'sidebar.php'; ?>
|
||||
<div class="content-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div id="page-title-bar" class="card p-0 pl-20 m-0 square-corners bg-very-dark title-bkgd navbar">
|
||||
@@ -25,25 +29,47 @@
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div class="content mx-auto w-lg-p90">
|
||||
|
||||
<div class="card p-0 mx-0">
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-5 col-lg-12">
|
||||
<div class="col-12">
|
||||
<h2 class="card-title font-size-18 m-0">
|
||||
<i class="fad fa-user-circle"></i> Who am I ?
|
||||
<i class="fad fa-user-circle"></i> <?php print(localize("about.biography.title")); ?>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="col-7 hidden-lg-and-up text-right font-italic">
|
||||
<h2 class="card-title font-size-18 m-0 text-super-muted">nibblepoker@gmail.com</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm rounded-bottom px-20">
|
||||
<p>TODO</p>
|
||||
<div class="px-card py-10 bg-light-lm rounded-bottom px-20 bg-very-dark title-bkgd">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-4 col-lg-3">
|
||||
<img src="/resources/Azias/imgs/maki-pain-03.png" class="img-fluid rounded no-save" alt="rounded image">
|
||||
</div>
|
||||
|
||||
<div class="col-8 col-lg-9">
|
||||
<div class="row">
|
||||
<div class="col-6 text-center">
|
||||
<p class="font-weight-bold font-size-28 mt-0 mb-0 ml-20">
|
||||
<span class="text-uppercase">Bozet</span> Herwin
|
||||
</p>
|
||||
</div>
|
||||
<!--<div class="col-4 col-md-2 text-center">
|
||||
<p class="font-weight-bold font-size-24 mt-0 ml-20">🇱🇺, 🇧🇪</p>
|
||||
</div>
|
||||
<div class="col-8 col-md-4 text-right text-super-muted">
|
||||
<p class="font-weight-bold font-size-24 mt-0 ml-20">25y/o Male</p>
|
||||
</div>-->
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -54,7 +80,7 @@
|
||||
<div class="row">
|
||||
<div class="col-5 col-lg-12">
|
||||
<h2 class="card-title font-size-18 m-0">
|
||||
<i class="fad fa-books"></i> Skills
|
||||
<i class="fad fa-books"></i> <?php print(localize("about.skills.title")); ?>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="col-7 hidden-lg-and-up text-right font-italic">
|
||||
@@ -64,7 +90,32 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm rounded-bottom px-20">
|
||||
<div class="px-card py-10 bg-light-lm rounded-bottom px-20 bg-very-dark title-bkgd">
|
||||
<h3 class="font-size-16 font-weight-semi-bold">
|
||||
<i class="fad fa-file-certificate"></i> TODO
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="card p-0 mx-0">
|
||||
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-5 col-lg-12">
|
||||
<h2 class="card-title font-size-18 m-0">
|
||||
<i class="fad fa-briefcase"></i> <?php print(localize("about.work.title")); ?>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="col-7 hidden-lg-and-up text-right font-italic">
|
||||
<h2 class="card-title font-size-18 m-0 text-super-muted">@NibblePoker</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="px-card py-10 bg-light-lm rounded-bottom px-20 bg-very-dark title-bkgd">
|
||||
<h3 class="font-size-16 font-weight-semi-bold">
|
||||
<i class="fad fa-file-certificate"></i> TODO
|
||||
</h3>
|
||||
|
@@ -1,2 +1,7 @@
|
||||
<?php if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) { header('HTTP/1.1 403 Forbidden'); die(); } ?>
|
||||
<?php
|
||||
if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) {
|
||||
header('HTTP/1.1 403 Forbidden');
|
||||
die();
|
||||
}
|
||||
?>
|
||||
<div id="body-overlay"></div>
|
||||
|
@@ -1,6 +1,14 @@
|
||||
<?php if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) { header('HTTP/1.1 403 Forbidden'); die(); } ?>
|
||||
<?php
|
||||
// TODO: Include lang once
|
||||
// Making sure the file is included.
|
||||
if(basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) {
|
||||
header('HTTP/1.1 403 Forbidden');
|
||||
die();
|
||||
}
|
||||
|
||||
// Importing required scripts
|
||||
include_once 'langs.php';
|
||||
|
||||
$CONTENT_DEBUG = true;
|
||||
|
||||
// TODO: Add /content as raw input of some sort (No auto tags).
|
||||
|
||||
@@ -102,6 +110,7 @@ if($requested_content_type == ContentType::BLOG) {
|
||||
}
|
||||
}
|
||||
|
||||
// Checking for errors preliminarily
|
||||
if($requested_content_display_type == ContentDisplayType::NONE) {
|
||||
// Failed to detect what kind of content was requested.
|
||||
$content_has_error = true;
|
||||
|
@@ -1,5 +1,10 @@
|
||||
<?php if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) { header('HTTP/1.1 403 Forbidden'); die(); } ?>
|
||||
<?php
|
||||
if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) {
|
||||
header('HTTP/1.1 403 Forbidden');
|
||||
die();
|
||||
}
|
||||
include_once 'config.php';
|
||||
|
||||
// This helper requires PHP 8 or newer !
|
||||
|
||||
// Setting the default values.
|
||||
|
@@ -1,9 +1,15 @@
|
||||
<?php
|
||||
// Making sure the file is included.
|
||||
if (basename(__FILE__) == basename($_SERVER["SCRIPT_FILENAME"])) {
|
||||
header('HTTP/1.1 403 Forbidden');
|
||||
die();
|
||||
}
|
||||
defined('SIDEBAR_ID') or define('SIDEBAR_ID', 'default');
|
||||
|
||||
include_once 'langs.php';
|
||||
|
||||
if(!isset($SIDEBAR_ID)) {
|
||||
$SIDEBAR_ID = 'default';
|
||||
}
|
||||
?>
|
||||
<div class="sidebar">
|
||||
<div class="sidebar-menu font-weight-bold">
|
||||
@@ -12,37 +18,16 @@ defined('SIDEBAR_ID') or define('SIDEBAR_ID', 'default');
|
||||
</a>
|
||||
<h4 class="text-center quantum ucase font-size-28 text-muted">N<span class="text-super-muted">ibble</span> P<span class="text-super-muted">oker</span></h4>
|
||||
<div class="sidebar-divider"></div>
|
||||
<a id="sbl-home" href="<?php print(l10n_url_abs('/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if(SIDEBAR_ID=="home"){echo(" active");} ?>">
|
||||
<a id="sbl-home" href="<?php print(l10n_url_abs('/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if($SIDEBAR_ID=="home"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-home" aria-hidden="true"></i></span>
|
||||
<?php print(localize("home.title.nav")); ?>
|
||||
</a>
|
||||
<a id="sbl-blog" href="<?php print(l10n_url_abs('/blog/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if(SIDEBAR_ID=="blog"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-rss-square"></i></span>
|
||||
<?php print(localize("blog.title")); ?>
|
||||
</a>
|
||||
<div class="sidebar-divider"></div>
|
||||
<a id="sbl-programming" href="<?php print(l10n_url_abs('/programming/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-code"></i></span>
|
||||
<?php print(localize("programming.title")); ?>
|
||||
<a id="sbl-programming" href="<?php print(l10n_url_abs('/programming/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if($SIDEBAR_ID=="blog"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-briefcase"></i></span>
|
||||
<?php print(localize("programming.title.projects")); ?>
|
||||
</a>
|
||||
<div class="ml-20">
|
||||
<a id="sbl-purebasic" href="<?php print(l10n_url_abs('/programming/purebasic/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-microchip"></i></span>
|
||||
<?php print(localize("programming.purebasic.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-python" href="<?php print(l10n_url_abs('/programming/python/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fab fa-python"></i></span>
|
||||
<?php print(localize("programming.python.title")); ?>
|
||||
</a>
|
||||
<!--<a id="sbl-others" href="<?php print(l10n_url_abs('/programming/others/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-ellipsis-h"></i></span>
|
||||
<?php print(localize("programming.others.title")); ?>
|
||||
</a>-->
|
||||
<a id="sbl-docker" href="<?php print(l10n_url_abs('/programming/docker/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fab fa-docker"></i></span>
|
||||
<?php print(localize("programming.docker.title")); ?>
|
||||
</a>
|
||||
<div class="sidebar-divider"></div>
|
||||
<a id="sbl-projects-apps" href="<?php print(l10n_url_abs('/programming/applications/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-browser"></i></span>
|
||||
<?php print(localize("programming.apps.title")); ?>
|
||||
@@ -55,36 +40,30 @@ defined('SIDEBAR_ID') or define('SIDEBAR_ID', 'default');
|
||||
<span class="sidebar-icon"><i class="fad fa-tools"></i></span>
|
||||
<?php print(localize("programming.tools.title")); ?>
|
||||
</a>
|
||||
<div class="sidebar-divider"></div>
|
||||
<a id="sbl-purebasic" href="<?php print(l10n_url_abs('/programming/purebasic/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-microchip"></i></span>
|
||||
<?php print(localize("programming.purebasic.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-python" href="<?php print(l10n_url_abs('/programming/python/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fab fa-python"></i></span>
|
||||
<?php print(localize("programming.python.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-docker" href="<?php print(l10n_url_abs('/programming/docker/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fab fa-docker"></i></span>
|
||||
<?php print(localize("programming.docker.title")); ?>
|
||||
</a>
|
||||
</div>
|
||||
<!--<div class="sidebar-divider"></div>
|
||||
<a id="sbl-electronics" href="<?php print(l10n_url_abs('/electronics/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-microchip"></i></span>
|
||||
<?php print(localize("electronics.title")); ?>
|
||||
</a>
|
||||
<div class="ml-20">
|
||||
<a id="sbl-iot" href="<?php print(l10n_url_abs('/electronics/iot/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-house-signal"></i></span>
|
||||
<?php print(localize("electronics.iot.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-elec-misc" href="<?php print(l10n_url_abs('/electronics/experiments/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-flask"></i></span>
|
||||
<?php print(localize("electronics.experiments.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-ham" href="<?php print(l10n_url_abs('/electronics/ham/')); ?>" class="sidebar-link sidebar-link-with-icon">
|
||||
<span class="sidebar-icon"><i class="fad fa-broadcast-tower"></i></span>
|
||||
<?php print(localize("electronics.ham.title")); ?>
|
||||
</a>
|
||||
</div>-->
|
||||
<div class="sidebar-divider"></div>
|
||||
<a id="sbl-links" href="<?php print(l10n_url_abs('/links/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if(SIDEBAR_ID=="links"){echo(" active");} ?>">
|
||||
<a id="sbl-links" href="<?php print(l10n_url_abs('/links/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if($SIDEBAR_ID=="links"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-link"></i></span>
|
||||
<?php print(localize("links.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-about" href="<?php print(l10n_url_abs('/about/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if(SIDEBAR_ID=="about"){echo(" active");} ?>">
|
||||
<a id="sbl-about" href="<?php print(l10n_url_abs('/about/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if($SIDEBAR_ID=="about"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-user"></i></span>
|
||||
<?php print(localize("about.title")); ?>
|
||||
</a>
|
||||
<a id="sbl-contact" href="<?php print(l10n_url_abs('/contact/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if(SIDEBAR_ID=="contact"){echo(" active");} ?>">
|
||||
<a id="sbl-contact" href="<?php print(l10n_url_abs('/contact/')); ?>" class="sidebar-link sidebar-link-with-icon<?php if($SIDEBAR_ID=="contact"){echo(" active");} ?>">
|
||||
<span class="sidebar-icon"><i class="fad fa-mailbox"></i></span>
|
||||
<?php print(localize("contact.title")); ?>
|
||||
</a>
|
||||
|
@@ -9,6 +9,7 @@
|
||||
"home.intro.text.2": "If you wish to contact me, you can do so through the contact form linked in the sidebar or via the email address present on that page.",
|
||||
"blog.title": "Blog",
|
||||
"programming.title": "Programming",
|
||||
"programming.title.projects": "Projects",
|
||||
"programming.java.title": "Java",
|
||||
"programming.purebasic.title": "PureBasic",
|
||||
"programming.python.title": "Python",
|
||||
@@ -57,6 +58,7 @@
|
||||
"error.404.description": "The requested resource couldn't be found on the server !",
|
||||
|
||||
"error.content.title.generic": "Content error",
|
||||
"error.content.title.empty": "No content found",
|
||||
"error.content.none": "No explicit error was encountered.",
|
||||
"error.content.detect.category": "Failed to detect which category of content you requested.",
|
||||
"error.content.detect.display": "Failed to detect if you requested the category's search page or a specific one.",
|
||||
@@ -65,9 +67,17 @@
|
||||
"error.content.detect.empty": "No content could be found for the given tags.",
|
||||
|
||||
"content.title.error": "$content.title.error",
|
||||
"content.title.search": "$content.title.search",
|
||||
"content.title.search": "Projects search",
|
||||
"content.title.article": "$content.title.article",
|
||||
"content.title.application": "$content.title.application"
|
||||
"content.title.application": "$content.title.application",
|
||||
"content.tags.requested": "Requested tags",
|
||||
"content.search.count.single": "result",
|
||||
"content.search.count.multiple": "results",
|
||||
|
||||
"about.biography.title": "Who am I ?",
|
||||
"about.skills.title": "Skills",
|
||||
"about.work.title": "Professional experiences",
|
||||
"about.education.title": "TODO:SchoolAndEducation"
|
||||
},
|
||||
"fr": {
|
||||
"home.title.nav": "Accueil",
|
||||
@@ -78,6 +88,7 @@
|
||||
"home.intro.text.2": "Si vous désirez me contacter, vous pouvez le faire via le formulaire de contact dans la page prévu à cet effet qui est liée dans le menu latéral ou via l'adresse email présente sur cette page.",
|
||||
"blog.title": "Blog",
|
||||
"programming.title": "Programmation",
|
||||
"programming.title.projects": "Projets",
|
||||
"programming.java.title": "Java",
|
||||
"programming.purebasic.title": "PureBasic",
|
||||
"programming.python.title": "Python",
|
||||
@@ -126,7 +137,8 @@
|
||||
"error.404.description": "La ressource demandée est introuvable sur le serveur !",
|
||||
|
||||
"error.content.title.generic": "Erreur de contenu",
|
||||
"error.content.none": "Aucune erreur précise n'a été détectée.",
|
||||
"error.content.title.empty": "Aucun contenu trouvé",
|
||||
"error.content.none": "Aucune erreur n'a été détectée.",
|
||||
"error.content.detect.category": "Impossibilité de détecter la catégorie de contenu demandée.",
|
||||
"error.content.detect.display": "Impossibilité de détecter si une recherche ou page spécifique était demandée.",
|
||||
"error.content.detect.subtype": "Impossibilité de détecter le sous-type de contenu demandé.",
|
||||
@@ -134,9 +146,17 @@
|
||||
"error.content.detect.empty": "Aucun contenu en rapport avec les tags choisi n'as été trouvé.",
|
||||
|
||||
"content.title.error": "$content.title.error",
|
||||
"content.title.search": "$content.title.search",
|
||||
"content.title.search": "Recherche de projets",
|
||||
"content.title.article": "$content.title.article",
|
||||
"content.title.application": "$content.title.application"
|
||||
"content.title.application": "$content.title.application",
|
||||
"content.tags.requested": "Tags demandés",
|
||||
"content.search.count.single": "résultat",
|
||||
"content.search.count.multiple": "résultats",
|
||||
|
||||
"about.biography.title": "Qui suis-je ?",
|
||||
"about.skills.title": "Compétences",
|
||||
"about.work.title": "Parcours professionnel",
|
||||
"about.education.title": "Éducation"
|
||||
},
|
||||
"lb": {
|
||||
"home.title.nav": "Doheem",
|
||||
|
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('../commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('../commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
@@ -15,7 +19,8 @@
|
||||
<body class="with-custom-webkit-scrollbars with-custom-css-scrollbars dark-mode" data-dm-shortcut-enabled="true" data-sidebar-shortcut-enabled="true">
|
||||
<?php include 'body-root.php'; ?>
|
||||
<div class="page-wrapper with-sidebar with-navbar-fixed-bottom">
|
||||
<?php const SIDEBAR_ID = 'contact'; include 'sidebar.php'; ?>
|
||||
<?php $SIDEBAR_ID = 'contact'; include 'sidebar.php'; ?>
|
||||
|
||||
<div class="content-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div id="page-title-bar" class="card p-0 pl-20 m-0 square-corners bg-very-dark title-bkgd navbar">
|
||||
@@ -24,7 +29,7 @@
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div class="content mx-auto w-lg-p90">
|
||||
<div class="card p-0 mx-0">
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
@@ -66,7 +71,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-20 bg-light-lm bg-very-dark-dm rounded-bottom">
|
||||
<div class="px-card py-20 bg-light-lm bg-very-dark-dm rounded-bottom pl-20">
|
||||
<a href="https://twitter.com/messages/compose?recipient_id=937370791334895616">
|
||||
<button class="btn btn-primary">Compose DM to @NibblePoker on Twitter</button>
|
||||
</a>
|
||||
|
@@ -9,7 +9,7 @@
|
||||
"en": "This is a test article, please ignore it",
|
||||
"fr": "Ceci est un article de test, veuillez l'ignorer."
|
||||
},
|
||||
"image": "test.jpg",
|
||||
"image": "/resources/Azias/imgs/angry-alchool-pussy.png",
|
||||
"tags": [
|
||||
"programming", "purebasic"
|
||||
]
|
||||
@@ -26,7 +26,7 @@
|
||||
},
|
||||
"image": "test.jpg",
|
||||
"tags": [
|
||||
"programming", "purebasic"
|
||||
"programming", "docker"
|
||||
]
|
||||
}
|
||||
]
|
@@ -1,6 +1,16 @@
|
||||
<?php set_include_path('../commons/'); include 'config.php'; include 'langs.php'; include 'content.php'?>
|
||||
<?php
|
||||
// Checking if an error occured while loading data and parsing the URL.
|
||||
// Includes
|
||||
set_include_path('../commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
include_once 'content.php';
|
||||
|
||||
// Safety check for the constants
|
||||
/*if(!defined('CONTENT_DEBUG')) {
|
||||
$CONTENT_DEBUG = false;
|
||||
}/**/
|
||||
|
||||
// Checking if an error occurred while loading data and parsing the URL.
|
||||
$content_error_code = 200;
|
||||
if($content_has_error) {
|
||||
if(is_null($requested_tags)) {
|
||||
@@ -18,7 +28,7 @@ if($content_has_error) {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: Check if it went well, else 503 or something like that.
|
||||
// TODO: Check if it went well, else 503 or something like - Done above ?.
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
@@ -36,7 +46,7 @@ if($content_has_error) {
|
||||
<body class="with-custom-webkit-scrollbars with-custom-css-scrollbars dark-mode" data-dm-shortcut-enabled="true" data-sidebar-shortcut-enabled="true">
|
||||
<?php include 'body-root.php'; ?>
|
||||
<div class="page-wrapper with-sidebar with-navbar-fixed-bottom">
|
||||
<?php include 'sidebar.php'; ?>
|
||||
<?php $SIDEBAR_ID = 'blog'; include 'sidebar.php'; ?>
|
||||
<div class="content-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div id="page-title-bar" class="card p-0 pl-20 m-0 square-corners bg-very-dark title-bkgd navbar">
|
||||
@@ -45,9 +55,10 @@ if($content_has_error) {
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
|
||||
<div class="card p-0 mx-0">
|
||||
<div class="content mx-auto w-lg-p90">
|
||||
<?php
|
||||
if($CONTENT_DEBUG) {
|
||||
echo('<div class="card p-0 mx-0">
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
@@ -55,76 +66,89 @@ if($content_has_error) {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-20 bg-light-lm bg-very-dark-dm rounded-bottom px-20">
|
||||
<h3 class="m-0 mb-5 font-size-20 text-center font-weight-semi-bold">This page is still under construction !</h3>
|
||||
<p class="m-0 mb-5">REQUEST_URI: <?php echo($_SERVER['REQUEST_URI']); ?></p>
|
||||
<p class="m-0 mb-5">$requested_content_type: <?php echo($requested_content_type); ?></p>
|
||||
<p class="m-0 mb-5">$requested_content_display_type: <?php echo($requested_content_display_type); ?></p>
|
||||
<p class="m-0 mb-5">$requested_tags: [<?php echo(implode(", ", $requested_tags)); ?>]</p>
|
||||
<p class="m-0 mb-5">count($requested_tags): <?php echo(count($requested_tags)); ?></p>
|
||||
<p class="m-0 mb-5">$content_has_error: <?php echo($content_has_error); ?></p>
|
||||
<p class="m-0 mb-5">$_content_error_message_key: <?php echo($_content_error_message_key); ?></p>
|
||||
<p class="m-0 mb-5">localize($_content_error_message_key): <?php echo(localize($_content_error_message_key)); ?></p>
|
||||
<p class="m-0 mb-5">$content_error_message: <?php echo($content_error_message); ?></p>
|
||||
<p class="m-0 mb-5">$filtered_content_index_data: <?php print_r($filtered_content_index_data); ?></p>
|
||||
<p class="m-0 mb-5">$content_requested_url_part: <?php echo($content_requested_url_part); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
<div class="px-card py-20 bg-light-lm rounded-bottom px-20 bg-very-dark title-bkgd">
|
||||
<!--<h3 class="m-0 mb-5 font-size-20 text-center font-weight-semi-bold">This page is still under construction !</h3>-->');
|
||||
echo('<p class="m-0 mb-5">REQUEST_URI: '.$_SERVER['REQUEST_URI'].'</p>');
|
||||
echo('<p class="m-0 mb-5">$requested_content_type: '.$requested_content_type.'</p>');
|
||||
echo('<p class="m-0 mb-5">$requested_content_display_type: '.$requested_content_display_type.'</p>');
|
||||
echo('<p class="m-0 mb-5">$requested_tags: ['.implode(", ", $requested_tags).']</p>');
|
||||
echo('<p class="m-0 mb-5">count($requested_tags): '.count($requested_tags).'</p>');
|
||||
echo('<p class="m-0 mb-5">$content_has_error: '.$content_has_error.'</p>');
|
||||
echo('<p class="m-0 mb-5">$_content_error_message_key: '.$_content_error_message_key.'</p>');
|
||||
echo('<p class="m-0 mb-5">localize($_content_error_message_key): '.localize($_content_error_message_key).'</p>');
|
||||
echo('<p class="m-0 mb-5">$content_error_message: '.$content_error_message.'</p>');
|
||||
echo('<p class="m-0 mb-5">$filtered_content_index_data: ');
|
||||
print_r($filtered_content_index_data);
|
||||
echo('</p>');
|
||||
echo('<p class="m-0 mb-5">$content_requested_url_part: '.$content_requested_url_part.'</p>');
|
||||
echo('</div></div>');
|
||||
}
|
||||
|
||||
// Checking if an error occurred.
|
||||
if($content_error_code != 200) {
|
||||
printErrorCard('error.content.title.generic', $content_error_message);
|
||||
printErrorCard(localize('error.content.title.generic'), $content_error_message);
|
||||
goto content_printing_end;
|
||||
}
|
||||
|
||||
|
||||
// Printing the containers
|
||||
if($requested_content_display_type == ContentDisplayType::SEARCH) {
|
||||
startMainCard("fad fa-file-alt", "content.title.search", "subtitle");
|
||||
echo('<div class="py-20 bg-light-lm bg-very-dark-dm rounded-bottom px-0">');
|
||||
startMainCard("fad fa-file-search", localize("content.title.search"),
|
||||
strval(count($filtered_content_index_data)) . " " .
|
||||
(count($filtered_content_index_data) > 1 ?
|
||||
localize("content.search.count.multiple") :
|
||||
localize("content.search.count.single")));
|
||||
echo('<div class="py-20 bg-light-lm rounded-bottom px-0 bg-very-dark title-bkgd">');
|
||||
for($i = 0; $i < count($filtered_content_index_data); $i++) {
|
||||
if($i > 0) {
|
||||
echo('<div class="sidebar-divider m-20 mx-0"></div>');
|
||||
}
|
||||
echo('<div class="content m-0 mx-20">');
|
||||
echo('<h3 class="font-size-14 font-weight-semi-bold m-0">'.$filtered_content_index_data[$i]["title"][$user_language].'</h3>');
|
||||
|
||||
|
||||
echo('<div class="d-flex flex-wrap">');
|
||||
|
||||
echo('<div class="">');
|
||||
echo('<img class="content-search-image" src="'.$filtered_content_index_data[$i]["image"].'">');
|
||||
echo('</div>');
|
||||
|
||||
echo('<div class="ml-md-15">');
|
||||
echo('<h3 class="font-size-18 font-weight-semi-bold m-0 flex-fill">'.$filtered_content_index_data[$i]["title"][$user_language].'</h3>');
|
||||
echo('<p class="text-break text-justify my-5 mb-0">'.$filtered_content_index_data[$i]["preamble"][$user_language].'</p>');
|
||||
echo('</div>');
|
||||
|
||||
echo('</div>');
|
||||
|
||||
echo('<hr class="subtle">');
|
||||
|
||||
echo('<div class="d-flex flex-wrap">');
|
||||
echo('<div class="content-tag-container">');
|
||||
echo('<i class="fad fa-tags"></i>');
|
||||
for($j = 0; $j < count($filtered_content_index_data[$i]["tags"]); $j++) {
|
||||
echo('<a href="#" class="content-tag">#'.$filtered_content_index_data[$i]["tags"][$j].'</a>');
|
||||
}
|
||||
echo('</div>');
|
||||
// TODO: Add button to view article !
|
||||
echo('</div>');
|
||||
|
||||
|
||||
echo('</div>');
|
||||
}
|
||||
echo('</div>');
|
||||
|
||||
echo('<div class="px-card py-10 bg-light-lm bg-dark-dm rounded-bottom border-top">'.
|
||||
'<p class="font-size-12 m-0">'.
|
||||
'Card footer here.'.
|
||||
'</p></div>');/**/
|
||||
|
||||
'</p></div>');
|
||||
endMainCard();
|
||||
} elseif($requested_content_display_type == ContentDisplayType::ARTICLE) {
|
||||
startMainCard("fad fa-file-alt", "content.title.article", "subtitle");
|
||||
startMainCard("fad fa-file-alt", localize("content.title.article"), "subtitle");
|
||||
endMainCard();
|
||||
} elseif($requested_content_display_type == ContentDisplayType::APPLICATION) {
|
||||
startMainCard("fad fa-file-alt", "content.title.application", "subtitle");
|
||||
startMainCard("fad fa-file-alt", localize("content.title.application"), "subtitle");
|
||||
endMainCard();
|
||||
}
|
||||
|
||||
content_printing_end:
|
||||
?>
|
||||
|
||||
<!--
|
||||
-->
|
||||
|
||||
<!--<div class="px-card py-20 bg-light-lm bg-very-dark-dm rounded-bottom px-20">
|
||||
<form action="mailto:herwin.bozet@gmail.com?subject=Website%20contact%20form%20message" method="post" class="w-full">
|
||||
<div class="form-group">
|
||||
<label for="name">Sender's Name</label>
|
||||
<input type="text" class="form-control" id="name" placeholder="John Smith">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="message" class="required">Message</label>
|
||||
<textarea class="form-control" id="message" placeholder="Write your message here." required="required"></textarea>
|
||||
</div>
|
||||
<input class="btn btn-primary mr-10" type="submit" value="Submit">
|
||||
<input class="btn btn-secondary" type="reset" value="Reset">
|
||||
</form>
|
||||
</div>-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -1,3 +1,3 @@
|
||||
{
|
||||
"_": "Is this file used anywhere ?"
|
||||
"_": "Is this file used anywhere ? - Referenced as the id in the article index"
|
||||
}
|
21
index.php
21
index.php
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('./commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('./commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
@@ -15,7 +19,7 @@
|
||||
<body class="with-custom-webkit-scrollbars with-custom-css-scrollbars dark-mode" data-dm-shortcut-enabled="true" data-sidebar-shortcut-enabled="true">
|
||||
<?php include 'body-root.php'; ?>
|
||||
<div class="page-wrapper with-sidebar with-navbar-fixed-bottom">
|
||||
<?php const SIDEBAR_ID = 'home'; include 'sidebar.php'; ?>
|
||||
<?php $SIDEBAR_ID = 'home'; include 'sidebar.php'; ?>
|
||||
<div class="content-wrapper">
|
||||
<div class="container-fluid h-full stretch-align-items">
|
||||
<div id="page-title-bar" class="card p-0 pl-20 m-0 square-corners bg-very-dark title-bkgd navbar">
|
||||
@@ -24,10 +28,7 @@
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
|
||||
|
||||
<div class="row mx-auto w-95">
|
||||
<div class="col-12 d-block">
|
||||
<div class="content mb-0">
|
||||
<div class="card p-0 m-0 card-bkgd">
|
||||
@@ -52,10 +53,9 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
<div class="row mx-auto w-95">
|
||||
<!--<div class="row mx-auto w-lg-p90">-->
|
||||
<div class="col-sm-12 col-lg-8 mb-20">
|
||||
<div class="content mb-0">
|
||||
<div class="card p-0 m-0 card-bkgd">
|
||||
@@ -75,7 +75,6 @@
|
||||
</div>
|
||||
|
||||
<div class="px-card py-5 px-20">
|
||||
|
||||
<div class="pl-lg-15 l-lab-app">
|
||||
<p class="mb-0 font-weight-semi-bold">
|
||||
PB-ListComPort
|
||||
|
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('../commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('../commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
@@ -15,7 +19,7 @@
|
||||
<body class="with-custom-webkit-scrollbars with-custom-css-scrollbars dark-mode" data-dm-shortcut-enabled="true" data-sidebar-shortcut-enabled="true">
|
||||
<?php include 'body-root.php'; ?>
|
||||
<div class="page-wrapper with-sidebar with-navbar-fixed-bottom">
|
||||
<?php const SIDEBAR_ID = 'links'; include 'sidebar.php'; ?>
|
||||
<?php $SIDEBAR_ID = 'links'; include 'sidebar.php'; ?>
|
||||
<div class="content-wrapper">
|
||||
<div class="container-fluid">
|
||||
<div id="page-title-bar" class="card p-0 pl-20 m-0 square-corners bg-very-dark title-bkgd navbar">
|
||||
@@ -24,7 +28,7 @@
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div class="content mx-auto w-lg-p90">
|
||||
<div class="card p-0 mx-0">
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
|
@@ -1,4 +1,8 @@
|
||||
<?php set_include_path('../commons/'); include 'config.php'; include 'langs.php'; ?>
|
||||
<?php
|
||||
set_include_path('../commons/');
|
||||
include_once 'config.php';
|
||||
include_once 'langs.php';
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="<?php echo($user_language); ?>">
|
||||
<head>
|
||||
@@ -24,7 +28,7 @@
|
||||
</h2>
|
||||
<?php include 'header-lang.php'; ?>
|
||||
</div>
|
||||
<div class="content">
|
||||
<div class="content mx-auto w-lg-p90">
|
||||
<div class="card p-0 mx-0">
|
||||
<div class="px-card py-10 border-bottom px-20">
|
||||
<div class="container-fluid">
|
||||
@@ -33,7 +37,7 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm px-20">
|
||||
<div class="px-card py-10 bg-light-lm px-20 bg-very-dark title-bkgd">
|
||||
<p class="font-size-12 m-0 mb-5">
|
||||
<?php print(localize('privacy.introduction.text.1')); ?>
|
||||
</p>
|
||||
@@ -58,7 +62,7 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm px-20">
|
||||
<div class="px-card py-10 bg-light-lm px-20 bg-very-dark title-bkgd">
|
||||
<p class="font-size-12 m-0">
|
||||
<?php print(localize('privacy.data.text.1')); ?>
|
||||
</p>
|
||||
@@ -72,7 +76,7 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm px-20">
|
||||
<div class="px-card py-10 bg-light-lm px-20 bg-very-dark title-bkgd">
|
||||
<p class="font-size-12 m-0 mb-5">
|
||||
<?php print(localize('privacy.update.text.1')); ?>
|
||||
</p>
|
||||
@@ -89,7 +93,7 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm px-20">
|
||||
<div class="px-card py-10 bg-light-lm px-20 bg-very-dark title-bkgd">
|
||||
<p class="font-size-12 m-0">
|
||||
<?php print(localize('privacy.contact.text.1')); ?><br>
|
||||
<i class="fad fa-at ml-10"></i>
|
||||
@@ -107,7 +111,7 @@
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="px-card py-10 bg-light-lm bg-very-dark-dm px-20">
|
||||
<div class="px-card py-10 bg-light-lm px-20 bg-very-dark title-bkgd">
|
||||
<p class="font-size-12 m-0 mb-5">
|
||||
<?php print(localize('privacy.complaint.text.1')); ?>
|
||||
</p>
|
||||
|
@@ -39,8 +39,6 @@ These files are required for the website to work properly !<br>
|
||||
* `/resources/FontAwesomePro/`
|
||||
* HalfMoon v1.1.1
|
||||
* `/resources/HalfMoon/`
|
||||
* Quantum
|
||||
* `/resources/Quantum/`
|
||||
|
||||
### Optional
|
||||
These files are leftovers from previous projects and might be required somewhere.
|
||||
@@ -48,5 +46,3 @@ These files are leftovers from previous projects and might be required somewhere
|
||||
* `/resources/ChartJs/`
|
||||
* Material Icons
|
||||
* `/resources/GoogleFonts/MaterialIcons/`
|
||||
* Icons8 - Color & Fluent private packs
|
||||
* `/resources/Icons8/`
|
||||
|
@@ -4,6 +4,11 @@
|
||||
src: url("/resources/Quantum/Quantum.otf") format('opentype');
|
||||
}
|
||||
|
||||
/* Preventing images from being saved with the right-click */
|
||||
img.no-save {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* Background for the main container and its cards */
|
||||
div#body-overlay {
|
||||
position: absolute;
|
||||
@@ -91,11 +96,20 @@ div#body-overlay {
|
||||
image-rendering: pixelated;
|
||||
}
|
||||
|
||||
hr, hr.dark-mode {
|
||||
hr, hr.dark-mde, hr.subtle {
|
||||
background-color: rgba(0, 0, 0, 0) !important;
|
||||
background: rgb(93,95,97);
|
||||
background: radial-gradient(circle, rgba(83,85,87,0.8) 0%, rgba(65,67,69,0.65) 75%, rgba(17,20,23,0) 100%);
|
||||
opacity: 0.75;
|
||||
opacity: 0.1;
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
img.content-search-image {
|
||||
max-height: 128px;
|
||||
}
|
||||
div.content-tag-container a:not(:first-child) {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
@media (min-width: 993px) {
|
||||
@@ -113,6 +127,22 @@ hr, hr.dark-mode {
|
||||
}
|
||||
}
|
||||
|
||||
/* Custom dynamic sizing */
|
||||
.w-lg-p90 {
|
||||
width: 95% !important;
|
||||
}
|
||||
@media (max-width: 992px) {
|
||||
.w-95 {
|
||||
width: 95% !important;
|
||||
}
|
||||
}
|
||||
@media (min-width: 993px) {
|
||||
.w-lg-p90 {
|
||||
width: 90% !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Trash */
|
||||
/*.lang-icon {
|
||||
height: var(--base-line-height);
|
||||
|
BIN
resources/Quantum/Quantum.otf
Normal file
BIN
resources/Quantum/Quantum.otf
Normal file
Binary file not shown.
2
resources/Quantum/readme.md
Normal file
2
resources/Quantum/readme.md
Normal file
@@ -0,0 +1,2 @@
|
||||
# Quantum Font
|
||||
100% font made by [sesohq](https://www.sesohq.com/) over at [sesohq.sellfy.store](https://sesohq.sellfy.store/p/3enu/).
|
Reference in New Issue
Block a user