var error_box_name = 'error_box';
var info_box_name = 'info_box';

function disable_password(pass) {
    var pass_chcx = document.getElementById(pass+'_check');
    var pass_el = document.getElementById(pass);
    var pass_conf_el = document.getElementById(pass+'_confirm');
    
    if (pass_chcx && pass_el && pass_conf_el) {
        if (pass_chcx.checked && pass_el.disabled) {
            pass_el.disabled = false;
            pass_conf_el.disabled = false;
            pass_el.style.backgroundColor = '#FFFFFF';
            pass_conf_el.style.backgroundColor = '#FFFFFF';
        }
        else {
            pass_el.disabled = true;
            pass_conf_el.disabled = true;
            pass_el.style.backgroundColor = '#D0D0D0';
            pass_conf_el.style.backgroundColor = '#D0D0D0';
        }
    }
}

function class_name(obj) {
    if (obj.nodeType != 1)
        return false;
    if (IE)
        return obj.getAttribute('className');
    else
        return obj.getAttribute('class');
}

function set_class(obj,name) {
    if (obj.nodeType != 1)
        return false;
    if (IE)
        obj.setAttribute('className',name);
    else
        obj.setAttribute('class',name);
}


function ShowError(text) {
    var el = document.getElementById(error_box_name);
    if (!el) {
        alert('neexistuje chybovy box pro jacvascript - '+error_box_name);
        return 0;
    }
    
    while (el.childNodes.length > 0) {
        el.removeChild(el.childNodes[0]);
    }
    el.appendChild(document.createTextNode(text));  
}

function InfoMessage(text) {
    var el = document.getElementById(info_box_name);
    if (!el) {
        alert('neexistuje info box pro javascript - '+info_box_name);
        return 0;
    }
    
    while (el.childNodes.length > 0) {
        el.removeChild(el.childNodes[0]);
    }
    el.appendChild(document.createTextNode(text));  
}

function InfoMessageAdd(text) {
    var el = document.getElementById(info_box_name);
    if (!el) {
        alert('neexistuje info box pro javascript - '+info_box_name);
        return 0;
    }
    
    var br = document.createElement('br')
    el.appendChild(br);
    el.appendChild(document.createTextNode(text));  
}

function ShowMessage(text,op,tt) {
    var top_px = 0;
    var title_text = 'Operácia dokončena.';
    if (tt)
        title_text = tt;
    if (IE)
        top_px  = document.body.scrollTop;
    else
        top_px  = window.pageYOffset;
    var el = document.getElementById('message');
    if (!el) {
        return 0;
    }
    
    while (el.childNodes.length > 0)
        el.removeChild(el.childNodes[0]);
    el.style.display = 'block';
    
    if (top_px > 0) {
        if (IE)
            el.style.top = (1*top_px + (300))+'px';
        else
            el.style.top = (1*top_px + (window.outerHeight/2))+'px';
    }
    
    if (op)
        ok_fx = function() { op(); document.getElementById('message').style.display='none'; }
    else
        ok_fx = function() { document.getElementById('message').style.display='none'; }
    
    var el_message_cont = document.createElement("div");
    set_class(el_message_cont,"message-container");
    el.appendChild(el_message_cont);
    var el_message_top = document.createElement("div");
    el_message_top.onmousedown = function(event) { move(event, 'message'); };
    set_class(el_message_top,"message-top");
    el_message_cont.appendChild(el_message_top);
    el_message_top.appendChild(document.createTextNode(title_text));
    var el_message_text = document.createElement("div");
    set_class(el_message_text,"message-text");
    el_message_cont.appendChild(el_message_text);
    el_message_text.appendChild(document.createTextNode(text));
    
    var el_message_foot = document.createElement("div");
    set_class(el_message_foot,"message-foot");
    el_message_cont.appendChild(el_message_foot);
    var el_ok = document.createElement("input");
    set_class(el_ok,"btn");
    el_ok.type = 'button';
    el_ok.href = 'javascript:void(0);';
    el_ok.value = "   Ok   ";
    el_ok.onclick = ok_fx;
    el_message_foot.appendChild(el_ok);
    
    
    /*el.innerHTML = '<div class="message-container">'+
                   '<div class="message-top" onmousedown="move(event, \'message\');">'+
                   'Operácia dokončena.</div>'+
                   '<div class="message-text">'+text+'</div><div class="message-foot">'+
		           '<input type="button" class="btn" href="javascript:void(0);" onclick="document.getElementById(\'message\').style.display=\'none\';" value="&nbsp;&nbsp;&nbsp;OK&nbsp;&nbsp;&nbsp;" />'+
	               '</div></div>';*/  
}

