﻿if (typeof (MRM) == undefined || !MRM) var MRM = {}

MRM.settings = {
    ajaxLoader: '/images/ajax-loader.gif',
    ajaxContentSelector: '#accordionContent',
    ajaxLoaderClass: 'ajaxLoader',
    ajaxLoaderId: 'ajaxLoaderAnim'
}

$(document).ready(function() {
    // Start Tweets
    MRM.StartTweets();
    //MRM.initShowreelLink();

    /*
    * accordion options and default values: ajaxLoader: 'images/ajax-loader.gif',
    * contentClass: 'accordionContent',
    * linkClass: 'accordionLink',
    * ajaxContentSelector: '#accordionContent',
    * --------------------------------------------
    * Use: $('.accordion').accordion({ contentClass: 'newAccordionContent' });  
    */
    $(".sfx-hidden").removeClass("sfx-hidden");
    $('#accordion').accordion({ accordionTriggerClass: ['.accordionTrigger'], ajaxLoader: MRM.settings.ajaxLoader, ajaxContentSelector: MRM.settings.ajaxContentSelector, ajaxLoaderClass: MRM.settings.ajaxLoaderClass, ajaxLoaderId: MRM.settings.ajaxLoaderId }, function() {
        MRM.subItemLoader();
        $(".sfx-hidden").removeClass("sfx-hidden");
        if ($(".open #map_canvas").is(":exists")) {
            MRM.googleMap("map_canvas", "<strong>MRM London</strong><br />76-80 Southwark Street<br />London<br />SE1 0PN<br />0207 278 3856<br /><br /><a href='http://www.mrmlondon.co.uk'>www.mrmlondon.co.uk</a>");
        }
    });
    MRM.menuAnimation([".accordionTrigger", "#accordion"]);

    //    $("#bodyContent a").each(function() {
    //        $(this).click(function(e) {
    //            if ($(this).attr("href") != "") {
    //                window.location.hash = $(this).attr("href");
    //                return false;
    //            }
    //        })
    //    });


});

MRM.subItemLoader = function() {
    $('.leftnav li a, .newsummary a').each(function() {
        var href = $(this).attr("href");
        href += " " + MRM.settings.ajaxContentSelector;
        $(this).click(function() {
            $(this).parents(".container").parents("li").find("h3").after('<div id="' + MRM.settings.ajaxLoaderId + '" class="' + MRM.settings.ajaxLoaderClass + '">&nbsp;<img src="' + MRM.settings.ajaxLoader + '" alt="Loading..." /></div>');
            if ($(this).parent('li').length) {
                targetEl = $(this).parents(".container").parent();
            } else {
                targetEl = $(this).closest('.container');
                targetEl.children(':not(ul)').remove();
                targetEl.append('<span></span>');
                targetEl = targetEl.find('span');
            }
                     
            targetEl.load(href, { ajax: new Date().getTime() }, function(responseText, textStatus, XMLHttpRequest) {
                if (textStatus == "error") {
                    alert("Error while loading content. Please try again");
                    return false;
                }
                if (!$(this).parent('li').length) {
                    targetEl.find('.container').removeClass('container');
                }
                $(".sfx-hidden").removeClass("sfx-hidden");
                $(this).data("height", $(this).css({ height: 'auto' }).height());
                $(this).css({ height: $(this).height() });
                MRM.titleMetaChanger(responseText);
                $(this).data("docTitle", document.title);
                $("#" + MRM.settings.ajaxLoaderId).remove();
                $(MRM.settings.ajaxContentSelector).removeAttr("id");
                MRM.subItemLoader();


//                $(".container a").each(function() {
//                    $(this).click(function(e) {
//                        window.location.hash = $(this).attr("href");
//                        return false;
//                    })
//                });                
            });
            return false;
        });
    });

}

MRM.titleMetaChanger = function(responseText) {
    try {
        //change browser title
        var title = ((new RegExp(/<(title)>([\r\n\W\w]+)<(\/title)>/)).exec(responseText))[2];
        document.title = $.trim(title);

        //change description metadata
        var metaDescription = ((new RegExp("<meta name=\"Description\" content=\"(.+?)\"\/>")).exec(responseText))[1];
        $("meta[name=description]").attr("content", metaDescription);
    }
    catch (err) { }
}

