/*V7.0*/
function confirmBox(messageStr,string,mode,submitValue, extraParams)
{
    if(confirm(messageStr))
    {
        if(mode == "link")
        {
          location.href = eval('"'+string+'"');
        }
        else if(mode == "submit")
        {
            DoPostBack(submitValue, extraParams, false);
        }
    }
};


function RemoveReportElement(ElementName)
{
    var ReportName = document.forms[0].hdnReportName.value;
    var AvailableElements = document.forms[0].hdnAvailableElements.value;
    var DefaultElements = document.forms[0].hdnDefaultElements.value;
    var originalLocation = escape(document.location.href);
    var NewLocation = "Report-Customization.aspx?ReportName=" + ReportName + 
                      "&Elements=" + AvailableElements + 
                      "&DefaultElements=" + DefaultElements + 
                      "&Location=" + originalLocation + 
                      "&Action=remove&ElementName=" + ElementName;
 

    confirmBox("Are you sure you wish to remove this element?",NewLocation,"link");
    
}

function ZoomItem(CrcidArray, OverrideDate, ExtraCGI)
{
    var originalLocation = escape(document.location.href);
     
    var newLocation = document.location.href;
    
    if( newLocation.indexOf("?") < 0 )
    {
        newLocation += "?";
    }
 
    newLocation = newLocation.replace(/#$/, '');
    
    var OverrideDateParam = "";
    
    if ( OverrideDate > 0 )
    {
      OverrideDateParam = "&OverrideDate=" + OverrideDate;
    }
    
    var nURL = newLocation + OverrideDateParam + "&action=zoom&crcids=" + CrcidArray.join("~") + "&back=" + originalLocation;
    
    
    //if( ! ( ExtraCGI == undefined ) )
    if( ExtraCGI )
    {
      nURL += "&" + ExtraCGI;
    }
    
        DMLoad(nURL);

    //document.location.href = nURL;
}


function CheckCount( myCheckBox, TotalPossibleItems )
{ 
    varItems = document.forms[0].hdnSelectedItemCount.value;
    if( myCheckBox.checked == true )
    {
      varItems++;
    }
    else
    {
      varItems--;
    }
    
    if( varItems > TotalPossibleItems )
    {
        alert("You may only select 10 items to filter.");
        myCheckBox.checked = false;
        varItems--;
    }
    document.forms[0].hdnSelectedItemCount.value = varItems;
}
function ValidateDataMiningItemForm(MaxItems)
{
  if( CheckSelectedItemsCount(MaxItems) ) 
   {
      DoPostBack('Save','',true);
   }
}

function CheckSelectedItemsCount(MaxItems)
{
  if( document.forms[0].hdnSelectedItemCount.value == 0 )
  {
    alert("You must select at least 1 item to be added to the filter.");
    return false;
  }
  else if( document.forms[0].hdnSelectedItemCount.value > MaxItems )
  {
    alert("You may only select " + MaxItems + " items to filter.");
    return false;
  }
  return true;
}

function UpdateList( myCheckBox, Section, ItemCRCID, ItemName, IsExclude )
{      
    
    myCheckBox = eval("document.forms[0]." + myCheckBox);

    if( myCheckBox.checked )
    {
        AddToList(myCheckBox, Section,ItemCRCID, ItemName, IsExclude);
    }
    else
    {   
        RemoveFromList(myCheckBox, Section,ItemCRCID, ItemName, IsExclude);
    }
}

function AddToList(myCheckBox, Section, ItemCRCID, ItemName, IsExclude )
{
    var myHdnTxt;
    if(!IsExclude)
      {
        myHdnTxt = eval("document.forms[0].hdnSelected" + Section);
      }
    else
      {   
        myHdnTxt = eval("document.forms[0].hdnExcluded" + Section);    
      }

    if(myHdnTxt.value == "" )
    {
        myHdnTxt.value = ItemCRCID;
    }
    else
    {
        var tempVar  = myHdnTxt.value;
        tempVar = tempVar.replace(/[^~]*/g, '');
        var NumberOfItems = tempVar.length;
        
        if( NumberOfItems == 9 )
        {
            alert("You may only select 10 items");
            myCheckBox.checked = false;
            return;
        }

        myHdnTxt.value += "~" + ItemCRCID;
        
    }
    
    if( ! IsExclude )
    {
        myHdnTxt = eval("document.forms[0].hdnSelected" + Section + "Names");
    }
    else
    {
        myHdnTxt = eval("document.forms[0].hdnExcluded" + Section + "Names");
    }

    
    if( myHdnTxt.value == "" )
    {
        myHdnTxt.value = ItemName;
    }
    else
    {
        myHdnTxt.value += "~" + ItemName;
    }

}

function RemoveFromList(myCheckBox, Section, ItemCRCID, ItemName, IsExclude)
{
    var myHdnTxt 
    if( ! IsExclude )
    {
        myHdnTxt = eval("document.forms[0].hdnSelected" + Section);
    }
    else
    {
        myHdnTxt = eval("document.forms[0].hdnExcluded" + Section);    
    }

    if( myHdnTxt.value != "" )
    {
        var newString;
        newString = myHdnTxt.value.replace(eval("/" + ItemCRCID + "/"),"");
        newString = newString.replace(/~~/,"");
        newString = newString.replace(/~$/,"");
        newString = newString.replace(/^~/,"");
        
        myHdnTxt.value = newString;
        
        if( ! IsExclude )
        {
            myHdnTxt = eval("document.forms[0].hdnSelected" + Section + "Names");
        }
        else
        {
            myHdnTxt = eval("document.forms[0].hdnExcluded" + Section + "Names");
        }


        ItemName = ItemName.replace(/\//g,"\\/");       
        newString = myHdnTxt.value.replace(eval("/" + ItemName + "/"),"");
        newString = newString.replace(/~~/g,"");
        newString = newString.replace(/~$/,"");
        newString = newString.replace(/^~/,"");
        
        myHdnTxt.value = newString;
    }
}

function ClearList( Section )
{
    var myHdnTxt = eval("document.forms[0].hdnSelected" + Section);
    myHdnTxt.value = "";

    myHdnTxt = eval("document.forms[0].hdnSelected" + Section + "Names");
    myHdnTxt.value = "";
}

function ClearExcludeList( Section )
{
    var myHdnTxt = eval("document.forms[0].hdnExcluded" + Section);
    myHdnTxt.value = "";

    myHdnTxt = eval("document.forms[0].hdnExcluded" + Section + "Names");
    myHdnTxt.value = "";
}


function CheckUncheckAll( CheckBoxLikeName, CheckItems )
{
  
  var arrLen = document.forms[0].elements.length;
  
  var r = new RegExp('^'+CheckBoxLikeName);
  
  for(var c=0; c<arrLen; c++)
    {
      if(document.forms[0].elements[c].name.match(r))
        {
          document.forms[0].elements[c].checked = CheckItems;
        }
    }

}

function ChangeImage(iName, iSrc)
{
  eval('document.'+iName+'.src = "'+iSrc+'";');
}

var preloaded = new Array();

function PreloadImage( iSource)
{
  var arrLen = preloaded.length;
  preloaded[arrLen] = new Image();
  preloaded[arrLen].src = iSource;

}

function FilterList(ListID)
{
   var FilterValue = eval("document.forms[0].txt" + ListID + "Filter.value");

    Location = document.location.href;

    var rgx = eval("/" + ListID + "Offset\=[^\?\&]*/g");
    Location = Location.replace(rgx, '');
    
    rgx = eval("/" + ListID + "Filter\=[^\?\&]*/g");
    Location = Location.replace(rgx, '');
    
    Location = Location.replace(/\&\&/g, '&');
    Location = Location.replace(/\?\&/g, '?');
    
    if ( Location.indexOf("?") < 1 )
      Location += "?";

    Location += "&" + ListID + "Filter=" + FilterValue;
    CustomPost(Location);
}