function ShowAskMessage(text,op_yes,op_no) {
    var top_px = 0;
    if (IE)
        top_px  = document.body.scrollTop;
    else
        top_px  = window.pageYOffset;
    var el = document.getElementById('ask-message');
    if (!el) {
        return 0;
    }
    
    while (el.childNodes.length > 0)
        el.removeChild(el.childNodes[0]);
    el.style.display = 'block';
    if (top_px > 0) {
        if (IE)
            el.style.top = (1*top_px + (300))+'px';
        else
            el.style.top = (1*top_px + (window.outerHeight/2))+'px';
    }
    //alert(window.outerHeight);
    if (op_yes)
        yes_fx = function() { op_yes(); document.getElementById('ask-message').style.display='none'; }
    else
        yes_fx = function() { document.getElementById('ask-message').style.display='none'; }
    if (op_no)
        no_fx = function() { op_no(); document.getElementById('ask-message').style.display='none'; }
    else
        no_fx = function() { document.getElementById('ask-message').style.display='none'; }
    
    var el_message_cont = document.createElement("div");
    set_class(el_message_cont,"message-container");
    el.appendChild(el_message_cont);
    var el_message_top = document.createElement("div");
    el_message_top.onmousedown = function(event) { move(event, 'ask-message'); };
    set_class(el_message_top,"message-top");
    el_message_cont.appendChild(el_message_top);
    el_message_top.appendChild(document.createTextNode('Operácia'));
    var el_message_text = document.createElement("div");
    set_class(el_message_text,"message-text");
    el_message_cont.appendChild(el_message_text);
    el_message_text.appendChild(document.createTextNode(text));
    
    var el_message_foot = document.createElement("div");
    set_class(el_message_foot,"message-foot");
    el_message_cont.appendChild(el_message_foot);
    var el_yes = document.createElement("input");
    set_class(el_yes,"btn");
    el_yes.type = 'button';
    el_yes.href = 'javascript:void(0);';
    el_yes.value = "   Áno   ";
    el_yes.onclick = yes_fx;
    el_message_foot.appendChild(el_yes);
    el_message_foot.appendChild(document.createTextNode(' '));
    var el_no = document.createElement("input");
    set_class(el_no,"btn");
    el_no.type = 'button';
    el_no.href = 'javascript:void(0);';
    el_no.value = "   Nie   ";
    el_no.onclick =  no_fx;
    el_message_foot.appendChild(el_no);  
}

function ShowBigAskMessage(text,op_yes,op_no) {
    var top_px = 0;
    if (IE)
        top_px  = document.body.scrollTop;
    else
        top_px  = window.pageYOffset;
    var el = document.getElementById('ask-message');
    if (!el) {
        return 0;
    }
    
    while (el.childNodes.length > 0)
        el.removeChild(el.childNodes[0]);
    el.style.display = 'block';
    el.style.width = '500px';
    el.style.marginLeft = '-250px';
    if (top_px > 0) {
        if (IE)
            el.style.top = (1*top_px + (300))+'px';
        else
            el.style.top = (1*top_px + (window.outerHeight/2))+'px';
    }
    //alert(window.outerHeight);
    if (op_yes)
        yes_fx = function() { op_yes(); document.getElementById('ask-message').style.display='none'; }
    else
        yes_fx = function() { document.getElementById('ask-message').style.display='none'; }
    if (op_no)
        no_fx = function() { op_no(); document.getElementById('ask-message').style.display='none'; }
    else
        no_fx = function() { document.getElementById('ask-message').style.display='none'; }
    
    var el_message_cont = document.createElement("div");
    set_class(el_message_cont,"message-container");
    el.appendChild(el_message_cont);
    var el_message_top = document.createElement("div");
    el_message_top.onmousedown = function(event) { move(event, 'ask-message'); };
    set_class(el_message_top,"message-top");
    el_message_cont.appendChild(el_message_top);
    el_message_top.appendChild(document.createTextNode('Operácia'));
    var el_message_text = document.createElement("div");
    set_class(el_message_text,"message-text");
    el_message_cont.appendChild(el_message_text);
    //el_message_text.appendChild(document.createTextNode(text));
    el_message_text.innerHTML = text;
    
    var el_message_foot = document.createElement("div");
    set_class(el_message_foot,"message-foot");
    el_message_cont.appendChild(el_message_foot);
    var el_yes = document.createElement("input");
    set_class(el_yes,"btn");
    el_yes.type = 'button';
    el_yes.href = 'javascript:void(0);';
    el_yes.value = "   Áno   ";
    el_yes.onclick = yes_fx;
    el_message_foot.appendChild(el_yes);
    el_message_foot.appendChild(document.createTextNode(' '));
    var el_no = document.createElement("input");
    set_class(el_no,"btn");
    el_no.type = 'button';
    el_no.href = 'javascript:void(0);';
    el_no.value = "   Nie   ";
    el_no.onclick =  no_fx;
    el_message_foot.appendChild(el_no);  
}

