diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..308d57e --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,46 @@ +## 4.1.0 +### Improvements +- Add German localisation +- Change prioritisation of error messages when trying to send an empty message while not having selected any recipients + +## 4.0.1-4.0.4 +- Post-release check fixes (mainly for corrupted binary files due to incorrect CRLF settings in Git) +- 4.0.4: first version to be added to official package listing after module got approved + +## 4.0.0 +First public release and submission to Foundry VTT package listing +- Bump version number to avoid potential issues with pre-release version numbering +- Add GitHub workflow step to publish release to package page + +--- + +# Versions prior to public release + +## Pre-releases 3.0.0-alpha to -kappa (November and December 2024) +Multiple pre-releases on the road to public release +- Minimum Foundry VTT version 12 + +### Improvements +- Migration to Application v2, and improve sub-templates to match +- Add settings for whisper notification +- Add settings for UI buttons to open messenger window +- Rename module from `Lucas's Almost Magnificent Messenger` to `Lucas's Awesome Messenger Extension` and introduce `LAME Messenger` abbreviation +- Improve overall styling +- Add GitHub workflow to create module files for release +- Add README + +## 2.1.3 (July 2021) +- Compatability with Foundry VTT version 0.8.8 +- Initial Git commit + +## 2.1.2 (April 2021) +Minimum Foundry VTT version 0.7.9 + +## 1.3.1 (December 2020) +Minimum Foundry VTT version 0.7.7 + +## 1.3.0 (March 2020) +Minimum Foundry VTT version 0.5.1 + +## 1.0.0 +Lost to time... diff --git a/README.md b/README.md index 22a900c..597318a 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,6 @@ Please first ensure the problem is reproducible, best with all other modules dea ## 🎉 Credits & Thanks - Player avatars seen in the screenshots in this README are token artwork by "Stryxin" and [Forgotten Adventures](https://www.forgotten-adventures.net) which are included in Foundry VTT's _Dungeons & Dragons Fifth Edition_ system. The depiction is for demonstrational purposes only and this module does not include any of this artwork. -- Thanks to Zaphyr for patiently waiting for this module to become publicly available since I started its development back in Foundry VTT version 0.5.5 in March 2020. +- Thanks to Zaphyr for patiently waiting for this module to become publicly available since I started its development back in Foundry VTT version 0.5.1 in March 2020. - Thanks to Darksmaug, LittleKing205, Aphasmayra, and dawnofdope for additional testing and feedback. - Kudos to everyone who read the full README, and thinks the module's name might be just a bit tongue-in-cheek. diff --git a/docs/README-introduction.webp b/docs/README-introduction.webp index b49a01a..f9e6595 100644 Binary files a/docs/README-introduction.webp and b/docs/README-introduction.webp differ diff --git a/languages/de.json b/languages/de.json new file mode 100644 index 0000000..db6f4db --- /dev/null +++ b/languages/de.json @@ -0,0 +1,36 @@ +{ + "LAME": { + "Module": { + "LongTitle": "Lucas's Awesome Messenger Extension", + "ShortTitle": "LAME Messenger", + "TitleWithAbbreviation": "Lucas's Awesome Messenger Extension (LAME Messenger)" + }, + "History": { + "Hint": "Dies ist dein Nachrichtenverlauf. Gesendete und empfangene Nachrichten werden hier angezeigt, solange du eingeloggt bist und bis du deinen Browser aktualisierst.", + "To": "an", + "From": "von" + }, + "WhisperHint": "Schreibe deine Flüsternachricht hier. Zum Senden, Ctrl-Enter drücken.", + "Send": "Senden", + "Notification": { + "NoRecipientSelected": "Kein Empfänger ausgewählt.", + "NoMessageToSend": "Keine Nachricht zum Senden." + }, + "Setting": { + "ShowNotificationForNewWhisper": "Zeige Benachrichtigung bei neuen Flüsternachrichten", + "ShowNotificationForNewWhisperHint": "Soll eine visuelle Benachrichtigung angezeigt werden für jede empfangene Flüsternachricht?", + "PermanentNotificationForNewWhisper": "Bleibende Benachrichtigung bei neuen Flüsternachrichten", + "PermanentNotificationForNewWhisperHint": "Soll die visuelle Benachrichtigung angezeigt werden, bis du sie wegklickst?", + "ButtonInSceneControlToolbar": "Knopf zu Szenenkontrolle hinzufügen", + "ButtonInSceneControlToolbarHint": "Soll der Knopf zum Öffnen des Messengers in der Werkzeugleiste der Szenenkontrolle an der linken Bildschirmseite angezeigt werden?", + "ButtonInChatControl": "Knopf zu Chat-Kontrolle hinzufügen", + "ButtonInChatControlHint": "Soll der Knopf zum Öffnen des Messengers in der Chat-Kontrolle (rechts vom Würfeltyp-Selektor) in der Seitenleiste angezeigt werden?", + "ShowInactiveUsers": "Zeige inaktive Nutzer", + "ShowInactiveUsersHint": "Sollen Nutzer, die momentan nicht verbunden sind, im Messenger angezeigt werden?" + }, + "IncomingWhisperFrom": "Flüsternachricht von", + "NoUsersToShow": "Kein Nutzer anzuzeigen.", + "NoUsersToShowExplanation": "Entweder bist du der einzige Nutzer in dieser Welt, alle anderen Nutzen sind deaktiviert, oder sie sind inaktiv und die Einstellung um inaktive Nutzer anzuzeigen ist deaktiviert.", + "UserIsOffline": "Kann nur an verbundene Nutzer senden." + } +} diff --git a/module.json b/module.json index 3ac5160..c36d9d1 100644 --- a/module.json +++ b/module.json @@ -26,6 +26,11 @@ "styles/messenger.css" ], "languages": [ + { + "lang": "de", + "name": "Deutsch", + "path": "languages/de.json" + }, { "lang": "en", "name": "English", @@ -35,5 +40,7 @@ "url": "#{URL}#", "manifest": "#{MANIFEST}#", "download": "#{DOWNLOAD}#", - "readme": "README.md" + "readme": "https://github.com/lucasmetzen/foundryvtt-messenger/blob/main/README.md", + "bugs": "https://github.com/lucasmetzen/foundryvtt-messenger/issues", + "changelog": "https://github.com/lucasmetzen/foundryvtt-messenger/blob/main/CHANGELOG.md" } diff --git a/scripts/module.mjs b/scripts/module.mjs index 5e5007c..4b56eca 100644 --- a/scripts/module.mjs +++ b/scripts/module.mjs @@ -1,7 +1,6 @@ const {ApplicationV2, HandlebarsApplicationMixin} = foundry.applications.api; import {localize, MODULE_ID, MODULE_ICON_CLASSES, TEMPLATE_PARTS_PATH} from "./config.mjs"; -import {log} from "./helpers/log.mjs"; import {getSetting, registerSettings} from "./settings.mjs"; import {registerHandlebarsHelpers} from "./helpers/handlebars-helpers.mjs"; @@ -103,8 +102,6 @@ class LAME extends HandlebarsApplicationMixin(ApplicationV2) { static ready() { window.LAME.computeUsersData(); // TODO: Look into this again as this doesn't seem to be the intended way... - - log('ready'); } beautifyHistory() { @@ -187,7 +184,15 @@ class LAME extends HandlebarsApplicationMixin(ApplicationV2) { } async sendMessage(html) { - // Get selected users: + // Get message text: + const messageField = html.find('.message'), + message = messageField.val(); + if (message.length === 0) { + ui.notifications.error(localize("LAME.Notification.NoMessageToSend")); + return; + } + + // Get selected user(s): const checkedUserElements = html.find('input[id^="user-"]:checked'); let selectedUserNames = []; checkedUserElements.each(function () { @@ -198,14 +203,6 @@ class LAME extends HandlebarsApplicationMixin(ApplicationV2) { return; } - // Get message text: - const messageField = html.find('.message'), - message = messageField.val(); - if (message.length === 0) { - ui.notifications.error(localize("LAME.Notification.NoMessageToSend")); - return; - } - // Send whisper(s): this.sendWhisperTo(selectedUserNames, message); this.addOutgoingMessageToHistory(selectedUserNames, message); diff --git a/scripts/settings.mjs b/scripts/settings.mjs index 66f9e34..c31f179 100644 --- a/scripts/settings.mjs +++ b/scripts/settings.mjs @@ -1,5 +1,4 @@ import { MODULE_ID } from "./config.mjs"; -import { log } from "./helpers/log.mjs"; export function registerSettings() { registerSetting('showNotificationForNewWhisper', { @@ -56,8 +55,6 @@ export function registerSettings() { await window.LAME.computeUsersDataAndRenderPartial(); } }); - - log("Module settings registered."); // DEBUG: Remove after development. } function registerSetting(settingName, options) {