/*global window document alert aObj JSONscriptRequest $ */

// MAKING THESE GLOBAL SO WE CAN CALL THEM INSIDE OF TRIGGERSLIDER.JS
var MD, MDLen;
// global variable for marketplace impression tracking
var targetedMarketplaceTracking = [];

function targetedMarketplaceImpression(t)
{
	var marketID = $('#slider li.sliderLI:eq(' + t + ')').attr('id');
	if ( jQuery.inArray(marketID, targetedMarketplaceTracking) == -1 )
	{
		targetedMarketplaceTracking.push(marketID);
		pageTracker._trackEvent('Targeted Marketplace', 'Impression', marketID);
	}
}
        
function marketplaceDeal_callback(JSONData) {
    /*---------------------------------------------------------------
     * this script is written to randomly display all of the 
     * marketplace deals (hide the vid tab if no video)
     * two arrays are marketplaceDeal & videoDeal
     * -------------------------------------------------------------*/
    
    if ( JSONData.marketplaceDeal.length > 0 )
    {
        MD = JSONData.marketplaceDeal;
        MDLen = MD.length;
        
        var VD = JSONData.videoDeal;
		var VDLen = VD.length;

        // load javascript and process
        var head = document.getElementsByTagName("head")[0];
		var jQTools = document.createElement("script");
			jQTools.setAttribute("charset", "UTF-8");
			jQTools.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/jquery.tools.min.js");
			jQTools.setAttribute("type", "text/javascript");
		head.appendChild(jQTools);
        var ezSlider = document.createElement("script");
            ezSlider.setAttribute("charset", "UTF-8");
            ezSlider.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/mktad.easySlider.js");
            ezSlider.setAttribute("type", "text/javascript");
        var jqtabs = document.createElement("script");
            jqtabs.setAttribute("charset", "UTF-8");
            jqtabs.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/jqtabs.js");
            jqtabs.setAttribute("type", "text/javascript");
            head.appendChild(ezSlider);
            head.appendChild(jqtabs);
        var trigger = document.createElement("script");
            trigger.setAttribute("charset", "UTF-8");
            trigger.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/mktad.triggerSlider.js");
            trigger.setAttribute("type", "text/javascript");
            head.appendChild(trigger);
		
        $('head').append('<link rel="stylesheet" href="http://widgets.fccinteractive.com/mktad/mktad.css" type="text/css" media="screen" />');

            // create slider div
            var slider = $("<div></div>").attr("id", "slider");
                // create marketplacslide unordered list
                var slideOL = $("<ol></ol>").attr("style", "margin:0;padding:0;height:240px;");

                /*---------------------------------------------------------------
                 * create a list that randomly will sort the deals
                 * -------------------------------------------------------------*/
                var randomObj,id,loc_id,loc_marketid,prop_id,loc_name,headline,start_date,loc_logo,image;
                var randomList = [];
                var randomCount = 0;
                while ( randomList.length < MDLen ) 
                {
                     randomObj = Math.floor( Math.random() * MDLen ); // generates random number between 0 and MDLen
                     // search randomList for randomObj
                     if ( jQuery.inArray(randomObj, randomList) == -1 ) // if randomObj not found in randomList
                     { 
                         randomList[randomCount] = randomObj; // add randomObj to randomList array
                         randomCount++ ; // increment the count

                         /*---------------------------------------------------------------
                          * now to build the widget with the marketplaceDeal and videoDeal
                          * data (the randomList will make sure we do not duplicate
                          * -------------------------------------------------------------*/
                         id = MD[randomObj].id;
                         loc_id = MD[randomObj].loc_id;
                         loc_marketid = MD[randomObj].loc_marketid;
                         prop_id = MD[randomObj].prop_id;
                         loc_name = MD[randomObj].loc_name;
                         headline = MD[randomObj].headline;
                         start_date = MD[randomObj].start_date;
                         loc_logo = MD[randomObj].loc_logo;

                         if ( MD[randomObj].image )
                         {
                             image = MD[randomObj].image;
                         }
                         else
                         {
                             image = '';
                         }
			
			if( MD.length == 1 )
			{
				targetedMarketplaceTracking.push(id);
				$(document).ready(function() {
					pageTracker._trackEvent('Targeted Marketplace', 'Impression', id);
				});
			}
                         var vid_filename = "";
                         if (JSONData.videoDeal.length > 0)
                         {
                             // will loop through the
                             for ( var i = 0; i < VDLen; i++ )
                             {
                                 if ( VD[i].loc_marketid == loc_marketid )
                                 {
                                     vid_filename = VD[i].vid_filename;
                                     break;
                                 }
                             }
                         }

                         var slideLI = $('<li></li>').addClass('sliderLI').attr({'id':id,'style':'width:298px;height:240px;'});

                             var navbar = $('<div></div>').addClass("tabbed_area");

                                 var navList = $('<ul></ul>').addClass("tabs");

								if ( loc_id != '' && vid_filename != '')
								{
									var videoDirectory1 = vid_filename.substring(0,1);
									var videoDirectory2 = vid_filename.substring(1,2);
									var videoDirectory3 = vid_filename.substring(2,3);
									var overlay = $('<div></div>').attr('id', 'overlay' + loc_id).addClass('overlay').html('<a class="player" href="http://media03.i29.net/hqprod/streams/_definst_/' + videoDirectory1 + '/' + videoDirectory2 + '/' + videoDirectory3 + '/' + vid_filename + '">&nbsp;</a>');
									$("body").append(overlay);
									
									var videoLI = $('<li></li>')
										.append(
											$('<a onClick="pageTracker._trackEvent(\'Targeted Marketplace\', \'Video Click\', \''+ vid_filename +'\');" rel="#overlay' + loc_id +'" href="javascript:void(0);">Video</a>') 
										);
									navList.append(videoLI);
								}

								var sendLI = $('<li></li>')
									.append(
										$('<a>Send</a>')
											.attr( {title: "SMS Deals", href: "/event/mobile_deal/mkt_id/" + id + "/loc_id/" + loc_id} )
											.click( function() {
												pageTracker._trackEvent('Targeted Marketplace', 'Share Click', id);
											})
									);
								navList.append(sendLI);
								
								var printLI = $('<li></li>')
									.append(
										$('<a>Print</a>')
											.attr( {title: "Print" + id, href: "/event/coupon/mkt_id/" + id + "/loc_id/" + loc_id} )
											.click( function() {
												pageTracker._trackEvent('Targeted Marketplace', 'Print Click', id);
											})
									);
								navList.append(printLI);
                                
							$(navbar).append(navList);
						$(slideLI).append(navbar);

                             var offer = $('<div></div>')
                                     .attr("id", "offer" + id)
                                     .addClass("content");
					
                                 var mktboxTB = $('<table class="mktboxTB" cellpadding="0" cellspacing="0"></table>');		
                                 if ( image !== "" )
                                 {
                                     /* -------------------------------------------------------------
                                      * CWelle and EHarris requested 2009-06-17
                                      * build path to static logo using image name
                                      * -----------------------------------------------------------*/
                                     var directory1 = image.substring(0,1);
                                     var directory2 = image.substring(1,2);
                                     var directory3 = image.substring(2,3);

                                     var imagePath = directory1 + "/" + directory2 + "/" + directory3 + "/" + image;
                                     
                                     $(mktboxTB).append(
                                         $('<tr><td align="center" valign="middle" height="100"><a href="/event/details/loc_id/' + loc_id + '" onclick="pageTracker._trackEvent(\'Targeted Marketplace\', \'Offer Click\', \''+ id +'\');"><img src="http://marketplace.fccinteractive.com/logos/' + imagePath + '" class="noBorder" alt="' + loc_name + '" /></a><br /><span class="mkt_deal">' + loc_name + '</span></td></tr>')
                                     );
                                 }
                                 else
                                 {
                                     $(mktboxTB).append(
                                         $('<tr><td align="center" valign="middle" height="100"><div class="mkt_deal">' + loc_name + '</div></td></tr>')
                                     );
                                 }
					
                                     $(mktboxTB).append(
                                         $('<tr><td align="center" valign="middle" class="mkt_deal"><a href="/event/details/loc_id/' + loc_id + '" onclick="pageTracker._trackEvent(\'Targeted Marketplace\', \'Offer Click\', \''+ id +'\');">' + headline + '</a></td></tr>')
                                     );
					
                                 $(offer).append(mktboxTB);
                         $(slideLI).append(offer);

                    $(slideOL).append(slideLI);
		
                    } // end of if ( jQuery.inArray() == -1 )
                } // end of while ( randomList.length < MDLen )
                $(slider).append(slideOL);

            $("#marketplaceDeal_widget").append(slider);

			var flowplayer = document.createElement("script");
				flowplayer.setAttribute("charset", "UTF-8");
				flowplayer.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/flowplayer-3.1.4.min.js");
				flowplayer.setAttribute("type", "text/javascript");
				head.appendChild(flowplayer);
				
			var overlayScript = document.createElement("script");
				overlayScript.setAttribute("charset", "UTF-8");
				overlayScript.setAttribute("src", "http://widgets.fccinteractive.com/mktad/js/mktad.videoOverlay.js");
				overlayScript.setAttribute("type", "text/javascript");
				head.appendChild(overlayScript);
    }
}
