Refresh iframe after submit

http://gameinfiniti.com/

When you click on the comments link it opens up fancybox which contains an iframe.

There you post and read comments. But after you post a comment a new window opens, then closes, and your left hanging with the same thing you started with. But the data is received.

This does not happen when there is no iframe, any idea why this is?

The form also had this weird target attribute “ifrrate”? WTH is that?

Thanks

Javascript:


// Show/hide comment post box
function showhide_comments_post_box()
	{
		if (document.getElementById('comments_post_box').style.display == '')
			{
				document.getElementById('comments_post_box').style.display = 'none';
			}
		else
			{
				document.getElementById('comments_post_box').style.display = '';
			}
	}

function validate_showhide_comments_post_box(id)
	{
        var status = getCookie('script_'+id+'_comment')
        
        if ((status==null) || (status==""))
            showhide_comments_post_box();
		else
			alert('You have already posted your comment here!');	
	}

// Shows a message inside page through a hidden div layer
function message(msg_str)
	{
		if(msg_str == 0)
			{
				document.getElementById('message').innerHTML='';
				document.getElementById('message').style.display = 'none';
			}
		else
			{
				document.getElementById('message').innerHTML= msg_str;
				document.getElementById('message').style.display = '';
			}
	}
	
// Function to count characters in form	
function count_char(field, maxlimit) 
	{
		if (field.value.length > maxlimit)
			field.value = field.value.substring(0, maxlimit);
		else
			message('Charecters Left: '+(maxlimit - field.value.length));
	}
	
// Function to validate email
function email_check (emailStr) 
	{
		var emailPat=/^(.+)@(.+)$/
		var specialChars="\\\\(\\\\)<>@,;:\\\\\\\\\\\\\\"\\\\.\\\\[\\\\]"
		var validChars="\\[^\\\\s" + specialChars + "\\]"
		var quotedUser="(\\"[^\\"]*\\")"
		var ipDomainPat=/^\\[(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\.(\\d{1,3})\\]$/
		var atom=validChars + '+'
		var word="(" + atom + "|" + quotedUser + ")"
		var userPat=new RegExp("^" + word + "(\\\\." + word + ")*$")
		var domainPat=new RegExp("^" + atom + "(\\\\." + atom +")*$")
		var matchArray=emailStr.match(emailPat)
		
		if (matchArray==null) 
			{
				return false
			}
		var user=matchArray[1]
		var domain=matchArray[2]
		
		if (user.match(userPat)==null) 
			{
				return false
			}
		var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null)
			{
				// this is an IP address
				for (var i=1;i<=4;i++) 
					{
						if (IPArray[i]>255) 
							{
								return false
							}
					}
				return true
			}
		var domainArray=domain.match(domainPat)
		if (domainArray==null) 
			{
				return false
			}
		var atomPat=new RegExp(atom,"g")
		var domArr=domain.match(atomPat)
		var len=domArr.length
		if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) 
			{
				return false
			}
		if (len<2) 
			{
				return false
			}
		return true;
	}
	
function inst_write_new_item()
	{			
		var date = today_date();
		
		if(post_box.email.value !='')
			name_code = '<a href="mailto:'+post_box.email.value+'">'+post_box.name.value+'</a>';
		else
			name_code = post_box.name.value;
					
		var code = '<div class="item"><div class= "name">[ '+date+' ] :: '+name_code+'</div>'+post_box.comment.value;+'</div>';
			
		document.getElementById('new_post').innerHTML= code;
		document.getElementById('new_post').style.display = '';
	}
	
// submit_comments
function submit_comment(id)
{
	if (post_box.name.value=='')
	{
		message('Please provide your name!')
		document.post_box.name.focus();
		return false
	}
	
	if (post_box.comment.value=='')
	{
		message('You should provide your comment!');
		document.post_box.comment.focus();
		return false
	}
	
	if ((post_box.email.value !='') && (!email_check(post_box.email.value)))
	{
		message('Your email seems invalid!');
		document.post_box.email.focus();
		return false
	}
	document.post_box.submit();	
	alert("Thank you posting your valuable comments!");
	document.getElementById('comments_post_box').style.display = 'none';
	inst_write_new_item();
	setCookie('script_'+id+'_comment', '1', 3) // once a user puts comment he cannot recomment within 3 days
	return false
}


