﻿/*
jQuery.fn.manificaton_tool = function(options) {
    var defaults = {};
    var options = $.extend(defaults,options);
    return this.each(function() {
        
    });    
};
*/

function getDimensions() {
    var dimensions = {width: 0, height: 0};
    if (document.documentElement) {
        dimensions.width = document.documentElement.offsetWidth;
        dimensions.height = document.documentElement.offsetHeight;
    } else if (window.innerWidth && window.innerHeight) {
        dimensions.width = window.innerWidth;
        dimensions.height = window.innerHeight;
    }
    return dimensions;
}

(function($){  
  $.fn.magnification_tool = function(options) {
    var defaults = {
        image_path:"/windows/CampaignsFrameworks/rookies/images/gallery_preview_example1.jpg",
        large_height:201,
        large_width:912,
        small_height:184,
        small_width:512,
        title:"test title"
    };
    var options = $.extend(defaults,options);
    return this.each(function() {
        obj = $(this);  
        //init
        obj.css("height",eval(options.small_height+5)+"px");
        obj.css("overflow","hidden");
        obj.html("<img class='mag_small_image' src='"+options.image_path+"' width='"+options.small_width+"px' height='"+options.small_height+"px' alt='' title='' />");
        /*
        obj.css("background-image","url("+options.image_path+")");
        obj.css("width",options.small_width+"px");
        obj.css("height",options.small_height+"px");
        */
        
        var mag_preview = "<div class='mag_preview'>";
        mag_preview += "<div class='mag_preview_title'></div>";
        mag_preview += "<div class='mag_preview_close'><a href='#' id='btn-gallery_close'></a></div>";
        mag_preview += "<div class='mag_preview_image'></div>";
        mag_preview += "</div>";
        
        obj.html(obj.html()+mag_preview+"<div class='mag_glass' style='top:-24px;left:"+eval(options.small_width-22)+"px'></div>");
        //hover
        obj.hover(function() {$('.mag_glass',this).show();},function() {$('.mag_glass',this).hide();});
        //click
        //var opened = false;
        obj.click(function() {
            var opened = $('.mag_preview',this).css("display")=="none"?false:true;
            //hide all open previews
            $('.mag_preview').hide(); 
            //reset share
            if($.browser.mozilla && $.browser.version.substr(0,3) == "1.8") {
                $('.pagetool_container').css("position","absolute");
                $('.mag_small_image').show();
            }
            
            if(!opened) {
                //init main
                $('.mag_preview',this).css("height",eval(options.large_height+20+21)+"px");
                $('.mag_preview',this).css("width",eval(options.large_width+20)+"px");
                $('.mag_preview',this).css("margin-left","-"+eval((options.large_width+20)/2)+"px");
                var dim = getDimensions();
                
                if($.browser.mozilla && $.browser.version.substr(0,3) == "1.8") {
                    //position below featured videos
                    var min_top = $('.jcarousel-skin-ie7').position().top+$('.jcarousel-skin-ie7').height();
                    var center_top = eval(dim.height/2+$(document).scrollTop()-options.large_height/2);
                    var top = Math.max(min_top,center_top);
                    //hide share
                    $('.pagetool_container').css("position","static");
                    //hide previews if laying over
                    $('.mag_small_image').hide();
                }
                else {
                    var top = eval(dim.height/2+$(document).scrollTop()-options.large_height/2);
                }
                
                $('.mag_preview',this).css("top",top+"px");
                //init title
                $('.mag_preview_title',this).css("width",eval(options.large_width-21)+"px");
                $('.mag_preview_title',this).html(options.title);
                //init close
                $('.mag_preview_close',this).click(function() {
                    $('.mag_preview').hide();
                    if($.browser.mozilla && $.browser.version.substr(0,3) == "1.8") {
                        //reset share
                        $('.pagetool_container').css("position","absolute");
                        $('.mag_small_image').show();
                    }
                    return false;
                });
                //init image
                $('.mag_preview_image',this).css("background-image","url("+options.image_path+")");
                $('.mag_preview_image',this).css("background-position","top left");
                $('.mag_preview_image',this).css("height",options.large_height+"px");
                $('.mag_preview_image',this).css("width",options.large_width+"px");
                //show
                $('.mag_preview',this).show();
                //set status
            }
            else {
                //$('.mag_preview',this).hide();
            }
        });
    });    
  };
})(jQuery);


$(document).ready(function(){
    $('#lewis5_before').magnification_tool({
        image_path:"/uk/windows/CampaignsFramework/rookies/images/lewis5_before_full.jpg",
        large_height:480,
        large_width:640,
        small_height:185,
        small_width:247,
        title:"BEFORE"
    });
    $('#lewis5_after').magnification_tool({
        image_path:"/uk/windows/CampaignsFramework/rookies/images/lewis5_after_full.jpg",
        large_height:480,
        large_width:640,
        small_height:185,
        small_width:247,
        title:"AFTER"
    });
    $('#sam7_panorama_after').magnification_tool({
        image_path:"/uk/windows/CampaignsFramework/rookies/images/sam7_after_full.jpg",
        large_height:328,
        large_width:768,
        small_height:218,
        small_width:512,
        title:"AFTER"
    });
});