﻿// JScript File
//********************************************************************************/
    //	Function Name	: HideScrollBar
    //	Input(s)		: nscrollnumber
    //	Output			: 
    //	Description		: This function used to hide custom scrollbars
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************/
    function HideScrollBar(nscrollnumber)
    {
        if(document.getElementById("up"+nscrollnumber)!= null)
        {
            document.getElementById("up"+nscrollnumber).style.visibility="hidden"; 
            document.getElementById("dn"+nscrollnumber).style.visibility="hidden"; 
            document.getElementById("thumb"+nscrollnumber).style.visibility="hidden"; 
            document.getElementById("scrollarea"+nscrollnumber).style.visibility="hidden"; 
        }
    }
  
//********************************************************************************/
    //	Function Name	: RemoveID
    //	Input(s)		: Ctrl(hidden variable),FileID (either string or int
    //	Output			: 
    //	Description		: This function is used to remove FileID from the CTRL. (Ctrl have comma sperated values)          
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 2/Feb/2009
    //	
    //********************************************************************************/
    function RemoveID(Ctrl,FileID)
    {
        var intFileIDsArray = new Array();
        var booIsFileAlreadyRemoved = false;
        var intFlag =0;
        intFileIDsArray =  Ctrl.value.toString().split(",") ;
        Ctrl.value = "";
        for(index = 0;index<intFileIDsArray.length-1;index = index + 1)    
            {
                if((intFileIDsArray[index]) != (FileID) || booIsFileAlreadyRemoved==true)
                {
                    Ctrl.value =  Ctrl.value + (intFileIDsArray[index]) + ",";
                    if((intFileIDsArray[index]) == (FileID))
                    {
                        intFlag = 1;
                    }
                }
                else
                {
                    booIsFileAlreadyRemoved = true;
                }
            }  
       intFileIDsArray = null;
       return intFlag;
    }
   
    
    //********************************************************************************/
    //	Function Name	: IsFileIDAlreadyPresentedInBasket
    //	Input(s)		: nFileID
    //	Output			: 
    //	Description		: This function is used to check whether the fileid is already presented in basket or not
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 27/Feb/2009
    //	
    //********************************************************************************/
    function IsFileIDAlreadyPresentedInBasket(nFileID)
    {
        var intFileIDsArray = Array();
        intFileIDsArray =  document.getElementById("hdnFilesNeedsToZip").value.toString().split(",") ;
        for(index = 0;index<intFileIDsArray.length-1;index = index + 1)    
        {
            if(parseInt(intFileIDsArray[index]) == parseInt(nFileID))
            {
                return true;
            }
        } 
        return false;
    }
 
    //********************************************************************************
    //	Function Name	: RemoveCtrlNames
    //	Input(s)		: imgCtrl and divCtrl
    //	Output			: none
    //	Description		: This function will call by ExpandORCollapse
    //  Purpose is, on Collapse, Remove ctrl from Hidden. So on "Postback" it will expand which all expanded by user
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"
    
    function RemoveCtrlNames(Ctrls)
    {
        var leftSubStr,RightSubStr,lenth,strCtrlNums;

        strCtrlNums = document.getElementById("hidExpandedCtrls").value;
        lenth = Ctrls.length;
        StartingIndex =strCtrlNums.toString().indexOf(Ctrls);
        if (StartingIndex >= 0)
        {
            leftSubStr=strCtrlNums.toString().substring(0,StartingIndex);
            RightSubStr= strCtrlNums.toString().substring(StartingIndex+lenth,strCtrlNums.toString().length);
        }
        document.getElementById("hidExpandedCtrls").value = leftSubStr+RightSubStr;
    }
    
    //********************************************************************************
    //	Function Name	: ExpandOnLoad
    //	Input(s)		: imgCtrl and divCtrl
    //	Output			: none
    //	Description		: This function will call on load of html
    //  Purpose on Collapse, Remove ctrl from Hidden. So on "Postback" it will expand search criteria options(Div tags) which all expanded by user in a previous visit
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"
    
    function ExpandOnLoad(DownRedImagePath)
    {
        var Ctrls,intSemiColon,intComma,imgCtrl,divCtrl;
    
        Ctrls = document.getElementById("hidExpandedCtrls").value;
        if(Ctrls.length > 0 )
        {
            while(Ctrls.length != 0 )
                {
                  intSemiColon = Ctrls.toString().indexOf(";")  ; 
                  imgCtrl =Ctrls.toString().substring(0,intSemiColon);
                  intComma = Ctrls.toString().indexOf(",")  ;
                  divCtrl=Ctrls.toString().substring(intSemiColon+1,intComma); 
                  document.getElementById(divCtrl).style.display = "block";
                  document.getElementById(imgCtrl).src = DownRedImagePath;
                  Ctrls = Ctrls.toString().substring(intComma+1,Ctrls.length);
                 } 
        } 
        
    }
  //********************************************************************************
    //	Function Name	: GetDisplayItem
    //	Input(s)		: id,lblControl
    //	Output			: none
    //	Description		: This function will call by HideRows.
    //  It will take the all supportfiles of selected DocFile and return indivdual ids to display or collapse
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"
    
    function GetDisplayItem(idRemove,str)
    {
        var leftSubStr,RightSubStr,lenth;
        lenth = idRemove.length;
        StartingIndex =str.toString().indexOf(idRemove);
        if (StartingIndex >= 0)
        {
            leftSubStr=str.toString().substring(0,StartingIndex);
            RightSubStr= str.toString().substring(StartingIndex+lenth);
        }
        return (document.getElementById(leftSubStr).style.display);
    }
           
    //********************************************************************************
    //	Function Name	: RemoveExpandedIDs
    //	Input(s)		: id,lblControl
    //	Output			: none
    //	Description		: This function will call by HideRows.
    //  Remove the individual id from hidden variable
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"    
         
    function RemoveExpandedIDs(idRemove,str,lblControl)
    {
        var leftSubStr,RightSubStr,lenth;
        lenth = lblControl.length;
        StartingIndex =str.toString().indexOf(lblControl);
        if (StartingIndex >= 0)
        {
            leftSubStr=str.toString().substring(0,StartingIndex);
            RightSubStr= str.toString().substring(StartingIndex+lenth+1,str.toString().length);
        }
        return leftSubStr+RightSubStr;
    } 
    
    //********************************************************************************
    //	Function Name	: RemoveFromValueField
    //	Input(s)		: id,lblControl
    //	Output			: none
    //	Description		: This function will call by HideRows.
    //  Remove the individual id from hidden variable
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"  
    
    function RemoveFromValueField(idRemove,str,strTableStyleBlock)
    {
        var leftSubStr,RightSubStr,lenth;
        lenth = idRemove.length;
        StartingIndex =str.toString().indexOf(idRemove);
        if (StartingIndex >= 0)
        {
            leftSubStr=str.toString().substring(0,StartingIndex);
            RightSubStr= str.toString().substring(StartingIndex+lenth);
            if(document.getElementById(leftSubStr).style.display == "none")
            {
                document.getElementById(leftSubStr).style.display = strTableStyleBlock;   
            }
            else
            {
                document.getElementById(leftSubStr).style.display = "none";   
            } 
        }
        return RightSubStr;
    }  
   
    //********************************************************************************
    //	Function Name	: StoreSearchOptions
    //	Input(s)		: CtrlHdn,CtrlImage,ID
    //	Output			: none
    //	Description		: This function will call by click on checkboxes of Searchoptions
    //  1)Store IDs in hiddenvariables(Hidden variable id passed from Code (Item databound of checkbox list)
    //  2)Store Ctrlnames in hidden variable "hdnListOfSelectedOptions"
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 23/Jan/2009
    //	
    //********************************************************************************"  
    function StoreSearchOptions(CtrlHdn,CtrlImage,ID)
    {
       var oHdn,oImage;
       var oCtrlImageArray; //Holds the individual ids of the selected search options
       var oCtrlHdn; // Holds all controlid of the selected search options as a comma seperated values
       oCtrlHdn = document.getElementById("hdnListOfSelectedOptions");
       oHdn = document.getElementById(CtrlHdn);
       oImage = document.getElementById(CtrlImage);
       var oImageArr =  oImage.src.toString().split("/");
       var oImagePath = oImageArr[oImageArr.length-1];
       if(oImagePath.toLowerCase() == "Checkbox.gif".toLowerCase())
        {
            oImage.src = "Images/Checkbox_Filled.gif";
            oHdn.value =  oHdn.value  + ID + ","
            oCtrlHdn.value = oCtrlHdn.value + CtrlImage + ",";
        }
        else
        {
            oImage.src = "Images/Checkbox.gif";
            intFileIDsArray = oHdn.value.split(",");
            oCtrlImageArray = oCtrlHdn.value.split(",");
            oHdn.value = "";
            oCtrlHdn.value = "";
            for(index = 0;index<intFileIDsArray.length-1;index = index + 1)    
            {
                if(parseInt(intFileIDsArray[index]) != parseInt(ID))
                {
                  oHdn.value =  oHdn.value + parseInt(intFileIDsArray[index]) + ",";
                }
            }
            for(index = 0;index<oCtrlImageArray.length-1;index = index + 1)    
            {
                if((oCtrlImageArray[index].toLowerCase()) != (CtrlImage.toLowerCase()))
                {
                  oCtrlHdn.value = oCtrlHdn.value + oCtrlImageArray[index] + ",";
                }
            }
        } 
    }
    
    //********************************************************************************
    //	Function Name	: fnDownLoadFile
    //	Input(s)		: nFileID,strFileName,imgIsDownloaded,isLink
    //	Output			: none
    //	Description		: Open ProjectSpecification links
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 29/Jan/2009
    //	
    //********************************************************************************"  
    function fnDownLoadFile(nFileID,strFileName,imgIsDownloaded,isLink)
    {
        //var strPath="DownloadFile.aspx?fileid="+nFileID+"&fileName="+ '<%=m_strPath %>' + strFileName+"&IsLink="+isLink;
        var strPath="DownloadFile.aspx?FileIDs="+nFileID+"&IsLink="+isLink+"&IsDownload="+1;
        OpenWindow(strPath,'yes','600','650','0','0','_blank');
        return false;
    }
    
    //********************************************************************************
    //	Function Name	: fnDownloadProjectSpecLink
    //	Input(s)		: none
    //	Output			: none
    //	Description		: Open ProjectSpecification link
    //
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 10/Feb/2009
    //	
    //********************************************************************************"  
    function fnDownloadProjectSpecLink()
    {
        var nPageID, strFileName;
        nPageID = document.getElementById("hdnProjectSpecLinkID").value ;
        fnDownLoadFile (nPageID,"",0,1);
        return false;
    }
    //********************************************************************************
    //	Function Name	: HighlightDiv
    //	Input(s)		: none
    //	Output			: none
    //	Description		: On mouse over show differen color
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 30/Jan/2009
    //	
    //********************************************************************************"  
    function HighlightDiv(Ctrl)
    {
        Ctrl.style.color = "#FFFFFF";//"divOnMouseOut";
        Ctrl.style.background = "#4b4e5a"
    }
    //********************************************************************************
    //	Function Name	: UnHighlightDiv
    //	Input(s)		: none
    //	Output			: none
    //	Description		: On mouse out show differen color
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 30/Jan/2009
    //	
    //********************************************************************************"  
    function UnHighlightDiv(Ctrl)
    {
     
        Ctrl.style.color = "#4b4e5a";//"divOnMouseOver"; 
        Ctrl.style.background = "#EFEFEF";
    }

    //********************************************************************************
    //	Function Name	: ShowDiv
    //	Input(s)		: none
    //	Output			: none
    //	Description		: if dropdown list alredy expanded, then collapse it else expand the drop down list
    //	Member of		: NewSearch
    //	Author(s)		: T Bhanu balaji aasapu
    //	Date Created	: 30/Jan/2009
    //********************************************************************************"  
    function ShowDiv()
    {
        var count=3;
        if(document.getElementById("ddlTable").style.display  == "none")
        {
            document.getElementById("ddlTable").style.display = "block";
        }
        else
        {
            document.getElementById("ddlTable").style.display = "none";
        }
    }
    function HidDiv()
    {
        document.getElementById("ddlTable").style.display = "none";
    }

    function ShowScrollBar(scrollNumber,nHeightOfDescription)
    {
       var maxY = theScroll[scrollNumber].clipH - 32;//Check funtion CreateDrager(,,,,,,,ClipH-20)
       var minY = 8;//Check funtion CreateDrager(,,,,,,10,ClipH-20)
       var nNoOfPixelsVerticallyMove;
       
       // Find scrollH -> No of pixels to move
       theScroll[scrollNumber].scrollH = (nHeightOfDescription - theScroll[scrollNumber].clipH )
       theScroll[scrollNumber].jumpTo(null,0);
       
        // the number of pixels the thumb can travel vertically (max - min)
       nNoOfPixelsVerticallyMove = maxY - minY;
       
       // the ratio between scroller movement and thumbMovement
       ratio[scrollNumber] = (theScroll[scrollNumber].scrollH / nNoOfPixelsVerticallyMove);
       
       document.getElementById("up"+scrollNumber).style.visibility="visible"; 
       document.getElementById("dn"+scrollNumber).style.visibility="visible"; 
       document.getElementById("thumb"+scrollNumber).style.visibility="visible"; 
       document.getElementById("thumb"+scrollNumber).style.top=minY+"px";
       document.getElementById("scrollarea"+scrollNumber).style.visibility="visible"; 
    }
    
 function OpenWindow(strPage, strMenu, strHt, strWd, strTop, strLeft,strWin,strscroll) 
    {
        var objWin
        
        if (strMenu == '' || strMenu == null)
        strMenu = 'no';

        if (strscroll == '' || strscroll == null)
        strscroll = 'yes';

        var strWndDetails = 'resizable=no,scrollbars=' + strscroll + ',menubar= no'  + ',toolbar=no,status=yes'; 

        if (strHt != '' && strHt != null)
        strWndDetails = strWndDetails + ',height=' + strHt;

        if (strWd != '' && strWd != null)
        strWndDetails = strWndDetails + ',width=' + strWd;

        if (strLeft != '' && strLeft != null)
        strWndDetails = strWndDetails + ',left=' + strLeft;

        if (strTop != '' && strTop != null)
        strWndDetails = strWndDetails + ',top=' + strTop;

        window 
        objWin = window.open(strPage,strWin, strWndDetails);
        if(!objWin.closed)
        objWin.focus();  
    }
    
