// ==UserScript==
// @name Fix ADS checkin comments in discussion and history of workitems
-// @version 0.9
+// @version 0.10
// @author Tobias Sachs
// ... in @match replace "ads" with the url of you Azure DevOps Server
// @match https://ads/*
// @description
// ==/UserScript==
-// 0.9: update download/update URLs
-// 0.8: fix typos/formatting
-// 0.7: fix work item tampering
-// 0.6: Add link to Changeset in diff view
+// 0.10: #Bugnumber to links, highlight comments for customors in checkins
+// 0.09: update download/update URLs
+// 0.08: fix typos/formatting
+// 0.07: fix work item tampering
+// 0.06: Add link to Changeset in diff view
+/* jshint esversion:6 */
(function() {
'use strict';
- let timerId = undefined;
+ let timerId;
let fixWorkitems = () => {
let found = document.getElementsByClassName("comment-content");
let el = items[i];
let html = el.innerHTML;
if (html.startsWith("Associated")) {
- html = html.replace(/(Associated with changeset )(\d*):/, "<b>$1<a href='/HeBa/Entwicklung/_versionControl/changeset/$2'>$2</a></b>:<br />");
- el.innerHTML = html.replace(/\n/gi, "<br />");
+ html = html.replace(/(Associated with changeset )(\d*):/,
+ "<b>$1<a href='/HeBa/Entwicklung/_versionControl/changeset/$2'>$2</a></b>:<br />");
+ html = html.replace(/#(\d+)/g, "<a href='/HeBa/Entwicklung/_versionControl/changeset/$1'>#$1</a>");
+ html = html.replace(/\n/gi, "<br />");
+ html = html.replace(/(@@CUST.*)/s, "<br><span style=\"color: green; font-style:italic;\">$1</span>");
+ el.innerHTML = html;
}
}
};
return;
}
- elToFix.innerHTML = elToFix.innerHTML.replace(/(Changeset )(\d+)/, "$1<a href='/HeBa/Entwicklung/_versionControl/changeset/$2'>$2</a>");
- }
+ elToFix.innerHTML = elToFix.innerHTML
+ .replace(/(Changeset )(\d+)/,
+ "$1<a href='/HeBa/Entwicklung/_versionControl/changeset/$2'>$2</a>");
+ };
let fixit = () => {
if (timerId) {
}
else {
// if (url.includes("/_workitems")){
- // does not work since workitems are often shown in
+ // does not work since workitems are often shown in
// dialogs on random pages
fixWorkitems();
}
fixit();
})();
+