﻿$(document).ready(function() {
    setDomainLinks(['#buyersTab a', '#sellersTab a', '#buyAdvice', '#sellAdvice', '#buy-valuation', '#buy-inspection', '#buy-finance', '#buy-insurance']);
    setOutboundTrackingItems([
		['.poweredBy', '/Outbound/Autotrader/Links/']
		, ['#footer li a', '/Outbound/AA/Footer/']
		, ['#footer-contact', '/Outbound/AA/Footer/']
		, ['#footer-terms', '/Outbound/AA/Footer/']
		, ['#footer-privacy', '/Outbound/AA/Footer/']
		, ['#tips-valuation', '/Outbound/AA/Valuation/']
	]);
    if (setAlternativeLayout) {
        setFreeAdsLayout(setAlternativeLayout);
    }
});

function setFreeAdsLayout(enableFreeAds) {
    if (enableFreeAds && enableFreeAds.toLowerCase() == "true")
    {
        $("div#buying").addClass("free");
        $("#page.sell").removeClass("sell").addClass("sellfree");
        $("#page #sellSteps #step2 h3").css("background", "url(../../content/images/freestar.gif) no-repeat right center");

        var inputcontrol = $('input#submitListing');
        if (inputcontrol != null && inputcontrol.attr('src') != null) {
            $('input#submitListing').attr('src', $('input#submitListing').attr('src').toLowerCase().replace('placeadbtnpayment', 'placeadbtnsubmit'));
            $('input#submitListing').attr('alt', 'Place Free Ad');
        }
    }
}

function setOutboundTrackingItems(items) {
	for (var i = 0; i < items.length; i++) {
		setOutboundTracking(items[i][0], items[i][1]);
	}
}

function setOutboundTracking(selector, path) {
	$(selector).click(function() {
		pageTracker._trackPageview(path + analyticsPageName);
		window.open(this.href, this.target);
		return false;
	});
}

function setDomainLinks(selectors) {
	for (var i = 0; i < selectors.length; i++) {
		setDomainLink(selectors[i]);
	}
}

function setDomainLink(selector) {
	$(selector).click(function() {
		window.open(pageTracker._getLinkerUrl(this.href), this.target);
		return false;
	});
}

$(function() {
	$("#listView, #galleryView").click(function() {
		if (!$(this).hasClass("selected")) switchView($(this).attr("id"));
		return false;
	});

	$("a.print").click(function() {
		window.print();
		return false;
	});

	$("#page.sell:first-child h1").click(function() { window.location.href = "/PlaceAd/New" }).css("cursor", "pointer");
	$("#page.sellfree:first-child h1").click(function() { window.location.href = "/PlaceAd/New" }).css("cursor", "pointer");
	$("#contentHeader #buying").click(function() { window.location.href = "/PlaceAd" }).css("cursor", "pointer");
	$("#contentHeader #sellAdvice").click(function() { window.open($("#contentHeader #sellAdvice")[0].href); return false; }).css("cursor", "pointer");
});

// call this to switch between list and gallery
function switchView(type) {
    $('#listResults').toggleClass('gallery');
    $('#listView').toggleClass('selected');
    $('#galleryView').toggleClass('selected');

    // ajax call to persist search view
    $.ajax({
    	url: switchUrl + type.replace("View", ""),
    	type: 'post',
    	success: function(xhr) {  },
    	error: function(xhr) {  }
    });
    
    // if IE7 reload page as well since CSS not redrawn correctly
    IE7 = (navigator.appVersion.indexOf('MSIE 7.')==-1) ? false : true;
    if(IE7) window.location.reload();

    return false;
};

// this method is called when we change the sort order or the page size
function refreshView() {

    var sortSelect = $("#sortSelect");
    var sizeSelect = $("#sizeSelect");
    var sortType = sortSelect[0].options[sortSelect[0].selectedIndex].value;
    var sizeType = sizeSelect[0].options[sizeSelect[0].selectedIndex].value;

    var selection = $("#currentSelection");
    var currentSelection = selection[0].value;

    window.location = '/Search/RefreshView/' + sortType + '/' + sizeType + '?' + currentSelection;
};

// set up event handlers for changing sort and page size
$(function() {
	$("#sortSelect").change(function() { refreshView() });
	$("#sizeSelect").change(function() { refreshView() });
});

$.preloadCssImages();

$(
    function() {
        $('.rollover').hover(
                    function() { // Change the input image's source when we "roll on"
                        t = $(this);
                        t.attr('src', t.attr('src').replace(/([^.]*)\.(.*)/, "$1R.$2"));
                    },
                    function() {
                        t = $(this);
                        t.attr('src', t.attr('src').replace('R\.', '.'));
                    }
             );
    }
)