From 45c57ba2264bfc09d552cd2cc0e905f921fa76b0 Mon Sep 17 00:00:00 2001 From: Samuel Tardieu Date: Sat, 18 May 2013 20:08:58 +0200 Subject: fix #2733: acquire distance and direction for basic members A recent change in geocaching.com way of presenting the distance and direction information for basic members requires a new parsing. --- main/src/cgeo/geocaching/ui/DirectionImage.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'main/src/cgeo/geocaching/ui/DirectionImage.java') diff --git a/main/src/cgeo/geocaching/ui/DirectionImage.java b/main/src/cgeo/geocaching/ui/DirectionImage.java index 675d73b..98b8767 100644 --- a/main/src/cgeo/geocaching/ui/DirectionImage.java +++ b/main/src/cgeo/geocaching/ui/DirectionImage.java @@ -2,7 +2,6 @@ package cgeo.geocaching.ui; import cgeo.geocaching.files.LocalStorage; import cgeo.geocaching.network.Network; -import cgeo.geocaching.network.Parameters; import ch.boye.httpclientandroidlib.HttpResponse; import org.apache.commons.lang3.StringUtils; @@ -17,7 +16,7 @@ public class DirectionImage { } final HttpResponse httpResponse = - Network.getRequest("http://www.geocaching.com/ImgGen/seek/CacheDir.ashx", new Parameters("k", code)); + Network.getRequest("http://www.geocaching.com/images/icons/compass/" + code + ".gif"); if (httpResponse != null) { LocalStorage.saveEntityToFile(httpResponse, getDirectionFile(geocode, true)); } -- cgit v1.1 From 7125a7adbaf3cad9687a225032c85a9e7391c603 Mon Sep 17 00:00:00 2001 From: Samuel Tardieu Date: Sun, 19 May 2013 17:17:09 +0200 Subject: enhancement: share direction images for basic members Use the regular images cache for basic members direction images in cache list. Part of work on #2733. --- main/src/cgeo/geocaching/ui/DirectionImage.java | 31 ++++++++++--------------- 1 file changed, 12 insertions(+), 19 deletions(-) (limited to 'main/src/cgeo/geocaching/ui/DirectionImage.java') diff --git a/main/src/cgeo/geocaching/ui/DirectionImage.java b/main/src/cgeo/geocaching/ui/DirectionImage.java index 98b8767..df7275d 100644 --- a/main/src/cgeo/geocaching/ui/DirectionImage.java +++ b/main/src/cgeo/geocaching/ui/DirectionImage.java @@ -1,29 +1,22 @@ package cgeo.geocaching.ui; -import cgeo.geocaching.files.LocalStorage; -import cgeo.geocaching.network.Network; +import cgeo.geocaching.StoredList; +import cgeo.geocaching.network.HtmlImage; -import ch.boye.httpclientandroidlib.HttpResponse; -import org.apache.commons.lang3.StringUtils; - -import java.io.File; +import android.graphics.drawable.BitmapDrawable; public class DirectionImage { - public static void getDrawable(final String geocode, final String code) { - if (StringUtils.isBlank(geocode) || StringUtils.isBlank(code)) { - return; - } - - final HttpResponse httpResponse = - Network.getRequest("http://www.geocaching.com/images/icons/compass/" + code + ".gif"); - if (httpResponse != null) { - LocalStorage.saveEntityToFile(httpResponse, getDirectionFile(geocode, true)); - } - } + static private HtmlImage htmlImage = new HtmlImage(HtmlImage.SHARED, false, StoredList.STANDARD_LIST_ID, false); - public static File getDirectionFile(final String geocode, final boolean createDirs) { - return LocalStorage.getStorageFile(geocode, "direction.png", false, createDirs); + /** + * Retrieve the direction image corresponding to the direction code. + * + * @param directionCode one of the eight cardinal points + * @return a drawable with the arrow pointing into the right direction + */ + public static BitmapDrawable getDrawable(final String directionCode) { + return htmlImage.getDrawable("http://www.geocaching.com/images/icons/compass/" + directionCode + ".gif"); } } -- cgit v1.1