We have a system where wordpress authors can set a marker on a google map in their profile which odviously saves their coordinates for that user. We are looking for a way to use that data and create a search system for our authors.

The search system needs:

Visitor types in a city, state or zip which zooms a google map in to that broad location and displays markers on the results. Then below the map it lists the users for that broad area showing on the map.

They can then move to a drop box and adjust the search radius to within say 100 miles, 50 miles, 10 miles. The map and users listed below automatically narrows further down to match the radius.

Lastly, the visitor can move one more drop box over and change by the specific type of author that will narrow the results even more.

Any recommendations on how to achieve this or how difficult? I assume it's some Google api stuff but I don't know if maybe there is a system out there that I didn't find googling that already has this functionality? Or maybe it's not very complicated to code? A tutorial? Something... Thanks for any help on the matter.