Skip to content

Commit

Permalink
[569058] Special character handling in search index (#81)
Browse files Browse the repository at this point in the history
* [569058] Special character handling in search index

- Fix special characters handling in search index search field

Change-Id: Icf4162ec4f6cb300beb5856b1ffb3fc4509625fd
Signed-off-by: Arnaud Dieumegard <[email protected]>
  • Loading branch information
arnauddieumegard authored Nov 24, 2020
1 parent b0d5b7b commit ac32993
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 52 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
//Generated with EGF 1.6.1.201906060805
//Generated with EGF 1.6.2.202001031546
package org.polarsys.kitalpha.doc.gen.business.core.searchIndex;

import java.util.Map.Entry;
Expand Down Expand Up @@ -44,8 +44,8 @@ public static synchronized SearchIndex create(String lineSeparator) {
+ "\t\t\taddedConceptCount = addedConceptCount + 255;" + NL + "\t\t} " + NL;
protected final String TEXT_5 = NL + "\t\tconceptsList[";
protected final String TEXT_6 = "][";
protected final String TEXT_7 = "][0] = \"";
protected final String TEXT_8 = "\";" + NL + "\t\tconceptsList[";
protected final String TEXT_7 = "][0] = encodeURIComponent(\"";
protected final String TEXT_8 = "\");" + NL + "\t\tconceptsList[";
protected final String TEXT_9 = "][1] = \"";
protected final String TEXT_10 = "\";" + NL + "\t\t";
protected final String TEXT_11 = "][2] = \"";
Expand All @@ -55,13 +55,13 @@ public static synchronized SearchIndex create(String lineSeparator) {
+ "\t var element = document.getElementById('possible_keywords');" + NL + "\t var t = \"\";" + NL
+ "\t for (x=0; x < tabCount; x++){" + NL + "\t\t \tvar concepts = conceptsList[x];" + NL
+ "\t \tfor(i=0;i<concepts.length;i++) {" + NL
+ "\t \t\tvar index = concepts[i][0].toLowerCase().indexOf(value.toLowerCase());" + NL
+ "\t \t\tif(index != -1) {" + NL + "\t\t \t\tvar value2 = concepts[i][0];" + NL
+ "\t \t\tvar index = concepts[i][0].toLowerCase().indexOf(encodeURIComponent(value).toLowerCase());"
+ NL + "\t \t\tif(index != -1) {" + NL + "\t\t \t\tvar value2 = concepts[i][0];" + NL
+ "\t \t\t\tvar value3 = concepts[i][1];" + NL + "\t \t\t\tvar value4 = concepts[i][2]; //icon"
+ NL + "\t \t\t\tif (value4 === undefined) {" + NL
+ "\t \t\t\t\tt = t.concat(\" <a href='concepts/\" + value3 + \".html' target='content'>\" + value2 + \"</a><br/>\");"
+ "\t \t\t\t\tt = t.concat(\" <a href='concepts/\" + value3 + \".html' target='content'>\" + decodeURIComponent(value2) + \"</a><br/>\");"
+ NL + "\t \t\t\t} else {" + NL
+ "\t \t\t\t\tt = t.concat(value4 + \" <a href='concepts/\" + value3 + \".html' target='content'>\" + value2 + \"</a><br/>\");"
+ "\t \t\t\t\tt = t.concat(value4 + \" <a href='concepts/\" + value3 + \".html' target='content'>\" + decodeURIComponent(value2) + \"</a><br/>\");"
+ NL + "\t \t\t\t}\t \t\t" + NL + "\t \t\t}" + NL + "\t \t}" + NL + "\t }" + NL
+ "\t " + NL + "\t $(\"#p2\").html(t);" + NL + "\t if (element != null) {" + NL
+ "\t \telement.value = value;" + NL + "\t }" + NL + "\t }).keyup();" + NL + "\t " + NL
Expand Down Expand Up @@ -137,7 +137,7 @@ protected void method_content(final StringBuffer stringBuffer, final PatternCont
stringBuffer.append(count);
stringBuffer.append(TEXT_7);
stringBuffer.append(EscapeChars
.removeNewline(EscapeChars.forHTML(entry.getValue().getConceptName().replace("\"", "\\\""))));
.removeNewline(entry.getValue().getConceptName().replace("\\", "\\\\").replace("\"", "\\\"")));
stringBuffer.append(TEXT_8);
stringBuffer.append(listCount);
stringBuffer.append(TEXT_6);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -508,7 +508,7 @@ private void indexPage(Map<String, IndexItem> indexItems, IFile file)
while (mTable.find())
{
for (Entry<String, IndexItem> entry : indexItems.entrySet()) {
String currentConcept_html = EscapeChars.forHTML(entry.getValue().getConceptName());
String currentConcept_html = entry.getValue().getEscapedForHTMLConceptName();
for (int i = 1; i <= mTable.groupCount(); i++) {
String listGroup = mTable.group(i);
if (listGroup.contains(currentConcept_html)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ int i = 0;
for(Entry<String, IndexItem> entry : indexItems.entrySet()) {
i++;
%>
conceptsList[<%=listCount%>][<%=count%>][0] = "<%=EscapeChars.removeNewline(EscapeChars.forHTML(entry.getValue().getConceptName().replace("\"", "\\\"")))%>";
conceptsList[<%=listCount%>][<%=count%>][0] = encodeURIComponent("<%=EscapeChars.removeNewline(entry.getValue().getConceptName().replace("\\", "\\\\").replace("\"", "\\\""))%>");
conceptsList[<%=listCount%>][<%=count%>][1] = "<%=i+"_"+DocGenHtmlUtil.getValidFileName(entry.getValue().getConceptName())%>";
<% if (entry.getValue().getIconTag() != null && !entry.getValue().getIconTag().isEmpty()) { %>
conceptsList[<%=listCount%>][<%=count%>][2] = "<%= entry.getValue().getIconTag().replaceAll("\"", "'").replaceFirst("../", "") %>";
Expand All @@ -76,15 +76,15 @@ for(Entry<String, IndexItem> entry : indexItems.entrySet()) {
for (x=0; x < tabCount; x++){
var concepts = conceptsList[x];
for(i=0;i<concepts.length;i++) {
var index = concepts[i][0].toLowerCase().indexOf(value.toLowerCase());
var index = concepts[i][0].toLowerCase().indexOf(encodeURIComponent(value).toLowerCase());
if(index != -1) {
var value2 = concepts[i][0];
var value3 = concepts[i][1];
var value4 = concepts[i][2]; //icon
if (value4 === undefined) {
t = t.concat(" <a href='concepts/" + value3 + ".html' target='content'>" + value2 + "</a><br/>");
t = t.concat(" <a href='concepts/" + value3 + ".html' target='content'>" + decodeURIComponent(value2) + "</a><br/>");
} else {
t = t.concat(value4 + " <a href='concepts/" + value3 + ".html' target='content'>" + value2 + "</a><br/>");
t = t.concat(value4 + " <a href='concepts/" + value3 + ".html' target='content'>" + decodeURIComponent(value2) + "</a><br/>");
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Element-Name: indexesVerification
Element-Type: verification
Element-Version: 2.0
Id: _ADomsCNXEeu9mdq5tbB1Yw
Save-Time: 11/10/20, 2:19 PM
Save-Time: 11/24/20, 1:54 PM
Verification-Type: org.eclipse.rcptt.verifications.workspace

------=_contents/org.eclipse.emf.ecore.doc/output/output/index.html-770447c8-8db6-3fd5-9653-0c2fd2a92ef1
Expand Down Expand Up @@ -38,41 +38,42 @@ bnRVVAUAAQAAAABQSwUGAAAAAAEAAQA/AAAAcAEAAAAA
Content-Type: q7/binary
Entry-Name: contents/org.eclipse.emf.ecore.doc/output/output/ecore/searchIndex.html

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
AAAA
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
AAEAPwAAAOwHAAAAAA==
------=_contents/org.eclipse.emf.ecore.doc/output/output/ecore/searchIndex.html-984b1e83-fd6c-3ac4-ba3b-f57c9b8a33e8--
------=_contents/org.eclipse.emf.ecore.doc/output/output/modelindex.html-19804eee-a482-31c9-858b-b2453a24714a
Content-Type: q7/binary
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ Element-Type: testcase
Element-Version: 3.0
External-Reference:
Id: _CRo1AHW9Eea2Ve0UEUBuKQ
Runtime-Version: 2.1.0.201606221726
Save-Time: 12/12/17 2:24 PM
Save-Time: 11/24/20, 2:08 PM
Testcase-Type: ecl

------=_.description-216f885c-d591-38ce-8ea2-e4f8cb4d6ffa
Expand Down Expand Up @@ -80,7 +79,7 @@ get-view "Project Explorer" | get-tree
| select "org.polarsys.kitalpha.vp.componentsample.runtime.model/model/VideoOnDemand.aird" | get-menu Open | click
with [get-view "Project Explorer" | get-tree] {
get-item "org.polarsys.kitalpha.vp.componentsample.runtime.model/model/VideoOnDemand.aird"
| get-property childCount | equals 3 | verify-true
| get-property childCount | equals 4 | verify-true
get-item "org.polarsys.kitalpha.vp.componentsample.runtime.model/model/VideoOnDemand.aird/VideoOnDemand.afm - \\[platform:\\/resource\\/org.polarsys.kitalpha.vp.componentsample.runtime.model\\/model\\/VideoOnDemand.afm\\]/Metadata _C6TcsHWrEeaTEc45KkXUqA"
| get-property childCount | equals 3 | verify-true
}
Expand Down

0 comments on commit ac32993

Please sign in to comment.