var emailRegEx = /[^\s]+@[^\s]+([.]\w{2,3})+/;

var mG = (function($) {
    $(document).ready(function() {

        var msie = ($.browser.msie) ? "ie" : false;
        var mozilla = ($.browser.mozilla) ? "mozilla" : false;
        var safari = ($.browser.safari) ? "safari" : false;
        var browser = (msie || mozilla || safari);
        var browserVer = browser + parseInt(jQuery.browser.version);


		if (browser == "mozilla") {
			var mozillaVer = parseInt(jQuery.browser.version.split(".")[0] + jQuery.browser.version.split(".")[1]);
	
			if (mozillaVer < 19)
				browserVer = "mozilla2or1";
			else
				browserVer = "mozilla3";
		}
		
		$("body").addClass(browser).addClass(browserVer);
		
		if (navigator.platform.substr(0, 3).toLowerCase() !== "win")
            $("#mgContainer").addClass('mac');

		mGStuff.mGEvents();
		mGStuff.mGValidateEmail();
		mGStuff.mGFFakeRadioButtons();
		mGStuff.mGFFakeCheckboxes();
		mGStuff.mGDefaultText();
		mGStuff.mGDropDowns();
		mGStuff.mGLoadImages();
		mGStuff.mGLoadImages();
	});

    var mGStuff = {

		mGEvents: function() {
			$("select.styled").keyup(function(mGE) {
				var mOption = "option:eq(" + this.selectedIndex + ")";
				$("span.select").text($(this).find(mOption));
			});
		},

		mGValidateEmail: function() {
			var emailRE = /[^\\s]+@[^\\s]+([.]\\w{2,3})+/;
			
//			$(".formSubmit").click(function(mGE) {
//				alert($(":input[name='emailText']").val());
//			});
		},
		
		mGFFakeRadioButtons: function() {
			$(".fakeRadioButton a").click(function(mGE) {
				$("input[name='" + $(this).next().attr("name") + "']").prev().removeClass("fakeSelected");
				$(this).addClass("fakeSelected");
				$(this).next().attr("checked", "checked");
				mGE.preventDefault();
			});

			$(".fakeRadioButton a").each(function(mGE) {
				if ($(this).next().attr("checked")) {
					$(this).click();
				}
			});
		},

		mGFFakeCheckboxes: function() {
			$(".fakeCheckbox a").click(function(mGE) {
				if (!$(this).hasClass("fakeDisabled")) {
					if ($(this).hasClass("fakeChecked"))
						$(this).removeClass("fakeChecked");
					else
						$(this).addClass("fakeChecked");

					$(this).next().click();
					
					mGE.preventDefault();
				}
			});
		
			$(".fakeCheckbox a").each(function() {
				if ($(this).next().attr("checked"))
					$(this).addClass("fakeChecked");

				if ($(this).next().attr("disabled"))
					$(this).addClass("fakeDisabled");
			});
		},

		mGDefaultText: function() {
		    $(".text[default]").each(function() {
				this.value = $(this).attr("default");
		    });

		    $(".text[default]").focus(function() {
				if (this.value == $(this).attr("default"))
				    this.value = "";
		    });

		    $(".text[default]").blur(function() {
				if (this.value == "")
			    	this.value = $(this).attr("default");
		    });
		},

		mGDropDownKeysPressed: "",

		mGDropDownKeypress: function(mGE) {
			var mAlphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
			var mCurrentDD = $(".openDD");
			var mList = mCurrentDD.next().find("li");
			
			if (mGE.which < 97 || mGE.which > 122)
				return;
			
			mGStuff.mGDropDownKeysPressed = mGStuff.mGDropDownKeysPressed + mAlphabet[mGE.which - 97];

			mList.each(function() {
//alert($(this).text().substring(0, mGStuff.mGDropDownKeysPressed.length).toLowerCase() + "  " +  mGStuff.mGDropDownKeysPressed.toLowerCase());
//return false;
			if ($(this).text().substring(0, mGStuff.mGDropDownKeysPressed.length).toLowerCase() == mGStuff.mGDropDownKeysPressed.toLowerCase()) {
					mCurrentDD.text($(this).text());
					return false;
				}
			});
			
//			mCurrentDD.text(mGStuff.mGDropDownKeysPressed);
			mGE.preventDefault();
		},

		mGResetAllDropDowns: function(mContext) {
			alert("Hi Yevvy");
		},

		mGDropDowns: function() {
		    $(".greySelect .default").toggle(
				function(mGE) {
//					$("body").bind("keypress", mGStuff.mGDropDownKeypress);

					var thisThis = this;

					$(".greySelect .default").each(function() {
						if (thisThis != this && $(this).next().css("display") == "block")
							$(this).click();
					});
				
					$(this).addClass("openDD");
					$(this).next().show();
				    mGE.preventDefault();
				},
				
				function(mGE) {
//					$("body").unbind("keypress", mGStuff.mGDropDownKeypress);

					$(this).removeClass("openDD");
				    $(this).next().hide();
				    mGE.preventDefault();
				}
		    );

			$(".greySelect ul ul li a").each(function(mGE) {
				if ($(this).attr("selected") == "selected")
					$(this).parent().parent().prev().text($(this).text());
		    });

			$(".greySelect ul ul li a").click(function(mGE) {
				$(this).parent().parent().prev().click();
				$(this).parent().parent().prev().text($(this).text());
				$(this).parent().parent().prevAll("input").attr("value", $(this).text());
				mGE.preventDefault();
		    });
		},

		mGLoadImages: function() {
			payBillsImage = new Image();
			payBillsImage.src = "assets/img/headerPayBillsOver.jpg";

			rewardsImage = new Image();
			rewardsImage.src = "assets/img/headerRewardsOver.jpg";

			myAccountImage = new Image();
			myAccountImage.src = "assets/img/headerMyAccountOver.jpg";
		}
	}
})(jQuery);

