Как стать автором
Обновить

Чиним GisMeteo гаджет

Время на прочтение2 мин
Количество просмотров3.8K
Как многие уже знают — недавно Gismeteo.ru закрыла свой проект informer.gismeteo.ru. В результате этих событий перестал работать прежний экспорт погоды в XML формате. Однако пострадали не только веб-мастера, но и обычные пользователи, у которых установлен гаджет GisMeteo. В последние дни они наблюдают такую грустную картинку

image
Я тож наблюдал это пока мне не надоело. Как раз оказалось немного свободного времени и я решил попробовать это исправить.

Оказалось, что Gismeteo.ua отдает XML по старому (по крайней мере сейчас). Этим я и решил воспользоваться.

Итак по порядку:

1. Первым делом загружаем гаджет с gallery.live.com/liveItemDetail.aspx?li=7873de84-58f6-4842-a8f9-466461a2040e

2. Переименовываем загрузившийся GisMeteo_black.gadget в GisMeteo_black.gadget.zip и распаковываем.

3. Все что нам нужно — это содержимое папки js. Первым делом идем в js\weatherData.js и строке 12 меняем
req.open("GET", "http://informer.gismeteo.ru/xml/"+location+"_1.xml", false);

на
req.open("GET", "http://informer.gismeteo.ua/xml/"+location+"_1.xml", false);

Казалось бы все, но это не так. Дело в том, что по умолчанию гаджет настроен на Санкт-Петербург (им повезло), остальным же придется еще немного помучаться.

4. В файле js\weather.js в самом верху находятся настройки по умолчанию.

var location="26063";
var locationName="Санкт-Петербург";

Самый простой вариант — вписать туда свой город, однако и тут засада. Как видно из строки 25 js\settings.js

req.open("GET","http://bar.gismeteo.ru/gmbartlist.xml",false);

список городов подгружается из недоступного урл. Спас как всегда google cache :) Восстановленый список городов теперь доступен тут gismeteo.googlecode.com/svn/trunk/gmbartlist.xml

5. Теперь достаточно заменить в строке 25 js\settings.js

req.open("GET","http://bar.gismeteo.ru/gmbartlist.xml",false);

на
req.open("GET","http://gismeteo.googlecode.com/svn/trunk/gmbartlist.xml",false);


6. Запаковываем обратно в zip, переименовываем в GisMeteo_black.gadget, устанавливаем, в настройках выбираем свой город (диалог настроек открывается не сразу, необходимо немного подождать пока js распарсит xml) и наслаждаемся :)

image

p.s. рабочий гаджет можно скачать тут

* This source code was highlighted with Source Code Highlighter.


upd: теперь и через gismeteo.ua недоступен xml
upd2: стал доступен xml с gismeteo.ru
Теги:
Хабы:
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
10 – 11 октября
HR IT & Team Lead конференция «Битва за IT-таланты»
МоскваОнлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн