(function($) {

    $.fn.dfi = function(params) {
		
		var BASEURL = 'http://dealerspike.net';
		var BASEDEMOURL = 'http://demodealer.clients.dealerspike.net';		
		var STOCKSMALLURI = '/imglib/nimg/140x70/';
		var STOCKREGURI = '/imglib/nimg/200x100/';
		var NOTELENMX = 20;
		var COMLENMX = 20;
		var STOCKURI = STOCKSMALLURI;
		var THPREFIX = "th_";

		if (params.format)
			switch(params.format.toLowerCase())
			{
				case 'small':
					NOTELENMX = 20;
					COMLENMX = 20;
					STOCKURI = STOCKSMALLURI;
					THPREFIX = "th_";
				break;
				case 'large':
					NOTELENMX = 40;
					COMLENMX = 40;
					STOCKURI = STOCKREGURI;
					THPREFIX = "th2_";					
				break;
			}

		params = $.extend( {did:999, 
							auto:2500, 
							isstatic:false,
							condition:null,
							showmsrp:false, 
							CommentLen:COMLENMX, 
							NoteLen:NOTELENMX,
							visible:3,
							speed:600,
							format:'small',
							width:140, 
							height:70,
							max:10, 
							url:'', 
							detail_page:'xinventory_detail',
							price:false,
							notes:false,
							newinv:true,
							start:0,
							idxstart:0,
							appendclear:true,
							AutoSetCommentHeight:true,
							showmake:false,
							demo:false }, params);
		
		if (params.demo)
		{
			params.did=8;
			params.url=BASEDEMOURL + '/';
		}

		var img, Comments, isNada, dpage;
		this.each(function() {
			var $t = $(this);			
			$.getJSON("/src/ajax/xGetConsolidatedPromos.asp",{id: params.did,f:1, max:params.max, condition:params.condition}, function(d) {
				var ullist='<ul>';
				if (d && d.images && d.images.length > 0 )
				{
					var j = d.images;

					for (var i = params.idxstart; i < j.length && i < params.max; i++) {
						if (params.condition && params.condition != j[i].type) continue;
						Comments = j[i].year + '&nbsp;' + (params.showmake?j[i].manuf+'&nbsp;':'') + j[i].model;
						isNada = j[i].image=='' && j[i].stockimg!='';
						if (params.newinv) dpage = (j[i].type=='N'?'xNewInventoryDetail':'xPreOwnedInventoryDetail');
						img = (j[i].image!='' ? params.url + 'used_bikes/' + THPREFIX + j[i].image : BASEURL + STOCKURI + j[i].stockimg);
						ullist += '<li class="FINVImage' + (isNada?'Nada':'') + '" >';
						ullist += (params.price?'<div class="FINVPrice" >' + j[i].price + '</div>':'');
						ullist += '<a target=_blank href="http://'+j[i].domain+'/default.asp?page=' + (params.newinv?dpage:params.detail_page) + '&id=' + j[i].bikeid + (params.newinv?'&ni=1':'');
						ullist += (j[i].image!='' ? '">' : '&i=' + j[i].stockimg + '">');
						ullist += '<img src="' + img + '" ';							
						ullist += 'title="' + Comments + '" />';
						ullist += '<div class="FINVComments" >' + Comments.substring(0,params.CommentLen) + '</div>';
						ullist += (params.notes?'<div class="FINVNotes">' + j[i].notes.substring(0,params.NoteLen) + '</div>':'');
						ullist += '</a></li>';
					}						
					
					ullist += '</ul>';
					if (params.appendclear)
						ullist += '<div style="clear: both"></div>';
					
					if (params.AutoSetCommentHeight){
						var DivHeight = $t.html('<div>&nbsp;</div>').find('div').height();					
						$t.html(ullist);
						$('.FINVComments').css('height',DivHeight);
						$('.FINVComments').css('overflow','hidden');
					} else 
						$t.html(ullist);

					if (!params.isstatic) {
						$t.jCarouselLite({
							auto:params.auto,
							visible:Math.min(j.length,params.visible),
							btnNext: "#featuredNext",
							btnPrev: "#featuredPrev",
							easing: "swing",
							speed: params.speed,
							start: params.start
						});
					} else {
						$t.css('overflow','hidden');
						$t.find('ul li').css('float','left');			
					}

				}
			})
		});

		return this;
		};

})(jQuery);


