﻿var DivNumberCount = 1;
var count = 1;      

function GetUploadDivs()
{ 
    for(DivNumberValue=1;DivNumberValue<=10;DivNumberValue++)
    {
      if(document.getElementById("SetDivs"+ DivNumberValue).style.display == "block")
      {
       continue;
      }
      else
      {
       document.getElementById("SetDivs" + DivNumberValue).style.display = "block";
       break;
      }
    }

    oXMLHTTP=GetXmlHttpObject();
    var url= m_strUploadURL + 'UploadWebDiv.aspx?DivNumberVal='+ DivNumberValue;            
    oXMLHTTP.onreadystatechange=stateChanged;
    oXMLHTTP.open ('GET',url,true);
    oXMLHTTP.send (null);    
}

function stateChanged()
{
    
    if (oXMLHTTP.readyState==4 || oXMLHTTP.readyState=="complete")
    {
     var txt = oXMLHTTP.responseText;
     var sIndex = txt.indexOf("<div1>");
     var LIndex = txt.indexOf("</div1>")-1;
     txt = txt.substring(sIndex,LIndex);
   
     document.getElementById("SetDivs" + DivNumberValue).innerHTML=txt;    
     document.getElementById("SetDivs" + DivNumberValue).style.display = "block";      
            
    }
    
    try
    {
      document.getElementById("divCrossIcon1").style.display = "none";
      document.getElementById("StartDiv").style.display = "none";
      document.getElementById("startUploadButton").style.display = "none";
      
      document.getElementById("UploadButton").style.display = "inline";
      document.getElementById("aHrefAddMore").style.display = "inline";      
      
    }
    catch(ex)
    { 
    } 
    
}    
/* HTTPRequest Object Declaration */
function GetXmlHttpObject()
{
  return (window.XMLHttpRequest)?(new XMLHttpRequest()):(new ActiveXObject("Microsoft.XMLHTTP"));
}


