This commit is contained in:
Tijl 2022-12-15 21:01:26 +01:00
parent a789b77b5f
commit a48e1f9b40
6 changed files with 95 additions and 0 deletions

0
assets/logo.png Normal file
View File

0
background.js Normal file
View File

15
manifest.json Normal file
View File

@ -0,0 +1,15 @@
{
"name": "redirect",
"version": "0.1.0",
"description": "create a redirect directly",
"permissions": ["storage", "tabs"],
"background": {
"service_worker": "background.js"
},
"action": {
"default_icon": "assets/icon.png",
"default_title": "redirect",
"default_popup": "popup.html"
},
"manifest_version": 3
}

48
popup-func.js Normal file
View File

@ -0,0 +1,48 @@
const searchButton = document.getElementById('searchButton');
if (searchButton) {
searchButton.addEventListener('click', () => {
searchRedirect('test');
})
}
const newButton = document.getElementById('newButton');
if (newButton) {
newButton.addEventListener('click', () => {
newRedirect('test');
})
}
function searchRedirect(host) {
const request = new XMLHttpRequest();
const url = 'https://url.example.com/rest/v3/short-urls';
request.open('GET', url);
request.setRequestHeader('X-Api-Key', 'apikeyhere');
request.send();
request.onload = (e) => {
var shortUrls = request.response
chrome.tabs.query({active: true, lastFocusedWindow: true}, tabs => {
let url = tabs[0].url;
alert(shortUrls)
});
}
}
function newRedirect(host) {
chrome.tabs.query({active: true, lastFocusedWindow: true}, tabs => {
let currentUrl = tabs[0].url;
const url = 'https://url.example.com/rest/v3/short-urls';
let sendData = {
"longUrl": currentUrl,
"tags": ["Added by BOTv1"]
};
const request = new XMLHttpRequest();
request.open('POST', url);
request.setRequestHeader('accept', 'application/json');
request.setRequestHeader('X-Api-Key', 'apikeyhere');
request.setRequestHeader('Content-type', 'application/json');
request.send(JSON.stringify(sendData));
request.onload = (e) => {
var responseData = request.response;
document.getElementById("p1link").innerHTML = responseData;
}
});
}

22
popup.css Normal file
View File

@ -0,0 +1,22 @@
.container {
width: 360px;
color: #314d3e;
}
.title {
font-size: 16px;
font-weight: bold;
padding: 10px;
}
.textbox {
width: 100%;
font-size: 10px;
margin: 0;
padding: 0px 2px;
}
.textbox:focus {
outline: 0;
border-color: #66afe9;
}

10
popup.html Normal file
View File

@ -0,0 +1,10 @@
<link href="popup.css" rel="stylesheet" type="text/css" />
<script type="module" src="popup-func.js"></script>
<div class="container">
<div>
<div class="title">redirect</div>
<button id="newButton">New</button><button id="searchButton">Search</button>
<p id="p1link">[click new to generate a link]</p>
</div>
</div>