﻿// JScript File
var pollID = 0;
var viewer = null;
var owner = null;
var viewerID = 0;
var ownerID = 0;
var PDV_cl = 0;
var PDV_r = 0;
var PDV_a = '';
var PDV_o = '';
var PDV_id = 0;
var PDV_pt = 0;
var PDV_po = 0;
var PDV_s = 0;
var PDV_b = 0;
var PDV_l = 0;
var PDV_pr = 0;
var PDV_w = 0;
var PDV_sl = 0;
var PDV_va = 0;
var PDV_lnk = 0;
var PDV_mt = '';
var PDV_mid = '';
var PDV_lp1 = '';
var PDV_lp2 = '';
var PDV_lp3 = '';
var PDV_lp4 = '';
var poll_link = '<span style="font: normal normal normal 9px verdana;color: #777777;"><a href="javascript:gotoAbout();" style="color: #555;text-decoration: none;">Go to Preview</a></span>';
var poll_html = '<table align="center" border="0"><tr><td><div id="outerContainer"><div id="os_stage"><div id="os_stage_inner"><table class="os_data"><thead><tr class="alt"><th></th><th>No Poll selected for this space!</th><th></th></tr></thead><tbody><tr><td colspan="3" height="2px"></td></tr></tbody><tfoot><tr><td></td><td><span id="footer"><a href="javascript:gotoCanvas();">Go to Preview</a></span></td><td></td></tr></tfoot></table></div></div><p class="cf"></p></div></td></tr></table>';
var poll_style = "BODY{ margin: 0px; padding: 0px; font: normal normal normal 11px/16px verdana; color: #333;}A{outline: none;}A{color: #4166AF;}A:hover{color: #003399;}IMG{border: 0px;vertical-align:bottom;}.cf{clear: both;padding: 0px;margin:0px;}#outerContainer{width: 215px; height: 65px; overflow: auto; border: solid 1px #333; font: normal normal normal 11px/16px verdana;}#outerContainer table{font-size: 11px;line-height: 16px;}#os_stage{margin: 0px;width: 215px;}.os_stage_inner, #os_stage_inner{padding: 0px;font-size: 11px;}.os_stage_inner TD, #os_stage_inner TD{font-size: 11px;}.os_data{width: 100%;border-collapse: collapse;}.os_data .alt{background: #F0F0F0;}.os_data TH{text-align: left;font-weight: bold;line-height:22px;}.os_data TD{line-height: 16px;  }.os_data TD A{color: #000;}.os_data .num{width: 100px;text-align: center;}.os_data .ico{width: 30px;text-align: center;}#footer {font-size: 9px;color: #777777;}#footer A{color: #555;text-decoration: none;}#footer A:hover{text-decoration: underline;}";
var poll_question = '';
var poll_location = '';
var poll_url = '';
var attempts = 0;
var host = 0;
var loadattempts = 0;
var poll_path = 'http://static.polldaddy.com/p/';
var PDV_Answers = new Array();
var AA = new Array();
var debug = false;

function isSameUser() {
    return owner && viewer && owner.getId() == viewer.getId();
}

function resize(s) {
    gadgets.window.adjustHeight(s);
}

