aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/cgeoadvsearch.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/cgeoadvsearch.java')
-rw-r--r--main/src/cgeo/geocaching/cgeoadvsearch.java43
1 files changed, 18 insertions, 25 deletions
diff --git a/main/src/cgeo/geocaching/cgeoadvsearch.java b/main/src/cgeo/geocaching/cgeoadvsearch.java
index 194fdbb..2c1d5f8 100644
--- a/main/src/cgeo/geocaching/cgeoadvsearch.java
+++ b/main/src/cgeo/geocaching/cgeoadvsearch.java
@@ -121,32 +121,25 @@ public class cgeoadvsearch extends AbstractActivity {
* @return true if a search was performed, else false
*/
private boolean instantSearch(final String query, final boolean keywordSearch) {
- try {
- String result = BaseUtils.getMatch(query, GCConstants.PATTERN_GC_CODE, true, 0, "", false);
- if (StringUtils.isNotBlank(result)) {
- final Intent cachesIntent = new Intent(this, CacheDetailActivity.class);
- cachesIntent.putExtra("geocode", result.toUpperCase());
- startActivity(cachesIntent);
-
- return true;
- } else {
- result = BaseUtils.getMatch(query, GCConstants.PATTERN_TB_CODE, true, 0, "", false);
- if (StringUtils.isNotBlank(result)) {
- final Intent trackablesIntent = new Intent(this, cgeotrackable.class);
- trackablesIntent.putExtra("geocode", result.toUpperCase());
- startActivity(trackablesIntent);
-
- return true;
- } else if (keywordSearch) { // keyword fallback, if desired by caller
- cgeocaches.startActivityKeyword(this, query.trim());
- return true;
- } else {
- return false;
- }
+ final String geocode = BaseUtils.getMatch(query, GCConstants.PATTERN_GC_CODE, true, 0, "", false);
+ if (StringUtils.isNotBlank(geocode)) {
+ final Intent cachesIntent = new Intent(this, CacheDetailActivity.class);
+ cachesIntent.putExtra("geocode", geocode.toUpperCase());
+ startActivity(cachesIntent);
+ return true;
+ }
- }
- } catch (Exception e) {
- Log.w("cgeoadvsearch.instantSearch: " + e.toString());
+ final String trackable = BaseUtils.getMatch(query, GCConstants.PATTERN_TB_CODE, true, 0, "", false);
+ if (StringUtils.isNotBlank(trackable)) {
+ final Intent trackablesIntent = new Intent(this, cgeotrackable.class);
+ trackablesIntent.putExtra("geocode", trackable.toUpperCase());
+ startActivity(trackablesIntent);
+ return true;
+ }
+
+ if (keywordSearch) { // keyword fallback, if desired by caller
+ cgeocaches.startActivityKeyword(this, query.trim());
+ return true;
}
return false;