/* copyright spinwhip, 2008*/

var newdiv;
var showingDiv2=false;
var showingDiv3=false;
var topZ=1;
var inner2;
var inner3;
var div2;
var div3;
var container;
var fcontainer;
var url='http://www.spinwhip.com';
var related;
var logged;
var okbtn="<br/><input type='image' SRC='images/ok.png' ALT='Submit' value='submit' />";
var closebtn="<div id='claim' name='claim' ><div id='close_btn' name='close_btn' align=right ><a href='javascript:clearDiv();'><img src='images/close.png' alt='close this item'/></a></div>";
var forget=false;

function forgot()
{
	if(forget==false)
	{
		forget=true;
		input="<div id='sectiontitle3' ><h2>Forgot your password?</h2></div><div id='subsection3'><div  name='fform' id='fform' > <form action ='javascript:forgot()' name='forgot' method='post'> \n <label>Type your email here <br/> \n <label>\n <input name='email' type='text area' rows='1' cols='80' ></textarea></label><br/>\n"+okbtn+"\n </form></div></div>";	
		innerFill(input,3);	
		pageTracker._trackPageview("/forgot1");
	}
	else
	{		
		parameters="email="+document.forgot.email.value;
		ajax(parameters,'forgot.php',4,inner3); 
		pageTracker._trackPageview("/forgot2");
	}
}

function contact()
{	
	input="\n<div id='sectiontitle2'><h2>Contact us!</h2></div><div id='subsection2'> We love to get in touch. Please use the form below if you've got feedback, suggestions, ideas, questions, complaints, awards, etc.</div><div id='subsection2'> <form action ='javascript:contact2()' name='contact' method='post'> \n <label><br/><h3>Title</h3><input name='title' type='text area' rows='1' cols='22' ></input> e.g. \"Coca-Cola\"</label><br/>	\n <label><br/><h3>Your Message </h3>\n <textarea name='message'  rows='12' cols='40' ></textarea></label><br/>\n "+okbtn+"\n </form></div>";	
	innerFill(input,2);	
	pageTracker._trackPageview("/contact1");
}

function contact2()
{
	parameters="title="+validate(document.contact.title.value)+"&message="+validate(document.contact.message.value);
	ajax(parameters,'contact.php',4,inner2);
	pageTracker._trackPageview("/contact1");
}

function about()
{
	pageTracker._trackPageview("/about");
	innerFill(' ',3);
	ajax('x=z','about.php',2,inner3);	
}

function tnc()
{
	pageTracker._trackPageview("/tnc");
	innerFill(' ',3);
	ajax('x=z','terms.php',2,inner3);		
}

function ispinwhip(uid)
{
	pageTracker._trackPageview("/"+uid);
	innerFill(' ',3);
	input='u='+uid;
	ajax(input,'profile.php',2,inner3);	
}

function comment(claim,comment)
{	
	input="\n<div  name='cform' id='cform' ><br/> <form action ='javascript:comment2()' name='comment' method='post'> \n <label><b>Your comment:</b><br/> \n <label>\n <textarea name='cbody'  rows='5' cols='40' ></textarea></label><br/>\n<input type='hidden' name='claim' value='"+claim+"'><input type='hidden' name='comment' value='"+comment+"'> "+okbtn+"\n </form></div>";	
	if (document.getElementById('cform')!=undefined)
	{
		container.removeChild(document.getElementById('cform'));
	}
	document.getElementById(comment).innerHTML=document.getElementById(comment).innerHTML+input;
	container=document.getElementById(comment);	
	pageTracker._trackPageview("/comment1");
}

function comment2()
{	
	var parameters = "tid="+thisMovie('swf').getTid()+"&claim="+document.comment.claim.value+"&cbody="+validate(addlines(document.comment.cbody.value))+"&comment="+document.comment.comment.value;
	script="xcomment.php";
	ajax(parameters,script,1,inner2);		
	pageTracker._trackPageview("/comment2");
}