function move(event, id) {		// funkce pro posun okna. "draggable" oblast ji musi mit onmousedown
    //alert('a'+event); 
	if (document.body.onmousemove==moveHandler) {
		document.body.onmouseup;
		return;
	};
	event = event || window.event;		// IE nepradava event jako parametr
	move_obj = document.getElementById(id);	// objekt, ktery budu presouvat
	move_X = (event.clientX - move_obj.offsetLeft);	// pozice kurzoru v ramci objektu
	move_Y = (event.clientY - move_obj.offsetTop);	
	handler1 = document.body.onmousemove;		// ulozime puvodni event handlery
	handler2 = document.body.onselectstart;
	handler3 = document.body.onmousedown;
	handler4 = document.body.onmouseup;
	document.body.onmouseup = function () {
		document.body.onmousemove = handler1;
		document.body.onselectstart = handler2;
		document.body.onmousedown = handler3;
		document.body.onmouseup = handler4;
	};
	document.body.onmousemove = moveHandler;
	document.body.onselectstart = function () { return false; }	// zakazani oznacovani textu pro IE
	document.body.onmousedown = function () { return false; }	// zakazani oznacovani textu pro Mozillu	
}

function moveHandler(event) {
	event = event || window.event;	// IE nepredava event jako parametr
	var x = event.clientX - move_X;
	var y = event.clientY - move_Y;
	var limitX = document.body.clientWidth - move_obj.clientWidth;
	var limitY = document.body.clientHeight - move_obj.clientHeight;
	if (x<0) x = 0;
	if (y<0) y = 0;
	if (x>limitX) x = limitX;
	//if (y>limitY) y = limitY;	
	move_obj.style.margin = '0';
	move_obj.style.left = (x)+'px';
	move_obj.style.top = (y)+'px';
}

function hover_button(el) {
    if (IE) {
        var nc = class_name(el);
        if (nc.substr(nc.length-5) != 'hover')
            set_class(el,nc+'-hover');
    }
}

function unhover_button(el) {
    if (IE) {
        var nc = class_name(el);
        if (nc.substr(nc.length-5) == 'hover')
            set_class(el,nc.substr(0,nc.length-6));
    }
}

function array_search(arr,value) {
    for (i = 0; i < arr.length; i++) {
        if (arr[i] == value) 
            return i;
    }
    
    return -1;
}

function openWindow(url,w,h) {
	window.open(url, "_tree", "toolbar=no,width="+w+",height="+h+",scrollbars=yes,resizable=yes");
}

function do_loading() {
    var el = document.getElementById("loading_bar");
    
    var top_px = 0;
    if (IE)
        top_px  = document.body.scrollTop;
    else
        top_px  = window.pageYOffset;
        
    if (el) {
        el.style.display = 'block';
        el.style.top = top_px+1*320+'px';
    }
}

function stop_loading() {
    var el = document.getElementById("loading_bar");
    if (el) {
        el.style.display = 'none';
    }
	
}