function InsertNewDiv()
{
      if(DivNumberCount >= 9)
      {
        document.getElementById("AddMoreDiv").style.display = "none";
      }
      else
      {
       document.getElementById("AddMoreDiv").style.display = "block";
      }
  
      DivNumberCount= Number(DivNumberCount) + 1;
      GetUploadDivs();      
      
     
}
    
 function CloseDiv(val)
 {
      var Position = val.id.substring(12,val.id.length);
      var DivClose = "SetDivs" + Position ;
      if(DivClose != "SetDivs1")
      {   
          document.getElementById(DivClose).style.display = "none";         
          
          document.getElementById("txtUrl"+Position).value = "";
          document.getElementById("txtUrl"+Position).style.border = "none";
          
          
          document.getElementById("txtTitle"+Position).value = "";
          document.getElementById("txtTitle"+Position).style.border = "1px solid #c5c5c5";
          
          document.getElementById("txtTags"+Position).value = "";
          document.getElementById("txtTags"+Position).style.border = "1px solid #c5c5c5";
          
//          
//          tags.style.border = "1px solid #c5c5c5";   
//          tags.className = "inputfield2";
          
          if(document.getElementById("lblValidation" +Position))
          {
           document.getElementById("lblValidation"+Position).innerHTML = "";           
           document.getElementById("lblValidation"+Position).style.display = "none";      
          }
          
          if(document.getElementById("lblTitleError"+Position))
          {
            document.getElementById("lblTitleError"+Position).innerHTML = "";
            document.getElementById("lblTitleError"+Position).style.display = "none";         
          }
          
          if(document.getElementById("lblTagError"+Position))
          {
           document.getElementById("lblTagError"+Position).innerHTML = "";
           document.getElementById("lblTagError"+Position).style.display = "none";         
          }
          
          document.getElementById("chkAllowDownload"+Position).checked= false;
          
          if(document.getElementById("chkPrivate"+Position))
          document.getElementById("chkPrivate"+Position).checked= false;
          
          
          
          DivNumberCount= Number(DivNumberCount) - 1;
          document.getElementById("AddMoreDiv").style.display = "block";    
      }

 }

  function trimString(str) 
  {
        str = this != window? this : str;
        return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
  }
 
 
 
 
 var boolPrivateLimit = true;
 function validateUpload()
 {
    var fileUpload,title,tags,count = 0,strExt,titlefocus="",tagfocus="",txtUrlfocus="";
    var Validation = true;
    var iTags = "~`!@#%^&*()+=[]\\\'./{}|\":<>?_";
    
    for(var i=1;i<=10;i++)
    {
        fileUpload = document.getElementById("txtUrl" + i);   
        if((!fileUpload) || document.getElementById("SetDivs" + i).style.display == "none")
        {
           continue;
        }
        
        title = document.getElementById("txtTitle"+i);
        tags = document.getElementById("txtTags"+i);  
        lblValidation = document.getElementById("lblValidation"+i);
        lblUploadError = document.getElementById("lblUploadError"+i);
        //lblMandatoryFields = document.getElementById("lblMandatoryFields"+i);
        //lblMandatoryFieldsFirst = document.getElementById("lblMandatoryFieldsFirst"+i);
        //lblMandatoryFieldsSecond = document.getElementById("lblMandatoryFieldsSecond"+i);
        lblTitleError = document.getElementById("lblTitleError"+i);
        lblTagError = document.getElementById("lblTagError"+i);
        
        fileUpload.value = trimString(fileUpload.value); 
        title.value = trimString(title.value); 
        tags.value = trimString(tags.value); 
        
        
        lblValidation.innerHTML= "";
        //lblMandatoryFields.innerHTML= "";
        //lblMandatoryFieldsFirst.innerHTML= "";
        //lblMandatoryFieldsSecond.innerHTML= "";
        lblUploadError.innerHTML= "";
        lblTitleError.innerHTML = "";
        lblTagError.innerHTML="";
        
        //lblMandatoryFields.style.display = "none";
        //lblMandatoryFieldsFirst.style.display = "none";
        //lblMandatoryFieldsSecond.style.display = "none";
        
        lblValidation.style.display='none';
        lblUploadError.style.display='none';
        lblTitleError.style.display='none';
        lblTagError.style.display='none';
                
        if(fileUpload.value == "")
        {
          Validation = false;
          fileUpload.style.border = "1px solid #D00B0B";
          //fileUpload.focus();
        }
        else
        {
            lblValidation.innerHTML = "";
            
            if(trimString(fileUpload.value).length > 4)
            {
                strExt = trimString(fileUpload.value).substring(trimString(fileUpload.value).length - 4,trimString(fileUpload.value).length).toLowerCase();
                
                if(strExt.toLowerCase() == ".ppt" || strExt.toLowerCase() == ".pps" || strExt.toLowerCase() == "pptx" || strExt.toLowerCase() == "ppsx" )
                {
                    fileUpload.style.border = "none";
                }
                else
                {
                    //Error = false;
                    Validation = false;
                    fileUpload.style.border = "1px solid #D00B0B";
                    lblUploadError.innerHTML = "*Please upload a file in ppt, pps, pptx, ppsx format only.<br/>";
                    
                    if(txtUrlfocus == "")
                    {
                      txtUrlfocus = fileUpload;
                    }  
                    
                    lblUploadError.style.display='inline';
                    //fileUpload.focus();
                }
            }
            else
            {
            
                Validation = false;
                fileUpload.style.border = "1px solid #D00B0B";
                lblUploadError.innerHTML = "*Please upload a file in ppt, pps, pptx, ppsx format only.<br/>";
                
                if(txtUrlfocus == "")
                txtUrlfocus = fileUpload;
                
                lblUploadError.style.display='inline';
                //fileUpload.focus();
            }   
        } 
        
        if(tags.value!="")
        {
            for (var j = 0; j < tags.value.length; j++) 
            {
                if (iTags.indexOf(tags.value.charAt(j)) != -1) 
                {
                    Error = false;
                    Validation = false;
                    tags.style.border = "1px solid #D00B0B";
                    lblTagError.innerHTML = "*Special characters are not allowed in presentation tags.<br/>";
                    
                    if(tagfocus == "")
                    tagfocus = tags;
                    
                    lblTagError.style.display='inline';
                    //tags.focus();
                    break;
                }
                else
                {
                     tags.style.border = "1px solid #c5c5c5";   
                     tags.className = "inputfield2";
                }
            } 
        } 
        else
        {
           tags.style.border = "1px solid #c5c5c5";   
           tags.className = "inputfield2";
        }                    
            
        if (title.value == "")
        {
           Validation = false;
           title.style.border = "1px solid #D00B0B";
           //title.focus();
        }
        else
        {
            title.style.border = "1px solid #c5c5c5";   
            title.className = "inputfield2"; 
            if(title.value.indexOf("<") >= 0 || title.value.indexOf(">") >= 0)
            {
                Validation = false;
                title.style.border = "1px solid #D00B0B";
                lblTitleError.innerHTML = "*Invalid characters in presentation title.<br/>";
                
                if(titlefocus == "")
                titlefocus = title;
                
                lblTitleError.style.display='inline';
                title.focus();
            }
          
        }  
        
        if (Validation == false)
        {                  
          
            if (title.value == "" || fileUpload.value == "")
            {
             lblValidation.innerHTML ="*Some fields were missed. Please check below fields marked with red.<br/>";
             
             
             if(fileUpload.value == "")
             {
                if(txtUrlfocus == "")
                txtUrlfocus = fileUpload;
             }
             
             if(title.value == "") 
             {
               if(titlefocus == "")
               titlefocus = title;
             }
              
              lblValidation.style.display='inline';
            }
            else
            {
                lblValidation.innerHTML = "";                    
            }

        }
        else
        {
            
            lblValidation.innerHTML = "";
        }
     } //for loop end here   
     
        if(tagfocus != "")
        {
          tagfocus.focus();
        }
        
        if(titlefocus != "")
        {
          titlefocus.focus();
        }
        
         if(txtUrlfocus != "")
        {
          txtUrlfocus.focus();
        }
        
        
     
     if(Validation == true)
     {
           var DivExist;               
           var PrivateCount = 0;
           for(var k=1;k<=10;k++)
           {                  
              DivExist = document.getElementById("SetDivs"+ k);   
              if(DivExist.style.display == "block")
              {
                 try
                 {
                     if(document.getElementById("chkPrivate"+k)!=null && document.getElementById("chkPrivate"+k)!='undefined')
                     {
                         if(document.getElementById("chkPrivate"+k).checked==true)
                            PrivateCount++;
                     }
                 }
                 catch(ex)
                 {
                    
                 } 
              }
           }
           PrivateCount = ' ' + PrivateCount + ' ';
           document.getElementById('lblPrivateErrMsg').innerHTML = "";
           
           if(MemberID!=' 0 ')
           {
                UploadWeb.CheckPrivatePresentations(MemberID, PrivateCount, UploadWebUrl_Callback);
           }
           else
                UploadPresentation();
     }         
 }
 
 function UploadWebUrl_Callback(Response)
 {
     if(Response.value == true)
     {
        UploadPresentation();
        document.getElementById('lblPrivateErrMsg').style.display='none';
        document.getElementById('divPrivateMsg').style.display='none';
     }
     else
     {
        document.getElementById('divPrivateMsg').style.display='block';
        document.getElementById('lblPrivateErrMsg').style.display='block';
        //document.getElementById('divPrivateMsg').style.paddingTop='10px';
        document.getElementById('divPrivateMsg').style.margin='0px;';
        document.getElementById('divPrivateMsg').className = 'main';            
        document.getElementById('lblPrivateErrMsg').innerHTML = "*You have exceeded the limit of your private presentations. To upload more, contact <a href='mailto:support@authorstream.com'>Support</a>.";            
        window.scrollTo(0,0);
     }
 } 
 var today = new Date();
