diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2014-01-03 14:00:23 +0100 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2014-01-03 14:00:23 +0100 |
| commit | 2edc28f99df83840a56aa13e6403d27712fef817 (patch) | |
| tree | f37339e95e79b7f2b8e57460f9c4b5f5cad1cc4d /main | |
| parent | ac278a219d32aaab5e9d95ea894b29912d609f63 (diff) | |
| download | cgeo-2edc28f99df83840a56aa13e6403d27712fef817.zip cgeo-2edc28f99df83840a56aa13e6403d27712fef817.tar.gz cgeo-2edc28f99df83840a56aa13e6403d27712fef817.tar.bz2 | |
fix #3505: extra logins done to gc.com on live map start
Diffstat (limited to 'main')
| -rw-r--r-- | main/src/cgeo/geocaching/connector/gc/GCConstants.java | 1 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/connector/gc/GCLogin.java | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/connector/gc/GCConstants.java b/main/src/cgeo/geocaching/connector/gc/GCConstants.java index d424ec7..5685fc9 100644 --- a/main/src/cgeo/geocaching/connector/gc/GCConstants.java +++ b/main/src/cgeo/geocaching/connector/gc/GCConstants.java @@ -73,6 +73,7 @@ public final class GCConstants { public static final Pattern PATTERN_AVATAR_IMAGE_PROFILE_PAGE = Pattern.compile("<img src=\"(http://img.geocaching.com/user/avatar/[0-9a-f-]+\\.jpg)\"[^>]*\\salt=\"Avatar\""); public static final Pattern PATTERN_LOGIN_NAME_LOGIN_PAGE = Pattern.compile("ctl00_ContentBody_lbUsername\">.*<strong>(.*)</strong>"); public static final Pattern PATTERN_CUSTOMDATE = Pattern.compile("<option selected=\"selected\" value=\"([ /Mdy-]+)\">"); + public static final Pattern PATTERN_MAP_LOGGED_IN = Pattern.compile("<a href=\"https?://www.geocaching.com/my/\" class=\"CommonUsername\" title=\"(.*)\""); /** * Patterns for parsing trackables diff --git a/main/src/cgeo/geocaching/connector/gc/GCLogin.java b/main/src/cgeo/geocaching/connector/gc/GCLogin.java index 7f23bf6..2d4fbcd 100644 --- a/main/src/cgeo/geocaching/connector/gc/GCLogin.java +++ b/main/src/cgeo/geocaching/connector/gc/GCLogin.java @@ -183,6 +183,11 @@ public class GCLogin extends AbstractLogin { } assert page != null; + if (TextUtils.matches(page, GCConstants.PATTERN_MAP_LOGGED_IN)) { + setActualUserName(TextUtils.getMatch(page, GCConstants.PATTERN_MAP_LOGGED_IN, true, "???")); + return true; + } + setActualStatus(CgeoApplication.getInstance().getString(R.string.init_login_popup_ok)); // on every page except login page |
