
$(document).ready(function(){
	setSize();
	verticalAlign();
});

$(window).resize(function(){
	setSize();
	verticalAlign();
});

function setfocuselement(){
   if (document.getElementById('upctext') != null) {
      document.getElementById('upctext').focus();
  } 
}

function setSize () {
	
	// init
	var width = $(window).width();
	var height = $(window).height();
	
	// settings
	var minSize = 60;
	var maxSize = 170;
	var baseSize = 160;
	
	var baseWidth = 1440;
	var baseMargin = 100;
	var maxMargin = 175;
	var minContentWidth = 450;
	var minWidth = minContentWidth + (baseMargin * 2);
	
	// var setup
	var fontSize = null;
	var sizeDiff = null;
	var widthDiff = null;
	var widthGap = null;
	var widthRatio = null;
	var margin = null;
	var marginDiff = null;
	var marginGap = null;
	
	
	
	// set everything to they're minimum values
	if (width <= minWidth) {
		
		// font size
		fontSize = minSize;
		$('body').css('font-size', minSize+'%');
		
		// margins
		margin = Math.round( (width - minContentWidth) / 2 );
		if (margin > 0) {
			$('#content').css('margin-left', margin+'px');
			$('#content').css('margin-right', margin+'px');
		} else {
			$('#content').css('margin-left', '0px');
			$('#content').css('margin-right', '0px');
		};
		
	// set everything to they're maximum values	
	} else if (width >= baseWidth) {
		
		// font size
		fontSize = Math.round(baseSize * (width / baseWidth));
		if (fontSize >= maxSize) {
			fontSize = maxSize;
			$('body').css('font-size', maxSize+'%');
		} else {
			$('body').css('font-size', fontSize+'%');
		};
		
		// margins
		$('#content').css('margin-left', maxMargin+'px');
		$('#content').css('margin-right', maxMargin+'px');
		
	// figure out how big things are gonna be propertionately to min/base sizes	
	} else {
		
		// width ratios
		widthDiff = baseWidth - minWidth;
		widthGap = baseWidth - width;
		widthRatio = 1 - (widthGap / widthDiff);
		
		// font size
		sizeDiff = baseSize - minSize;
		sizeGap = Math.round(sizeDiff * widthRatio);
		fontSize = minSize+sizeGap;
		$('body').css('font-size', fontSize+'%');
		
		// margins
		marginDiff = maxMargin - baseMargin;
		marginGap = Math.round(marginDiff * widthRatio);
		$('#content').css('margin-left', (baseMargin+marginGap)+'px');
		$('#content').css('margin-right', (baseMargin+marginGap)+'px');
		
	};

	// scale font size to fit vertical view port
	// - doesn't work, and CRASHES most browsers :P
	/*
	var maxHeight = height - ($('#header').height() + 42 + 20);
	if ($('#content').height() > maxHeight && oldSize != '') {
		for (var i = fontSize; $('#content').height() > maxHeight || i >= minSize; i-10){
			$('body').css('font-size', i+'%');
		};
	};
	*/
}

function verticalAlign () {
	var viewHeight = $(window).height();
	var contentHeight = $('#content').height();
	var marginTop = (viewHeight / 2) - (contentHeight / 2) + 10;
	var minMargin = $('#header').height() + 42;
	if (marginTop > minMargin) {
		$('#content').css('margin-top', marginTop+'px');
	} else {
		$('#content').css('margin-top', minMargin+'px');
	};
}



















