function AjaxSubmit(formname) {
    eval('var url=document.'+formname+'.action;');
    eval('var httpmethod=document.'+formname+'.method;');

    var Param = Form.serialize(formname);
    /*var myAjax = new Ajax.Request(
                    url,
                    {method: httpmethod, parameters: Param, onComplete: showResult}
                    );*/
    var myAjax = new Ajax.Updater (
                    'main',
                    url,
                    {method: httpmethod, parameters: Param,evalScripts: true, onComplete: showResult}
                    );
    //alert(myAjax.Responders);
}
function AjaxSubmit2(formname,url) {
	//alert(url);
    //eval('var url=document.'+formname+'.action;');
    eval('var httpmethod=document.'+formname+'.method;');

    var Param = Form.serialize(formname);
    var myAjax = new Ajax.Updater (
                    'main',
                    url,
                    {method: httpmethod, parameters: Param,evalScripts: true, onComplete: showResult}
                    );
    //alert(myAjax.Responders);
}
function AjaxSubmit3(formname,url,div_id) {
	//alert(url);
    //eval('var url=document.'+formname+'.action;');
    eval('var httpmethod=document.'+formname+'.method;');

    var Param = Form.serialize(formname);
    var myAjax = new Ajax.Updater (
                    div_id,
                    url,
                    {method: httpmethod, parameters: Param,evalScripts: true, onComplete: showResult}
                    );
    //alert(myAjax.Responders);
}
function AjaxSubmit_noform(url) {
    //eval('var url=document.'+formname+'.action;');
    //eval('var httpmethod=document.'+formname+'.method;');

    //var Param = Form.serialize(formname);
    var myAjax = new Ajax.Updater (
                    'main',
                    url,
                    {method: "GET", evalScripts: true, onComplete: showResult}
                    );
    //alert(myAjax.Responders);
}
function showResult(originalRequest) {
    //put returned XML in the textarea
    params=(originalRequest.responseText);
    //alert(originalRequest.responseText);
    $('main').innerHTML=params;
    String.evalScripts(originalRequest.responseText);
}

function ch_mode(id)
{
   for(var i=1;i<=3;i++)
   {
      if(i==id)
      {
         currentmode=id;
         setcookie('yab_uploadmode',id);
         $('uploadmode'+i).style.display='';
         document.uploadform.action=actions[id];
      }
      else
      $('uploadmode'+i).style.display='none';
   }
}
var rParam;
rParam = '';
function postIt()
{
    if(uploadmode[currentmode]==0) return false;
    if(currentmode==1)
    {
        var filename=document.uploadform.uploadfile.value;
    }
    if(currentmode==2)
    {
        var filename=document.uploadform.uploadurl.value;
    }
    if(currentmode==3)
    {
        var filename=document.uploadform.uploadftp.value;
    }
    if(filename.length==0)
    {
        alert(NoFileSelected);
        return false;
    }
    var fromemail=document.uploadform.fromemail.value;
    var toemail=document.uploadform.toemail.value;

    if(fromemail.length==0&&toemail.length!=0)
    {
        alert(FromemailNeeded);
        return false;
    }
    if(document.uploadform.terms.checked==false)
    {
        alert(TOSUnchecked);
        return false;
    }
    $('uploadwindow1').style.display= 'none';
    $('uploadwindow2').style.display= 'none';
    $('uploaderror').style.display= 'none';
    $('progressbar').style.display= '';
    $('progressbar2').style.display= '';
    $('helpwindow').style.display= '';

    sid = document.uploadform.sessionid.value;
	iTotal = escape("-1");
	rParam = "iTotal=" + iTotal;
	rParam += "&iRead=0";
	rParam += "&iStatus=1";
	rParam += "&sessionid=" + sid;

    if(currentmode==1) AjaxRequest(rParam);

 	document.uploadform.submit();
    return true;
}
function popUP(mypage, myname, w, h, scroll, titlebar)
{

	var winl = (screen.width - w) / 2;
	var wint = (screen.height - h) / 2;
	winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) {
		win.window.focus();
	}
}

function showResponse(originalRequest)
{
    var parts= new Array();

    //put returned XML in the textarea
    params=originalRequest.responseText;

    if(params.substring(1,6)=='start')
    {
        rParam = params.substring(7);
        setTimeout("AjaxRequest(rParam);",1000);
    }
    else
    {
        parts = params.split(',');
        $('bread').innerHTML = parts[0];
        $('itotal').innerHTML = parts[1];
        $('dtremainingf').innerHTML = parts[2];
        $('dtelapsedf').innerHTML = parts[3];
        $('bspeedf').innerHTML = parts[4];

        $('progBar').innerHTML= "<div class='progInner' style='width: " + parts[5] + "%;'>" + parts[5] + "%</div>";

        rParam = parts[6];

        if(rParam.length>5)
        {
            setTimeout("AjaxRequest(rParam);",2000);
        }
        else
        {
            rParam='';
        }
    }
}
function showProgress(params)
{
    parts = params.split(',');

    parent.document.getElementById('bread').innerHTML = parts[0];
    parent.document.getElementById('itotal').innerHTML = parts[1];
    parent.document.getElementById('dtremainingf').innerHTML = parts[2];
    parent.document.getElementById('dtelapsedf').innerHTML = parts[3];
    parent.document.getElementById('bspeedf').innerHTML = parts[4];

    parent.document.getElementById('progBar').innerHTML= "<div class='progInner' style='width: " + parts[5] + "%;'>" + parts[5] + "%</div>";
}
function AjaxRequest(rParam)
{
    //$('surl').innerHTML='';//rParam;
    //$('surl').innerHTML=rParam;
    var url='/cgi-bin/progress-ajax.cgi';
    var url=document.uploadform.returnurl.value;
    var myAjax = new Ajax.Request(
                    url,
                    {method: 'get', parameters: rParam+'&url='+cgiprogress, onComplete: showResponse,onFailure: reportError}
                    );
}
function reportError(request)
{   
    alert(originalRequest.responseText);
    alert('Sorry. There was an error.');
}

