﻿var display_calendar_return = true;

var calendarD;
var calendarR;

var pulsing_objects = new Array();
var pulsing_opacity = 100;
var pulsing_direction = 1;
var pulsing_timer = null;

function postStep3() {
    
    var form = document.createElement("form");
    
    form.setAttribute("action", document.getElementById("formAction").value);
    form.setAttribute("method", "post");
    form.innerHTML = document.getElementById("formValue").innerHTML;
    
    document.body.appendChild(form);
    form.submit();            
}

function pulse_item(id, enable) {

    if (enable) {
        pulsing_objects.push(id);
        pulse_start();
    } else {
        var was_pulsing = (pulsing_timer != null);            
        var new_array = new Array();
        
        pulse_stop();
        
        for (var i = 0; i < pulsing_objects.length; i++) {
            if (pulsing_objects[i] != id) {
                new_array.push(pulsing_objects[i]);
            }
        }
        pulsing_objects = new_array;
        
        if (was_pulsing && (pulsing_objects.length > 0)) {
            pulse_start();
        }
    }
}

function perform_pulse() {

    for (var i = 0; i < pulsing_objects.length; i++) {
        var obj = document.getElementById(pulsing_objects[i]);
        if (obj != null) {
            obj.style.opacity = pulsing_opacity / 100;
            obj.style.filter = 'alpha(opacity=' + pulsing_opacity + ')';                    
        }
    }            
    if (pulsing_opacity < 50) {
        pulsing_direction = 1;
        pulse_stop();
        window.setTimeout("pulse_start()", 250);
    } else if (pulsing_opacity >= 100) {
        pulsing_direction = -1;
        pulse_stop();
        window.setTimeout("pulse_start()", 500);
    }            
    pulsing_opacity = pulsing_opacity + (pulsing_direction * 5);  
}
function pulse_start() {
    if (pulsing_timer == null) {
        pulsing_timer = window.setInterval("perform_pulse()", 100);
    }
}
function pulse_stop() {
    window.clearInterval(pulsing_timer);
    pulsing_timer = null;
}

function updateCalendarReturnState() {
    document.getElementById("rowReturnDate").style.display =  display_calendar_return ? "" : "none";
}
function drawCalendars() {   
    var holderD = document.getElementById("calendarHolderD");
    var holderR = document.getElementById("calendarHolderR");
             
    holderD.appendChild(calendarD, holderD.firstChild);
    holderR.appendChild(calendarR, holderR.firstChild);
    
    setSelectValues("month0", "day0", document.getElementById("d_month").value, document.getElementById("d_day").value);
    setSelectValues("month1", "day1", document.getElementById("r_month").value, document.getElementById("r_day").value);
               
    calendarD.style.display = "";
    calendarR.style.display = "";  
    
    updateCalendarReturnState();        
}

function PageLoadingHandler(sender, args) {
    calendarD.parentNode.removeChild(calendarD);
    calendarR.parentNode.removeChild(calendarR);
}
function PageLoaded(sender, args) {
    drawCalendars();
    pulseSearch(false);
    
    if (document.getElementById("formValue") != null) {
        override_hide_wait = true;
        window.setTimeout("postStep3()", 100);
    }
}
function hide(id, hide) {
	document.getElementById(id).style.display = hide ? "none" : "";
}       
function pulseSearch(enabled) {
    pulse_item(document.getElementById("searchClientID").value, enabled);   
    if (enabled) {
		hide("results", true);
    }
}
function onDateChanged(var1,var2,var3,var4) {
	pulseSearch(true);
}
function initPage() {

	var list = new Array("month0", "day0", "month1", "day1");

	for (var i = 0; i < list.length; i++) {
		var o = document.getElementById(list[i]);
		if (o) {
			$addHandler(o, "change", function() { pulseSearch(true); });
		}
	}

    calendarD = document.getElementById("calendarMainD");
    calendarR = document.getElementById("calendarMainR");

    Sys.WebForms.PageRequestManager.getInstance().add_pageLoading(PageLoadingHandler);
    Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(PageLoaded);
}