function mouseX(evt) {
if (evt.pageX) return evt.pageX;
else if (evt.clientX)
   return evt.clientX + (document.documentElement.scrollLeft ?
   document.documentElement.scrollLeft :
   document.body.scrollLeft);
else return null;
}

function mouseY(evt) {
if (evt.pageY) return evt.pageY;
else if (evt.clientY)
   return evt.clientY + (document.documentElement.scrollTop ?
   document.documentElement.scrollTop :
   document.body.scrollTop);
else return null;
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}


function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}


  function winDrag(obj, e)
  {
  
    win=obj;
    dragX=mouseX(e)-findPosX(obj);
    dragY=mouseY(e)-findPosY(obj);
    var maxZ=0;
    var objs=document.getElementsByTagName('*');
    for (i=0; i<objs.length; i++)
    {
      if (objs[i].style)
      {
        if ( (maxZ<objs[i].style.zIndex) && (objs[i]!=obj) )
        {
          maxZ=objs[i].style.zIndex;
        }
      }
    }
    maxZ=maxZ*1
    maxZ+=1;
    obj.style.zIndex=maxZ;
      return false;
  }
  
  
  function winMove(e)
  {
    /*
    if (win)
    {
      win.style.left=(mouseX(e)-dragX)+'px';
      win.style.top=(mouseY(e)-dragY)+'px';
      return false;
    }
    */
  }
  

  function winDrop(obj, document)
  {
    win=null;
      return false;
  }
  
  
  function winOpen(width, height, left, top, content, drag, id)
  {
    var res=resolution();
    

//    document.write(content);

//    left=Math.round(res[0]/2-(width+80)/2);
//    top=0;
  
    var win=document.createElement('div');

//    win.innerHTML='<div class="win" style="width: '+(width+80)+'px; top: '+top+'px; left: '+left+'px;" onmousedown="winDrag(this, event);" onmouseup="winDrop(this);"><div class="win-left"><div class="win-tl"></div><div class="win-l"></div><div class="win-bl"></div></div><div class="win-middle" style="width: '+width+'px;"><div class="win-t" style="width: '+width+'px;"></div><div id="win-m" class="win-m" style="width: '+width+'px;">'+content+'</div><div class="win-b" style="width: '+width+'px;"></div></div><div class="win-right"><div class="win-tr" onmousedown="winClose(this);"></div><div id="win-r" class="win-r"></div><div class="win-br"></div></div></div>';
//    document.getElementById('content').innerHTML=content;
    if (true==drag)
    {
      win.innerHTML='<div id="'+id+'" class="win" style="width: '+(width+80)+'px; top: '+top+'px; left: '+left+'px;" onmousedown="winDrag(this, event);" onmouseup="winDrop(this);"><div style="float: right; font-weight: bold; cursor: pointer;" onmousedown="winCloseAuto(this);" class="window-close"></div>'+content+'</div>';
    }
    else
    {
      win.innerHTML='<div id="'+id+'" class="win" style="width: '+(width+80)+'px; top: '+top+'px; left: '+left+'px; cursor: default;"><div style="float: right; font-weight: bold; cursor: pointer;" onmousedown="winCloseAuto(this);" class="window-close"></div>'+content+'</div>';
    }

    document.body.appendChild(win.childNodes[0]);

    if (document.getElementById(id).offsetHeight>(res[1]-40))
    {
      
      document.getElementById(id).style.position='absolute';
//      document.getElementById(id).style.top=(findPosY(ajaxCaller)-200)+'px';
      var y=(findPosY(ajaxCaller)-res[1]+200);
      
      if (y<20)
      {
        y=20;
      }
      
      document.getElementById(id).style.top=y+'px';
    }


    var objs=document.getElementsByTagName("textarea");
    
    for (i=0; i<objs.length; i++)
    {
      if ('wysiwyg'==objs[i].className)
      {
        var ckeditor = CKEDITOR.replace(objs[i].id);
      }
    }
     

    
	
/*	

AjexFileManager.init({
	returnTo: 'ckeditor',
	editor: ckeditor
});
*/

    return win;
  }
  
  
  
  
  function winCloseAuto(obj)
  {
    document.body.removeChild(obj.parentNode);
    document.getElementById('curtain').style.display='none';
  }

  function winClose(obj)
  {
    document.body.removeChild(obj);
    document.getElementById('curtain').style.display='none';
  }

  window.winClose=function()
  {
    var w=new Array();
    w=getElementsByClassName('win');
    
    for (i=0; i<w.length; i++)
    {
      document.body.removeChild(w[i]);
    }
    document.getElementById('curtain').style.display='none';
  }


  var win, dragX, dragY;
