// JavaScript Document

/*

******************************************************************************************************************************
roomloc  values

x,y,w,h,c,z,n

0 x=x location
1  y=y location
2  w=width
3  h=height
4  c=class
5  z=z-index
6  f=included in finished area
7  n=room name

   
 **************************************************************************************************************************
*/
  
function openRoom(type,xdd,value)
{ 

if(roomact !=="room0")
{

xora=(roomact.substring(4));  
 
 switch (type)
 {
 case "x":
 xorx=0;
 break;
 
  case "y":
 xorx=1;
 break;
 
  case "w":
 xorx=2;
 break;
 
  case "h":
 xorx=3;
 break;
 
  case "c":
 xorx=4;
 break;
 
  case "z":
 xorx=5;
 break;
 
  case "n":
 xorx=6;
 break;
 
  case "f":
 xorx=7;
 break;
   
   case "s":
 xorx=8;
 break;
 }         
 
xorb=roomloc[xora]; 
 
xorc=(xorb.split(','))

 if (xdd=="out")
 {  
roomvalue=(xorc[xorx]);
 }  
else
 {
 if (value > .001)
 {
 value=(Math.round(value));
 }
 
 xorc[xorx]=(value);

xord=(xorc[0] + "," + xorc[1] + "," +  xorc[2] + "," +  xorc[3] + "," +  xorc[4] + "," +  xorc[5] + "," +  xorc[6] + "," +  xorc[7]+ "," +  xorc[8]);

roomloc[xora]=xord;

 }}      
}





/* =======================================================================================================================
*********************************************  new text *****************************************************************
======================================================================================================================== */


function newText(event) {

nroom="text";

x=((event.clientX)-scrollxx);
y=((event.clientY)-scrollyy);
y=(y+90);
tx=(Math.round(14*dscale));
tx=(tx + "px");
tad=(tad+1);

//----------------------------------


inserttext="<div class=\"text\"  id=\"txxt" + tad + "\" style=\"position:absolute;left:" + (x) + "px;top:" + (y) + "px;font-size:" + tx + "\" class=\"txtable\"  ondblclick=\"textEdit(this)\" onmousedown=\"startText()\" onmousemove=\"moveText(event)\"  onclick=\"textSelect(this,event)\" ><div id=\"txxt" + tad + "t\">Double click to edit text</div><div id=\"txxt" + tad + "i\" class=\"tarrow\" onmousedown=\"textTsize(999)\" ></div>";
 
a=document.getElementById(xcopy).innerHTML;
document.getElementById(xcopy).innerHTML=(a + inserttext);
}

function textTsize(x)
{
tmoveloop=x;
moveloop=0;
}


function textResize(event)
{

if (tmoveloop=="999")
{
room=document.getElementById(textact);
b=room.style.left;
a=room.style.width;       
a =(a.replace("px","")*1);
b =(b.replace("px","")*1);
b=(a+b); // right side

x=(event.clientX);

y=(event.clientY);
x=(x-scrollxx);     

c=(x-b);
nwidth=(a+c);
room.style.width=((nwidth) + "px"); 
 }

  }

     

 function textEdit(x)
 {
y=(x).id;
textact=y;
showLayer('textedit');
b=(y + "t");
z=document.getElementById(b);
document.getElementById('tedit').value=z.innerHTML;
 }
 
 function updateText()
 {
 a=document.getElementById('tedit').value;
 b=(textact + "t");
 document.getElementById(b).innerHTML=a;
document.getElementById(textact).className="text";
 hideLayer('textedit');
 }
 
function moveText(event)
{
if(textact !=0)
{
room=document.getElementById(textact);
roomn=textact;
zmove=(roomn.substring(4));
if (rmoveloop==zmove && xpan==0 && tmoveloop==0)
{
         
room.className="textmove";
x=(event.clientX);
y=(event.clientY);
xx=((x)-(xdist));
yy=((y)-(ydist));
if(xx > 0)
{
room.style.left=((xx)+ "px");
room.style.top=((yy) + "px");
}
}
}  
}  

function textSelect(room,event){

if (textact ==0)
{
clearRoom();
roomn=(room).id;
room=(room);

tn=(roomn + "i");  
document.getElementById(tn).style.display="inline";
room.className="textmove";
x=(event.clientX);
y=(event.clientY);
ey=room.style.top;
ex=room.style.left;
ex=(ex.replace("px",""));
ey=(ey.replace("px",""));
xdist=(x-ex);
ydist=(y-ey);
textact=roomn;
}
else
{
rmoveloop=0;
x=(textact);
y=document.getElementById(x);
y.className="text";
tn=(x + "i");  
document.getElementById(tn).style.display="none";


textact=0;
 }
  }

function startText()
{
if(textact !=0)
{
rmoveloop=(textact.substring(4));
  }
 }

 function uStat(x)
 {
 document.getElementById('statusbar').innerHTML=x
 }
 
function textDel()
{
el=document.getElementById(textact)

if (el !== null)
{
roomcl=el.className;
el.parentNode.removeChild(el);
document.getElementById("modify").style.display="none";
document.getElementById("statusbar").innerHTML="Text Deleted";
textact=0;
undoSave();
}
}


 
function findSave(x)
{ 
userplan=document.getElementById('planname').value;

if(document.getElementById('loginbox').href=="logout.php")
{
if (x=="save" && userplan !="")
{   
newSave();
}
else
{       
showLayer('save1');
} 
 
 }
 
else
{     
showLayer('logreg');
alert("You need to sign in before you can save your plan"); 
document.getElementById('task1').value="save";
document.getElementById('task2').value="save"; 


}
}


