/** * @param parent Only for i18n needed. * @param startTime Start time or null. * @param stopTime Stop time or null. * @return The weeks of year range for the given start an stop time. */ public static String getCalendarWeeks( final MarkupContainer parent, final Date startTime, final Date stopTime) { int fromWeek = -1; int toWeek = -1; if (startTime != null) { fromWeek = DateHelper.getWeekOfYear(startTime); } if (stopTime != null) { toWeek = DateHelper.getWeekOfYear(stopTime); } if (fromWeek < 0 && toWeek < 0) { return ""; } final StringBuffer buf = new StringBuffer(); buf.append(parent.getString("calendar.weekOfYearShortLabel")).append(" "); if (fromWeek >= 0) { buf.append(StringHelper.format2DigitNumber(fromWeek)); if (toWeek == -1) { buf.append("-"); } else if (toWeek != fromWeek) { buf.append("-").append(StringHelper.format2DigitNumber(toWeek)); } } else { buf.append("-").append(StringHelper.format2DigitNumber(toWeek)); } return buf.toString(); }
public String objectToString(final Object object) { if (object == null || object instanceof String == false) { return ""; } final String number = (String) object; return number + '|' + StringHelper.removeNonDigits(number) + '|' + NumberHelper.extractPhonenumber(number); }
/** * For field-sets with multiple fields this method generates a multi label, such as * "label1/label2", e. g. "zip code/city". * * @param label * @return */ public static String createMultipleFieldsetLabel(final String... labels) { return StringHelper.listToString("/", labels); }
private void callNow() { if (StringUtils.isBlank(ConfigXml.getInstance().getTelephoneSystemUrl()) == true) { log.error("Telephone system url not configured. Phone calls not supported."); return; } log.info( "User initiates direct call from phone with id '" + form.getMyCurrentPhoneId() + "' to destination numer: " + StringHelper.hideStringEnding(form.getPhoneNumber(), 'x', 3)); result = null; final StringBuffer buf = new StringBuffer(); buf.append(form.getPhoneNumber()).append(SEPARATOR); final AddressDO address = form.getAddress(); if (address != null && StringHelper.isIn( form.getPhoneNumber(), extractPhonenumber(address.getBusinessPhone()), extractPhonenumber(address.getMobilePhone()), extractPhonenumber(address.getPrivatePhone()), extractPhonenumber(address.getPrivateMobilePhone())) == true) { buf.append(address.getFirstName()).append(" ").append(address.getName()); if (form.getPhoneNumber().equals(extractPhonenumber(address.getMobilePhone())) == true) { buf.append(", ").append(getString("address.phoneType.mobile")); } else if (form.getPhoneNumber().equals(extractPhonenumber(address.getPrivatePhone())) == true) { buf.append(", ").append(getString("address.phoneType.private")); } buf.append(" #").append(address.getId()); } else { buf.append("???"); } final HttpClient client = new HttpClient(); String url = ConfigXml.getInstance().getTelephoneSystemUrl(); url = StringUtils.replaceOnce(url, "#source", form.getMyCurrentPhoneId()); url = StringUtils.replaceOnce(url, "#target", form.getPhoneNumber()); final String urlProtected = StringHelper.hideStringEnding(url, 'x', 3); final GetMethod method = new GetMethod(url); String errorKey = null; try { form.lastSuccessfulPhoneCall = new Date(); client.executeMethod(method); final String resultStatus = method.getResponseBodyAsString(); if ("0".equals(resultStatus) == true) { result = DateTimeFormatter.instance().getFormattedDateTime(new Date()) + ": " + getString("address.phoneCall.result.successful"); form.getRecentSearchTermsQueue().append(buf.toString()); } else if ("2".equals(resultStatus) == true) { errorKey = "address.phoneCall.result.wrongSourceNumber"; } else if ("3".equals(resultStatus) == true) { errorKey = "address.phoneCall.result.wrongDestinationNumber"; } else { errorKey = "address.phoneCall.result.callingError"; } } catch (final HttpException ex) { result = "Call failed. Please contact administrator."; log.fatal(result + ": " + urlProtected); throw new RuntimeException(ex); } catch (final IOException ex) { result = "Call failed. Please contact administrator."; log.fatal(result + ": " + urlProtected); throw new RuntimeException(ex); } if (errorKey != null) { form.addError(errorKey); } }