(function($){

	$.fn.extend({
		getSessionInfo: function(options) {

			var defaults = {
				programid: "FORMULAOVERVIEW",
				value2: "blue",
				value3: "yellow"
			}

			var options =  $.extend(defaults, options);
			var sProgramID = $(this).attr('id').replace("_UPCOMINGSESSIONS", "");	

			return this.each(function() {
				var o = options;
				var obj = $(this);				
				obj.empty();
								
				var sessionTable = $('<table cellspacing="0" cellpadding="5" class="ui-widget ui-widget-content ui-corner-all sortable"></table>');
				var sessionTableHeader = $('<thead><tr class="ui-state-default"><th class="tablecolumn tiptip" title="Sort By Date">Date</th><th class="tablecolumn tiptip" title="Sort By Name">Name</th><th class="tablecolumn tiptip" title="Sort By Location">Location</th><th class="tablecolumn tiptip" title="Sort By Price">Price</th><th class="tablecolumn">Seats</th><th class="tablecolumnlast">Info</th></tr></thead>');
				var sessionTableBody = $('<tbody ></tbody>');	
				
				sessionTable.append(sessionTableHeader);
				sessionTable.append(sessionTableBody);				
				
				
				$.ajax({
					url: "http://websvc.skipbarber.com/jsonwebservice/webservice.asp",
					dataType: "jsonp",
					data: "op=sessions&programid="+sProgramID,
					jsonp: "callback",
					success: function(data) {
						//var sessions = data.sessions;
						//console.log('data:'+data);
						//console.log(data.sessions.length);
						$.each(data.sessions, function(i, session){
							var mybut = "";
							if (session.availableseats > 0) {
								mybut = '<img class="tiptip" title="Seats Are Available" src="./images/icons/tick.png" border="0" />';
							}
							else {
								mybut = '<img class="tiptip" title="No seats are available but it may be possible to be put on the wait list" src="./images/icons/exclamation.png" border="0" />';
							}
							var sessionTABLEBODYROWS =
							'<tr class="sessionitem" sessionid="'+session.sessionid+'">'
							+	'<td class="tablecolumn">'+session.startdate+'</td>'
							+	'<td class="tablecolumn">'+session.name+'</td>'
							+	'<td class="tablecolumn">'+session.location+'</td>'
							+	'<td class="tablecolumn">'+session.price+'</td>'
							+	'<td class="tablecolumn" align="center">' + mybut + '</td>'		
							+	'<td class="tablecolumnlast" align="center"><img class="tiptip" title="Click Here For More Information" src="./images/icons/information.png" border="0" /></td>'
							+ '</tr>'						
							$(sessionTABLEBODYROWS).appendTo(sessionTableBody);						
						});
						
						if (data.sessions.length == 0) {
							var sessionTABLEBODYROWS = '<tr><td class="tablecolumnlast" colspan="6" align="center"><h2>No Upcoming Sessions Found</h2></td></tr>'
							$(sessionTABLEBODYROWS).appendTo(sessionTableBody);
						}
						
						
						obj.append(sessionTable);
						$("button").button();
						$(".tiptip").tipTip({defaultPosition: "top"});
						$(".sortable").tablesorter();
						$(".sortable tr").mouseover(function(){$(this).addClass("over");}).mouseout(function(){$(this).removeClass("over");});
						
					},
					error: function(){
						obj.html("error");
					},
					timeout: function() {
						obj.html("timeout error");
					}

				});		
				
			});
			
			
			
		}
	});

})(jQuery);
