Решил поделиться небольшой доработкой .
Захотел я поставить модуль погоды на сайт…
через поиск, нашел 2, на мой взгляд, самых оптимальных варианта :
1. Первый выложил mihalich, его преимущество в том, что он парсит погоду с гизметео, т.е. можно задать любой
дизайн, отредактировать всякие параметры, + он сам кешируется, нет внешних ссылок и тп…
в общем отличный вариант… но город, к сожалению только один может выводить…
2. Это модуль который вылажил HolyGun, его преимущества в том что он сам определяет город пользователя и
показывает прогноз именно для этого города ..
но… там простой информер…
Да простят меня авторы этих модулей, я их немного переделал и скрестил,
B теперь у нас есть модуль который парсит погоду, можно как угодно настраивать,
и он сам определяет город пользователя (из профиля конечно же))
Мелочь, но приятно ..)
Код максимально облегчен, настроен кеш .
Сложность было только достать коды и имена городов из xml гизметео…
но пол часа и банка пива решило проблему )
теперь он знает 4628 городов .
Установка:
Внимание! перед любыми изменениями, сделайте резервные копии файлов которые меняете!
вносим изменения в ./core/classes/user.class.php (для чего, уже описал HolyGun)
Находим в этом файле эту строчку:
public function loadUser($user_id) {
$sql = "SELECT u.*, g.is_admin is_admin, p.imageurl as imageurl
$sql = "SELECT u.*, g.is_admin is_admin, p.imageurl as imageurl, p.*
далее создаем модуль, например "погода"
и жмем — вставить — внешний скрипт ,
указываем weather.php
отображать — нужно сделать — вертикально (т.е. позиция — sidebar или подобная)
переделать для отображения горизонтально не сложно, все в — class.weather.php
можно сделать еще так, на ваше усмотрение :
после, справа заходим в Доступ и убираем пункт — общий доступ,
после выделяем все группы кроме гостей.
это позволит не показывать погоду гостям, так как город берется из профиля .
теперь файлы:
заливаем файлы согласно папок на сайт
и проверяем работу модуля!
Незабудтьте отредактировать — weather.php, в нем- строчку с кодом города по умолчанию,
это необходимо если город пользователя не определяется или он его не вписал в профиле.
дизайн редактируется в class.weather.php
необходимо также выставить права папке cacheweather в корне сайта .
демо к сожалению нет, т.к. сайт еще пока на денвере…
Всех С Наступающим Новым Годом !
instantcms.ru/users/files/download1682.html