function makeRequest(server_url, fn) {
    var params = {};
    params[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.GET;
    params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.TEXT;
    params[gadgets.io.RequestParameters.AUTHORIZATION] = gadgets.io.AuthorizationType.SIGNED;
    gadgets.io.makeRequest(server_url, fn, params);
}

function makeCachedRequest(url, callback, refreshInterval) {
    var ts = new Date().getTime();
    var sep = "?";
    if (refreshInterval && refreshInterval > 0) {
        ts = Math.floor(ts / (refreshInterval * 1000));
    }
    if (url.indexOf("?") > -1) {
        sep = "&";
    }
    url = [url, sep, "nocache=", ts].join("");
    makeRequest(url, callback);
}

function renderPage() {
    makeCachedRequest(poll_url, pageload_Callback, 1);
}

function renderFaultPage() {
    poll_html = '<table align="center" border="0"><tr><td><div id="outerContainer"><div id="os_stage"><div id="os_stage_inner"><br /><table class="os_data"><thead><tr><th></th><th>Unable to obtain Poll Owner ID from Friendster!</th><th></th></tr></thead><tbody><tr><td colspan="3" height="2px"></td></tr></tbody><tfoot><tr><td></td><td></td><td></td></tr></tfoot></table></div></div><p class="cf"></p></div></td></tr></table>';
    pushStyle();
    pushHTML();
}

function pushHTML() {
    document.getElementById('poll_canvas').innerHTML = poll_html;
    setTimeout('resize(document.getElementById("poll_canvas_container").scrollHeight + 8)', 1000);
	setTimeout('resize(document.getElementById("poll_canvas_container").scrollHeight + 8)', 3000);
}

function pushStyle() {
    var fileref = null;
    var ret = false;
    if (poll_style == "") {
        poll_style = ".pds-box{ width:250px;color:#333;background:#fff;font-family:Verdana,Arial,Helvetica,sans-serif;text-align:left} .pds-box-outer{}.pds-box-inner{} .pds-box-top{padding:10px 10px 10px 10px} .pds-question{ } .pds-question-outer{ padding-bottom:5px}.pds-question-inner{ } .pds-question-top{ padding:5px 5px 0px 5px;font-size:12px;color:#333;text-align:center} .pds-answer{ font-size:10px;color:#333;padding:10px 10px 15px 10px} .pds-answer label{}.pds-radiobutton{} .pds-checkbox{} .pds-textfield{ width:100%;font-size:10px;color:#666;background-color:#ccc;border:1px;border-color:#333;padding:1px 1px 1px 1px;margin:5px 0px 0px 0px} .pds-answer-feedback{ background-color:#ccc;padding:0px 0px 0px 0px;height:12px;margin:2px 0px 5px 0px}.pds-answer-feedback-bar{ background:#666;margin:3px;padding:0px;height:6px;border:0px}.pds-answer-feedback img{ background:#666;margin:3px;padding:0px;height:6px;border:0px}.pds-vote{ font-size:9px;color:#c3C4c7;line-height:17px;padding:0px 10px 10px 10px} .pds-votebutton-outer{ }.pds-vote a{ font-size:9px;color:#777;text-decoration:none;border-top:1px;border-bottom:1px;border-top-color:#ccc;border-bottom-color:#ccc;border-top-style:solid;border-bottom-style:solid;padding:2px 0px 2px 0px} input.pds-votebutton{ width:55px;height:21px;background:url(http://s3.amazonaws.com/polldaddy/images/pdsimple-votebutton.gif) no-repeat;outline:none;float:right;margin:0px 0px 10px 0px}input.pds-votebutton:hover{ }input.pds-votebutton-pack{ float:right;font-size:10px}.pds-totalvotes-outer{} .pds-totalvotes-inner{ font-size:9px;color:#fff;background-color:#666;padding:2px 2px 2px 4px;margin:0px 0px 10px 0px;text-transform:uppercase;letter-spacing:1px}"
    }
    if (!document.getElementById('poll_style' + PDV_id)) {
        fileref = document.createElement("style");
        fileref.setAttribute("type", "text/css");
        fileref.setAttribute("id", 'poll_style' + PDV_id);
        if (fileref.styleSheet) {
            fileref.styleSheet.cssText = poll_style;
        }
        else {
            fileref.appendChild(document.createTextNode(poll_style));
        }
    }
    else {
        ret = true;
    }
    if (fileref) {
        document.getElementsByTagName("head").item(0).appendChild(fileref);
        ret = true;
    }
    return ret;
}

function PD_vote_opensocial(vt) {
    var url = '';
    var ck = 0;
    var randomnumber = Math.floor(Math.random() * 11);
    if (Get_VoteCookie('PD_poll_' + PDV_id) == 'true') {
        ck = 1;
    }
    if (vt == 1) {
        url = "http://jr.polldaddy.com/vote.php?h=" + host + "&s=" + PDV_s + "&vr=1&b=" + PDV_b + "&p=" + PDV_id + "&l=" + PDV_l + "&sl=" + PDV_sl + "&pr=" + PDV_pr + "&pt=" + PDV_pt + "&va=" + PDV_va + "&cookie=" + ck + "&rdm=" + randomnumber;
        makeRequest(url, resultsCallback);
    }
    else {
        if (PDV_b > 0) {
            Set_VoteCookie('PD_poll_' + PDV_id, 'true', 30, '/', '', '');
        }
        PDV_a = '';
        PDV_o = '';
        PDV_o = PDF_other();
        PDV_a = PDF_answers();
        if (PDV_a.length == 0 && PDV_o.length == 0) {
            alert('Polldaddy Poll says "Please choose an answer first!"');
        }
        else {
            url = "http://jr.polldaddy.com/vote.php?h=" + host + "&s=" + PDV_s + "&b=" + PDV_b + "&p=" + PDV_id + "&a=" + PDV_a + "&o=" + escape(PDV_o) + "&l=" + PDV_l + "&sl=" + PDV_sl + "&pr=" + PDV_pr + "&pt=" + PDV_pt + "&va=" + PDV_va + "&cookie=" + ck + "&rdm=" + randomnumber;
            makeRequest(url, resultsCallback);
        }
    }
}

function PDF_answers() {
    var r;
    if (PDV_pt > 0) {
        if (document.getElementById) {
            var div = document.getElementById('pds-answer' + PDV_id);
            if (div && div.getElementsByTagName) {
                var divHRs = div.getElementsByTagName('input');
                if (divHRs) {
                	var mc_answers = new Array();
                    for (var i = 0; i < divHRs.length; i++) {
                        r = document.getElementById(divHRs[i].getAttribute('id'));
                        if (r.type == "checkbox" && r.checked) {
                            mc_answers.push(r.value);
                        }
                    }
                    PDV_a = mc_answers.join(",");
                }
                else {
                    alert('Could not find Answers');
                }
            }
            else {
                alert('Could not find Span:pds-answer' + PDV_id);
            }
        }        
        //console.log(PDV_a);
        return PDV_a;
    }
    else {
        if (document.getElementById) {
            var div = document.getElementById('pds-answer' + PDV_id);
            if (div && div.getElementsByTagName) {
                var divHRs = div.getElementsByTagName('input');
                if (divHRs) {
                    for (var i = 0; i < divHRs.length; i++) {
                        r = document.getElementById(divHRs[i].getAttribute('id'));
                        if (r.type == "radio" && r.checked) {
                            PDV_a = r.value;
                            break;
                        }
                    }
                }
                else {
                    alert('Could not find Answers');
                }
            }
            else {
                alert('Could not find Span:pds-answer' + PDV_id);
            }
        }
    }
    r = document.getElementById('PDI_answerOther' + PDV_id);
    if (r) {
        if (r.checked) {
            PDV_a = r.value;
        }
    }
    return PDV_a;
}

function PDF_other() {
    if (PDV_po == 1) {
        PDV_o = document.getElementById('PDI_OtherText' + PDV_id).value;
    }
    return PDV_o;
}

function PDI_checkOther() {
    if (PDV_pt == 0) {
        document.getElementById("PDI_answerOther" + PDV_id).checked = true;
    }
}

function PDF_check_mc(obj){
	if ( PDV_pt > 1 ){
		var nc = 0;
		var div = document.getElementById('pds-answer' + PDV_id);
        if (div && div.getElementsByTagName) {
            var divHRs = div.getElementsByTagName('input');
            if (divHRs) {
                for (var i = 0; i < divHRs.length; i++) {
                    r = document.getElementById(divHRs[i].getAttribute('id'));
                    if (r.type == "checkbox" && r.checked) {
                        nc += 1;
                    }
                }
            }
        }
	
		if (PDV_po == 1)
	    {
			var otherText = document.getElementById("PDI_OtherText" + PDV_id ).value;
			if( otherText.length > 0 ) { nc += 1; }	
		}		
		
		if ( nc > PDV_pt ){
			obj.checked = false;
			obj.disabled = true;
		}
		
		if ( nc >= PDV_pt ){
			var div = document.getElementById('pds-answer' + PDV_id);
            if (div && div.getElementsByTagName) {
                var divHRs = div.getElementsByTagName('input');
                if (divHRs) {
                    for (var i = 0; i < divHRs.length; i++) {
                        r = document.getElementById(divHRs[i].getAttribute('id'));
                        if (r.type == "checkbox" && !r.checked) {
                            r.disabled = true;
                        }
                    }
                }
            }
		}
		else{
			if (PDV_po == 1) { document.getElementById("PDI_OtherText" + PDV_id ).disabled=false; }
			var div = document.getElementById('pds-answer' + PDV_id);
            if (div && div.getElementsByTagName) {
                var divHRs = div.getElementsByTagName('input');
                if (divHRs) {
                    for (var i = 0; i < divHRs.length; i++) {
                        r = document.getElementById(divHRs[i].getAttribute('id'));
                        if (r.type == "checkbox" && !r.checked) {
                            r.disabled = false;
                        }
                    }
                }
            }
		}
	}
}

function stripslashes(str) {
	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\0/g,'\0');
	str=str.replace(/\\\\/g,'\\');
	return str;
}

