Skip to content

Commit

Permalink
AER-1322 - Fix regex errors (#30)
Browse files Browse the repository at this point in the history
* Use internationalised aria

* Escape the regex

* Remove the backslash completely from the query
  • Loading branch information
JornC authored Jan 30, 2023
1 parent f030b1c commit b144bad
Show file tree
Hide file tree
Showing 6 changed files with 14 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
v-show="hasQuery"
ref="resultsContainer"
:style='map("maxHeight", maxHeight)'
aria-label="search results"
:aria-label="i18n.ariaSearchResults()"
role="tree">
<vertical-collapse-group>
<div v-for="Entry entry in results.entrySet()"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,9 @@ public String highlight(final String plain) {
}

public static native String boldenText(String txt, String query) /*-{
var reg = new RegExp('(' + query + ')', 'gi');
// Taken from https://stackoverflow.com/a/6969486
let escapedQuery = query.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
let reg = new RegExp('(' + escapedQuery + ')', 'gi');
return txt.replace(reg, '<b>$1</b>');
}-*/;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
import com.google.gwt.i18n.client.Messages;

public interface SearchMessages extends Messages {
String ariaSearchResults();

String searchButtonAria();

String searchInputFieldAria();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
ariaSearchResults = Zoekresultaten
searchButtonAria = Open search popup
searchInputFieldAria = Zoektekst
searchInputFieldPlaceholder = Zoeken op de kaart...
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
ariaSearchResults = Search results
searchButtonAria = Open search popup
searchInputFieldAria = Search query
searchInputFieldPlaceholder = Search on the map
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ public class SearchServiceAsyncImpl implements SearchServiceAsync {
public void retrieveSearchResults(final String query, final Set<SearchCapability> capabilities, final String region,
final AsyncCallback<SearchSuggestion[]> callback) {
final String url = InteropRequestUtil.prepareUrl(cfg.getSearchEndpoint(), QUERY_FORMAT,
":query", query,
":query", escapeQuery(query),
":capabilities", capabilities.stream().map(SearchCapability::name).collect(Collectors.joining(",")),
":region", region);

Expand All @@ -56,14 +56,18 @@ public void startSearchQuery(final String query, final Set<SearchCapability> cap
final String method = cancel == null ? QUERY_ASYNC_FORMAT : QUERY_ASYNC_CANCEL_FORMAT;

final String url = InteropRequestUtil.prepareUrl(cfg.getSearchEndpoint(), method,
":query", query,
":query", escapeQuery(query),
":capabilities", capabilities.stream().map(SearchCapability::name).collect(Collectors.joining(",")),
":region", region,
":cancel", cancel);

InteropRequestUtil.doGet(url, callback);
}

public static String escapeQuery(final String query) {
return query.replace("\\", "");
}

@Override
public void retrieveSearchResults(final String uuid, final AsyncCallback<SearchResult> callback) {
final String url = InteropRequestUtil.prepareUrl(cfg.getSearchEndpoint(), RESULT_FORMAT,
Expand Down

0 comments on commit b144bad

Please sign in to comment.