diff --git a/src/server/tools/general.js b/src/server/tools/general.js
index faccea8..7ab4fa5 100755
--- a/src/server/tools/general.js
+++ b/src/server/tools/general.js
@@ -4251,18 +4251,35 @@ module.exports = {
return '';
}
try {
- let mycar = value.substring(0, numchars);
+ let truncatedValue = value;
+ // Controllo se la lunghezza della stringa รจ maggiore di numchars
if (value.length > numchars) {
+ // Tronca la stringa alla lunghezza specificata, mantenendo i tag HTML
+ const tags = [];
+ let openTag = false;
+ for (let i = 0, count = 0; i < value.length && count < numchars; i++) {
+ if (value[i] === '<') {
+ openTag = true;
+ } else if (value[i] === '>') {
+ openTag = false;
+ }
+ if (!openTag) {
+ count++;
+ }
+ truncatedValue = value.substring(0, i + 1);
+ }
+ // Aggiungi il testo aggiuntivo per indicare il troncamento
if (continua) {
- if (link)
- mycar += ` (... continua sulla App)`;
- else
- mycar += ` (... continua sulla App)`;
+ if (link) {
+ truncatedValue += ` (... continua sulla App)`;
+ } else {
+ truncatedValue += ` (... continua sulla App)`;
+ }
} else {
- mycar += ' ...';
+ truncatedValue += ' ...';
}
}
- return mycar;
+ return truncatedValue;
} catch (e) {
return value;
}