$(function() {
    $("#movecopy").hide();
    $(".wishlistLink").find("a").click(function() { return loadWishlistHelp(this); });

    if (window.location.href.indexOf("#articles") > -1) {
        showArticles();
    }

    // only allow numeric input in page textbox and don't allow a value over the max page to be entered
    $(".pageNum,.pageNumB").keydown(function(event) {
        if (event.keyCode != 8 && event.keyCode != 9 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39 // not esc, tab, del, left or right
            && !(event.keyCode >= 48 && event.keyCode <= 57) // not 0-9
            && !(event.keyCode >= 96 && event.keyCode <= 105)) // not numpad 0-9
        {
            event.preventDefault();
        }
    }).keyup(function(event) {
        // make sure value isn't more than max page
        if (parseInt($(this).val()) > parseInt($(".maxPage").text())) {
            event.preventDefault();
            $(this).val($(".maxPage").text());
        }
    }).keypress(function(event) {
        if (event.shiftKey) event.preventDefault();
    });
    $(".webfontoptionlink").click(function(e) {
        var offset = $(this).offset();
        var top = offset.top - 50;
        var left = offset.left - 500;
        if ($("#webfontInfoWrapper").offset().top == top) {
            $("#webfontInfoWrapper").hide();
        } else {
            $("#webfontInfoWrapper").css({ top: top, left: left }).show();
        }
        return false;
    });
    $('head').append('<link type="text/css" href="/assets/styles/webfonts.css" rel="stylesheet" />');
});

function showArticles() {
    $("#productsDiv").hide();
    $(".productFilters").hide();
    $(".productsTab").removeClass("ui-tabs-selected");
    $("#articlesDiv").show();
    //$("#articleResultsCount").show();
    $(".articlesTab").addClass("ui-tabs-selected");
    
    if(showArticles.called){ return false; }
    
    var query = $("#navSearchField").val();
    // Make it empty if default search value:
    if(query === 'enter font name or key terms'){ query = ''; }
    // If it does not exist, grab first key=value, e.g. ?foundry=URW, will search for URW:
    if(!query){ 
      query = window.location.search.split('&')[0].split('=')[1]; 
      if(query){ query = unescape(query.replace(/\+/gi, '%20')); }
    }
    // Exit if there is no query:
    if(!query){ return false; }

    showArticles.called = true;
    
	  $.ajax({ type: "GET", url: "/services/service.ashx", complete: displayResults, data: { method: "search_content", q: query }});
    
    if(window._gaAccount){
      var uri = window.location;
      var uriToTrack = uri.pathname + uri.search + '&article=true';
      if(window._gat){
        var pageTracker = _gat._createTracker(_gaAccount);
        pageTracker._trackPageview(uriToTrack);
      }else if(window._gaq){
        _gaq.push(['_setAccount', _gaAccount]);
        _gaq.push(['_trackPageview', uriToTrack]);
      }
    }
    
    return false;
}

function showArticlesMore(i, query){
  var container = $('#results-page-' +  i);
  container.html('<div class="results-loading">Loading...</div>');
  $.ajax({ type: "GET", url: "/services/service.ashx", complete: function(xhr){ displayResultsMore(xhr, container) }, data: { method: "search_content", q: query, p: i }});
}

function showProducts() {
    $("#articlesDiv").hide();
    $("#articleResultsCount").hide();
    $(".articlesTab").removeClass("ui-tabs-selected");
    $("#productsDiv").show();
    $(".productFilters").show();
    $(".productsTab").addClass("ui-tabs-selected");
    return false;
}

function displayResultsMore(xhr, container) {
  var xml = xhr.responseXML;
  var html = xml.getElementsByTagName('rsp')[0].firstChild.nodeValue;
  container.html(html);
  $('html').scrollTop(container.offset().top);
}

function displayResults(xhr, statusMessage) {
	 try {
		if (xhr.status === 200) {
			var xml = xhr.responseXML;
      var html = xml.getElementsByTagName('rsp')[0].firstChild.nodeValue;
      $('#articlesDiv').html(html);
      return;
		} else {
			logError(new Error("XmlHttpRequest.Status " + xhr.status + "\n" + statusMessage), "displayResults()");
		}
  }catch (e) {
		logError(e, "displayResults(catch)");
	}
}