MRM.menuAnimation = function(o) {
    var functionArray = [];

    for (var i = 0; i < o.length; i++) {
        var menuSelector = o[i];

        $(menuSelector).children("li").find("a:first").each(function() {
            var _temp = $(this);
            $(this).data("color", $(this).css("color"));
            functionArray.push(function() { _temp.animate({ color: '#4F00EE' }, 500).animate({ color: '#b69bee' }, 250).animate({ color: _temp.data("color") }, 500).queue(function() { $(this).removeAttr("style") }); });
        });
    }

    var counter = 0;

    var animation = function() {
        if (counter >= functionArray.length) { return false; }
        functionArray[counter]();
        counter++;

        var setAnimInterval = setTimeout(arguments.callee, 150);
    } ();
}

MRM.googleMap = function(o, infoContent) {
    var latlng = new google.maps.LatLng(51.505183, -0.096678);
    var options = {
        zoom: 15,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById(o), options);

    var mrmLogo = new google.maps.MarkerImage('images/mrm.png',
                new google.maps.Size(33, 38),
                new google.maps.Point(0, 0),
                new google.maps.Point(16, 38));

    var mrmShadow = new google.maps.MarkerImage('images/mrm_shadow.png',
                new google.maps.Size(69, 4),
                new google.maps.Point(0, 0),
                new google.maps.Point(16, 4));

    var mrmMarker = new google.maps.Marker({
        position: latlng,
        map: map,
        icon: mrmLogo,
        shadow: mrmShadow,
        title: 'MRM London'
    });
    var infowindow = new google.maps.InfoWindow({
        content: infoContent,
        size: new google.maps.Size(200, 140)
    });
    google.maps.event.addListener(mrmMarker, 'click', function() {
        infowindow.open(map, mrmMarker);
    });
    infowindow.open(map, mrmMarker);
}


MRM.GAFlashBanner = function(url) {
    try {
        //exampl url /case-studies/conspiracy-game.aspx
       
        // Break the url returned by flash up into category and action
        var category = url.substr(1);
        category = category.substr(0, category.indexOf('/'));
        var action = url.slice(url.lastIndexOf('/') + 1, url.lastIndexOf('.'));
        //use google analytics function	
        pageTracker._trackEvent(category, action, 'Banner');
        document.location = url;
    }
    catch (err) { }
}

MRM.StartTweets = function() {
    var fadeSpeed = 300;
    var timer = 9000;
    if ($("#tweetList").length > 0) {
        var items = $("#tweetList");
        items.children('li').hide();
        items.find('li:first').addClass('active').show();
        if (items.children('li').length > 1) {
            var timer = setInterval(function() {
                if (items.find('li.active').next().length > 0) {
                    items.find('li.active').removeClass('active').fadeOut(fadeSpeed, function() {
                        $(this).next().addClass('active').fadeIn(300);
                    });
                } else {
                    items.find('li.active').removeClass('active').fadeOut(fadeSpeed, function() {
                        items.find('li:first').addClass('active').fadeIn(fadeSpeed);
                    });
                }
            }, timer);
        };
    };
}

MRM.initShowreelLink = function() {
    if ($('#introarea').length > 0) {
        $('<a/>').attr('href', '#').text('VIEW OUR SHOWREEL').css('display', 'block').appendTo('#introarea div.intro').click(function(e) {
            e.preventDefault();
            MRM.initShowreel();
        });
    };
}

MRM.initShowreel = function() {
    if ($('#showreel_holder').length < 1) {
        $('#ctl00_ctl00_FlashHeader').slideUp(800, function() {
            $('<div id="showreel_holder"><div id="showreel"></div></div>').insertBefore('#introarea');
            $('<a href="#" />').attr('id', 'showreel_close').insertBefore('#introarea').click(function(e) {
                e.preventDefault();
                $(this).slideUp('fast', function() {
                    MRM.closeShowreel();
                    $(this).remove();
                });
            });
            var flashvars = { videoURL: "/flash/showreel/flv/London_Reel_MRM_1_1.flv", videoWidth: 940, videoHeight: 530 };
            var params = { menu: "false", scale: "noScale", allowFullscreen: "false", allowScriptAccess: "always", bgcolor: "#ffffff", wmode: 'transparent' };
            var attributes = { id: "mrm-flash-showreel" };
            swfobject.embedSWF("/flash/showreel/videoPlayer.swf", "showreel", "940", "530", "9.0.0", "expressInstall.swf", flashvars, params, attributes);
            $('#showreel_holder').css('height', 1).animate({ height: 530 }, 1000);
        });
    };
}

MRM.closeShowreel = function() {
    if ($('#showreel_holder').length > 0) {
        $('#showreel_holder').animate({ height: 1 }, 600, function() {
            $(this).remove();
            $('#ctl00_ctl00_FlashHeader').slideDown();
        });
    };
}

