/*
AjaxExplorer Copyright (C) 2007-2008 Syed Mohammad Sidque Tahir Al-Habshi

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Head to
GNU site http://www.gnu.org/licenses/ for license copy.
*/

var mode=navigator.userAgent.indexOf('MSIE')==-1? 0:1;
var http=mode? new ActiveXObject('Microsoft.XMLHTTP'):new XMLHttpRequest();
var atrb, atrc, atrd, cdir, dirc='', dirs, dly1, dly2, done=0, drag=0, drop, dvrt='', edit=0, fail=0, fcnt=1, fld1, fold=0, gcnt, gstr, halt=1, hold, href, html, keys, list, load=0, lock=0, loop, mark, maxs, menu=0, move, mrk1='', mrk2='', over=0, page, path, park, post, prop, rdir, renm=0, rens, root, rows, rtmr, safe, save=1, set1, sdir=0, skip, sort='name', stop=0, strd, subs, sver, syst, tdir=0, tips=1, user, usid, usnm, view='tile';
var cX, cY, dX, dY, gX, gY, hX, hY, mX, mY, nX=215, nY=55, oX=nX, oY=nY, sX=0, sY=0, wX, wY, zC, zD, zI=1, zX, zY;
var fileByte=new Array('B', 'KB', 'MB', 'GB', 'TB');
var fileDirc=new Array();
var fileDirs=new Array();
var fileList=new Array();
var fileTemp=new Array();
var userList=new Array();

function ajaxLocking(flag)
{
  flag? loop=setInterval('ajaxLocking(0)', 2000):clearInterval(loop);
  writeAt('detail', lock=flag? '<img alt="" src="images/server.gif" /> Connecting to server...<br />':'');
}

function ajaxRequest(var1, var2)
{
  if(!lock)

  {
    page=var1;
    post=var2;

    ajaxLocking(1);
    setTimeout('ajaxSending()', 0);
  }
}

function ajaxRespond()

{
  if(http.readyState==4 && http.status==200)

  {
    ajaxLocking(0);
    var data=http.responseText;

    if(load<2 && data=='?')
    {
      userAccess(0);
      return;
    }

    if(load<2 && data=='!')
    {
      alert('You do not have the permission!');
      return;
    }

    switch(page)
    {
	case 'access':	userSignReply(data);	break;
	case 'attrib':	filePropertyLoad(data);	break;
	case 'change':	userSystemDone(data);	break;
	case 'copied':	fileCreateDone(data);	break;
	case 'create':	fileCreateDone(data);	break;
	case 'delete':	fileDeleteDone(data);	break;
	case 'editor':	textLoadDone(data);	break;
	case 'folder':	fileFolderLoad(data);	break;
	case 'loader':	fileGenerate(data);	break;
	case 'logout':	userAccess(0);		break;
	case 'modify':	userSystemDone(data);	break;
	case 'moving':	filePasteDone(data);	break;
	case 'rename':	fileRenameDone(data);	break;
	case 'record':	userRecordLoad(data);	break;
	case 'search':	fileGenerate(data);	break;
	case 'system':	userSystemLoad(data);	break;
	case 'zip-in':	fileZipDone(data);	break;
	case 'dirpath': userCheckDone(data);	break;
	case 'install': location.href='.';	break;
	case 'restore':	fileDeleteDone(data);	break;
	case 'sdelete':	fileDeleteDone(data);	break;
	case 'sloader':	fileGenerate(data);	break;
	case 'ucreate':	userCreateDone(data);	break;
	case 'udelete':	userDeleteDone(data);	break;
	case 'zip-out': fileZipDone(data);	break;
    }

    if(load<2) fileDetail(0);
  }
}


function ajaxSending()

{
  http.open('post', 'script/'+page+'.php');

  http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

  http.onreadystatechange=ajaxRespond;

  http.send(post);
}