Разработка модулей (Рекомендации)

Разработка дополнительных модулей, подключение различных приложений.

Модераторы: Bagir, Ivan, Vit, immortal, PAV

Аватара пользователя
nick7zmail
Сообщения: 5741
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1409 раз

Re: Разработка модулей (Рекомендации)

Сообщение nick7zmail » Ср фев 01, 2017 8:22 am

Очередной вопрос на засыпку))
В системе есть стандартные функции логгирования в определенный файл?
Т.е. к примеру я не хочу писать историю в общий системный лог, а хочу закидывать в отдельный файл, содержимое файла потом, к примеру, вывести в модуле...
Я могу тупо новыми строками в лог докидывать инфу, но может есть уже заранее созданная функция к примеру? Или у DebMes(); аргументы какие-нибудь?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4263
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1366 раз
Контактная информация:

Re: Разработка модулей (Рекомендации)

Сообщение sergejey » Ср фев 01, 2017 6:03 pm

nick7zmail писал(а):Очередной вопрос на засыпку))
В системе есть стандартные функции логгирования в определенный файл?
Т.е. к примеру я не хочу писать историю в общий системный лог, а хочу закидывать в отдельный файл, содержимое файла потом, к примеру, вывести в модуле...
Я могу тупо новыми строками в лог докидывать инфу, но может есть уже заранее созданная функция к примеру? Или у DebMes(); аргументы какие-нибудь?
Не, нету. Можно свою функцию в модуль написать по аналогии с debmes.
За это сообщение автора sergejey поблагодарил:
nick7zmail (Ср фев 01, 2017 7:03 pm)
Рейтинг: 1.37%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
zelevova
Сообщения: 289
Зарегистрирован: Вт ноя 18, 2014 11:43 pm
Откуда: Краснодарский край
Благодарил (а): 32 раза
Поблагодарили: 66 раз

Re: Разработка модулей (Рекомендации)

Сообщение zelevova » Сб апр 15, 2017 6:56 pm

А теперь у меня вопрос на засыпку. Нужно что бы модуль делал еще общедоступные функции. Я знаю что можно положить файлик стакими функциями в lib, но будет ли корректно его обрабатывать функции установки и удаления модуля? Или есть другие варианы объявить общие функции?

И второй вопрос. А как можно проверить установлен ли другой модуль? Я сделал модуль для устройств Apple и если установлен модуль gps трекер то нужно бы в него данные отправлять. А вот как проверить стоит он или нет?
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
Аватара пользователя
sergejey
Site Admin
Сообщения: 4263
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1366 раз
Контактная информация:

Re: Разработка модулей (Рекомендации)

Сообщение sergejey » Пн апр 17, 2017 12:00 pm

zelevova писал(а):А теперь у меня вопрос на засыпку. Нужно что бы модуль делал еще общедоступные функции. Я знаю что можно положить файлик стакими функциями в lib, но будет ли корректно его обрабатывать функции установки и удаления модуля? Или есть другие варианы объявить общие функции?

И второй вопрос. А как можно проверить установлен ли другой модуль? Я сделал модуль для устройств Apple и если установлен модуль gps трекер то нужно бы в него данные отправлять. А вот как проверить стоит он или нет?
1. Функция удаления модуля из ./lib/ файлы не удаляет, если нужно что-то удалять дополнительно, то нужно это сделать в методе модуля uninstall. Для общих функций лучше ложить файлик в lib, главное не переписывать файлы ядра.

2. Проверить наличие другого модуля можно через тот же file_exists(DIR_MODULES.'modulename/modulename.class.php') или is_dirfile_exists(DIR_MODULES.'modulename')

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
nick7zmail
Сообщения: 5741
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1409 раз

Re: Разработка модулей (Рекомендации)

Сообщение nick7zmail » Пн апр 17, 2017 12:03 pm

sergejey писал(а): 1. Функция удаления модуля из ./lib/ файлы не удаляет, если нужно что-то удалять дополнительно, то нужно это сделать в методе модуля uninstall. Для общих функций лучше ложить файлик в lib, главное не переписывать файлы ядра.
из /scripts и /img я так понимаю тоже не удаляет? только из modules и templates?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
sergejey
Site Admin
Сообщения: 4263
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1366 раз
Контактная информация:

Re: Разработка модулей (Рекомендации)

Сообщение sergejey » Пн апр 17, 2017 12:05 pm

nick7zmail писал(а):
sergejey писал(а): 1. Функция удаления модуля из ./lib/ файлы не удаляет, если нужно что-то удалять дополнительно, то нужно это сделать в методе модуля uninstall. Для общих функций лучше ложить файлик в lib, главное не переписывать файлы ядра.
из /scripts и /img я так понимаю тоже не удаляет? только из modules и templates?
Верно.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
zelevova
Сообщения: 289
Зарегистрирован: Вт ноя 18, 2014 11:43 pm
Откуда: Краснодарский край
Благодарил (а): 32 раза
Поблагодарили: 66 раз

Re: Разработка модулей (Рекомендации)

Сообщение zelevova » Пн апр 17, 2017 2:42 pm

sergejey писал(а): 2. Проверить наличие другого модуля можно через тот же file_exists(DIR_MODULES.'modulename/modulename.class.php') или is_dirfile_exists(DIR_MODULES.'modulename')
видимо лучше даже так проверять что он установлен:

Код: Выделить всё

file_exists(DIR_MODULES.'modulename/installed')

Спасибо буду пробовать.
Majordomo (GitHub) на cubietruck + MegaD + 1-wire
CONNECT: http://connect.smartliving.ru/profile/311
Аватара пользователя
nick7zmail
Сообщения: 5741
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1409 раз

Re: Разработка модулей (Рекомендации)

Сообщение nick7zmail » Вт апр 18, 2017 8:11 pm

Немного не понял...это баг или фича?
Короче есть таблица, которая строится из базы стандартным способом

Код: Выделить всё

<table class="table">
 [#begin PROPERTIES#]
 <tr [#if условие#]class="info"[#endif#]>
   <td valign="top"></td>
 </tr>
 [#end PROPERTIES#]
</table>
 
Дак вот прикол в том, что стиль class="info" не хочет никак применяться....да собственно даже .table-striped в классе самой таблицы не хочет разукрашивать таблицу в зебру...в общем где то теряются стили...как побороть?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
nick7zmail
Сообщения: 5741
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 111 раз
Поблагодарили: 1409 раз

Re: Разработка модулей (Рекомендации)

Сообщение nick7zmail » Сб апр 22, 2017 8:47 am

Вопрос по языкам...
Есть файлы языков, есть команда обновления параметров в модуле (пусть будет check_params();)
В теле check_params есть обращение к файлу языков (пока вот в таком виде constant('LANG_BR_UNKNOWN');)

Дак вот, вылезла проблема...если запускать конструкцию из модуля $this->check_params();, то всё норм...а если запускать внешним кодом (include_once, new $obj, $obj->check_params();) то файлы языка не цепляются, и вместо значения прилетает пустой параметр....

Как подгрузить файл языка? Или может присваивать значение по другому как-то?
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
foxvlad
Сообщения: 252
Зарегистрирован: Пн сен 22, 2014 3:18 pm
Откуда: Сочи
Благодарил (а): 75 раз
Поблагодарили: 66 раз
Контактная информация:

Re: Разработка модулей (Рекомендации)

Сообщение foxvlad » Пт мар 16, 2018 4:51 pm

Народ но помогите пожалуйста, где теоретические данные найти где, чего берется, смотрю готовые модули, и не могу разобрать, где куда чего.
Ответить