function ___getPageSize() {
var xScroll, yScroll;
if (window.innerHeight && window.scrollMaxY) {
xScroll = window.innerWidth + window.scrollMaxX;
yScroll = window.innerHeight + window.scrollMaxY;
} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
xScroll = document.body.scrollWidth;
yScroll = document.body.scrollHeight;
} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
xScroll = document.body.offsetWidth;
yScroll = document.body.offsetHeight;
}
var windowWidth, windowHeight;
if (self.innerHeight) { // all except Explorer
if(document.documentElement.clientWidth){
windowWidth = document.documentElement.clientWidth;
} else {
windowWidth = self.innerWidth;
}
windowHeight = self.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
windowWidth = document.documentElement.clientWidth;
windowHeight = document.documentElement.clientHeight;
} else if (document.body) { // other Explorers
windowWidth = document.body.clientWidth;
windowHeight = document.body.clientHeight;
}
// for small pages with total height less then height of the viewport
if(yScroll < windowHeight){
pageHeight = windowHeight;
} else {
pageHeight = yScroll;
}
// for small pages with total width less then width of the viewport
if(xScroll < windowWidth){
pageWidth = xScroll;
} else {
pageWidth = windowWidth;
}

var currentScrollX = $(document).scrollLeft();
var currentScrollY = $(document).scrollTop();
	
/*if (window.scrollX && window.scrollY) {
	currentScrollX = window.scrollX;
	currentScrollY = window.scrollY;
} else {
    currentScrollX = document.documentElement.scrollLeft;
	currentScrollY = document.documentElement.scrollTop;*/
//}
arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight,currentScrollX,currentScrollY);
return arrayPageSize;
};

function show_popup(id) {
	if($("#"+id).length <= 0) {
		var dom = '<div class="popup popup_register" id="'+id+'"><div class="popup_right_top"><div class="popup_left_top"><div class="popup_top"></div></div></div><div class="popup_right_middle"><div class="popup_left_middle"><div class="popup_middle"><a href="#" class="popup_close" title="Закрыть"></a><div class="popup_content"></div></div></div></div><div class="popup_right_bottom"><div class="popup_left_bottom"><div class="popup_bottom"></div></div></div></div>';
		
		$("div.content").prepend(dom);
	}
	$("#"+id).find("div.popup_content").html("");
	$("#"+id).show();
	var arrPageSizes = ___getPageSize();
	var body_height = arrPageSizes[3];
	var margintop = ((body_height-$("#"+id).height())/2) + arrPageSizes[5] + 'px';
	$("#"+id).css('top', margintop);
	$("#"+id).find("a.popup_close").bind("click", function() {
		$(this).parent().parent().parent().parent().hide();
		
		return false;
	});
}

function add_input(id_parent, id, type) {
	var count = $("#"+id_parent+" input").length;
	if(type == "input_file") {
		$("#"+id_parent).find("*:last").before('<input type="file" size="25" name="'+id+'['+count+']" id'+id+'['+count+']"><br />');
	} else {
		$("#"+id_parent).find("*:last").before('<input type="text" id="'+id+'" name="'+id+'['+count+']" class="input_text" value=""  /><br />');
	}
}

function printDiv()
			{
			  var divToPrint = $('#printarea').html();
			  newWin= window.open("");
			  newWin.document.write(divToPrint);
			  newWin.print();
			}

