x = new Date();
// Вычислим значение смещения текущего часового пояса в часах
currentTimeZoneOffsetInHours = -x.getTimezoneOffset()/60;
document.write(currentTimeZoneOffsetInHours);
и передаём ajax-ом на сервер, там сверяем:
if (IP->город->пояс города===currentTimeZoneOffsetInHours) -> устанавливаем
else -> Просим пользователя выставить вручную.
Зависит от кол-ва приложений в акке. Может проще завести новый и ввести номер верификации адреса. После - вы сможете восстановить предыдущий через ТП с вероятностью >50%.
PS: Обязательно отпишитесь чем закончится дело - очень интересно.
Прочитал Ваш доклад:
1. Точно не бэкенд! (см. ответ OnYourLips )
Итог: клиентские приложения JS+HTML5+PhoneGap (для обертки под моб.устройства)
как раз то, что Вы лучше всего понимаете.