AutoFill the 'code1' field on litres.ru if not already filled
当前为
// ==UserScript==
// @name Litres.ru Code1 AutoFill
// @name:ru Litres.ru Автоприменение промокодов
// @namespace http://tampermonkey.net/
// @version 0.2
// @description AutoFill the 'code1' field on litres.ru if not already filled
// @description:ru Автозаполнение поля 'code1' на сайте litres.ru, если оно еще не заполнено
// @author You
// @match https://www.litres.ru/*
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
// Function to get URL parameter by name
function getParameterByName(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, "\\$&");
var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, " "));
}
// Check if the 'code1' field is not filled
var code1Field = document.getElementsByName('promocode')[0];
if (code1Field && !code1Field.value.trim()) {
// Get the 'code1' parameter from the URL
var code1Param = getParameterByName('code1');
// If 'code1' parameter exists, fill the field and submit the form
if (code1Param) {
code1Field.value = code1Param;
// Find the submit button and trigger the form submission
var form = code1Field.closest('form'); // Find the closest form element
if (form) {
var submitButton = form.querySelector('button[type="submit"]');
if (submitButton) {
submitButton.click(); // Click the submit button
} else {
form.submit(); // Fallback to submitting the form directly
}
}
}
}
})();