Besprizornik, обратите внимание на const, стрелочные функции и spread-оператор, они не поддерживаются старыми браузерами.
var x=(()=>{
const currentTime=new Date().getTime();
const ranges={
10:[[1582,9,15],[1700,02,11]],
11:[[1700,02,12],[1800,02,12]]
};
return Object.keys(ranges).filter(day=>{
const range=ranges[day].map(
args=>new Date(...args).getTime()
);
return (
currentTime>=range[0] && currentTime<=range[1]
);
}).shift()||0;
})();
var d = new Date();
document.addEventListener('DOMContentLoaded', function() {
document.querySelector('#day_gr').options[d.getDay()||7].selected = true;
document.querySelector('#date_gr').options[d.getDate()].selected = true;
document.querySelector('#month_gr').options[d.getMonth()+1].selected = true;
document.querySelector('#year_gr').value = d.getFullYear();
document.querySelector('#day_ul').options[d.getDay()||7].selected = true;
d = new Date(new Date()-x*24*60*60*1000);
document.querySelector('#date_ul').options[d.getDate()].selected = true;
document.querySelector('#month_ul').options[d.getMonth()+1].selected = true;
document.querySelector('#year_ul').value = d.getFullYear();
});