X-Git-Url: https://src.twobees.de/?p=tampermonkeyscripts.git;a=blobdiff_plain;f=AzureDevOpsCommentEnhancer.user.js;h=b42e8bec2a74c500f46c308e55514cb6f66595ea;hp=155ced469cda49f148cca2ba915d5aa733663fd0;hb=HEAD;hpb=ba605ca19e2d5a1b5380dce30e2b8551c05bd776
diff --git a/AzureDevOpsCommentEnhancer.user.js b/AzureDevOpsCommentEnhancer.user.js
index 155ced4..b42e8be 100644
--- a/AzureDevOpsCommentEnhancer.user.js
+++ b/AzureDevOpsCommentEnhancer.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name Fix ADS checkin comments in discussion and history of workitems
-// @version 0.13
+// @version 0.18
// @author Tobias Sachs
// ... in @match replace "ads" with the url of you Azure DevOps Server
// @match https://ads/*
@@ -10,6 +10,11 @@
// @description
// ==/UserScript==
+// 0.18: make '@@DEPENDENCIES' blue
+// 0.17: search caseless for '@@CUST'
+// 0.16: do not modify a comment more than once
+// 0.15: fix links to work items found in commitmessages (e.g. #1235)
+// 0.14: also check html property of comments
// 0.13: Allow to manually insert changeset comments, which where not associated with the item during checking.
// Just copy changecomment into the commentsection and prefix with "Associated with changeset CHANGESET_NUMBER:"
// 0.12: also fix "Resolved with changeset" comments
@@ -43,16 +48,20 @@
console.info("fixing '" + items.length +"' comments.");
for (var i = 0; i < items.length; i++) {
let el = items[i];
- let html = el.innerHTML;
-
+ if(el.wasTampered) { continue; }
- if (checkRegex.test(el.textContext)) {
+ let html = el.innerHTML;
+ if ( checkRegex.test(html)
+ || (el.textContext && checkRegex.test(el.textContext))
+ ) {
html = html.replace(/((Associated|Resolved) with changeset )(\d*)([:.])/,
"$1$3$4
");
- html = html.replace(/#(\d+)/g, "#$1");
+ html = html.replace(/#(\d+)/g, "#$1");
html = html.replace(/\n/gi, "
");
- html = html.replace(/(@@CUST.*)/s, "
$1");
+ html = html.replace(/(@@CUST.*)/is, "
$1");
+ html = html.replace(/(@@Dependencies.*)/is, "$1");
el.innerHTML = html;
+ el.wasTampered = "ð";
}
}
};