diff --git a/.gitignore b/.gitignore
index d9f9099..3bec496 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,4 @@ resources/FontAwesomePro/
*.pdn
*.min.json
*.lnk
+tmp/
diff --git a/commons/composer.php b/commons/composer.php
index 1f59160..82dfca1 100644
--- a/commons/composer.php
+++ b/commons/composer.php
@@ -289,7 +289,8 @@ class ComposerContentMetadata {
' ' .
localize_private($this->article->title, $content_root->strings, false) .
'' .
- '\$subTitle' . '' .
+ localize_private($this->article->subtitle, $content_root->strings, false) .
+ '' .
'' .
$inner_html . '' .
'
' .
@@ -364,11 +365,13 @@ class ComposerContentMetadataOpengraph {
class ComposerContentMetadataArticle {
public string $icon;
public string $title;
+ public string $subtitle;
public array $tags;
- function __construct(string $icon, string $title, array $tags) {
+ function __construct(string $icon, string $title, string $subtitle, array $tags) {
$this->icon = $icon;
$this->title = $title;
+ $this->subtitle = $subtitle;
$this->tags = $tags;
}
@@ -377,6 +380,7 @@ class ComposerContentMetadataArticle {
key_exists("icon", $json_data) ? $json_data["icon"] : "fad fa-question",
key_exists("title", $json_data) ?
$json_data["title"] : '
'.localize("error.content.data.no.title").'',
+ key_exists("subtitle", $json_data) ? $json_data["subtitle"] : '',
key_exists("tags", $json_data) ? $json_data["tags"] : [],
);
}
diff --git a/commons/content.php b/commons/content.php
index 00713fb..36b2974 100644
--- a/commons/content.php
+++ b/commons/content.php
@@ -104,7 +104,7 @@ if($requested_content_display_type == ContentDisplayType::SEARCH) {
// Loading the content's data
$content_file_path = get_content_file_path($content_requested_url_part);
- if(is_null($content_file_path)) {
+ if(empty($content_file_path)) {
// File doesn't exist !
$content_has_error = true;
$content_error_message_key = "error.content.data.not.exist";
diff --git a/commons/strings.json b/commons/strings.json
index bcdf70b..a1ca737 100644
--- a/commons/strings.json
+++ b/commons/strings.json
@@ -108,7 +108,7 @@
"error.content.tags.length": "The \"tags\" URL parameter is too long.",
"error.content.tags.alphanumeric": "One of the tags given in the \"tags\" URL parameter is not a valid alphanumeric string.",
"error.content.detect.type": "The type of requested content couldn't be determined.",
- "error.content.id.alphanumeric": "The requested resource's ID isn't valid.",
+ "error.content.id.alphanumeric": "The requested resource's ID isn't a valid alphanumeric string.",
"error.content.data.not.exist": "The requested content doesn't have an internal item file.",
"error.content.data.no.title": "No title found !",
"error.content.data.no.description": "No description found !",
@@ -143,6 +143,7 @@
"content.fallback.content.commons.download.single": "Download",
"content.fallback.content.commons.download.multiple": "Downloads",
"content.fallback.content.commons.version": "Version",
+ "content.fallback.content.commons.github": "GitHub Repository",
"content.fallback.content.commons.lang.english": "English",
"content.fallback.content.commons.lang.french": "French",
@@ -261,7 +262,7 @@
"error.404.title": "Erreur 404",
"error.404.description": "La ressource demandée est introuvable sur le serveur !",
- "error.content.title.generic": "Erreur",
+ "error.content.title.generic": "Erreur de contenu",
"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.",
@@ -272,8 +273,8 @@
"error.content.tags.length": "Le paramètre d'URL \"tags\" est trop long.",
"error.content.tags.alphanumeric": "Un des tags donné dans le paramètre d'URL \"tags\" n'est pas une chaîne de texte alphanumérique valide.",
"error.content.detect.type": "Le type de contenu désiré n'as pas pu être détecté.",
- "error.content.id.alphanumeric": "L'ID de la ressource demandée n'est pas valide.",
- "error.content.data.not.exist": "Le contenu demandée n'a pas de fichier de données interne associé.",
+ "error.content.id.alphanumeric": "L'ID de la ressource demandée n'est pas une chaîne de texte alphanumérique valide.",
+ "error.content.data.not.exist": "Le contenu demandée n'a pas de fichier de rendu interne associé.",
"error.content.data.no.title": "Aucun titre trouvé !",
"error.content.data.no.description": "Aucune description trouvée !",
"error.content.data.no.tags": "Aucun tag trouvé !",
@@ -306,6 +307,7 @@
"content.fallback.content.commons.download.single": "Téléchargement",
"content.fallback.content.commons.download.multiple": "Téléchargements",
"content.fallback.content.commons.version": "Version",
+ "content.fallback.content.commons.github": "Dépôt GitHub",
"content.fallback.content.commons.lang.english": "Anglais",
"content.fallback.content.commons.lang.french": "Français",
diff --git a/content/index.json b/content/index.json
index 453b984..e3ecd8d 100644
--- a/content/index.json
+++ b/content/index.json
@@ -10,7 +10,7 @@
"fr": "Un petit utilitaire pour invité de commande qui permet de facilement lister les noms, noms formatés et chemin des ports COM.
Cet outil a pour bût de faciliter cette tâche sans avoir à utiliser la commande
mode
ou le
Gestionnaire de périphérique."
},
"image": "/resources/Azias/imgs/lscom/lscom-v2-text-01-bkgd-cli.png",
- "tags": ["application", "lscom", "purebasic", "windows"]
+ "tags": ["application", "tool" ,"lscom", "purebasic", "windows"]
},
{
"id": "youtube-auto-archiver",
diff --git a/content/items/lscom-cli.json b/content/items/lscom-cli.json
index 158e490..56e679f 100644
--- a/content/items/lscom-cli.json
+++ b/content/items/lscom-cli.json
@@ -3,24 +3,26 @@
"en": {
"meta.title": "PB-ListComPort",
"meta.description": "A simple CLI tool that can list COM ports with their name, friendly name and device name easily and cleanly.",
- "article.subtitle": "subtitle here",
+ "article.subtitle": "
View on GitHub",
"intro.title": "Introduction",
- "intro.p1": "A simple cli tool that can list COM ports with their full name easily and cleanly.",
+ "intro.p1": "A simple CLI tool that can list COM ports with their full name easily and cleanly.",
"intro.p2": "This tool is intended to replace the tedious task of having to use the
mode
command, and the
Device Manager to find a newly plugged-in device that provides a COM port.",
"intro.p3": "The earliest version of Windows that can be used is Windows XP x64 or Windows Vista due to the fact that RegGetValueW is not available on older versions of Windows.",
"usage.title": "Usage",
- "formatting.title": "Output formatting"
+ "formatting.title": "Output formatting",
+ "links.title": "Links"
},
"fr": {
"meta.title": "PB-ListComPort",
"meta.description": "Un petit utilitaire pour invité de commande qui permet de facilement lister les noms, noms formatés et chemin des ports COM.",
- "article.subtitle": "subtitle here",
+ "article.subtitle": "
Voir sur GitHub",
"intro.title": "Introduction",
"_intro.p1": "",
"_intro.p2": "",
"_intro.p3": "",
"usage.title": "Utilisation",
- "formatting.title": "Formatage de sortie"
+ "formatting.title": "Formatage de sortie",
+ "links.title": "Liens"
}
},
"metadata": {
@@ -40,8 +42,8 @@
"article": {
"icon": "fad fa-terminal",
"title": "meta.title",
- "_subtitle": "article.subtitle",
- "tags": ["application", "lscom", "purebasic", "windows"]
+ "subtitle": "article.subtitle",
+ "tags": ["application", "tool", "lscom", "purebasic", "windows"]
}
},
"elements": [
@@ -405,6 +407,34 @@
}]
}
]
+ },
+
+ {
+ "type": "container",
+ "padding": 20,
+ "modifiers": ["no-top-margin"],
+ "parts": [
+ {"type": "h1", "content": "links.title"},
+ {
+ "type": "paragraph",
+ "indent": 2,
+ "parts": [
+ {"type": "raw", "content": "● ", "localize": false},
+ {
+ "type": "raw", "link": "https://github.com/aziascreations/PB-ListComPort",
+ "parts": [
+ {"type": "raw", "content": "content.commons.github"},
+ {"type": "raw", "content": " - ", "localize": false},
+ {
+ "type": "raw",
+ "content": "
(https://github.com/aziascreations/PB-ListComPort)",
+ "localize": false
+ }
+ ]
+ }
+ ]
+ }
+ ]
}
]
}
diff --git a/content/items/excel-worksheet-password-remover.json b/content/items/trash/excel-worksheet-password-remover.json
similarity index 100%
rename from content/items/excel-worksheet-password-remover.json
rename to content/items/trash/excel-worksheet-password-remover.json
diff --git a/content/items/test.json b/content/items/trash/test.json
similarity index 100%
rename from content/items/test.json
rename to content/items/trash/test.json
diff --git a/content/items/test2.json b/content/items/trash/test2.json
similarity index 100%
rename from content/items/test2.json
rename to content/items/trash/test2.json
diff --git a/content/items/youtube-auto-archiver.json b/content/items/trash/youtube-auto-archiver.json
similarity index 100%
rename from content/items/youtube-auto-archiver.json
rename to content/items/trash/youtube-auto-archiver.json
diff --git a/readme.md b/readme.md
index 16c703d..90cf94c 100644
--- a/readme.md
+++ b/readme.md
@@ -30,6 +30,6 @@ the [.htaccess](.htaccess) file.
## Requirements
These files are required and need to be installed manually for the website to work properly !
-* Apache 2.4 & PHP 8 or newer
+* Apache 2.4 & PHP 8.1 or newer
* Font Awesome Pro v5.15.3
* `/resources/FontAwesomePro/`
diff --git a/resources/Azias/css/nibblepoker.lu.css b/resources/Azias/css/nibblepoker.lu.css
index ed4a2b9..e790198 100644
--- a/resources/Azias/css/nibblepoker.lu.css
+++ b/resources/Azias/css/nibblepoker.lu.css
@@ -204,15 +204,15 @@ button + button, .button-link + .button-link > button {
@media (min-width: 993px) {
.l-lab-web {
background: linear-gradient(90deg, rgba(101,144,134,0.3) 0%, rgba(101,144,134,0.2) 1.5px, rgba(101,144,134,0.0) 7px);
- clip-path: polygon(4px 0%, 100% 0, 100% 100%, 4px 100%, 0 calc(100% - 4px), 0 4px);
+ border-radius: 5px 0 0 5px;
}
.l-lab-office {
background: linear-gradient(90deg, rgba(64,84,59,0.5) 0%, rgba(64,84,59,0.3) 2px, rgba(64,84,59,0.0) 7px);
- clip-path: polygon(4px 0%, 100% 0, 100% 100%, 4px 100%, 0 calc(100% - 4px), 0 4px);
+ border-radius: 5px 0 0 5px;
}
.l-lab-app {
background: linear-gradient(90deg, rgba(156,23,34,0.4) 0%, rgba(156,23,34,0.3) 1.5px, rgba(156,23,34,0.0) 7px);
- clip-path: polygon(4px 0%, 100% 0, 100% 100%, 4px 100%, 0 calc(100% - 4px), 0 4px);
+ border-radius: 5px 0 0 5px;
}
}
diff --git a/resources/Azias/js/nibblepoker.lu.js b/resources/Azias/js/nibblepoker.lu.js
index 0f0b9ce..883a015 100644
--- a/resources/Azias/js/nibblepoker.lu.js
+++ b/resources/Azias/js/nibblepoker.lu.js
@@ -1,6 +1,7 @@
// Toggle button for the side menu. (Global)
document.getElementById('button-sidebar').addEventListener("click", () => {
halfmoon.toggleSidebar();
+ // TODO: Fix the slide size in gliders
});
// Adding the last URL to every a element with the 'js-set-previous-url' class.