$(document).ready(function () {	
  Page.init();
	$(".lightbox").lightbox();
});


Page= {
	maxHeight: 432,
	
	init: function() {
		Products.init();
		News.init();
		Recipe.init();
		
    if($('#content .newsdetail').html()) {
     $('#content .inner').css("height", $('#content .newsdetail').height()+159);
    }
    
    if($('#content .inner') && $('#content .inner').height()>Page.maxHeight) {
     var difference= $('#content .inner').height()-Page.maxHeight+20;
     $('#subsite').css("height", parseInt($('#subsite').css("height"))+difference);
    }
	},
	addFavourite: function(url, title) {
		if (document.all) {
	        window.external.AddFavorite(url, title)
		} else {
	        window.sidebar.addPanel(title, url, '');
		}
	}
}

Products= {
	page: 1,
	maximum: 0,
	visibleWidth: 678,
	
	init: function() {
		/* position pages */
		var frameWidth= $(".productslider_pages").width();
		var navigationWidth= $(".productslider_pages .pages").width();
		$(".productslider_pages .pages").css("margin-left", ((frameWidth-navigationWidth)/2));
		/* pages hover */
		$(".productslider_pages .pages li").hover(function() {
			$(this).addClass("hover");
		}, function() {
			$(this).removeClass("hover");
		});
		/* init */
		if($("#content .productslider_pages li").size()>3) {
			$("#content .productslider_pages li").each(function() {
				if(!$(this).hasClass("back") && !$(this).hasClass("next")) {
					$(this).click(function() {
						Products.setPage($(this).html())
					});
				}
				/* init active */
				if($(this).html()==1) {
					$(this).addClass("active");
				}
				/* set maximum */
				Products.maximum++;
			});
			Products.maximum-=2; /* because of back and next */
		} else {
			$("#content .productslider_pages").hide();
		}
		/* set arrwos */
		$("#content .productslider_pages li.back").addClass("inactive").css("cursor", "auto");
		$("#content .productslider_pages li.next").click(function() {
			Products.setPage(Products.page+1);
		});
	},
	setPage: function(page) {
		page= parseInt(page);
		Products.page= page;

		/* reset */
		$("#content .productslider_pages li").removeClass("inactive").removeClass("active").css("cursor", "pointer");
		$("#content .productslider_pages li.back").click(function() {
			Products.setPage(page-1);
		});
		$("#content .productslider_pages li.next").click(function() {
			Products.setPage(page+1);
		});
		
		/* set arrwos */
		if(page==1) {
			$("#content .productslider_pages li.back").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		if(page==Products.maximum) {
			$("#content .productslider_pages li.next").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		/* set numbers */
		$("#content .productslider_pages li").each(function() {
			if($(this).html()==page) {
				$(this).addClass("active");
			}
		});
		
		/* animate sledge */
		var left= Products.visibleWidth*(page-1)*-1;
		$("#content .productslider .sledge").animate({ 
			left: left
		}, 300);
	}
}

News= {
	page: 1,
	maximum: 0,
	visibleWidth: 340,
	
	init: function() {
		/* position pages */
		var frameWidth= $(".newsslider_pages").width();
		var navigationWidth= $(".newsslider_pages .pages").width();
		$(".newsslider_pages .pages").css("margin-left", ((frameWidth-navigationWidth)/2));
		/* pages hover */
		$(".newsslider_pages .pages li").hover(function() {
			$(this).addClass("hover");
		}, function() {
			$(this).removeClass("hover");
		});
		/* init */
		if($("#content .newsslider_pages li").size()>3) {
			$("#content .newsslider_pages li").each(function() {
				if(!$(this).hasClass("back") && !$(this).hasClass("next")) {
					$(this).click(function() {
						News.setPage($(this).html())
					});
				}
				/* init active */
				if($(this).html()==1) {
					$(this).addClass("active");
				}
				/* set maximum */
				News.maximum++;
			});
			News.maximum-=2; /* because of back and next */
		} else {
			$("#content .newsslider_pages").hide();
		}
		/* set arrwos */
		$("#content .newsslider_pages li.back").addClass("inactive").css("cursor", "auto");
		$("#content .newsslider_pages li.next").click(function() {
			News.setPage(News.page+1);
		});
	},
	setPage: function(page) {
		page= parseInt(page);
		News.page= page;

		/* reset */
		$("#content .newsslider_pages li").removeClass("inactive").removeClass("active").css("cursor", "pointer");
		$("#content .newsslider_pages li.back").click(function() {
			News.setPage(page-1);
		});
		$("#content .newsslider_pages li.next").click(function() {
			News.setPage(page+1);
		});
		
		/* set arrwos */
		if(page==1) {
			$("#content .newsslider_pages li.back").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		if(page==News.maximum) {
			$("#content .newsslider_pages li.next").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		/* set numbers */
		$("#content .newsslider_pages li").each(function() {
			if($(this).html()==page) {
				$(this).addClass("active");
			}
		});
		
		/* animate sledge */
		var left= News.visibleWidth*(page-1)*-1;
		$("#content .newsslider .sledge").animate({ 
			left: left
		}, 300);
	}
}

Recipe= {
	page: 1,
	maximum: 0,
	visibleWidth: 340,
	
	init: function() {
		/* position pages */
		var frameWidth= $(".recipeslider_pages").width();
		var navigationWidth= $(".recipeslider_pages .pages").width();
		
		$(".recipeslider_pages .pages").css("margin-left", ((frameWidth-navigationWidth)/2));
		/* pages hover */
		$(".recipeslider_pages .pages li").hover(function() {
			$(this).addClass("hover");
		}, function() {
			$(this).removeClass("hover");
		});
		/* init */
		if($("#content .recipeslider_pages li").size()>3) {
			$("#content .recipeslider_pages li").each(function() {
				if(!$(this).hasClass("back") && !$(this).hasClass("next")) {
					$(this).click(function() {
						Recipe.setPage($(this).html())
					});
				}
				/* init active */
				if($(this).html()==1) {
					$(this).addClass("active");
				}
				/* set maximum */
				Recipe.maximum++;
			});
			Recipe.maximum-=2; /* because of back and next */
		} else {
			$("#content .recipeslider_pages").hide();
		}
		/* set arrwos */
		$("#content .recipeslider_pages li.back").addClass("inactive").css("cursor", "auto");
		$("#content .recipeslider_pages li.next").click(function() {
			Recipe.setPage(Recipe.page+1);
		});
	},
	setPage: function(page) {
		page= parseInt(page);
		Recipe.page= page;

		/* reset */
		$("#content .recipeslider_pages li").removeClass("inactive").removeClass("active").css("cursor", "pointer");
		$("#content .recipeslider_pages li.back").click(function() {
			Recipe.setPage(page-1);
		});
		$("#content .recipeslider_pages li.next").click(function() {
			Recipe.setPage(page+1);
		});
		
		/* set arrwos */
		if(page==1) {
			$("#content .recipeslider_pages li.back").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		if(page==Recipe.maximum) {
			$("#content .recipeslider_pages li.next").addClass("inactive").css("cursor", "auto").unbind("click");
		}
		/* set numbers */
		$("#content .recipeslider_pages li").each(function() {
			if($(this).html()==page) {
				$(this).addClass("active");
			}
		});
		
		/* animate sledge */
		var left= Recipe.visibleWidth*(page-1)*-1;
		$("#content .recipeslider .sledge").animate({ 
			left: left
		}, 300);
	}
}

Util= {
	getWindowSize: function(){
		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) {
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else if(document.body) { 
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}

		var windowWidth, windowHeight;
		if (self.innerHeight) {
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth;
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) {
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) {
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}

		if(yScroll < windowHeight) {
			pageHeight = windowHeight;
		} else {
			pageHeight = yScroll;
		}

		if(xScroll < windowWidth) {
			pageWidth = xScroll;
		} else {
			pageWidth = windowWidth;
		}

		var arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
		return arrayPageSize;
	},
	validateForm: function(id) {
		var result= true;
		$("#"+id + " input, #"+id + " textarea").each(function() {
			if($(this).attr("class") && $(this).attr("class").match("required")) {
				var itemresult= Util.validate($(this).attr("id"));
				result= result && itemresult;
			}
		});
		if(result) {
			$("#form_error").removeClass("error");
		} else {
			$("#form_error").addClass("error");
			if(id=='form_job') {
				Jobs.back();
				Jobs.back();
			}
		}
		return result;
	},
	validate: function(id) {
		var result= true;
		var obj= $("#"+id);
		var commands= $("#"+id).attr("class").split(" ");
		for(var i=0; i<commands.length; i++) {
			var command= commands[i].replace(/[0-9]/g, "");
			switch(command) {
				case("minlength"):
					var length= parseInt(commands[i].replace(/minlength/g, ""));
					result= result && (obj.val().length>=length);
					break;
				case("maxlength"):
					var length= parseInt(commands[i]);
					result= result && (obj.val().length<=length);
					break;
				case("email"):
					result = result && ( obj.get(0).value.match(/\S@\S.\S{2,}/)!=null )
					break;
				default:
					result= result && (obj.val().length!=0);
					break;
			}
		}
		if(!result) {
			obj.addClass("error");
		} else {
			obj.removeClass("error");
		}
		return result;
	}
}