var expiry = new Date(today.getTime() + 365 * 24 * 60 * 60 * 1000);
 function UploadPresentation()
 {
    try
    {
        var DivExist,URL="",PPtTitle="",Category="",CategoryName="",PPTName="",PPTags="",ChannelIDs="",LicenseIDs="";
        var Private = "",AllowDownload = "",AllowDownloadPrem = "",Emails = "",textboxurl;
       for(var k=1;k<=10;k++)
       {
          DivExist = document.getElementById("SetDivs"+ k);   
          if(DivExist.style.display == "block")
          {
            textboxurl = document.getElementById("txtUrl"+k).value; 
            URL = URL + textboxurl + ">";
            PPtTitle = PPtTitle + trimString(document.getElementById("txtTitle"+k).value)+ ">";
            Category = Category + document.getElementById("category"+k).options[document.getElementById("category"+k).selectedIndex].value+ ">";
            var w = document.getElementById("category"+k).selectedIndex;
            CategoryName = CategoryName + document.getElementById("category"+k).options[w].text+ ">";
            PPTags = PPTags + trimString(document.getElementById("txtTags"+k).value)+ ">";
            Private = Private + document.getElementById("chkPrivate"+k).checked+ ">";
            AllowDownload = AllowDownload + document.getElementById("chkAllowDownload"+k).checked+ ">";
            AllowDownloadPrem = AllowDownloadPrem + document.getElementById("chAllowPremium"+k).checked+ ">";
            
            PPTName = PPTName + trimString(document.getElementById("txtUrl"+k).value.substring(document.getElementById("txtUrl"+k).value.lastIndexOf("/")+1,document.getElementById("txtUrl"+k).value.length))+ ">";
            Emails = Emails + document.getElementById("hdnEmails"+k).value + ">";
            ChannelIDs = ChannelIDs + document.getElementById("ddlChannels"+k).options[document.getElementById("ddlChannels"+k).selectedIndex].value+ ">";
            try{
            LicenseIDs = LicenseIDs + document.getElementById("license"+k).options[document.getElementById("license"+k).selectedIndex].value+ ">";
             }
             catch(ex){}
            
            URL = URL.replace('&','%26');            
            PPtTitle = PPtTitle.replace('&','%26');	    
            CategoryName = CategoryName.replace('&','%26');
            PPTags = PPTags.replace('&','%26');
            PPTName = PPTName.replace('&','%26');
            Emails = Emails.replace('&','%26');
           }
       }
       URL = URL.substring(0,URL.length-1);       
       PPtTitle = PPtTitle.substring(0,PPtTitle.length-1);       
       Category = Category.substring(0,Category.length-1);
       CategoryName = CategoryName.substring(0,CategoryName.length-1);
       PPTags = PPTags.substring(0,PPTags.length-1);
       Private = Private.substring(0,Private.length-1);
       AllowDownload = AllowDownload.substring(0,AllowDownload.length-1);
       AllowDownloadPrem = AllowDownloadPrem.substring(0,AllowDownloadPrem.length-1);
       PPTName = PPTName.substring(0,PPTName.length-1);
       Emails = Emails.substring(0,Emails.length-1);
       ChannelIDs = ChannelIDs.substring(0,ChannelIDs.length-1);
       LicenseIDs = LicenseIDs.substring(0,LicenseIDs.length-1);
       
       
       
       //var url = 'PPTurl='+URL+'&PptTitle='+PPtTitle+'&PptCat='+Category+'&PptCatName='+CategoryName+'&PptTags='+PPTags+'&PptPrivate='+Private+'&PptName='+PPTName + '&AllowDownload=' + AllowDownload + '&Emails=' + Emails;
       var url = URL+'<'+PPtTitle+'<'+Category+'<'+CategoryName+'<'+PPTags+'<'+Private+'<'+PPTName + '<' + AllowDownload + '<' + Emails + '<' + ChannelIDs + '<' + LicenseIDs + '<' + AllowDownloadPrem ;
       
       if(navigator.userAgent.toLowerCase().indexOf('msie 6.0') !=-1 )
       {
            UploadWeb.CreateURLCookie(url, CreateURLCookie_Callback);
       }
       else
       {
           var myDate=new Date();
           myDate.setDate(myDate.getDate() + 365);
           document.cookie='WebUploadURL=' + url + '; domain='+UploadDomain+''  + '; expires=' + myDate + '; path=/';    
           
           if(GetCookie('WebUploadURL')!=null && GetCookie('WebUploadURL')!='')
           {       
               CallBackEnd();
           }
           else
           {
               document.cookie='WebUploadURL=' + url + '; domain='+UploadDomain+''  + '; expires=' + myDate + '; path=/';
               CallBackEnd();
           }
       }       
     }
     catch(ex)
     {
        alert(ex.description);
     }
 }
 
 function CreateURLCookie_Callback()
 {
    CallBackEnd();
 }
 
 function CallBackEnd()
 {
    var webUploadURL = m_strUploadURL + 'UploadWebBackEnd.aspx';       
    oXMLHTTP1=GetXmlHttpObject();
    oXMLHTTP1.onreadystatechange=stateRedirectChanged;
    oXMLHTTP1.open ('GET',webUploadURL,true);
    oXMLHTTP1.send (null);
 }
 
 function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1) { endstr = document.cookie.length; }
  return unescape(document.cookie.substring(offset, endstr));
  }
 
 