function getHtml(response) {
    if (response.indexOf) {
        var html = "";
        var ans = new Array();
        var ansStr = "";
        var srh_id1 = "var PDV_id";
        var srh_cl = 'var pollClosed';
        var srh_eq = "= ";
        var srh_def = "";
        var srh_link = 'href="http://www.polldaddy.com"';
        var srh_r = '';
        var srh_pt = '';
        var srh_po = '';
        var srh_s = '';
        var srh_b = '';
        var srh_l = '';
        var srh_pr = '';
        var srh_w = '';
        var srh_sl = '';
        var srh_va = '';
        var srh_lnk = '';
        var srh_pq = '';
        var srh_mt = '';
        var srh_mid = '';
        var srh_lp1 = '';
        var srh_lp2 = '';
        var srh_lp3 = '';
        var srh_lp3_1 = '';
        var srh_lp4 = '';
        var srh_vt = '';
        var srh_co = '';
        var srh_hash = '';
        var start = 0;
        var stop = 0;
        var i = 0;
        var PDV_hash = 0;
        var quote = '"';
        start = response.indexOf(srh_cl);
        if (start != -1) {
            start = response.indexOf(srh_eq, start + srh_cl.length) + srh_eq.length;
            stop = response.indexOf(";", start);
            if (response.substring(start, stop) == 'true') {
                PDV_cl = 1;
            }
            else {
                PDV_cl = 0;
            }
            writeLog("PDV_cl:" + PDV_cl);
            if (PDV_cl == 1) {
                //closed poll
                srh_id1 = "getElementById('poll_style";
                start = response.indexOf(srh_id1, start);
                if (start != -1) {
                    start += srh_id1.length;
                    stop = response.indexOf("'))", start);
                    PDV_id = response.substring(start, stop);
                    writeLog("PDV_id:" + PDV_id);
                    srh_def = "var def = '";
                    start = response.indexOf(srh_def, start) + srh_def.length;
                    stop = response.indexOf("';", start);
                    poll_style = stripslashes( response.substring(start, stop) );
                    writeLog("poll_style:" + poll_style);
                    srh_pq = "var PDV_POLL_q" + PDV_id + " = '";
                    start = response.indexOf(srh_pq) + srh_pq.length;
                    stop = response.indexOf("';", start);
                    poll_question = response.substring(start, stop).replace(/\\/g, '');
                    
                    start = 0;
					stop = 0;
					var tmp = '';
					var ans = '';
					quote = "'";
					while (i < 100)
					{
						tmp = "PDV_A" + PDV_id + "[" + i + "] = new Array(4);";
						start = response.indexOf(tmp);
						if (start == -1) {
							break;
						}
						else
						{
                            PDV_Answers[i] = new Array(4);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][0] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][0] = ans;
                            writeLog("PDV_Answers["+i+"][0]:" + PDV_Answers[i][0]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][1] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][1] = ans;
                            writeLog("PDV_Answers["+i+"][1]:" + PDV_Answers[i][1]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][2] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][2] = ans;
                            writeLog("PDV_Answers["+i+"][2]:" + PDV_Answers[i][2]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][3] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][3] = ans;
                            writeLog("PDV_Answers["+i+"][3]:" + PDV_Answers[i][3]);
						}
						i++;
					}
					writeLog( PDV_Answers );					
					html = '<a name="pd_a_' + PDV_id + '"></a><div class="PDS_Poll" id="PDI_container' + PDV_id + '">';
                    var srh_html = "document.getElementById('PDI_container" + PDV_id + "').innerHTML = '";
                    start = response.indexOf(srh_html, start);                    
                    if (start != -1) {
                    	start += srh_html.length;
                    	stop = response.indexOf("';", start);
                    	html += response.substring(start, stop);
                    	
                    	srh_replace = "' + unescape_HTML_" + PDV_id + "( PDV_POLL_q" + PDV_id + " ) + '";
                    	
                    	html = html.replace(srh_replace, poll_question );
                    	
                    	for (PDV_x = 0; PDV_x < PDV_Answers.length; PDV_x++)
						{
							srh_replace = "' + unescape_HTML_" + PDV_id + "( PDV_A" + PDV_id + "[" + PDV_x + "][1] ) + '";
							writeLog( srh_replace );
							html = html.replace(srh_replace, PDV_Answers[PDV_x][1] );
						}
                    }                   
                }
            }
            else
            {
                start = response.indexOf(srh_id1);
                if (start != -1) {
                    start = response.indexOf(srh_eq, start + srh_id1.length) + srh_eq.length;
                    stop = response.indexOf(";", start);
                    PDV_id = response.substring(start, stop);
                    writeLog("PDV_id:" + PDV_id);
                    srh_r = 'var PDV_POLLRAND' + PDV_id + ' = ';
                    srh_pt = 'var PDV_pt' + PDV_id + ' = ';
                    srh_po = 'var PDV_po' + PDV_id + ' = ';
                    srh_s = 'var PDV_s' + PDV_id + ' = ';
                    srh_b = 'var PDV_b' + PDV_id + ' = ';
                    srh_l = 'var PDV_l' + PDV_id + ' = ';
                    srh_pr = 'var PDV_pr' + PDV_id + ' = ';
                    srh_w = 'var PDV_w' + PDV_id + ' = ';
                    srh_sl = 'var PDV_sl' + PDV_id + ' = ';
                    srh_va = 'var PDV_va' + PDV_id + ' = ';
                    srh_lnk = 'var PDV_lnk' + PDV_id + ' = ';
                    srh_pq = "var PDV_POLL_q" + PDV_id + " = '";
                    srh_mt = "var PDV_POLL_medType" + PDV_id + " = '";
                    srh_mid = "var PDV_POLL_medID" + PDV_id + " = '";
                    srh_lp1 = "var PDV_l1_" + PDV_id + " = '";
                    srh_lp2 = "var PDV_l2_" + PDV_id + " = '";
                    srh_lp3 = "var PDV_l3_" + PDV_id + " = '";
                    srh_lp3_1 = "PDV_l3_" + PDV_id + " = '";
                    srh_lp4 = "var PDV_l4_" + PDV_id + " = '";
                    srh_vt = 'PD_vote' + PDV_id;
                    srh_link = 'href="http://www.polldaddy.com"';
                    srh_co = 'PDI_checkOther' + PDV_id;
					srh_hash = 'var PDV_h' + PDV_id + " = '";
					
                    start = response.indexOf(srh_pq) + srh_pq.length;
                    stop = response.indexOf("';", start);
                    poll_question = response.substring(start, stop).replace(/\\/g, '');
                    writeLog("poll_question:" + poll_question);		
                    //response = response.replace(response.substring(start,stop), poll_question);	
                    start = response.indexOf(srh_r) + srh_r.length;
                    stop = response.indexOf(";", start);
                    if (response.substring(start, stop) == 'true') {
                        PDV_r = 1;
                    }
                    else {
                        PDV_r = 0;
                    }
                    writeLog("PDV_r:" + PDV_r);	
                    if (response.indexOf(srh_hash) > 0) {
                        PDV_hash = 1;
                    }
                    else {
                        PDV_hash = 0;
                    }
                    writeLog("PDV_hash:" + PDV_hash);
                    start = response.indexOf(srh_pt) + srh_pt.length;
                    stop = response.indexOf(";", start);
                    PDV_pt = response.substring(start, stop);
                    writeLog("PDV_pt:" + PDV_pt);	
                    start = response.indexOf(srh_po) + srh_po.length;
                    stop = response.indexOf(";", start);
                    PDV_po = response.substring(start, stop);
                    writeLog("PDV_po:" + PDV_po);	
                    start = response.indexOf(srh_s) + srh_s.length;
                    stop = response.indexOf(";", start);
                    PDV_s = response.substring(start, stop);
                    writeLog("PDV_s:" + PDV_s);	
                    start = response.indexOf(srh_b) + srh_b.length;
                    stop = response.indexOf(";", start);
                    PDV_b = response.substring(start, stop);
                    writeLog("PDV_b:" + PDV_b);	
                    start = response.indexOf(srh_l) + srh_l.length;
                    stop = response.indexOf(";", start);
                    PDV_l = response.substring(start, stop);
                    writeLog("PDV_l:" + PDV_l);
                    start = response.indexOf(srh_pr) + srh_pr.length;
                    stop = response.indexOf(";", start);
                    PDV_pr = response.substring(start, stop);
                    writeLog("PDV_pr:" + PDV_pr);	
                    start = response.indexOf(srh_w) + srh_w.length;
                    stop = response.indexOf(";", start);
                    PDV_w = response.substring(start, stop);
                    writeLog("PDV_w:" + PDV_w);	
                    start = response.indexOf(srh_sl) + srh_sl.length;
                    stop = response.indexOf(";", start);
                    PDV_sl = response.substring(start, stop);
                    writeLog("PDV_sl:" + PDV_sl);	
                    start = response.indexOf(srh_va) + srh_va.length;
                    stop = response.indexOf(";", start);
                    PDV_va = response.substring(start, stop);
                    writeLog("PDV_va:" + PDV_va);		
                    start = response.indexOf(srh_lnk) + srh_lnk.length;
                    stop = response.indexOf(";", start);
                    PDV_lnk = response.substring(start, stop);
                    writeLog("PDV_lnk:" + PDV_lnk);		
                    start = response.indexOf(srh_mt) + srh_mt.length;
                    stop = response.indexOf("';", start);
                    PDV_mt = response.substring(start, stop);
                    writeLog("PDV_mt:" + PDV_mt);			
                    start = response.indexOf(srh_mid) + srh_mid.length;
                    stop = response.indexOf("';", start);
                    PDV_mid = response.substring(start, stop);
                    writeLog("PDV_mid:" + PDV_mid);			
                    start = response.indexOf(srh_lp1) + srh_lp1.length;
                    stop = response.indexOf("';", start);
                    PDV_lp1 = response.substring(start, stop);
                    writeLog("PDV_lp1:" + PDV_lp1);			
                    start = response.indexOf(srh_lp2) + srh_lp2.length;
                    stop = response.indexOf("';", start);
                    PDV_lp2 = response.substring(start, stop);
                    writeLog("PDV_lp2:" + PDV_lp2);		
                    start = response.indexOf(srh_lp3) + srh_lp3.length;
                    stop = response.indexOf(";", start);
                    PDV_lp3 = '';
                    writeLog("PDV_lp3:" + PDV_lp3);	
                    start = response.indexOf(srh_lp3_1, stop);
                    if (start != -1)
                    {
                        start += srh_lp3_1.length;
                        stop = response.indexOf("';", start);
                        PDV_lp3 = response.substring(start, stop);
                        writeLog("PDV_lp3_1:" + PDV_lp3);	
                    }

                    start = response.indexOf(srh_lp4) + srh_lp4.length;
                    stop = response.indexOf("';", start);
                    PDV_lp4 = response.substring(start, stop);
                    writeLog("PDV_lp4:" + PDV_lp4);
                    srh_def = "var PDV_def" + PDV_id + " = '";
                    start = response.indexOf(srh_def) + srh_def.length;
                    stop = response.indexOf("';", start);
                    poll_style = stripslashes( response.substring(start, stop) );
                    writeLog("poll_style:" + poll_style);	
                    start = 0;
                    stop = 0;
                    var tmp = '';
                    var ans = '';
                    if ( PDV_hash == 1 ) {
                    	quote = "'";	
                    }
                    while (i < 100)
                    {
                    	writeLog('find answers - ' + i);
                        tmp = "PDV_A" + PDV_id + "[" + i + "] = new Array(4);";
                        start = response.indexOf(tmp);
                        if (start == -1) {
                            break;
                        }
                        else
                        {
                            PDV_Answers[i] = new Array(4);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][0] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][0] = ans;
                            writeLog("PDV_Answers["+i+"][0]:" + PDV_Answers[i][0]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][1] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][1] = ans;
                            writeLog("PDV_Answers["+i+"][1]:" + PDV_Answers[i][1]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][2] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][2] = ans;
                            writeLog("PDV_Answers["+i+"][2]:" + PDV_Answers[i][2]);
                            tmp = 'PDV_A' + PDV_id + '[' + i + '][3] = ' + quote;
                            start = response.indexOf(tmp) + tmp.length;
                            stop = response.indexOf(quote+';', start);
                            ans = response.substring(start, stop);
                            ans = ans.replace(/\\/g, "");
                            PDV_Answers[i][3] = ans;
                            writeLog("PDV_Answers["+i+"][3]:" + PDV_Answers[i][3]);
                        }
                        i++;
                    }
                    html = '<a name="pd_a_' + PDV_id + '"></a><div class="PDS_Poll" id="PDI_container' + PDV_id + '">';
                    html = '<div style="margin-bottom: 0px; margin-top: 0px;" name="PDI_form' + PDV_id + '" id="PDI_form' + PDV_id + '"><div class="pds-box"><div class="pds-box-outer"><div class="pds-box-inner"><div class="pds-box-top"><div class="pds-question"><div class="pds-question-outer"><div class="pds-question-inner"><div class="pds-question-top">' + PDV_mid + ' ' + poll_question + '</div></div></div></div><div class="pds-answer"><span id="pds-answer' + PDV_id + '"></span>';
					if (PDV_po == 1)
                    {
						html += '<span class="pds-answer-group">';
						
                        if (PDV_pt == 0)
                        {
                            html += '<span class="pds-answer-input"><input type="radio" name="PDI_answer' + PDV_id + '" id="PDI_answerOther' + PDV_id + '" value="other" class="pds-radiobutton"/></span>';
						}
                        html += '<label for="PDI_answerOther' + PDV_id + '">' + PDV_lp2 + '</label><br/><input class="pds-textfield" type="text" id="PDI_OtherText' + PDV_id + '" name="PDI_OtherText' + PDV_id + '" onclick="PDI_checkOther' + PDV_id + '();">';
                    	html += '<span class="pds-clear"></span>';
						html += '</span>';
					}
                    html += '</div><div class="pds-vote"><div class="pds-votebutton-outer">';
                    
                    if ( PDV_lp3 == '' )
                    	PDV_lp3 = 'Vote';

					if ( PDV_s < 99 || poll_style.indexOf('input.pds-votebutton') != -1 )	
					{
						if (PDV_lp3 == 'Vote' || PDV_lp3 == '')
					    {
					        html += '<input type="button" class="pds-votebutton" style="border:none;cursor: pointer;" src="http://i.polldaddy.com/polls/spacer.gif" onclick="PD_vote_opensocial(0);">';
					    }
					    else
					    {
					        html += '<input type="button" class="pds-votebutton-pack" value="' + PDV_lp3 + '"  onclick="PD_vote_opensocial(0);" />';
					    }
					}
					else
					{
						html += '<a href="javascript:PD_vote_opensocial(0);" id="pd-vote-button' + PDV_id + '" class="pds-vote-button"><span>' + PDV_lp3 + '</span></a>';
					}
					
					html += '<span class="pds-links">';
					html += '<a href="javascript:PD_vote_opensocial(1);" class="pds-view-results">' + PDV_lp1 + '</a><br/>';
				    			
					if (PDV_lnk == 1) {
				        html += '<a href="http://www.polldaddy.com" class="pds-pd-link">Polldaddy.com</a>';
				    }
					html += '<span class="pds-clear"></span>';
					html += '</span><span class="pds-clear"></span>';

				    html += '</div></div></div></div></div></div></div>';

                    for (PDV_x = 0; PDV_x < PDV_Answers.length; PDV_x++)
                    {
                        if (PDV_pt == 0) {
                            AA[PDV_x] = '<span class="pds-answer-group"><span class="pds-answer-input"><input class="pds-radiobutton" type="radio" id="PDI_answer' + PDV_Answers[PDV_x][0] + '" value="' + PDV_Answers[PDV_x][0] + '" name="PDI_answer[id]" /></span><label for="PDI_answer' + PDV_Answers[PDV_x][0] + '" class="pds-input-label"><span class="pds-answer-span">' + PDV_Answers[PDV_x][1] + '</span></label>' + PDV_Answers[PDV_x][3] + '<span class="pds-clear"></span><br/></span>';
						}
                        else {
                            AA[PDV_x] = '<span class="pds-answer-group"><span class="pds-answer-input"><input class="pds-checkbox" type="checkbox" id="PDI_answer' + PDV_Answers[PDV_x][0] + '" value="' + PDV_Answers[PDV_x][0] + '" name="PDI_answer' + PDV_Answers[PDV_x][0] + '" onclick="javascript:PDF_check_mc(this);" /></span><label for="PDI_answer' + PDV_Answers[PDV_x][0] + '" class="pds-input-label"><span class="pds-answer-span">' + PDV_Answers[PDV_x][1] + '</span></label>' + PDV_Answers[PDV_x][3] + '<span class="pds-clear"></span><br/></span>';
						}
                    }
                    var srh_ans = '<span id="pds-answer' + PDV_id + '">';
                    if (PDV_r == 1) {
                        AA = PDV_randomizeArray(AA);
                    }
                    for (i = 0; i < AA.length; i++) {
                        ansStr = ansStr + AA[i];
                    }
                    html = html.replace(srh_ans, srh_ans + ansStr);
                    html = html.replace(srh_co, "PDI_checkOther");
                }
            }
        }
        else {
            //try old js		
            start = response.indexOf(srh_id1);
            if (start != -1) {
                start = response.indexOf(srh_eq, start + srh_id1.length) + srh_eq.length;
                stop = response.indexOf(";", start);
                PDV_id = response.substring(start, stop);
                //console.log("PDV_id:" + PDV_id);
                var i = 0;
                var srh1 = "var PDV_html" + PDV_id + " = '";
                var srh2 = "PDV_html" + PDV_id + " += '";
                var srh3 = "AA" + PDV_id + "[";
                var srh4 = '<span id="pds-answer' + PDV_id + '">';
                srh_pt = 'var PDV_pt' + PDV_id + ' = ';
                srh_po = 'var PDV_po' + PDV_id + ' = ';
                srh_s = 'var PDV_s' + PDV_id + ' = ';
                srh_b = 'var PDV_b' + PDV_id + ' = ';
                srh_r = 'var PDV_POLLRAND' + PDV_id + ' = ';
                srh_l = 'var PDV_l' + PDV_id + ' = ';
                srh_pr = 'var PDV_pr' + PDV_id + ' = ';
                srh_sl = 'var PDV_sl' + PDV_id + ' = ';
                srh_va = 'var PDV_va' + PDV_id + ' = ';
                srh_vt = 'PD_vote' + PDV_id;
                srh_co = 'PDI_checkOther' + PDV_id;
                srh_pq = '<div class="pds-question-top">';

                start = response.indexOf(srh_pq) + srh_pq.length;
                stop = response.indexOf("</div>", start);
                poll_question = response.substring(start, stop).replace(/\\/g, '');
                response = response.replace(response.substring(start, stop), poll_question);
                //console.log("poll_question:" + poll_question);
                start = response.indexOf(srh_r) + srh_r.length;
                stop = response.indexOf(";", start);
                if (response.substring(start, stop) == 'true') {
                    PDV_r = 1;
                }
                else {
                    PDV_r = 0;
                }
                //console.log("PDV_r:" + PDV_r);
                start = response.indexOf(srh_pt) + srh_pt.length;
                stop = response.indexOf(";", start);
                PDV_pt = response.substring(start, stop);
                //console.log("PDV_pt:" + PDV_pt);
                start = response.indexOf(srh_po) + srh_po.length;
                stop = response.indexOf(";", start);
                PDV_po = response.substring(start, stop);
                //console.log("PDV_po:" + PDV_po);
                start = response.indexOf(srh_s) + srh_s.length;
                stop = response.indexOf(";", start);
                PDV_s = response.substring(start, stop);
                //console.log("PDV_s:" + PDV_s);
                start = response.indexOf(srh_b) + srh_b.length;
                stop = response.indexOf(";", start);
                PDV_b = response.substring(start, stop);
                //console.log("PDV_b:" + PDV_b);
                start = response.indexOf(srh_l) + srh_l.length;
                stop = response.indexOf(";", start);
                PDV_l = response.substring(start, stop);
                //console.log("PDV_l:" + PDV_l);
                start = response.indexOf(srh_pr) + srh_pr.length;
                stop = response.indexOf(";", start);
                PDV_pr = response.substring(start, stop);
                //console.log("PDV_pr:" + PDV_pr);
                start = response.indexOf(srh_sl) + srh_sl.length;
                stop = response.indexOf(";", start);
                PDV_sl = response.substring(start, stop);
                //console.log("PDV_sl:" + PDV_sl);
                start = response.indexOf(srh_va) + srh_va.length;
                stop = response.indexOf(";", start);
                PDV_va = response.substring(start, stop);
                //console.log("PDV_va:" + PDV_va);
                html = '<a name="pd_a_' + PDV_id + '"><div class="PDS_Poll" id="PDI_container' + PDV_id + '">';
                start = response.indexOf(srh1) + srh1.length;
                stop = response.indexOf("';", start);
                html = html + response.substring(start, stop);
                start = response.indexOf(srh2) + srh2.length;
                stop = response.indexOf("';", start);
                html = html + response.substring(start, stop);
                start = response.indexOf(srh2, stop);
                if (start != -1) {
                    start = start + srh2.length;
                    stop = response.indexOf("';", start);
                    html = html + response.substring(start, stop);
                    start = response.indexOf(srh2, stop);
                    if (start != -1) {
                        start = start + srh2.length;
                        stop = response.indexOf("';", start);
                        html = html + response.substring(start, stop);
                        start = response.indexOf(srh2, stop);
                        if (start != -1) {
                            start = start + srh2.length;
                            stop = response.indexOf("';", start);
                            html = html + response.substring(start, stop);
                        }
                    }
                }
                i = 0;
                if (PDV_pt > 0) {
                    do {
                        start = response.indexOf("'", response.indexOf(srh3, start) + srh3.length) + 1;
                        stop = response.indexOf("';", start);
                        ans[i] = response.substring(start, stop).replace(/\\/g, '');
                        i++;
                        if (response.indexOf('<input class="pds-checkbox"', stop) <= 0) {
                            start = 0;
                            break;
                        }
                    }
                    while (start > 0 && i < 99);
                }
                else {
                    do {
                        start = response.indexOf("'", response.indexOf(srh3, start) + srh3.length) + 1;
                        stop = response.indexOf("';", start);
                        ans[i] = response.substring(start, stop).replace(/\\/g, '');
                        i++;
                        if (response.indexOf('<input class="pds-radiobutton"', stop) <= 0) {
                            start = 0;
                            break;
                        }
                    }
                    while (start > 0 && i < 99);
                }
                if (PDV_r == 1)
                {
                    ans = PDV_randomizeArray(ans);
                }
                for (i = 0; i < ans.length; i++)
                {
                    ansStr = ansStr + ans[i];
                }
                html = html.replace(srh4, srh4 + ansStr);
                html = html.replace(srh_vt, "PD_vote_opensocial");
                html = html.replace(srh_vt, "PD_vote_opensocial");
                html = html.replace(srh_co, "PDI_checkOther");
                var css_srh1 = 'fileref.setAttribute("id", "poll_style' + PDV_id + '")';
                var css_srh2 = "var def = '";
                start = response.indexOf(css_srh1);
                if (start != -1) {
                    start = start + css_srh1.length;
                    start = response.indexOf(css_srh2, start) + css_srh2.length;
                    stop = response.indexOf("';", start);
                    poll_style = response.substring(start, stop);
                    //console.log("poll_style:" + poll_style);
                }
            }
        }

        html = html + '</div>';
        while (poll_style.indexOf("#PDI_container" + PDV_id) != -1) {
            poll_style = poll_style.replace("#PDI_container" + PDV_id, "");
        }
    }
    else
    {
        if (attempts < 10) {
            attempts += 1;
            makeCachedRequest(poll_url, pageload_Callback, 1);
        }
        else {
            html = '';
        }
    }
    //console.log("html: " + html);
    return html;
}

