

var win, uri = null;
function popwin(url, snm, vw, vh) {
  if (win == null || win.closed || uri != url) {
	  uri = url;
	  win = window.open(url, snm, "menubar=no,location=no,resizable=yes,scrollbars=yes,width="+vw+",height="+vh+",left="+((screen.width/2)-(vw/2))+",top="+((screen.height/2)-(vh/2)));
  }
  win.focus();
}

function getInternetExplorerVersion() {
   var rv = -1;
   if (navigator.appName == 'Microsoft Internet Explorer') {
      var ua = navigator.userAgent;
      var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
      if (re.exec(ua) != null) rv = parseFloat( RegExp.$1 );
   }
   return rv;
}

addInitEvent(initp);

function initp() {
	
	if (document.getElementById("comms").getElementsByTagName("div")) {
		var comms = document.getElementById("comms").getElementsByTagName("div");
	
		if(document.getElementById("comms").getElementsByTagName("form")[0]) {
			document.getElementById("cpt_img").onclick = function() { this.src = '?captcha&'+Math.floor(Math.random()*909); }
			document.getElementById("comms").getElementsByTagName("form")[0].getElementsByTagName("input")[1].onclick = _comm.add;
			document.getElementById("postComm").onclick = function() { return false;}
			document.getElementById("postForm").getElementsByTagName("a")[0].onclick = function() { if (confirm('Are you sure you want to cancel this comment from posting?')) document.getElementById("postForm").getElementsByTagName('textarea')[0].value = ''; return false; }
		}
		build_comm();
	}
	
	document.getElementById("tabs").getElementsByTagName("a")[0].onclick = function() { this.setAttribute("class", "s"); this.setAttribute("className", "s"); document.getElementById("tabs").getElementsByTagName("a")[1].setAttribute("class", "u"); document.getElementById("tabs").getElementsByTagName("a")[1].setAttribute("className", "u"); document.getElementById("prof_nfo").style.display = "block"; document.getElementById("prof_sch").style.display = "none"; };
	document.getElementById("tabs").getElementsByTagName("a")[1].onclick = function() { this.setAttribute("class", "s"); this.setAttribute("className", "s"); document.getElementById("tabs").getElementsByTagName("a")[0].setAttribute("class", "u"); document.getElementById("tabs").getElementsByTagName("a")[0].setAttribute("className", "u"); document.getElementById("prof_nfo").style.display = "none"; document.getElementById("prof_sch").style.display = "block"; };

}

function build_comm() {
		var comms = document.getElementById("comms").getElementsByTagName("div");
		for (var i = 0; i < comms.length; i++) {
			comms[i].tabIndex = i;								
			if (comms[i].getAttribute("class") == "comm" || comms[i].getAttribute("className") == "comm") {
				var comm_id = comms[i].getElementsByTagName("input")[0].value;
				comms[i].getElementsByTagName("a")[2].onclick = (function(a, b) { return  function() {_comm.remove(a, b); return false;} })(comm_id, i);								
				if(comms[i].getElementsByTagName("b")[0]) comms[i].getElementsByTagName("b")[0].onclick = (function(a, b) { return  function() {_comm.view_txt(a, b); return false;} })(comm_id, i);
			} else if (comms[i].getAttribute("class") == "like" || comms[i].getAttribute("className") == "like") {
				comms[i].getElementsByTagName("a")[1].onclick = (function(a, b) { return  function() {_like.dislike(a, b); return false;} })(comm_id, i);
				comms[i].getElementsByTagName("a")[0].onclick = (function(a, b) { return  function() {_like.like(a, b); return false;} })(comm_id, i);
			}
			if (comms[i].getElementsByTagName("h3")[0]) comms[i].getElementsByTagName("h3")[0].onclick=function() { this.style.display="none";this.parentNode.getElementsByTagName("p")[0].style.display="block";return false;}
		}
}

var _like = {

	like: function(a, b) {
		var the_post = "id="+a+"&target="+b;
		jax_post("?jax_add_like", _like.jax_add_like, the_post);
	},
	
	jax_add_like: function(a) {
		var comms = document.getElementById("comms").getElementsByTagName("div");
		if(dq(a)["status"] == "ok") comms[dq(a)["target"]].getElementsByTagName("i")[0].innerHTML = dq(a)["like"];
		else if(dq(a)["status"] == "fail") to_pop(dq(a)["msg"].split("_").join("\n"));
	},
	
	dislike: function(a, b) {							
		var the_post = "id="+a+"&target="+b;
		jax_post("?jax_add_dislike", _like.jax_add_dislike, the_post);							
	},
	
	jax_add_dislike: function(a) {
		var comms = document.getElementById("comms").getElementsByTagName("div");
		if(dq(a)["status"] == "ok") comms[dq(a)["target"]].getElementsByTagName("i")[1].innerHTML = dq(a)["dislike"];
		else if(dq(a)["status"] == "fail") to_pop(dq(a)["msg"].split("_").join("\n"));							
	}

}

var _comm = {
							
	remove: function(a, b) {							
		var the_post = "to_rem="+a+"&target="+b;
		jax_post("?jax_rem_comm", _comm.jax_rem_comm, the_post);
	},
	
	jax_rem_comm: function(a) {
		var comms = document.getElementById("comms").getElementsByTagName("div");						
		if(dq(a)["status"] == "ok") {
			to_pop(dq(a)["msg"]);
			comms[0].parentNode.parentNode.parentNode.removeChild(comms[parseInt(dq(a)["target"])]);
			build_comm();
		} else if(dq(a)["status"] == "fail") to_pop(dq(a)["msg"].split("_").join("\n"));
	},
	
	add: function() {							
		var comm = this.parentNode.parentNode.getElementsByTagName("textarea")[0].value;
		var cpt = this.parentNode.getElementsByTagName("input")[0].value;
		var mod = this.parentNode.getElementsByTagName("input")[2].value;
		var the_post = "comm="+comm+"&mod="+mod+'&cpt='+cpt;
		jax_post("?jax_add_comm", _comm.jax_add_comm, the_post);
		return false;
	},
	
	jax_add_comm: function(a) {
		var comms = document.getElementById("comms").getElementsByTagName("div");
		if(dq(a)["status"] == "ok") {
			var IEV = getInternetExplorerVersion();
			 if (IEV <= 8 && IEV != '-1' ) window.location.href = window.location.href.replace('&comments', '').replace(/page=[0-9]+&/, '').replace('=#item', '')+'&comments';
			 else {
				 el = document.createElement("div");
				 el.setAttribute("class", "comm");
				 el.setAttribute("className", "comm");
				 el.innerHTML = dq(a)["comm"];
				 
				 var pat = /tabindex=\"2\"/gi;
				 
				 for (var i = 0; i < comms[0].parentNode.parentNode.parentNode.childNodes.length; i++) {
					if (typeof comms[0].parentNode.parentNode.parentNode.childNodes[i].innerHTML != 'undefined' && pat.test(comms[0].parentNode.parentNode.parentNode.childNodes[i].innerHTML)) break;
				}				 
				 
				 comms[0].parentNode.parentNode.parentNode.insertBefore(el, comms[0].parentNode.parentNode.parentNode.childNodes[i]);
				 comms[0].parentNode.getElementsByTagName("textarea")[0].value = "";
				 document.getElementById('cpt_img').src = '?captcha&'+Math.floor(Math.random()*909);
				 document.getElementById('cpt').value = '';
				 build_comm();
			 }
		} else if(dq(a)["status"] == "fail") to_pop(dq(a)["msg"].split("_").join("<br/>"));
	},
	
	view_txt: function(a, b) {
		for (var i = 0; i < document.getElementById('comms').getElementsByTagName('u').length; i++) {			
			if (i%2 == 0) {
				document.getElementById('comms').getElementsByTagName('u')[i].style.display = 'block';
				document.getElementById('comms').getElementsByTagName('u')[i+1].style.display = 'none';
			}					
		}
		document.getElementById('comms').getElementsByTagName('div')[b].getElementsByTagName('u')[0].style.display = 'none';
		document.getElementById('comms').getElementsByTagName('div')[b].getElementsByTagName('u')[1].style.display = 'block';			
		window.scrollTo(0, document.getElementById('comms').getElementsByTagName('div')[b].getElementsByTagName('u')[1].offsetTop+100);
		if (typeof grads_resize != 'undefined') grads_resize();			
	},
	
	jax_get_txt_comm: function(a) {
		var comms = document.getElementById("comms").getElementsByTagName("div");					
		if(dq(a)["status"] == "ok") {
			comms[parseInt(dq(a)["target"])].getElementsByTagName("p")[0].innerHTML = dq(a)["comm"];
		} else if(dq(a)["status"] == "fail") to_pop(dq(a)["msg"].split("_").join("\n"));
	}

}

function rate(v) {
	jax("?rate&vote="+v+"&uid="+document.getElementById("model").value, jax_rate);
	return false;
}

function jax_rate(a) {
	document.getElementById("str_rate").innerHTML = a;
}

function limitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) limitField.value = limitField.value.substring(0, limitNum);
	else limitCount.innerHTML = limitNum - limitField.value.length;
	limitField.scrollTop = limitField.scrollHeight;
}

function send_tip(a) {	

	  	var pop_win = document.createElement('div');
		var pop_overlay = document.createElement('div');		
		pop_win.setAttribute('id', 'to_pop_win');		
		pop_overlay.setAttribute('id', 'to_pop_overlay');
		pop_overlay.style.height = docH()+'px';
		
		pop_win.innerHTML = '<div style="float:left;"> \
								 <span style="font-size:14px;">Send tip to '+a+': </span> \
								 <select id="model_amm">\
										<option value="5">5 minutes</option>\
										<option value="10">10 minutes</option>\
										<option value="30">30 minutes</option>\
										<option value="60">60 minutes</option>\
								  </select>\
								  <input type="hidden" value="'+a+'" id="model_tip"/>\
							  </div>\
							  <a href="" id="pop_close" style="float:right; margin-left:10px;">Cancel</a> \
							  <a href="" id="pop_close" style="float:right; margin-left:10px;">Send</a>';
							 
		document.body.appendChild(pop_win);
		document.body.appendChild(pop_overlay);
			
		pop_win.getElementsByTagName('a')[0].onclick = function() { document.body.removeChild(pop_win); document.body.removeChild(pop_overlay); return false;};
		pop_win.getElementsByTagName('a')[1].onclick = function() {			
			var tip = document.getElementById('model_tip').value;
			var amm = document.getElementById('model_amm').value;			
			jax('?jax_send_tip&tip='+tip+'&amm='+amm, jax_send_tip);
			return false;
		};	
}

function jax_send_tip(a) {
	if (dq(a)['status'] == 'ok') {
		document.body.removeChild(document.getElementById('to_pop_win'));
		document.body.removeChild(document.getElementById('to_pop_overlay'));
		to_pop(dq(a)['msg']);
	} else if (dq(a)['status'] == 'fail') {
		document.body.removeChild(document.getElementById('to_pop_win'));
		document.body.removeChild(document.getElementById('to_pop_overlay'));
		to_pop(dq(a)['msg']);
	}
}