function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg) {
      return getCookieVal (j);
      }
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break; 
    }
  return null;
  }
 
 function stateRedirectChanged()
 {
    if (oXMLHTTP1.readyState==4 || oXMLHTTP1.readyState=="complete")
    {
        window.location.href = m_strServerURL + 'Upload-presentation-successful/webupload/';        
    }
 }   
 
 var ctlCurrent;
 var ctlCurrentSelectID;
 var prevVal = "";
 function AutoFill(ctlID, ctlSelectID)
 {    
    ctlCurrent = document.getElementById(ctlID);
    var ctlText = ctlCurrent.value;
    var splitTags = ctlText.split(',');
    var iTagCounter;
    prevVal = "";
    for(iTagCounter=0;iTagCounter<splitTags.length-1;iTagCounter++)
    {
        prevVal = prevVal + trim(splitTags[iTagCounter]," ") + ", ";
    }
    ctlText = splitTags[iTagCounter];
    ctlCurrentSelectID = document.getElementById(ctlSelectID);
    UploadWeb.AutoFillTags(ctlText,AutoFillTags_Callback);
    
 }
 
 function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
 }

 function ltrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
 }

 function rtrim(str, chars) {
    chars = chars || "\\s";
    return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
 }
 
 function AutoFillTags_Callback(Response)
 {
    if(Response.value!="")
    {
        var myTag_array=Response.value.split(",");
        
        var iTagCounter;
        for(iTagCounter=ctlCurrentSelectID.options.length-1;iTagCounter>=0;iTagCounter--)
        {
            ctlCurrentSelectID.remove(iTagCounter);
        }
        
        for(var iTagCounter = 0; iTagCounter < myTag_array.length; iTagCounter++)
        {
            var strOption = myTag_array[iTagCounter].replace('/',' ');
            var myOption = new Option(strOption,strOption,false,true);
            ctlCurrentSelectID.options[ctlCurrentSelectID.length] = myOption;
        }
        
        if(myTag_array.length!=1)
            ctlCurrentSelectID.size = myTag_array.length;
        else
            ctlCurrentSelectID.size = 2;
        
        ctlCurrentSelectID.selectedIndex = 0;
        ctlCurrentSelectID.style.display = 'block';
    }
    else
    {
        var iTagCounter;
        for(iTagCounter=ctlCurrentSelectID.options.length-1;iTagCounter>=0;iTagCounter--)
        {
            ctlCurrentSelectID.remove(iTagCounter);
        }
        ctlCurrentSelectID.style.display = 'none';
    }
 }

 function FillControlValue()
 {
    ctlCurrent.value = prevVal + ctlCurrentSelectID.options[ctlCurrentSelectID.selectedIndex].value + ', '; 
    ctlCurrentSelectID.style.display = 'none';
    ctlCurrent.focus();
 }
 
 // Move current cursor position on list box from tags 
 function displayKeyCode(evt, ctlSelect)
 {
     var charCode = (evt.which) ? evt.which : event.keyCode
     if(charCode == 40 || charCode == 38)
     {
        if(document.getElementById(ctlSelect).value != "")
        { 
          document.getElementById(ctlSelect).selectedIndex = 0;        
          document.getElementById(ctlSelect).focus();        
        }  
     }
     else if(charCode == 27)
     {
        return false;
     }     
 }
 
 function SelectControlValue(evt)
 {
    ctlCurrent.value = prevVal + ctlCurrentSelectID.options[ctlCurrentSelectID.selectedIndex].value;
 }
 
 // Fill Tags values on enter press on listbox
 function EnterControlValue(evt)
 {
     var charCode = (evt.which) ? evt.which : event.keyCode
     
     if(charCode == 13 || charCode == 9)
     {
        FillControlValue();
        return false;
     }
     else if(charCode == 27)
     {
        HideTagDiv();        
        return false;
     }
     else
     {
        if(charCode == 40)
        {
            if(ctlCurrentSelectID.selectedIndex==ctlCurrentSelectID.size-1)
                ctlCurrent.focus();
                
        }
        else if(charCode == 38)
        {
            if(ctlCurrentSelectID.selectedIndex==0)
                ctlCurrent.focus();
        }
        else
            ctlCurrent.focus();
     }
 }
 
