﻿// JScript 文件


var lostbr = 0;
var lastdivId = "";
var filenum = 1;


function collapse(divId,prefix,subfix, flagName, collapseImgSrc,spreadImgSrc)
{  
   if(lastdivId == ""||lastdivId==divId)
   {
       lostbr = lostbr;
   }
   else
   {
       filenum++;
       lostbr = 0;
   }
   var div = $(divId);
   if (null == div)
   {
      return;
   }
   
  prefix = prefix.replace("<","&lt;").replace(">","&gt;");
  subfix = subfix.replace("<","&lt;").replace(">","&gt;");
    
  
  var inner = div.innerHTML;
  if (inner.indexOf(prefix)>=0 && inner.indexOf(subfix)>=0)
  {
     var tmpHTML = inner.substr(0,inner.indexOf(prefix));
     prefix = tmpHTML.substr(tmpHTML.toLowerCase().lastIndexOf("<div"))+prefix

     var lineNumber = getStrCount(tmpHTML.toLowerCase(), "<br>") + 1+lostbr;
//     var lineDiv  = $("$rowNumber"+lineNumber+"$");
       

    var aftersubfix = inner.substr(inner.indexOf(subfix));
    var subfixwithbr = subfix+aftersubfix.substr(subfix.length,aftersubfix.toLowerCase().indexOf("<br>")-subfix.length+4);
    var replacePrefix = "<div id=\"$$"+flagName+filenum+"$$\" style=\"width:42px; text-align:right;\"><div style='width:20px;float:left;text-align:right;'><img  id=\""+flagName + filenum +"img\" onclick = \"toggleDisplay1()\" src=\""+collapseImgSrc+"\" alt=\"Click To Spreed\" width=\"12px\" height=\"12px\"/></div><div class='number' style='width:22px;float:right;'><b class='number' style='width:22px;text-align:right;'>"+lineNumber+"</b></div></div><div style='width:100%' id='$"+ flagName + filenum +"$'>";
    
    var replaceSubfix = "</div>";
    
    
     if ($("$rowNumber"+lineNumber+"$"+filenum) != null)
     { 
       inner = inner.replace(prefix,replacePrefix + prefix).replace(subfixwithbr, subfix + replaceSubfix  );
       lostbr++;
       $(divId).innerHTML = inner;
       $("$rowNumber"+lineNumber+"$"+filenum).innerHTML= "<div></div><img id=\"img"+ flagName + filenum +"\" onclick=\"toggleDisplay2()\" src=\""+ spreadImgSrc +"\" alt=\"Click To Spread\" width=\"12px\" height=\"12px\"/>";
       var imgsubtract  =  $("img"+ flagName +filenum);
       imgsubtract.param1 = "$"+flagName+filenum+"$";
       imgsubtract.param2 = "$$"+flagName+filenum+"$$";
//       img.param2 = collapseImgSrc;
//       img.param3=spreadImgSrc;

       var imgplus  = $(flagName +filenum+"img");
       imgplus.param1 = "$"+flagName+filenum+"$";
       imgplus.param2 = "$$"+flagName+filenum+"$$";
       hideTagById("$"+flagName+filenum+"$");
     }
  }
  
  
  lastdivId = divId;
 }
 
 function toggleDisplay1()
 {
    var imgplus = window.event.srcElement;
    var divid = imgplus.param1;
    var imgid = imgplus.param2;
    showTagById(divid);
    hideTagById(imgid);
 }
 
 
 function toggleDisplay2()
 {
    var imgsubtract = window.event.srcElement;
    var divid = imgsubtract.param1;
    var imgid = imgsubtract.param2;
    showTagById(imgid);
    hideTagById(divid);
 }
 
 
 
 
// function toggleDisplay()
// {
//  var img=window.event.srcElement;
//  var id = img.param1;
//  var  collapseImgSrc = img.param2;
//  var spreadImgSrc = img.param3;
// if ($(id).style.display=="none")
// {
//  showTag(id);
//  this.src=spreadImgSrc;
// }
// else
// {
//   hideTag(id);
//   this.src=collapseImgSrc;
// }
// }
 
 
 function getStrCount(content, str)
 {
   var index = content.indexOf(str);
   var count = 0;
   while (index >= 0)
   {
     count++;
    content = content.substr(index + str.length);
    index = content.indexOf(str);
   }
   return count;
 } 
 
 function setPosition(stringId,lineId)
    {
    stringId ="b1_" + stringId.substr(0,10) + "b" + stringId.substr(10);
    lineId = lineId +"1";
    if(document.getElementById("MarkedStringLineDivId").value!="")
    {
        document.getElementById(document.getElementById("MarkedStringLineDivId").value).style.backgroundColor="white";
    }
    if(document.getElementById("DivIdBeforeLine").value!="")
    {
        document.getElementById(document.getElementById("DivIdBeforeLine").value).innerHTML="";
    }
    document.getElementById("ctl00_Main_filecontent").style.display="block";
    document.getElementById(stringId).scrollIntoView(false);    
    document.getElementById("ctl00_Main_filecontent").scrollLeft=0;
    window.scrollBy(0,window.screen.availHeight/2);
    document.getElementById(lineId).style.backgroundColor="Red";
    document.getElementById("MarkedStringLineDivId").value=lineId;
    
    var inner = document.getElementById("ctl00_Main_filecontent").innerHTML;
    var tmpHTML = inner.substr(0,inner.indexOf(lineId));
    var lineNumber = getStrCount(tmpHTML.toLowerCase(), "<br>") + 1 + lostbr;
    divId = "$rowNumber"+lineNumber+"$"+"1";
    
    document.getElementById(divId).innerHTML = "<img src='../images/up.jpg' alt='Back' onclick='window.scroll(0,100)' width='10px' height='12px'/> ";
    document.getElementById("DivIdBeforeLine").value=divId;
    
    }
    
    function setErrorPosition(lineNum)
    {
        var lastDivId ="$rowNumber"+ $("DivIdBeforeLine").value+"$"+"1";
        var lastColId = "FileContentLine"+$("DivIdBeforeLine").value;
        var divId = "$rowNumber"+lineNum+"$"+"1";
        if(document.getElementById("DivIdBeforeLine").value!="")
        {
            $(lastColId).style.color = "white";
            $(lastDivId).innerHTML="";
        }
        $(divId).scrollIntoView(false);
        $("ctl00_Main_Div_Error").scrollLeft=0;  
        window.scrollBy(0,window.screen.availHeight/2);  
        $(divId).innerHTML =  "<img src='../images/up.jpg' alt='Back' onclick='window.scroll(0,100)' width='10px' height='12px'/> ";  
        $("DivIdBeforeLine").value=lineNum;
        var colId = "FileContentLine"+lineNum;
        $(colId).style.color = "red";
    }
    
    
    