//function to find out todays date	
function today_date()
	{
		var today			= new Date();
		var today_year		= today.getFullYear();
		var today_month		= today.getMonth()+1;
		var today_date		= today.getDate();
		var date			= today_year+'-'+today_month+'-'+today_date
		return date;	
	}


function write_comments_control(id)
	{
		document.write('<div class="header">');
		document.write('<div class="post_link">[ <a href="#comments_post_box" onclick="javascript:validate_showhide_comments_post_box('+id+'); message(0);">Post</a> ]</div>');
		document.write('<div class="text">Comments:</div>');
		document.write('</div>');
		
		// Post Box
		
		
		document.write('<form name="post_box" action="comments_ram.php" method="post" target="ifrrate">');		
		document.write('<div id="comments_post_box" style="display:none;">');
		
		// Hidden Informations about this form
		document.write('<input type="hidden" name="action" value="post">');
		document.write('<input type="hidden" name="id" value="'+id+'">');
		
		document.write('Name:<br>');
		document.write('<input type="text" name="name" size="45" onkeydown="count_char(this.form.name, 50);" onkeyup="count_char(this.form.name, 50);"><br>');
		document.write('Email:<br>');
		document.write('<input type="text" name="email" size="45" onkeydown="count_char(this.form.email, 50);" onkeyup="count_char(this.form.email, 50);"><br>');
		document.write('Comment:<br>');
		document.write('<textarea rows="3" cols="38" name="comment" onkeydown="count_char(this.form.comment, 300);" onkeyup="count_char(this.form.comment, 300);"></textarea><br>');

		// Message
		document.write('<br><div id="message" style="display:none"></div><br>');
		document.write('<div class="button">');
		document.write('<input type="submit" onclick="return submit_comment('+id+');" value="   Post   ">');
		document.write('<input type="reset" onclick="message(0);" value="   Clear  ">');
		document.write('<input type="button" onclick="showhide_comments_post_box();" value="   Close  "></div>');
		
		document.write('</div>');
		// End Post Box		
		document.write('</form>');
		
		
		
		document.write('<div id="new_post" style="display:none"></div>');
	}
	

// Stops Javascript Errors
function stoperror()
    {
        //alert('You have an javascript error in this page');
        return true;
    }

// Add hyperlink to div tags	
function go(url)
    {
        window.location=url;
    }
      
// Closes a window
function close_window()
	{
		window.close();
	}
    
// Url encode to lowercase and remove whitespace and '&'
function url_enc(str)
	{
		str = str.toLowerCase();
		str = str.replace(/ & /, "_");
		str = str.replace(/ /, "_");
		str = str.replace(/ /, "_");
		str = str.replace(/ /, "_");
		str = str.replace(/'/, "");
		return str;
	}
	
// function to get a cookie
function getCookie(c_name)
{
    if (document.cookie.length>0)
        {
            c_start=document.cookie.indexOf(c_name + "=")
            if (c_start!=-1)
                { 
                    c_start=c_start + c_name.length+1 
                    c_end=document.cookie.indexOf(";",c_start)
                    if (c_end==-1) c_end=document.cookie.length
                    return unescape(document.cookie.substring(c_start,c_end))
                    } 
        }
            return ""
}
    

    
// function to set a cookie
function setCookie(c_name,value,expiredays)
{
    var exdate = new Date()
    exdate.setDate(exdate.getDate() + expiredays)
    document.cookie=c_name+ "=" +escape(value)+
    ((expiredays==null) ? "" : ";expires="+exdate.toGMTString()) // If then else statement ?:
}