// IE hover plugin
$.fn.hoverClass = function(c) {
	return this.each(function(){
	$(this).hover(
		function() { $(this).addClass(c);  },
		function() { $(this).removeClass(c); }
	);
	});
};

/**
 * Main collection
 * @author Roman Manasyan rmanasyan@holbi.co.uk
 */
jQuery.BEM = {
	/**
	 * Hide banner to avoid flickering during loading
	 */
	adjustTwitter: function() {
		$('#twitter_div a[href]').each(function() {
			var filtered = $(this).attr("href");

            // ie rendering fix
			if ($(this).text().substring(0, 7) == 'http://') {
        		$(this).text($(this).text().substring(7));
			}

			// SEO links ???
			$(this).attr("href", 'http://www.bullseyemedia.co.uk/twitter').click(function() {
				document.location = filtered;
				return false;
			});
		});
	},

	/**
	 * Add rel="nofollow" attr to links
	 */
  addNoFollow: function() {
   $("#twitter_update_list a, .livechat a, .box-addthis a").attr("rel", "nofollow");
  },

	/**
	 * Case studies tabs
	 */
    caseTabs: function() {
        // hide empty tabs
        $("div.cs-title:contains('Gadgetpanda.co.uk')").parents("div.case-study").find("ul.tabs li:gt(1)").hide();
        $("ul.tabs").tabs("div.panes > div.pane");
    },

	/**
	 * Set classes for OL in fancy lists
	 */
	fancyOrderedList: function() {
		$('.fancy-cbox ol li').each(function(i) {
			$(this).addClass('i'+(++i)); // <- niiice  :)
		});
	},

	/**
	 * Class for mailform textarea
	 */
    adjustContact: function() {
        //$(".csc-contact-box .csc-mailform-field").has("textarea").addClass("csc-mailform-field-textarea");
        //$(".csc-contact-box .csc-mailform-field").has("input.csc-mailform-submit").addClass("csc-mailform-field-submit");
    },

	/**
	 * Copy news from footer
	 */
    news: function() {
        var newsHtml = $(".news_footer a:first");
        $(".mainlinks .news li").append(newsHtml);

    },

	/**
	 * shuffle client logos
	 */
    shuffleClients: function() {

//      for (var i = 0; i < 3; i++) {
//        //var rand = Math.floor( Math.random() * (5+1) );
//        //$(".clientsWrap .clients li:eq("+rand+")").hide();
//      }

      var rowsNum = $(".clients .csc-textpic .csc-textpic-imagerow").length;
      var rand = Math.floor( Math.random() * (rowsNum) );
      $(".clients .csc-textpic .csc-textpic-imagerow:eq("+rand+")").fadeIn();

    },


	/**
	 * set IE Hover class
	 *
	 */
	setIEHover: function() {
		if (document.all) {
			$("#nav li").hoverClass("sfHover");
		}
	},

	// process mail form
	mailForm: function() {
    	// update email subject with page name where form located
    	var originalSubj = $("#mailformsubject").val();
		$("#mailformsubject").val(originalSubj + ' - ' + $("title").text());
		$("#mailformdeal").val(window.location.href);

		$(".csc-mailform-submit").removeAttr("disabled");
		$("#mailform").removeAttr("onsubmit");

		//
//		$("#mailform .mailform-field").each(function() {
//			var inputField = $('input[type="text"], textarea', this);
//			var message =  inputField.val();
//			if (inputField.text()) {
//            	message = inputField.text();
//			}
//			inputField.val('');
//			if (message != undefined && message != '') {
//				$("label", this).after('<em>' + message + '</em>');
//			}
//		});



		$("#mailform").submit(function() {
			var error = false;
            $.cookie("utm_content_email", null);

			$('.mailform-required input[type="text"], .mailform-required textarea, .mailform-required select').removeClass('error-field').each(function() {

				if ($(this).val().length < 1) {
                	$(this).addClass('error-field');
					error = true;
				}

				if ($(this).attr('name') == 'email' && !/^[a-z0-9_+.-]+\@([a-z0-9-]+\.)+[a-z0-9]{2,4}$/i.test( $(this).val() )) {
                	$(this).addClass('error-field');
					error = true;
				}
				
			if($(this).attr('name')=='Estimated_Budget_Per_Month')
			{
			   var selector = this;
			   var selectedValue = selector.options[selector.selectedIndex].value;
			   if(selectedValue=='')
			   {
			      $(this).addClass('error-field');
			      error = true;
			   }
			}

      /*if ($(this).attr('name') == 'email' && !error) 
      {
                	$.cookie("utm_content_email", $(this).val());
		  }*/
		  
		  if ($(this).attr('name') == 'email')
		  {
		              //var mForm = document.getElementById("mailform");
                	//mForm.action = mForm.action + '?utm_content=' + $(this).val();
                	if($(this).val()!="")
                	{
                	   /*var the_budget = "";
                	   if((obj = document.getElementById("mailformEstimated_Budget_Per_Month"))!=null)
                	   the_budget = document.getElementById("mailformEstimated_Budget_Per_Month").options[document.getElementById("mailformEstimated_Budget_Per_Month").selectedIndex].value;
                	   
                	   var arr_my_val = the_budget.match(/[\d\.]/g);
                     var the_new_budget = "";
      
                     if(arr_my_val != null)
                     {
                       for(var n=0; n<arr_my_val.length; n++)
                       {
                         the_new_budget += arr_my_val[n];
                       }
                     }
                     else
                     {
                       the_new_budget = "0"; 
                     }*/
                	   
                	   /*pageTracker._setVar($(this).val());*/
                	   _gaq.push(['_trackEvent', 'Contact', 'Email', $(this).val()]);
                	   //_gaq.push(['_trackPageview']);
                	}
		  }

                // compare with captcha session string
//				if ($(this).attr('name') == 'captchaResponse') {
//				    var $captchaField = $(this);
//                   	$captchaField.addClass('error-field');
//            		error = true;
//
//                    $.post("typo3conf/ext/captcha/captcha/async.php", { captchaResponse: $(this).val() },
//                        function(res) {
//                            if (res != 'error') {
//                            	$captchaField.removeClass('error-field');
//			            		error = false;
//                                $("#mailform").data("processed", "true");
//                                //$("#mailform").submit();
//                            }
//                        }, "text");
//				}


			});
			return !error;
		});
	},

	unDimBanners: function() {
    $("#slide-holder a").fadeIn();
	},

    setUtmContent: function() {
        var curLocation = window.location.href;
        var isThanksPage = curLocation.indexOf("thanks.html");
        /*if ( (isThanksPage != -1) && (curLocation.indexOf("utm_content") == -1) ) {
            window.location.href = window.location.href + '?utm_content=' + $.cookie("utm_content_email");
        }*/
	}


};

/**
 * Process on document ready
 */
$(document).ready(function() {
	$.BEM.caseTabs();
	//$.BEM.adjustTwitter();
	$.BEM.addNoFollow();
	$.BEM.fancyOrderedList();
	$.BEM.setIEHover();
	$.BEM.adjustContact();
	$.BEM.news();
	$.BEM.shuffleClients();
	$.BEM.mailForm();
	$.BEM.unDimBanners();
	$.BEM.setUtmContent();

});

