есть несколько span'ов
их названия оканчиваются на "_gr", и содержат некие даты по григорианскому календарю,
Catholic_Easter_gr
Maslenitsa_Catholic_gr
palm_Sunday_Catholic_gr
Catholic_Radunitsa_gr
Catholic_Trinity_gr
надо из этих дат высчитать даты по юлианскому календарю и сохранить в span'ы с соответствующими id'ами,
Catholic_Easter_ul
Maslenitsa_Catholic_ul
palm_Sunday_Catholic_ul
Catholic_Radunitsa_ul
Catholic_Trinity_ul
их названия оканчиваются на "_ul",....
другими словами применить функции
function gregorianToJdn(d, m, y) {
return tr((1461 * (y + 4800 + tr((m - 14) / 12))) / 4) +
tr((367 * (m - 2 - 12 * tr((m - 14) / 12))) / 12) -
tr((3 * tr((y + 4900 + tr((m - 14) / 12)) / 100)) / 4) + d - 32075;
}
и
function jdnToJulianOrGregorian(j, to) { // to: true (julian), false (gregorian)
var f = (to) ? (j + 1401) : (j + 1363 + tr((tr((4 * j + 274277) / 146097) * 3) / 4));
var e = 4 * f + 3, h = 5 * tr((e % 1461) / 4) + 2;
var d = tr((h % 153) / 5) + 1, m = ((tr(h / 153) + 2) % 12) + 1, y = tr(e / 1461) - 4716 + tr((14 - m) / 12);
return { d: d, m: m, y: y };
}
есть несколько span'ов
их названия оканчиваются на "_ul", и содержат некие даты по юлианскому календарю,
Orthodox_Easter_ul
Maslenitsa_Orthodox_ul
palm_Sunday_Orthodox_ul
Orthodox_Radunitsa_ul
Orthodox_Trinity_ul
надо из этих дат высчитать даты по григорианскому календарю и сохранить в span'ы с соответствующими id'ами
их названия оканчиваются на "_ul",....
Orthodox_Easter_gr
Maslenitsa_Orthodox_gr
palm_Sunday_Orthodox_gr
Orthodox_Radunitsa_gr
Orthodox_Trinity_gr
другими словами применить функции
function julianToJdn(d, m, y) {
return 367 * y - tr((7 * (y + 5001 + tr((m - 9) / 7))) / 4) + tr((275 * m) / 9) + d + 1729777;
}
и
function jdnToJulianOrGregorian(j, to) { // to: true (julian), false (gregorian)
var f = (to) ? (j + 1401) : (j + 1363 + tr((tr((4 * j + 274277) / 146097) * 3) / 4));
var e = 4 * f + 3, h = 5 * tr((e % 1461) / 4) + 2;
var d = tr((h % 153) / 5) + 1, m = ((tr(h / 153) + 2) % 12) + 1, y = tr(e / 1461) - 4716 + tr((14 - m) / 12);
return { d: d, m: m, y: y };
}
потом надо у всех дат по юлианскому календарю
span'ы с id'ами с окончанием на _ul, и которые были и которые получили, высчитать дни недели,
другими словами применить функции
function julianToJdn(d, m, y) {
return 367 * y - tr((7 * (y + 5001 + tr((m - 9) / 7))) / 4) + tr((275 * m) / 9) + d + 1729777;
}
и
function jdnToWeekDay(j) { return (j % 7) + 1; }
function tr(n) { return n - n % 1; } // truncate (for integer division)
https://en.wikipedia.org/wiki/Julian_day
высчитывать дни недели у григорианских дат не нужно (объект date сам может),
и вставить недостающие даты на страницу,
одним словом доработать скрипт до логического завершения...