Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // -----------------------
- (function(){
- var period = 10, // в секундах
- fDP = [],
- $dp = $("#evas_visitbundle_visit_visitDatetime");
- /**
- * Делает даты в календаре зелеными.
- *
- * http://api.jqueryui.com/datepicker/#option-beforeShowDay
- * @param date
- * @returns {*[]}
- */
- function ownBeforeShowDay(date) {
- var caldt = date.getFullYear() + '-' + ('0' + (date.getMonth() + 1)).slice(-2) + '-' + ('0' + date.getDate()).slice(-2);
- for (var i = 0; i < fDP.length; i++) {
- if (fDP[i] == caldt) {
- return [true, 'free-day', 'Laisva/Free'];
- }
- }
- return [false, ''];
- }
- /**
- * Заменяем на свою реализацию стандартный datepicker.
- */
- $dp.datepicker("option", "beforeShowDay", ownBeforeShowDay);
- update(); // запускаем скрипт
- /**
- * Отправляет запросы на сервер кажед
- */
- function update() {
- $.ajaxSetup({async: false}); // отключаем асинхронные запросы
- $.getJSON("https://evas2.urm.lt/calendar/json?_d=&_aby=3&_cry=6&_c=1&_t=")
- .done(function (data) {
- fDP = []; // обнуляем данные
- $.each(data, function (index, value) {
- fDP.push(value);
- });
- if (fDP.length > 0 && fDP[0] != "") { // проверяем есть ли зеленые даты
- alert("Есть открытые даты!");
- $dp.change(); // чтобы появилось время в календаре
- } else {
- setTimeout(update, period * 1000); // нету зеленых дат, ждем period и отправляем новый запрос.
- }
- })
- .fail(function() {
- if (prompt("Нужно сменить IP. Продолжить выполнение скрипта(Y/N)?", "Y") == "Y") {
- update();
- }
- });
- }
- })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement