Jetbrains-Help/src/main/resources/static/js/index.js
2024-11-21 11:54:48 +08:00

97 lines
3.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

$(document).ready(function() {
// Set default headers for AJAX requests
$.ajaxSetup({
headers: {
'Content-Type': 'application/json'
}
});
// Function to handle submission of license information
window.submitLicenseInfo = function () {
let licenseInfo = {
licenseeName: $('#licenseeName').val(),
assigneeName: $('#assigneeName').val(),
expiryDate: $('#expiryDate').val()
};
localStorage.setItem('licenseInfo', JSON.stringify(licenseInfo));
$('#mask, #form').hide();
};
// Function to handle search input
$('#search').on('input', function(e) {
$("#product-list").load('/search?search=' + e.target.value);
});
// Function to show license form
window.showLicenseForm = function () {
let licenseInfo = JSON.parse(localStorage.getItem('licenseInfo'));
$('#licenseeName').val(licenseInfo?.licenseeName || '光云');
$('#assigneeName').val(licenseInfo?.assigneeName || '藏柏');
$('#expiryDate').val(licenseInfo?.expiryDate || '2111-11-11');
$('#mask, #form').show();
};
// Function to show VM options
window.showVmoptins = function () {
var text = "-javaagent:/(Your Path)/ja-netfilter/ja-netfilter.jar\n" +
"--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED\n" +
"--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED";
copyText(text)
.then((result) => {
alert(result);
});
};
// Function to copy license
window.copyLicense = async function (e) {
while (localStorage.getItem('licenseInfo') === null) {
$('#mask, #form').show();
await new Promise(r => setTimeout(r, 1000));
}
let licenseInfo = JSON.parse(localStorage.getItem('licenseInfo'));
let productCode = $(e).closest('.card').data('productCodes');
let data = {
"licenseName": licenseInfo.licenseeName,
"assigneeName": licenseInfo.assigneeName,
"expiryDate": licenseInfo.expiryDate,
"productCode": productCode,
};
$.post('/generateLicense', JSON.stringify(data))
.then(response => {
copyText(response)
.then(() => {
alert("已复制成功");
})
.catch(() => {
alert("系统不支持复制功能,或者当前非SSL访问,若为Local环境,请使用127.0.0.1或者localhost访问.");
});
});
};
// Function to copy text to clipboard
const copyText = async (val) => {
if (navigator.clipboard && navigator.permissions) {
return navigator.clipboard.writeText(val);
} else {
console.log(val);
const scrollX = window.scrollX;
const textArea = document.createElement('textarea')
textArea.value = val
// 使text area不在viewport同时设置不可见
document.body.appendChild(textArea)
textArea.focus()
textArea.select()
try {
const result = document.execCommand('copy');
return result ? Promise.resolve() : Promise.reject();
} catch (e) {
return Promise.reject(e);
} finally {
textArea.remove();
window.scrollTo(scrollX, 0);
}
}
};
});