/**
 * Namespaced object. Encapsulating private methods, exposing these 
 * as public via an object proxy. 
 *
 * @author 		Paul Campbell
 * @url			http://www.campbellsdigitalsoup.co.uk
 * @copyright 	Copyright (c) 2009, pauljamescampbell.co.uk. All rights reserved.
 * @version		0.0.1
 */
var digitalsoup = window.digitalsoup = function ( $ ) {

	function getLatestTwitterPost ( e ) { 
		document.write( '<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/pauljcampbell.json?callback=digitalsoup.parseLatestTwitterPost&count=1"></script>' );
	}
	
	function parseLatestTwitterPost (e)  {
		$("#twitter .title").after(
			'<p>' + e[0].text + '</p>'
		);
	}
	
	function getLatestFlickrImages () {
		document.write( '<script type="text/javascript" src="http://www.flickr.com/badge_code_v2.gne?show_name=0&count=8&display=random&size=s&layout=v&source=user&user=49281871%40N00"></script>' );
	}
	
	function enhanceCommentForm () {
		var form = $("#make-comment form");
		form.find(".button" ).click(function () {
			
			var inputs = form.find("input, textarea");
			var valid = true;
			
			for( var i = 0; i<inputs.length; i++ ) {
				var input = inputs.eq( i );
				if( input.val() == "" ) {
					valid = false;
					input.addClass("error");
					input.prev().addClass("error");
				} else {
					input.removeClass("error");
					input.prev().removeClass("error");
				}
			}
			
			if( valid ) {
				//form.submit();
			}
			
			return( false );
		});
	}
	
	function applyFormButtons () {
		$("form .button").click( function () { 
			var el = $( this );
			el.parents("form:first").submit();
			return(false);
		});
	}
	
	return {
		
		"init" 							: function() {
			applyFormButtons();
		},
		"getLatestFlickrImages"			: getLatestFlickrImages,
		"parseLatestTwitterPost"		: parseLatestTwitterPost,
		"getLatestTwitterPost" 			: getLatestTwitterPost,
		"enhanceCommentForm"			: enhanceCommentForm
		
	};
	
}( jQuery );