1 package com.atlassian.jira.web.dwr;
2
3 import org.apache.log4j.Logger;
4 import org.ofbiz.core.entity.GenericValue;
5
6 import com.atlassian.jira.bc.manageable.search.ManageableAsProjectPickerSearchService;
7 import com.atlassian.jira.config.properties.ApplicationProperties;
8 import com.atlassian.jira.security.JiraAuthenticationContext;
9 import com.atlassian.jira.util.DelimeterInserter;
10 import com.opensymphony.util.TextUtils;
11
12 public class AjaxManageableAsProjectPicker extends AbstractAjaxPicker {
13 private static final Logger log = Logger.getLogger(AjaxManageableAsProjectPicker.class);
14
15
16
17
18
19
20
21
22
23
24
25 public AjaxManageableAsProjectPicker(JiraAuthenticationContext _authContext, ManageableAsProjectPickerSearchService _service, ApplicationProperties _applicationProperties) {
26 super(_authContext, _service, _applicationProperties);
27 }
28
29
30
31
32 protected String formatEntity(String fieldName, GenericValue _gv, String query)
33 {
34
35 DelimeterInserter delimeterInserter = new DelimeterInserter("<b>", "</b>",false);
36
37
38 String[] terms = { query };
39
40 String id = TextUtils.htmlEncode(_gv.get("id").toString());
41 String diId = delimeterInserter.insert(TextUtils.htmlEncode(id), terms);
42 String diShortDescription = delimeterInserter.insert(TextUtils.htmlEncode(_gv.getString("shortDescr")), terms);
43 String diDescription = delimeterInserter.insert(TextUtils.htmlEncode(_gv.getString("description")), terms);
44
45 StringBuffer sb = new StringBuffer();
46 sb.append("<div ");
47 sb.append(getElementId(fieldName, "i", TextUtils.htmlEncode(id)));
48 sb.append("class=\"yad\" >");
49
50 sb.append("[").append(diId).append("] - ").append(diShortDescription).append(" - ").append(diDescription);
51 sb.append("</div>");
52
53 return sb.toString();
54 }
55
56 }