function SaveIntoHiddenVariables(nFileID,strName,strFormat,strSize,strLanguage,strDate,strDescription,strPreviewImage,strFullImagePath,nIsProjectSpecLink,strProjectSpecLinkID,strTypeOfDocument,strTypeOfGrid)
    {
        document.getElementById('hdnPreviewFileID').value = nFileID;
        document.getElementById('hdnFileTitle').value = strName;
        document.getElementById('hdnFileFormat').value = strFormat;
        document.getElementById('hdnFileSize').value = strSize;
        document.getElementById('hdnFileLanguage').value = strLanguage;
        document.getElementById('hdnFileDate').value = strDate;
        document.getElementById('hdnFileDescription' ).value = strDescription;
        document.getElementById('hdnPreviewFileName').value = strPreviewImage;
        document.getElementById('hdnFileName').value = strFullImagePath;
        document.getElementById('hdnIsProjectSpecLink').value = nIsProjectSpecLink;
        document.getElementById('hdnProjectSpecLinkID').value = strProjectSpecLinkID;
        document.getElementById('hdnTypeOfDocument').value = strTypeOfDocument;
        document.getElementById('hdnTypeOfGrid').value = strTypeOfGrid;
    }
//********************************************************************************
//	Function Name	: ChangeDisclamerCheckBoxImage
//	Input(s)		: none
//	Output			: none
//	Description		: it is used to change image of ordinary checkbox to filledcheckbox and viceversa
//	Member of		: NewSearch
//	Author(s)		: T Bhanu balaji aasapu
//	Date Created	: 30/Jan/2009
//	
//********************************************************************************"  
    function ChangeDisclamerCheckBoxImage()
    {
        var oImg = document.getElementById("imgTermsAndConditions");
        var ImgsrcArray = oImg.src.toString().split("/");
        var oImagePath = ImgsrcArray[ImgsrcArray.length-1];
        if(oImagePath.toLowerCase() == "Checkbox.gif".toLowerCase())
        {
          oImg.src = "Images/Checkbox_Filled.gif";
          document.getElementById('hdnTermsAndConditions').value = "1";
        }
        else
        {   
            oImg.src = "Images/Checkbox.gif";
            document.getElementById('hdnTermsAndConditions').value = "0";
        }
    }
