42. Araxis Merge File Comparison Report

Produced by Araxis Merge on Wed Jan 21 22:23:31 2009 UTC. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a reasonably standards compliant browser such as the latest version of Firefox or Internet Explorer. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

42.1 Files compared

# Location File Last Modified
1 Q:\Formats.2008.3.20682\WebWorks Help 5.0\Files\wwhelp\wwhimpl\js\scripts search.js Mon Oct 13 05:51:54 2008 UTC
2 Q:\Formats.2008.4.20859\WebWorks Help 5.0\Files\wwhelp\wwhimpl\js\scripts search.js Mon Jan 19 18:02:38 2009 UTC

42.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 26 3122
Changed 16 42
Inserted 1 1
Removed 3 11

42.3 Comparison options

Whitespace Differences in whitespace at the start of lines are ignored
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Shown in the comparison detail

42.4 Active regular expressions

Expression Description
\$(Id|Author|Date|Header|Id|Locker|Name|RCSfile|Revision|Source|State):[^$]*\$ CVS comments
<LastModified>.*</LastModified> last modified
- Title ignore - Title

42.5 Comparison detail

1   // Copyrig ht (c) 200 0-2005 Qua dralay Cor poration.   All right s reserved . CR LF   1   // Copyrig ht (c) 200 0-2005 Qua dralay Cor poration.   All right s reserved . CR LF
2   // CR LF   2   // CR LF
3   CR LF   3   CR LF
4   function   WWHSearch_ Object() CR LF   4   function   WWHSearch_ Object() CR LF
5   { CR LF   5   { CR LF
6     this.mbP anelInitia lized      = false; CR LF   6     this.mbP anelInitia lized      = false; CR LF
7     this.mPa nelAnchor             = null; CR LF   7     this.mPa nelAnchor             = null; CR LF
8     this.mPa nelTabTitl e          = WWHFrame .WWHJavaSc ript.mMess ages.mTabs SearchLabe l; CR LF   8     this.mPa nelTabTitl e          = WWHFrame .WWHJavaSc ript.mMess ages.mTabs SearchLabe l; CR LF
9     this.mPa nelTabInde x          = -1; CR LF   9     this.mPa nelTabInde x          = -1; CR LF
10     this.mPa nelFilenam e          = ((WWHFra me.WWHBrow ser.mBrows er == 1) ?  "panelfns .htm" : "p anelfss.ht m"); CR LF   10     this.mPa nelFilenam e          = ((WWHFra me.WWHBrow ser.mBrows er == 1) ?  "panelfns .htm" : "p anelfss.ht m"); CR LF
11     this.mIn itIndex               = 0; CR LF   11     this.mIn itIndex               = 0; CR LF
12     this.mNo nBreakingC haracters  = new Obje ct(); CR LF    
13     this.mBo okSearchIn foList     = new Arra y(); CR LF   12     this.mBo okSearchIn foList     = new Arra y(); CR LF
14     this.mMu ltiPhraseL ist        = new Arra y(); CR LF   13     this.mMu ltiPhraseL ist        = new Arra y(); CR LF
15     this.mSe archState             = null; CR LF   14     this.mSe archState             = null; CR LF
16     this.mSe archScopeI nfo        = null; CR LF   15     this.mSe archScopeI nfo        = null; CR LF
17     this.mSa vedSearchW ords       = ""; CR LF   16     this.mSa vedSearchW ords       = ""; CR LF
18     this.mSa vedSearchS cope       = 0; CR LF   17     this.mSa vedSearchS cope       = 0; CR LF
19     this.mSe archWordLi st         = new Arra y(); CR LF   18     this.mSe archWordLi st         = new Arra y(); CR LF
20     this.mSe archWordRe gExpList   = new Arra y(); CR LF   19     this.mSe archWordRe gExpList   = new Arra y(); CR LF
21     this.mBo okIndex               = 0; CR LF   20     this.mBo okIndex               = 0; CR LF
22     this.mBo okMatchesL ist        = new Arra y(); CR LF   21     this.mBo okMatchesL ist        = new Arra y(); CR LF
23     this.mCo mbinedResu lts        = new WWHS earchResul ts_Object( ); CR LF   22     this.mCo mbinedResu lts        = new WWHS earchResul ts_Object( ); CR LF
24     this.mCo mbinedResu ltsIndex   = 0; CR LF   23     this.mCo mbinedResu ltsIndex   = 0; CR LF
25   CR LF   24   CR LF
26     this.fIn itialize               = WWHSear ch_Initial ize; CR LF   25     this.fIn itialize               = WWHSear ch_Initial ize; CR LF
27     this.fIn itHeadHTML             = WWHSear ch_InitHea dHTML; CR LF   26     this.fIn itHeadHTML             = WWHSear ch_InitHea dHTML; CR LF
28     this.fIn itBodyHTML             = WWHSear ch_InitBod yHTML; CR LF   27     this.fIn itBodyHTML             = WWHSear ch_InitBod yHTML; CR LF
29     this.fIn itLoadBook SearchInfo  = WWHSear ch_InitLoa dBookSearc hInfo; CR LF   28     this.fIn itLoadBook SearchInfo  = WWHSear ch_InitLoa dBookSearc hInfo; CR LF
30     this.fNa vigationHe adHTML      = WWHSear ch_Navigat ionHeadHTM L; CR LF   29     this.fNa vigationHe adHTML      = WWHSear ch_Navigat ionHeadHTM L; CR LF
31     this.fNa vigationBo dyHTML      = WWHSear ch_Navigat ionBodyHTM L; CR LF   30     this.fNa vigationBo dyHTML      = WWHSear ch_Navigat ionBodyHTM L; CR LF
32     this.fHe adHTML                 = WWHSear ch_HeadHTM L; CR LF   31     this.fHe adHTML                 = WWHSear ch_HeadHTM L; CR LF
33     this.fSt artHTMLSeg ments       = WWHSear ch_StartHT MLSegments ; CR LF   32     this.fSt artHTMLSeg ments       = WWHSear ch_StartHT MLSegments ; CR LF
34     this.fAd vanceHTMLS egment      = WWHSear ch_Advance HTMLSegmen t; CR LF   33     this.fAd vanceHTMLS egment      = WWHSear ch_Advance HTMLSegmen t; CR LF
35     this.fGe tHTMLSegme nt          = WWHSear ch_GetHTML Segment; CR LF   34     this.fGe tHTMLSegme nt          = WWHSear ch_GetHTML Segment; CR LF
36     this.fEn dHTMLSegme nts         = WWHSear ch_EndHTML Segments; CR LF   35     this.fEn dHTMLSegme nts         = WWHSear ch_EndHTML Segments; CR LF
37     this.fPa nelNavigat ionLoaded   = WWHSear ch_PanelNa vigationLo aded; CR LF   36     this.fPa nelNavigat ionLoaded   = WWHSear ch_PanelNa vigationLo aded; CR LF
38     this.fPa nelViewLoa ded         = WWHSear ch_PanelVi ewLoaded; CR LF   37     this.fPa nelViewLoa ded         = WWHSear ch_PanelVi ewLoaded; CR LF
39     this.fHo verTextTra nslate      = WWHSear ch_HoverTe xtTranslat e; CR LF   38     this.fHo verTextTra nslate      = WWHSear ch_HoverTe xtTranslat e; CR LF
40     this.fHo verTextFor mat         = WWHSear ch_HoverTe xtFormat; CR LF   39     this.fHo verTextFor mat         = WWHSear ch_HoverTe xtFormat; CR LF
41     this.fDi splaySearc hForm       = WWHSear ch_Display SearchForm ; CR LF   40     this.fDi splaySearc hForm       = WWHSear ch_Display SearchForm ; CR LF
42     this.fSu bmit                   = WWHSear ch_Submit; CR LF   41     this.fSu bmit                   = WWHSear ch_Submit; CR LF
43     this.fAp plyWordBre aks         = WWHSear ch_ApplyWo rdBreaks; CR LF   42     this.fAp plyWordBre aks         = WWHSear ch_ApplyWo rdBreaks; CR LF
44     this.fSe tSearchWor ds          = WWHSear ch_SetSear chWords; CR LF   43     this.fSe tSearchWor ds          = WWHSear ch_SetSear chWords; CR LF
45     this.fCh eckForMatc h           = WWHSear ch_CheckFo rMatch; CR LF   44     this.fCh eckForMatc h           = WWHSear ch_CheckFo rMatch; CR LF
46     this.fSe archWordsC omplete     = WWHSear ch_SearchW ordsComple te; CR LF   45     this.fSe archWordsC omplete     = WWHSear ch_SearchW ordsComple te; CR LF
47     this.fCh eckForPhra seMatch     = WWHSear ch_CheckFo rPhraseMat ch; CR LF   46     this.fCh eckForPhra seMatch     = WWHSear ch_CheckFo rPhraseMat ch; CR LF
48     this.fSe archPairsC omplete     = WWHSear ch_SearchP airsComple te; CR LF   47     this.fSe archPairsC omplete     = WWHSear ch_SearchP airsComple te; CR LF
49     this.fCo mbineResul ts          = WWHSear ch_Combine Results; CR LF   48     this.fCo mbineResul ts          = WWHSear ch_Combine Results; CR LF
50     this.fSh owEntry                = WWHSear ch_ShowEnt ry; CR LF   49     this.fSh owEntry                = WWHSear ch_ShowEnt ry; CR LF
51   CR LF   50   CR LF
52     // Initi alize CR LF   51     // Initi alize CR LF
53     // CR LF   52     // CR LF
54     this.fIn itialize() ; CR LF   53     this.fIn itialize() ; CR LF
55   } CR LF   54   } CR LF
56   CR LF   55   CR LF
57   function   WWHSearch_ Initialize () CR LF   56   function   WWHSearch_ Initialize () CR LF
58   { CR LF   57   { CR LF
59     // Initi alize non- breaking c haracters CR LF    
60     // CR LF    
61     this.mNo nBreakingC haracters[ 65392] = t rue;  // H alfwidth K atakana-Hi ragana Pro longed Sou nd Mark CR LF    
62     this.mNo nBreakingC haracters[ 65438] = t rue;  // H alfwidth K atakana Vo iced Sound  Mark CR LF    
63     this.mNo nBreakingC haracters[ 65439] = t rue;  // H alfwidth K atakana Se mi-Voiced  Sound Mark CR LF    
64     this.mNo nBreakingC haracters[ 1523] = tr ue;   // H ebrew Punc tuation Ge resh CR LF    
65     this.mNo nBreakingC haracters[ 1524] = tr ue;   // H ebrew Punc tuation Ge rshayim CR LF    
66     this.mNo nBreakingC haracters[ 8217] = tr ue;   // R ight Singl e Quotatio n Mark (cu rly apostr ophe) CR LF    
67     this.mNo nBreakingC haracters[ 8231] = tr ue;   // H yphenation  Point CR LF    
68   } CR LF   58   } CR LF
69   CR LF   59   CR LF
70   function   WWHSearch_ InitHeadHT ML() CR LF   60   function   WWHSearch_ InitHeadHT ML() CR LF
71   { CR LF   61   { CR LF
72     var  Ini tHeadHTML  = ""; CR LF   62     var  Ini tHeadHTML  = ""; CR LF
73   CR LF   63   CR LF
74   CR LF   64   CR LF
75     // Creat e search s cope info CR LF   65     // Creat e search s cope info CR LF
76     // CR LF   66     // CR LF
77     this.mSe archScopeI nfo = new  WWHSearchS cope_Objec t(); CR LF   67     this.mSe archScopeI nfo = new  WWHSearchS cope_Objec t(); CR LF
78   CR LF   68   CR LF
79     return I nitHeadHTM L; CR LF   69     return I nitHeadHTM L; CR LF
80   } CR LF   70   } CR LF
81   CR LF   71   CR LF
82   function   WWHSearch_ InitBodyHT ML() CR LF   72   function   WWHSearch_ InitBodyHT ML() CR LF
83   { CR LF   73   { CR LF
84     var  HTM L = new WW HStringBuf fer_Object (); CR LF   74     var  HTM L = new WW HStringBuf fer_Object (); CR LF
85     var  Var Parameters ; CR LF   75     var  Var Parameters ; CR LF
86     var  Boo kList; CR LF   76     var  Boo kList; CR LF
87     var  Max Index; CR LF   77     var  Max Index; CR LF
88     var  Ind ex; CR LF   78     var  Ind ex; CR LF
89   CR LF   79   CR LF
90   CR LF   80   CR LF
91     // Worka round Safa ri reload  bug CR LF   81     // Worka round Safa ri reload  bug CR LF
92     // CR LF   82     // CR LF
93     VarParam eters = "" ; CR LF   83     VarParam eters = "" ; CR LF
94     if (WWHF rame.WWHBr owser.mBro wser == 5)   // Short hhand for  Safari CR LF   84     if (WWHF rame.WWHBr owser.mBro wser == 5)   // Short hhand for  Safari CR LF
95     { CR LF   85     { CR LF
96       VarPar ameters =  "?" + (new  Date() *  1); CR LF   86       VarPar ameters =  "?" + (new  Date() *  1); CR LF
97     } CR LF   87     } CR LF
98   CR LF   88   CR LF
99     // Displ ay initial izing mess age CR LF   89     // Displ ay initial izing mess age CR LF
100     // CR LF   90     // CR LF
101     HTML.fAp pend("<h2> " + WWHFra me.WWHJava Script.mMe ssages.mIn itializing Message +  "</h2>\n") ; CR LF   91     HTML.fAp pend("<h2> " + WWHFra me.WWHJava Script.mMe ssages.mIn itializing Message +  "</h2>\n") ; CR LF
102   CR LF   92   CR LF
103     // Load  search inf o CR LF   93     // Load  search inf o CR LF
104     // CR LF   94     // CR LF
105     this.mIn itIndex =  0; CR LF   95     this.mIn itIndex =  0; CR LF
106     BookList  = WWHFram e.WWHHelp. mBooks.mBo okList; CR LF   96     BookList  = WWHFram e.WWHHelp. mBooks.mBo okList; CR LF
107     for (Max Index = Bo okList.len gth, Index  = 0 ; Ind ex < MaxIn dex ; Inde x++) CR LF   97     for (Max Index = Bo okList.len gth, Index  = 0 ; Ind ex < MaxIn dex ; Inde x++) CR LF
108     { CR LF   98     { CR LF
109       // Ref erence sea rch info CR LF   99       // Ref erence sea rch info CR LF
110       // CR LF   100       // CR LF
111       HTML.f Append("<s cript lang uage=\"Jav aScript1.2 \" src=\""  + WWHFram e.WWHHelp. mHelpURLPr efix + Boo kList[Inde x].mDirect ory + "wwh data/js/se arch.js" +  VarParame ters + "\" ></script> \n"); CR LF   101       HTML.f Append("<s cript lang uage=\"Jav aScript1.2 \" src=\""  + WWHFram e.WWHHelp. mHelpURLPr efix + Boo kList[Inde x].mDirect ory + "wwh data/js/se arch.js" +  VarParame ters + "\" ></script> \n"); CR LF
112   CR LF   102   CR LF
113       // Loa d search i nfo for cu rrent book CR LF   103       // Loa d search i nfo for cu rrent book CR LF
114       // CR LF   104       // CR LF
115       HTML.f Append("<s cript lang uage=\"Jav aScript1.2 \" src=\""  + WWHFram e.WWHHelp. mHelpURLPr efix + "ww help/wwhim pl/js/scri pts/search 1s.js" + V arParamete rs + "\">< /script>\n "); CR LF   105       HTML.f Append("<s cript lang uage=\"Jav aScript1.2 \" src=\""  + WWHFram e.WWHHelp. mHelpURLPr efix + "ww help/wwhim pl/js/scri pts/search 1s.js" + V arParamete rs + "\">< /script>\n "); CR LF
116     } CR LF   106     } CR LF
117   CR LF   107   CR LF
118     return H TML.fGetBu ffer(); CR LF   108     return H TML.fGetBu ffer(); CR LF
119   } CR LF   109   } CR LF
120   CR LF   110   CR LF
121   function   WWHSearch_ InitLoadBo okSearchIn fo(ParamSe archFileCo unt, CR LF   111   function   WWHSearch_ InitLoadBo okSearchIn fo(ParamSe archFileCo unt, CR LF
122                                                  ParamMi nimumWordL ength, CR LF   112                                                  ParamMi nimumWordL ength, CR LF
123                                                  ParamSe archSkipWo rdsFunc) CR LF   113                                                  ParamSe archSkipWo rdsFunc) CR LF
124   { CR LF   114   { CR LF
125     // Load  book searc h info CR LF   115     // Load  book searc h info CR LF
126     // CR LF   116     // CR LF
127     this.mBo okSearchIn foList[thi s.mInitInd ex] = new  WWHBookSea rchInfo_Ob ject(Param SearchFile Count, Par amMinimumW ordLength) ; CR LF   117     this.mBo okSearchIn foList[thi s.mInitInd ex] = new  WWHBookSea rchInfo_Ob ject(Param SearchFile Count, Par amMinimumW ordLength) ; CR LF
128     ParamSea rchSkipWor dsFunc(thi s.mBookSea rchInfoLis t[this.mIn itIndex]); CR LF   118     ParamSea rchSkipWor dsFunc(thi s.mBookSea rchInfoLis t[this.mIn itIndex]); CR LF
129   CR LF   119   CR LF
130     // Creat e match ob jects for  each book CR LF   120     // Creat e match ob jects for  each book CR LF
131     // CR LF   121     // CR LF
132     this.mBo okMatchesL ist[this.m BookMatche sList.leng th] = new  WWHSearchB ookMatches _Object(); CR LF   122     this.mBo okMatchesL ist[this.m BookMatche sList.leng th] = new  WWHSearchB ookMatches _Object(); CR LF
133   CR LF   123   CR LF
134     // Incre ment init  book index CR LF   124     // Incre ment init  book index CR LF
135     // CR LF   125     // CR LF
136     this.mIn itIndex++; CR LF   126     this.mIn itIndex++; CR LF
137   CR LF   127   CR LF
138     // Mark  initialize d if done CR LF   128     // Mark  initialize d if done CR LF
139     // CR LF   129     // CR LF
140     if (this .mInitInde x == WWHFr ame.WWHHel p.mBooks.m BookList.l ength) CR LF   130     if (this .mInitInde x == WWHFr ame.WWHHel p.mBooks.m BookList.l ength) CR LF
141     { CR LF   131     { CR LF
142       this.m bPanelInit ialized =  true; CR LF   132       this.m bPanelInit ialized =  true; CR LF
143     } CR LF   133     } CR LF
144   } CR LF   134   } CR LF
145   CR LF   135   CR LF
146   function   WWHSearch_ Navigation HeadHTML() CR LF   136   function   WWHSearch_ Navigation HeadHTML() CR LF
147   { CR LF   137   { CR LF
148     return " "; CR LF   138     return " "; CR LF
149   } CR LF   139   } CR LF
150   CR LF   140   CR LF
151   function   WWHSearch_ Navigation BodyHTML() CR LF   141   function   WWHSearch_ Navigation BodyHTML() CR LF
152   { CR LF   142   { CR LF
153     return t his.fDispl aySearchFo rm(); CR LF   143     return t his.fDispl aySearchFo rm(); CR LF
154   } CR LF   144   } CR LF
155   CR LF   145   CR LF
156   function   WWHSearch_ HeadHTML() CR LF   146   function   WWHSearch_ HeadHTML() CR LF
157   { CR LF   147   { CR LF
158     var  HTM L = new WW HStringBuf fer_Object (); CR LF   148     var  HTM L = new WW HStringBuf fer_Object (); CR LF
159     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF   149     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF
160   CR LF   150   CR LF
161   CR LF   151   CR LF
162     // Gener ate style  section CR LF   152     // Gener ate style  section CR LF
163     // CR LF   153     // CR LF
164     HTML.fAp pend("<sty le type=\" text/css\" >\n"); CR LF   154     HTML.fAp pend("<sty le type=\" text/css\" >\n"); CR LF
165     HTML.fAp pend(" <!- -\n"); CR LF   155     HTML.fAp pend(" <!- -\n"); CR LF
166     HTML.fAp pend("  a: active\n") ; CR LF   156     HTML.fAp pend("  a: active\n") ; CR LF
167     HTML.fAp pend("  {\ n"); CR LF   157     HTML.fAp pend("  {\ n"); CR LF
168     HTML.fAp pend("     text-decor ation: non e;\n"); CR LF   158     HTML.fAp pend("     text-decor ation: non e;\n"); CR LF
169     HTML.fAp pend("     background -color: "  + Settings .mHighligh tColor + " ;\n"); CR LF   159     HTML.fAp pend("     background -color: "  + Settings .mHighligh tColor + " ;\n"); CR LF
170     HTML.fAp pend("  }\ n"); CR LF   160     HTML.fAp pend("  }\ n"); CR LF
171     HTML.fAp pend("  a: hover\n"); CR LF   161     HTML.fAp pend("  a: hover\n"); CR LF
172     HTML.fAp pend("  {\ n"); CR LF   162     HTML.fAp pend("  {\ n"); CR LF
173     HTML.fAp pend("     text-decor ation: und erline;\n" ); CR LF   163     HTML.fAp pend("     text-decor ation: und erline;\n" ); CR LF
174     HTML.fAp pend("     color: " +  Settings. mEnabledCo lor + ";\n "); CR LF   164     HTML.fAp pend("     color: " +  Settings. mEnabledCo lor + ";\n "); CR LF
175     HTML.fAp pend("  }\ n"); CR LF   165     HTML.fAp pend("  }\ n"); CR LF
176     HTML.fAp pend("  a\ n"); CR LF   166     HTML.fAp pend("  a\ n"); CR LF
177     HTML.fAp pend("  {\ n"); CR LF   167     HTML.fAp pend("  {\ n"); CR LF
178     HTML.fAp pend("     text-decor ation: non e;\n"); CR LF   168     HTML.fAp pend("     text-decor ation: non e;\n"); CR LF
179     HTML.fAp pend("     color: " +  Settings. mEnabledCo lor + ";\n "); CR LF   169     HTML.fAp pend("     color: " +  Settings. mEnabledCo lor + ";\n "); CR LF
180     HTML.fAp pend("  }\ n"); CR LF   170     HTML.fAp pend("  }\ n"); CR LF
181     HTML.fAp pend("  p\ n"); CR LF   171     HTML.fAp pend("  p\ n"); CR LF
182     HTML.fAp pend("  {\ n"); CR LF   172     HTML.fAp pend("  {\ n"); CR LF
183     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF   173     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF
184     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF   174     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF
185     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF   175     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF
186     HTML.fAp pend("  }\ n"); CR LF   176     HTML.fAp pend("  }\ n"); CR LF
187     HTML.fAp pend("  p. BookTitle\ n"); CR LF   177     HTML.fAp pend("  p. BookTitle\ n"); CR LF
188     HTML.fAp pend("  {\ n"); CR LF   178     HTML.fAp pend("  {\ n"); CR LF
189     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF   179     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF
190     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF   180     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF
191     HTML.fAp pend("     font-weigh t: bold;\n "); CR LF   181     HTML.fAp pend("     font-weigh t: bold;\n "); CR LF
192     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF   182     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF
193     HTML.fAp pend("  }\ n"); CR LF   183     HTML.fAp pend("  }\ n"); CR LF
194     HTML.fAp pend("  ol \n"); CR LF   184     HTML.fAp pend("  ol \n"); CR LF
195     HTML.fAp pend("  {\ n"); CR LF   185     HTML.fAp pend("  {\ n"); CR LF
196     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF   186     HTML.fAp pend("     margin-top : 1pt;\n") ; CR LF
197     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF   187     HTML.fAp pend("     margin-bot tom: 1pt;\ n"); CR LF
198     if (Sett ings.mbSho wRank) CR LF   188     if (Sett ings.mbSho wRank) CR LF
199     { CR LF   189     { CR LF
200       HTML.f Append("     " + Sett ings.mFont Style + "; \n"); CR LF   190       HTML.f Append("     " + Sett ings.mFont Style + "; \n"); CR LF
201     } CR LF   191     } CR LF
202     else CR LF   192     else CR LF
203     { CR LF   193     { CR LF
204       HTML.f Append("     list-sty le: none;\ n"); CR LF   194       HTML.f Append("     list-sty le: none;\ n"); CR LF
205     } CR LF   195     } CR LF
206     HTML.fAp pend("  }\ n"); CR LF   196     HTML.fAp pend("  }\ n"); CR LF
207     HTML.fAp pend("  li \n"); CR LF   197     HTML.fAp pend("  li \n"); CR LF
208     HTML.fAp pend("  {\ n"); CR LF   198     HTML.fAp pend("  {\ n"); CR LF
209     HTML.fAp pend("     margin-top : 2pt;\n") ; CR LF   199     HTML.fAp pend("     margin-top : 2pt;\n") ; CR LF
210     HTML.fAp pend("     margin-bot tom: 0pt;\ n"); CR LF   200     HTML.fAp pend("     margin-bot tom: 0pt;\ n"); CR LF
211     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF   201     HTML.fAp pend("     " + Settin gs.mFontSt yle + ";\n "); CR LF
212     HTML.fAp pend("  }\ n"); CR LF   202     HTML.fAp pend("  }\ n"); CR LF
213     HTML.fAp pend(" --> \n"); CR LF   203     HTML.fAp pend(" --> \n"); CR LF
214     HTML.fAp pend("</st yle>\n"); CR LF   204     HTML.fAp pend("</st yle>\n"); CR LF
215   CR LF   205   CR LF
216     return H TML.fGetBu ffer(); CR LF   206     return H TML.fGetBu ffer(); CR LF
217   } CR LF   207   } CR LF
218   CR LF   208   CR LF
219   function   WWHSearch_ StartHTMLS egments() CR LF   209   function   WWHSearch_ StartHTMLS egments() CR LF
220   { CR LF   210   { CR LF
221     var  HTM L = new WW HStringBuf fer_Object (); CR LF   211     var  HTM L = new WW HStringBuf fer_Object (); CR LF
222     var  Var Parameters ; CR LF   212     var  Var Parameters ; CR LF
223     var  Max BookIndex; CR LF   213     var  Max BookIndex; CR LF
224     var  Boo kIndex; CR LF   214     var  Boo kIndex; CR LF
225     var  Boo kList; CR LF   215     var  Boo kList; CR LF
226     var  Max Index; CR LF   216     var  Max Index; CR LF
227     var  Ind ex; CR LF   217     var  Ind ex; CR LF
228     var  Boo kDirectory ; CR LF   218     var  Boo kDirectory ; CR LF
229     var  bDi splayBookT itles; CR LF   219     var  bDi splayBookT itles; CR LF
230     var  Ent ry; CR LF   220     var  Ent ry; CR LF
231     var  Mul tiPhraseEn try; CR LF   221     var  Mul tiPhraseEn try; CR LF
232   CR LF   222   CR LF
233   CR LF   223   CR LF
234     if (this .mbPanelIn itialized) CR LF   224     if (this .mbPanelIn itialized) CR LF
235     { CR LF   225     { CR LF
236       // Wor karound Sa fari reloa d bug CR LF   226       // Wor karound Sa fari reloa d bug CR LF
237       // CR LF   227       // CR LF
238       VarPar ameters =  ""; CR LF   228       VarPar ameters =  ""; CR LF
239       if (WW HFrame.WWH Browser.mB rowser ==  5)  // Sho rthhand fo r Safari CR LF   229       if (WW HFrame.WWH Browser.mB rowser ==  5)  // Sho rthhand fo r Safari CR LF
240       { CR LF   230       { CR LF
241         VarP arameters  = "?" + (n ew Date()  * 1); CR LF   231         VarP arameters  = "?" + (n ew Date()  * 1); CR LF
242       } CR LF   232       } CR LF
243   CR LF   233   CR LF
244       // Per form searc h if requi red CR LF   234       // Per form searc h if requi red CR LF
245       // CR LF   235       // CR LF
246       if (th is.mSearch State == " words") CR LF   236       if (th is.mSearch State == " words") CR LF
247       { CR LF   237       { CR LF
248         // D isplay sea rching mes sage CR LF   238         // D isplay sea rching mes sage CR LF
249         // CR LF   239         // CR LF
250         HTML .fAppend(" <h2>" + WW HFrame.WWH JavaScript .mMessages .mSearchSe archingMes sage + "</ h2>\n"); CR LF   240         HTML .fAppend(" <h2>" + WW HFrame.WWH JavaScript .mMessages .mSearchSe archingMes sage + "</ h2>\n"); CR LF
251   CR LF   241   CR LF
252         // H andle sing le book se arch CR LF   242         // H andle sing le book se arch CR LF
253         // CR LF   243         // CR LF
254         Book List = WWH Frame.WWHH elp.mBooks .mBookList ; CR LF   244         Book List = WWH Frame.WWHH elp.mBooks .mBookList ; CR LF
255         if ( this.mSave dSearchSco pe > 0) CR LF   245         if ( this.mSave dSearchSco pe > 0) CR LF
256         { CR LF   246         { CR LF
257           Bo okIndex     = this.mS earchScope Info.mEntr ies[this.m SavedSearc hScope - 1 ].mStartBo okIndex; CR LF   247           Bo okIndex     = this.mS earchScope Info.mEntr ies[this.m SavedSearc hScope - 1 ].mStartBo okIndex; CR LF
258           Ma xBookIndex  = this.mS earchScope Info.mEntr ies[this.m SavedSearc hScope - 1 ].mEndBook Index + 1; CR LF   248           Ma xBookIndex  = this.mS earchScope Info.mEntr ies[this.m SavedSearc hScope - 1 ].mEndBook Index + 1; CR LF
259         } CR LF   249         } CR LF
260         else CR LF   250         else CR LF
261         { CR LF   251         { CR LF
262           Bo okIndex     = 0; CR LF   252           Bo okIndex     = 0; CR LF
263           Ma xBookIndex  = BookLis t.length; CR LF   253           Ma xBookIndex  = BookLis t.length; CR LF
264         } CR LF   254         } CR LF
265   CR LF   255   CR LF
266         // G enerate se arch actio ns CR LF   256         // G enerate se arch actio ns CR LF
267         // CR LF   257         // CR LF
268         this .mBookInde x = BookIn dex; CR LF   258         this .mBookInde x = BookIn dex; CR LF
269         for  ( ; BookIn dex < MaxB ookIndex ;  BookIndex ++) CR LF   259         for  ( ; BookIn dex < MaxB ookIndex ;  BookIndex ++) CR LF
270         { CR LF   260         { CR LF
271           Bo okDirector y = BookLi st[BookInd ex].mDirec tory; CR LF   261           Bo okDirector y = BookLi st[BookInd ex].mDirec tory; CR LF
272   CR LF   262   CR LF
273           fo r (MaxInde x = this.m BookSearch InfoList[B ookIndex]. mSearchFil eCount, In dex = 0 ;  Index < Ma xIndex ; I ndex++) CR LF   263           fo r (MaxInde x = this.m BookSearch InfoList[B ookIndex]. mSearchFil eCount, In dex = 0 ;  Index < Ma xIndex ; I ndex++) CR LF
274           { CR LF   264           { CR LF
275              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + Bo okDirector y + "wwhda ta/js/sear ch/search"  + Index +  ".js" + V arParamete rs + "\">< /script>\n "); CR LF   265              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + Bo okDirector y + "wwhda ta/js/sear ch/search"  + Index +  ".js" + V arParamete rs + "\">< /script>\n "); CR LF
276              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + "w whelp/wwhi mpl/js/scr ipts/searc h2s.js" +  VarParamet ers + "\"> </script>\ n"); CR LF   266              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + "w whelp/wwhi mpl/js/scr ipts/searc h2s.js" +  VarParamet ers + "\"> </script>\ n"); CR LF
277           } CR LF   267           } CR LF
278   CR LF   268   CR LF
279           HT ML.fAppend ("<script  type=\"tex t/javascri pt\" langu age=\"Java Script1.2\ " src=\""  + WWHFrame .WWHHelp.m HelpURLPre fix + "wwh elp/wwhimp l/js/scrip ts/search3 s.js" + Va rParameter s + "\"></ script>\n" ); CR LF   269           HT ML.fAppend ("<script  type=\"tex t/javascri pt\" langu age=\"Java Script1.2\ " src=\""  + WWHFrame .WWHHelp.m HelpURLPre fix + "wwh elp/wwhimp l/js/scrip ts/search3 s.js" + Va rParameter s + "\"></ script>\n" ); CR LF
280         } CR LF   270         } CR LF
281   CR LF   271   CR LF
282         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"  src=\"" +  WWHFrame.W WHHelp.mHe lpURLPrefi x + "wwhel p/wwhimpl/ js/scripts /search4s. js" + VarP arameters  + "\"></sc ript>\n"); CR LF   272         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"  src=\"" +  WWHFrame.W WHHelp.mHe lpURLPrefi x + "wwhel p/wwhimpl/ js/scripts /search4s. js" + VarP arameters  + "\"></sc ript>\n"); CR LF
283       } CR LF   273       } CR LF
284       else i f (this.mS earchState  == "pairs ") CR LF   274       else i f (this.mS earchState  == "pairs ") CR LF
285       { CR LF   275       { CR LF
286         // D isplay sea rching mes sage CR LF   276         // D isplay sea rching mes sage CR LF
287         // CR LF   277         // CR LF
288         HTML .fAppend(" <h2>" + WW HFrame.WWH JavaScript .mMessages .mSearchSe archingMes sage + "</ h2>\n"); CR LF   278         HTML .fAppend(" <h2>" + WW HFrame.WWH JavaScript .mMessages .mSearchSe archingMes sage + "</ h2>\n"); CR LF
289   CR LF   279   CR LF
290         Book List = WWH Frame.WWHH elp.mBooks .mBookList ; CR LF   280         Book List = WWH Frame.WWHH elp.mBooks .mBookList ; CR LF
291   CR LF   281   CR LF
292         // G enerate se arch actio ns CR LF   282         // G enerate se arch actio ns CR LF
293         // CR LF   283         // CR LF
294         for  (MaxIndex  = this.mCo mbinedResu lts.mEntri es.length,  Index = 0  ; Index <  MaxIndex  ; Index++) CR LF   284         for  (MaxIndex  = this.mCo mbinedResu lts.mEntri es.length,  Index = 0  ; Index <  MaxIndex  ; Index++) CR LF
295         { CR LF   285         { CR LF
296           En try = this .mCombined Results.mE ntries[Ind ex]; CR LF   286           En try = this .mCombined Results.mE ntries[Ind ex]; CR LF
297   CR LF   287   CR LF
298           Mu ltiPhraseE ntry = thi s.mMultiPh raseList[E ntry.mBook Index]; CR LF   288           Mu ltiPhraseE ntry = thi s.mMultiPh raseList[E ntry.mBook Index]; CR LF
299           if  (MultiPhr aseEntry.f PhraseCoun t() > 0) CR LF   289           if  (MultiPhr aseEntry.f PhraseCoun t() > 0) CR LF
300           { CR LF   290           { CR LF
301              BookDirect ory = Book List[Entry .mBookInde x].mDirect ory; CR LF   291              BookDirect ory = Book List[Entry .mBookInde x].mDirect ory; CR LF
302   CR LF   292   CR LF
303              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + Bo okDirector y + "wwhda ta/js/sear ch/pairs/p air" + Ent ry.mFileIn dex + ".js " + VarPar ameters +  "\"></scri pt>\n"); CR LF   293              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + Bo okDirector y + "wwhda ta/js/sear ch/pairs/p air" + Ent ry.mFileIn dex + ".js " + VarPar ameters +  "\"></scri pt>\n"); CR LF
304              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + "w whelp/wwhi mpl/js/scr ipts/searc h5s.js" +  VarParamet ers + "\"> </script>\ n"); CR LF   294              HTML.fAppe nd("<scrip t type=\"t ext/javasc ript\" lan guage=\"Ja vaScript1. 2\" src=\" " + WWHFra me.WWHHelp .mHelpURLP refix + "w whelp/wwhi mpl/js/scr ipts/searc h5s.js" +  VarParamet ers + "\"> </script>\ n"); CR LF
305           } CR LF   295           } CR LF
306   CR LF   296   CR LF
307           HT ML.fAppend ("<script  type=\"tex t/javascri pt\" langu age=\"Java Script1.2\ " src=\""  + WWHFrame .WWHHelp.m HelpURLPre fix + "wwh elp/wwhimp l/js/scrip ts/search6 s.js" + Va rParameter s + "\"></ script>\n" ); CR LF   297           HT ML.fAppend ("<script  type=\"tex t/javascri pt\" langu age=\"Java Script1.2\ " src=\""  + WWHFrame .WWHHelp.m HelpURLPre fix + "wwh elp/wwhimp l/js/scrip ts/search6 s.js" + Va rParameter s + "\"></ script>\n" ); CR LF
308         } CR LF   298         } CR LF
309   CR LF   299   CR LF
310         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"  src=\"" +  WWHFrame.W WHHelp.mHe lpURLPrefi x + "wwhel p/wwhimpl/ js/scripts /search7s. js" + VarP arameters  + "\"></sc ript>\n"); CR LF   300         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"  src=\"" +  WWHFrame.W WHHelp.mHe lpURLPrefi x + "wwhel p/wwhimpl/ js/scripts /search7s. js" + VarP arameters  + "\"></sc ript>\n"); CR LF
311       } CR LF   301       } CR LF
312       else CR LF   302       else CR LF
313       { CR LF   303       { CR LF
314         // D efine acce ssor funct ions to re duce file  size CR LF   304         // D efine acce ssor funct ions to re duce file  size CR LF
315         // CR LF   305         // CR LF
316         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"> \n"); CR LF   306         HTML .fAppend(" <script ty pe=\"text/ javascript \" languag e=\"JavaSc ript1.2\"> \n"); CR LF
317         HTML .fAppend("  <!--\n"); CR LF   307         HTML .fAppend("  <!--\n"); CR LF
318         HTML .fAppend("   function   fC(Param EntryID)\n "); CR LF   308         HTML .fAppend("   function   fC(Param EntryID)\n "); CR LF
319         HTML .fAppend("   {\n"); CR LF   309         HTML .fAppend("   {\n"); CR LF
320         HTML .fAppend("     WWHFra me.WWHSear ch.fShowEn try(ParamE ntryID);\n "); CR LF   310         HTML .fAppend("     WWHFra me.WWHSear ch.fShowEn try(ParamE ntryID);\n "); CR LF
321         HTML .fAppend("   }\n"); CR LF   311         HTML .fAppend("   }\n"); CR LF
322         HTML .fAppend(" \n"); CR LF   312         HTML .fAppend(" \n"); CR LF
323         HTML .fAppend("   function   fS(Param EntryID,\n "); CR LF   313         HTML .fAppend("   function   fS(Param EntryID,\n "); CR LF
324         HTML .fAppend("                 Param Event)\n") ; CR LF   314         HTML .fAppend("                 Param Event)\n") ; CR LF
325         HTML .fAppend("   {\n"); CR LF   315         HTML .fAppend("   {\n"); CR LF
326         HTML .fAppend("     WWHFra me.WWHJava Script.mPa nels.mPopu p.fShow(Pa ramEntryID , ParamEve nt);\n"); CR LF   316         HTML .fAppend("     WWHFra me.WWHJava Script.mPa nels.mPopu p.fShow(Pa ramEntryID , ParamEve nt);\n"); CR LF
327         HTML .fAppend("   }\n"); CR LF   317         HTML .fAppend("   }\n"); CR LF
328         HTML .fAppend(" \n"); CR LF   318         HTML .fAppend(" \n"); CR LF
329         HTML .fAppend("   function   fH()\n") ; CR LF   319         HTML .fAppend("   function   fH()\n") ; CR LF
330         HTML .fAppend("   {\n"); CR LF   320         HTML .fAppend("   {\n"); CR LF
331         HTML .fAppend("     WWHFra me.WWHJava Script.mPa nels.mPopu p.fHide(); \n"); CR LF   321         HTML .fAppend("     WWHFra me.WWHJava Script.mPa nels.mPopu p.fHide(); \n"); CR LF
332         HTML .fAppend("   }\n"); CR LF   322         HTML .fAppend("   }\n"); CR LF
333         HTML .fAppend("  // -->\n" ); CR LF   323         HTML .fAppend("  // -->\n" ); CR LF
334         HTML .fAppend(" </script>\ n"); CR LF   324         HTML .fAppend(" </script>\ n"); CR LF
335   CR LF   325   CR LF
336         // D isplay sea rch messag e and/or p repare res ults for d isplay CR LF   326         // D isplay sea rch messag e and/or p repare res ults for d isplay CR LF
337         // CR LF   327         // CR LF
338         if ( this.mSave dSearchWor ds.length  == 0) CR LF   328         if ( this.mSave dSearchWor ds.length  == 0) CR LF
339         { CR LF   329         { CR LF
340           HT ML.fAppend ("<h3>" +  WWHFrame.W WHJavaScri pt.mMessag es.mSearch DefaultMes sage + "</ h3>\n"); CR LF   330           HT ML.fAppend ("<h3>" +  WWHFrame.W WHJavaScri pt.mMessag es.mSearch DefaultMes sage + "</ h3>\n"); CR LF
341         } CR LF   331         } CR LF
342         else  if ((type of(this.mC ombinedRes ults.mEntr ies) != "u ndefined")  && CR LF   332         else  if ((type of(this.mC ombinedRes ults.mEntr ies) != "u ndefined")  && CR LF
343                   (this .mCombined Results.mE ntries.len gth > 0)) CR LF   333                   (this .mCombined Results.mE ntries.len gth > 0)) CR LF
344         { CR LF   334         { CR LF
345           //  Determine  if book n ame should  be displa yed about  results CR LF   335           //  Determine  if book n ame should  be displa yed about  results CR LF
346           // CR LF   336           // CR LF
347           if  ((WWHFram e.WWHHelp. mBooks.mBo okList.len gth == 1)  || CR LF   337           if  ((WWHFram e.WWHHelp. mBooks.mBo okList.len gth == 1)  || CR LF
348                ((this.m SavedSearc hScope > 0 ) && CR LF   338                ((this.m SavedSearc hScope > 0 ) && CR LF
349                 (this.m SearchScop eInfo.mEnt ries[this. mSavedSear chScope -  1].mStartB ookIndex = = this.mSe archScopeI nfo.mEntri es[this.mS avedSearch Scope - 1] .mEndBookI ndex))) CR LF   339                 (this.m SearchScop eInfo.mEnt ries[this. mSavedSear chScope -  1].mStartB ookIndex = = this.mSe archScopeI nfo.mEntri es[this.mS avedSearch Scope - 1] .mEndBookI ndex))) CR LF
350           { CR LF   340           { CR LF
351              // Single  book scope  selected,  do not di splay book  titles CR LF   341              // Single  book scope  selected,  do not di splay book  titles CR LF
352              // CR LF   342              // CR LF
353              bDisplayBo okTitles =  false; CR LF   343              bDisplayBo okTitles =  false; CR LF
354           } CR LF   344           } CR LF
355           el se CR LF   345           el se CR LF
356           { CR LF   346           { CR LF
357              // More th an one boo k in searc h scope, d isplay boo k titles CR LF   347              // More th an one boo k in searc h scope, d isplay boo k titles CR LF
358              // CR LF   348              // CR LF
359              bDisplayBo okTitles =  true; CR LF   349              bDisplayBo okTitles =  true; CR LF
360           } CR LF   350           } CR LF
361   CR LF   351   CR LF
362           th is.mCombin edResults. fDisplayRe set(bDispl ayBookTitl es); CR LF   352           th is.mCombin edResults. fDisplayRe set(bDispl ayBookTitl es); CR LF
363         } CR LF   353         } CR LF
364         else CR LF   354         else CR LF
365         { CR LF   355         { CR LF
366           HT ML.fAppend ("<h3>" +  WWHFrame.W WHJavaScri pt.mMessag es.mSearch NothingFou ndMessage  + "</h3>\n "); CR LF   356           HT ML.fAppend ("<h3>" +  WWHFrame.W WHJavaScri pt.mMessag es.mSearch NothingFou ndMessage  + "</h3>\n "); CR LF
367         } CR LF   357         } CR LF
368       } CR LF   358       } CR LF
369     } CR LF   359     } CR LF
370   CR LF   360   CR LF
371     return H TML.fGetBu ffer(); CR LF   361     return H TML.fGetBu ffer(); CR LF
372   } CR LF   362   } CR LF
373   CR LF   363   CR LF
374   function   WWHSearch_ AdvanceHTM LSegment() CR LF   364   function   WWHSearch_ AdvanceHTM LSegment() CR LF
375   { CR LF   365   { CR LF
376     var  bSe gmentCreat ed = false ; CR LF   366     var  bSe gmentCreat ed = false ; CR LF
377   CR LF   367   CR LF
378   CR LF   368   CR LF
379     if (this .mbPanelIn itialized) CR LF   369     if (this .mbPanelIn itialized) CR LF
380     { CR LF   370     { CR LF
381       if (th is.mSearch State == n ull) CR LF   371       if (th is.mSearch State == n ull) CR LF
382       { CR LF   372       { CR LF
383         bSeg mentCreate d = this.m CombinedRe sults.fDis playAdvanc e(); CR LF   373         bSeg mentCreate d = this.m CombinedRe sults.fDis playAdvanc e(); CR LF
384       } CR LF   374       } CR LF
385     } CR LF   375     } CR LF
386   CR LF   376   CR LF
387     return b SegmentCre ated; CR LF   377     return b SegmentCre ated; CR LF
388   } CR LF   378   } CR LF
389   CR LF   379   CR LF
390   function   WWHSearch_ GetHTMLSeg ment() CR LF   380   function   WWHSearch_ GetHTMLSeg ment() CR LF
391   { CR LF   381   { CR LF
392     return t his.mCombi nedResults .mHTMLSegm ent.fGetBu ffer(); CR LF   382     return t his.mCombi nedResults .mHTMLSegm ent.fGetBu ffer(); CR LF
393   } CR LF   383   } CR LF
394   CR LF   384   CR LF
395   function   WWHSearch_ EndHTMLSeg ments() CR LF   385   function   WWHSearch_ EndHTMLSeg ments() CR LF
396   { CR LF   386   { CR LF
397     return " "; CR LF   387     return " "; CR LF
398   } CR LF   388   } CR LF
399   CR LF   389   CR LF
400   function   WWHSearch_ PanelNavig ationLoade d() CR LF   390   function   WWHSearch_ PanelNavig ationLoade d() CR LF
401   { CR LF   391   { CR LF
402     // Set f ocus CR LF   392     // Set f ocus CR LF
403     // CR LF   393     // CR LF
404     WWHFrame .WWHHelp.f Focus("WWH PanelNavig ationFrame "); CR LF   394     WWHFrame .WWHHelp.f Focus("WWH PanelNavig ationFrame "); CR LF
405   } CR LF   395   } CR LF
406   CR LF   396   CR LF
407   function   WWHSearch_ PanelViewL oaded() CR LF   397   function   WWHSearch_ PanelViewL oaded() CR LF
408   { CR LF   398   { CR LF
409     // Displ ay search  results if  necessary CR LF   399     // Displ ay search  results if  necessary CR LF
410     // CR LF   400     // CR LF
411     if (this .mSearchSt ate == "wo rds") CR LF   401     if (this .mSearchSt ate == "wo rds") CR LF
412     { CR LF   402     { CR LF
413       this.m SearchStat e = "pairs "; CR LF   403       this.m SearchStat e = "pairs "; CR LF
414   CR LF   404   CR LF
415       WWHFra me.WWHJava Script.mPa nels.fRelo adView(); CR LF   405       WWHFra me.WWHJava Script.mPa nels.fRelo adView(); CR LF
416     } CR LF   406     } CR LF
417     else if  (this.mSea rchState = = "pairs") CR LF   407     else if  (this.mSea rchState = = "pairs") CR LF
418     { CR LF   408     { CR LF
419       this.m SearchStat e = null; CR LF   409       this.m SearchStat e = null; CR LF
420   CR LF   410   CR LF
421       WWHFra me.WWHJava Script.mPa nels.fRelo adView(); CR LF   411       WWHFra me.WWHJava Script.mPa nels.fRelo adView(); CR LF
422     } CR LF   412     } CR LF
423   } CR LF   413   } CR LF
424   CR LF   414   CR LF
425   function   WWHSearch_ HoverTextT ranslate(P aramEntryI D) CR LF   415   function   WWHSearch_ HoverTextT ranslate(P aramEntryI D) CR LF
426   { CR LF   416   { CR LF
427     var  HTM L     = "" ; CR LF   417     var  HTM L     = "" ; CR LF
428     var  Boo kList = WW HFrame.WWH Help.mBook s.mBookLis t; CR LF   418     var  Boo kList = WW HFrame.WWH Help.mBook s.mBookLis t; CR LF
429     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF   419     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF
430     var  Mes sages = WW HFrame.WWH JavaScript .mMessages ; CR LF   420     var  Mes sages = WW HFrame.WWH JavaScript .mMessages ; CR LF
431     var  Ent ry; CR LF   421     var  Ent ry; CR LF
432     var  Ran k = ""; CR LF   422     var  Ran k = ""; CR LF
433     var  Tit le; CR LF   423     var  Tit le; CR LF
434     var  Boo k = ""; CR LF   424     var  Boo k = ""; CR LF
435     var  For mat; CR LF   425     var  For mat; CR LF
436   CR LF   426   CR LF
437   CR LF   427   CR LF
438     // Retri eve specif ied entry CR LF   428     // Retri eve specif ied entry CR LF
439     // CR LF   429     // CR LF
440     Entry =  this.mComb inedResult s.mEntries [ParamEntr yID]; CR LF   430     Entry =  this.mComb inedResult s.mEntries [ParamEntr yID]; CR LF
441   CR LF   431   CR LF
442     // Get R ank CR LF   432     // Get R ank CR LF
443     // CR LF   433     // CR LF
444     if (Sett ings.mbSho wRank) CR LF   434     if (Sett ings.mbSho wRank) CR LF
445     { CR LF   435     { CR LF
446       Rank =  Math.floo r((Entry.m Score / th is.mCombin edResults. mMaxScore)  * 100) +  "%"; CR LF   436       Rank =  Math.floo r((Entry.m Score / th is.mCombin edResults. mMaxScore)  * 100) +  "%"; CR LF
447     } CR LF   437     } CR LF
448   CR LF   438   CR LF
449     // Get T itle CR LF   439     // Get T itle CR LF
450     // CR LF   440     // CR LF
451     Title =  Entry.mTit le; CR LF   441     Title =  Entry.mTit le; CR LF
452   CR LF   442   CR LF
453     // Get B ook CR LF   443     // Get B ook CR LF
454     // CR LF   444     // CR LF
455     if ((Boo kList.leng th > 1) &&                   //  More than  one book e xists CR LF   445     if ((Boo kList.leng th > 1) &&                   //  More than  one book e xists CR LF
456         (thi s.mCombine dResults.m SortedBy = = 1))  //  By Score CR LF   446         (thi s.mCombine dResults.m SortedBy = = 1))  //  By Score CR LF
457     { CR LF   447     { CR LF
458       Book =  BookList[ Entry.mBoo kIndex].mT itle; CR LF   448       Book =  BookList[ Entry.mBoo kIndex].mT itle; CR LF
459     } CR LF   449     } CR LF
460   CR LF   450   CR LF
461     // Forma t for disp lay CR LF   451     // Forma t for disp lay CR LF
462     // CR LF   452     // CR LF
463     if ((Ran k.length = = 0) && CR LF   453     if ((Ran k.length = = 0) && CR LF
464         (Boo k.length = = 0)) CR LF   454         (Boo k.length = = 0)) CR LF
465     { CR LF   455     { CR LF
466       // Sim ple format , just the  title CR LF   456       // Sim ple format , just the  title CR LF
467       // CR LF   457       // CR LF
468       HTML =  Title; CR LF   458       HTML =  Title; CR LF
469     } CR LF   459     } CR LF
470     else CR LF   460     else CR LF
471     { CR LF   461     { CR LF
472       Format  = " align =\"left\"  valign=\"t op\"><span  style=\""  + WWHFram e.WWHJavaS cript.mSet tings.mHov erText.mFo ntStyle +  "\">"; CR LF   462       Format  = " align =\"left\"  valign=\"t op\"><span  style=\""  + WWHFram e.WWHJavaS cript.mSet tings.mHov erText.mFo ntStyle +  "\">"; CR LF
473   CR LF   463   CR LF
474       // Com plex forma t, require s a table CR LF   464       // Com plex forma t, require s a table CR LF
475       // CR LF   465       // CR LF
476       HTML + = "<table  width=\"10 0%\" borde r=\"0\" ce llpadding= \"4\" cell spacing=\" 0\">"; CR LF   466       HTML + = "<table  width=\"10 0%\" borde r=\"0\" ce llpadding= \"4\" cell spacing=\" 0\">"; CR LF
477       if (Ra nk.length  > 0) CR LF   467       if (Ra nk.length  > 0) CR LF
478       { CR LF   468       { CR LF
479         HTML  += "<tr>" ; CR LF   469         HTML  += "<tr>" ; CR LF
480          HTML += "< th
" + Format  + Message s.mSearchR ankLabel +  "</span>< /th>"; CR LF
  470          HTML += "< th  style=\"w hite-space : nowrap;\ " " + Format  + Message s.mSearchR ankLabel +  "</span>< /th>"; CR LF
481         HTML  += "<td"  + Format +  Rank + "< /span></td >"; CR LF   471         HTML  += "<td"  + Format +  Rank + "< /span></td >"; CR LF
482         HTML  += "</tr> "; CR LF   472         HTML  += "</tr> "; CR LF
483       } CR LF   473       } CR LF
484       HTML + = "<tr>"; CR LF   474       HTML + = "<tr>"; CR LF
485        HTML += "< th
" + Format  + Message s.mSearchT itleLabel  + "</span> </th>"; CR LF
  475        HTML += "< th  style=\"w hite-space : nowrap;\ " " + Format  + Message s.mSearchT itleLabel  + "</span> </th>"; CR LF
486       HTML + = "<td" +  Format + T itle + "</ span></td> "; CR LF   476       HTML + = "<td" +  Format + T itle + "</ span></td> "; CR LF
487       HTML + = "</tr>"; CR LF   477       HTML + = "</tr>"; CR LF
488       if (Bo ok.length  > 0) CR LF   478       if (Bo ok.length  > 0) CR LF
489       { CR LF   479       { CR LF
490         HTML  += "<tr>" ; CR LF   480         HTML  += "<tr>" ; CR LF
491          HTML += "< th
" + Format  + Message s.mSearchB ookLabel +  "</span>< /th>"; CR LF
  481          HTML += "< th  style=\"w hite-space : nowrap;\ " " + Format  + Message s.mSearchB ookLabel +  "</span>< /th>"; CR LF
492         HTML  += "<td"  + Format +  Book + "< /span></td >"; CR LF   482         HTML  += "<td"  + Format +  Book + "< /span></td >"; CR LF
493         HTML  += "</tr> "; CR LF   483         HTML  += "</tr> "; CR LF
494       } CR LF   484       } CR LF
495       HTML + = "</table >"; CR LF   485       HTML + = "</table >"; CR LF
496   CR LF   486   CR LF
497       // IE  5.0 on the  Macintosh  drops the  last tabl e for some  reason CR LF   487       // IE  5.0 on the  Macintosh  drops the  last tabl e for some  reason CR LF
498       // CR LF   488       // CR LF
499       if (WW HFrame.WWH Browser.mb MacIE50) CR LF   489       if (WW HFrame.WWH Browser.mb MacIE50) CR LF
500       { CR LF   490       { CR LF
501         HTML  += "<tabl e><tr><td> </td></tr> </table>"; CR LF   491         HTML  += "<tabl e><tr><td> </td></tr> </table>"; CR LF
502       } CR LF   492       } CR LF
503     } CR LF   493     } CR LF
504   CR LF   494   CR LF
505     return H TML; CR LF   495     return H TML; CR LF
506   } CR LF   496   } CR LF
507   CR LF   497   CR LF
508   function   WWHSearch_ HoverTextF ormat(Para mWidth, CR LF   498   function   WWHSearch_ HoverTextF ormat(Para mWidth, CR LF
509                                          Para mTextID, CR LF   499                                          Para mTextID, CR LF
510                                          Para mText) CR LF   500                                          Para mText) CR LF
511   { CR LF   501   { CR LF
512     var  For mattedText    = ""; CR LF   502     var  For mattedText    = ""; CR LF
513     var  For egroundCol or = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m Foreground Color; CR LF   503     var  For egroundCol or = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m Foreground Color; CR LF
514     var  Bac kgroundCol or = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m Background Color; CR LF   504     var  Bac kgroundCol or = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m Background Color; CR LF
515     var  Bor derColor      = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m BorderColo r; CR LF   505     var  Bor derColor      = WWHFr ame.WWHJav aScript.mS ettings.mH overText.m BorderColo r; CR LF
516     var  Ima geDir         = WWHFr ame.WWHHel p.mHelpURL Prefix + " wwhelp/wwh impl/commo n/images"; CR LF   506     var  Ima geDir         = WWHFr ame.WWHHel p.mHelpURL Prefix + " wwhelp/wwh impl/commo n/images"; CR LF
517     var  Req Spacer1w2h    = "<img  src=\"" +  ImageDir  + "/spc1w2 h.gif\" wi dth=1 heig ht=2 alt=\ "\">"; CR LF   507     var  Req Spacer1w2h    = "<img  src=\"" +  ImageDir  + "/spc1w2 h.gif\" wi dth=1 heig ht=2 alt=\ "\">"; CR LF
518     var  Req Spacer2w1h    = "<img  src=\"" +  ImageDir  + "/spc2w1 h.gif\" wi dth=2 heig ht=1 alt=\ "\">"; CR LF   508     var  Req Spacer2w1h    = "<img  src=\"" +  ImageDir  + "/spc2w1 h.gif\" wi dth=2 heig ht=1 alt=\ "\">"; CR LF
519     var  Req Spacer1w7h    = "<img  src=\"" +  ImageDir  + "/spc1w7 h.gif\" wi dth=1 heig ht=7 alt=\ "\">"; CR LF   509     var  Req Spacer1w7h    = "<img  src=\"" +  ImageDir  + "/spc1w7 h.gif\" wi dth=1 heig ht=7 alt=\ "\">"; CR LF
520     var  Req Spacer5w1h    = "<img  src=\"" +  ImageDir  + "/spc5w1 h.gif\" wi dth=5 heig ht=1 alt=\ "\">"; CR LF   510     var  Req Spacer5w1h    = "<img  src=\"" +  ImageDir  + "/spc5w1 h.gif\" wi dth=5 heig ht=1 alt=\ "\">"; CR LF
521     var  Spa cer1w2h       = ReqSp acer1w2h; CR LF   511     var  Spa cer1w2h       = ReqSp acer1w2h; CR LF
522     var  Spa cer2w1h       = ReqSp acer2w1h; CR LF   512     var  Spa cer2w1h       = ReqSp acer2w1h; CR LF
523     var  Spa cer1w7h       = ReqSp acer1w7h; CR LF   513     var  Spa cer1w7h       = ReqSp acer1w7h; CR LF
524     var  Spa cer5w1h       = ReqSp acer5w1h; CR LF   514     var  Spa cer5w1h       = ReqSp acer5w1h; CR LF
525     var  Sty leAtttribu te; CR LF   515     var  Sty leAtttribu te; CR LF
526   CR LF   516   CR LF
527   CR LF   517   CR LF
528     // Set s tyle attri bute to in sure small  image hei ght CR LF   518     // Set s tyle attri bute to in sure small  image hei ght CR LF
529     // CR LF   519     // CR LF
530     StyleAtt ribute = "  style=\"f ont-size:  1px; line- height: 1p x;\""; CR LF   520     StyleAtt ribute = "  style=\"f ont-size:  1px; line- height: 1p x;\""; CR LF
531   CR LF   521   CR LF
532     Formatte dText += " <table wid th=\"" + P aramWidth  + "\" bord er=0 cells pacing=0 c ellpadding =0 bgcolor =\"" + Bac kgroundCol or + "\">" ; CR LF   522     Formatte dText += " <table wid th=\"" + P aramWidth  + "\" bord er=0 cells pacing=0 c ellpadding =0 bgcolor =\"" + Bac kgroundCol or + "\">" ; CR LF
533     Formatte dText += "  <tr>"; CR LF   523     Formatte dText += "  <tr>"; CR LF
534     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=2 col span=5 bgc olor=\"" +  BorderCol or + "\">"  + Spacer1 w2h + "</t d>"; CR LF   524     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=2 col span=5 bgc olor=\"" +  BorderCol or + "\">"  + Spacer1 w2h + "</t d>"; CR LF
535     Formatte dText += "  </tr>"; CR LF   525     Formatte dText += "  </tr>"; CR LF
536   CR LF   526   CR LF
537     Formatte dText += "  <tr>"; CR LF   527     Formatte dText += "  <tr>"; CR LF
538     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF   528     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF
539     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 col span=3>" +  Spacer1w7 h + "</td> "; CR LF   529     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 col span=3>" +  Spacer1w7 h + "</td> "; CR LF
540     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF   530     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF
541     Formatte dText += "  </tr>"; CR LF   531     Formatte dText += "  </tr>"; CR LF
542   CR LF   532   CR LF
543     Formatte dText += "  <tr>"; CR LF   533     Formatte dText += "  <tr>"; CR LF
544     Formatte dText += "   <td bgco lor=\"" +  BorderColo r + "\">"  + ReqSpace r2w1h + "< /td>"; CR LF   534     Formatte dText += "   <td bgco lor=\"" +  BorderColo r + "\">"  + ReqSpace r2w1h + "< /td>"; CR LF
545     Formatte dText += "   <td>" +  ReqSpacer5 w1h + "</t d>"; CR LF   535     Formatte dText += "   <td>" +  ReqSpacer5 w1h + "</t d>"; CR LF
546     Formatte dText += "   <td widt h=\"100%\"  id=\"" +  ParamTextI D + "\" st yle=\"colo r: " + For egroundCol or + " ; "  + WWHFram e.WWHJavaS cript.mSet tings.mHov erText.mFo ntStyle +  "\">" + Pa ramText +  "</td>"; CR LF   536     Formatte dText += "   <td widt h=\"100%\"  id=\"" +  ParamTextI D + "\" st yle=\"colo r: " + For egroundCol or + " ; "  + WWHFram e.WWHJavaS cript.mSet tings.mHov erText.mFo ntStyle +  "\">" + Pa ramText +  "</td>"; CR LF
547     Formatte dText += "   <td>" +  ReqSpacer5 w1h + "</t d>"; CR LF   537     Formatte dText += "   <td>" +  ReqSpacer5 w1h + "</t d>"; CR LF
548     Formatte dText += "   <td bgco lor=\"" +  BorderColo r + "\">"  + ReqSpace r2w1h + "< /td>"; CR LF   538     Formatte dText += "   <td bgco lor=\"" +  BorderColo r + "\">"  + ReqSpace r2w1h + "< /td>"; CR LF
549     Formatte dText += "  </tr>"; CR LF   539     Formatte dText += "  </tr>"; CR LF
550   CR LF   540   CR LF
551     Formatte dText += "  <tr>"; CR LF   541     Formatte dText += "  <tr>"; CR LF
552     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF   542     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF
553     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 col span=3>" +  Spacer1w7 h + "</td> "; CR LF   543     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 col span=3>" +  Spacer1w7 h + "</td> "; CR LF
554     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF   544     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=7 bgc olor=\"" +  BorderCol or + "\">"  + Spacer2 w1h + "</t d>"; CR LF
555     Formatte dText += "  </tr>"; CR LF   545     Formatte dText += "  </tr>"; CR LF
556   CR LF   546   CR LF
557     Formatte dText += "  <tr>"; CR LF   547     Formatte dText += "  <tr>"; CR LF
558     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=2 col span=5 bgc olor=\"" +  BorderCol or + "\">"  + Spacer1 w2h + "</t d>"; CR LF   548     Formatte dText += "   <td" + S tyleAttrib ute + " he ight=2 col span=5 bgc olor=\"" +  BorderCol or + "\">"  + Spacer1 w2h + "</t d>"; CR LF
559     Formatte dText += "  </tr>"; CR LF   549     Formatte dText += "  </tr>"; CR LF
560     Formatte dText += " </table>"; CR LF   550     Formatte dText += " </table>"; CR LF
561   CR LF   551   CR LF
562     return F ormattedTe xt; CR LF   552     return F ormattedTe xt; CR LF
563   } CR LF   553   } CR LF
564   CR LF   554   CR LF
565   function   WWHSearch_ DisplaySea rchForm() CR LF   555   function   WWHSearch_ DisplaySea rchForm() CR LF
566   { CR LF   556   { CR LF
567     var  HTM L = ""; CR LF   557     var  HTM L = ""; CR LF
568     var  Boo kList = WW HFrame.WWH Help.mBook s.mBookLis t; CR LF   558     var  Boo kList = WW HFrame.WWH Help.mBook s.mBookLis t; CR LF
569     var  Sel ectedIndex ; CR LF   559     var  Sel ectedIndex ; CR LF
570     var  Max Index; CR LF   560     var  Max Index; CR LF
571     var  Ind ex; CR LF   561     var  Ind ex; CR LF
572     var  Sea rchScopeEn try; CR LF   562     var  Sea rchScopeEn try; CR LF
573     var  Max Level; CR LF   563     var  Max Level; CR LF
574     var  Lev el; CR LF   564     var  Lev el; CR LF
575   CR LF   565   CR LF
576   CR LF   566   CR LF
577     HTML +=  "<form nam e=\"WWHSea rchForm\"  onsubmit=\ "WWHFrame. WWHSearch. fSubmit(); \">\n"; CR LF   567     HTML +=  "<form nam e=\"WWHSea rchForm\"  onsubmit=\ "WWHFrame. WWHSearch. fSubmit(); \">\n"; CR LF
578     HTML +=  "<nobr>\n" ; CR LF   568     HTML +=  "<nobr>\n" ; CR LF
579     HTML +=  "<input ty pe=\"text\ " name=\"W WHSearchWo rdsText\"  size=\"20\ " value=\" " + WWHStr ingUtiliti es_EscapeH TML(this.m SavedSearc hWords) +  "\" onkeyd own=\"WWHF rame.WWHHe lp.fIgnore NextKeyPre ss((docume nt.all||do cument.get ElementByI d||documen t.layers)? event:null );\">\n"; CR LF   569     HTML +=  "<input ty pe=\"text\ " name=\"W WHSearchWo rdsText\"  size=\"20\ " value=\" " + WWHStr ingUtiliti es_EscapeH TML(this.m SavedSearc hWords) +  "\" onkeyd own=\"WWHF rame.WWHHe lp.fIgnore NextKeyPre ss((docume nt.all||do cument.get ElementByI d||documen t.layers)? event:null );\">\n"; CR LF
580     HTML +=  "<input ty pe=\"submi t\" value= \"" + WWHF rame.WWHJa vaScript.m Messages.m SearchButt onLabel +  "\">\n"; CR LF   570     HTML +=  "<input ty pe=\"submi t\" value= \"" + WWHF rame.WWHJa vaScript.m Messages.m SearchButt onLabel +  "\">\n"; CR LF
581     HTML +=  "</nobr>\n "; CR LF   571     HTML +=  "</nobr>\n "; CR LF
582   CR LF   572   CR LF
583     if (Book List.lengt h > 1) CR LF   573     if (Book List.lengt h > 1) CR LF
584     { CR LF   574     { CR LF
585       Select edIndex =  this.mSave dSearchSco pe - 1; CR LF   575       Select edIndex =  this.mSave dSearchSco pe - 1; CR LF
586   CR LF   576   CR LF
587       HTML + = "<br>\n" ; CR LF   577       HTML + = "<br>\n" ; CR LF
588       HTML + = "<select  name=\"WW HSearchSco pe\">\n"; CR LF   578       HTML + = "<select  name=\"WW HSearchSco pe\">\n"; CR LF
589       HTML + = "<option >" + WWHFr ame.WWHJav aScript.mM essages.mS earchScope AllLabel +  "</option >\n"; CR LF   579       HTML + = "<option >" + WWHFr ame.WWHJav aScript.mM essages.mS earchScope AllLabel +  "</option >\n"; CR LF
590       for (M axIndex =  this.mSear chScopeInf o.mEntries .length, I ndex = 0 ;  Index < M axIndex ;  Index++) CR LF   580       for (M axIndex =  this.mSear chScopeInf o.mEntries .length, I ndex = 0 ;  Index < M axIndex ;  Index++) CR LF
591       { CR LF   581       { CR LF
592         // A ccess curr ent search  scope ent ry CR LF   582         // A ccess curr ent search  scope ent ry CR LF
593         // CR LF   583         // CR LF
594         Sear chScopeEnt ry = this. mSearchSco peInfo.mEn tries[Inde x]; CR LF   584         Sear chScopeEnt ry = this. mSearchSco peInfo.mEn tries[Inde x]; CR LF
595   CR LF   585   CR LF
596         // R estore sel ection CR LF   586         // R estore sel ection CR LF
597         // CR LF   587         // CR LF
598         if ( Index == S electedInd ex) CR LF   588         if ( Index == S electedInd ex) CR LF
599         { CR LF   589         { CR LF
600           HT ML += "<op tion selec ted>"; CR LF   590           HT ML += "<op tion selec ted>"; CR LF
601         } CR LF   591         } CR LF
602         else CR LF   592         else CR LF
603         { CR LF   593         { CR LF
604           HT ML += "<op tion>"; CR LF   594           HT ML += "<op tion>"; CR LF
605         } CR LF   595         } CR LF
606   CR LF   596   CR LF
607         // I ndent to s how differ ent levels CR LF   597         // I ndent to s how differ ent levels CR LF
608         // CR LF   598         // CR LF
609         for  (MaxLevel  = SearchSc opeEntry.m Level, Lev el = 0 ; L evel < Max Level ; Le vel++) CR LF   599         for  (MaxLevel  = SearchSc opeEntry.m Level, Lev el = 0 ; L evel < Max Level ; Le vel++) CR LF
610         { CR LF   600         { CR LF
611           HT ML += "- " ; CR LF   601           HT ML += "- " ; CR LF
612         } CR LF   602         } CR LF
613   CR LF   603   CR LF
614         // C lose out e ntry CR LF   604         // C lose out e ntry CR LF
615         // CR LF   605         // CR LF
616         HTML  += Search ScopeEntry .mTitle +  "</option> \n"; CR LF   606         HTML  += Search ScopeEntry .mTitle +  "</option> \n"; CR LF
617       } CR LF   607       } CR LF
618       HTML + = "</selec t>\n"; CR LF   608       HTML + = "</selec t>\n"; CR LF
619     } CR LF   609     } CR LF
620   CR LF   610   CR LF
621     HTML +=  "</form>\n "; CR LF   611     HTML +=  "</form>\n "; CR LF
622   CR LF   612   CR LF
623     return H TML; CR LF   613     return H TML; CR LF
624   } CR LF   614   } CR LF
625   CR LF   615   CR LF
626   function   WWHSearch_ Submit() CR LF   616   function   WWHSearch_ Submit() CR LF
627   { CR LF   617   { CR LF
628     var  Var PanelNavig ationFrame ; CR LF   618     var  Var PanelNavig ationFrame ; CR LF
629     var  Sea rchForm; CR LF   619     var  Sea rchForm; CR LF
630     var  New SearchWord s; CR LF   620     var  New SearchWord s; CR LF
631     var  New SearchScop e; CR LF   621     var  New SearchScop e; CR LF
632     var  Max Index; CR LF   622     var  Max Index; CR LF
633     var  Ind ex; CR LF   623     var  Ind ex; CR LF
634   CR LF   624   CR LF
635   CR LF   625   CR LF
636     if ((WWH Frame.WWHH andler.fIs Ready()) & & CR LF   626     if ((WWH Frame.WWHH andler.fIs Ready()) & & CR LF
637         (thi s.mSearchS tate == nu ll)) CR LF   627         (thi s.mSearchS tate == nu ll)) CR LF
638     { CR LF   628     { CR LF
639       VarPan elNavigati onFrame =  eval(WWHFr ame.WWHHel p.fGetFram eReference ("WWHPanel Navigation Frame")); CR LF   629       VarPan elNavigati onFrame =  eval(WWHFr ame.WWHHel p.fGetFram eReference ("WWHPanel Navigation Frame")); CR LF
640       Search Form = Var PanelNavig ationFrame .document. forms["WWH SearchForm "]; CR LF   630       Search Form = Var PanelNavig ationFrame .document. forms["WWH SearchForm "]; CR LF
641   CR LF   631   CR LF
642       // Upd ate search  words CR LF   632       // Upd ate search  words CR LF
643       // CR LF   633       // CR LF
644       NewSea rchWords =  SearchFor m.elements ["WWHSearc hWordsText "].value; CR LF   634       NewSea rchWords =  SearchFor m.elements ["WWHSearc hWordsText "].value; CR LF
645       if (Ne wSearchWor ds != this .mSavedSea rchWords) CR LF   635       if (Ne wSearchWor ds != this .mSavedSea rchWords) CR LF
646       { CR LF   636       { CR LF
647         this .mSavedSea rchWords =  NewSearch Words; CR LF   637         this .mSavedSea rchWords =  NewSearch Words; CR LF
648   CR LF   638   CR LF
649         this .mSearchSt ate = "wor ds"; CR LF   639         this .mSearchSt ate = "wor ds"; CR LF
650       } CR LF   640       } CR LF
651   CR LF   641   CR LF
652       // Upd ate search  scope CR LF   642       // Upd ate search  scope CR LF
653       // CR LF   643       // CR LF
654       if (WW HFrame.WWH Help.mBook s.mBookLis t.length >  1) CR LF   644       if (WW HFrame.WWH Help.mBook s.mBookLis t.length >  1) CR LF
655       { CR LF   645       { CR LF
656         NewS earchScope  = SearchF orm.elemen ts["WWHSea rchScope"] .selectedI ndex; CR LF   646         NewS earchScope  = SearchF orm.elemen ts["WWHSea rchScope"] .selectedI ndex; CR LF
657         if ( NewSearchS cope != th is.mSavedS earchScope ) CR LF   647         if ( NewSearchS cope != th is.mSavedS earchScope ) CR LF
658         { CR LF   648         { CR LF
659           th is.mSavedS earchScope  = NewSear chScope; CR LF   649           th is.mSavedS earchScope  = NewSear chScope; CR LF
660   CR LF   650   CR LF
661           th is.mSearch State = "w ords"; CR LF   651           th is.mSearch State = "w ords"; CR LF
662         } CR LF   652         } CR LF
663       } CR LF   653       } CR LF
664   CR LF   654   CR LF
665       // Per form searc h if somet hing chang ed CR LF   655       // Per form searc h if somet hing chang ed CR LF
666       // CR LF   656       // CR LF
667       if (th is.mSearch State == " words") CR LF   657       if (th is.mSearch State == " words") CR LF
668       { CR LF   658       { CR LF
669         if ( this.mSave dSearchWor ds.length  > 0) CR LF   659         if ( this.mSave dSearchWor ds.length  > 0) CR LF
670         { CR LF   660         { CR LF
671           //  Clear pre vious resu lts CR LF   661           //  Clear pre vious resu lts CR LF
672           // CR LF   662           // CR LF
673           fo r (MaxInde x = this.m BookMatche sList.leng th, Index  = 0 ; Inde x < MaxInd ex ; Index ++) CR LF   663           fo r (MaxInde x = this.m BookMatche sList.leng th, Index  = 0 ; Inde x < MaxInd ex ; Index ++) CR LF
674           { CR LF   664           { CR LF
675              this.mBook MatchesLis t[Index].f Clear(); CR LF   665              this.mBook MatchesLis t[Index].f Clear(); CR LF
676           } CR LF   666           } CR LF
677           th is.mCombin edResults. fClear(); CR LF   667           th is.mCombin edResults. fClear(); CR LF
678   CR LF   668   CR LF
679           //  Perform s earch CR LF   669           //  Perform s earch CR LF
680           // CR LF   670           // CR LF
681           th is.fSetSea rchWords(t his.mSaved SearchWord s); CR LF   671           th is.fSetSea rchWords(t his.mSaved SearchWord s); CR LF
682           WW HFrame.WWH JavaScript .mPanels.f ClearScrol lPosition( ); CR LF   672           WW HFrame.WWH JavaScript .mPanels.f ClearScrol lPosition( ); CR LF
683   CR LF   673   CR LF
684           //  Submit wi ll cause n avigation  area to re load which  will trig ger the vi ew pane CR LF   674           //  Submit wi ll cause n avigation  area to re load which  will trig ger the vi ew pane CR LF
685           //  to reload  and perfo rm the sea rch. CR LF   675           //  to reload  and perfo rm the sea rch. CR LF
686           // CR LF   676           // CR LF
687         } CR LF   677         } CR LF
688       } CR LF   678       } CR LF
689     } CR LF   679     } CR LF
690   CR LF   680   CR LF
691     return ( this.mSear chState ==  "words"); CR LF   681     return ( this.mSear chState ==  "words"); CR LF
692   } CR LF   682   } CR LF
693   CR LF   683   CR LF
694   function   WWHSearch_ ApplyWordB reaks(Para mSearchWor dsString) CR LF   684   function   WWHSearch_ ApplyWordB reaks(Para mSearchWor dsString) CR LF
695   { CR LF   685   { CR LF
696     var  Var Result = " "; CR LF   686     var  Var Result = " "; CR LF
697     var  Var MaxIndex; CR LF   687     var  Var MaxIndex; CR LF
698     var  Var Index; CR LF   688     var  Var Index; CR LF
699      var  Var Characte r Cod e
; CR LF
  689      var  Var B r
e ak ; CR LF
700     var  Var SingleChar acterWord; CR LF    
701   CR LF   690   CR LF
702     // Apply  Unicode r ules for w ord breaki ng CR LF   691     // Apply  Unicode r ules for w ord breaki ng CR LF
703     // These  rules tak en from ht tp://www.u nicode.org /unicode/r eports/tr2 9/ CR LF   692     // These  rules tak en from ht tp://www.u nicode.org /unicode/r eports/tr2 9/ CR LF
704     // CR LF   693     // CR LF
705     for (Var MaxIndex =  ParamSear chWordsStr ing.length , VarIndex  = 0; VarI ndex < Var MaxIndex ;  VarIndex+ +) CR LF   694     for (Var MaxIndex =  ParamSear chWordsStr ing.length , VarIndex  = 0; VarI ndex < Var MaxIndex ;  VarIndex+ +) CR LF
706     { CR LF   695     { CR LF
707       VarCha racterCode  = ParamSe archWordsS tring.char CodeAt(Var Index); CR LF   696       //  Break? CR LF
708   CR LF    
709       // If  non-extend ed latin o r katakana , treat as  a single  character  word. CR LF    
710       // CR LF    
711       if ((V arCharacte rCode > 0x 00FF) &&   CR LF    
712           (V arCharacte rCode < 0x 30A0) || CR LF    
713           (V arCharacte rCode > 0x 30FF)) CR LF    
714       { CR LF    
715         VarS ingleChara cterWord =  true; CR LF    
716     CR LF    
717         // H andle exce ptions CR LF    
718         //
CR LF
   
719         if ( this.mNonB reakingCha racters[Va rCharacter Code] == t rue) CR LF    
720         { CR LF    
721           Va rSingleCha racterWord  = false; CR LF    
722         } CR LF    
723       } CR LF    
724       else CR LF    
725       { CR LF    
726         VarS ingleChara cterWord =  false; CR LF    
727       } CR LF    
728   CR LF    
729       // Ins ert whites pace break s CR LF    
730       // CR LF   697       // CR LF
731        if (Var SingleCha r act e rWord ) CR LF   698       VarBre ak = WWHUn icode_Chec kBreakAtIn dex(ParamS earchWords String, Va rIndex); CR LF
    699        if (Var B r
e ak ) CR LF
732       { CR LF   700       { CR LF
733         VarR esult += "  " + Param SearchWord sString.ch arAt(VarIn dex) + " " ; CR LF   701         VarR esult += "  " + Param SearchWord sString.ch arAt(VarIn dex) + " " ; CR LF
734       } CR LF   702       } CR LF
735       else CR LF   703       else CR LF
736       { CR LF   704       { CR LF
737         VarR esult += P aramSearch WordsStrin g.charAt(V arIndex); CR LF   705         VarR esult += P aramSearch WordsStrin g.charAt(V arIndex); CR LF
738       } CR LF   706       } CR LF
739     } CR LF   707     } CR LF
740      CR LF   708      CR LF
741     return V arResult; CR LF   709     return V arResult; CR LF
742   } CR LF   710   } CR LF
743   CR LF   711   CR LF
744   function   WWHSearch_ SetSearchW ords(Param SearchWord sString) CR LF   712   function   WWHSearch_ SetSearchW ords(Param SearchWord sString) CR LF
745   { CR LF   713   { CR LF
746     var  Var SearchWord sString; CR LF    
747     var  Sea rchWordAnd PhraseList ; CR LF   714     var  Sea rchWordAnd PhraseList ; CR LF
    715     var  Sea rchWordAnd PhraseEntr y; CR LF
748     var  Sea rchWordLis t; CR LF   716     var  Sea rchWordLis t; CR LF
749     var  Max Index; CR LF   717     var  Max Index; CR LF
750     var  Ind ex; CR LF   718     var  Ind ex; CR LF
751     var  Max WordIndex; CR LF   719     var  Max WordIndex; CR LF
752     var  Wor dIndex; CR LF   720     var  Wor dIndex; CR LF
753     var  Sea rchWord; CR LF   721     var  Sea rchWord; CR LF
754     var  Sea rchRegExpP attern; CR LF   722     var  Sea rchRegExpP attern; CR LF
755   CR LF   723   CR LF
756   CR LF   724   CR LF
757     // Clear  search wo rds CR LF   725     // Clear  search wo rds CR LF
758     // CR LF   726     // CR LF
759     this.mSe archWordLi st.length  = 0; CR LF   727     this.mSe archWordLi st.length  = 0; CR LF
760     this.mSe archWordRe gExpList.l ength = 0; CR LF   728     this.mSe archWordRe gExpList.l ength = 0; CR LF
761   CR LF   729   CR LF
762     // Add s earch word s to hash CR LF   730     // Add s earch word s to hash CR LF
763     // CR LF   731     // CR LF
764      Var SearchWord
s
String  =  t h i s.fApp l y Word B r e a k s(ParamSea rchWordsSt ring); CR LF
  732     
SearchWord AndPhraseL i s t = WWH String U t
i
l ities_Pars e Word sAndPh r
a se s(ParamSea rchWordsSt ring); CR LF
765     SearchWo rdAndPhras eList = WW HStringUti lities_Par seWordsAnd Phrases(Va rSearchWor dsString); CR LF    
766     for (Max Index = Se archWordAn dPhraseLis t.length,  Index = 0  ; Index <  MaxIndex ;  Index++) CR LF   733     for (Max Index = Se archWordAn dPhraseLis t.length,  Index = 0  ; Index <  MaxIndex ;  Index++) CR LF
767     { CR LF   734     { CR LF
768        SearchWord Li s
t
 =  WWHStringU tili t
i es_Par s e Word sAndPh r as e
s(SearchWo rdAndPhras eList[Inde x]); CR LF
  735        SearchWord AndPhra s eEn t ry  = 
t h i
s .fApply Word B r
e ak s(SearchWo rdAndPhras eList[Inde x]); CR LF
    736       Search WordList =  WWHString Utilities_ ParseWords AndPhrases (SearchWor dAndPhrase Entry); CR LF
769       for (M axWordInde x = Search WordList.l ength, Wor dIndex = 0  ; WordInd ex < MaxWo rdIndex ;  WordIndex+ +) CR LF   737       for (M axWordInde x = Search WordList.l ength, Wor dIndex = 0  ; WordInd ex < MaxWo rdIndex ;  WordIndex+ +) CR LF
770       { CR LF   738       { CR LF
771         Sear chWord = S earchWordL ist[WordIn dex]; CR LF   739         Sear chWord = S earchWordL ist[WordIn dex]; CR LF
772   CR LF   740   CR LF
773         // S kip 0 leng th words CR LF   741         // S kip 0 leng th words CR LF
774         // CR LF   742         // CR LF
775         if ( SearchWord .length >  0) CR LF   743         if ( SearchWord .length >  0) CR LF
776         { CR LF   744         { CR LF
777           //  Add to se arch words  hash CR LF   745           //  Add to se arch words  hash CR LF
778           // CR LF   746           // CR LF
779           Se archRegExp Pattern =  WWHStringU tilities_W ordToRegEx pPattern(S earchWord) ; CR LF   747           Se archRegExp Pattern =  WWHStringU tilities_W ordToRegEx pPattern(S earchWord) ; CR LF
780   CR LF   748   CR LF
781           th is.mSearch WordList[t his.mSearc hWordList. length] =  SearchWord ; CR LF   749           th is.mSearch WordList[t his.mSearc hWordList. length] =  SearchWord ; CR LF
782           th is.mSearch WordRegExp List[this. mSearchWor dRegExpLis t.length]  = new RegE xp(SearchR egExpPatte rn, "i"); CR LF   750           th is.mSearch WordRegExp List[this. mSearchWor dRegExpLis t.length]  = new RegE xp(SearchR egExpPatte rn, "i"); CR LF
783         } CR LF   751         } CR LF
784       } CR LF   752       } CR LF
785     } CR LF   753     } CR LF
786   CR LF   754   CR LF
787     // Creat e a items  in mMultiP hraseList  array that  parallel  the mBookS earchInfoL ist array CR LF   755     // Creat e a items  in mMultiP hraseList  array that  parallel  the mBookS earchInfoL ist array CR LF
788     // each  MultiPhras e item is  passed the  correspon ding index  from mBoo kSearchInf oList and CR LF   756     // each  MultiPhras e item is  passed the  correspon ding index  from mBoo kSearchInf oList and CR LF
789     // the s earch word s CR LF   757     // the s earch word s CR LF
790     // CR LF   758     // CR LF
791     var Book SearchInde x; CR LF   759     var Book SearchInde x; CR LF
792     var NewM ultiPhrase ; CR LF   760     var NewM ultiPhrase ; CR LF
793     var Curr entBookSea rch; CR LF   761     var Curr entBookSea rch; CR LF
794     this.mMu ltiPhraseL ist.length  = 0; CR LF   762     this.mMu ltiPhraseL ist.length  = 0; CR LF
795     for(Book SearchInde x = 0; Boo kSearchInd ex < this. mBookSearc hInfoList. length; ++ BookSearch Index) CR LF   763     for(Book SearchInde x = 0; Boo kSearchInd ex < this. mBookSearc hInfoList. length; ++ BookSearch Index) CR LF
796     { CR LF   764     { CR LF
797       Curren tBookSearc h = this.m BookSearch InfoList[B ookSearchI ndex]; CR LF   765       Curren tBookSearc h = this.m BookSearch InfoList[B ookSearchI ndex]; CR LF
798       NewMul tiPhrase =  new Multi Phrase_Obj ect(ParamS earchWords String.toL owerCase() , CurrentB ookSearch) ; CR LF   766       NewMul tiPhrase =  new Multi Phrase_Obj ect(ParamS earchWords String.toL owerCase() , CurrentB ookSearch) ; CR LF
799       NewMul tiPhrase.f Parse(); CR LF   767       NewMul tiPhrase.f Parse(); CR LF
800       this.m MultiPhras eList[this .mMultiPhr aseList.le ngth] = Ne wMultiPhra se; CR LF   768       this.m MultiPhras eList[this .mMultiPhr aseList.le ngth] = Ne wMultiPhra se; CR LF
801     } CR LF   769     } CR LF
802   } CR LF   770   } CR LF
803   CR LF   771   CR LF
804   function   WWHSearch_ CheckForMa tch(ParamS earchFunc) CR LF   772   function   WWHSearch_ CheckForMa tch(ParamS earchFunc) CR LF
805   { CR LF   773   { CR LF
806     var  Cou nt; CR LF   774     var  Cou nt; CR LF
807     var  Max Index; CR LF   775     var  Max Index; CR LF
808     var  Ind ex; CR LF   776     var  Ind ex; CR LF
809     var  Boo kMatchesLi stEntry; CR LF   777     var  Boo kMatchesLi stEntry; CR LF
810     var  Sea rchPattern ; CR LF   778     var  Sea rchPattern ; CR LF
811   CR LF   779   CR LF
812   CR LF   780   CR LF
813     Count =  0; CR LF   781     Count =  0; CR LF
814     for (Max Index = th is.mSearch WordList.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF   782     for (Max Index = th is.mSearch WordList.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF
815     { CR LF   783     { CR LF
816       if (th is.mBookSe archInfoLi st[this.mB ookIndex]. fValidSear chWord(thi s.mSearchW ordList[In dex])) CR LF   784       if (th is.mBookSe archInfoLi st[this.mB ookIndex]. fValidSear chWord(thi s.mSearchW ordList[In dex])) CR LF
817       { CR LF   785       { CR LF
818         Book MatchesLis tEntry = t his.mBookM atchesList [this.mBoo kIndex]; CR LF   786         Book MatchesLis tEntry = t his.mBookM atchesList [this.mBoo kIndex]; CR LF
819   CR LF   787   CR LF
820         Book MatchesLis tEntry.fSe tMatchedWo rdIndex(Co unt); CR LF   788         Book MatchesLis tEntry.fSe tMatchedWo rdIndex(Co unt); CR LF
821   CR LF   789   CR LF
822         Sear chPattern  = this.mSe archWordRe gExpList[I ndex]; CR LF   790         Sear chPattern  = this.mSe archWordRe gExpList[I ndex]; CR LF
823         Sear chPattern. t = Search Pattern.te st; CR LF   791         Sear chPattern. t = Search Pattern.te st; CR LF
824   CR LF   792   CR LF
825         Para mSearchFun c(SearchPa ttern, Boo kMatchesLi stEntry); CR LF   793         Para mSearchFun c(SearchPa ttern, Boo kMatchesLi stEntry); CR LF
826   CR LF   794   CR LF
827         Coun t++; CR LF   795         Coun t++; CR LF
828       } CR LF   796       } CR LF
829     } CR LF   797     } CR LF
830   } CR LF   798   } CR LF
831   CR LF   799   CR LF
832   function   WWHSearch_ SearchWord sComplete( ) CR LF   800   function   WWHSearch_ SearchWord sComplete( ) CR LF
833   { CR LF   801   { CR LF
834     // Combi ne results  for displ ay CR LF   802     // Combi ne results  for displ ay CR LF
835     // CR LF   803     // CR LF
836     this.fCo mbineResul ts(); CR LF   804     this.fCo mbineResul ts(); CR LF
837     this.mCo mbinedResu ltsIndex =  0; CR LF   805     this.mCo mbinedResu ltsIndex =  0; CR LF
838   } CR LF   806   } CR LF
839   CR LF   807   CR LF
840   function   WWHSearch_ CheckForPh raseMatch( ParamSearc hFunc) CR LF   808   function   WWHSearch_ CheckForPh raseMatch( ParamSearc hFunc) CR LF
841   { CR LF   809   { CR LF
842     var  Ent ry; CR LF   810     var  Ent ry; CR LF
843     var  Boo kIndex; CR LF   811     var  Boo kIndex; CR LF
844     var  Fil eIndex; CR LF   812     var  Fil eIndex; CR LF
845     var  Mul tiPhraseEn try; CR LF   813     var  Mul tiPhraseEn try; CR LF
846   CR LF   814   CR LF
847     Entry             =  this.mCom binedResul ts.mEntrie s[this.mCo mbinedResu ltsIndex]; CR LF   815     Entry             =  this.mCom binedResul ts.mEntrie s[this.mCo mbinedResu ltsIndex]; CR LF
848     BookInde x        =  Entry.mBo okIndex; CR LF   816     BookInde x        =  Entry.mBo okIndex; CR LF
849     FileInde x        =  Entry.mFi leIndex; CR LF   817     FileInde x        =  Entry.mFi leIndex; CR LF
850     MultiPhr aseEntry =  this.mMul tiPhraseLi st[BookInd ex]; CR LF   818     MultiPhr aseEntry =  this.mMul tiPhraseLi st[BookInd ex]; CR LF
851   CR LF   819   CR LF
852     // Reset  the incre mented val ues of the  matching  word pairs CR LF   820     // Reset  the incre mented val ues of the  matching  word pairs CR LF
853     // for t his multip hrase obje ct for a n ew round o f testing CR LF   821     // for t his multip hrase obje ct for a n ew round o f testing CR LF
854     // CR LF   822     // CR LF
855     MultiPhr aseEntry.f ResetMatch es(); CR LF   823     MultiPhr aseEntry.f ResetMatch es(); CR LF
856   CR LF   824   CR LF
857     // Perfo rm Test CR LF   825     // Perfo rm Test CR LF
858     // CR LF   826     // CR LF
859     ParamSea rchFunc(Mu ltiPhraseE ntry); CR LF   827     ParamSea rchFunc(Mu ltiPhraseE ntry); CR LF
860   CR LF   828   CR LF
861     // Match ? CR LF   829     // Match ? CR LF
862     // CR LF   830     // CR LF
863     if (Mult iPhraseEnt ry.fCheckF orMatch()) CR LF   831     if (Mult iPhraseEnt ry.fCheckF orMatch()) CR LF
864     { CR LF   832     { CR LF
865       // Mat ch - Do No thing CR LF   833       // Mat ch - Do No thing CR LF
866       // CR LF   834       // CR LF
867     } CR LF   835     } CR LF
868     else CR LF   836     else CR LF
869     { CR LF   837     { CR LF
870       // Rem ove from r esults CR LF   838       // Rem ove from r esults CR LF
871       // CR LF   839       // CR LF
872       this.m CombinedRe sults.mEnt ries[this. mCombinedR esultsInde x] = null; CR LF   840       this.m CombinedRe sults.mEnt ries[this. mCombinedR esultsInde x] = null; CR LF
873     } CR LF   841     } CR LF
874   } CR LF   842   } CR LF
875   CR LF   843   CR LF
876   function   WWHSearch_ SearchPair sComplete( ) CR LF   844   function   WWHSearch_ SearchPair sComplete( ) CR LF
877   { CR LF   845   { CR LF
878     var  Ent ries = new  Array(); CR LF   846     var  Ent ries = new  Array(); CR LF
879     var  Max Index; CR LF   847     var  Max Index; CR LF
880     var  Ind ex; CR LF   848     var  Ind ex; CR LF
881   CR LF   849   CR LF
882     // Remov e failed m atches CR LF   850     // Remov e failed m atches CR LF
883     // CR LF   851     // CR LF
884     for (Max Index = th is.mCombin edResults. mEntries.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF   852     for (Max Index = th is.mCombin edResults. mEntries.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF
885     { CR LF   853     { CR LF
886       if (th is.mCombin edResults. mEntries[I ndex] != n ull) CR LF   854       if (th is.mCombin edResults. mEntries[I ndex] != n ull) CR LF
887       { CR LF   855       { CR LF
888         Entr ies[Entrie s.length]  = this.mCo mbinedResu lts.mEntri es[Index]; CR LF   856         Entr ies[Entrie s.length]  = this.mCo mbinedResu lts.mEntri es[Index]; CR LF
889       } CR LF   857       } CR LF
890     } CR LF   858     } CR LF
891     this.mCo mbinedResu lts.mEntri es = Entri es; CR LF   859     this.mCo mbinedResu lts.mEntri es = Entri es; CR LF
892   CR LF   860   CR LF
893     // Sort  results ba sed on sin gle or mul ti-book di splay CR LF   861     // Sort  results ba sed on sin gle or mul ti-book di splay CR LF
894     // CR LF   862     // CR LF
895     if ((WWH Frame.WWHJ avaScript. mSettings. mSearch.mb ResultsByB ook) || CR LF   863     if ((WWH Frame.WWHJ avaScript. mSettings. mSearch.mb ResultsByB ook) || CR LF
896         ((WW HFrame.WWH Help.mBook s.mBookLis t.length = = 1) || CR LF   864         ((WW HFrame.WWH Help.mBook s.mBookLis t.length = = 1) || CR LF
897          ((t his.mSaved SearchScop e > 0) && CR LF   865          ((t his.mSaved SearchScop e > 0) && CR LF
898           (t his.mSearc hScopeInfo .mEntries[ this.mSave dSearchSco pe - 1].mS tartBookIn dex == thi s.mSearchS copeInfo.m Entries[th is.mSavedS earchScope  - 1].mEnd BookIndex) ))) CR LF   866           (t his.mSearc hScopeInfo .mEntries[ this.mSave dSearchSco pe - 1].mS tartBookIn dex == thi s.mSearchS copeInfo.m Entries[th is.mSavedS earchScope  - 1].mEnd BookIndex) ))) CR LF
899     { CR LF   867     { CR LF
900       this.m CombinedRe sults.fSor tByBookInd ex(); CR LF   868       this.m CombinedRe sults.fSor tByBookInd ex(); CR LF
901     } CR LF   869     } CR LF
902     else CR LF   870     else CR LF
903     { CR LF   871     { CR LF
904       this.m CombinedRe sults.fSor tByScore() ; CR LF   872       this.m CombinedRe sults.fSor tByScore() ; CR LF
905     } CR LF   873     } CR LF
906   } CR LF   874   } CR LF
907   CR LF   875   CR LF
908   function   WWHSearch_ CombineRes ults() CR LF   876   function   WWHSearch_ CombineRes ults() CR LF
909   { CR LF   877   { CR LF
910     var  Max BookIndex; CR LF   878     var  Max BookIndex; CR LF
911     var  Boo kIndex; CR LF   879     var  Boo kIndex; CR LF
912     var  Boo kMatches; CR LF   880     var  Boo kMatches; CR LF
913     var  Boo kListEntry ; CR LF   881     var  Boo kListEntry ; CR LF
914     var  Fil eID; CR LF   882     var  Fil eID; CR LF
915     var  Fil eIndex; CR LF   883     var  Fil eIndex; CR LF
916   CR LF   884   CR LF
917   CR LF   885   CR LF
918     this.mCo mbinedResu lts.fClear (); CR LF   886     this.mCo mbinedResu lts.fClear (); CR LF
919     for (Max BookIndex  = this.mBo okMatchesL ist.length , BookInde x = 0 ; Bo okIndex <  MaxBookInd ex ; BookI ndex++) CR LF   887     for (Max BookIndex  = this.mBo okMatchesL ist.length , BookInde x = 0 ; Bo okIndex <  MaxBookInd ex ; BookI ndex++) CR LF
920     { CR LF   888     { CR LF
921       BookMa tches = th is.mBookMa tchesList[ BookIndex] ; CR LF   889       BookMa tches = th is.mBookMa tchesList[ BookIndex] ; CR LF
922       BookLi stEntry =  WWHFrame.W WHHelp.mBo oks.mBookL ist[BookIn dex]; CR LF   890       BookLi stEntry =  WWHFrame.W WHHelp.mBo oks.mBookL ist[BookIn dex]; CR LF
923   CR LF   891   CR LF
924       // Add  results CR LF   892       // Add  results CR LF
925       // CR LF   893       // CR LF
926       BookMa tches.fJoi nFileScore s(); CR LF   894       BookMa tches.fJoi nFileScore s(); CR LF
927       for (F ileID in B ookMatches .mFileScor es) CR LF   895       for (F ileID in B ookMatches .mFileScor es) CR LF
928       { CR LF   896       { CR LF
929         File Index = pa rseInt(Fil eID.substr ing(1, Fil eID.length )); CR LF   897         File Index = pa rseInt(Fil eID.substr ing(1, Fil eID.length )); CR LF
930   CR LF   898   CR LF
931         this .mCombined Results.fA ddEntry(Bo okIndex, F ileIndex,  BookMatche s.mFileSco res[FileID ], BookLis tEntry.mFi les.fFileI ndexToTitl e(FileInde x)); CR LF   899         this .mCombined Results.fA ddEntry(Bo okIndex, F ileIndex,  BookMatche s.mFileSco res[FileID ], BookLis tEntry.mFi les.fFileI ndexToTitl e(FileInde x)); CR LF
932       } CR LF   900       } CR LF
933     } CR LF   901     } CR LF
934   } CR LF   902   } CR LF
935   CR LF   903   CR LF
936   function   WWHSearch_ ShowEntry( ParamIndex ) CR LF   904   function   WWHSearch_ ShowEntry( ParamIndex ) CR LF
937   { CR LF   905   { CR LF
938     this.mCo mbinedResu lts.fShowE ntry(Param Index); CR LF   906     this.mCo mbinedResu lts.fShowE ntry(Param Index); CR LF
939   } CR LF   907   } CR LF
940   CR LF   908   CR LF
941   function   WWHSearchS cope_Entry _Object(Pa ramLevel, CR LF   909   function   WWHSearchS cope_Entry _Object(Pa ramLevel, CR LF
942                                            Pa ramTitle, CR LF   910                                            Pa ramTitle, CR LF
943                                            Pa ramBookInd ex) CR LF   911                                            Pa ramBookInd ex) CR LF
944   { CR LF   912   { CR LF
945     this.mLe vel           = Param Level; CR LF   913     this.mLe vel           = Param Level; CR LF
946     this.mTi tle           = Param Title; CR LF   914     this.mTi tle           = Param Title; CR LF
947     this.mSt artBookInd ex = Param BookIndex; CR LF   915     this.mSt artBookInd ex = Param BookIndex; CR LF
948     this.mEn dBookIndex    = Param BookIndex; CR LF   916     this.mEn dBookIndex    = Param BookIndex; CR LF
949   } CR LF   917   } CR LF
950   CR LF   918   CR LF
951   function   WWHSearchS cope_Objec t() CR LF   919   function   WWHSearchS cope_Objec t() CR LF
952   { CR LF   920   { CR LF
953     this.mEn tries = ne w Array(); CR LF   921     this.mEn tries = ne w Array(); CR LF
954     this.mGr oupStack =  new Array (); CR LF   922     this.mGr oupStack =  new Array (); CR LF
955     this.mBo okIndex =  0; CR LF   923     this.mBo okIndex =  0; CR LF
956   CR LF   924   CR LF
957     this.fAd dScopeEntr ies = WWHS earchScope _AddScopeE ntries; CR LF   925     this.fAd dScopeEntr ies = WWHS earchScope _AddScopeE ntries; CR LF
958   CR LF   926   CR LF
959     // Set s cope entri es CR LF   927     // Set s cope entri es CR LF
960     // CR LF   928     // CR LF
961     this.fAd dScopeEntr ies(WWHFra me.WWHHelp .mBookGrou ps); CR LF   929     this.fAd dScopeEntr ies(WWHFra me.WWHHelp .mBookGrou ps); CR LF
962   } CR LF   930   } CR LF
963   CR LF   931   CR LF
964   function   WWHSearchS cope_AddSc opeEntries (ParamGrou p) CR LF   932   function   WWHSearchS cope_AddSc opeEntries (ParamGrou p) CR LF
965   { CR LF   933   { CR LF
966     var  Max Index; CR LF   934     var  Max Index; CR LF
967     var  Ind ex; CR LF   935     var  Ind ex; CR LF
968     var  Max GroupStack Index; CR LF   936     var  Max GroupStack Index; CR LF
969     var  Gro upStackInd ex; CR LF   937     var  Gro upStackInd ex; CR LF
970     var  Sco peEntry; CR LF   938     var  Sco peEntry; CR LF
971   CR LF   939   CR LF
972   CR LF   940   CR LF
973     for (Max Index = Pa ramGroup.m Children.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF   941     for (Max Index = Pa ramGroup.m Children.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF
974     { CR LF   942     { CR LF
975       if (Pa ramGroup.m Children[I ndex].mbGr ouping) CR LF   943       if (Pa ramGroup.m Children[I ndex].mbGr ouping) CR LF
976       { CR LF   944       { CR LF
977         // A dd an entr y CR LF   945         // A dd an entr y CR LF
978         // CR LF   946         // CR LF
979         Scop eEntry = n ew WWHSear chScope_En try_Object (this.mGro upStack.le ngth, Para mGroup.mCh ildren[Ind ex].mTitle , -1); CR LF   947         Scop eEntry = n ew WWHSear chScope_En try_Object (this.mGro upStack.le ngth, Para mGroup.mCh ildren[Ind ex].mTitle , -1); CR LF
980         this .mEntries[ this.mEntr ies.length ] = ScopeE ntry; CR LF   948         this .mEntries[ this.mEntr ies.length ] = ScopeE ntry; CR LF
981   CR LF   949   CR LF
982         // P ush this e ntry onto  the group  stack CR LF   950         // P ush this e ntry onto  the group  stack CR LF
983         // CR LF   951         // CR LF
984         this .mGroupSta ck[this.mG roupStack. length] =  ScopeEntry ; CR LF   952         this .mGroupSta ck[this.mG roupStack. length] =  ScopeEntry ; CR LF
985   CR LF   953   CR LF
986         // P rocess gro up entries CR LF   954         // P rocess gro up entries CR LF
987         // CR LF   955         // CR LF
988         this .fAddScope Entries(Pa ramGroup.m Children[I ndex]); CR LF   956         this .fAddScope Entries(Pa ramGroup.m Children[I ndex]); CR LF
989   CR LF   957   CR LF
990         // P op this en try off th e group st ack CR LF   958         // P op this en try off th e group st ack CR LF
991         // CR LF   959         // CR LF
992         this .mGroupSta ck.length  -= 1; CR LF   960         this .mGroupSta ck.length  -= 1; CR LF
993       } CR LF   961       } CR LF
994       else CR LF   962       else CR LF
995       { CR LF   963       { CR LF
996         // A dd an entr y CR LF   964         // A dd an entr y CR LF
997         // CR LF   965         // CR LF
998         this .mEntries[ this.mEntr ies.length ] = new WW HSearchSco pe_Entry_O bject(this .mGroupSta ck.length,  WWHFrame. WWHHelp.mB ooks.mBook List[this. mBookIndex ].mTitle,  this.mBook Index); CR LF   966         this .mEntries[ this.mEntr ies.length ] = new WW HSearchSco pe_Entry_O bject(this .mGroupSta ck.length,  WWHFrame. WWHHelp.mB ooks.mBook List[this. mBookIndex ].mTitle,  this.mBook Index); CR LF
999   CR LF   967   CR LF
1000         // P rocess all  entries i n the grou p stack, u pdating st art/end bo ok indicie s CR LF   968         // P rocess all  entries i n the grou p stack, u pdating st art/end bo ok indicie s CR LF
1001         // CR LF   969         // CR LF
1002         for  (MaxGroupS tackIndex  = this.mGr oupStack.l ength, Gro upStackInd ex = 0 ; G roupStackI ndex < Max GroupStack Index ; Gr oupStackIn dex++) CR LF   970         for  (MaxGroupS tackIndex  = this.mGr oupStack.l ength, Gro upStackInd ex = 0 ; G roupStackI ndex < Max GroupStack Index ; Gr oupStackIn dex++) CR LF
1003         { CR LF   971         { CR LF
1004           Sc opeEntry =  this.mGro upStack[Gr oupStackIn dex]; CR LF   972           Sc opeEntry =  this.mGro upStack[Gr oupStackIn dex]; CR LF
1005   CR LF   973   CR LF
1006           //  Update st art CR LF   974           //  Update st art CR LF
1007           // CR LF   975           // CR LF
1008           if  (ScopeEnt ry.mStartB ookIndex = = -1) CR LF   976           if  (ScopeEnt ry.mStartB ookIndex = = -1) CR LF
1009           { CR LF   977           { CR LF
1010              ScopeEntry .mStartBoo kIndex = t his.mBookI ndex; CR LF   978              ScopeEntry .mStartBoo kIndex = t his.mBookI ndex; CR LF
1011           } CR LF   979           } CR LF
1012   CR LF   980   CR LF
1013           //  Update en d CR LF   981           //  Update en d CR LF
1014           // CR LF   982           // CR LF
1015           Sc opeEntry.m EndBookInd ex = this. mBookIndex ; CR LF   983           Sc opeEntry.m EndBookInd ex = this. mBookIndex ; CR LF
1016         } CR LF   984         } CR LF
1017   CR LF   985   CR LF
1018         // I ncrement b ook index CR LF   986         // I ncrement b ook index CR LF
1019         // CR LF   987         // CR LF
1020         this .mBookInde x += 1; CR LF   988         this .mBookInde x += 1; CR LF
1021       } CR LF   989       } CR LF
1022     } CR LF   990     } CR LF
1023   } CR LF   991   } CR LF
1024   CR LF   992   CR LF
1025   function   WWHBookSea rchInfo_Ob ject(Param SearchFile Count, CR LF   993   function   WWHBookSea rchInfo_Ob ject(Param SearchFile Count, CR LF
1026                                         Param MinimumWor dLength) CR LF   994                                         Param MinimumWor dLength) CR LF
1027   { CR LF   995   { CR LF
1028     this.mSe archFileCo unt   = Pa ramSearchF ileCount; CR LF   996     this.mSe archFileCo unt   = Pa ramSearchF ileCount; CR LF
1029     this.mMi nimumWordL ength = Pa ramMinimum WordLength ; CR LF   997     this.mMi nimumWordL ength = Pa ramMinimum WordLength ; CR LF
1030     this.mSk ipWords          = ne w WWHBookS earchInfo_ SkipWords_ Object(); CR LF   998     this.mSk ipWords          = ne w WWHBookS earchInfo_ SkipWords_ Object(); CR LF
1031   CR LF   999   CR LF
1032     this.fAd dSkipWord      = WWHB ookSearchI nfo_AddSki pWord; CR LF   1000     this.fAd dSkipWord      = WWHB ookSearchI nfo_AddSki pWord; CR LF
1033     this.fA                 = WWHB ookSearchI nfo_AddSki pWord; CR LF   1001     this.fA                 = WWHB ookSearchI nfo_AddSki pWord; CR LF
1034     this.fVa lidSearchW ord = WWHB ookSearchI nfo_ValidS earchWord; CR LF   1002     this.fVa lidSearchW ord = WWHB ookSearchI nfo_ValidS earchWord; CR LF
1035   } CR LF   1003   } CR LF
1036   CR LF   1004   CR LF
1037   function   WWHBookSea rchInfo_Ad dSkipWord( ParamSkipW ord) CR LF   1005   function   WWHBookSea rchInfo_Ad dSkipWord( ParamSkipW ord) CR LF
1038   { CR LF   1006   { CR LF
1039     if (Para mSkipWord. length > 0 ) CR LF   1007     if (Para mSkipWord. length > 0 ) CR LF
1040     { CR LF   1008     { CR LF
1041       this.m SkipWords[ ParamSkipW ord + "~"]  = 1; CR LF   1009       this.m SkipWords[ ParamSkipW ord + "~"]  = 1; CR LF
1042     } CR LF   1010     } CR LF
1043   } CR LF   1011   } CR LF
1044   CR LF   1012   CR LF
1045   function   WWHBookSea rchInfo_Va lidSearchW ord(ParamS earchWord) CR LF   1013   function   WWHBookSea rchInfo_Va lidSearchW ord(ParamS earchWord) CR LF
1046   { CR LF   1014   { CR LF
1047     var  bVa lid = true ; CR LF   1015     var  bVa lid = true ; CR LF
1048   CR LF   1016   CR LF
1049   CR LF   1017   CR LF
1050     if ((Par amSearchWo rd.length  < this.mMi nimumWordL ength) || CR LF   1018     if ((Par amSearchWo rd.length  < this.mMi nimumWordL ength) || CR LF
1051         (typ eof(this.m SkipWords[ ParamSearc hWord + "~ "]) == "nu mber")) CR LF   1019         (typ eof(this.m SkipWords[ ParamSearc hWord + "~ "]) == "nu mber")) CR LF
1052     { CR LF   1020     { CR LF
1053       bValid  = false; CR LF   1021       bValid  = false; CR LF
1054     } CR LF   1022     } CR LF
1055   CR LF   1023   CR LF
1056     return b Valid; CR LF   1024     return b Valid; CR LF
1057   } CR LF   1025   } CR LF
1058   CR LF   1026   CR LF
1059   function   WWHBookSea rchInfo_Sk ipWords_Ob ject() CR LF   1027   function   WWHBookSea rchInfo_Sk ipWords_Ob ject() CR LF
1060   { CR LF   1028   { CR LF
1061   } CR LF   1029   } CR LF
1062   CR LF   1030   CR LF
1063   function   WWHSearchB ookMatches _Object() CR LF   1031   function   WWHSearchB ookMatches _Object() CR LF
1064   { CR LF   1032   { CR LF
1065     this.mFi rstMatched WordIndex  = -1; CR LF   1033     this.mFi rstMatched WordIndex  = -1; CR LF
1066     this.mMa tchedWordI ndex       = -1; CR LF   1034     this.mMa tchedWordI ndex       = -1; CR LF
1067     this.mWo rdFileScor es         = new Arra y(); CR LF   1035     this.mWo rdFileScor es         = new Arra y(); CR LF
1068     this.mFi leScores              = new WWHS earchBookM atches_Fil eScores_Ob ject(); CR LF   1036     this.mFi leScores              = new WWHS earchBookM atches_Fil eScores_Ob ject(); CR LF
1069   CR LF   1037   CR LF
1070     this.fCl ear                =  WWHSearchB ookMatches _Clear; CR LF   1038     this.fCl ear                =  WWHSearchB ookMatches _Clear; CR LF
1071     this.fSe tMatchedWo rdIndex =  WWHSearchB ookMatches _SetMatche dWordIndex ; CR LF   1039     this.fSe tMatchedWo rdIndex =  WWHSearchB ookMatches _SetMatche dWordIndex ; CR LF
1072     this.fAd dMatches           =  WWHSearchB ookMatches _AddMatche s; CR LF   1040     this.fAd dMatches           =  WWHSearchB ookMatches _AddMatche s; CR LF
1073     this.f                      =  WWHSearchB ookMatches _AddMatche s;  // For  smaller s earch file s CR LF   1041     this.f                      =  WWHSearchB ookMatches _AddMatche s;  // For  smaller s earch file s CR LF
1074     this.fJo inFileScor es      =  WWHSearchB ookMatches _JoinFileS cores; CR LF   1042     this.fJo inFileScor es      =  WWHSearchB ookMatches _JoinFileS cores; CR LF
1075   } CR LF   1043   } CR LF
1076   CR LF   1044   CR LF
1077   function   WWHSearchB ookMatches _Clear() CR LF   1045   function   WWHSearchB ookMatches _Clear() CR LF
1078   { CR LF   1046   { CR LF
1079     this.mFi rstMatched WordIndex  = -1; CR LF   1047     this.mFi rstMatched WordIndex  = -1; CR LF
1080     this.mMa tchedWordI ndex       = -1; CR LF   1048     this.mMa tchedWordI ndex       = -1; CR LF
1081     this.mWo rdFileScor es.length  = 0; CR LF   1049     this.mWo rdFileScor es.length  = 0; CR LF
1082     this.mFi leScores              = new WWHS earchBookM atches_Fil eScores_Ob ject(); CR LF   1050     this.mFi leScores              = new WWHS earchBookM atches_Fil eScores_Ob ject(); CR LF
1083   } CR LF   1051   } CR LF
1084   CR LF   1052   CR LF
1085   function   WWHSearchB ookMatches _SetMatche dWordIndex (ParamMatc hedWordInd ex) CR LF   1053   function   WWHSearchB ookMatches _SetMatche dWordIndex (ParamMatc hedWordInd ex) CR LF
1086   { CR LF   1054   { CR LF
1087     this.mMa tchedWordI ndex = Par amMatchedW ordIndex; CR LF   1055     this.mMa tchedWordI ndex = Par amMatchedW ordIndex; CR LF
1088     if (Para mMatchedWo rdIndex ==  this.mWor dFileScore s.length) CR LF   1056     if (Para mMatchedWo rdIndex ==  this.mWor dFileScore s.length) CR LF
1089     { CR LF   1057     { CR LF
1090       this.m WordFileSc ores[this. mWordFileS cores.leng th] = new  WWHSearchB ookMatches _FileScore s_Object() ; CR LF   1058       this.m WordFileSc ores[this. mWordFileS cores.leng th] = new  WWHSearchB ookMatches _FileScore s_Object() ; CR LF
1091     } CR LF   1059     } CR LF
1092   } CR LF   1060   } CR LF
1093   CR LF   1061   CR LF
1094   function   WWHSearchB ookMatches _AddMatche s(ParamMat chString) CR LF   1062   function   WWHSearchB ookMatches _AddMatche s(ParamMat chString) CR LF
1095   { CR LF   1063   { CR LF
1096     var  Mat chList = n ull; CR LF   1064     var  Mat chList = n ull; CR LF
1097     var  Wor dFileScore sEntry; CR LF   1065     var  Wor dFileScore sEntry; CR LF
1098     var  Max Index; CR LF   1066     var  Max Index; CR LF
1099     var  Ind ex; CR LF   1067     var  Ind ex; CR LF
1100     var  Fil eID; CR LF   1068     var  Fil eID; CR LF
1101     var  Sco re; CR LF   1069     var  Sco re; CR LF
1102   CR LF   1070   CR LF
1103   CR LF   1071   CR LF
1104     if (type of(ParamMa tchString)  != "undef ined") CR LF   1072     if (type of(ParamMa tchString)  != "undef ined") CR LF
1105     { CR LF   1073     { CR LF
1106       MatchL ist = Para mMatchStri ng.split(" ,"); CR LF   1074       MatchL ist = Para mMatchStri ng.split(" ,"); CR LF
1107     } CR LF   1075     } CR LF
1108   CR LF   1076   CR LF
1109     if ((Mat chList !=  null) && CR LF   1077     if ((Mat chList !=  null) && CR LF
1110         (Mat chList.len gth > 0)) CR LF   1078         (Mat chList.len gth > 0)) CR LF
1111     { CR LF   1079     { CR LF
1112       WordFi leScoresEn try = this .mWordFile Scores[thi s.mMatched WordIndex] ; CR LF   1080       WordFi leScoresEn try = this .mWordFile Scores[thi s.mMatched WordIndex] ; CR LF
1113   CR LF   1081   CR LF
1114       // Add  all entri es to word  file scor e entry CR LF   1082       // Add  all entri es to word  file scor e entry CR LF
1115       // CR LF   1083       // CR LF
1116       for (M axIndex =  MatchList. length, In dex = 0 ;  Index < Ma xIndex ; I ndex += 2) CR LF   1084       for (M axIndex =  MatchList. length, In dex = 0 ;  Index < Ma xIndex ; I ndex += 2) CR LF
1117       { CR LF   1085       { CR LF
1118         File ID = "i" +  MatchList [Index]; CR LF   1086         File ID = "i" +  MatchList [Index]; CR LF
1119         Scor e  = Match List[Index  + 1]; CR LF   1087         Scor e  = Match List[Index  + 1]; CR LF
1120   CR LF   1088   CR LF
1121         Word FileScores Entry[File ID] = pars eInt(Score ); CR LF   1089         Word FileScores Entry[File ID] = pars eInt(Score ); CR LF
1122       } CR LF   1090       } CR LF
1123     } CR LF   1091     } CR LF
1124   } CR LF   1092   } CR LF
1125   CR LF   1093   CR LF
1126   function   WWHSearchB ookMatches _JoinFileS cores() CR LF   1094   function   WWHSearchB ookMatches _JoinFileS cores() CR LF
1127   { CR LF   1095   { CR LF
1128     var  Max Index; CR LF   1096     var  Max Index; CR LF
1129     var  Ind ex; CR LF   1097     var  Ind ex; CR LF
1130     var  Wor dFileScore sEntry; CR LF   1098     var  Wor dFileScore sEntry; CR LF
1131   CR LF   1099   CR LF
1132   CR LF   1100   CR LF
1133     this.mFi leScores =  new WWHSe archBookMa tches_File Scores_Obj ect(); CR LF   1101     this.mFi leScores =  new WWHSe archBookMa tches_File Scores_Obj ect(); CR LF
1134     for (Max Index = th is.mWordFi leScores.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF   1102     for (Max Index = th is.mWordFi leScores.l ength, Ind ex = 0 ; I ndex < Max Index ; In dex++) CR LF
1135     { CR LF   1103     { CR LF
1136       WordFi leScoresEn try = this .mWordFile Scores[Ind ex]; CR LF   1104       WordFi leScoresEn try = this .mWordFile Scores[Ind ex]; CR LF
1137   CR LF   1105   CR LF
1138       if (In dex == 0) CR LF   1106       if (In dex == 0) CR LF
1139       { CR LF   1107       { CR LF
1140         // A dd all ent ries if fi rst entry CR LF   1108         // A dd all ent ries if fi rst entry CR LF
1141         // CR LF   1109         // CR LF
1142         this .mFileScor es = WordF ileScoresE ntry; CR LF   1110         this .mFileScor es = WordF ileScoresE ntry; CR LF
1143       } CR LF   1111       } CR LF
1144       else CR LF   1112       else CR LF
1145       { CR LF   1113       { CR LF
1146         // R emove all  entries no t found in  results s et CR LF   1114         // R emove all  entries no t found in  results s et CR LF
1147         // CR LF   1115         // CR LF
1148         for  (FileID in  this.mFil eScores) CR LF   1116         for  (FileID in  this.mFil eScores) CR LF
1149         { CR LF   1117         { CR LF
1150           if  (typeof(W ordFileSco resEntry[F ileID]) ==  "number") CR LF   1118           if  (typeof(W ordFileSco resEntry[F ileID]) ==  "number") CR LF
1151           { CR LF   1119           { CR LF
1152              this.mFile Scores[Fil eID] += Wo rdFileScor esEntry[Fi leID]; CR LF   1120              this.mFile Scores[Fil eID] += Wo rdFileScor esEntry[Fi leID]; CR LF
1153           } CR LF   1121           } CR LF
1154           el se CR LF   1122           el se CR LF
1155           { CR LF   1123           { CR LF
1156              delete thi s.mFileSco res[FileID ]; CR LF   1124              delete thi s.mFileSco res[FileID ]; CR LF
1157           } CR LF   1125           } CR LF
1158         } CR LF   1126         } CR LF
1159       } CR LF   1127       } CR LF
1160     } CR LF   1128     } CR LF
1161   } CR LF   1129   } CR LF
1162   CR LF   1130   CR LF
1163   function   WWHSearchB ookMatches _FileScore s_Object() CR LF   1131   function   WWHSearchB ookMatches _FileScore s_Object() CR LF
1164   { CR LF   1132   { CR LF
1165   } CR LF   1133   } CR LF
1166   CR LF   1134   CR LF
1167   function   WWHSearchR esults_Obj ect() CR LF   1135   function   WWHSearchR esults_Obj ect() CR LF
1168   { CR LF   1136   { CR LF
1169     this.mSo rtedBy      = null; CR LF   1137     this.mSo rtedBy      = null; CR LF
1170     this.mEn tries       = new Arr ay(); CR LF   1138     this.mEn tries       = new Arr ay(); CR LF
1171     this.mMa xScore      = 0; CR LF   1139     this.mMa xScore      = 0; CR LF
1172     this.mDi splayIndex  = 0; CR LF   1140     this.mDi splayIndex  = 0; CR LF
1173     this.mBy BookDetect  = -1; CR LF   1141     this.mBy BookDetect  = -1; CR LF
1174     this.mHT MLSegment   = new WWH StringBuff er_Object( ); CR LF   1142     this.mHT MLSegment   = new WWH StringBuff er_Object( ); CR LF
1175     this.mEv entString   = WWHPopu p_EventStr ing(); CR LF   1143     this.mEv entString   = WWHPopu p_EventStr ing(); CR LF
1176   CR LF   1144   CR LF
1177     this.fCl ear            = WWHS earchResul ts_Clear; CR LF   1145     this.fCl ear            = WWHS earchResul ts_Clear; CR LF
1178     this.fAd dEntry         = WWHS earchResul ts_AddEntr y; CR LF   1146     this.fAd dEntry         = WWHS earchResul ts_AddEntr y; CR LF
1179     this.fSo rtByScore      = WWHS earchResul ts_SortByS core; CR LF   1147     this.fSo rtByScore      = WWHS earchResul ts_SortByS core; CR LF
1180     this.fSo rtByBookIn dex = WWHS earchResul ts_SortByB ookIndex; CR LF   1148     this.fSo rtByBookIn dex = WWHS earchResul ts_SortByB ookIndex; CR LF
1181     this.fDi splayReset     = WWHS earchResul ts_Display Reset; CR LF   1149     this.fDi splayReset     = WWHS earchResul ts_Display Reset; CR LF
1182     this.fDi splayAdvan ce  = WWHS earchResul ts_Display Advance; CR LF   1150     this.fDi splayAdvan ce  = WWHS earchResul ts_Display Advance; CR LF
1183     this.fGe tPopupActi on  = WWHS earchResul ts_GetPopu pAction; CR LF   1151     this.fGe tPopupActi on  = WWHS earchResul ts_GetPopu pAction; CR LF
1184     this.fSh owEntry        = WWHS earchResul ts_ShowEnt ry; CR LF   1152     this.fSh owEntry        = WWHS earchResul ts_ShowEnt ry; CR LF
1185   } CR LF   1153   } CR LF
1186   CR LF   1154   CR LF
1187   function   WWHSearchR esults_Cle ar() CR LF   1155   function   WWHSearchR esults_Cle ar() CR LF
1188   { CR LF   1156   { CR LF
1189     this.mSo rtedBy        = null; CR LF   1157     this.mSo rtedBy        = null; CR LF
1190     this.mEn tries.leng th = 0; CR LF   1158     this.mEn tries.leng th = 0; CR LF
1191     this.mMa xScore        = 0; CR LF   1159     this.mMa xScore        = 0; CR LF
1192   } CR LF   1160   } CR LF
1193   CR LF   1161   CR LF
1194   function   WWHSearchR esults_Add Entry(Para mBookIndex , CR LF   1162   function   WWHSearchR esults_Add Entry(Para mBookIndex , CR LF
1195                                          Para mFileIndex , CR LF   1163                                          Para mFileIndex , CR LF
1196                                          Para mScore, CR LF   1164                                          Para mScore, CR LF
1197                                          Para mTitle) CR LF   1165                                          Para mTitle) CR LF
1198   { CR LF   1166   { CR LF
1199     // Add a  new entry CR LF   1167     // Add a  new entry CR LF
1200     // CR LF   1168     // CR LF
1201     this.mEn tries[this .mEntries. length] =  new WWHSea rchResults Entry_Obje ct(ParamBo okIndex, CR LF   1169     this.mEn tries[this .mEntries. length] =  new WWHSea rchResults Entry_Obje ct(ParamBo okIndex, CR LF
1202                                                                                   ParamFi leIndex, CR LF   1170                                                                                   ParamFi leIndex, CR LF
1203                                                                                   ParamSc ore, CR LF   1171                                                                                   ParamSc ore, CR LF
1204                                                                                   ParamTi tle); CR LF   1172                                                                                   ParamTi tle); CR LF
1205   CR LF   1173   CR LF
1206     // Bump  mMaxScore  if necessa ry CR LF   1174     // Bump  mMaxScore  if necessa ry CR LF
1207     // CR LF   1175     // CR LF
1208     if (Para mScore > t his.mMaxSc ore) CR LF   1176     if (Para mScore > t his.mMaxSc ore) CR LF
1209     { CR LF   1177     { CR LF
1210       this.m MaxScore =  ParamScor e; CR LF   1178       this.m MaxScore =  ParamScor e; CR LF
1211     } CR LF   1179     } CR LF
1212   } CR LF   1180   } CR LF
1213   CR LF   1181   CR LF
1214   function   WWHSearchR esults_Sor tByScore() CR LF   1182   function   WWHSearchR esults_Sor tByScore() CR LF
1215   { CR LF   1183   { CR LF
1216     this.mSo rtedBy = 1 ;  // By S core CR LF   1184     this.mSo rtedBy = 1 ;  // By S core CR LF
1217   CR LF   1185   CR LF
1218     if (this .mEntries. length > 0 ) CR LF   1186     if (this .mEntries. length > 0 ) CR LF
1219     { CR LF   1187     { CR LF
1220       this.m Entries =  this.mEntr ies.sort(W WHSearchRe sultsEntry _ByScoreBy BookIndexB yTitleFile IndexURL); CR LF   1188       this.m Entries =  this.mEntr ies.sort(W WHSearchRe sultsEntry _ByScoreBy BookIndexB yTitleFile IndexURL); CR LF
1221     } CR LF   1189     } CR LF
1222   } CR LF   1190   } CR LF
1223   CR LF   1191   CR LF
1224   function   WWHSearchR esults_Sor tByBookInd ex() CR LF   1192   function   WWHSearchR esults_Sor tByBookInd ex() CR LF
1225   { CR LF   1193   { CR LF
1226     this.mSo rtedBy = 2 ;  // By B ookIndex CR LF   1194     this.mSo rtedBy = 2 ;  // By B ookIndex CR LF
1227   CR LF   1195   CR LF
1228     if (this .mEntries. length > 0 ) CR LF   1196     if (this .mEntries. length > 0 ) CR LF
1229     { CR LF   1197     { CR LF
1230       this.m Entries =  this.mEntr ies.sort(W WHSearchRe sultsEntry _ByBookInd exByScoreB yTitleFile IndexURL); CR LF   1198       this.m Entries =  this.mEntr ies.sort(W WHSearchRe sultsEntry _ByBookInd exByScoreB yTitleFile IndexURL); CR LF
1231     } CR LF   1199     } CR LF
1232   } CR LF   1200   } CR LF
1233   CR LF   1201   CR LF
1234   function   WWHSearchR esults_Dis playReset( bParamDisp layBookTit les) CR LF   1202   function   WWHSearchR esults_Dis playReset( bParamDisp layBookTit les) CR LF
1235   { CR LF   1203   { CR LF
1236     this.mDi splayIndex  = 0; CR LF   1204     this.mDi splayIndex  = 0; CR LF
1237     this.mBy BookDetect  = -1; CR LF   1205     this.mBy BookDetect  = -1; CR LF
1238   CR LF   1206   CR LF
1239     if ( ! b ParamDispl ayBookTitl es) CR LF   1207     if ( ! b ParamDispl ayBookTitl es) CR LF
1240     { CR LF   1208     { CR LF
1241       this.m ByBookDete ct = -2; CR LF   1209       this.m ByBookDete ct = -2; CR LF
1242     } CR LF   1210     } CR LF
1243   } CR LF   1211   } CR LF
1244   CR LF   1212   CR LF
1245   function   WWHSearchR esults_Dis playAdvanc e() CR LF   1213   function   WWHSearchR esults_Dis playAdvanc e() CR LF
1246   { CR LF   1214   { CR LF
1247     var  bSe gmentCreat ed = false ; CR LF   1215     var  bSe gmentCreat ed = false ; CR LF
1248     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF   1216     var  Set tings = WW HFrame.WWH JavaScript .mSettings .mSearch; CR LF
1249     var  HTM L; CR LF   1217     var  HTM L; CR LF
1250     var  Max HTMLSegmen tSize; CR LF   1218     var  Max HTMLSegmen tSize; CR LF
1251     var  Boo kList; CR LF   1219     var  Boo kList; CR LF
1252     var  Max Index; CR LF   1220     var  Max Index; CR LF
1253     var  Ind ex; CR LF   1221     var  Ind ex; CR LF
1254     var  Ent ry; CR LF   1222     var  Ent ry; CR LF
1255     var  Var Accessibil ityTitle =  ""; CR LF   1223     var  Var Accessibil ityTitle =  ""; CR LF
1256     var  Var Percent; CR LF   1224     var  Var Percent; CR LF
1257   CR LF   1225   CR LF
1258   CR LF   1226   CR LF
1259     // Insur e that the re is some thing to d isplay CR LF   1227     // Insur e that the re is some thing to d isplay CR LF
1260     // CR LF   1228     // CR LF
1261     if ((thi s.mSortedB y != null)  && CR LF   1229     if ((thi s.mSortedB y != null)  && CR LF
1262         (thi s.mEntries .length >  0)) CR LF   1230         (thi s.mEntries .length >  0)) CR LF
1263     { CR LF   1231     { CR LF
1264       MaxHTM LSegmentSi ze = WWHFr ame.WWHJav aScript.mM axHTMLSegm entSize; CR LF   1232       MaxHTM LSegmentSi ze = WWHFr ame.WWHJav aScript.mM axHTMLSegm entSize; CR LF
1265       this.m HTMLSegmen t.fReset() ; CR LF   1233       this.m HTMLSegmen t.fReset() ; CR LF
1266       BookLi st = WWHFr ame.WWHHel p.mBooks.m BookList; CR LF   1234       BookLi st = WWHFr ame.WWHHel p.mBooks.m BookList; CR LF
1267   CR LF   1235   CR LF
1268       // If  this is th e first en try, displ ay the hea ders and o pen the li st CR LF   1236       // If  this is th e first en try, displ ay the hea ders and o pen the li st CR LF
1269       // CR LF   1237       // CR LF
1270       if (th is.mDispla yIndex ==  0) CR LF   1238       if (th is.mDispla yIndex ==  0) CR LF
1271       { CR LF   1239       { CR LF
1272         HTML  = ""; CR LF   1240         HTML  = ""; CR LF
1273   CR LF   1241   CR LF
1274         HTML  += "<p><n obr><b>"; CR LF   1242         HTML  += "<p><n obr><b>"; CR LF
1275   CR LF   1243   CR LF
1276         // D isplay col umn header s CR LF   1244         // D isplay col umn header s CR LF
1277         // CR LF   1245         // CR LF
1278         if ( Settings.m bShowRank) CR LF   1246         if ( Settings.m bShowRank) CR LF
1279         { CR LF   1247         { CR LF
1280           HT ML += WWHF rame.WWHJa vaScript.m Messages.m SearchRank Label + "  "; CR LF   1248           HT ML += WWHF rame.WWHJa vaScript.m Messages.m SearchRank Label + "  "; CR LF
1281         } CR LF   1249         } CR LF
1282         HTML  += WWHFra me.WWHJava Script.mMe ssages.mSe archTitleL abel; CR LF   1250         HTML  += WWHFra me.WWHJava Script.mMe ssages.mSe archTitleL abel; CR LF
1283         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF   1251         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF
1284              (this.mSor tedBy == 1 ))    // B y Score CR LF   1252              (this.mSor tedBy == 1 ))    // B y Score CR LF
1285         { CR LF   1253         { CR LF
1286           HT ML += ", "  + WWHFram e.WWHJavaS cript.mMes sages.mSea rchBookLab el; CR LF   1254           HT ML += ", "  + WWHFram e.WWHJavaS cript.mMes sages.mSea rchBookLab el; CR LF
1287         } CR LF   1255         } CR LF
1288         HTML  += "</b>< /nobr></p> \n"; CR LF   1256         HTML  += "</b>< /nobr></p> \n"; CR LF
1289   CR LF   1257   CR LF
1290         HTML  += "<ol>\ n"; CR LF   1258         HTML  += "<ol>\ n"; CR LF
1291   CR LF   1259   CR LF
1292         this .mHTMLSegm ent.fAppen d(HTML); CR LF   1260         this .mHTMLSegm ent.fAppen d(HTML); CR LF
1293       } CR LF   1261       } CR LF
1294   CR LF   1262   CR LF
1295       // Dis play resul t entries CR LF   1263       // Dis play resul t entries CR LF
1296       // CR LF   1264       // CR LF
1297       MaxInd ex = this. mEntries.l ength; CR LF   1265       MaxInd ex = this. mEntries.l ength; CR LF
1298       Index  = this.mDi splayIndex ; CR LF   1266       Index  = this.mDi splayIndex ; CR LF
1299       while  ((this.mHT MLSegment. fSize() <  MaxHTMLSeg mentSize)  && CR LF   1267       while  ((this.mHT MLSegment. fSize() <  MaxHTMLSeg mentSize)  && CR LF
1300               (Index <  MaxIndex)) CR LF   1268               (Index <  MaxIndex)) CR LF
1301       { CR LF   1269       { CR LF
1302         HTML  = ""; CR LF   1270         HTML  = ""; CR LF
1303   CR LF   1271   CR LF
1304         Entr y = this.m Entries[In dex]; CR LF   1272         Entr y = this.m Entries[In dex]; CR LF
1305   CR LF   1273   CR LF
1306         // D isplay Boo k CR LF   1274         // D isplay Boo k CR LF
1307         // CR LF   1275         // CR LF
1308         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF   1276         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF
1309              (this.mSor tedBy == 2 ))    // B y BookInde x CR LF   1277              (this.mSor tedBy == 2 ))    // B y BookInde x CR LF
1310         { CR LF   1278         { CR LF
1311           if  (this.mBy BookDetect  == -2) CR LF   1279           if  (this.mBy BookDetect  == -2) CR LF
1312           { CR LF   1280           { CR LF
1313              // Do not  display bo ok titles CR LF   1281              // Do not  display bo ok titles CR LF
1314              // CR LF   1282              // CR LF
1315           } CR LF   1283           } CR LF
1316           el se if (thi s.mByBookD etect != E ntry.mBook Index) CR LF   1284           el se if (thi s.mByBookD etect != E ntry.mBook Index) CR LF
1317           { CR LF   1285           { CR LF
1318              // Close l ist for pr evious boo k CR LF   1286              // Close l ist for pr evious boo k CR LF
1319              // CR LF   1287              // CR LF
1320              if (Index  > 0) CR LF   1288              if (Index  > 0) CR LF
1321              { CR LF   1289              { CR LF
1322                HTML +=  "</ol>\n"; CR LF   1290                HTML +=  "</ol>\n"; CR LF
1323              } CR LF   1291              } CR LF
1324   CR LF   1292   CR LF
1325              HTML += "< p><nobr>&n bsp;</nobr ></p>"; CR LF   1293              HTML += "< p><nobr>&n bsp;</nobr ></p>"; CR LF
1326              HTML += "< p class=\" BookTitle\ "><nobr>"  + BookList [Entry.mBo okIndex].m Title + "< /nobr></p> "; CR LF   1294              HTML += "< p class=\" BookTitle\ "><nobr>"  + BookList [Entry.mBo okIndex].m Title + "< /nobr></p> "; CR LF
1327   CR LF   1295   CR LF
1328              this.mByBo okDetect =  Entry.mBo okIndex; CR LF   1296              this.mByBo okDetect =  Entry.mBo okIndex; CR LF
1329   CR LF   1297   CR LF
1330              // Open ne w list for  next book CR LF   1298              // Open ne w list for  next book CR LF
1331              // CR LF   1299              // CR LF
1332              HTML += "< ol>\n"; CR LF   1300              HTML += "< ol>\n"; CR LF
1333           } CR LF   1301           } CR LF
1334         } CR LF   1302         } CR LF
1335   CR LF   1303   CR LF
1336         // A ccessibili ty support CR LF   1304         // A ccessibili ty support CR LF
1337         // CR LF   1305         // CR LF
1338         if ( WWHFrame.W WHHelp.mbA ccessible) CR LF   1306         if ( WWHFrame.W WHHelp.mbA ccessible) CR LF
1339         { CR LF   1307         { CR LF
1340           Va rAccessibi lityTitle  = ""; CR LF   1308           Va rAccessibi lityTitle  = ""; CR LF
1341   CR LF   1309   CR LF
1342           //  Rank CR LF   1310           //  Rank CR LF
1343           // CR LF   1311           // CR LF
1344           if  (Settings .mbShowRan k) CR LF   1312           if  (Settings .mbShowRan k) CR LF
1345           { CR LF   1313           { CR LF
1346              VarPercent  = Math.fl oor((Entry .mScore /  this.mMaxS core) * 10 0); CR LF   1314              VarPercent  = Math.fl oor((Entry .mScore /  this.mMaxS core) * 10 0); CR LF
1347   CR LF   1315   CR LF
1348              // Some br owsers do  not allow  value attr ibutes to  be 0 CR LF   1316              // Some br owsers do  not allow  value attr ibutes to  be 0 CR LF
1349              // CR LF   1317              // CR LF
1350              if (VarPer cent < 1) CR LF   1318              if (VarPer cent < 1) CR LF
1351              { CR LF   1319              { CR LF
1352                VarPerce nt = 1; CR LF   1320                VarPerce nt = 1; CR LF
1353              } CR LF   1321              } CR LF
1354   CR LF   1322   CR LF
1355              VarAccessi bilityTitl e += WWHSt ringUtilit ies_Escape HTML(WWHFr ame.WWHJav aScript.mM essages.mS earchRankL abel + " "  + VarPerc ent + ", " ); CR LF   1323              VarAccessi bilityTitl e += WWHSt ringUtilit ies_Escape HTML(WWHFr ame.WWHJav aScript.mM essages.mS earchRankL abel + " "  + VarPerc ent + ", " ); CR LF
1356           } CR LF   1324           } CR LF
1357   CR LF   1325   CR LF
1358           //  Title CR LF   1326           //  Title CR LF
1359           // CR LF   1327           // CR LF
1360           Va rAccessibi lityTitle  += WWHStri ngUtilitie s_EscapeHT ML(WWHFram e.WWHJavaS cript.mMes sages.mSea rchTitleLa bel + " "  + Entry.mT itle); CR LF   1328           Va rAccessibi lityTitle  += WWHStri ngUtilitie s_EscapeHT ML(WWHFram e.WWHJavaS cript.mMes sages.mSea rchTitleLa bel + " "  + Entry.mT itle); CR LF
1361   CR LF   1329   CR LF
1362           //  Book CR LF   1330           //  Book CR LF
1363           // CR LF   1331           // CR LF
1364           if  (BookList .length >  1)  // Mor e than one  book exis ts CR LF   1332           if  (BookList .length >  1)  // Mor e than one  book exis ts CR LF
1365           { CR LF   1333           { CR LF
1366              VarAccessi bilityTitl e += WWHSt ringUtilit ies_Escape HTML(WWHFr ame.WWHHel p.mMessage s.mAccessi bilityList Separator  + " " + WW HFrame.WWH JavaScript .mMessages .mSearchBo okLabel +  " " + Book List[Entry .mBookInde x].mTitle) ; CR LF   1334              VarAccessi bilityTitl e += WWHSt ringUtilit ies_Escape HTML(WWHFr ame.WWHHel p.mMessage s.mAccessi bilityList Separator  + " " + WW HFrame.WWH JavaScript .mMessages .mSearchBo okLabel +  " " + Book List[Entry .mBookInde x].mTitle) ; CR LF
1367           } CR LF   1335           } CR LF
1368   CR LF   1336   CR LF
1369           Va rAccessibi lityTitle  = " title= \"" + VarA ccessibili tyTitle +  "\""; CR LF   1337           Va rAccessibi lityTitle  = " title= \"" + VarA ccessibili tyTitle +  "\""; CR LF
1370         } CR LF   1338         } CR LF
1371   CR LF   1339   CR LF
1372         // D isplay Ran k CR LF   1340         // D isplay Ran k CR LF
1373         // CR LF   1341         // CR LF
1374         if ( Settings.m bShowRank) CR LF   1342         if ( Settings.m bShowRank) CR LF
1375         { CR LF   1343         { CR LF
1376           Va rPercent =  Math.floo r((Entry.m Score / th is.mMaxSco re) * 100) ; CR LF   1344           Va rPercent =  Math.floo r((Entry.m Score / th is.mMaxSco re) * 100) ; CR LF
1377   CR LF   1345   CR LF
1378           //  Some brow sers do no t allow va lue attrib utes to be  0 CR LF   1346           //  Some brow sers do no t allow va lue attrib utes to be  0 CR LF
1379           // CR LF   1347           // CR LF
1380           if  (VarPerce nt < 1) CR LF   1348           if  (VarPerce nt < 1) CR LF
1381           { CR LF   1349           { CR LF
1382              VarPercent  = 1; CR LF   1350              VarPercent  = 1; CR LF
1383           } CR LF   1351           } CR LF
1384   CR LF   1352   CR LF
1385           HT ML += "<li  value=\""  + VarPerc ent + "\"> "; CR LF   1353           HT ML += "<li  value=\""  + VarPerc ent + "\"> "; CR LF
1386         } CR LF   1354         } CR LF
1387         else CR LF   1355         else CR LF
1388         { CR LF   1356         { CR LF
1389           HT ML += "<li >"; CR LF   1357           HT ML += "<li >"; CR LF
1390         } CR LF   1358         } CR LF
1391   CR LF   1359   CR LF
1392         // D isplay Tit le CR LF   1360         // D isplay Tit le CR LF
1393         // CR LF   1361         // CR LF
1394         HTML  += "<a hr ef=\"javas cript:fC("  + Index +  ");\"" +  this.fGetP opupAction (Index) +  VarAccessi bilityTitl e + ">"; CR LF   1362         HTML  += "<a hr ef=\"javas cript:fC("  + Index +  ");\"" +  this.fGetP opupAction (Index) +  VarAccessi bilityTitl e + ">"; CR LF
1395         HTML  += Entry. mTitle; CR LF   1363         HTML  += Entry. mTitle; CR LF
1396         HTML  += "</a>" ; CR LF   1364         HTML  += "</a>" ; CR LF
1397   CR LF   1365   CR LF
1398         // D isplay Boo k CR LF   1366         // D isplay Boo k CR LF
1399         // CR LF   1367         // CR LF
1400         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF   1368         if ( (BookList. length > 1 ) &&  // M ore than o ne book ex ists CR LF
1401              (this.mSor tedBy == 1 ))    // B y Score CR LF   1369              (this.mSor tedBy == 1 ))    // B y Score CR LF
1402         { CR LF   1370         { CR LF
1403           HT ML += ", "  + BookLis t[Entry.mB ookIndex]. mTitle; CR LF   1371           HT ML += ", "  + BookLis t[Entry.mB ookIndex]. mTitle; CR LF
1404         } CR LF   1372         } CR LF
1405   CR LF   1373   CR LF
1406         HTML  += "</li> \n"; CR LF   1374         HTML  += "</li> \n"; CR LF
1407   CR LF   1375   CR LF
1408         this .mHTMLSegm ent.fAppen d(HTML); CR LF   1376         this .mHTMLSegm ent.fAppen d(HTML); CR LF
1409   CR LF   1377   CR LF
1410         Inde x++; CR LF   1378         Inde x++; CR LF
1411       } CR LF   1379       } CR LF
1412   CR LF   1380   CR LF
1413       // Rec ord curren t display  index so w e can pick  up where  we left of f CR LF   1381       // Rec ord curren t display  index so w e can pick  up where  we left of f CR LF
1414       // CR LF   1382       // CR LF
1415       this.m DisplayInd ex = Index ; CR LF   1383       this.m DisplayInd ex = Index ; CR LF
1416       if (th is.mHTMLSe gment.fSiz e() > 0) CR LF   1384       if (th is.mHTMLSe gment.fSiz e() > 0) CR LF
1417       { CR LF   1385       { CR LF
1418         bSeg mentCreate d = true; CR LF   1386         bSeg mentCreate d = true; CR LF
1419       } CR LF   1387       } CR LF
1420   CR LF   1388   CR LF
1421       // If  this is th e last ent ry, close  the list CR LF   1389       // If  this is th e last ent ry, close  the list CR LF
1422       // CR LF   1390       // CR LF
1423       if (th is.mDispla yIndex ==  this.mEntr ies.length ) CR LF   1391       if (th is.mDispla yIndex ==  this.mEntr ies.length ) CR LF
1424       { CR LF   1392       { CR LF
1425         this .mHTMLSegm ent.fAppen d("</ol>\n "); CR LF   1393         this .mHTMLSegm ent.fAppen d("</ol>\n "); CR LF
1426       } CR LF   1394       } CR LF
1427     } CR LF   1395     } CR LF
1428   CR LF   1396   CR LF
1429     return b SegmentCre ated; CR LF   1397     return b SegmentCre ated; CR LF
1430   } CR LF   1398   } CR LF
1431   CR LF   1399   CR LF
1432   function   WWHSearchR esults_Get PopupActio n(ParamEnt ryIndex) CR LF   1400   function   WWHSearchR esults_Get PopupActio n(ParamEnt ryIndex) CR LF
1433   { CR LF   1401   { CR LF
1434     var  Pop upAction =  ""; CR LF   1402     var  Pop upAction =  ""; CR LF
1435   CR LF   1403   CR LF
1436   CR LF   1404   CR LF
1437     if (WWHF rame.WWHJa vaScript.m Settings.m HoverText. mbEnabled) CR LF   1405     if (WWHF rame.WWHJa vaScript.m Settings.m HoverText. mbEnabled) CR LF
1438     { CR LF   1406     { CR LF
1439       PopupA ction += "  onmouseov er=\"fS('"  + ParamEn tryIndex +  "', " + t his.mEvent String + " );\""; CR LF   1407       PopupA ction += "  onmouseov er=\"fS('"  + ParamEn tryIndex +  "', " + t his.mEvent String + " );\""; CR LF
1440       PopupA ction += "  onmouseou t=\"fH();\ ""; CR LF   1408       PopupA ction += "  onmouseou t=\"fH();\ ""; CR LF
1441     } CR LF   1409     } CR LF
1442   CR LF   1410   CR LF
1443     return P opupAction ; CR LF   1411     return P opupAction ; CR LF
1444   } CR LF   1412   } CR LF
1445   CR LF   1413   CR LF
1446   function   WWHSearchR esults_Sho wEntry(Par amIndex) CR LF   1414   function   WWHSearchR esults_Sho wEntry(Par amIndex) CR LF
1447   { CR LF   1415   { CR LF
1448     var  Ent ry; CR LF   1416     var  Ent ry; CR LF
1449     var  URL ; CR LF   1417     var  URL ; CR LF
1450   CR LF   1418   CR LF
1451   CR LF   1419   CR LF
1452     // Updat e highligh t words CR LF   1420     // Updat e highligh t words CR LF
1453     // CR LF   1421     // CR LF
1454     WWHFrame .WWHHighli ghtWords.f SetWordLis t(WWHStrin gUtilities _ParseWord sAndPhrase s(WWHFrame .WWHSearch .mSavedSea rchWords)) ; CR LF   1422     WWHFrame .WWHHighli ghtWords.f SetWordLis t(WWHStrin gUtilities _ParseWord sAndPhrase s(WWHFrame .WWHSearch .mSavedSea rchWords)) ; CR LF
1455   CR LF   1423   CR LF
1456     // Displ ay documen t CR LF   1424     // Displ ay documen t CR LF
1457     // CR LF   1425     // CR LF
1458     Entry =  this.mEntr ies[ParamI ndex]; CR LF   1426     Entry =  this.mEntr ies[ParamI ndex]; CR LF
1459     URL = WW HFrame.WWH Help.fGetB ookIndexFi leIndexURL (Entry.mBo okIndex, E ntry.mFile Index, nul l); CR LF   1427     URL = WW HFrame.WWH Help.fGetB ookIndexFi leIndexURL (Entry.mBo okIndex, E ntry.mFile Index, nul l); CR LF
1460     WWHFrame .WWHHelp.f SetDocumen tHREF(URL,  false); CR LF   1428     WWHFrame .WWHHelp.f SetDocumen tHREF(URL,  false); CR LF
1461   } CR LF   1429   } CR LF
1462   CR LF   1430   CR LF
1463   function   WWHSearchR esultsEntr y_Object(P aramBookIn dex, CR LF   1431   function   WWHSearchR esultsEntr y_Object(P aramBookIn dex, CR LF
1464                                             P aramFileIn dex, CR LF   1432                                             P aramFileIn dex, CR LF
1465                                             P aramScore, CR LF   1433                                             P aramScore, CR LF
1466                                             P aramTitle) CR LF   1434                                             P aramTitle) CR LF
1467   { CR LF   1435   { CR LF
1468     this.mBo okIndex =  ParamBookI ndex; CR LF   1436     this.mBo okIndex =  ParamBookI ndex; CR LF
1469     this.mFi leIndex =  ParamFileI ndex; CR LF   1437     this.mFi leIndex =  ParamFileI ndex; CR LF
1470     this.mSc ore     =  ParamScore ; CR LF   1438     this.mSc ore     =  ParamScore ; CR LF
1471     this.mTi tle     =  ParamTitle ; CR LF   1439     this.mTi tle     =  ParamTitle ; CR LF
1472   } CR LF   1440   } CR LF
1473   CR LF   1441   CR LF
1474   function   WWHSearchR esultsEntr y_ByScoreB yBookIndex ByTitleFil eIndexURL( ParamAlpha Entry, CR LF   1442   function   WWHSearchR esultsEntr y_ByScoreB yBookIndex ByTitleFil eIndexURL( ParamAlpha Entry, CR LF
1475                                                                                ParamBetaE ntry) CR LF   1443                                                                                ParamBetaE ntry) CR LF
1476   { CR LF   1444   { CR LF
1477     var  Res ult; CR LF   1445     var  Res ult; CR LF
1478   CR LF   1446   CR LF
1479   CR LF   1447   CR LF
1480     Result =  WWHSearch ResultsEnt ry_Compare ByScore(Pa ramAlphaEn try, Param BetaEntry) ; CR LF   1448     Result =  WWHSearch ResultsEnt ry_Compare ByScore(Pa ramAlphaEn try, Param BetaEntry) ; CR LF
1481     if (Resu lt == 0) CR LF   1449     if (Resu lt == 0) CR LF
1482     { CR LF   1450     { CR LF
1483       Result  = WWHSear chResultsE ntry_Compa reByBookIn dex(ParamA lphaEntry,  ParamBeta Entry); CR LF   1451       Result  = WWHSear chResultsE ntry_Compa reByBookIn dex(ParamA lphaEntry,  ParamBeta Entry); CR LF
1484     } CR LF   1452     } CR LF
1485     if (Resu lt == 0) CR LF   1453     if (Resu lt == 0) CR LF
1486     { CR LF   1454     { CR LF
1487       Result  = WWHSear chResultsE ntry_Compa reByTitleF ileIndexUR L(ParamAlp haEntry, P aramBetaEn try); CR LF   1455       Result  = WWHSear chResultsE ntry_Compa reByTitleF ileIndexUR L(ParamAlp haEntry, P aramBetaEn try); CR LF
1488     } CR LF   1456     } CR LF
1489   CR LF   1457   CR LF
1490     return R esult; CR LF   1458     return R esult; CR LF
1491   } CR LF   1459   } CR LF
1492   CR LF   1460   CR LF
1493   function   WWHSearchR esultsEntr y_ByBookIn dexByScore ByTitleFil eIndexURL( ParamAlpha Entry, CR LF   1461   function   WWHSearchR esultsEntr y_ByBookIn dexByScore ByTitleFil eIndexURL( ParamAlpha Entry, CR LF
1494                                                                                ParamBetaE ntry) CR LF   1462                                                                                ParamBetaE ntry) CR LF
1495   { CR LF   1463   { CR LF
1496     var  Res ult; CR LF   1464     var  Res ult; CR LF
1497   CR LF   1465   CR LF
1498   CR LF   1466   CR LF
1499     Result =  WWHSearch ResultsEnt ry_Compare ByBookInde x(ParamAlp haEntry, P aramBetaEn try); CR LF   1467     Result =  WWHSearch ResultsEnt ry_Compare ByBookInde x(ParamAlp haEntry, P aramBetaEn try); CR LF
1500     if (Resu lt == 0) CR LF   1468     if (Resu lt == 0) CR LF
1501     { CR LF   1469     { CR LF
1502       Result  = WWHSear chResultsE ntry_Compa reByScore( ParamAlpha Entry, Par amBetaEntr y); CR LF   1470       Result  = WWHSear chResultsE ntry_Compa reByScore( ParamAlpha Entry, Par amBetaEntr y); CR LF
1503     } CR LF   1471     } CR LF
1504     if (Resu lt == 0) CR LF   1472     if (Resu lt == 0) CR LF
1505     { CR LF   1473     { CR LF
1506       Result  = WWHSear chResultsE ntry_Compa reByTitleF ileIndexUR L(ParamAlp haEntry, P aramBetaEn try); CR LF   1474       Result  = WWHSear chResultsE ntry_Compa reByTitleF ileIndexUR L(ParamAlp haEntry, P aramBetaEn try); CR LF
1507     } CR LF   1475     } CR LF
1508   CR LF   1476   CR LF
1509     return R esult; CR LF   1477     return R esult; CR LF
1510   } CR LF   1478   } CR LF
1511   CR LF   1479   CR LF
1512   function   WWHSearchR esultsEntr y_CompareB yScore(Par amAlphaEnt ry, CR LF   1480   function   WWHSearchR esultsEntr y_CompareB yScore(Par amAlphaEnt ry, CR LF
1513                                                      Par amBetaEntr y) CR LF   1481                                                      Par amBetaEntr y) CR LF
1514   { CR LF   1482   { CR LF
1515     var  Res ult = 0; CR LF   1483     var  Res ult = 0; CR LF
1516   CR LF   1484   CR LF
1517   CR LF   1485   CR LF
1518     // Sort  by score CR LF   1486     // Sort  by score CR LF
1519     // CR LF   1487     // CR LF
1520     if (Para mAlphaEntr y.mScore <  ParamBeta Entry.mSco re) CR LF   1488     if (Para mAlphaEntr y.mScore <  ParamBeta Entry.mSco re) CR LF
1521     { CR LF   1489     { CR LF
1522       Result  = 1; CR LF   1490       Result  = 1; CR LF
1523     } CR LF   1491     } CR LF
1524     else if  (ParamAlph aEntry.mSc ore > Para mBetaEntry .mScore) CR LF   1492     else if  (ParamAlph aEntry.mSc ore > Para mBetaEntry .mScore) CR LF
1525     { CR LF   1493     { CR LF
1526       Result  = -1; CR LF   1494       Result  = -1; CR LF
1527     } CR LF   1495     } CR LF
1528   CR LF   1496   CR LF
1529     return R esult; CR LF   1497     return R esult; CR LF
1530   } CR LF   1498   } CR LF
1531   CR LF   1499   CR LF
1532   function   WWHSearchR esultsEntr y_CompareB yBookIndex (ParamAlph aEntry, CR LF   1500   function   WWHSearchR esultsEntr y_CompareB yBookIndex (ParamAlph aEntry, CR LF
1533                                                           ParamBeta Entry) CR LF   1501                                                           ParamBeta Entry) CR LF
1534   { CR LF   1502   { CR LF
1535     var  Res ult = 0; CR LF   1503     var  Res ult = 0; CR LF
1536   CR LF   1504   CR LF
1537   CR LF   1505   CR LF
1538     if (Para mAlphaEntr y.mBookInd ex < Param BetaEntry. mBookIndex ) CR LF   1506     if (Para mAlphaEntr y.mBookInd ex < Param BetaEntry. mBookIndex ) CR LF
1539     { CR LF   1507     { CR LF
1540       Result  = -1; CR LF   1508       Result  = -1; CR LF
1541     } CR LF   1509     } CR LF
1542     else if  (ParamAlph aEntry.mBo okIndex >  ParamBetaE ntry.mBook Index) CR LF   1510     else if  (ParamAlph aEntry.mBo okIndex >  ParamBetaE ntry.mBook Index) CR LF
1543     { CR LF   1511     { CR LF
1544       Result  = 1; CR LF   1512       Result  = 1; CR LF
1545     } CR LF   1513     } CR LF
1546   CR LF   1514   CR LF
1547     return R esult; CR LF   1515     return R esult; CR LF
1548   } CR LF   1516   } CR LF
1549   CR LF   1517   CR LF
1550   function   WWHSearchR esultsEntr y_CompareB yTitleFile IndexURL(P aramAlphaE ntry, CR LF   1518   function   WWHSearchR esultsEntr y_CompareB yTitleFile IndexURL(P aramAlphaE ntry, CR LF
1551                                                                   P aramBetaEn try) CR LF   1519                                                                   P aramBetaEn try) CR LF
1552   { CR LF   1520   { CR LF
1553     var  Res ult = 0; CR LF   1521     var  Res ult = 0; CR LF
1554     var  Boo kList; CR LF   1522     var  Boo kList; CR LF
1555     var  Alp haBookEntr y; CR LF   1523     var  Alp haBookEntr y; CR LF
1556     var  Bet aBookEntry ; CR LF   1524     var  Bet aBookEntry ; CR LF
1557     var  Alp haURL; CR LF   1525     var  Alp haURL; CR LF
1558     var  Bet aURL; CR LF   1526     var  Bet aURL; CR LF
1559   CR LF   1527   CR LF
1560   CR LF   1528   CR LF
1561     // Sort  by Title CR LF   1529     // Sort  by Title CR LF
1562     // CR LF   1530     // CR LF
1563     if (Para mAlphaEntr y.mTitle <  ParamBeta Entry.mTit le) CR LF   1531     if (Para mAlphaEntr y.mTitle <  ParamBeta Entry.mTit le) CR LF
1564     { CR LF   1532     { CR LF
1565       Result  = -1; CR LF   1533       Result  = -1; CR LF
1566     } CR LF   1534     } CR LF
1567     else if  (ParamAlph aEntry.mTi tle > Para mBetaEntry .mTitle) CR LF   1535     else if  (ParamAlph aEntry.mTi tle > Para mBetaEntry .mTitle) CR LF
1568     { CR LF   1536     { CR LF
1569       Result  = 1; CR LF   1537       Result  = 1; CR LF
1570     } CR LF   1538     } CR LF
1571     // Sort  by FileInd ex CR LF   1539     // Sort  by FileInd ex CR LF
1572     // CR LF   1540     // CR LF
1573     else if  (ParamAlph aEntry.mFi leIndex <  ParamBetaE ntry.mFile Index) CR LF   1541     else if  (ParamAlph aEntry.mFi leIndex <  ParamBetaE ntry.mFile Index) CR LF
1574     { CR LF   1542     { CR LF
1575       Result  = -1; CR LF   1543       Result  = -1; CR LF
1576     } CR LF   1544     } CR LF
1577     else if  (ParamAlph aEntry.mFi leIndex >  ParamBetaE ntry.mFile Index) CR LF   1545     else if  (ParamAlph aEntry.mFi leIndex >  ParamBetaE ntry.mFile Index) CR LF
1578     { CR LF   1546     { CR LF
1579       Result  = 1; CR LF   1547       Result  = 1; CR LF
1580     } CR LF   1548     } CR LF
1581     // Sort  by URL CR LF   1549     // Sort  by URL CR LF
1582     // CR LF   1550     // CR LF
1583     else CR LF   1551     else CR LF
1584     { CR LF   1552     { CR LF
1585       BookLi st = WWHFr ame.WWHHel p.mBooks.m BookList; CR LF   1553       BookLi st = WWHFr ame.WWHHel p.mBooks.m BookList; CR LF
1586   CR LF   1554   CR LF
1587       AlphaB ookEntry =  BookList[ ParamAlpha Entry.mBoo kIndex]; CR LF   1555       AlphaB ookEntry =  BookList[ ParamAlpha Entry.mBoo kIndex]; CR LF
1588       BetaBo okEntry  =  BookList[ ParamBetaE ntry.mBook Index]; CR LF   1556       BetaBo okEntry  =  BookList[ ParamBetaE ntry.mBook Index]; CR LF
1589   CR LF   1557   CR LF
1590       AlphaU RL = WWHFr ame.WWHHel p.mBaseURL  + AlphaBo okEntry.mD irectory +  AlphaBook Entry.mFil es.fFileIn dexToHREF( ParamAlpha Entry.mFil eIndex); CR LF   1558       AlphaU RL = WWHFr ame.WWHHel p.mBaseURL  + AlphaBo okEntry.mD irectory +  AlphaBook Entry.mFil es.fFileIn dexToHREF( ParamAlpha Entry.mFil eIndex); CR LF
1591       BetaUR L  = WWHFr ame.WWHHel p.mBaseURL  + BetaBoo kEntry.mDi rectory +  BetaBookEn try.mFiles .fFileInde xToHREF(Pa ramBetaEnt ry.mFileIn dex); CR LF   1559       BetaUR L  = WWHFr ame.WWHHel p.mBaseURL  + BetaBoo kEntry.mDi rectory +  BetaBookEn try.mFiles .fFileInde xToHREF(Pa ramBetaEnt ry.mFileIn dex); CR LF
1592   CR LF   1560   CR LF
1593       if (Al phaURL < B etaURL) CR LF   1561       if (Al phaURL < B etaURL) CR LF
1594       { CR LF   1562       { CR LF
1595         Resu lt = -1; CR LF   1563         Resu lt = -1; CR LF
1596       } CR LF   1564       } CR LF
1597       else i f (AlphaUR L > BetaUR L) CR LF   1565       else i f (AlphaUR L > BetaUR L) CR LF
1598       { CR LF   1566       { CR LF
1599         Resu lt = 1; CR LF   1567         Resu lt = 1; CR LF
1600       } CR LF   1568       } CR LF
1601     } CR LF   1569     } CR LF
1602   CR LF   1570   CR LF
1603     return R esult; CR LF   1571     return R esult; CR LF
1604   } CR LF   1572   } CR LF