@Override
            public String getValue(final LogContext context) {

                final boolean increment;
                increment = null == context.logEntry || context.logEntry.logType == LogType.FOUND_IT || context.logEntry.logType == LogType.ATTENDED || context.logEntry.logType == LogType.WEBCAM_PHOTO_TAKEN;

                final Geocache cache = context.getCache();
                if (cache == null || !(ConnectorFactory.getConnector(cache) instanceof ILogin)) {
                    return StringUtils.EMPTY;
                }
                final ILogin connector = (ILogin) ConnectorFactory.getConnector(cache);

                int counter;
                final String onlineNum = getCounter(context, false); // we increment the counter later on our self in this method.

                if (!onlineNum.equals(StringUtils.EMPTY)) {
                    counter = Integer.parseInt(onlineNum);
                } else {
                    counter = FoundNumCounter.getAndUpdateFoundNum(connector);
                }

                if (counter == -1) {
                    return StringUtils.EMPTY;
                }

                counter += DataStore.getFoundsOffline(connector);

                if (increment) {
                    counter += 1;
                }
                return String.valueOf(counter);
            }
@return all user-facing templates, but not the signature template itself
main/src/main/java/cgeo/geocaching/log/LogTemplateProvider.java