diff options
Diffstat (limited to 'main')
4 files changed, 22 insertions, 2 deletions
diff --git a/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java b/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java index fcd5cbd..6d2de02 100644 --- a/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java +++ b/main/src/cgeo/geocaching/connector/oc/OC11XMLParser.java @@ -394,7 +394,7 @@ public class OC11XMLParser { } }); - // cache.terrain + // cache.datehidden cacheNode.getChild("datehidden").setEndTextElementListener(new EndTextElementListener() { @Override @@ -404,6 +404,16 @@ public class OC11XMLParser { } }); + // cache.userid + cacheNode.getChild("userid").setEndTextElementListener(new EndTextElementListener() { + + @Override + public void end(String body) { + cacheHolder.cache.setOwnerDisplayName(body); + cacheHolder.cache.setOwnerUserId(body); + } + }); + // cache.attributes.attribute final Element attributeNode = cacheNode.getChild("attributes").getChild("attribute"); diff --git a/main/src/cgeo/geocaching/connector/oc/OCXMLApiConnector.java b/main/src/cgeo/geocaching/connector/oc/OCXMLApiConnector.java index 69707b9..d361a7e 100644 --- a/main/src/cgeo/geocaching/connector/oc/OCXMLApiConnector.java +++ b/main/src/cgeo/geocaching/connector/oc/OCXMLApiConnector.java @@ -1,6 +1,7 @@ package cgeo.geocaching.connector.oc; import cgeo.geocaching.Geocache; +import cgeo.geocaching.ICache; import cgeo.geocaching.SearchResult; import cgeo.geocaching.Settings; import cgeo.geocaching.connector.capability.ISearchByCenter; @@ -10,6 +11,8 @@ import cgeo.geocaching.geopoint.Geopoint; import cgeo.geocaching.geopoint.Viewport; import cgeo.geocaching.utils.CancellableHandler; +import org.apache.commons.lang3.StringUtils; + public class OCXMLApiConnector extends OCConnector implements ISearchByGeocode, ISearchByCenter, ISearchByViewPort { private final static double SEARCH_DISTANCE_LIMIT = 15.0; @@ -49,4 +52,9 @@ public class OCXMLApiConnector extends OCConnector implements ISearchByGeocode, return Settings.isOCConnectorActive(); } + @Override + public boolean isOwner(ICache cache) { + return StringUtils.equalsIgnoreCase(cache.getOwnerUserId(), Settings.getOCConnectorUserName()); + } + } diff --git a/main/src/cgeo/geocaching/connector/oc/OCXMLClient.java b/main/src/cgeo/geocaching/connector/oc/OCXMLClient.java index 3e4d5b6..dee7bb9 100644 --- a/main/src/cgeo/geocaching/connector/oc/OCXMLClient.java +++ b/main/src/cgeo/geocaching/connector/oc/OCXMLClient.java @@ -99,7 +99,7 @@ public class OCXMLClient { } private static Parameters getOCXmlQueryParameters(final boolean withDescription, final boolean withLogs, final boolean withImages) { - return new Parameters("modifiedsince", "20060320000000", + return new Parameters("modifiedsince", "20000101000000", "user", "0", "cache", "1", "cachedesc", withDescription ? "1" : "0", diff --git a/main/src/cgeo/geocaching/maps/CGeoMap.java b/main/src/cgeo/geocaching/maps/CGeoMap.java index 5df0845..c917a37 100644 --- a/main/src/cgeo/geocaching/maps/CGeoMap.java +++ b/main/src/cgeo/geocaching/maps/CGeoMap.java @@ -495,6 +495,8 @@ public class CGeoMap extends AbstractMap implements OnMapDragListener, ViewFacto for (String geocode : dirtyCaches) { Geocache cache = cgData.loadCache(geocode, LoadFlags.LOAD_WAYPOINTS); if (cache != null) { + // new collection type needs to remove first + caches.remove(cache); // re-add to update the freshness caches.add(cache); } |