$(document).ready(function() {
	if ($(".content").height() < $(".left").height()) {
		$(".content").height($(".left").height());
	}
	$("#reference_link").click(function(){
		if ($(".reference_block:hidden").size()>0) {
			$(".reference_block").slideDown(400);
		} else {
			$(".reference_block").slideUp(400);
		}
		return false;
	});
	$("#reference_link_bottom").click(function(){
		$(".reference_block").slideDown(400);
	});
	if ($("#submit_float").size() > 0) {
		var arrPageSizes = ___getPageSize();
		var body_height = arrPageSizes[3];
		var margintop = ((body_height-$("#submit_float").height())/2) + arrPageSizes[5] + 200 + 'px';
    	$("#submit_float").css("top", margintop) 
		$(window).scroll(function () { 
			var arrPageSizes = ___getPageSize();
			var body_height = arrPageSizes[3];
			var margintop = ((body_height-$("#submit_float").height())/2) + arrPageSizes[5] + 200 + 'px';
	    	$("#submit_float").css("top", margintop) 
	    });

	}


	if ($('#patients').size()>0) {
		$('#patients .left a').lightbox();
	}
if ($('#specialists ').size()>0) {
		$('#specialists .left a').lightbox();
	}

	
	if ($("#privatmess").size() > 0) {
		$("#privatmess p").idTabs();
			if ($(".content").height() < $(".left").height()) {
				$(".content").height($(".left").height());
			}
		$("#tab_incoming .paging a").live("click", function(){
			var lnkUrl = $(this).attr("href");
			var reg=/(PAGEN_\d=)(\d+)/;
			var arr=reg.exec(lnkUrl);			
			$.ajax({
				url: "/ajax/pm_incoming.php?PAGEN_1="+arr[2],
				success: function(data) {
					$("#tab_incoming").html(data);
					$("#tab_incoming li:even").addClass("oddli");
				}
			});
			if ($(".content").height() < $(".left").height()) {
				$(".content").height($(".left").height());
			}
			return false;
		});
		
		$("#tab_outcoming .paging a").live("click", function(){
			var lnkUrl = $(this).attr("href");
			var reg=/PAGEN_\d=\d+/;
			var arr=reg.exec(lnkUrl);	
			$.ajax({
				url: "/ajax/pm_outcoming.php?"+arr[0],
				success: function(data) {
					$("#tab_outcoming").html(data);
					$("#tab_outcoming li:even").addClass("oddli");
				}
			});
			return false;
		});
	}
	
	$("#f_spec").change(function(){
		$("#spec_form").submit();
	});
	
	$(".doctortable tr:even").addClass("oddtr");
	
	$("#tab_outcoming li:even").addClass("oddli");
	$("#tab_incoming li:even").addClass("oddli");
	
	$(".anketaget").click(function() {
		window.scrollTo(0, 120);
		show_popup("anketa_show");
		var data = $(this).parent().children(".anketahidden").html();
		$("#anketa_show").find("div.popup_content").empty().html(data);
		return false;
	});

      $(".diagnostics_link").click(function() {
		window.scrollTo(0, 120);
                var newid = $(this).attr("href");
		show_popup(newid);
		var data = $(this).parent().children(".diagnostics_info").html();
		$("#"+newid).find("div.popup_content").empty().html(data);
		return false;
	});
	
	$(".pm_add").click(function() {
		window.scrollTo(0, 120);
		show_popup("pm_add");
		
		$.ajax({
			type: "POST",
			url: "/ajax/pm_add.php",
			data: "USER_ID="+$(this).attr("href"),
			success: function(data) {
				$("#pm_add").find("div.popup_content").html(data);
				swfu = new SWFUpload({
					// Backend settings
					upload_url: "/ajax/upload.php",
					file_post_name: "pm_file",

					// Flash file settings
					file_size_limit : "100 MB",
					file_types : "*.*",			// or you could use something like: "*.doc;*.wpd;*.pdf",
					file_types_description : "All files",
					file_upload_limit : "1",
					file_queue_limit : "1",

					// Event handler settings
					swfupload_loaded_handler : swfUploadLoaded,
					
					file_dialog_start_handler: fileDialogStart,
					file_queued_handler : fileQueued,
					file_queue_error_handler : fileQueueError,
					file_dialog_complete_handler : fileDialogComplete,
					
					//upload_start_handler : uploadStart,	// I could do some client/JavaScript validation here, but I don't need to.
					upload_progress_handler : uploadProgress,
					upload_error_handler : uploadError,
					upload_success_handler : uploadSuccess,
					upload_complete_handler : uploadComplete,

					// Button Settings
					button_image_url : "/i/upload.jpg",
					button_placeholder_id : "spanButtonPlaceholder",
					button_width: 80,
					button_height: 24,
					
					// Flash Settings
					flash_url : "/swfupload/swfupload.swf",

					custom_settings : {
						progress_target : "fsUploadProgress",
						upload_successful : false
					},
					
					// Debug settings
					debug: false
				});
			}
		});
		
		return false;
	});
	
	$(".pm_help_me").click(function() {
		if($($(this).attr("href")).css("display") == "none") {
			$($(this).attr("href")).slideDown(400);
		} else {
			$($(this).attr("href")).slideUp(400);
		}
		
		return false;
	});
	
	$(".invite_doctors_link").click(function() {
		if($($(this).attr("href")).css("display") == "none") {
			$($(this).attr("href")).slideDown(400);
		} else {
			$($(this).attr("href")).slideUp(400);
		}
		
		return false;
	});
	
	$(".slide_list").click(function() {
		var showid = $(this).attr("href");
		var idstr = '#'+showid;
		var visstr = "#"+showid+":visible";
		if ($(visstr).size() > 0) {
			$(idstr).slideUp(500);
		} else {
			$(".div_list").hide();
			$(idstr).slideDown(500);
		}
		return false;	
	});
	
	$(".close_list").click(function() {
		$(this).parent().parent().slideUp(500);
		return false;	
	});
	
	$("#search_form label").click(function() {
		$("#" + $(this).attr("for")).val($(this).text());
		$("#" + $(this).attr("for")).focus();
	});
	
	$("#search").focus(function() {
		if($(this).val() == "Поиск") {
			$(this).val("");
		}
	});
	
	$("#search").blur(function() {
		if($(this).val() == "") {
			$(this).val("Поиск");
		}
	});
	
	$("a.patients_specialists").click(function() {
		$("#patients").addClass("hidden");
		$("#specialists").addClass("hidden");
		
		$().removeClass("hidden");
		
		$("a.patients_specialists").removeClass("js_link_selected");
		$(this).addClass("js_link_selected");
		
		return false;
	});
	
	$("a.popup_close").click(function() {
		$(this).parent().parent().parent().parent().hide();
		
		return false;
	});
	
if ($("a.auth").size() > 0) {
	$("a.auth").live("click", function() {
		$($(this).attr("href")).show();
		
		//return false;
	});
}
if ($("a.register").size() > 0) {
	$("a.register").live("click", function() {
		$($(this).attr("href")).show();
		
		//return false;
	});
}
	
	$(".schedule_navigation ul li a").click(function() {
		$("div.schedule").addClass("hidden");
		$($(this).attr("href")).removeClass("hidden");
		
		$(this).parent().parent().find("li").removeClass("selected");
		$(this).parent().addClass("selected");
		
		return false;
	});
	
	$("#popup_register_form").find("input[type='submit']").attr("disabled", "disabled");
	
	$("#popup_register_form input#register_rules").change(function() {
		if($(this).attr("checked") == true) {
			$("#popup_register_form").find("input[type='submit']").removeAttr("disabled");
		} else {
			$("#popup_register_form").find("input[type='submit']").attr("disabled", "disabled");
		}
	});
	
	$("#popup_register_div input#register_rules_not_form").change(function() {
		if($(this).attr("checked") == true) {
			$("#popup_register_div").find("input[type='submit']").removeAttr("disabled");
		} else {
			$("#popup_register_div").find("input[type='submit']").attr("disabled", "disabled");
		}
	});

	
	
	$("#popup_register_form").submit(function() {
		var submit_form = true;

		if($(this).find("#REGISTER_LOGIN").val() == "") {
			$(this).find("label[for='REGISTER_LOGIN']").addClass("red");
			submit_form = false;
		} else {
			$(this).find("label[for='REGISTER_LOGIN']").removeClass("red");
		}
		
		if($(this).find("#REGISTER_PASSWORD").val() == "") {
			$(this).find("label[for='REGISTER_PASSWORD']").addClass("red");
			submit_form = false;
		} else {
			$(this).find("label[for='REGISTER_PASSWORD']").removeClass("red");
		}
		
		if($(this).find("#REGISTER_CONFIRM_PASSWORD").val() == "") {
			$(this).find("label[for='REGISTER_CONFIRM_PASSWORD']").addClass("red");
			submit_form = false;
		} else {
			$(this).find("label[for='REGISTER_CONFIRM_PASSWORD']").removeClass("red");
		}
		
		if($(this).find("#REGISTER_CONFIRM_PASSWORD").val() != $(this).find("#REGISTER_PASSWORD").val()) {
			$(this).find("label[for='REGISTER_CONFIRM_PASSWORD']").addClass("red");
			submit_form = false;
		} else {
			$(this).find("label[for='REGISTER_CONFIRM_PASSWORD']").removeClass("red");
		}
		
		var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
		if($(this).find("#REGISTER_EMAIL").val() == "" || !emailPattern.test($(this).find("#REGISTER_EMAIL").val())) {
			$(this).find("label[for='REGISTER_EMAIL']").addClass("red");
			submit_form = false;
		} else {
			$(this).find("label[for='REGISTER_EMAIL']").removeClass("red");
		}
		
		return submit_form;
	});
	
	/*$("#order_research").find("tr").find("input[type='checkbox']").click(function() {
		//var inputCheckbox = $(this).find("input[type='checkbox']");
		if($(this).length > 0) {
			if($(this).attr("disabled") == true) {
				return;
			}
			if($(this).attr("checked") == true) {
				$(this).removeAttr("checked");
			} else {
				$(this).attr({"checked":"checked"});
			}
		}
	});*/
	
	$("#order_research").submit(function() {
		if($(this).find("input:checked").length > 0) {
			var elementNum = $(this).find("input:checked:enabled").length;
			var basketCount = parseInt($(".basketItems").html());
			var newBasketCount = elementNum+basketCount;
			$(".basketItems").html(newBasketCount);
			$.post("/ajax/add2basket.php", $(this).serialize(), 
			function(data) {
				show_popup("order_research_result");
				$("#order_research_result").find("div.popup_content").html(data);
				setTimeout(function() {
					$("#order_research_result").fadeOut(600);
				}, 2000);
			});
			$(this).find("input:checked").attr({"disabled":"disabled"});
		}
		
		return false;
	});
	
	$("a.delete_basket_item").click(function() {
		var href = $(this).attr("href");
		var idToDelete = href.replace("#basket_row_", "");
		var priceCol = $(this).parent().parent().children(".price_row").html()
		var priceToDelete = parseFloat(priceCol.replace(" руб", ""));
		var summPriceTxt = $(".sum_price").html();
		var summPrice = summPriceTxt.replace(" руб", "");
		summPrice = parseFloat(summPrice.replace(" ", "")); 
		$.get("/ajax/deletebasketitem.php", {"DELETE_ITEM_ID":idToDelete}, function(data) {
			if(data == "success") {
				//alert("ok");
				$("#basket_row_"+idToDelete).fadeOut(400, function() {
					var newprice = summPrice - priceToDelete;
					newprice = newprice.toFixed(2);
					if(newprice=="0.00"){
						$("#basketOrderButton2").attr("disabled",true);
						$("#basketOrderButton1").attr("disabled",true);
					}
					newprice = newprice + " руб";
					$(".sum_price").html(newprice);
					$(this).remove();
					$("#basket_items_data tr").removeClass("odd");
					$("#basket_items_data tr:odd").addClass("odd");
				});
			} else if(data == "error") {
				//alert('error!');
				var currentBackground = $("#basket_row_"+idToDelete).css("background-color");
				$("#basket_row_"+idToDelete).css({"background-color":"#ff8080"});
				setTimeout(function() {
					$("#basket_row_"+idToDelete).css({"background-color":currentBackground});
				}, 1000);
			} else {
				//alert('undef');
				return false;
			}
		});
		return false;
	});
	
	$("ul.menu li ul.submenu").hide();
	$("ul.menu li.opened ul.submenu").show();
	
	$("ul.menu li a").click(function() {
 		if($(this).parent().has("ul.submenu").size()>0 && !$(this).parent().hasClass("opened")) {
 			if ($(this).parent().children("ul.submenu:hidden").size()>0) {
 				$(this).parent().children("ul.submenu").show();
				 return false;
 			} else if ($(this).parent().children("ul.submenu:visible").size()>0) {
				 $(this).parent().children("ul.submenu").hide();
				 return false;
 			}
 		} else if ($(this).parent().hasClass("opened")) {
 			return false;
 		}
 	}); 

	/*
	$(".photo_row a").click(function() {
		$("div.opinion_photo").hide();
		$($(this).attr("href")).show();
		
		$(this).parent().parent().find("li").removeClass("selected");
		$(this).parent().addClass("selected");
		
		return false;
	});
	
	$("a.add_opinion").click(function() {
		if($($(this).attr("href")).hasClass("hidden")) {
			$($(this).attr("href")).hide();
			$($(this).attr("href")).removeClass("hidden");
			$($(this).attr("href")).slideDown(300);
		} else {
			$($(this).attr("href")).slideUp(300, function() {
				$(this).addClass("hidden");
			});
		}
		
		return false;
	});
	*/
	
	$("#anketaform input:checkbox").live("change", function() {
		if (!$(this).hasClass("noclick")) {
			var secid = $(this).attr("value");
			var myelement = $(this);
			if ($(this).attr("checked")) {	
				$.ajax({
					type: "GET",
					url: "/ajax/anketa_ajax.php",
					data: "SECTION_ID="+secid,
					success: function(data) {
						$(myelement).parent().after(data);
					}
				});
			} else {
				$(myelement).parent().next("div.sub_anketa").remove();
			}
		}
		if ($(".content").height() < $(".left").height()) {
			$(".content").height($(".left").height());
		} else {
			$(".content").css("height", "auto");
		}
	});
	
	$("#send_anketa").click(function(){
	if ($("#anketaform input:checkbox:checked").size() > 0) {
		var newHtml = '<div class="anketa_result">';
		var lvlstr = new Array(0,0,0,0,0,0,0,0,0,0,0);
		var prevlvl = 0;
		$("#anketaform input:checkbox:checked").not(".noclick").each(function(){
			    var itemString = '';
				var level = $(this).parent().parents(".sub_anketa").size();
				var margintop = 20 - level*5;
				if (level == 0) {
					var border = 'border-bottom: 1px dashed #999999; padding-bottom: 5px;';
				} else {
					var border = '';
				}
				var font = 100-(level*5);
				if (prevlvl > level) {
					tmplvl = prevlvl;
					while (tmplvl > level) {
						lvlstr[tmplvl] = 0;
						tmplvl--;
					}
				}
				lvlstr[level] = lvlstr[level]+1;
				var exitstr = '';
				var iter = 0;
				while (iter <= level) {
					exitstr += lvlstr[iter] + '.';
					iter++;
				}
				prevlvl = level;
				if (level < 2) {
					itemString += '<div style="'+border+'margin-top:'+margintop+'px; font-size:'+font+'%;"> ' + exitstr +' ' + $(this).parent().text() + '</div>';
				} else {
					itemString += '<font style="font-size: 75%">' + $(this).parent().text() + ';</font>';
				}
			if ($(this).parent().next().children("p").size() > 0) {
				$(this).parent().next().children("p").each(function(){
					if ($(this).children("label").children("input:checkbox:checked").size() > 0) {
						itemString += '<ul style="margin-left:'+margin+'px;font-size:'+font+'%;"><i>' + $(this).children("i").text() + ':</i>';
							$(this).children("label").children("input:checkbox:checked").each(function(){
								itemString += '<li>' + $(this).parent().text() + '</li>';
							});
						itemString += '</ul>';
					}
				});	
			}
			newHtml += itemString;
		});
		if ($("#anketaform input:hidden").size() > 0) {
			newHtml += '<p>Возможные диагнозы: *<br/>';
			var diagnoses = new Array();
			$("#anketaform input:hidden").each(function(){
				if (!in_array($(this).val(), diagnoses)) {
					diagnoses.push($(this).val());
					newHtml += $(this).val() + '<br/>';
				}
			});
			newHtml += '<br/><small>* Приведенная здесь информация о возможных диагнозах не означает наличие у Вас этих заболеваний и не может использоваться для назначения лечения. Проконсультируйтесь с врачом.</small></p>';
		}
		newHtml += '</div>';
		$("#anketa_data").hide();
		$.ajax({
			type: "POST",
			url: "/ajax/anketa_ajax.php",
			data: "description="+newHtml,
			success: function(data) {
				$("#result").html(data);
				if ($(".content").height() < $(".left").height()) {
					$(".content").height($(".left").height());
				} else {
					$(".content").css("height", "auto");
				}
			}
		});
	}
	});
});

function in_array(what, where) {
    for(var i=0; i<where.length; i++)
        if(what == where[i]) 
            return true;
    return false;
}