function PDV_randomizeArray(myArray) {
    var i = myArray.length;
    if (i == 0) return false;
    while (--i) {
        var j = Math.floor(Math.random() * (i + 1));
        var tempi = myArray[i];
        var tempj = myArray[j];
        myArray[i] = tempj;
        myArray[j] = tempi;
    }
    return myArray;
}

function init_Callback(data) {
    owner = data.get('owner');
    viewer = data.get('viewer');
    var ownerdata = data.get("owner_data");
    if (isDefined(owner) && isDefined(owner.getData)) {
        owner = owner.getData();
        if (!isDefined(owner.getField(opensocial.Person.Field.ID))) {
            if (loadattempts < 5) {
                loadattempts++;
                init();
            } else {
                renderFaultPage();
            }
        }
        else {
            ownerID = owner.getField(opensocial.Person.Field.ID);
			ownerID = stripMySpaceDotCom( ownerID );
            poll_location = getPollLocation();
        }
    }
    if (isDefined(viewer) && isDefined(viewer.getData)) {
        viewer = viewer.getData();
		if (isDefined( viewer )){
			if (isDefined(viewer.getField(opensocial.Person.Field.ID))) {
				viewerID = viewer.getField(opensocial.Person.Field.ID);
				viewerID = stripMySpaceDotCom( viewerID );
			}
		}
    }
    pollID = null;
    if (isSameUser()) {
        makeCachedRequest("http://jr.polldaddy.com/get-selected-poll.php?h=" + host, getPollID_Callback, 1);
    }
    else {
        if (isDefined(ownerdata) && isDefined(ownerdata.getData)) {
            ownerdata = ownerdata.getData();
            if (ownerdata) {
                if (isDefined(ownerdata[ownerID])) {
                    ownerdata = ownerdata[ownerID];
                    pollID = ownerdata["poll_id"];
                    if (parseInt(pollID) == 0) {
                        pollID = null;
                    }
                }
            }
        }
        if (isDefined(pollID)) {
            pushStyle();
            pushHTML();
            poll_url = poll_path + pollID + '.js';
        }
        renderPage();
    }
}

