
    var lastEditId = null;

    function swapForms()
    {
     var s = document.forms['form0'];
     var t = document.forms['form01'];

     t.latitude.value = s.latitude.value;
     t.longitude.value = s.longitude.value;
     t.marker.value = s.marker.value;
     t.userId.value = s.userId.value;
     t.id.value = s.id.value;
     t.communityId.value=s.communityId.value;
     t.title.value = s.title.value;
     t.imageLink.value = s.imageLink.value; 
     t.audioLink.value = s.audioLink.value;
     t.txt.value = s.txt.value; 
     t.link.value = s.link.value;
     t.answer.value = s.answer.value;
    }
    
    function cancelNewData()
    {
        hideBlock('newdata');
        hideLast();
        reloadMap();
    }

    function submitData()
    {
        var ifile = document.forms['form0'].ifile.value;
        var afile = document.forms['form0'].afile.value;

        var link = document.forms['form0'].link.value;
        var alink = document.forms['form0'].audioLink.value;
        var ilink = document.forms['form0'].imageLink.value;

        var txt = document.forms['form0'].txt.value;
        var title = document.forms['form0'].title.value;
        var answer = document.forms['form0'].answer.value;

        if (!lastMarker && !lastEditId) return false;

        if (title=='')
        {
          alert("Please, provide a title");
          return false;
        }

        if (answer=='')
        {
          alert("Please, answer the math question");
          return false;
        }

        if (link!='')
         if (!validUrl(link))
         {
            alert("Invalid URL for link");
            return false;
         }

        if (alink!='')
         if (!validUrl(alink))
         {
            alert("Invalid URL for audio link");
            return false;
         }

        if (ilink!='')
         if (!validUrl(ilink))
         {
            alert("Invalid URL for image link");
            return false;
         }

        var i;
        var ext;
        
        if (ifile!='')
        {
          i = ifile.lastIndexOf(".");
          if (i<=0 || i==ifile.length-1)
          {
            alert("Invalid image file");
            return false;
          }
          ext = ifile.substr(i+1); ext=ext.toUpperCase();
          if (ext!='GIF' && ext!='PNG' && ext!='JPG' && ext!='JPEG')
          {
            alert("Invalid image file");
            return false;
          }
          
        }

        if (afile!='')
        {
          i = afile.lastIndexOf(".");
          if (i<=0 || i==afile.length-1)
          {
            alert("Invalid audio file");
            return false;
          }
          ext = afile.substr(i+1); ext=ext.toUpperCase();
          if (ext!='MP3')
          {
            alert("Invalid audio file");
            return false;
          }
          
        }

        if (lastMarker)
        {
          var center = lastMarker.getPoint();
          document.forms['form0'].latitude.value = center.lat();
          document.forms['form0'].longitude.value = center.lng();
        }

        if (currentUser!=null)
          if (currentUser.id)
            document.forms['form0'].userId.value=currentUser.id; 

        if (currentCommunity!=null)
          if (currentCommunity.id)
            document.forms['form0'].communityId.value=currentCommunity.id; 

        hideBlock('newdata');
        showBlock('loading');

        if (afile=='' && ifile=='')
        {
/*
          try
          {
           if (document.forms['form0'].afile.type)
             document.forms['form0'].afile.type="text";
          
           if (document.forms['form0'].ifile.type)
             document.forms['form0'].ifile.type="text";
          }
          catch (e) {}


          var t = document.getElementById('ifile');
          t.parentNode.removeChild(t);

          t = document.getElementById('afile');
          t.parentNode.removeChild(t);
          document.forms['form0'].action="upload.jsp?1";
          document.forms['form0'].enctype="application/x-www-form-urlencoded";
*/
          swapForms();
          document.forms['form01'].method="post";
        }
        else          
        {  
          document.forms['form0'].action="upload.jsp";
          document.forms['form0'].enctype="multipart/form-data";
          document.forms['form0'].method="post";
        }

        document.forms['form0'].submit(); 
        return true; 
    }

    function activateForm(objId)
    { 
      hideBlocks(new Array('olddata','newdata'));
      showBlock('loading');

      if (objId) lastEditId = objId;
      else       lastEditId = null;  

      var uri='newdata.jsp';

      if (currentUser!=null)
          if (currentUser.id)
            uri+="?u="+currentUser.id; 

      if (currentCommunity!=null)
        if (currentCommunity.id)
        {
            if (uri.indexOf("?")>0) uri+="&";
            else                    uri+="?";
            uri+="c="+currentCommunity.id;
        }           

      if (objId) 
      {
        if (uri.indexOf("?")>0) uri+="&";
        else                    uri+="?";
        uri+="id="+objId;
      }
   
      if (objId) cjAjaxEngine(uri,handler1e,error1); 
      else       cjAjaxEngine(uri,handler1,error1);
    }

    function handler1(txt, xmlDoc)
    {
      hideBlock('loading');
      document.getElementById('newdata').innerHTML=txt;
      if (document.forms['form0']) 
         document.forms['form0'].txt.value="";
      showBlock('newdata'); 
      if (document.forms['form0']) 
         document.forms['form0'].title.focus();
    }

    function handler1e(txt, xmlDoc)
    {
      hideBlock('loading');
      document.getElementById('newdata').innerHTML=txt;
      if (document.forms['form0']) 
         document.forms['form0'].txt.value="";
      showBlock('newdata'); 

      if (document.forms['form0']) 
       if (lastEditId) 
        fillEditForms(lastEditId);

      if (document.forms['form0']) 
        document.forms['form0'].title.focus();
    }


   function error1()
   {
      alert("Error. Could not add data");
   } 