document.onclick = function(e)
{
    HideTagDiv();
}

function HideTagDiv()
{
    try{
        for(var i=0;i<10;i++)
        {
            if(document.getElementById('selectAutoFillTags' +i)!='undefined' && document.getElementById('selectAutoFillTags' +i)!=null)
            {
                document.getElementById('selectAutoFillTags' +i).style.display = 'none';
            }                
        }
    }catch(err){}
}

// --------------- Select Contact Details -------------------
var currentHref='aHrefSelect1';
var aHrefNumber = 1;
function ShowDivWithLoader(DivId,show,ctlID)
{
    var Ctl = document.getElementById(DivId);            
    if (Ctl == null)
        return;
    else
    {
        if (show)
        {
            if(ctlID!=null)
                aHrefNumber = ctlID.replace('aHrefSelect','');
                
            currentHref = 'aHrefSelect' + aHrefNumber;
            document.getElementById("startUploadButton").enabled=false;	            
            if(Ctl.style.display == "block")
            {
                Ctl.style.display = "none";
            }
            else
            {
                Ctl.style.display = "block";
                Ctl.style.left = LeftPos(document.getElementById(currentHref),1);
                Ctl.style.top = TopPos(document.getElementById(currentHref),15);
            }
            document.getElementById("tdUpd").style.display="block";
            return true;
        }
        else
        {
            Ctl.style.display = "none";
            document.getElementById("divAdd").style.display="none";
        }
    }
    document.getElementById("startUploadButton").enabled=true;
}

