// page init
$(function(){
	clearFormFields({
		clearInputs: true,
		clearTextareas: true,
		passwordFieldText: true,
		addClassFocus: "focus",
		filterClass: "default"
	});
	initSlideDrop();
});

function initSlideDrop(){
	var animSpeed = 700;
	$('ul#nav').each(function(){
		var dropSlide = $(this).find(".drop");
		var dropHeight = dropSlide.outerHeight();
		dropSlide.css({marginTop: -dropHeight});
		var items = $(this).find("li");
		items.mouseenter(function(){
			var currentDrop = $(this).find(".drop");
			currentDrop.stop().animate({"marginTop": 0}, animSpeed);
		});
		$('ul#nav > li').mouseleave(function(){
			dropSlide.stop().animate({"marginTop": -dropHeight}, animSpeed);
		});
	});
}



// init clear inputs

function clearFormFields(o){

	if (o.clearInputs == null) o.clearInputs = true;

	if (o.clearTextareas == null) o.clearTextareas = true;

	if (o.passwordFieldText == null) o.passwordFieldText = false;

	if (o.addClassFocus == null) o.addClassFocus = false;

	if (!o.filterClass) o.filterClass = "default";

	if(o.clearInputs) {

		var inputs = document.getElementsByTagName("input");

		for (var i = 0; i < inputs.length; i++ ) {

			if((inputs[i].type == "text" || inputs[i].type == "password") && inputs[i].className.indexOf(o.filterClass) == -1) {

				inputs[i].valueHtml = inputs[i].value;

				inputs[i].onfocus = function ()	{

					if(this.valueHtml == this.value) this.value = "";

					if(this.fake) {

						inputsSwap(this, this.previousSibling);

						this.previousSibling.focus();

					}

					if(o.addClassFocus && !this.fake) {

						this.className += " " + o.addClassFocus;

						this.parentNode.className += " parent-" + o.addClassFocus;

					}

				}

				inputs[i].onblur = function () {

					if(this.value == "") {

						this.value = this.valueHtml;

						if(o.passwordFieldText && this.type == "password") inputsSwap(this, this.nextSibling);

					}

					if(o.addClassFocus) {

						this.className = this.className.replace(o.addClassFocus, "");

						this.parentNode.className = this.parentNode.className.replace("parent-"+o.addClassFocus, "");

					}

				}

				if(o.passwordFieldText && inputs[i].type == "password") {

					var fakeInput = document.createElement("input");

					fakeInput.type = "text";

					fakeInput.value = inputs[i].value;

					fakeInput.className = inputs[i].className;

					fakeInput.fake = true;

					inputs[i].parentNode.insertBefore(fakeInput, inputs[i].nextSibling);

					inputsSwap(inputs[i], null);

				}

			}

		}

	}

	if(o.clearTextareas) {

		var textareas = document.getElementsByTagName("textarea");

		for(var i=0; i<textareas.length; i++) {

			if(textareas[i].className.indexOf(o.filterClass) == -1) {

				textareas[i].valueHtml = textareas[i].value;

				textareas[i].onfocus = function() {

					if(this.value == this.valueHtml) this.value = "";

					if(o.addClassFocus) {

						this.className += " " + o.addClassFocus;

						this.parentNode.className += " parent-" + o.addClassFocus;

					}

				}

				textareas[i].onblur = function() {

					if(this.value == "") this.value = this.valueHtml;

					if(o.addClassFocus) {

						this.className = this.className.replace(o.addClassFocus, "");

						this.parentNode.className = this.parentNode.className.replace("parent-"+o.addClassFocus, "");

					}

				}

			}

		}

	}

	function inputsSwap(el, el2) {

		if(el) el.style.display = "none";

		if(el2) el2.style.display = "inline";

	}

}