function addEvidence(claim)
{
	if (related==null)
	{		
		related=document.getElementById('related');
		input="<br/><br/><form action ='javascript:addEvidence2()' name='addevidence' method='post'><input type='hidden' name='claim' value='"+claim+"'><label><b>Related Content</b><br/> <input name='related' type='text area' rows='1' cols='22' > <br/>e.g. \"en.wikipedia.org/....\" (This must be real proof to support your claim!)<br/> <label><br/>	 <label><b>Description (optional) </b><br/> \n <label>\n <input name='desc' type='text area'  rows='1' cols='40' ></textarea></label><br/>     "+okbtn+" \n </form>";
		related.innerHTML=related.innerHTML+input;
		pageTracker._trackPageview("/addevidence1");
	}
}

function addEvidence2()
{
	var parameters = "tid="+thisMovie('swf').getTid()+"&claim="+document.addevidence.claim.value+"&related="+validate(document.addevidence.related.value)+"&desc="+validate(document.addevidence.desc.value);
	script="xevidence.php";
	ajax(parameters,script,1,inner2)		
	related=null; 
	pageTracker._trackPageview("/addevidence2");
	
}

function moreTopics()
{
	var parameters = "moreT=x";
	script="moretopics.php";
	innerFill('	',2);
	ajax(parameters,script,2,inner2)			
	pageTracker._trackPageview("/moreTopics");
}

function query()
{
	var parameters = "query="+validate(document.query.query.value);
	script="search.php";
	innerFill('	',3);
	ajax(parameters,script,2,inner3)			
	pageTracker._trackPageview("/search");
}

function vote(theVote,cid)
{
	pageTracker._trackPageview("/vote");
	if (theVote>0)
	{
		theVote=1;
	}
	else
	{
		theVote=-1;
	}
	var parameters = "tid="+thisMovie('swf').getTid()+"&cid="+cid+"&vote="+theVote;
	script="xvote.php";
	ajax(parameters,script,2,document.getElementById('vote'));
	refreshTree();	
}

function createClaim()
{		
	pageTracker._trackPageview("/createclaim1");
	input="\n<div id='sectiontitle2'><h2>Create claim (about "+thisMovie('swf').getTname()+")</h2></div><div id='subsection2'>This is the place to make a claim or comment about the topic you're currently browsing. </div><div id='subsection2'><form action ='javascript:createClaim2()' name='createclaim' method='post'> \n <label><br/><h3>Title</h3> <input name='title' type='text' rows='1' columns='42' ></input> <br/>e.g. \"This company/politician is evil\"</label> <br/><br/>\n<input type='radio' name='direction' value='1' checked> This claim is a positive comment about the topic<br/></input>\n<input type='radio' name='direction' value='-1' > This claim is a negative comment <br/></input><br/> \n<label><h3>Your claim:</h3><textarea name='cbody'  rows='12' cols='50' ></textarea></label><br/>\n 	<br/><label><b>Related content (optional)</b><br/> <input name='related'  'text area' rows='1' cols='50' > </input><br/>e.g. \"en.wikipedia.org/....\" (This must be real proof to support your claim!)<br/> </label>\n<input type='hidden' name='ttid' value='"+thisMovie('swf').getTid()+"'></input>	\n"+okbtn+"\n </form> </div>";	
	
	innerFill(input,2);	
	//alert(input);
}

function createClaim2()
{
	pageTracker._trackPageview("/createclaim2");
	direction=0;
	if (document.createclaim.direction[0].checked==true)
	{
		direction=1;
	}
	else
	{
		direction= -1;
	}
	if (document.createclaim.related.value=="")  
	{
		evidence="";
	}
	else
	{
		evidence="&evidence="+validate(document.createclaim.related.value);
	}
	var parameters = "title=" + validate(document.createclaim.title.value) + evidence +"&direction="+direction+ "&cbody="+validate(addlines(document.createclaim.cbody.value))+"&tid="+document.createclaim.ttid.value ;
	script="xcreateclaim.php";
	ajax(parameters,script,1,inner2);			
	//refreshTree();		//fixed FF old topic error. 
}