var currentHref='aHrefSelect1';
var aHrefNumber = 1;
function ShowDiv(DivId,show,ctlID)
{
    var Ctl = document.getElementById(DivId);            
    if (Ctl == null)
        return;
    else
    {
        if (show)
        {
            var _strEmails="";    
            if(ctlID!=null)
                aHrefNumber = ctlID.replace('aHrefSelect','');
                
            currentHref = 'aHrefSelect' + aHrefNumber;
            document.getElementById("startUploadButton").enabled=false;	
            var f = document.getElementById("dlstContacts");
            
            if (f!=null)
            {
                if(f.getElementsByTagName("input") != null)
                {
                    for(var i=0;i<f.getElementsByTagName("input").length;i++ )
                    {
                        if(f.getElementsByTagName("input").item(i).type=='hidden')
                        {
                            if(ctlID!=null)
                            {    
                                var strEmailVal = f.getElementsByTagName("input").item(i).value;                                
                                f.getElementsByTagName("input").item(i+1).checked=false;        

                                if(document.getElementById("hdnEmails" + aHrefNumber).value.indexOf(strEmailVal)!=-1)
	                            {	                    
	                                if(f.getElementsByTagName("input").item(i+1).type=='checkbox')
	                                {
                                        f.getElementsByTagName("input").item(i+1).checked=true;
	                                }
	                            }
	                        }
	                    }
                        else if(f.getElementsByTagName("input").item(i).type=='checkbox')
                        {
	                        if(f.getElementsByTagName("input").item(i).checked==true)
	                        {
	                            _strEmails = _strEmails + (f.getElementsByTagName("input").item(i).value) +",";
	                        }
	                    }	            
                    }
                    _strEmails = _strEmails.substring(0,_strEmails.length-1);            
                    
                    if(_strEmails.length>0)
	                {
	                    document.getElementById("hdnEmails" + aHrefNumber).value=_strEmails;
	                }
                }
            }
            
            if(ctlID!=null)
                Ctl.style.display = "block";
            else
            {
                if(Ctl.style.display == "block")
                    Ctl.style.display = "none";
                else
                    Ctl.style.display = "block";
            }
            Ctl.style.left = LeftPos(document.getElementById(currentHref),1);
            Ctl.style.top = TopPos(document.getElementById(currentHref),15);
            document.getElementById("tdUpd").style.display="none";
            return true;
        }
        else
        {
            Ctl.style.display = "none";
            //AddedBy:Nipun
            //Description:Error in Authorstream3.0
            document.getElementById("divAdd").style.display="none";
            //sel_clear_all(false);
		    //document.getElementById("hdnEmails" + aHrefNumber).value="";
        }
    }
    document.getElementById("startUploadButton").enabled=true;
}


function ShowAddDiv(DivId,show)
{           
    var Ctl=document.getElementById(DivId);
    if(Ctl==null)
        return;
    else
    {
        if(show)
        {                    
            Ctl.style.display="block";
            document.getElementById("divAdd").style.display="block";
            document.getElementById("divContacts").style.display="none";
            document.getElementById("txtContacts").value = "";
            document.getElementById("divAddContactsError").style.visibility = "hidden";
            document.getElementById("divAddContactsError").style.display = "none";
            document.getElementById("divAdd").style.left = LeftPos(document.getElementById(currentHref),1);
            document.getElementById("divAdd").style.top = TopPos(document.getElementById(currentHref),15);
        }
        else
        {
            Ctl.style.display="none";
            document.getElementById("divAdd").style.display="none";
            document.getElementById("divContacts").style.display="block";
        }
    }
}
function checkUncheckAll(theElement, checked) {        
    var theForm = document.form1.elements;       
    var z = 0;        
    for(z=0; z<theForm.length;z++) {
        if(theForm[z].type == 'checkbox' && theForm[z].name != 'chkPrivate')  {
            theForm[z].checked = checked; 
            var EmailId = new String(theForm[z].attributes["onclick"].value);
            EmailId= EmailId.split('"');
            CheckUncheck(theForm[z], EmailId[1]);                               
        }
    }
}
function CheckUncheck(Chk, EmailId)
{
    if ((Chk.checked == undefined) || (Chk.checked == false))
        RemoveContact(EmailId);
    else
        AddContact(EmailId);    
}
function AddContact(EmailId)
{       
   var txtEmail = document.getElementById("hdnEmails" + aHrefNumber);
   var Emails = new String(txtEmail.value);      
    Emails = Emails.trim();        
    if ((Emails != "") && (Emails.charAt(Emails.length-1) != ",") && (Emails.charAt(Emails.length-1) != ";"))
        Emails = Emails + ", ";            
    txtEmail.value = Emails;           
   if (txtEmail.value.indexOf(EmailId, 0) == -1)
        txtEmail.value = txtEmail.value + " "+ EmailId + ", ";                
}
function RemoveContact(EmailId)
{
    var AllEmails = new String(document.getElementById("hdnEmails" + aHrefNumber).value);
    AllEmails = AllEmails.replace(EmailId + ",", "");
    AllEmails = AllEmails.replace("  ", " ");       
    document.getElementById("hdnEmails" + aHrefNumber).value = AllEmails;
}   
function openWindow()
{       
   window.open(m_strServerURL + "ImportContacts.aspx",'',"left=0,top=0,width=700,height=600,status=1");                           
} 
function Validate()
{        
    addContact = true;
    var returnValue = true;
    var Control = document.getElementById("txtContacts");                    
    if ((Control.value.trim() == "") || (Control.value.trim() == ",") || (Control.value.trim() == ";"))
    {          
        returnValue = false;
        document.getElementById("divAddContactsError").style.visibility = "visible";
        document.getElementById("divAddContactsError").style.display = "inline";            
        Control.className = "input_txtbox_popup_red";            
        document.getElementById("spBlank").style.visibility = "visible";
        document.getElementById("spBlank").style.display = "inline";
        document.getElementById("spMsg").style.visibility = "hidden";
        document.getElementById("spMsg").style.display = "none";
    }
    else if(IsValidEmails(Control.value) == false)
    {             
        document.getElementById("divAddContactsError").style.visibility = "visible";
        document.getElementById("divAddContactsError").style.display = "inline";  
        document.getElementById("spBlank").style.visibility = "hidden";
        document.getElementById("spBlank").style.display = "none";
        document.getElementById("spMsg").style.visibility = "visible";
        document.getElementById("spMsg").style.display = "inline";
        returnValue = false;
        Control.className = "input_txtbox_popup_red";
    }
    else
    {   
        Control.className = "input_txtbox_popup"; 
        document.getElementById("divAddContactsError").style.visibility = "hidden";
        document.getElementById("divAddContactsError").style.display = "none";           
        document.getElementById("spMsg").style.visibility = "hidden";
        document.getElementById("spMsg").style.display = "none";
    }   
    if(returnValue) 
    {            
        UploadWeb.AddContacts(document.getElementById("txtContacts").value,Add_CallBack); 
        if(document.getElementById("spnLblContacts"))
        document.getElementById("spnLblContacts").style.display = 'none';
        
    }    
    else
        return false;
}