function changeParameter(name, value) {
    // this function is in mtiglobal.js
    return changeQsValue(name, value, true);
}

function showMoreFormats(srcElmnt, topOffset, leftOffset, Pid, ProductId) {
	$("#additionalProductsWrapper").hide();
	if(srcElmnt == null){
	}
	else{
			$.ajax({
					url: "/services/service.ashx",
					data: { method: "get_formats", Pid: Pid, ProductId: ProductId},
					complete: function(xhr, status) {
			
						if ($("rsp", xhr.responseXML).attr("stat") == "ok") {
							$("#additionalProductsDiv").html($("content", xhr.responseXML).text());
							togglePopup("additionalProductsWrapper", srcElmnt, topOffset, leftOffset);
							if ($("#additionalProductsWrapper:visible").length > 0) {
								var divWidth = $("#additionalProductsDiv").width();
								var tblWidth = $("#moreProducts").width();
								if (divWidth < tblWidth) {
								    if (tblWidth > 650) {
								        tblWidth = 650;
								    }
									$("#additionalProductsDiv").width(tblWidth);
								}
							}
						}
						else {
							$("#additionalProductsWrapper").hide();
						}
					}
				});
			}
	return false;
}

function loadWishlistHelp(srcElmnt) {
		$(".wlnewfields").hide();
		togglePopup("wishlistWrapper", srcElmnt, 100, -50);	
		resetwlcreate();
		
		var siteID = 0;
		var siteidparentDiv = $(srcElmnt).parent().parent();
		siteID = siteidparentDiv.attr("class");
		$(".wlSiteID").val(siteID);
		var id = $(srcElmnt).parent().attr("ID");
		$("#wlCallingLink").val(id);
		$(".wlProductID").val(id);
		
		return false;
}
	
function showMore(targetId, srcElmnt) {
	var more = $("#" + targetId);
	if (more.hasClass("showing")) {
		more.removeClass("showing").slideUp("slow");
		$(srcElmnt).text(moreText);
	} else {
		more.addClass("showing").slideDown("slow");
		$(srcElmnt).text(lessText);
	}
	return false;
}
var moreText = '+ More...';
var lessText = '- Less...';

function swapThumbnail(posting)
{
	var txt = document.getElementById(posting + "_tbRenderText").value;	
	createCookie("MyRenderText", txt, 1);
	if (txt == "") return false;
	var ctlImg = posting + "_dlResults__ctl0_imgThumb"
	var img = document.getElementById(ctlImg);		
	var preURL = img.src; 	
	var vars = preURL.split("&");
	if(vars[1] != null)
	{	
		//var e = document.getElementById(posting + "_ddlResultsPerPage"); // select element
		var rstls =  "p2_PresentationModeControlsContainer__ctl1_count";
		var cnt = document.getElementById(rstls);
		var noOfResulsts = cnt.value;
		for (var i=0; i<noOfResulsts; i++)
		{
			var ctlImg = posting + "_dlResults__ctl" + i + "_imgThumb"
			var img = document.getElementById(ctlImg);		
			var preURL = img.src; 	
			var vars = preURL.split("&"); 		
			img.src = vars[5]+ '&' + vars[1] + '&' + vars[2] + '&' + vars[3] + '&' + vars[4] +'&' + vars[5]+ '&' + "&RenderText=" +  encodeURIComponent(txt);
		}
		return false;
	}
	return false;
}

function typeIt() {
  var txt = $("#tbRenderText").val();
  var images = $('img.sampleimg', '#SearchResultItems');
  var src, vars;
  createCookie("MyRenderText", txt, 1);
  // Update src for sample images:
  images.each(function() { 
      src = $(this).attr('src');
      vars = src.split('&');
      src = (txt ? "http://frs.monotypeimaging.com/ImagingService.ashx?imagetype=thumbnail&" + vars[1] + '&' + vars[2] + "&RenderText=" + encodeURIComponent(txt)
                 : "http://frs.monotypeimaging.com/CatalogImages/7/" + vars[2].split("=")[1] + ".gif?t=1&" + vars[1] + '&' + vars[2]);
      $(this).attr('src', src);
  });
    
  return false;
}

function resetTypeIt() {
    $("#tbRenderText").val('')
    return typeIt();
}
