@Override
public Object format(TemplateContext templateContext, Object data, Map<String, String> parameters) {
String text = String.valueOf(data);
- int length = -1;
- try {
- length = Integer.parseInt(parameters.get("length"));
- } catch (NumberFormatException nfe1) {
- /* ignore. */
- }
- if ((length == -1) && (parameters.get("length") != null)) {
- try {
- length = Integer.parseInt(String.valueOf(templateContext.get(parameters.get("length"))));
- } catch (NumberFormatException nfe1) {
- /* ignore. */
- }
- }
+ int length = Numbers.safeParseInteger(parameters.get("length"), Numbers.safeParseInteger(templateContext.get(parameters.get("length")), -1));
String soneKey = parameters.get("sone");
if (soneKey == null) {
soneKey = "sone";
* The part to render
*/
private void render(Writer writer, SonePart sonePart) {
- renderLink(writer, "viewSone.html?sone=" + sonePart.getSone().getId(), SoneAccessor.getNiceName(sonePart.getSone()), SoneAccessor.getNiceName(sonePart.getSone()), "in-sone");
+ if ((sonePart.getSone() != null) && (sonePart.getSone().getName() != null)) {
+ renderLink(writer, "viewSone.html?sone=" + sonePart.getSone().getId(), SoneAccessor.getNiceName(sonePart.getSone()), SoneAccessor.getNiceName(sonePart.getSone()), "in-sone");
+ } else {
+ renderLink(writer, "/WebOfTrust/ShowIdentity?id=" + sonePart.getSone().getId(), sonePart.getSone().getId(), sonePart.getSone().getId(), "in-sone");
+ }
}
/**