Skip to content

Advanced the search method #143

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
CachingFoX opened this issue Apr 22, 2020 · 2 comments · Fixed by #206
Closed

Advanced the search method #143

CachingFoX opened this issue Apr 22, 2020 · 2 comments · Fixed by #206

Comments

@CachingFoX
Copy link
Contributor

I want to advanced the search function. Currently the search method is very limited. The search on the web page offers a lot of filter parameters, which are not supported by the search method.

I have already implement a prototype of advanced search. But the quality is not good enough for a pull request. The prototype is not fully featured, no test cases at the moment and some open questions.

Parts of implementation of the search method should be reused and enhanced. But current search method should still exists for backward compatibility, and share the implementation with the advanced search.

Filter parameters

  • Worldwide or origin with radius
  • Geocache types (and group of types)
  • Found status
  • Owner ship
  • Hidden by
  • Terrain and Difficulty ranking in ranges
  • Geocache size
  • Membership type
  • Cache status
  • Corrected Coordinates
  • Personal Note
  • Place Date (after, before, between, on)
  • Keyword
  • Not found by
  • Limit to country or region (includes a enumeration of countries and regions)
  • Favorite points
@tomasbedrich
Copy link
Owner

Unfortunately, most of filters you mention are available to PM only. I'm in for implementing these, but I don't have PM so I cannot help with this.

So if you want, keep working on this but keep in mind, that probably nobody will be able to help you (not even by review). :( Also please note, that we must keep the pycaching project fully functional for basic members.

@CachingFoX
Copy link
Contributor Author

Unfortunately, most of filters you mention are available to PM only. I'm in for implementing these, but I don't have PM so I cannot help with this.
Sorry, I'm PM for a so long time, I forgot from time to time BM has a limit access to the web page.
My solution has less modifications of the existing search function. This modification includes mainly extended handling of parameters in the URL, no changes in behaviour of loading results and more results.
Build the URL parameters for a filter is done in an extra class, because the class has a lot of simple getter/setter function and helper function to build parameters. If I implement this in the geocaching class or in the search function, it will kill the code.

During the days I improve my implementation as much as possible and create a lot of test which verifiy the build of the parameters.

With the search function we have a similar problem as with the Personal Note. If someone re-record the cassette he will get a different result: new and missing caches, different sort order, different values (like favorite points), ...

In the next days I will send you a link to my implementation and you can give me feedback, about the architecture of my implementation. Interface good or bad.

I write a little how to use the new search function.

So if you want, keep working on this but keep in mind, that probably nobody will be able to help you (not even by review). :( Also please note, that we must keep the pycaching project fully functional for basic members.

I will check what happened if a BM try to do PM features in the search

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants