function update_invitation_preference(flag){
	var url = "/app/member/invitation.php?mode=set_preference&flag="+flag;
	var xmlhttp = getXmlhttp();
	
	xmlhttp.open('GET', url, true);
	
	xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
		var str = xmlhttp.responseText;
		
		if(!str || str == ""){
			alert("update error");
		}
    }
    }
	
	xmlhttp.send(null);
}

function close_invitation(pid, notempty){
	update_invitation(pid, 'deny', notempty);
}

function pend_invitation(pid){
	update_invitation(pid, 'pending', 0);
}

function accept_invitation(pid){
	update_invitation(pid, 'accept', 0);
}

function update_invitation(pid, mode, checkNext){
	dateObj = new Date();
	time = dateObj.getTime();
	var url = "/app/member/invitation.php?mode=" +mode+ "&performer_id=" +pid+ "&" + time;
	var xmlhttp = getXmlhttp();
	xmlhttp.open('GET', url, true);
	
	xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
		var str = xmlhttp.responseText;
		//alert(str);
		if(checkNext){
			crossobj.visibility="hidden";
			check_invitation();
		}
		
		else{
			dismissbox();
		}
    }
    }
    
	xmlhttp.send(null);
}

//==============================================================
var ie=document.all;
var dom=document.getElementById;
var ns4=document.layers;
var calunits=document.layers? "" : "px";
var bouncelimit=32; //(must be divisible by 8)
var direction="up";
var client_top = 0;
var box_width = 240;
var box_height = 250;
var last_modified = null;
var cached_content= "";

document.write('<div id="dropin" style="background-color: #fff; position:absolute; left:0; top:0; margin-bottom: 0px; visibility:hidden; z-index:30"></div>');
if(isUser() || isVIP()){
	//check_invitation();
	//setInterval('check_invitation()',30000);
        setInterval('loadViewerInvitation()',30000);
}


//==============================================================
function check_invitation() {
  if(!isUser() && !isVIP())
  	return;

  var xmlhttp = false;
  if (window.XMLHttpRequest) {
    xmlhttp = new XMLHttpRequest(); //Mozilla/Safari
  } else if (window.ActiveXObject) { //IE
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  if(!xmlhttp) return;
  
  dateObj = new Date();
  time = dateObj.getTime();
  xmlhttp.open('GET', '/app/member/invitation.php?mode=show&time='+time, true);
  
  if(last_modified)
  	xmlhttp.setRequestHeader("If-Modified-Since", last_modified);
  
  xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			var str = xmlhttp.responseText;
			if(str==''){
				//setTimeout('check_invitation()',30000);
  			}
  			
  			if(str){
  			  crossobj=(dom) ? document.getElementById("dropin") : ie ? document.all.dropin : document.dropin;
			  crossobj.innerHTML = str;
			  initbox();
			}
    }
  }
  xmlhttp.send('');
  
  update_login_status();
  return;
}

function update_login_status(){
  var xmlhttp = getXmlhttp();
  xmlhttp.open('GET', '/app/member/update_web_session.php', true);
  xmlhttp.send(null);
  
  //alert("updated");

  return;
}

function initbox() {
  if (!dom&&!ie&&!ns4) return;
  if (typeof window.pageXOffset == 'undefined') { window.pageXOffset = 0; }
  if (typeof window.pageYOffset == 'undefined') { window.pageYOffset = 0; }
  crossobj = (dom) ? document.getElementById("dropin").style : ie ? document.all.dropin : document.dropin;
  scroll_top = (ie) ? (truebody().scrollTop + truebody().clientHeight) : (window.pageYOffset + window.innerHeight);
  scroll_left = (ie)? (truebody().scrollLeft + truebody().clientWidth) : (window.pageXOffset + window.innerWidth);
  crossobj.top =  scroll_top + calunits;
  crossobj.left = scroll_left - box_width + calunits;
  crossobj.visibility = (dom||ie)? "visible" : "show";
  dropstart = setInterval("dropin()",50);
}

function dropin(){
  scroll_top = (ie) ? (truebody().scrollTop + truebody().clientHeight) : (window.pageYOffset + window.innerHeight);
  if (parseInt(crossobj.top) > scroll_top - box_height) {
    crossobj.top = parseInt(crossobj.top) - 10 + calunits;
  } else {
    clearInterval(dropstart);
    bouncestart=setInterval("bouncein()",50);
  }
}

function bouncein(){
  crossobj.top = parseInt(crossobj.top) - bouncelimit + calunits;
  if(bouncelimit<0) bouncelimit += 8;
  bouncelimit = bouncelimit * -1;
  if(bouncelimit == 0){
    clearInterval(bouncestart);
    client_top = crossobj.top;
    floatstart = setInterval("floatin()", 50);
  }
}

function floatin(){
  scroll_top = (ie) ? (truebody().scrollTop + truebody().clientHeight) : (window.pageYOffset + window.innerHeight);
  scroll_left = (ie)? (truebody().scrollLeft + truebody().clientWidth) : (window.pageXOffset + window.innerWidth);
  crossobj.top = scroll_top - box_height + calunits;
  crossobj.left = scroll_left - box_width + calunits;
}

function dismissbox(){
  if (window.bouncestart) clearInterval(bouncestart);
  if (window.floatstart) clearInterval(floatstart);
  crossobj.visibility="hidden";
  
  setTimeout('check_invitation()',30000);
}

function redo(){
  bouncelimit = 32;
  direction="up";
  initbox();
}

function truebody(){
  return (document.compatMode && document.compatMode!="BackCompat") ? document.documentElement : document.body;
}

