diff options
| author | Bananeweizen <bananeweizen@gmx.de> | 2013-10-19 10:35:57 +0200 |
|---|---|---|
| committer | Bananeweizen <bananeweizen@gmx.de> | 2013-10-19 10:35:57 +0200 |
| commit | 2093ea462db4d8e56282de5871c58579a023d7cf (patch) | |
| tree | 3324262eb4de7946b1a2b30d3f76e131bb584c13 /main/src/cgeo/geocaching/twitter | |
| parent | 2a74f5c1f3c11ba217d6b8cb732ddc3ce4610d4b (diff) | |
| download | cgeo-2093ea462db4d8e56282de5871c58579a023d7cf.zip cgeo-2093ea462db4d8e56282de5871c58579a023d7cf.tar.gz cgeo-2093ea462db4d8e56282de5871c58579a023d7cf.tar.bz2 | |
fix #3365: Twitter placeholder not working
Diffstat (limited to 'main/src/cgeo/geocaching/twitter')
| -rw-r--r-- | main/src/cgeo/geocaching/twitter/Twitter.java | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/main/src/cgeo/geocaching/twitter/Twitter.java b/main/src/cgeo/geocaching/twitter/Twitter.java index c3f99fa..3dd1e17 100644 --- a/main/src/cgeo/geocaching/twitter/Twitter.java +++ b/main/src/cgeo/geocaching/twitter/Twitter.java @@ -12,6 +12,8 @@ import cgeo.geocaching.network.OAuth; import cgeo.geocaching.network.Parameters; import cgeo.geocaching.settings.Settings; import cgeo.geocaching.utils.Log; +import cgeo.geocaching.utils.LogTemplateProvider; +import cgeo.geocaching.utils.LogTemplateProvider.LogContext; import ch.boye.httpclientandroidlib.HttpResponse; @@ -64,35 +66,22 @@ public final class Twitter { private static void appendHashTag(final StringBuilder status, final String tag) { if (status.length() + HASH_PREFIX_WITH_BLANK.length() + tag.length() <= MAX_TWEET_SIZE) { final String tagWithPrefix = HASH_PREFIX_WITH_BLANK + tag; - if (status.indexOf(tagWithPrefix, 0) == -1) { + if (!StringUtils.contains(status, tagWithPrefix)) { status.append(tagWithPrefix); } } } static String getStatusMessage(Geocache cache) { - String name = cache.getName(); - if (name.length() > 100) { - name = name.substring(0, 100) + '…'; - } - final String url = StringUtils.defaultString(cache.getUrl()); - return fillTemplate(Settings.getCacheTwitterMessage(), name, url); + return appendHashTags(LogTemplateProvider.applyTemplates(Settings.getCacheTwitterMessage(), new LogContext(cache))); } static String getStatusMessage(Trackable trackable) { - String name = trackable.getName(); - if (name.length() > 82) { - name = name.substring(0, 81) + '…'; - } - String url = StringUtils.defaultString(trackable.getUrl()); - String status = Settings.getTrackableTwitterMessage(); - return fillTemplate(status, name, url); + return appendHashTags(LogTemplateProvider.applyTemplates(Settings.getTrackableTwitterMessage(), new LogContext(trackable))); } - private static String fillTemplate(String template, String name, final String url) { - String result = StringUtils.replace(template, "[NAME]", name); - result = StringUtils.replace(result, "[URL]", url); - StringBuilder builder = new StringBuilder(result); + private static String appendHashTags(final String status) { + StringBuilder builder = new StringBuilder(status); appendHashTag(builder, "cgeo"); appendHashTag(builder, "geocaching"); return builder.toString(); |