function getPollLocation(){
	switch (host)
    {
    case '2':
        {//Orkut
            return "http://www.orkut.com" + owner.getField(opensocial.Person.Field.PROFILE_URL);
        }
    case '3':
        {//Ning
            return owner.getField(opensocial.Person.Field.PROFILE_URL).substring(0, owner.getField(opensocial.Person.Field.PROFILE_URL).lastIndexOf("profile/") + 8) + ownerID;
        }
	default:
		{//All Others
			return owner.getField(opensocial.Person.Field.PROFILE_URL);
		}
    }
}

function getPollID_Callback(data) {
    var response;
    if (data.text) {
        response = data.text;
    } else if (data.body) {
        response = data.body;
    } else {
        response = data;
    }
    response = parseInt(response);
    if (isNaN(response)) {
        response = '';
    }
    if (response == '') {
        poll_html = '<table align="center" border="0"><tr><td><div id="outerContainer" style="height:85px;"><div id="os_stage"><div id="os_stage_inner"><br /><table class="os_data"><thead><tr><th></th><th>No Poll selected for this space!</th><th></th></tr></thead><tbody><tr class="alt"><td></td><td>Click <img alt="Add to profile" height="16" src="http://jr.polldaddy.com/images/ico_add.gif" width="16" /> to send a Poll to this space.</td><td></td></tr><tr><td colspan="3" height="2px"></td></tr></tbody><tfoot><tr><td></td><td><span id="footer"><a href="javascript:gotoCanvas();">Go to Application</a></span></td><td></td></tr></tfoot></table></div></div><p class="cf"></p></div></td></tr></table>';
        pushStyle();
        pushHTML();
    }
    else
    {
        pollID = response;
        poll_url = poll_path + pollID + '.js';
		renderPage();
    }
}

