Skip to content

Commit 8c61fab

Browse files
committed
Updated changelog.
1 parent d988495 commit 8c61fab

2 files changed

Lines changed: 15 additions & 69 deletions

File tree

source/src/main/resources/documentation/D2/include/en/changelog_4.21_en.adoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,18 @@
44

55
*Improvements / New features*
66
[square]
7+
* Major UI improvements using Tailwind & Alpine. All modal on all pages changed for better User Experience.
8+
* Major Menu structure change. Most day to day screens are now all under 'Maintain' menu entry. Application and environment configuration moved to "Setting"
9+
* First AI use cases integration using Anthropic.
710
* GetFormJS property is now available for all application type. (when not GUI, the js is executed on server side)
811
* Integration with the new proxy dependency of cerberus-robot-proxy (MITMPROXY).
912
* Integration with latest Cerberus robot extension including video recording and automatic link to real time execution for SaaS users.
1013
* On engine messages, element links are no longer displayed when using image recognition.
1114
* When using image recognition, message now report when multiple elements were detected.
15+
* Campaign now save and display last execution timestamp. Campaign can then be sorted by latest execution.
16+
* Added support for clearField action for GUI and FAT applications
17+
* Added support for property row number for mongodb service (limiting request duration and size)
18+
*
1219

1320
*Warning to be considered before applying the version (deprecated features)*
1421
[square]

source/src/main/webapp/js/global/global.js

Lines changed: 8 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -2738,20 +2738,20 @@ function getDateMedium(date) {
27382738

27392739
function getHumanReadableDuration(seconds, maxUnits = Infinity) {
27402740
const units = [
2741-
{ label: 'y', value: 365 * 24 * 60 * 60 },
2742-
{ label: 'mo', value: 30 * 24 * 60 * 60 }, // mois approx
2743-
{ label: 'd', value: 24 * 60 * 60 },
2744-
{ label: 'h', value: 60 * 60 },
2745-
{ label: 'm', value: 60 },
2746-
{ label: 's', value: 1 }
2741+
{label: 'y', value: 365 * 24 * 60 * 60},
2742+
{label: 'mo', value: 30 * 24 * 60 * 60}, // mois approx
2743+
{label: 'd', value: 24 * 60 * 60},
2744+
{label: 'h', value: 60 * 60},
2745+
{label: 'm', value: 60},
2746+
{label: 's', value: 1}
27472747
];
27482748

27492749
let remaining = seconds;
27502750
const result = [];
27512751

27522752
for (const unit of units) {
2753-
if (result.length >= maxUnits) break;
2754-
2753+
if (result.length >= maxUnits)
2754+
break;
27552755
const qty = Math.floor(remaining / unit.value);
27562756
if (qty > 0) {
27572757
result.push(qty + unit.label);
@@ -2762,67 +2762,6 @@ function getHumanReadableDuration(seconds, maxUnits = Infinity) {
27622762
return result.length > 0 ? result.join(' ') : '0s';
27632763
}
27642764

2765-
function getHumanReadableDuration1(durInSec, nbUnits = 2) {
2766-
console.info("start : " + durInSec + " - " + nbUnits);
2767-
let dur = durInSec;
2768-
let unit = "s";
2769-
let cnt1 = 0;
2770-
let cnt2 = 0;
2771-
if (dur >= 60) {
2772-
dur = dur / 60;
2773-
unit = "min";
2774-
} else {
2775-
return Math.round(dur) + " " + unit;
2776-
}
2777-
if (durInSec > 432000000) {
2778-
return "unknown";
2779-
}
2780-
if (dur >= 60) {
2781-
dur = dur / 60;
2782-
unit = "h";
2783-
} else {
2784-
cnt1 = Math.floor(dur);
2785-
cnt2 = durInSec - (cnt1 * 60);
2786-
if ((cnt2 > 0) && (nbUnits > 1)) {
2787-
return cnt1 + " " + unit + " " + Math.round(cnt2) + " s";
2788-
} else {
2789-
return cnt1 + " " + unit;
2790-
}
2791-
}
2792-
if (dur >= 24) {
2793-
dur = dur / 24;
2794-
unit = "d";
2795-
} else {
2796-
cnt1 = Math.floor(dur);
2797-
cnt2 = durInSec - (cnt1 * 60 * 60);
2798-
if ((cnt2 > 0) && (nbUnits > 1)) {
2799-
return cnt1 + " " + unit + " " + getHumanReadableDuration(cnt2, (nbUnits - 1));
2800-
} else {
2801-
return cnt1 + " " + unit;
2802-
}
2803-
}
2804-
if (dur >= 365) {
2805-
dur = dur / 365;
2806-
unit = "y";
2807-
} else {
2808-
cnt1 = Math.floor(dur);
2809-
cnt2 = durInSec - (cnt1 * 60 * 60 * 24);
2810-
if ((cnt2 > 0) && (nbUnits > 1)) {
2811-
return cnt1 + " " + unit + " " + getHumanReadableDuration(cnt2, (nbUnits - 1));
2812-
} else {
2813-
return cnt1 + " " + unit;
2814-
}
2815-
}
2816-
2817-
cnt1 = Math.floor(dur);
2818-
cnt2 = durInSec - (cnt1 * 60 * 60 * 24);
2819-
if ((cnt2 > 0) && (nbUnits > 1)) {
2820-
return cnt1 + " " + unit + " " + getHumanReadableDuration(cnt2, (nbUnits - 1));
2821-
} else {
2822-
return cnt1 + " " + unit;
2823-
}
2824-
}
2825-
28262765
function getTextPlurial(nb, textSingle, textPlusial) {
28272766
if (nb > 1) {
28282767
return "" + nb + textPlusial;

0 commit comments

Comments
 (0)