mirror of
https://github.com/Ground-Zerro/DomainMapper.git
synced 2025-12-10 01:47:18 +07:00
Update index.html
This commit is contained in:
@@ -28,13 +28,20 @@
|
||||
return false;
|
||||
}
|
||||
|
||||
if ((format.value === 'unix' || format.value === 'win' || format.value === 'keenetic') &&
|
||||
!document.getElementById('gateway').value) {
|
||||
alert("Укажите IP шлюза.");
|
||||
event.preventDefault();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Загрузка сервисов из файла и добавление их в форму
|
||||
function loadServices() {
|
||||
const serviceUrl = 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/refs/heads/main/platformdb';
|
||||
|
||||
|
||||
fetch(serviceUrl)
|
||||
.then(response => response.text())
|
||||
.then(data => {
|
||||
@@ -63,7 +70,7 @@
|
||||
// Загрузка DNS серверов из файла и добавление их в форму
|
||||
function loadDNSServers() {
|
||||
const dnsUrl = 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/refs/heads/main/dnsdb';
|
||||
|
||||
|
||||
fetch(dnsUrl)
|
||||
.then(response => response.text())
|
||||
.then(data => {
|
||||
@@ -89,10 +96,48 @@
|
||||
.catch(error => console.error('Error loading DNS servers:', error));
|
||||
}
|
||||
|
||||
// Функция для отображения/скрытия поля ввода IP шлюза
|
||||
function toggleGatewayField() {
|
||||
const format = document.querySelector('input[name="format"]:checked');
|
||||
const gatewayField = document.getElementById('gatewayField');
|
||||
|
||||
// Показываем поле, если выбран формат Unix Route, Windows Route или Keenetic CLI
|
||||
if (format && (format.value === 'unix' || format.value === 'win' || format.value === 'keenetic')) {
|
||||
gatewayField.style.display = 'block';
|
||||
} else {
|
||||
gatewayField.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
// Функция для отображения/скрытия поля комментария (для Mikrotik и Keenetic)
|
||||
function toggleCommentField() {
|
||||
const format = document.querySelector('input[name="format"]:checked');
|
||||
const commentField = document.getElementById('commentaryField');
|
||||
|
||||
// Показываем поле, если выбран формат Mikrotik firewall или Keenetic CLI
|
||||
if (format && (format.value === 'mikrotik' || format.value === 'keenetic')) {
|
||||
commentField.style.display = 'block';
|
||||
} else {
|
||||
commentField.style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
loadServices();
|
||||
loadDNSServers();
|
||||
|
||||
// Инициализировать отображение полей для шлюза и комментария при загрузке
|
||||
toggleGatewayField();
|
||||
toggleCommentField();
|
||||
};
|
||||
|
||||
// Добавляем слушатель событий для изменения выбора формата
|
||||
document.addEventListener('change', function(event) {
|
||||
if (event.target.name === 'format') {
|
||||
toggleGatewayField();
|
||||
toggleCommentField();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
@@ -114,9 +159,26 @@
|
||||
<input type="radio" name="aggregation" value="none" checked> Не агрегировать<br><br>
|
||||
|
||||
<label><strong>Формат сохранения:</strong></label><br>
|
||||
<input type="radio" name="format" value="win"> Windows Route<br>
|
||||
<input type="radio" name="format" value="unix"> Unix Route<br>
|
||||
<input type="radio" name="format" value="cidr" checked> CIDR<br><br>
|
||||
<input type="radio" name="format" value="ip"> IP (только IP адреса)<br>
|
||||
<input type="radio" name="format" value="cidr"> CIDR (%IP%/32)<br>
|
||||
<input type="radio" name="format" value="win"> Windows Route (route add %IP% mask 255.255.255.255 %gateway%)<br>
|
||||
<input type="radio" name="format" value="unix"> Unix Route (ip route %IP%/32 %gateway%)<br>
|
||||
<input type="radio" name="format" value="wg"> Wireguard/AmneziaWG (%IP%/32, %IP%/32, и т.д...)<br>
|
||||
<input type="radio" name="format" value="openvpn"> Open VPN (push "route %IP% 255.255.255.255")<br>
|
||||
<input type="radio" name="format" value="keenetic"> Keenetic CLI (ip route %IP%/32 %gateway% auto !%commentary%)<br>
|
||||
<input type="radio" name="format" value="mikrotik"> Mikrotik firewall (/ip/firewall/address-list add list=%commentary% comment=%SERVICE_NAME% address=%IP%/32)<br><br>
|
||||
|
||||
<!-- Поле для ввода шлюза -->
|
||||
<div id="gatewayField" style="display:none;">
|
||||
<label><strong>Укажите IP шлюза или имя интерфейса:</strong></label><br>
|
||||
<input type="text" id="gateway" name="gateway" placeholder="IP или имя шлюза"><br><br>
|
||||
</div>
|
||||
|
||||
<!-- Поле для ввода комментария -->
|
||||
<div id="commentaryField" style="display:none;">
|
||||
<label><strong>Укажите комментарий для списка:</strong></label><br>
|
||||
<input type="text" id="commentary" name="commentary" placeholder="Комментарий"><br><br>
|
||||
</div>
|
||||
|
||||
<button type="submit">Запустить</button>
|
||||
</form>
|
||||
|
||||
Reference in New Issue
Block a user