var tmpTag=new Array();
var tmpStore=new Array();
function makeEditable(id){
    tmpTag[id] = $(id).innerHTML?1:0;
    $(id).innerHTML=$(id).innerHTML?$(id).innerHTML:'რედაქტირებისთვის დააჭირეთ აქ!!';
	Event.observe(id, 'click', function(){edit($(id))}, false);
	Event.observe(id, 'mouseover', function(){showAsEditable($(id))}, false);
	Event.observe(id, 'mouseout', function(){showAsEditable($(id), true)}, false);
}

function edit(obj){
	Element.hide(obj);
    tmpStore[obj.id]=obj.innerHTML;

	var textarea = '<div id="'+obj.id+'_editor"><textarea id="'+obj.id+'_edit" name="'+obj.id+'" style="width:190px; height:50px; border:1px Solid Silver">'+(tmpTag[obj.id]==0?'':trim(obj.innerHTML))+'</textarea>';
	var button	 = '<div style="align:center;"><input id="'+obj.id+'_save" type="button" value="SAVE" style="font-size:10px; font-family:Arial;" /> OR <input id="'+obj.id+'_cancel" type="button" class=button value="CANCEL" style="font-size:10px; font-family:Arial;" /></div></div>';

	new Insertion.After(obj, textarea+button);

	Event.observe(obj.id+'_save', 'click', function(){saveChanges(obj)}, false);
	Event.observe(obj.id+'_cancel', 'click', function(){cleanUp(obj)}, false);
}

function showAsEditable(obj, clear){
	if (!clear){
		Element.removeClassName(obj, 'editable');
	}else{
		Element.addClassName(obj, 'editable');
	}
}

//var url='ajax_request.php';
if (document.getElementById("makeEditable_url"))
	var url = window.getElementById("makeEditable_url").value;
else
	var url = 'noreply_ajax.php';

function saveChanges(obj){
	alert(url);
	var new_content	=  escape($F(obj.id+'_edit'));

	obj.innerHTML	= '<span style="color:red">შენახვა...</span>';
	cleanUp(obj, true);

	var success	= function(t){editComplete(t, obj);}
	var failure	= function(t){editFailed(t, obj);}


	var pars = 'id='+obj.id+'&content='+new_content;
	var myAjax = new Ajax.Request(url, {method:'post', postBody:pars, onSuccess:success, onFailure:failure});

}

function cleanUp(obj, keepEditable){
	Element.remove(obj.id+'_editor');
	Element.show(obj);
	if (!keepEditable) showAsEditable(obj, true);
}

function editComplete(t, obj){
	obj.innerHTML	= t.responseText;
    tmpTag[obj.id] = obj.innerHTML?1:0;
    obj.innerHTML=obj.innerHTML?obj.innerHTML:'Click here to edit!';
	showAsEditable(obj, true);
}

function editFailed(t, obj){
	alert('შეცდომა, სამწუხაროდ ვერ მოხერხდა მონაცემების განახლება.');
    obj.innerHTML   =  tmpStore[obj.id];
	cleanUp(obj,0);
}


function trim(inputString) {

   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);

   while (ch == " ") {
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);

   while (ch == " ") {
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }

   while (retValue.indexOf("  ") != -1) {
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length);
   }
   return retValue;
}
function ClipBoard(id)
{
	var ccc = MM_findObj(id);
    if (document.all){
	ccc.value = ccc.innerText;
	Copied = ccc.createTextRange();
	Copied.execCommand("Copy");
    }
    else
    {
        alert('Close this box and press \'CTL-c\' to copy');
        ccc.focus();
        ccc.select();
    }
}
function MM_findObj(n, d) { //v4.01
    var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
    if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function highlight(id) {
    var field = MM_findObj(id);
	field.focus();
  	field.select();
}
function checkAll()
{
   for (var i=0;i<document.myform.elements.length;i++)
   {
      var e = document.myform.elements[i];
      if (e.type == 'checkbox' && e.name != 'allbox'&& !e.disabled)
      e.checked = document.myform.allbox.checked;
   }
}
function opConfirm(text, conf)
{
    for (var i=0;i<document.myform.elements.length;i++)
    {
       var e = document.myform.elements[i];
       if (e.type == 'checkbox' && e.name != 'allbox' && e.checked == 1 ) {
          if (conf) {
             return confirm(text);
          } else {
             return 1;
          }
       }
    }
    return false;
}
function getexpirydate( nodays){
   var UTCstring;
   Today = new Date();
   nomilli=Date.parse(Today);
   Today.setTime(nomilli+nodays*24*60*60*1000);
   UTCstring = Today.toUTCString();
   return UTCstring;
}
function getcookie(cookiename) {
   var cookiestring=""+document.cookie;
   var index1=cookiestring.indexOf(cookiename);
   if (index1==-1 || cookiename=="") return "";
   var index2=cookiestring.indexOf(';',index1);
   if (index2==-1) index2=cookiestring.length;
   return unescape(cookiestring.substring(index1+cookiename.length+1,index2));
}
function setcookie(name,value)
{
   duration=30;

   cookiestring=name+"="+escape(value)+";EXPIRES="+getexpirydate(duration);
   document.cookie=cookiestring;

}
function delcookie(name)
{
   cookiestring=name+"="+escape('')+";EXPIRES="+getexpirydate(-1);
   document.cookie=cookiestring;
}

