﻿function buildPollHTML(targetElement,stream,showLimit,offset){if(arguments.length<4)offset=0;if(stream==""||stream==null)return;var columnBreak=3;var s="<table cellpadding='2' cellspacing='0' border='0' class='smallprint' width='100%'><tr>";var records=stream.split("|");if(records.length>1)records.length--;for(var i=offset,trueI=offset;i<showLimit&&i<records.length;i++){var td=getPollCellHTML(records[i]);if(td!=""){s+=td;if(trueI++%columnBreak==columnBreak-1)s+="</tr><tr>"}}if(records.length>showLimit){s+="</tr><tr><td colspan='"+showLimit+"' align='center'>- <a href='#' onclick=\"buildPollHTML(document.getElementById('"+targetElement.id+"'), document.getElementById('_raw-"+targetElement.id+"').innerHTML, "+(showLimit+columnBreak)+","+showLimit+"); return false;\">next</a> -</td>"}s+="</tr></table><span id='_raw-"+targetElement.id+"' style='display:none;'>"+stream+"</span>";targetElement.innerHTML=s}function getPollCellHTML(stream){var s="<td valign='top' align='center' width='33%'>";s+="<table cellpadding='2' cellspacing='0' border='0' class='poll' width='100%'><tr><td valign='top' align='center' width='100' height='80' rowspan='2'>";var record=stream.split("\\");if(record.length<5)return"";var pollrecord=record[3].split(":");var previousPollVote=0;for(var i=0;i<pollVoteHistory.length;i++){pollvoterecord=pollVoteHistory[i].split(":");if(parseInt(pollvoterecord[0])==parseInt(pollrecord[0])){previousPollVote=parseInt(pollvoterecord[1]);break}}var polloptionrecords=record[4].split(";");s+="<a href='"+record[0]+"' title='View Profile' onmouseover=\"return enlargeImage(this.childNodes[0], '"+record[2]+"');\" onmouseout='return hideLargeImage();'><img border='0' src='"+record[2]+"'></a><br>";s+="<a href='"+record[0]+"'>"+record[1]+"</a><br>";s+="</td>";s+="<td valign='top' align='left'>";s+="<b>"+pollrecord[1]+"</b><br>";if(polloptionrecords.length>1)polloptionrecords.length--;s+="<span id='spanPoll_"+pollrecord[0]+"'>";for(var i=0;i<polloptionrecords.length;i++){var polloptionrecord=polloptionrecords[i].split(":");s+="<input type='radio' name='"+pollrecord[0]+"_polloption' id='"+pollrecord[0]+"_polloption' onclick=\"votePoll("+pollrecord[0]+", "+polloptionrecord[0]+");\" value='"+polloptionrecord[0]+"'>";s+="<label for='"+pollrecord[0]+"_polloption'>";if(parseInt(polloptionrecord[0])==previousPollVote)s+="<b>"+polloptionrecord[1]+"</b>";else s+=polloptionrecord[1];s+="</label>";s+="</input><br>"}s+="</span></td></tr><tr><td align='right' id='spanPoll_"+pollrecord[0]+"_nav'>";s+="<a href='#' onclick='viewPollResult("+pollrecord[0]+"); return false;'>view results</a>";s+="<span id='_raw_poll_"+pollrecord[0]+"_data' style='display:none;'>"+record[4]+"</span>";s+="</td></tr></table>";s+="</td>";return s}votePoll_pollID=0;function votePoll(pollID,optionID){if(votePoll_pollID!=0){alert('Please wait. We are still processing your previous request.');return}else votePoll_pollID=pollID;loadXMLDoc("POST","/ws/AjaxManager.smile?action=VotePoll","pollID="+pollID+"&optionID="+optionID,votePoll_done);}function votePoll_done(){if(req.readyState==4){if(req.status==200&&req.responseText.indexOf('FAILED')!=0){viewPollResult(votePoll_pollID,req.responseText);}else{if(req.status==200&&req.responseText.indexOf('FAILED - not authenticated')==0){signOn('#poll');}else alert('We\'re sorry, an unknown error has occurred while processing your request.');}votePoll_pollID=0}}function getPollVoteSummary_done(){if(req.readyState==4){if(req.status==200&&req.responseText.indexOf('FAILED')!=0){viewPollResult(getPollVoteSummary_pollID,req.responseText);}getPollVoteSummary_pollID=0}}getPollVoteSummary_pollID=0;function viewPollResult(pollID,resultStream){if(arguments.length<2){if(getPollVoteSummary_pollID!=0){alert('Please wait. We are still processing your previous request.');return}else getPollVoteSummary_pollID=pollID;loadXMLDoc("POST","/ws/AjaxManager.smile?action=GetPollVoteSummary","pollID="+pollID,getPollVoteSummary_done);return}var fj=document.getElementById('_raw_poll_'+pollID+'_data');if(fj){var s="";var polloptionrecords=fj.innerHTML.split(";");if(polloptionrecords.length>1)polloptionrecords.length--;var pollvoterecords=resultStream.split(";");if(pollvoterecords.length>1)pollvoterecords.length--;var fg=0;for(var i=0;i<pollvoterecords.length;i++){var pollvoterecord=pollvoterecords[i].split(":");if(!isNaN(parseInt(pollvoterecord[1])))fg+=parseInt(pollvoterecord[1]);}for(var i=0;i<polloptionrecords.length;i++){var polloptionrecord=polloptionrecords[i].split(":");var polloptionvotecount=0;for(var pv=0;pv<pollvoterecords.length;pv++){var pollvoterecord=pollvoterecords[pv].split(":");if(parseInt(pollvoterecord[0])==parseInt(polloptionrecord[0])){polloptionvotecount=pollvoterecord[1];break}}if(polloptionvotecount>0)s+="<a href='/poll.smile?pid="+pollID+"#"+polloptionrecord[0]+"'>";s+=polloptionrecord[1];if(polloptionvotecount>0)s+="</a>";s+="<br>";var pollOptionPercent=0;if(fg>0)pollOptionPercent=parseFloat(polloptionvotecount)/fg;s+=getHorizontalBarHTML(pollOptionPercent,polloptionvotecount,'orange');}setElementDisplay('spanPoll_'+pollID+'_nav','none');document.getElementById('spanPoll_'+pollID).innerHTML=s}}function getHorizontalBarHTML(percentage,count,color){if(percentage==0)color='#ccc';var friendlyText=truncate(percentage*100,.01)+"% ";if(percentage>0)friendlyText+=" ("+count+")";return"<table cellpadding=0 cellspacing=0 border=0 width='100%' nowrap><tr><td style='padding: 0px; background-color: "+color+";' width='1'><nobr>"+friendlyText+"</nobr></td><td style='padding: 0px; width: "+(percentage*100)+"%; background-color: "+color+"' />&nbsp;</td><td style='padding: 0px;' width='100%'>&nbsp;</td></tr></table>"}