if (str.length() > 20)
str = str.substring(0, 20) + "..";
return "Find origin of '" + str + "'";
}
};
findOriginLink = new LabeledLink("findOriginLink", null, qModel, false) {
@Override
public void onClick(AjaxRequestTarget target) {
PageParameters pp = new PageParameters();
pp.add("findOrigin", query);
setResponsePage(TweetSearchPage.class, pp);
}
};
add(findOriginLink);
translateAllLink = new LabeledLink("translateAllLink", null, new Model<String>() {
@Override
public String getObject() {
if (translateAll)
return "Show original language";
else
// get english name of iso language chars
return "Translate tweets into " + new Locale(toLanguage).getDisplayLanguage(new Locale("en"));
}
}) {
@Override
public void onClick(AjaxRequestTarget target) {
if (target == null)
return;
translateAll = !translateAll;
if (!translateAll)
translateMap.clear();
target.addComponent(ResultsPanel.this);
}
};
add(translateAllLink);
add(createSortLink("sortRelevance", ElasticTweetSearch.RELEVANCE, "desc"));
add(createSortLink("sortRetweets", ElasticTweetSearch.RT_COUNT, "desc"));
add(createSortLink("sortLatest", ElasticTweetSearch.DATE, "desc"));
add(createSortLink("sortOldest", ElasticTweetSearch.DATE, "asc"));
add(new DialogUtilsBehavior());
userView = new ListView("users", users) {
@Override
public void populateItem(final ListItem item) {
final JUser user = (JUser) item.getModelObject();
String name = user.getScreenName();
if (user.getRealName() != null)
name = user.getRealName() + " (" + name + ")";
LabeledLink userNameLink = new LabeledLink("userNameLink", name, false) {
@Override
public void onClick(AjaxRequestTarget target) {
onUserClick(user.getScreenName(), null);
}