* параметры поиска.
* @return Выбранный фильм.
*/
public SelectPageView getSelectPageViewWithResult(QueryParamsMap queryMap)
{
SelectPageView selectPageView = getSelectPageView();
List<DBObject> searchResult = dao.findBySearchCriteria(queryMap);
ListPageServiceImpl listPageService = new ListPageServiceImpl(db);
ListPageView listPageView = listPageService.getView(searchResult);
// выделить в тексте искомую строку
if (queryMap.get("descriptions").hasValue())
{
String search = queryMap.get("descriptions").values()[0];
for (FilmsView filmsView : listPageView.getFilmsView())
{
String description = filmsView.getDescription();
String marked = description.replaceAll(search, "<span class='marked'>" + search + "</span>");
filmsView.setDescription(marked);
}
}
selectPageView.setSearchResults(listPageView.getFilmsView());
return selectPageView;
}