butFade = {

  load:function(stSpeed,fSpeed, opacity) {
	this.stSpeed = (stSpeed === undefined) ? 200: stSpeed;
	this.fSpeed = (fSpeed === undefined) ? 300: fSpeed;	
	this.opacity = (opacity === undefined) ? 0.3: opacity;	
	var self = this;
	jQuery(".fadeWhy").each(function(i,el) {
		var what = jQuery(this).find("div.fadeWhat");
		what.fadeTo('fast', self.opacity);
		jQuery(this).mouseenter(function() {what.stop(true,true).css("visibility","visible").fadeTo(self.stSpeed,1);}).mouseleave(function () {
			what.fadeTo(self.fSpeed,self.opacity, function () {jQuery(this);});
		});
	});
  }
  
};

etState = [298];
etWide = [];
//[9,11,12,22,31,67,84,126,290,276,267,292,293,294,286,287,298];
//Dem side: 9,11,12,22,3
//BO side: 67,126,245,252,259,276,84,286,287,289,288,290,291,293



eventLoader = {

  load:function(ops) {
		this.url = "http://www.democrats.org/eventp";
		this.events = [];
		this.timeout = 100000;
		var me = this;
		
		this.dash  = (ops.dash) ?  "1" : "0";
		var icobak = (this.dash == "1") ? icobak = "" : icobak ="G_";
	
		this.getEvents(ops, function() {

		jQuery.each(me.events, function(i, el) {
				var time = new Date(this.time);
				var which = (this.dash == 1) ? ".Eventd" : ".Eventf";

				jQuery(which).eq(this.id).find(".eLink a").attr("href",this.link+"?override_wrapper_id=Iw3hA").html("Get Out the Vote: " +this.city);
				jQuery(which).eq(this.id).find(".eIcon").html('<div class="ico'+icobak+this.side+'"></div>');
				jQuery(which).eq(this.id).find(".eDay").text(time.getDayName());				
				jQuery(which).eq(this.id).find(".eDate").text(time.getMonthName(true)+" "+ time.getDate());
				jQuery(which).eq(this.id).find(".eTime").text(time.getregHours() +":"+pad2(time.getMinutes())+time.amPM())
				jQuery(which).eq(this.id).find(".eCitySt").text(this.city + ", " +this.state);
				jQuery(which).eq(this.id).find(".smallBut a").eq(0).attr("href",this.link+"#rsvp");
				jQuery(which).eq(this.id).find(".smallBut a").eq(1).attr("href",this.link);
				jQuery(which).eq(this.id).slideDown();
				if (this.dash == 1) {  jQuery("#quickevents").hide(); jQuery("#singleevent").show();  }
		});
			butFade.load(undefined,undefined,0);
			
		}, function() {});},
  
  getEvents:function(ops, loaded, failed) {
		var me = this;
		
		if (jQuery.browser.msie)  { this.dType = "text"; } else { this.dType = "xml"; }	
			jQuery.ajax({
				type: "GET",
				url: this.url,
				data: ops,
				timeout: this.timeout,
				dataType: this.dType,
				success: function(data) {
		
					if (jQuery.browser.msie) { 
						var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); 
						xmlDoc.loadXML(data);
						xmlDoc.preserveWhiteSpace = true;
						data = xmlDoc; 
					}

					jQuery(data).find('item').each(function(i) {

						var event = [];	
						event.id = i;
						event.title = jQuery(data).find('item').eq(i).find('title').eq(0).text();
						event.link = jQuery(data).find('item').eq(i).find('link').eq(0).text();
						event.side = (event.link.substr(17,1) == "b") ? "OFA": "D";
						event.etype = jQuery.trim(jQuery(data).find('item').eq(i).find('[nodeName=db:eventType]').eq(0).text());								
						event.time = jQuery(data).find('item').eq(i).eq(0).find('pubDate').eq(0).text();
						event.timespl = jQuery(data).find('item').eq(i).eq(0).find('pubDate').eq(0).text().split(/[\s,]+/);								
						event.venue =  jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:venue_name]').eq(0).text();

						event.street = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:address]').eq(0).find('[nodeName=db:street]').eq(0).text();
						event.city = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:address]').eq(0).find('[nodeName=db:city]').eq(0).text();						
						event.state = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:address]').eq(0).find('[nodeName=db:state]').eq(0).text();						
						event.zipcode = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:address]').eq(0).find('[nodeName=db:zipcode]').eq(0).text();
						if (event.street == "") {event.street = event.venue;}
						event.address = event.street + "<br /> " + event.city + " " + event.state + " " + event.zipcode;
						
						event.blurb = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:abstract]').eq(0).text().substr(0,400) + "... ";						
						event.lat = jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:latitude]').eq(0).text();
						event.long =  jQuery(data).find('item').eq(i).find('[nodeName=db:event]').eq(0).find('[nodeName=db:longitude]').eq(0).text();	
						event.dash = (ops.dash !== undefined) ? true : false;

						me.events.push(event);
					});
						
					if (me.events.length != 0) {
						if (loaded) {loaded.call(this);}									
					} else {
						if (failed) {failed.call(this);}	
					}
							
				},
				error: function(data) {
					if (failed) {failed.call(this);}						
				}
			});	
	}
}
  

