Требуется правка двух багов в плагине

Малютин16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
08.08.2012

Есть сайт http://hrum.com.ua/ (добавить перед доменом dev.)

На главной странице есть скрипты выбора города и форма ввода адреса с автокомплитом. Пользователь выбирает город, вводит свою улицу/дом (с помощью автокомплита или без него) и переходит на следующею страницу. (такие же схемы есть еще в паре попапов на внутренних страницах). Со всем этим есть две проблемы:

В ряде случаев при вводе улица-пробел-дом удаляется цифра дома. Ее нужно ввести опять и тогда она не удаляется. Ошибка проявляется не всегда, поэтому нужно экспериментировать.

Не всегда срабатывает поиск, по сути задумка такая: если пользователь ввел неверный адрес (скажем не правильно улицу или такой улицы нет), то ему выдается ошибка с всплывающей подсказкой (адрес не найден), сейчас ошибка выводится через раз, но это не столь критично. Главная проблема в том, что в ряде случаев, если пользователь ввел верный адрес и даже воспользовался автокомплитом, алгоритм не срабатывает и его не пускает на следующую страницу (по нажатию на кнопку Найти или Enter), и выдает или не выдает ошибку Адрес не найден.

Точных связей не найдено, пока выводы следующие:

1. сначала думал, что связанно с первым заходом на сайт, но это не так хотя вероятность несрабатывания при первом посещении выше

2. Подозреваем, что есть связь проблемы с куки

3. В целом от браузера не зависит, но в ФФ и Опере есть больше шансов, что будет нормально работать, в ИЭ и Хроме больше шансов, что не сработает. Но ошибка проявлялась в любом браузере.

4. Если ввести адрес, выбрать автокомплит, нажать Энтер и если не сработает, то можно попробовать добавить пробел, опять энтер и большая вероятность, что прокатит. Но опять же не всегда.

5. Если сразу пойти через карусель в заведение (на шаг 3), потом вернуться обратно (на главную), то тоже есть шанс, что глючить не будет.

6. Также была теория, что связь со скоростью интернета и временем задержки, между срабатыванием, может стоит рыть в этом направлении.

Требуется исправить эти два бага, чтобы все работало как часы. Эксперименты лучше всего проводить на Киеве и вводить любые киевские улицы и дома.

Теперь по технической части:

Написан плагин синглтон на jquery, который вешается на input ввода адреса.

Внутри плагина на этот input ввода адреса вешается jquery autocomplete.

В качестве source для автокоплита выступает метод _geocodeCustom() , в который передаются страна, город и значение поля input.

_geocodeCustom() отправляет всё это дело на google.maps.Geocoder(), ответы от которого обрабатываются методом _handleSuggestions()

handleSuggestions() фильтрует всё оставляя адреса следующих типов: 'street_number', 'street_address', 'route' (отфильтрует то, что нужно и вернёт для каждого подходящего адреса объект с полным адресом, широтой и долготой)

В juery автокомплит при выборе элемента эти данные (а именно: город, широта, долгота) привяжутся к input'у ввода адреса с помощью $.data

На нажатие enter и на клик по кнопке "найти" (по умолчанию в плагин вшито, что это $('.find_btn'))

Дёргается метод _findR(), который дёрнет установку города (по приоритету из объекта document, если там нет, то из options (можно передать при инициализации плагина)