List of usage examples for org.springframework.web.servlet.support RequestContext getMessage
public String getMessage(MessageSourceResolvable resolvable) throws NoSuchMessageException
From source file:gov.nih.nci.calims2.taglib.form.OptionManager.java
/** * Generates a new Option object for the given option that may be of any class. * /*from w ww . j a v a 2 s . c om*/ * @param option The given option * @param requestContext The current request context. * @return The new Option generated. */ Option getOptionForOption(Object option, RequestContext requestContext) { if (option instanceof Option) { Option newOption = ((Option) option).clone(); if (newOption.getLabelKey() != null) { newOption.setLabel(requestContext.getMessage(newOption.getLabelKey())); } return newOption; } if (option instanceof I18nEnumeration) { I18nEnumeration enumValue = (I18nEnumeration) option; return new Option(enumValue.getName(), enumValue.getLocalizedValue(requestContext.getLocale())); } BeanWrapper wrapper = PropertyAccessorFactory.forBeanPropertyAccess(option); return new Option(wrapper.getPropertyValue(idProperty).toString(), wrapper.getPropertyValue(labelProperty).toString()); }
From source file:org.openmrs.module.web.taglib.ExtensionPopupMenuTag.java
public int doStartTag() throws JspException { if (showLabelIfNoExtensions == null) { showLabelIfNoExtensions = true;//from w w w.j a va 2 s. c o m } // using this as we'd use MessageSourceAccessor RequestContext context = new RequestContext((HttpServletRequest) this.pageContext.getRequest()); boolean below = !"above".equals(position); Map<String, String> parameters = new HashMap<String, String>(); if (this.parameters != null) { parameters.putAll(OpenmrsUtil.parseParameterList(this.parameters)); } StringBuilder sb = new StringBuilder(); sb.append("<span style=\"position: relative\">"); if (below) { sb.append("<div id=\"" + popupDivId + "\" style=\"width: 35em; border: 1px solid black; background-color: #f0f0a0; position: absolute; top: 0px; padding-right: 1.2em; z-index: 1; display: none\">"); } else { sb.append("<div id=\"" + popupDivId + "\" style=\"width: 35em; border: 1px solid black; background-color: #f0f0a0; position: absolute; bottom: 0px; padding-right: 1.2em; z-index: 1; display: none\">"); } sb.append("<div style=\"float: right\"><a href=\"javascript:hideLayer('" + popupDivId + "');\" >[" + context.getMessage("general.close") + "]</a></div>"); sb.append("<ul>"); boolean anyExtensionsFound = false; List<Extension> extensions = ModuleFactory.getExtensions(pointId, Extension.MEDIA_TYPE.html); for (Extension e : extensions) { if (e instanceof LinkProviderExtension) { anyExtensionsFound = true; LinkProviderExtension extension = (LinkProviderExtension) e; List<Link> links = extension.getLinks(); log.debug("extension of class " + e.getClass() + " provides " + links.size() + " links"); for (Link link : links) { String url = link.getUrl(); log.debug("url = " + url); StringBuilder hiddenVars = new StringBuilder(); Map<String, String> javascriptSubstitutions = new HashMap<String, String>(); for (Map.Entry<String, String> entry : link.getQueryParameters().entrySet()) { hiddenVars.append("<input type=\"hidden\" name=\"" + entry.getKey() + "\" value=\"" + entry.getValue() + "\"/>\n"); } for (Map.Entry<String, String> entry : parameters.entrySet()) { hiddenVars.append("<input type=\"hidden\" name=\"" + entry.getKey() + "\" "); if (entry.getValue().startsWith("javascript:")) { String function = entry.getValue(); function = function.substring(function.indexOf(":") + 1); String random = randomString(); javascriptSubstitutions.put(random, function); hiddenVars.append("id=\"" + random + "\" value=\"\""); } else { hiddenVars.append("value=\"" + entry.getValue() + "\""); } hiddenVars.append("/>\n"); } String formId = randomString(); StringBuilder onClick = new StringBuilder(); if (javascriptSubstitutions.size() > 0) { onClick.append(" var _popup_tmp = ''; "); } for (Map.Entry<String, String> entry : javascriptSubstitutions.entrySet()) { String id = entry.getKey(); String function = entry.getValue(); onClick.append(" _popup_tmp = " + function + "; if (_popup_tmp == null) return; document.getElementById('" + id + "').value = _popup_tmp; "); } onClick.append("document.getElementById('" + formId + "').submit();"); sb.append("<li>"); sb.append("<form id=\"" + formId + "\" method=\"post\" action=\"" + url + "\">\n"); sb.append(hiddenVars); sb.append("\n<a href=\"#\" onClick=\"javascript:" + onClick + "\">" + context.getMessage(link.getLabel(), link.getLabel()) + "</a>"); if (link.getDescription() != null) { sb.append("<br/><small>" + context.getMessage(link.getDescription(), link.getDescription()) + "</small>"); } sb.append("</form>"); sb.append("</li>"); } } } if (!anyExtensionsFound) { sb.append("<li>" + context.getMessage("general.none") + "</li>"); } sb.append("</ul>"); sb.append("</div>"); sb.append("</span>"); sb.append("<a href=\"#\" onClick=\"toggleLayer('" + popupDivId + "')\" style=\"border: 1px black solid\">" + context.getMessage(label, label) + "</a>"); try { if (anyExtensionsFound || showLabelIfNoExtensions) { pageContext.getOut().print(sb); } } catch (IOException ex) { throw new JspException(ex); } resetValues(); return SKIP_BODY; }