
google.load("feeds", "1");

Array.prototype.has=function(v) {
	for (var i=0;i<this.length;i++) {
		if (this[i]==v) return true;
	}
	return false;
}

function initialize_webinar() {
	
  var feed_usergroup = new google.feeds.Feed("http://support.therapservices.net/createrssfeed.action?types=page&sort=created&showContent=true&spaces=WBN&labelString=upcoming&rssType=atom&maxResults=100&timeSpan=365&publicFeed=true&title=Webinars&showDiff=false");
  feed_usergroup.setNumEntries(100);
  
  feed_usergroup.load(function(result) {
    if (!result.error) {
      var container = document.getElementById("rss_webinars");
	  var container_list = document.getElementById("rss_webinar_upcoming_list");
	  
	  if(result.feed.entries.length) {
		  webinar_icon_flag = false;
		  
		  /* Date wise sort */
		  var webinar = new Array();
		  for (var i = 0; i < result.feed.entries.length; i++) {
			var entry = result.feed.entries[i];
			webinar.push(entry.title);
		  }
		  
		  var date_milis = new Array();
		  var assoiciativeArr = new Object();
		  var dateRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}(\-|\/|\.)\d{4}$/;
		  for (var i = webinar.length-1; i >= 0; i--) {
			  var entry = webinar[i];
			  var str = entry.split(" ");
			  var flag = false;
			  
			  
			  for (var j = 0; j < str.length; j++ ) {
				  
				  
				  if(dateRegExp.test(str[j])) {
					var mon;
					var dt;
					var yr; 
					
					var dat = str[j].split("-");
					if(dat.length<2) {
						dat = str[j].split("/");
					}
					if(dat.length<2) {
						dat = str[j].split(".");
					}
					
					mon = parseInt(dat[0], 10);
					dt  = parseInt(dat[1], 10);
					yr  = parseInt(dat[2], 10); 
					
					var dateTimeRegExp = /^\d{1,2}(am|AM|pm|PM)$/;
					var hour;
					if(((j+1)<str.length) && dateTimeRegExp.test(str[j+1])) {
						var time = str[j+1].toLowerCase();
						
						var time_ = time.search("pm");
						
						if(time_!=-1) {
							time_ = time.split("pm");
							hour = parseInt(time_[0])+12;
						}
						else {
							time_ = time.split("am");
							hour = parseInt(time_[0]);
						}
						
					}
					
					if(hour>0)
						var d1 = new Date(yr, mon, dt, hour, 00, 00);
					else
						var d1 = new Date(yr, mon, dt);
						
					var milli_d1 = d1.getTime();
					
					flag = true;
					date_milis.push(milli_d1);
					assoiciativeArr[i] = milli_d1;
					break;
				  }
				  
					
				  
			  }
		  }
		  date_milis.sort();
		  
		  var sort_ = new Array();
		  //Add in the array only which have valid date
		  for (var i = 0; i < date_milis.length; i++) {
			  var seqs = getSequence(date_milis[i], assoiciativeArr);
			  if(seqs[0]) {
				  for (var j = 0; j < seqs[1].length; j++) {
					  if(!sort_.has(seqs[1][j])) {
						  sort_.push(seqs[1][j]);
					  }
				  }
			  }
			  else {
				  
			  }
		  }
		  //Add in the array only which don't have valid date
		  if(sort_.length != webinar.length) {
			  for (var j = 0; j < webinar.length; j++) {
				  if(!sort_.has(j)) {
					  
					  sort_.push(j);
				  }
			  }
		  }
		  /* Date wise sort */
		  
		  
		  var ul = document.createElement("ul");
		  ul.setAttribute("class", "customli");
		  ul.setAttribute("className", "customli");
		  
		  for (var j = 0; j < sort_.length; j++) {
			var i = sort_[j];
			var entry = result.feed.entries[i];
			var ancor = document.createElement("a");
			ancor.setAttribute("href", entry.link);
			ancor.setAttribute("class", "FaqLink");
			ancor.setAttribute("className", "FaqLink");
			ancor.setAttribute("target", "_blank");
			ancor.appendChild(document.createTextNode(entry.title));
	
			var li = document.createElement("li");
			li.appendChild(ancor);
			
			ul.appendChild(li);
			
/*			
			if(j>3)
				break;
*/				
		  }
		  
		  container_list.appendChild(ul);
		  container.style.display = "block";

/*
		  if(result.feed.entries.length > 5) {
		  	var div = jQuery("<div />");
		  	var a = jQuery("<a />").attr( "href", "http://support.therapservices.net/display/WBN/Webinars").attr("target", "_blank").attr("class", "FaqLink").html("View All").appendTo($(div));
			jQuery($(div)).appendTo($(container_list));
		  }
*/		  
	  }
    }
	
  });

  
}

google.setOnLoadCallback(initialize_webinar);