function showClaim(tid,cid)
{	
	pageTracker._trackPageview("/showclaim");
	input="";
	innerFill(input,2);
	var parameters = "tid=" + tid + "&cid="+cid;
	script="xviewclaim.php";
	ajax(parameters,script,2,inner2);			
	url='http://www.spinwhip.com?tcid='+tid+'&cid='+cid;
	if (tid!= thisMovie('swf').getTid() )
	{		
		thisMovie('swf').showTree(tid);
	}
}

function createTree()
{	
	pageTracker._trackPageview("/createtree1");
	input="\n<div id='sectiontitle2'><h2>Create topic</h2></div><div id='subsection2'> This is the place to create a topic of conversation, so that people can then make claims or comments about it. Remember, a topic title and description must be neutral. </div><div id='subsection2'><form action ='javascript:createTree2()' name='createtree' method='post'> \n <label><br/><h3>Topic name</h3> <input name='title' type='text area' rows='1' cols='22' ></input> e.g. a specific brand, politician, product, etc.</label><br/>	\n <label><br/><h3> Topic description </h3>\n <textarea name='description'  rows='8' cols='50' ></textarea></label><br/>\n "+okbtn+"\n </form></div>";	
	innerFill(input,2);	
}

function createTree2()
{		
	pageTracker._trackPageview("/createtree2");
	var parameters = "title=" + validate(document.createtree.title.value)+ "&desc="+ validate(document.createtree.description.value);
	script="xcreatetree.php";
	ajax(parameters,script,1,inner2);			
}

function login(instructions)
{
	pageTracker._trackPageview("/loginsignup");
	if (instructions==undefined){instructions=" "};
	input="<div id='lform' name='lform' >         <div id='sectiontitle3'><h2>Login..</h2></div>                                                  <div id='subsection3'>"+instructions+"                                                  <form name='login' action ='javascript:checklogin(5);' method='post' id='login'> \n <label><b>username</b><br/> \n <input name='uname' rows='1' cols='12' ></input></label><br/> \n <label><br/><b>password</b> <br/> \n <input type='password' name='password' rows='1' cols='12' ></input></label><br/> \n "+okbtn+" \n </form><br/><a href='javascript:forgot();'>forgot your password?</a><br/><br/><br/><br/><br/><br/><br/></div></div>"+"\n <div id='sectiontitle3'><h2>..Or sign up!</h2></div> <div id='sform' name='sform'><form name='signup' action ='javascript:checksignup(5)' method='post'> <div id='subsection3'>			\n <label><b>choose a user name</b><br/> <input name='uname' type='text area' rows='1' cols='22' ></input><br/> at least 6 letters</label><br/>				\n <label><br/><b>choose a password</b><br/> <input name='password' type='password' rows='1' cols='22' ></input><br/> at least 6 letters</label><br/>			\n <label><br/><b>email</b><br/> <input name='email' type='text area' rows='1' cols='22' ></input><br/> we'll email you if you forget your password.</label> <br/><br/>I agree with the <a href=\"javascript:void(0)\" onclick=\"window.open('http://www.spinwhip.com/terms')\">terms and conditions</a><br/>				\n"+okbtn+"\n </form></div></div>";	
	innerFill(input,3);		
}

function checklogin(appendcode)
{		
	pageTracker._trackPageview("/login");
	var parameters = "uname=" + document.login.uname.value + "&password="+ md5(document.login.password.value);
	var script="login.php";
	ajax(parameters,script,appendcode,document.getElementById('lform'));	
}