function pageload_Callback(data) {
    var htmlSet = false;
    var response;
    if (data.text) {
        response = data.text;
    } else if (data.body) {
        response = data.body;
    } else {
        response = data;
    }
    if (response.indexOf) {
        if (response.indexOf('NoSuchKey') < 0) {
            response = getHtml(response);
        } else {
            response = '';
        }
    } else {
        response = '';
    }
    if (response == '') {
        writeLog("Poll html Not Set");
        if (isSameUser()) {
            poll_html = '<table align="center" border="0"><tr><td><div id="outerContainer" style="height:85px;"><div id="os_stage"><div id="os_stage_inner"><br /><table class="os_data"><thead><tr><th></th><th>No Poll selected for this space!</th><th></th></tr></thead><tbody><tr class="alt"><td></td><td>Click <img alt="Add to profile" height="16" src="http://jr.polldaddy.com/images/ico_add.gif" width="16" /> to send a Poll to this space.</td><td></td></tr><tr><td colspan="3" height="2px"></td></tr></tbody><tfoot><tr><td></td><td><span id="footer"><a href="javascript:gotoCanvas();">Go to Application</a></span></td><td></td></tr></tfoot></table></div></div><p class="cf"></p></div></td></tr></table>';
        }
    }
    else {
        writeLog("Poll html Set");
        poll_html = response;
        htmlSet = true;
    }
    if (htmlSet) {
    	if( host == 15 ) {
    		poll_link = '';
    	} else if (isSameUser()) {
            poll_link = '<span style="font: normal normal normal 9px verdana;color: #777777;"><a href="javascript:gotoCanvas();" style="color: #555;text-decoration: none;">Go to Application</a></span>  |  <span style="font: normal normal normal 9px verdana;color: #777777;"><a href="javascript:inviteVoters();" style="color: #555;text-decoration: none;">Invite Voters</a></span>';
        }
        document.getElementById('poll_canvas_links').innerHTML = poll_link;
    }
    pushStyle();
    pushHTML();
    if (isSameUser()) {
        var req = opensocial.newDataRequest();
		
		if(typeof opensocial.newIdSpec == 'function') {
			var idspec = opensocial.newIdSpec({ "userId" : "OWNER", "groupId" : "SELF" });
		    req.add(req.newUpdatePersonAppDataRequest(opensocial.IdSpec.PersonId.VIEWER, "poll_id", PDV_id));
		}
		else{
			req.add(req.newUpdatePersonAppDataRequest(opensocial.DataRequest.PersonId.VIEWER, "poll_id", PDV_id));
		}
		
        if (host != 8){ req.send(getlatestActivity); }
		else { req.send(); }
    }
}

