window.addEvent('domready', function() {
	Site.Poll = {
		init: function() {
			var pollElement = $('poll');

			if (pollElement && pollElement.getElement('form')) {
				pollElement.getElement('form').addEvent('submit', function(e) {
					var f = this;
					new Event(e).stop();
					new Request.JSON({url: '/poll/get-result/?' + this.toQueryString(), onComplete: function(json) {
							f.destroy();
							var containerWidth = pollElement.getWidth() * 0.75;
							
							json.answers.each(function(item) {
								var textEt = new Element('div').set('text', item.name + ' (' + item.voted + ')');
								var percentEt = new Element('div', {'class': 'percent'});
								
								pollElement.adopt(textEt, percentEt);
								percentEt.set('tween', {duration: 2000, transition: Fx.Transitions.Elastic.easeOut})
								percentEt.tween('width', containerWidth / 100 * item.percent);
								
							});
							
							pollElement.adopt(
								new Element('div').set('text', json.total)
							);
						}
					}).get();
				});
			}
		}
	}
	
	Site.Poll.init();
});
