if(!tvh) var tvh = {};

tvh.string_format = function(stringPattern, stringArray) {
	var returnString = stringPattern;
	for (i = 0; i < stringArray.length; i++) {
		returnString = tvh.string_replace_all(returnString, "{" + i + "}", stringArray[i]);
	}
	return returnString;
}

tvh.string_replace_all = function(baseString, oldString, newString) {
	baseString = (new String(baseString)).split(oldString).join(newString);
	return baseString;
}
tvh.Site = (function(){
	function initialise(){
		var contactForm = jQuery('#contact-form');
		if(contactForm.length != 0) {
			bindContactForm(contactForm);
		}
		
		var pagingContainer = jQuery('#paging-container');
		if(pagingContainer.length != 0) {
			var pager = new tvh.Pager(pagingContainer);
		}
		
		var calculators = jQuery('#content a.calc');
		if(calculators.length != 0) {
			bindCalculators(calculators);	
		}
	}
	function bindContactForm(f){
		var required = f.find('.required');
		var validator = new tvh.FormValidator(f.get(0), required);
		var submitButton = f.find('#submit');
		
		submitButton.click(function(){
			return validator.validate();
		});
	}
	function bindCalculators(calculators){
		calculators.click(function(){
			var url = this.href;
			openWindow(url)
			return false;
		});
		
	}
	function openWindow(contentsURL, winName, winProps, width, height){
		if (!winName) var winName = 'CALCULATOR';
		if (!winProps) var winProps = 'menubar=0,toolbar=0,resizable=0,location=0,status=0,scrollbars=0';
		
		if (!width) var w = 620;
		else w = width;
		
		if (!height) var h = 400;
		else h = height;
		
		var x = 100; y = 100;
		var args = "width=" + w + ",height=" + h + "," + winProps + ",screenx=" + x + ",screeny=" + y + ",left=" + x + ",top=" + y;
		
		window.open(contentsURL, winName, args);
	}
	
	return function(){
		initialise();
		
		
	}
})();
var site = null;
jQuery(document).ready(function(){
	 site = new tvh.Site();
});