function resultsCallback(data) {
    var response = "";
    if (data.text) {
        response = data.text;
    } else if (data.body) {
        response = data.body;
    } else {
        response = data;
    }
    response = response.substring(response.indexOf('.innerHTML = ', 0));
    response = response.substring(14, (response.lastIndexOf("'")));
    response = response.replace('PDV_go' + PDV_id + '()', 'makeCachedRequest(poll_url,pageload_Callback,1)');
    response = response.replace(/\\/g, '');
    document.getElementById('poll_canvas').innerHTML = response;
    resize(document.getElementById("poll_canvas_container").scrollHeight);
}

function Set_VoteCookie(name, value, expires, path, domain, secure) {
    var today = new Date();
    today.setTime(today.getTime());
    if (expires) {
        expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date(today.getTime() + (expires));
    document.cookie = name + "=" + escape(value) +
    ((expires) ? ";expires=" + expires_date.toGMTString() : "") +
    ((path) ? ";path=" + path: "") +
    ((domain) ? ";domain=" + domain: "") +
    ((secure) ? ";secure": "");
}

function Get_VoteCookie(check_name) {
    var a_all_cookies = document.cookie.split(';');
    var a_temp_cookie = '';
    var cookie_name = '';
    var cookie_value = '';
    var b_cookie_found = false;
    for (i = 0; i < a_all_cookies.length; i++) {
        a_temp_cookie = a_all_cookies[i].split('=');
        cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
        if (cookie_name == check_name) {
            b_cookie_found = true;
            if (a_temp_cookie.length > 1) {
                cookie_value = unescape(a_temp_cookie[1].replace(/^\s+|\s+$/g, ''));
            }
            return cookie_value;
            break;
        }
        a_temp_cookie = null;
        cookie_name = '';
    }
    if (!b_cookie_found) {
        return null;
    }
}

function goToView(dest) {
    var supported_views = gadgets.views.getSupportedViews();
	if ( dest == 'canvas' ){
		gadgets.views.requestNavigateTo(supported_views[gadgets.views.ViewType.CANVAS], null);
	}
	else if ( dest == 'preview' ){
		gadgets.views.requestNavigateTo(supported_views[gadgets.views.ViewType.PREVIEW], null); 
	}
}

function gotoCanvas() {
    goToView('canvas');
}

function gotoAbout() {
    goToView('preview');
}

function inviteVoters() {
    writeLog("Poll invite Voters");
    var m = '<a href="' + owner.getField(opensocial.Person.Field.PROFILE_URL) + '">' + poll_question + '</a>';
    var params = {};
    params[opensocial.Message.Field.TYPE] = opensocial.Message.Type.EMAIL;
    //Also possible - PRIVATE_MESSAGE/NOTIFICATION/PUBLIC_MESSAGE
    params[opensocial.Message.Field.TITLE] = "New Poll: " + poll_question;
    params[opensocial.Message.Field.BODY] = m;
    var message = opensocial.newMessage(owner.getDisplayName() + ' would like you to vote on a new poll, "' + poll_question + '".\n\nYou can find the poll at ' + poll_location, params);
    // VIEWER, OWNER, VIEWER_FRIENDS, OWNER_FRIENDS or ids as a string or an array.
    opensocial.requestSendMessage("VIEWER_FRIENDS", message,
    function(resp) {});
}

function sendAppAdd() {
    writeLog("sendAppAdd called");
    var message = opensocial.newMessage(owner.getDisplayName() + " would like you to install this really super application.");
    writeLog(message);
    opensocial.requestShareApp(opensocial.DataRequest.Group.VIEWER_FRIENDS, message,
    function() {});
}

function getlatestActivity() {
    var url = "http://jr.polldaddy.com/get-activity.php?h=" + host;
    makeCachedRequest(url, getlatestActivity_Callback, 1);
}

function getlatestActivity_Callback(data) {
    writeLog('getlatestActivity_Callback');
    var response;
    if (data.text) {
        response = data.text;
    } else if (data.body) {
        response = data.body;
    } else {
        response = data;
    }
    if (response.indexOf) {
		if (response.length > 1 ){ 
			response = response.replace('[app]', '<a href="javascript:gotoAbout();">PollDaddy</a>' );
			response = response.replace('[sender]', '<a href="' + owner.getField(opensocial.Person.Field.PROFILE_URL) + '">' + owner.getDisplayName() + '</a>' );
	        response = response.replace("[poll]", 'poll, "' + poll_question + '"');
			post_activity( response ); 
		}
    }
}

function post_activity(text) {
    writeLog('post_activity');
    var activityParams = {};
    activityParams[opensocial.Activity.Field.TITLE] = text;

    var activity = opensocial.newActivity(activityParams);
    opensocial.requestCreateActivity(activity, opensocial.CreateActivityPriority.HIGH, post_activity_callback);
}

function post_activity_callback(data) {
    writeLog('postActivity_callback');
    writeLog(data);
}

function isDefined( data ) {
	if(null === data || "undefined" === typeof(data) || "" === data){ return false; }
	else{ return true; }
}

function stripMySpaceDotCom(id){
    if(0 === id.indexOf("myspace.com:")){ return id.substr("myspace.com:".length); }
    else{ return id; }
}

function writeLog(data) {
    if(debug && console){console.log(data);}
    }
