(function($) {
    $.loadPopup = function(options) {
	var defaults = {
	    maskElement : 'back-mask-div',
	    tgtElement: 'popup-target',
	    bgColour : '#808080',
	    loadingImg : '',
	    url: '',
	    loadCallback: function(el) {
	    }
	    
	};
	
	var opts = $.extend(defaults, options);
	
	var maskElement = $('#' + opts.maskElement);
	
	if (!maskElement.size()) {
	    
	    maskElement = $("<div id='" + opts.maskElement + "'></div>");
	    
	    maskElement.css(
			    {
				display: 'none', 
				    width: '100%', 
				    height: '100%', 
				    position: 'fixed', 
				    top: 0,
				    left: 0,
				    'z-index': 500, 
				    'background-color': opts.bgColour,
				    'background-image': opts.loadingImg ? 'url(' + opts.loadingImg + ')' : 'none',
				    'background-position' : 'center',
				    'background-repeat' : 'no-repeat',
				    opacity: 0.4,
				    filter: 'alpha(opacity=40)'
				    });
	    
	    maskElement.insertBefore($('body').children().first());
	    
	}
	
	maskElement.show();
	
	if (opts.url) {
	    
	    var tgtElement = $('#' + opts.tgtElement);
	    
	    if (!tgtElement.size()) {
		
		tgtElement = $("<div id='" + opts.tgtElement + "'></div>");
		
		tgtElement.css(
			       {
				   display: 'none',
				       width: '90%',
				       position: 'absolute',
				       top: 50,
				       left: 50,
				       'z-index': 503
				       });
		
		tgtElement.insertAfter(maskElement);
		
	    }
	    
	    tgtElement.load(opts.url, opts.data, 
			    function() {
				maskElement.css(
						{
						    'background-image': 'none'});
				
				tgtElement.show();
				
				opts.loadCallback(tgtElement, maskElement);
				
			    });
	    
	}
	
    };
    

    $.unloadPopup = function(options) {
	var defaults = {
	    maskElement : 'back-mask-div',
	    tgtElement: 'popup-target'
	};
	
	var opts = $.extend(defaults, options);
	

	var tgtElement = $('#' + opts.tgtElement);
	
	if (tgtElement) {
	    
	    tgtElement.hide();
	    
	}
	
	var maskElement = $('#' + opts.maskElement);
	
	if (maskElement) {
	    
	    maskElement.hide();
	    
	}
	
    };
    
})($);

$(document).ready(function() {
  $('#contact').click(function() {
	  $.loadPopup({ url: '/con' + 'tactform.' + 'html' });
  });
  
  $('.link-head img').each(function(index) {
      var fix_size = function(obj) {
        var dim = 150;
        var h = obj.height();
        var w = obj.width();
        var attr;
        if (h > dim || w > dim) {
          var attr = ( w > h ) ? 'width' : 'height';
          obj.attr(attr, dim);
        }
      };
      
      $(this).load(function() {
          fix_size($(this));
        });
      if ($(this).attr('complete')) {
        fix_size($(this));
      }
    });
});
    