function Add_CallBack(response)
{
    if (response.error != null)
    {    
        alert(response.error); 
        return;
    }	
    ShowAddDiv('divAdd',false);
    chk();
}

var ctlCurHrefID;
function FillDataList(ctlID)
{
    document.getElementById("tdUpd").style.display="block";
    ShowDivWithLoader('divContacts', true,ctlCurHrefID);
    ctlCurHrefID = ctlID;
    oSelectContactsXMLHTTP=GetXmlHttpObject();
    var url= m_strUploadURL + 'SelectContactsDiv.aspx';
    oSelectContactsXMLHTTP.onreadystatechange=stateChangedSelectContacts;
    oSelectContactsXMLHTTP.open ('GET',url,true);
    oSelectContactsXMLHTTP.send (null);
}

function stateChangedSelectContacts()
{
    if (oSelectContactsXMLHTTP.readyState==4 || oSelectContactsXMLHTTP.readyState=="complete")
    {
         var txt = oSelectContactsXMLHTTP.responseText;
         var sIndex = txt.indexOf("<div1>");
         var LIndex = txt.indexOf("</div1>")-1;
         txt = txt.substring(sIndex,LIndex);
         
         if(trimString(txt)=='<div1>')
         {
            document.getElementById('spnSubmit').style.display='none';
            document.getElementById('divSelectAll').style.display='none';
            document.getElementById('spnLblContacts').style.display='inline';
            document.getElementById("dataListSelectContacts").innerHTML="";            
         }
         else
         {
             document.getElementById("dataListSelectContacts").innerHTML=txt;
             document.getElementById('spnSubmit').style.display='inline';
             document.getElementById('spnLblContacts').style.display='none';
             document.getElementById('divSelectAll').style.display='inline';
         }
         
         ShowDiv('divContacts', true,ctlCurHrefID);
         document.getElementById("tdUpd").style.display="none";
    }
}

function IsValidEmails(Emails)
{
    var Emails = new String(Emails);
    Emails = Emails.split(/(,)|(;)/);       
    for (var i =0; i<Emails.length;i++)
    {
        if ((IsValidEmail(Emails[i].trim()) == false) && (Emails[i].trim() != "") && (Emails[i].trim() != ";") && (Emails[i].trim() != ","))
            return false;
    }
    return true;
}     
 
function UpdateImg()
{
    document.getElementById('gif_image').src = m_strServerURL + 'images/loader.gif';
}

function sel_clear_all(val)
{ 
    var f= document.getElementById("dlstContacts");
	
	if(f != null)
	{
	    for(var i=0;i<f.getElementsByTagName("input").length;i++ )
	    {
	      f.getElementsByTagName("input").item(i).checked=val;
        }
    }    
} 

