/// Global Variables
 
 var prm = Sys.WebForms.PageRequestManager.getInstance(); 
 
 var navigator_browser = navigator.userAgent.toLowerCase();

/// End Global Variables


 //This code is used to provide a reference to the radwindow "wrapper"
  function GetRadWindow()
  {
    
     var oWindow = null;
     if (window.radWindow) 
         oWindow = window.radWindow;
     else if (window.frameElement != null && window.frameElement.radWindow)
              oWindow = window.frameElement.radWindow;
    
     return oWindow;
  }

function ProcessMenuFolders(sender, eventArgs,  div_FolderName, div_RenameFolder, txtBFolderName, txtBNewFolderName, treeExplorer)
{       
        var divFolderName;
        var divRenameFolder;
        var textBox;
        var result;
        var Item_Text;     
        result = true;
        
        Item_Text = eventArgs.get_item().get_text();
        
        if (Item_Text == "Add") 
        { 
           // document.getElementById('Form1').reset(); 
            divFolderName = document.getElementById(div_FolderName);
            divRenameFolder = document.getElementById(div_RenameFolder);            
            divRenameFolder.style.display='none';
            divFolderName.style.display = 'block';
            textBox = document.getElementById(txtBFolderName);
            textBox.value = "";
            textBox.focus();
            result = false;
            
        } 
        
        if (Item_Text == "Rename") 
        { 
            if (ProcessCheckRenameFolder(treeExplorer) == true)
            {
                divFolderName = document.getElementById(div_FolderName);
                divFolderName.style.display='none';
                divRenameFolder = document.getElementById(div_RenameFolder);
                divRenameFolder.style.display = 'block';
                textBox = document.getElementById(txtBNewFolderName);
                textBox.value = "";
                textBox.focus();
                result = false;
            }
            
        } 
        
        if (Item_Text == "Remove") 
        {
            if (ProcessCheckRemoveFolder(treeExplorer) == true)
                result = confirm("Are you sure you want delete folder?");
        }
        
        return result;
}
           
function Process_MenuFiles(sender, eventArgs, RadWindowManager, currentNode, filesGrid, div_RenameFile, txtBNewFileName, ContentWindow) 
{
   var result;
   var textBox;
   var FilesSelected;
   var SelectedRow;
   var Item_Text;
   var Node;
   var url;
   var arg;
   var WindowName;
                  
                       
   result = true; 
      
   editMap = false;
      
   Item_Text = eventArgs.get_item().get_text();
      
       
       
   if (Item_Text == "Copy" || Item_Text == "Move")
   {
       
        if (filesSelected(filesGrid) == false)
        {
            result = false;
            alert("Please select file(s) to " + Item_Text.toLowerCase() + ".");
        }
        else
        {
           // ControlEvent = "MenuFilesCopyMove";
           // msg_ProcessingDelay = setTimeout('DisplayProgressMsg()', 100);
               
           url = "../Admin/CopyMove_Maps.aspx?o=" + (Item_Text == "Copy" ? "C" : "M");
           arg = new Object();
           arg.Maps =  getSelectedFiles(filesGrid);      
           arg.Action = Item_Text;  
          
           OpenRadWindow(url, RadWindowManager, ContentWindow, arg);
           
        }
   }
   
   if (Item_Text == "Remove")
   {   
        if (filesSelected(filesGrid) == true)
        {
             Node = document.getElementById(currentNode);
             if (Node.value != "-1")
             {
                result = confirm("Are you sure you want delete File(s)?");
             }
             else
                result = false;
        }
        else
            {
               result = false;
               alert("Please select File(s) you want to Remove.");
            }
   }
   
   if (Item_Text == "Add")
   {
       
          Node = document.getElementById(currentNode);
        
          //alert("Node:" + Node.value);
          if (Node.value != "-1")
          {
        
            // oWnd = oManager.open("../Admin/CreateMapPOPUP.aspx?cn=" + Node.value + "&mid=-1" +"&rn=" + rn, "CreateMapWindow");
            // oWnd.setSize(650,600);
               
            url = "../Admin/UploadFiles.aspx?cn=" + Node.value + "&mid=-1";
            OpenUploadFile_Window(url, RadWindowManager, ContentWindow);
               
          }
          else
              alert("Sorry, you cannot add Node to Home Folder!");
              
       result = false;
   }
   
   
   if (Item_Text == "Rename")
   {
             
        if (CountFilesSelected(filesGrid) > 1)
        {
            alert("You have more than one File selected. Only one File can be renamed at a time.");
        }
        else
        {
            SelectedRow = GetSelectedRow(filesGrid);  
            if (SelectedRow >= 0)
            {
                divRenameFolder = document.getElementById(div_RenameFile);
                divRenameFolder.style.display = 'block';
                textBox = document.getElementById(txtBNewFileName);
                textBox.value = getCellValue(filesGrid, "colName", 0);
         
                textBox.focus();
           }
           else
              alert("Please select file to Rename.");
        }
       
        result = false;
   }
        
       
   return result;
   
}            