function logout()
{	
	pageTracker._trackPageview("/logout");
	if(document.getElementById('logged')!=null||document.getElementById('logged')!=undefined){document.getElementById('logged').id='burn';}
	document.getElementById('navigation_status').innerHTML="";
	innerFill(' ',3);
	parameters="null";
	script="logout.php";
	ajax(parameters,script,3,inner3);			
	document.getElementById('navigation_status').innerHTML="";
}

function checksignup(appendcode)
{
	pageTracker._trackPageview("/signup");
	var parameters = "uname=" + document.signup.uname.value + "&password="+md5(document.signup.password.value)+ "&email="+document.signup.email.value;
	script="xsignup.php";
	ajax(parameters,script,appendcode,document.getElementById('sform'));
}

function innerFill(input,level)
{
	if (level==2 && topZ==3)
	{
		clearDiv();	
	}
	else if (level==3 && topZ==3)
	{
		clearDiv();	
	}
	
	if (level==2 && topZ==2)
	{
		clearDiv();	
	}
	
	if (level==2 || level==3)
	{
		topZ=level;
		newdiv=document.createElement("div");
		newdiv.id="div"+topZ;		
		newdiv.style.zIndex=topZ;
		newdiv.innerHTML="<div><b class=\"spiffy"+level+"\">  <b class=\"spiffy1"+level+"\"><b></b></b>  <b class=\"spiffy2"+level+"\"><b></b></b>  <b class=\"spiffy3"+level+"\"></b>  <b class=\"spiffy4"+level+"\"></b>  <b class=\"spiffy5"+level+"\"></b></b> <div id='inner"+topZ+"' class=\"spiffyfg"+level+"\">"+    closebtn+input+"  </div></div> <div> <b class=\"spiffy"+level+"\">  <b class=\"spiffy5"+level+"\"></b>  <b class=\"spiffy4"+level+"\"></b>  <b class=\"spiffy3"+level+"\"></b>  <b class=\"spiffy2"+level+"\"><b></b></b>  <b class=\"spiffy1"+level+"\"><b></b></b></b></div>";
		fcontainer=document.getElementById("fcontainer");
		fcontainer.appendChild(newdiv);			
	}
	
	if(level==2)
	{
		div2=newdiv;
		inner2=document.getElementById('inner2');
		showingDiv2=true;				
	}
	else if(level==3)
	{
		div3=newdiv;
		inner3=document.getElementById('inner3');
		showingDiv3=true;		
	}	
}

function ajax(parameters,script,append,whichdiv)
{
	try
	{
		var request=new XMLHttpRequest();
	}
	catch (e)
	{
		var request=new ActiveXObject("Microsoft.XMLHTTP");
	}
		
	request.open("POST",script,true);
	request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	request.setRequestHeader("Content-length", parameters.length);		
	request.onreadystatechange=function()
	{
		if(request.readyState==4&&request.status==200)
		{
			if(request.responseText)
			{				
				devalidated=devalidate(request.responseText);								
				if( devalidated.indexOf('ZX14') != -1)
				{											
        			devalidated = devalidated.replace('ZX14','');
					innerFill(devalidated,3);
					window.scrollTo(0,0);
				}
				else if (append==1)
				{
					whichdiv.innerHTML=closebtn+devalidated;
				}
				else if (append==2)
				{					
					whichdiv.innerHTML=whichdiv.innerHTML+devalidated;
				}
				else if (append==3)
				{
					whichdiv.innerHTML=whichdiv.innerHTML+devalidated;
				}
				else if (append==4)
				{
					whichdiv.innerHTML=closebtn+devalidated;
				}
				else if (append==5)
				{
					whichdiv.innerHTML=devalidated;
				}
				
				
				if (document.getElementById('hiddensbar')!=null || document.getElementById('hiddensbar')!=undefined)
				{
					document.getElementById('mainContents_right').innerHTML=document.getElementById('hiddensbar').innerHTML;
				}				
				
				if (document.getElementById('logged')!=null && document.getElementById('logged')!="" && document.getElementById('logged')!=undefined)
				{
					document.getElementById('navigation_status').innerHTML= "Howdy, <span class=\"italic\">"+document.getElementById('logged').innerHTML+"</span>. <a href=\"javascript:logout();\">(logout)</a>.";
					
				}
				
				if (document.getElementById('tid')!=null || document.getElementById('tid')!=undefined)
				{
					var input1=document.getElementById('tid').innerHTML;
					showTree(input1);
				}
				
				
				
				if (append==6)		//if no error... login/signup/etc was successful. 
				{
					clearDiv();
				}
				refreshTree();
			}
		}
	}
	request.send(parameters);
}

