kopia lustrzana https://github.com/dgtlmoon/changedetection.io
64 wiersze
1.9 KiB
JavaScript
64 wiersze
1.9 KiB
JavaScript
function redirectToVersion(version) {
|
|
var currentUrl = window.location.href.split('?')[0]; // Base URL without query parameters
|
|
var anchor = '';
|
|
|
|
// Check if there is an anchor
|
|
if (currentUrl.indexOf('#') !== -1) {
|
|
anchor = currentUrl.substring(currentUrl.indexOf('#'));
|
|
currentUrl = currentUrl.substring(0, currentUrl.indexOf('#'));
|
|
}
|
|
|
|
window.location.href = currentUrl + '?version=' + version + anchor;
|
|
}
|
|
|
|
function setupDateWidget() {
|
|
$(document).on('keydown', function (event) {
|
|
var $selectElement = $('#preview-version');
|
|
var $selectedOption = $selectElement.find('option:selected');
|
|
|
|
if ($selectedOption.length) {
|
|
if (event.key === 'ArrowLeft' && $selectedOption.prev().length) {
|
|
redirectToVersion($selectedOption.prev().val());
|
|
} else if (event.key === 'ArrowRight' && $selectedOption.next().length) {
|
|
redirectToVersion($selectedOption.next().val());
|
|
}
|
|
}
|
|
});
|
|
|
|
$('#preview-version').on('change', function () {
|
|
redirectToVersion($(this).val());
|
|
});
|
|
|
|
var $selectedOption = $('#preview-version option:selected');
|
|
|
|
if ($selectedOption.length) {
|
|
var $prevOption = $selectedOption.prev();
|
|
var $nextOption = $selectedOption.next();
|
|
|
|
if ($prevOption.length) {
|
|
$('#btn-previous').attr('href', '?version=' + $prevOption.val());
|
|
} else {
|
|
$('#btn-previous').remove();
|
|
}
|
|
|
|
if ($nextOption.length) {
|
|
$('#btn-next').attr('href', '?version=' + $nextOption.val());
|
|
} else {
|
|
$('#btn-next').remove();
|
|
}
|
|
}
|
|
}
|
|
|
|
$(document).ready(function () {
|
|
if ($('#preview-version').length) {
|
|
setupDateWidget();
|
|
}
|
|
|
|
$('#diff-col > pre').highlightLines([
|
|
{
|
|
'color': '#ee0000',
|
|
'lines': triggered_line_numbers
|
|
}
|
|
]);
|
|
});
|