﻿/*	

    Gabriels Technology Image Proxy Server Management.
    Created 01/2011
    
*/

    if (typeof AppVirtualPath == 'undefined') AppVirtualPath = '/';
    
    AppRootUrl = AppVirtualPath;

    var imageReload_t_interval_ms = 500;
    var imageReload_t_max_try = 20;
    var imageReload_t_loading_image = 'images/loading.gif';
    var imageReload_t_no_image = 'images/nophoto.gif';
    
    imageReload_t_loading_image = AppVirtualPath + imageReload_t_loading_image; 
    imageReload_t_no_image = AppVirtualPath + imageReload_t_no_image;
    $(document).ready(function (event) {
        $('div[onload]').each(function(index){
            var ol = '';
            var attrs = $(this)[0].attributes;
            //getAttribute will not work on chrome, so let's loop
            for(var i=0;i<attrs.length;i++) {
                if (attrs[i].nodeName == 'onload')
                    ol = attrs[i].nodeValue;
            }
            eval(ol.replace(/^func.*{/i, '').replace(/}\s*$/i, ''));
        });
    });
    
    function gtsImgLoad(obj, src)
    {
        LoadListingImage(obj, src);
    }
    
    function imageReload_setImage(isBG, imageObj, imageUrl)
    {
        if (isBG)
        {
            imageObj.css('background-image', 'url("' + imageUrl + '")');
        }
        else
            imageObj.attr('src', imageUrl);
    }
   
    function LoadListingImage(obj, src) 
    {
        $(obj).removeAttr('onload');
        $(obj).removeAttr('onerror');
        $(obj).unbind('error');
        var local_proxy_src = urlParam('ImageURL', src); 
        var imgObj = new Image();
        var isBackground = $(obj).is('div');
        
        imgObj.onerror = function(){ imgObj.onerror = function(){$(imgObj).unbind('error'); imgObj.onerror = null; $(obj).attr('notfound', imgObj.src); imgObj.src = imageReload_t_no_image;}; imgObj.src = local_proxy_src;};// 
            
        imgObj.onload = function(){imageReload_setImage(isBackground, $(obj), imgObj.src); var h = urlParam('H', src); var w = urlParam('W', src); if (h != '') $(obj).attr('height', h); if (w != '') $(obj).attr('width', w);};
            
        imgObj.src = src;
    }

    function urlParam(name, url){
        var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(url);
        if (!results) { return ''; }
        return decodeURIComponent(results[1].replace(/\+/g, " ")) || 0;
    }