/*//#A 052005 AP: To get the top position of the object*/
function TopPos(obj, pos)
{
    var topCoord = 0;
	while(obj)
	{
	   topCoord += obj.offsetTop;
	   obj = obj.offsetParent;
	}
	return topCoord + pos + 'px';
}

/*// #A 052005 AP: To get the left position of the object*/
function LeftPos(obj, pos)
{
    var leftCoord = 0;
    while(obj)
	{
	   leftCoord += obj.offsetLeft;
	   obj = obj.offsetParent;	   
	}
	return leftCoord + pos + 'px';
}

function CheckKeyCode(e)
{
    if (navigator.appName == 'Microsoft Internet Explorer')
        var KeyPressed = e.keyCode;
    else
        var KeyPressed = e.which;    
    if (KeyPressed == 13)
    {
        document.getElementById("btnAddSubmit").click();                   
    }
    else
        return false;
}

// To show hide 'Select Contacts' link on Private checked
function ShowHideContacts(ctlID, aHrefSelectID)
{
    if(ctlID.checked)
        document.getElementById(aHrefSelectID).style.display='inline';
    else
    {
        document.getElementById(aHrefSelectID).style.display='none';
        if(document.getElementById("divContacts"))
        document.getElementById("divContacts").style.display='none';
        
        if(document.getElementById("divAdd"))
        document.getElementById("divAdd").style.display='none';
    }   
}


// To bind Contact Data list again
function chk()
{
    document.getElementById("tdUpd").style.display="block";
    oSelectContactsXMLHTTP=GetXmlHttpObject();
    var url= m_strUploadURL + 'SelectContactsDiv.aspx';
    oSelectContactsXMLHTTP.onreadystatechange=stateChangedImportContacts;
    oSelectContactsXMLHTTP.open ('GET',url,true);
    oSelectContactsXMLHTTP.send (null);
}

function stateChangedImportContacts()
{
    if (oSelectContactsXMLHTTP.readyState==4 || oSelectContactsXMLHTTP.readyState=="complete")
    {
         var txt = oSelectContactsXMLHTTP.responseText;
         var sIndex = txt.indexOf("<div1>");
         var LIndex = txt.indexOf("</div1>")-1;
         txt = txt.substring(sIndex,LIndex);
         
         if(trimString(txt)=='<div1>')
         {
            document.getElementById('spnSubmit').style.display='none';
            document.getElementById('divSelectAll').style.display='none';
            document.getElementById('spnLblContacts').style.display='inline';
            document.getElementById("dataListSelectContacts").innerHTML="";
         }
         else
         {
             document.getElementById("dataListSelectContacts").innerHTML=txt;
             document.getElementById('divSelectAll').style.display='inline';
             document.getElementById('spnSubmit').style.display='inline';
             document.getElementById('spnLblContacts').style.display='none';
         }       
         document.getElementById("tdUpd").style.display="none";
    }
}

function SetTitleFun(UrLId,titleId)
{
//   try
//   {
       var startIndex,lastIndex,TitleName="",UrLname;
       
       UrLname = document.getElementById(UrLId).value;
       startIndex = UrLname.lastIndexOf('/');
       lastIndex = UrLname.lastIndexOf('.');       
       TitleName = UrLname.substring(startIndex + 1,lastIndex);
       if(TitleName.length > 40)
       {
         TitleName = TitleName.substring(0,40);
       }
       document.getElementById(titleId).value = TitleName;
//   }
//   catch(ex)
//   {
//     alert(ex.description)
//   }     
}

function ShowToolTipDIv(e,id,ctlPlaceID)
{
    document.getElementById(id).style.display='block';    
    document.getElementById(id).style.top = TopPos(document.getElementById(ctlPlaceID),-230);
    document.getElementById(id).style.left = LeftPos(document.getElementById(ctlPlaceID),-214);
}

function HideToolTipDIv(id)
{
    document.getElementById(id).style.display='none';
}


function SetOnCheckedChange(chkInputId,divChan)
{
    if(chkInputId.checked)
    {
         document.getElementById(divChan).style.display = "none";
    }
    else
    {
        document.getElementById(divChan).style.display = "block";
    }
}

function AllowDownloadChk(ctrl,chAllowdownload)
{
  try
  {
      //alert(ctrl.id.substring(ctrl.id.length-1,ctrl.id.length));
     var chPre = chAllowdownload + ctrl.id.substring(ctrl.id.length-1,ctrl.id.length);
      
      if(ctrl.checked==true)
      {
        document.getElementById(chPre).checked = true;
        document.getElementById(chPre).disabled=true;
      }
      else 
      {
        document.getElementById(chPre).disabled = false;
      }
  }
  catch(Ex)
  {
   //alert(ex);
  }
}
   