function CheckFileSelection(filesGrid)
{
    var valid;
    var count;
    
    valid = false;
    count = CountFilesSelected(filesGrid);
    if (count > 1)
    {
        alert("You have more than one File selected. Only one File can be selected at a time.");
    }
    else if (count == 0)
    {
        alert("Please select a File.");
    }
    else
    {
         valid = true;
    }

   return valid;
   
}

 function OpenUploadFile_Window(url, RadWindowManager, ContentWindow)
 {
      var oManager;
      var oWnd;
           
     
      //Getting rad window manager
      var oManager = $find(RadWindowManager);
      oWnd = oManager.GetWindowByName(ContentWindow); 
     
      oWnd.setUrl(url);
       
      oWnd.Show();
      oWnd.Center();
 
 }

 
 //function OpenRadWindow(url, RadWindowManager, ContentWindow, arg)
 function OpenRadWindow(url, RadWindowManager, WindowName, arg)
 {
      var oManager;
      var oWnd;
      var url;
      var rn;
       
      //Getting rad window manager
      var oManager = $find(RadWindowManager);
      
      oWnd = oManager.GetWindowByName(WindowName); 
     
      // This random number is to force a reload of the page
      rn = "rn" + Math.random().toString();
      
      if (url.indexOf("?") >= 0) // if URL has parameter then add "rn" to parameter list
          url = url + "&rn=" + rn;
      else
         url = url + "?rn=" + rn;
         
      oWnd.setUrl(url);
      if (arg != null)
          oWnd.Argument = arg;
    
     oWnd.Show();
     oWnd.Center();
 
 }
 

 function Process_EditMap(RadWindowManager, mapID, currentNode)
 {
    
       //Getting rad window manager
       var oManager = $find(RadWindowManager);
       var Node;
       var url;
       
       Node = document.getElementById(currentNode);
       url = "../Admin/CreateMapPOPUP.aspx?cn=" + Node.value +"&mid=" + mapID;
       OpenCreateMap_Window(url, RadWindowManager);
      
}


function GetSelectedRow(filesGrid)
{
          
    var masterTable = $find(filesGrid).get_masterTableView();
    var count = masterTable.get_selectedItems().length;
    var checkBox;
   
    SelectedRow = -1;
    
    for (index = 0; index < count; index++)
    {   
        cell = masterTable.getCellByColumnUniqueName(masterTable.get_selectedItems()[index], "colCheckBox");
        checkBox = cell.childNodes[0];
        if (checkBox.checked == true)
        {
           SelectedRow = index;
        }
    }
    
  
    return SelectedRow;
}

function CountFilesSelected(filesGrid)
{
      
        //var masterTable = $find(filesGrid).get_masterTableView();
       // var cell = masterTable.getCellByColumnUniqueName(masterTable.get_selectedItems()[0], "colCheckBox");
       // var checkBox = cell.childNodes[0];
        //alert(checkBox.checked);
            
        var masterTable = $find(filesGrid).get_masterTableView();
        var Count = masterTable.get_selectedItems().length;    
            
        return Count;
}

function getCellValue(filesGrid, ColName, rowIndex)
{

    var masterTable = $find(filesGrid).get_masterTableView();
    var count = masterTable.get_selectedItems().length;
    var cell;
    var row;
    var value;
   
    value = "";
   
    row = masterTable.get_selectedItems()[rowIndex];
    cell = masterTable.getCellByColumnUniqueName(row, ColName);
      
    if (document.all || navigator_browser.indexOf('safari') + 1 >0)
       value = cell.innerText;
    else
       value = cell.textContent;
    

    return value;
}

function getSelectedFiles(filesGrid)
{
    
    var masterTable = $find(filesGrid).get_masterTableView();
    var count = masterTable.get_selectedItems().length;
    var checkBox;
    var dataItem;
    var filesSelected;
   
    filesSelected = "";
    for (index = 0; index < count; index++)
    {   
        cell = masterTable.getCellByColumnUniqueName(masterTable.get_selectedItems()[index], "colCheckBox");
        checkBox = cell.childNodes[0];
        if (checkBox.checked == true)
        {
            dataItem = masterTable.get_selectedItems()[index];
            
            filesSelected = filesSelected + dataItem.getDataKeyValue("ID") + ",";
        }
    }
    
    filesSelected = filesSelected.substring(0, filesSelected.lastIndexOf(','));
    
    return filesSelected;

}

function getIDFieldValue(filesGrid, rowIndex)
{
    var masterTable = $find(filesGrid).get_masterTableView();
    var dataItem;
    var fileID;
    
    dataItem = masterTable.get_selectedItems()[rowIndex];
            
    fileID = dataItem.getDataKeyValue("ID");
    
    return fileID;

}

function filesSelected(filesGrid)
{

    var masterTable = $find(filesGrid).get_masterTableView();
    var count = masterTable.get_selectedItems().length;
    var checkBox;
    var selected;
    var cell;
    
    selected = false;
    for (index = 0; index < count; index++)
    {
        cell = masterTable.getCellByColumnUniqueName(masterTable.get_selectedItems()[index], "colCheckBox");
        checkBox = cell.childNodes[0];
        if (checkBox.checked == true)
        {
            selected = true;
            break;
        }
    }
   
    return selected;

}

function ProcessCheckRemoveFolder(treeExplorer)
{

    var selectedNode;
    var result;
            
    selectedNode = treeExplorer.get_selectedNode();
    
    result = true;
    if (selectedNode == null)
    {
        alert("Please select a folder to Remove!");
        result = false;
    }
    else
    {
       if (selectedNode.get_text() == "Home")
       {
           alert("Sorry, you cannot Remove the Home folder!");
           result = false;
       }
    }
    
    return result;
}

function ProcessCheckRenameFolder(treeExplorer)
{
    var selectedNode;
    var result;
            
    selectedNode = treeExplorer.get_selectedNode();
    
    result = true;
    if (selectedNode == null)
    {
        alert("Please select a folder to rename!");
        result = false;
    }
    else
    {
       if (selectedNode.get_text() == "Home")
       {
           alert("Sorry, you cannot rename the Home folder!");
           result = false;
       }
    }
    
    return result;
}


