/**
 * Omniture sitetracker event handler object.
 * requires s_code.js to be loaded previously
 */
var Omni = {
    'trackMapInteraction' : function(a, product) {
        if (!a) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events";
        s.linkTrackEvents = "event18";
        s.events = "event18";
        if(product) {
            s.linkTrackVars = "events,products";
            s.products = product;
        }
        s.tl(a, 'o');
    },

    'trackUrlClickthrough' : function(a, listing_id, product) {
        if (!a || !listing_id) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar3";
        s.linkTrackEvents = "event9";
        s.events = "event9";
        s.eVar3 = listing_id;
        if(product) {
            s.linkTrackVars = "events,eVar3,products";
            s.products = product;
        }
        s.tl(a, 'e');
    },

    'trackRevealListingInfo' : function(a, listing_id, view_type, product) {
        if (!a || !listing_id || !view_type) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar3,eVar9,eVar10";
        s.linkTrackEvents = "event5";
        s.eVar3 = listing_id;
        s.eVar9 = "view " + view_type;
        s.eVar10 = listing_id;
        s.events = "event5";
        if(product) {
            s.linkTrackVars = "events,eVar3,eVar9,eVar10,products";
            s.products = product;
        }
        s.tl(a, 'o');
    },

    'trackListingEmailClick' : function(a, listing_id, product) {
        if (!a || !listing_id) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar3";
        s.linkTrackEvents = "event11";
        s.events = "event11";
        s.eVar3 = listing_id;

        if(product) {
            s.linkTrackVars = "events,eVar3,products";
            s.products = product;
        }
        s.tl(a, 'o');
    },

    'trackSitetool' : function(a, sitetool, type, product) {
        if (!a || !sitetool || !type) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar20,prop20";
        s.linkTrackEvents = "event12";
        s.eVar20 = type + " " + sitetool;
        s.prop20 = s.eVar20;
        s.events = "event12";
        if(product) {
            s.linkTrackVars = "events,eVar20,prop20,products";
            s.products = product;
        }
        s.tl(a, 'o');
    },

    'trackListingGalleryImageClick' : function(a, listing_id, category_id, photo_id, product) {
        if (!a || !listing_id || !photo_id) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar18,prop30,prop31,prop32,eVar31,eVar32";
        s.linkTrackEvents = "event8";
        s.events="event8";
        s.prop30 = listing_id;
        s.prop31 = category_id;
        s.prop32 = photo_id;
        s.eVar31 = s.prop31;
        s.eVar32 = s.prop32;
        s.eVar18= "photo";
        if(product) {
            s.linkTrackVars = s.linkTrackVars + ",products";
            s.products = product;
        }
        s.tl(a, 'o');
    },

    'trackGetPublicationClick'  : function(a) {
    	if(!a) return;
    	s = s_gi(s_account);
    	s.linkTrackVars = "events";
    	s.linkTrackEvents = "event10";
	    s.events="event10";
    	s.tl(a, 'o');
    },

    'trackLuxDmCouponView' : function(a, channel, region, product, product_type, listing_id) {
        if (!a || !region || !channel || !listing_id || !product) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,products,prop1,hier1,pageName,channel,prop2,prop7,eVar7,prop8,eVar8,eVar14,eVar16";
        s.linkTrackEvents = "event15";
        s.events = "event15";
        s.products = product;
        s.channel = channel;
        s.pageName = s.channel + ':resources:luxury coupon view';
        s.prop1 = s.channel;
        s.prop2 = s.channel + ':resources';
        if ('home' != s.channel) {
            s.hier1 = 'home|' + s.channel + '|resources|luxury coupon view';
        } else {
            s.hier1 = 'home|resources|luxury coupon view';
        }
        s.prop7 = region;
        s.eVar7 = s.prop7;
        s.prop8 = listing_id;
        s.eVar8 = s.prop8;
        s.eVar14 = "luxury coupon view";
        s.eVar16 = product_type;
        s.tl(a, 'o');
    },

    'trackLuxDmCouponPrint' : function(a, product) {
        if (!a || !product) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,products,prop20";
        s.linkTrackEvents = "event12";
        s.events = "event12";
        s.products = product;
        s.prop20 = "luxury coupon print";
        s.tl(a, 'o');
    },

    'trackLuxDmCouponEmail' : function(a, product) {
        if (!a || !product) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,products,prop20";
        s.linkTrackEvents = "event12";
        s.events = "event12";
        s.products = product;
        s.prop20 = "luxury coupon email";
        s.tl(a, 'o');
    },

    'trackVideoplayerClick' : function(listing_id, category_id, video_id, product) {
        if (!listing_id || !video_id) return;
        s = s_gi(s_account);
        s.linkTrackVars = "events,eVar18,prop30,prop31,prop32,eVar31,eVar32";
        s.linkTrackEvents = "event8";
        s.events="event8";
        s.prop30 = listing_id;
        s.prop31 = category_id;
        s.prop32 = video_id;
        s.eVar31 = s.prop31;
        s.eVar32 = s.prop32;
        s.eVar18= "video";
        if(product) {
            s.linkTrackVars = s.linkTrackVars + ",products";
            s.products = product;
        }
        s.tl(null, 'o');
    }
}