/*
	Based on Background Stretcher jQuery Plugin by ajaxBlender.com
*/

/* Modernizr 2.0.6 (Custom Build) | MIT & BSD
 * Contains: backgroundsize | testprop | testallprops | domprefixes
 */
window.Modernizr=function(a,b,c){function z(a,b){var c=a.charAt(0).toUpperCase()+a.substr(1),d=(a+" "+m.join(c+" ")+c).split(" ");return y(d,b)}function y(a,b){for(var d in a)if(j[a[d]]!==c)return b=="pfx"?a[d]:!0;return!1}function x(a,b){return!!~(""+a).indexOf(b)}function w(a,b){return typeof a===b}function v(a,b){return u(prefixes.join(a+";")+(b||""))}function u(a){j.cssText=a}var d="2.0.6",e={},f=b.documentElement,g=b.head||b.getElementsByTagName("head")[0],h="modernizr",i=b.createElement(h),j=i.style,k,l=Object.prototype.toString,m="Webkit Moz O ms Khtml".split(" "),n={},o={},p={},q=[],r,s={}.hasOwnProperty,t;!w(s,c)&&!w(s.call,c)?t=function(a,b){return s.call(a,b)}:t=function(a,b){return b in a&&w(a.constructor.prototype[b],c)},n.backgroundsize=function(){return z("backgroundSize")};for(var A in n)t(n,A)&&(r=A.toLowerCase(),e[r]=n[A](),q.push((e[r]?"":"no-")+r));u(""),i=k=null,e._version=d,e._domPrefixes=m,e.testProp=function(a){return y([a])},e.testAllProps=z;return e}(this,this.document);

(function($){
    var container = null;
    var allImgs = '';

    $.fn.bgStretcher = function(settings){
        settings = $.extend({}, $.fn.bgStretcher.defaults, settings);
        $.fn.bgStretcher.settings = settings;

        function _build(){
            console.log($(window).width());
            if(settings.image.size){ return; }
             if ($(window).width()>settings.minWidth){
                _genHtml();
             }
            container = $('#' + settings.imageContainer);			
            if(container.length){ 
                $(window).resize(_resize);
                
                _resize();
            }
        };

        function _resize(){
                var winW = $(window).width();
                var winH = $(window).height();
                var imgW = 0, imgH = 0;
                //	Update container's height
                container.width(winW);
                container.height(winH);

                var initW = settings.imageWidth, initH = settings.imageHeight;
                var ratio = initH / initW;

                imgW = winW;
                imgH = winW * ratio;

                if(imgH < winH){
                        imgH = winH;
                        imgW = imgH / ratio;

                }

                $(allImgs).width(imgW).height(imgH);

        };

        function _genHtml(){
            console.log("test");
            
            var code;
            if (Modernizr.backgroundsize){
                code+= '<div id="' + settings.imageContainer + '" class="bgstretcher"></div>';
                $(code).appendTo('body');
                $("#" + settings.imageContainer).css("background-image", "url('"+settings.image+"')");
                $("#" + settings.imageContainer).css("background-repeat", "no-repeat");
                $("#" + settings.imageContainer).css("background-attachment", "fixed");
                $("#" + settings.imageContainer).css("background-size", "cover");
            }

            else{
                //Code for browser that do not support CSS3
                code = '<div id="' + settings.imageContainer + '" class="bgstretcher">';
                code += '<img src="' + settings.image + '" alt="backgroundimage" class="bgstretcher"/>';
                code+= '</div>';
                $(code).appendTo('body');
            }
            

            };

            /*  Start bgStretcher  */
            _build();
    };

    /*  Default Settings  */
    $.fn.bgStretcher.defaults = {
            imageContainer:             'background',
            image:                      '',
            imageWidth:                 1024,
            imageHeight:                768,
            minWidth:                   970

    };
    $.fn.bgStretcher.settings = {};
})(jQuery);
