Модуль Украинские курсы валют Drupal 7

Главные вкладки

Аватар пользователя dkslalkasdlsa dkslalkasdlsa 28 декабря 2012 в 12:45


Написал простой модуль курсов валют для Drupal 7. Может кому-то окажется полезным.
Работает просто:

  • по крону смотрим в xml файл на http://bank-ua.com
  • парсим нужные нам курсы (в моем модуле это USD, EUR, RUB)
  • полученные курсы заносим в БД
  • выводим на сайте как блок

Приятные фишки:

  • через .tpl доступна темизация.
  • все курсы заносим 1-запросом к БД получаем так же.

Неприятные фишки:

  • блок с курсами валют не кешируется
  • в админке нельзя выбрать тип валюты для показа.

Пример работы модуля: http://www.bestnews.in.ua/ (данные берутся с другого источника палить не могу.)

Установка:

  1. залили на сайт
  2. включили
  3. вывели в блоках в нужном регионе
  4. запустили крон.

Чуть не забыл: курсы валют по отношению к .грн Украина.

любые дельные советы по улучшению кода, приветствуются.

ВложениеРазмер
Иконка пакета ua_courses_7.x.3.0.zip23.88 КБ

Комментарии

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 28 декабря 2012 в 13:43

Друпал стандарты сосут

В папке мусорные файлы

выглядит странно:

<?php

/**
 * Вношу первичные данные в таблицу.
 */
function ua_courses_install() {
    
db_insert('ua_courses')->fields(array('usd' => 0,'eur' => 0,'rub' => 0'change_usd' => 0,'change_eur' => 0,'change_rub' => 0))->execute();
}

?>

Это убрать

<?php

/**
 * Удаляю таблицу при отключении модуля.
 */
function ua_courses_uninstall() {
    
db_drop_table('ua_courses');
}

?>

ua_courses_insert() - конфликт с hook_insert($node)

Аватар пользователя volocuga@drupal.org volocuga@drupal.org 28 декабря 2012 в 13:54

И да, неплохо бы добавить кое какое апи, например для интеграции с commerce, иначе модуль сам в себе.
Выложи в песочницу на орге. Удобней же

Аватар пользователя deb deb 28 декабря 2012 в 15:30

> ua_courses_insert() - конфликт с hook_insert($node)

Да и вообще эта функция не нужна. В общем-то и реализация хук_крон не нужна. И своя таблица в БД не нужна. И своя ф-я темизации тоже не нужна (есть же theme_item_list).