mirror of
https://github.com/sagidayan/greasemonkey-scripts.git
synced 2024-11-21 09:05:24 +00:00
Updated RH_jira_bz_linker
- Isolated function - updated namespace
This commit is contained in:
parent
87261d33a0
commit
eeb290586b
1 changed files with 57 additions and 55 deletions
|
@ -1,30 +1,31 @@
|
|||
// ==UserScript==
|
||||
// @name RedHat jira BZ Linker
|
||||
// @version 0.0.1
|
||||
// @namespace http://arantius.com/misc/greasemonkey/
|
||||
// @namespace https://git.sagidayan.com/sagi/greasemonkey-scripts
|
||||
// @author Sagi Dayan
|
||||
// @description Adds BZ links in (RedHat) Jira when needed
|
||||
// @match https://issues.redhat.com/*
|
||||
// ==/UserScript==
|
||||
|
||||
// Constants
|
||||
const LOG_TAG = '[BZ-LINKER]';
|
||||
const summaryRegExp = new RegExp(/\[([0-9]+)\]/);
|
||||
(function () {
|
||||
// Constants
|
||||
const LOG_TAG = '[BZ-LINKER]';
|
||||
const summaryRegExp = new RegExp(/\[([0-9]+)\]/);
|
||||
|
||||
// Entry point - observe DOM changes - and search for unlinked jira tickets
|
||||
var observer = new MutationObserver(update);
|
||||
observer.observe(document.body, { childList: true, characterData: true, subtree: true });
|
||||
// Entry point - observe DOM changes - and search for unlinked jira tickets
|
||||
var observer = new MutationObserver(update);
|
||||
observer.observe(document.body, { childList: true, characterData: true, subtree: true });
|
||||
|
||||
// adds a tag prefix to logs for easy filters
|
||||
function log(...args) {
|
||||
// adds a tag prefix to logs for easy filters
|
||||
function log(...args) {
|
||||
const msg = args.reduce((msg, data) => {
|
||||
return `${msg} ${data}`;
|
||||
}, LOG_TAG);
|
||||
console.log(msg);
|
||||
}
|
||||
}
|
||||
|
||||
// When DOM changes - check for new unlinked issues
|
||||
function update() {
|
||||
// When DOM changes - check for new unlinked issues
|
||||
function update() {
|
||||
const issues = filterAndInflate([...document.getElementsByClassName("issuerow")]);
|
||||
if (issues.length) log(`Found #${issues.length} new unlinked issues. Linking...`);
|
||||
issues.forEach(issue => {
|
||||
|
@ -42,9 +43,9 @@ function update() {
|
|||
}
|
||||
issue.touched = true;
|
||||
});
|
||||
}
|
||||
// Returns only rows (TR tags) that are not linked and are BZ bugs
|
||||
function filterAndInflate(rows) {
|
||||
}
|
||||
// Returns only rows (TR tags) that are not linked and are BZ bugs
|
||||
function filterAndInflate(rows) {
|
||||
return rows.filter(r => {
|
||||
if (r.tagName === 'TR' && !r.touched) {
|
||||
const summary = [...r.children].reduce((prev, child) => {
|
||||
|
@ -64,4 +65,5 @@ function filterAndInflate(rows) {
|
|||
}
|
||||
return false;
|
||||
})
|
||||
}
|
||||
}
|
||||
})();
|
||||
|
|
Loading…
Reference in a new issue