Страница 3 из 5
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 3:40 pm
Gelezako
nick7zmail писал(а): Пт апр 20, 2018 3:36 pm
Да в принципе есть...идём в /lib/objects.class.php и дописываем по-аналогии с другими функциями. Только надо чётко определить что вы на входе хотите, что на выходе. При желании можно доработать addclassproperty, чтобы onchange заполнил если будет указан какой либо параметр.
как я представляю, на входе имя класса, имя свойства и метод. Результат: прилинкованный метод к свойству.
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 3:42 pm
Gelezako
directman66 писал(а): Пт апр 20, 2018 3:37 pm
Ура, взлетело
Отлично!
Я так понял модуль пишешь для работы с GPS? Ещё ни где не описывал функционал? Очень интересно, мне тоже надо придумать как координаты передавать с автономного GPS передатчика.
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 3:59 pm
directman66
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 5:52 pm
directman66
Столкнулся со сбоем плагина, когда одна функция вызывает другую функцию.
В файле
https://github.com/directman66/majordom ... .class.php
как только раскоментирую строку 391
модуль уходит в себя. Как будто он не может вызвать соседскую функцию.
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 7:26 pm
Gelezako
1. Настоятельно рекомендую давать "говорящие" имена функциям. Имя функции из 2х букв - это ужос. Подумайте о других кто будет читать ваш код.
2. Я не эксперт в пхп, но какую задачу решает эта функция ga() ? Она же бесполезна.
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 7:28 pm
directman66
Это пример, настоящая функция, которую нужно вызвать называется getaddrfromcoord($x,$y)
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 7:37 pm
fandaymon
Я конечно не специалист, но похоже у вас на строчке 578 лишняя скобка...
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 8:06 pm
directman66
578 скобка закрывает класс class livegpstracks extends module {
Иначе бы оно вообще не работало.
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 8:26 pm
fandaymon
directman66 писал(а): Пт апр 20, 2018 8:06 pm
578 скобка закрывает класс class livegpstracks extends module {
Иначе бы оно вообще не работало.
Ммм... Тогда наверное надо указывать, что вызванная функция принадлежит классу, может быть $this->ga('56.836498','60.691435' ); отработает?
Re: Программно инициализировать метод
Добавлено: Пт апр 20, 2018 8:47 pm
directman66
Там же в классе полно других функций, которые вызываются вроде без ссылки на самого себя. Я сейчас с телефона, детей укладываю, уже не проверить.