diff options
author | Matěj Cepl <mcepl@redhat.com> | 2011-05-07 00:53:06 +0200 |
---|---|---|
committer | Matěj Cepl <mcepl@redhat.com> | 2011-06-05 14:53:46 +0200 |
commit | 8e501abd49e5aeac70a84ceef96a72b5078df221 (patch) | |
tree | 2cb8df170588aaee5872b752d11d6a6c39a766cc /data/lib/bzpage.js | |
parent | 59d6e1bf4e439febbc40c15486303e12febb7e42 (diff) | |
download | bugzilla-triage-8e501abd49e5aeac70a84ceef96a72b5078df221.tar.gz |
Another massive cleanup and simplification of tweak scripts.
bugs on bugzilla.mozilla.org now work as well, although the history is
still not shown inline, which remains for 1.1.
Fixes #88
Diffstat (limited to 'data/lib/bzpage.js')
-rw-r--r-- | data/lib/bzpage.js | 53 |
1 files changed, 12 insertions, 41 deletions
diff --git a/data/lib/bzpage.js b/data/lib/bzpage.js index e34f38d..35f993c 100644 --- a/data/lib/bzpage.js +++ b/data/lib/bzpage.js @@ -36,6 +36,7 @@ self.on('message', function onMessage(msg) { equivalentComponents = ("equivalentComponents" in constantData) ? constantData.equivalentComponents : null; generateButtons(msg.data.instPkgs, msg.data.kNodes); + completeInit(); break; case "Error": alert("Error " + msg.data); @@ -310,16 +311,6 @@ function generateButtons (pkgs, kNodes) { } } } - // TODO This is weird in this place, but that's the place where all - // constantData etc. - // are finally defined and available. - if (RHBZinit) { - RHBZinit(); - } - - if (tweakBugzilla) { - tweakBugzilla(document, constantData); - } } function setConfigurationButton () { @@ -360,45 +351,25 @@ function getOptionTableCell(tableId, label) { return null; } + /** - * Parse the row with the attachment - * - * @param DOM - * element to be parsed - * @return array with string name of the attachment, integer its id number, - * string of MIME type, integer of size in kilobytes, and the whole - * element itself + * Complete startup, mainly run alternate inits for non-standard BZ + * with proper arguments * - * TODO error handling is missing ... it's bleee */ -function parseAttachmentLine(inElem) { - var MIMEtype = ""; - var size = 0; +function completeInit() { + var attachments = getAttachments(); - // Skip over obsolete attachments - if (inElem.getElementsByClassName("bz_obsolete").length > 0) { - return ([]); + if (RHBZinit) { + RHBZinit(attachments); } - // getting name of the attachment - var attName = inElem.getElementsByTagName("b")[0].textContent.trim(); - - // TODO probably could use url.URL object - var aHrefsArr = inElem.getElementsByTagName("a"); - var aHref = Array.filter(aHrefsArr, function(x) { - return x.textContent.trim() === "Details"; - })[0]; - var id = parseURL(aHref.getAttribute("href")).params.id; - - // getting MIME type and size - var stringArray = inElem.getElementsByClassName("bz_attach_extra_info")[0].textContent. - replace(/[\n ()]+/g, " ").trim().split(", "); - size = parseInt(stringArray[0], 10); - MIMEtype = stringArray[1].split(" ")[0]; - - return [ attName, id, MIMEtype, size, inElem ]; + if (tweakBugzilla) { + tweakBugzilla(attachments, constantData); + } } + function startup() { // First, preflight check ... if we are not logged in, there // is nothing we can do. |