From fd429c94c6f8b8134622d1d7edcd6fb941933181 Mon Sep 17 00:00:00 2001 From: Eric Oulashin <nightfox@synchro.net> Date: Fri, 7 Mar 2025 20:33:27 +0000 Subject: [PATCH] DDFileLister: Fix for editing a file's extended description when the file doesn't have one initially --- xtrn/ddfilelister/ddfilelister.js | 32 ++++++++++++++++++++------ xtrn/ddfilelister/ddfl_cfg.js | 4 ++-- xtrn/ddfilelister/readme.txt | 4 ++-- xtrn/ddfilelister/revision_history.txt | 2 ++ 4 files changed, 31 insertions(+), 11 deletions(-) diff --git a/xtrn/ddfilelister/ddfilelister.js b/xtrn/ddfilelister/ddfilelister.js index cc6818402b..0b42f328af 100644 --- a/xtrn/ddfilelister/ddfilelister.js +++ b/xtrn/ddfilelister/ddfilelister.js @@ -174,6 +174,9 @@ * and expanding newlines * Refactored the way the settings and colors are structured in the * code. No functional change. + * 2025-03-06 Eric Oulashin Version 2.29 + * Bug fix for editing ext'd description when a file has no ext'd + * description initially */ "use strict"; @@ -215,8 +218,8 @@ var gAvatar = load({}, "avatar_lib.js"); // Version information -var LISTER_VERSION = "2.28b"; -var LISTER_DATE = "2025-02-27"; +var LISTER_VERSION = "2.29"; +var LISTER_DATE = "2025-03-06"; /////////////////////////////////////////////////////////////////////////////// @@ -2007,15 +2010,30 @@ function editFileInfo(pFileList, pFileListMenu) var extdMetadata = getFileInfoFromFilebase(fileMetadata.dirCode, fileMetadata.name, FileBase.DETAIL.EXTENDED); if (extdMetadata != null) { - // Let the user edit the extended description with their configured editor + // Let the user edit the extended description (if it has one) with their configured editor var descFilename = system.temp_dir + "extdDescTemp.txt"; var outFile = new File(descFilename); if (outFile.open("w")) { - // An extended file description is usually up to about 45 characters long - var descWrapped = word_wrap(extdMetadata.extdesc, 45, null, false).split("\r\n"); - for (var lineIdx = 0; lineIdx < descWrapped.length; ++lineIdx) - outFile.writeln(descWrapped[lineIdx]); + if (typeof(extdMetadata.extdesc) === "string") + { + // An extended file description is usually up to about 45 characters long + var descWrapped = word_wrap(extdMetadata.extdesc, 45, null, false).split("\r\n"); + for (var lineIdx = 0; lineIdx < descWrapped.length; ++lineIdx) + outFile.writeln(descWrapped[lineIdx]); + } + else + { + if (extdMetadata.hasOwnProperty("desc") && typeof(extdMetadata.desc) === "string" && extdMetadata.desc.length > 0) + { + if (console.yesno("No extended description. Start with short description")) + outFile.writeln(extdMetadata.desc); + else + outFile.writeln(""); + } + else + outFile.writeln(""); + } outFile.close(); if (console.editfile(descFilename, "", "", fileMetadata.name, "", false)) { diff --git a/xtrn/ddfilelister/ddfl_cfg.js b/xtrn/ddfilelister/ddfl_cfg.js index d6fe829ed0..778ccda11a 100644 --- a/xtrn/ddfilelister/ddfl_cfg.js +++ b/xtrn/ddfilelister/ddfl_cfg.js @@ -4,7 +4,7 @@ // If you have ddfilelister in a directory other than xtrn/ddfilelister, then the changes to // ddfilelister.cfg will be saved in that directory (assuming you're running ddmr_cfg.js from // that same directory). -// Currently for ddfilelister 2.28b. +// Currently for ddfilelister 2.29. // // If you're running ddfilelister from xtrn/ddfilelister (the standard location) and you want // to save the configuration file there (rather than sbbs/mods), you can use one of the @@ -17,7 +17,7 @@ require("sbbsdefs.js", "P_NONE"); require("uifcdefs.js", "UIFC_INMSG"); -if (!uifc.init("DigDist. File Lister 2.28b Configurator")) +if (!uifc.init("DigDist. File Lister 2.29 Configurator")) { print("Failed to initialize uifc"); exit(1); diff --git a/xtrn/ddfilelister/readme.txt b/xtrn/ddfilelister/readme.txt index 8df0eb1c35..d7723aeded 100644 --- a/xtrn/ddfilelister/readme.txt +++ b/xtrn/ddfilelister/readme.txt @@ -1,6 +1,6 @@ Digital Distortion File Lister - Version 2.28b - Release date: 2025-02-27 + Version 2.29 + Release date: 2025-03-06 by diff --git a/xtrn/ddfilelister/revision_history.txt b/xtrn/ddfilelister/revision_history.txt index c55ac25521..cefbf6db32 100644 --- a/xtrn/ddfilelister/revision_history.txt +++ b/xtrn/ddfilelister/revision_history.txt @@ -5,6 +5,8 @@ Revision History (change log) ============================= Version Date Description ------- ---- ----------- +2.29 2025-03-06 Bug fix for editing an extended description when a file + doesn't have an extended description initially 2.28b 2025-02-27 Formatting improvement for the traditional (non-lightbar) user interface for some long descriptions using ANSI to make them look better (removal of cursor movement codes -- GitLab