/* ----------------- PARSE VARIABLES FROM URL ----------------*/
function getQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  }
}

/* ---------------------- RSV after validation ----------------------*/

rsv.onCompleteHandler = myOnComplete;
  function myOnComplete()
  {
		contactform_processing();
  }

/* ---------------------- FRAMES CSS ----------------------*/
function getQueryVariable(variable) {
  var query = window.location.search.substring(1);
  var vars = query.split("&");
  for (var i=0;i<vars.length;i++) {
    var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  }

}

/* ---------------------- FRAMES CSS ----------------------*/
var ss = document.createElement("link");
ss.type = "text/css";
ss.rel = "stylesheet";
ss.href = "http://seosumo.com/test.css";

var iframes;
if(document.frames) {
	iframes = document.frames["testframe"];
} else {
	iframes = window.frames.testframe;
}
function reskin() {
if(document.all) {
	iframes.document.createStyleSheet(ss.href);
} else {
	iframes.document.getElementsByTagName("head")[0].appendChild(ss);
	}
}

/* ---------------------- COLLAPSE - EXPAND - TOOGLE ----------------------*/

function expand_collapse(elem)
	{
	elem.parentNode.className = (elem.parentNode.className == 'expanded')?'':'expanded';
}

function toogle_drawer(elem)
	{
	var targetElem = document.getElementById(elem);
	targetElem.parentNode.className = (targetElem.parentNode.className == 'expanded')?'':'expanded';
	smoothtoogle(elem,'height')
}
	
/* ---------------------- SWITCH MAIN TABS ----------------------*/
function switch_tabs(tab)
	{
	var tabsroot = document.getElementById("sidebars");
	tabsroot.className = "";
	tabsroot.className = tab.parentNode.id;
}

function switch_main(showthis)
	{
	tabtoshow = 'showtab'+showthis;
	var targetmain = document.getElementById("mainContent");
	targetmain.className = tabtoshow;
}

function switch_dmntabs(showthis)
	{
	tabtoshow = 'showtab'+showthis;
	var targetmain = document.getElementById("domainContent");
targetmain.className = tabtoshow;
}

function switch_kwdtabs(showthis)
	{
	tabtoshow = 'showtab'+showthis;
	var targetmain = document.getElementById("keywordContent");
targetmain.className = tabtoshow;
}
	
/* ---------------------- SUCKERFISH ---------------------- */
	startList = function() {
	if (document.all&&document.getElementById) {
		navRoot = document.getElementById("archives");
		for (i=0; i<navRoot.childNodes.length; i++) {
			node = navRoot.childNodes[i];
			if (node.nodeName=="LI") {
				node.onclick=function() {
	this.className = (this.parentNode.className == 'expanded')?'':'expanded';
				}
			}
		}
	}
}

suckernav = function() {
		if (document.all&&document.getElementById) {
		navRoot = document.getElementById("topnav");
		for (i=0; i<navRoot.childNodes.length; i++) {
		node = navRoot.childNodes;
		if (node.nodeName=="LI") {
		node.onmouseover=function() {
		this.className+=" over";
	}
	  node.onmouseout=function() {
	  this.className=this.className.replace(" over", "");
	   }
			}
		}
	}
}

redframes = function() {
		if (document.all&&document.getElementById) {
		navRoot = document.getElementById("portfolio_content");
		for (i=0; i<navRoot.childNodes.length; i++) {
		node = navRoot.childNodes;
		if (node.nodeName=="DIV") {
		node.onmouseover=function() {
		this.className+=" over";
	}
	  node.onmouseout=function() {
	  this.className=this.className.replace(" over", "");
	   }
			}
		}
	}
}

/* ---------------------- ANIMATIONS ----------------------*/
var timerlen = 5;
var slideAniLen = 300;

var timerID = new Array();
var startTime = new Array();
var obj = new Array();
var endValue = new Array();
var moving = new Array();
var dir = new Array();

function smoothtoogle(trigBut, propr){
if(document.getElementById(trigBut).style.display == 'none') {
			slidedown(trigBut, propr)
	} else {
			slideup(trigBut, propr)
	}
}


function slidedown(objname,propr){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display != "none")
                return; // cannot slide down something that is already visible

        moving[objname] = true;
        dir[objname] = "down";
        startslide(objname, propr);
}

function slideup(objname,propr){
        if(moving[objname])
                return;

        if(document.getElementById(objname).style.display == "none")
                return; // cannot slide up something that is already hidden

        moving[objname] = true;
        dir[objname] = "up";
        startslide(objname, propr);
}

function startslide(objname,propr){
        obj[objname] = document.getElementById(objname);

        endValue[objname] = parseInt(obj[objname].style[propr]);
        startTime[objname] = (new Date()).getTime();

        if(dir[objname] == "down"){
                obj[objname].style[propr] = "1px";
        }

        obj[objname].style.display = "block";

        timerID[objname] = setInterval('slidetick(\'' + objname + '\', \''+propr+'\');',timerlen);
}

function slidetick(objname,propr){
        var elapsed = (new Date()).getTime() - startTime[objname];

        if (elapsed > slideAniLen)
                endSlide(objname, propr)
        else {
                var d =Math.round(elapsed / slideAniLen * endValue[objname]);
                if(dir[objname] == "up")
                        d = endValue[objname] - d;

                obj[objname].style[propr] = d + "px";
        }

        return;
}

function endSlide(objname,propr){
        if (timerID) {
		clearInterval(timerID[objname]);
		}

        if(dir[objname] == "up")
                obj[objname].style.display = "none";

        obj[objname].style[propr] = endValue[objname] + "px";

        delete(moving[objname]);
        delete(timerID[objname]);
        delete(startTime[objname]);
        delete(endValue[objname]);
        delete(obj[objname]);
        delete(dir[objname]);

        return;
}

/*----------------------------*/

function contactform_processing(){
if (document.getElementById('contactform_div')==null)
	{
document.getElementById('contact_slide').className = "submitted";
	} else {
	document.getElementById('contactform_div').className = "submitted";
	}
}

function submitforms(){
urltest= getQueryVariable('urltest');
var thekeywords = document.getElementById('thekeywords').value;
	document.reportform.testedkeywords.value = thekeywords;
	document.seomoz_crawl.submit();
	document.form1.keyword.value = thekeywords;
	document.form1.submit();
	document.seomoz_rcheck.WhereRankKeyword.value = thekeywords;
	document.seomoz_rcheck.submit();
	document.term_target_form.TermTargetKw.value = thekeywords;
	document.term_target_form.submit();
	iframe_keywordquestion.location.replace('http://labs.wordtracker.com/keyword-questions/questions?seed=' + thekeywords + '&commit=Search');
	iframe_googleinsights.location.replace('http://www.google.com/insights/search/#q=' + thekeywords + '&cmpt=q&content=1');
}

function timedtoogle(elem) {
	targetElem = document.getElementById(elem);
	targetElem.style.height = retrieveComputedStyle(targetElem, 'height');
	setTimeout("toogle_drawer('" + elem + "')",1000);	
}

function retrieveComputedStyle(element, styleProperty)
{
		var computedStyle = null;

		if (typeof element.currentStyle != "undefined")
		{
			computedStyle = element.currentStyle;
		}
		else
		{
			computedStyle = document.defaultView.getComputedStyle(element, null);
		}
		var finalvalue = new String(parseInt(computedStyle[styleProperty])+'px');
		return finalvalue;
}

window.onload = function() {
  startList();
  suckernav();
  timedtoogle('gq_content');
}
