﻿EventDispenser = Class.create();
EventDispenser.prototype = {
	initialize: function(list) {
	/*
		this.list = list;
		this.showTagObserver = this.showTagName.bindAsEventListener(this);
		$$(this.list + " .voting").each(function(item) {
		  Event.observe(item, 'click', this.showTagObserver);
		}.bind(this));
	*/
		this.showTagObserver = this.showTagName.bindAsEventListener(this);
		$$(".voting").each(function(item) {
		  Event.observe(item, 'click', this.showTagObserver);
		}.bind(this));
		
	},


  // Arbitrary functions to respond to events
	showTagName: function(event) {
		Event.stop(event);
		
		// Event.element(event) returns the element which fired the event.
		mystring = Event.element(event).id;
		// split with an "_" eg: article_1022
		myarray = mystring.split(/\_/);
		Element.update('article_'+myarray[1], "Thanks for voting");
		
		var oOptions = {
			method: "POST",
			parameters: "do=" + myarray[0] + "&id=" + myarray[1],
			asynchronous: true,
			evalScripts: true,
			onFailure: function (oXHR, Json) {
				alert("An Error Occurred: " + oXHR.statusText);
			},
			onComplete: function (oXHR, Json) {
				$("article_"+myarray[1]).innerHTML = oXHR.responseText;
			}
		};
		var oRequest = new Ajax.Updater("article_"+myarray[1], "../../../process_voting.php", oOptions);
	}	  
}

