var ICApps = new function() {
	var self = this;
	var version = "1.0.0 :: 11/01/11";
	var inited = false;

	this.getVersion = function () {
		return version;
	};
	
	this.logosCarousel = function(eid, fadeTime, showTime) {
		var elm = $('#' + eid);
		if (elm[0]) {
			var elmWidth = elm.width();
			var elmHeight = elm.height();
			var list = $('li', elm[0]);
			var arr = list.get();
			var max = arr.length - 1;
			var curr = 0;
			var f = fadeTime ? fadeTime : 'slow';
			var s = showTime ? showTime : 3;

			function showLogo() {
				var w = $(arr[curr]).width();
				var h = $(arr[curr]).height();
				var posx = Math.round((elmWidth - w) / 2);
				var posy = Math.round((elmHeight - h) / 2);
				$(arr[curr])
					.css({'left': posx + 'px', 'top': posy + 'px'})
					.fadeIn(f, function() {
						setTimeout(switchLogos, s);
					});
			}
			
			function animateLogos() {
				var tim = setTimeout(switchLogos, s);
			}
			
			function switchLogos() {
				$(arr[curr]).fadeOut(f, function() {
					curr = curr >= max ? 0 : ++curr;
					showLogo();
				});
			}
			
			list.hide();
			elm.css('visibility', 'visible');
			showLogo();
		}
	};
	
	function init() {
		var eid = 'logos';
		$('#' + eid).imagesLoaded(function() {
			self.logosCarousel(eid, 1000, 1000);
		});
	}
	
	$(document).ready(init);
};