function clearDiv()
{
	related=null;
	if (showingDiv3)
	{
		showingDiv3=false;
		fcontainer.removeChild(div3);
		topZ--;
	}
	else if (showingDiv2)
	{
		showingDiv2=false;
		url='http://www.spinwhip.com?tid='+thisMovie('swf').getTid();
		fcontainer.removeChild(div2);
		topZ--;
	}	
}

function showingClaim()
{
	showingDiv2=true; 
	topZ=2;
	div2=document.getElementById('div2'); 
	fcontainer=document.getElementById('fcontainer'); 
	fcontainer.appendChild(div2);	
	inner2=document.getElementById('inner2');		
}

function thisMovie(movieName)
{
	if (navigator.appName.indexOf("Microsoft") != -1)
	{		
		return window['swf'];	
	}	
	else
	{
		return document['swf'];
	}
}

function forgot2(key)
{
	pageTracker._trackPageview("/forgot2");
	input= "<div id='sectiontitle3'><h2>Reset password</h2></div><div id='rform' name='rform'><form name=rform action ='javascript:forgot3()' method='post'> 			\n <div id='subsection3'><label><br/><b>please type in your user name</b><br/> <input name='uname' type='text area' rows='1' cols='22' ></input><br/> </label>		</div><div id='subsection3'>		\n <label><br/><b>choose a new password</b><br/> <input name='password' type='password' rows='1' cols='22' ></input><br/> at least 6 letters</label><br/>		\n <label><br/><b>and confirm your new password</b><br/> <input name='password2' type='password' rows='1' cols='22' ></input><br/> at least 6 letters</label><br/>	\n <input name='key' type='hidden' value='"+key+"' rows='1' cols='22' ></input><br/> </label>				\n"+okbtn+"\n </form></div></div>";	
	innerFill(input,3);	
}

function forgot3()
{
	pageTracker._trackPageview("/forgot3");
	if (document.rform.password2.value!=document.rform.password.value)
	{
		alert("woops... passwords don't match");	
		
	}
	else if (document.rform.password2.value.length<6)
	{
		alert("wooops... password is too short");
	}
	else
	{
		//take the rform, validate and encrypt and send. 
		appendcode=5;		//same div. 
		var parameters = "uname=" + document.rform.uname.value + "&password="+ md5(document.rform.password.value)+"&key="+document.rform.key.value;
		var script="forgot2.php";
		ajax(parameters,script,appendcode,document.getElementById('rform'));	
	}	
}


function refreshTree()
{
  thisMovie('swf').Trefresh();
}

function getTid()
{
	thisMovie('swf').getTid();
}

function showTree(input2)
{
	pageTracker._trackPageview("/showtree");
	clearDiv();
	url='http://www.spinwhip.com?tid='+input2;
	thisMovie('swf').showTree(input2);	
}

function validate(input)
{
	while ( input.indexOf('&') != -1)
    {
        input = input.replace('&','#^*');
    }
	return input;
}

function devalidate(input)
{
	while ( input.indexOf('%26') != -1)
    {
        input = input.replace('%26','&');
    }
	return input;
}

function addlines(input)
{
	while ( input.indexOf('\n') != -1)
    {
        input = input.replace('\n','<br/>');
    } 
	return input;	
	
}