This repository was archived by the owner on Nov 11, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcontent_script.js
More file actions
78 lines (66 loc) · 2.76 KB
/
Copy pathcontent_script.js
File metadata and controls
78 lines (66 loc) · 2.76 KB
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
function addButton() {
const sidebar = document.querySelector(".window-sidebar")
const button = document.createElement('span');
button.classList.add('button-link');
button.addEventListener('click', onClick);
sidebar.prepend(button);
const buttonIcon = document.createElement('span');
buttonIcon.classList.add('icon-sm', 'plugin-icon');
buttonIcon.innerText = '+';
button.append(buttonIcon);
const buttonText = document.createElement('span');
buttonText.innerText = 'Toggl Task';
button.append(buttonText);
sidebar.querySelector(".mod-no-top-margin").classList.remove("mod-no-top-margin")
sidebar.querySelector(".js-sidebar-add-heading").classList.remove("mod-no-top-margin")
}
const mappings = {
"GG": "gg",
"Audience Builder": "ab",
"Audience Explorer": "ae",
"Cta Calls": "xcta",
"Camper": "camper",
};
function onClick() {
let apiKey = "afadffe77f745496f80ebb4bf460c615"
//generate token at https://trello.com/1/authorize?expiration=never&scope=read,write,account&response_type=token&name=Server%20Token&key=afadffe77f745496f80ebb4bf460c615
let token = "***"
console.log("Hallo")
const longId = window.location.pathname.split("/")[2];
var url = `https://api.trello.com/1/cards/${longId}?key=${apiKey}&token=${token}`
fetch(url).then(response => response.json()).then(response => {
shortId = response["idShort"]
if (!response["name"].endsWith(shortId)) {
for (var i in response["labels"]) {
if (labelShort == undefined) {
var labelShort = mappings[response["labels"][i]["name"]]
} else if (mappings[response["labels"][i]["name"]] != undefined) {
alert(`Diese Karte hat sowohl "${labelShort}" als auch "${mappings[response["labels"][i]["name"]]}".`)
}
}
if (labelShort != undefined) {
const url = new URL(`https://api.trello.com/1/cards/${longId}`)
console.log(url)
const data = {
"name": `${response["name"]} #${labelShort}_${shortId}`
};
const jsonBody = JSON.stringify(data);
fetch(url.toString(), {
method: 'PUT',
headers: {
'Authorization': `OAuth oauth_consumer_key="${apiKey}", oauth_token="${token}"`,
'Content-Type': 'application/json'
},
body: jsonBody
}).then(response => {
console.log(response)
})
}
}
})
}
window.addEventListener("pushstate", function () {
if (window.location.pathname.startsWith("/c/")) {
addButton()
}
})