-
Notifications
You must be signed in to change notification settings - Fork 3
/
background.js
59 lines (51 loc) · 1.37 KB
/
background.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
function backgroundListener(displayUrl, title, desc, account, component, bug, due, ycdesk) {
chrome.tabs.captureVisibleTab(function(screenshotUrl) {
var contentType = 'image/jpeg';
var b64 = screenshotUrl.substring(screenshotUrl.indexOf(",") + 1) //removes data:image/jpeg;base64 from beginning of string
var blob = b64toBlob(b64, contentType)
var projID = 11300 //CONSULTING ID
var issueID = 10401 //Software Dev type
//Defaults provided no information
//Component default is Quick Resposne (15527), account default is Yext (85)
desc += "*Example* : " + displayUrl
if(bug == true)
{
issueID = 1 //Bug issue type
}
json = JSON.stringify(createJSON(projID, issueID, title, desc, account, component, due));
createIssue(json, blob, ycdesk);
});
}
//Creates JSON needed to create an issue
function createJSON(proj, issue, title, desc, account, component, due){
json =
{
"fields": {
"project": {
"id": proj,
},
"issuetype": {
"id": issue,
},
"summary": title,
"description": desc,
"customfield_11000": account,
"components": [
{
"id": component
}
],
}
} ;
if (due != "")
{
json["fields"].duedate = due;
}
if (issue == "1")
{
json["transition"] = {
"id": 51 //TO DO status ID
}
}
return json;
}