function newSave()
{

xexit=0;
a=document.getElementById('planname').value;
b = a.replace(/[^a-zA-Z 0-9]+/g,"");
if(b !=a)
{
document.getElementById('planname').value=b;
alert('Plan name was fixed to remove special characters');
a=b;
 }


if(document.getElementById('save1').style.display != "none")
{

 x=document.getElementById('savednames').value;

 y=(x.split(","));
 for (i in y)
 {
if ((y[i])==a)
{
var r=confirm("Are you sure that you want to overwrite " + a);
if (r==true)
{xexit=0;}
else
{xexit=2;}

 }
 }
 }
 if (xexit !=2)
 {

if(a=="")
{
b=document.getElementById('useremail').value;
document.getElementById('saveframe').src=("saved.php?email=" + b);
showLayer('save1');
}

 else
{
// save rooms -----------

sroom="";
for (i in roomloc)


{ 
if (roomloc[i] != 0 ) 
{
sroom=(sroom + roomloc[i] + "/v/" );
}
sroom=(sroom.replace("/v//v/","/v/"));
}

//save text-----------
i=0;
stext="";
while (i<=tad)
 {
 x=document.getElementById("txxt" + i)
 y=document.getElementById("txxt" + i + "t")
 if(x != null)
 {
 tx=x.style.left;
  tx=((tx.replace("px",""))*1);
 ty=x.style.top;
   ty=((ty.replace("px",""))*1);
 tw=x.style.width
   tw=((tw.replace("px",""))*1);
 tc=y.innerHTML;
  tx=(Math.round(tx/dscale));
   ty=(Math.round(ty/dscale));
    tw=(Math.round(tw/dscale));
    
apar=(x.parentNode.id);

if (apar=="copythis") 
{
ts=1;
}
else
{
ts=2;
}   
    
    
z=(tx + "," + ty + "," + tw + "," + tc + "," + ts);




if (tc !="")
{  
stext=(stext + z + "/v/" ); 
}    
 }
 
  i++; 
 }

userplan=document.getElementById('planname').value;
document.getElementById('savedplan').value=sroom;
document.getElementById('savetext').value=stext;

 document.getElementById('saveform').submit();
flashText('Saving Plan...');

timeElapsed();
savetime=outtime;
}
}

}

function openPlan()
{

if (document.getElementById('loginbox').innerHTML=="Logout")
{


savefirst=0;
timeElapsed();
if((outtime-savetime)>120)
 {
var r=confirm('Do you want to save this plan first?');
 if(r==true)
 {
 savefirst=1;
 }
 else
 {
 savefirst=0; 
 }
 }
 if(savefirst==1)
 {
 findSave()
 }

else
{ 
 
document.getElementById('openframe').src="open.php";
showLayer('open1');
}
}
else
{

showLayer('logreg');

alert("You need to sign in before you can open your plan"); 
document.getElementById('task1').value="open";
document.getElementById('task2').value="open";
document.getElementById('openframe').src="open.php";
}




}





function oPlan()
{
 x=document.getElementById('savednames').value;
a=document.getElementById('oplanname').value;
b=0;
 y=(x.split(","));
 for (i in y)
 {
if ((y[i])==a)
{
b=(b+1);
}
 }
 if (b==0)
 { alert(a + " does not exist.  Please enter a different plan name"); }
 
 else
 {
 document.getElementById('openform').submit();
 }        
}

function disappearTwo(x,a)
 {

 x=(x-5);
 lay=a;
 y=(x/100);
 
layer=document.getElementById(lay);
layer.style.opacity =y;
layer.style.filter = 'alpha(opacity=' + x + ')';  
 
 
 
 if(x>1)
 {
 disappearOne(x,lay);
  }
  else
  {
  layer.style.display="none";
   }
  }  

 function disappearOne(x,a)
 {
 val=x;
 lay=a
 var t=setTimeout('disappearTwo(val,lay)',50);
  }
 

function flashText(x)
    { 
    

layer=document.getElementById('flashtext');
layer.style.display="inline";
layer.innerHTML=x;
layer.style.opacity ="1.0";
layer.style.filter = 'alpha(opacity=' + 100 + ')';   
disappearOne(120,'flashtext');
  }
  
  function checkSc(a)
{
b=a.value;
c = b.replace(/[^a-zA-Z 0-9]+/g,"");
if(c!=b)
{
alert('You may only use a-z and 0-9');
a.value=c;
a.focus();
}
}

 function checkData(name,x,a)
  {
y=document.getElementById(x).value;
  
if (y.length >= a ) {
return true
} else {
alert(name + " must be at least " + a + " characters.")
return false
}
}

function timeElapsed()
{    
 var time=new Date();
tx=time.getTime();  
outtime=Math.round((tx-intime)/1000);
 }
 
 function printPlan()
 {
useremail=document.getElementById('useremail').value;
 
         
if(userplan=="")
{
alert("You need to save this plan before you can print");
}
else
{
if (email!="")
{
a=("print.php?email=" + useremail + "&plan=" + userplan);
}
else
{ 
a=("print.php?email=" + vemail + "&plan=" + vplan);
}





window.open(a,'_blank','directories=no,toolbar=no,location=0,menubar=no,scrollbars=yes,resizable=yes,width=1600,height=1200,status=no');



}
 
 }
 



