//label should be named feedback-q1 to feedback-qN
// answer choices should be named q11 to qNM
var hideFeedbackAfterSend = false;

function feedback_onload()
{
    if(hideFeedbackAfterSend)
    {
		showFeedback(true);
	}
    
    if($('feedback-btn') != undefined)
        Event.observe('feedback-btn', 'click', feedbackBtn_click, false);
    
    var o = $('comments');
	if(o != null)
	{
		o.value = "";
	}
	
    //check if already sent
    try
    {
        var i = 1;
	    var s = "feedback-q"+i;
	    while(parent.userData[s] != null)
	    {
	        if(parent.userData[s] == "true")
	        {
	            var feedbackDiv = $("feedback");
	            var feedbackThankYouDiv = $("feedbackThankYou");
	            if($("q"+i) != null)
	            {
	                //hide feedback
	                if(hideFeedbackAfterSend)
	                {
						showFeedback(false);
					}
	                break;
	            }
	            else
	            {
	                if(hideFeedbackAfterSend)
	                {
						showFeedback(true);
					}
	            }  
	        }
	        i++;
	        s = "feedback-q"+i;
	    }
    }
    catch(ex)
    {
    
    }
}

function feedbackBtn_click()
{
	var o;
	var arr = $H([]);
	var id = 1;
		
	for(var i=1; i<100; i++)
	{ 
        v = getValue("q"+i);
        if(v != null)
        {
           arr["q"+i] = v;
        }
    }
        
	//find all rb's with name q1 - qN
	for(var i=1; i<100; i++)
	{
		o = $('q'+i+'1');
		if(o != null)
		{
			id = i;
			for(var j=1; j<100; j++)
			{
				o = $('q'+i+''+j);
				if(o != null && o.type == "radio" && o.checked)
				{
					arr['q'+i] = o.value.strip();
				}
				else if(o == null)
				{
					break;
				}
			}
		}
	}
	
	//comments
	o = $('comments');
	if(o != null && o.value != "")
	{
		arr["comments"] = o.value.strip();
	    o.value = "";
	    //alert("Your question has been sent. Thank you.");
	}
	
	var qs = arr.toQueryString();  
	if(qs.length > 0)
	{
        if(typeof(sendFeedback) != "undefined")
        {
            sendFeedback(id, qs);
        }
        else
        {
            var userData = getUserData();
            if(userData != null)
            {
                var img = new Image();
                var url = reportUrl + "t=f&" + "cid=" + userData.id + "&" + arr.toQueryString();
                alert(url);
                //img.src = url + "&i="+new Date().getTime()+Math.random()*1000;
            }
        }
	   
	   alert("Your information has been received, thank you."); 
	   
	   if(hideFeedbackAfterSend)
	    {
		    showFeedback(false);
	    }
	}
}

function getUserData()
{
	var o = new Object();
	if(Cookies.accept)
	{
		o = new Object();
		o.id = Cookies.getCookie("cid");
		if(o.id == null)
		{
			o.id = new Date().getTime()+Math.random(10000);
			Cookies.setCookie("cid", o.id, 365);
		}
		o.isRegistered = (Cookies.getCookie("isRegistered") == "true")?true:false;
		o.sentFeedback = Cookies.getCookie("sentFeedback");
		o.targetUrl = Cookies.getCookie("targetUrl");
	}
	return o;
}

function getValue(id)
{
    var value = null;
    o = $(id);
    if(o != null)
    {
        try
        {
            if(o.value != null && o.value != "" && (o.type == "text" || o.type == "textbox"))
            {
                value = o.value.strip();
            }
            else if(o.type == "check" || o.type == "checkbox")
            {
                value = o.checked;
            }
            else if(o.options != null)
            {
                value = o.options[o.selectedIndex].innerHTML;
            }
        }
        catch(e)
        {          
        }
    }
    return value; 
}

function showFeedback(show)
{
     var feedbackDiv = $("feedback");
     var feedbackThankYouDiv = $("feedbackThankYou");
     if(feedbackDiv != null)
     {
        if(show)
        {
             feedbackDiv.style.display = "block";
        }
        else
        {
             feedbackDiv.style.display = "none";
        }
     }
     if(feedbackThankYouDiv != null)
     {
        if(show)
        {
             feedbackThankYouDiv.style.display = "none";
        }
        else
        {
             feedbackThankYouDiv.style.display = "block";
        }
     }   
}

//register onload
Event.observe(window, 'load', feedback_onload, false);
