var remoteHost = 'http://www.javezz.com';
var msbiGraphs = []

function getPoll(id){

	if(id){

		//get finished poll
		//new Effect.SlideDown('result_div', {duration:0.5});
		$('list_div').hide();
		$('result_div').show();

		new Ajax.Request(remoteHost +'/msbi3/poll/result.asp?id='+ id, 
						{
						asynchronous:true,
						evalScripts:true,
						//onFailure:function(request){alert(appMessage.$301.replace('?', request.status));alert(request.responseText);}, 
						onSuccess:function(request){	

							try{

								var survey = request.responseXML.getElementsByTagName('survey')[0];

								var temp = [];
								var graph = null, graphs = [];
								var unit = (100/parseInt(survey.getAttribute('total')));
								var pcnt = 0;

								$A(survey.childNodes).each(function(item){
									pcnt = unit * parseInt(item.getAttribute('count'));
									temp.push(Builder.node('tr', {}, [
											Builder.node('td', {width:'3%', height:30, 'class':'td_font5'}, item.getAttribute('number')),
											Builder.node('td', {width:'57%', 'class':'td_font5'}, item.getAttribute('title')),
											Builder.node('td', {width:'32%', 'class':'td_font5'}, 
												Builder.node('div', {style:"height:14px;width:100%;background-color:#ffffff;margin-top:3px;"}, 
													graph = Builder.node('div', {style:"height:14px;width:"+ pcnt +"%;background-color:#a4c300;display:none;"})
												)
											),
											Builder.node('td', {width:'8%', align:'right', 'class':'td_font5'}, '('+ Math.round(pcnt) +'%)')
										]));
									msbiGraphs.push(graph);
								});

								//$('graph_div').update('');
								$('graph_div').update(Builder.node('table', {width:"100%", border:0, cellspacing:0, cellpadding:0}, Builder.node('tbody', {}, temp)));

								setTimeout("$('box').scrollTop = $('box').scrollHeight;", 500);
								setTimeout("msbiGraphs.each(function(item){new Effect.Grow(item, {duration:0.5});});msbiGraphs.clear();", 1000);

							}catch(e){alert(e.message);}

						}
						}
						);

	}else{

		//get progress poll

		new Ajax.Request(remoteHost +'/msbi3/poll/default.asp', 
						{
						asynchronous:true,
						evalScripts:true,
						//onFailure:function(request){alert(appMessage.$301.replace('?', request.status));alert(request.responseText);}, 
						onSuccess:function(request){	

							try{

								var survey = request.responseXML.getElementsByTagName('survey')[0];

								$('poll_title').update(survey.getAttribute('title'));
								$('poll_started_at').update(survey.getAttribute('start'));
								$('poll_finished_at').update(survey.getAttribute('finish'));

								var temp = [];
								var input = null;

								$A(survey.childNodes).each(function(item){
									temp.push(Builder.node('tr', {}, [
											Builder.node('td', {width:'5%', height:30}, 
												input = Builder.node('input', {type:'radio', name:'survey_item', id:'survey_item_'+ item.getAttribute('id'), value:item.getAttribute('id')})
											),
											Builder.node('td', {width:'95%', 'class':'td_font6'}, 
												Builder.node('label', {'for':'survey_item_'+ item.getAttribute('id')}, item.getAttribute('title'))
											)
										]));

									Event.observe(input, 'click', function(){
										if(this.checked)$('VOTES')['VOTES[SURVEY_ITEM_ID]'].value = this.value;
									});
								});

								temp.push(Builder.node('tr', {}, Builder.node('td', {height:10, colspan:2})));

								$('poll_item').appendChild(Builder.node('table', {width:"96%", border:0, cellspacing:0, cellpadding:0}, Builder.node('tbody', {}, temp)));

								var frm = $('VOTES');
								var validation = request.responseXML.getElementsByTagName('validate')[0];

								frm.action = (remoteHost +'/msbi3/_controller/vote/create.asp?vkey='+ validation.getAttribute('key'));

								var surveyId = survey.getAttribute('id');

								Event.observe($('result_link'), 'click', function(event){
									getPoll(surveyId);
									Event.stop(event);
								});

								frm['VOTES[SURVEY_ID]'].value = surveyId;

								if(survey.getAttribute('terminated') == "0"){

								frm.onsubmit = function(){

										if(frm['VOTES[SURVEY_ITEM_ID]'].value != ''){

											if(confirm('투표하시겠습니까?')){

												new Ajax.Request(frm.action, 
																{
																asynchronous:true,
																evalScripts:true,
																onFailure:function(request){alert(request.responseText);}, 
																onSuccess:function(request){	

																	switch (request.status){
																		case 200:
																			alert('투표가 저장되었습니다.');break;
																		case 202:
																			alert('이미 투표 하셨습니다.');break;
																	}

																},
																parameters:Form.serialize(frm)
																}
																);

											}

										}else{

											alert('보기를 선택해주세요.');

										}

										return false;

									}

								}else{

									frm.onsubmit = function(){
										alert('죄송합니다.\n\n투표가 마감되었습니다.');
										return false;
									}

								}

							}catch(e){alert(e.message);}

						}
						}
						);

	}

}



function getList(){

	$('result_div').hide();
	$('list_div').show();

	new Ajax.Request(remoteHost +'/msbi3/poll/list.asp', 
					{
					asynchronous:true,
					evalScripts:true,
					//onFailure:function(request){alert(appMessage.$301.replace('?', request.status));alert(request.responseText);}, 
					onSuccess:function(request){	

						try{

							var surveies = $A(request.responseXML.getElementsByTagName('survey'));
							var tmp = null, objA = null;

							var objDiv = $('survey_div');
							objDiv.update('');
							surveies.each(function(item, idx){
								tmp = item.getAttribute('status');
								if(tmp != 'R'){
									objDiv.appendChild(Builder.node('div', {'class':'td_font5', style:'float:left;width:9%;height:25px;padding-top:5px;'}, Builder.node('img', {src:(tmp == 'P') ? '_img/ing_but.gif' : '_img/end_but.gif', width:38, height:17})));
									objDiv.appendChild(Builder.node('div', {'class':'td_font5', style:'float:left;width:60%;height:25px;padding-top:5px;text-align:left;'}, objA = Builder.node('a', {href:'#'}, item.getAttribute('title'))));
									objDiv.appendChild(Builder.node('div', {'class':'td_font5', style:'float:left;width:31%;height:25px;padding-top:5px;text-align:right;'}, item.getAttribute('start').substr(0, 10) +' ~ '+ item.getAttribute('finish').substr(0, 10)));

									if(idx < (surveies.size() - 1)){
										objDiv.appendChild(Builder.node('div', {style:'float:left;width:100%;text-align:center;'}, Builder.node('img', {src:'_img/dot_poll.gif', width:'546', height:'6', alt:''})));
									}
								}

								Event.observe(objA, 'click', function(event){
									getPoll(item.getAttribute('id'));
									Event.stop(event);
								});

							});

							setTimeout("$('box').scrollTop = $('box').scrollHeight;", 500);

						}catch(e){alert(e.message);}

					}
					}
					);

}