forked from electricdusk/rushlink
Do not show button if clipboard not available
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
"use strict";
|
||||
|
||||
const COPY_TO_CLIPBOARD_CONTAINER_ID = "copyToClipboardContainer";
|
||||
const COPY_TO_CLIPBOARD_STATUS_ID = "copyToClipboardStatus";
|
||||
let copyToClipboardCtr = 0;
|
||||
|
||||
@@ -13,7 +14,9 @@ function copyToClipboardSuccess() {
|
||||
function copyToClipboardFail(cause) {
|
||||
let statusElem = document.getElementById(COPY_TO_CLIPBOARD_STATUS_ID);
|
||||
if (!cause) cause = "unknown error";
|
||||
statusElem.innerText = "copy failed: " + cause;
|
||||
let msg = "copy failed: " + cause;
|
||||
console.log(msg);
|
||||
statusElem.innerText = msg;
|
||||
statusElem.classList.remove("success");
|
||||
statusElem.classList.add("fail");
|
||||
}
|
||||
@@ -22,11 +25,7 @@ function copyToClipboard(url) {
|
||||
let copyEventIdx = ++copyToClipboardCtr;
|
||||
|
||||
if (!window.navigator.clipboard) {
|
||||
let msg = "could not access clipboard";
|
||||
if (window.location.protocol !== "https:") {
|
||||
msg += ": website not using HTTPS"
|
||||
}
|
||||
copyToClipboardFail(msg);
|
||||
copyToClipboardFail("could not access clipboard");
|
||||
return;
|
||||
}
|
||||
window.navigator.clipboard.writeText(url).then(() => {
|
||||
@@ -37,3 +36,16 @@ function copyToClipboard(url) {
|
||||
copyToClipboardFail();
|
||||
});
|
||||
}
|
||||
|
||||
(function () {
|
||||
if (!window.navigator.clipboard) {
|
||||
let msg = "cannot access clipboard";
|
||||
if (window.location.protocol !== "https:") {
|
||||
msg += ": website not using https"
|
||||
}
|
||||
console.error(msg);
|
||||
} else {
|
||||
let container = document.getElementById(COPY_TO_CLIPBOARD_CONTAINER_ID);
|
||||
container.classList.remove("hidden");
|
||||
}
|
||||
})();
|
||||
|
||||
Reference in New Issue
Block a user