Несколько вопросов о кастомизации интерфейса

Всё, что не подходит под вышеперечисленные разделы

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

alt.Maksimus
Сообщения: 9
Зарегистрирован: Вс янв 14, 2018 7:43 am
Благодарил (а): 5 раз
Поблагодарили: 3 раза

Несколько вопросов о кастомизации интерфейса

Сообщение alt.Maksimus » Вс янв 14, 2018 8:19 am

Доброго времени суток! Надеюсь не ошибся с выбором ветки. Несколько дней курил форум, но, увы, не нашел ответов. Товарищи, имеется несколько вопросов касательно кастомизации интерфейса, очень надеюсь, что поможете, спасибо.

1) Как я понял кастомизация по средством изменения шаблонов должна происходить по определенным правилам, что бы при обновлении не слетело. удалось найти что файлы html из templates нужно копировать в папку templates_alt, а как быть, если необходимо создать новые файлы? php менять нельзя, но можно добавлять свои (нашел упоминание, что нужно в папку lib размещать). но все эти упоминания видел в сообщениях от пользователей, не удалось найти именно записи от разработчика где полностью описаны все нюансы и правила кастомизации. все ли это нюансы, или есть еще? в первую очередь интересует папка templates_alt, удаляются ли оттуда файлы при обновлении, какие файлы там проверяет на альтернативу. php пока мало интересует, но на будущее тоже может пригодиться)

2) Не удалось разобраться с условиями в html. Вернее сами условия подглядел в шаблонах, но видимо не отрабатывает проверка переменной. Например в меню, в блоке State использую условие [#if #] [#else#] [#endif#] но как бы я не писал переменные: [#if %Communication.stateDetails% != ''#], [#if #Communication.stateDetails# != ''#], [#if Communication.stateDetails != ''#], находил даже такие конструкции [#if "<%Communication.stateDetails%>" != ''#] или [#if "<#Communication.stateDetails#>" != ''#] проверка не проходит, если в условие вписать простое 1==1 то работает. Подскажите, пожалуйста, как прописать условие с переменной.

3) Вопрос про обновление данных, в меню и сценах данные (например время %ThisComputer.timeNow%) обновляется самостоятельно и без скачков, а в домашних страницах типа html не обновляются, пока не установить период автообновления, но в этом случае страница перезагружается и это заметно. Почему так? В будущем хотелось бы написать свой интерфейс и как казалось это будет удобнее сделать в домашних страницах, где просто код без без стандартных элементов, получается лучше делать на основе сцен с переделкой стандартных элементов?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4272
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1340 раз
Контактная информация:

Re: Несколько вопросов о кастомизации интерфейса

Сообщение sergejey » Вс янв 14, 2018 9:08 am

alt.Maksimus писал(а):Доброго времени суток! Надеюсь не ошибся с выбором ветки. Несколько дней курил форум, но, увы, не нашел ответов. Товарищи, имеется несколько вопросов касательно кастомизации интерфейса, очень надеюсь, что поможете, спасибо.

1) Как я понял кастомизация по средством изменения шаблонов должна происходить по определенным правилам, что бы при обновлении не слетело. удалось найти что файлы html из templates нужно копировать в папку templates_alt, а как быть, если необходимо создать новые файлы? php менять нельзя, но можно добавлять свои (нашел упоминание, что нужно в папку lib размещать). но все эти упоминания видел в сообщениях от пользователей, не удалось найти именно записи от разработчика где полностью описаны все нюансы и правила кастомизации. все ли это нюансы, или есть еще?
Да наверное и все. Новые файлы html можно добавлять куда угодно, главное в них не запутаться, так что я рекомендовал бы в тот же templates_alt. Включать их можно через [#include ...#]
alt.Maksimus писал(а):2) Не удалось разобраться с условиями в html. Вернее сами условия подглядел в шаблонах, но видимо не отрабатывает проверка переменной. Например в меню, в блоке State использую условие [#if #] [#else#] [#endif#] но как бы я не писал переменные: [#if %Communication.stateDetails% != ''#], [#if #Communication.stateDetails# != ''#], [#if Communication.stateDetails != ''#], находил даже такие конструкции [#if "<%Communication.stateDetails%>" != ''#] или [#if "<#Communication.stateDetails#>" != ''#] проверка не проходит, если в условие вписать простое 1==1 то работает. Подскажите, пожалуйста, как прописать условие с переменной.
Условному оператору, в общем случае, недоступны значения свойств объектов. Просто как-то в этом не было необходимости. Но я себе помечу, что можно добавить этот функционал в обработчик шаблона.
alt.Maksimus писал(а):3) Вопрос про обновление данных, в меню и сценах данные (например время %ThisComputer.timeNow%) обновляется самостоятельно и без скачков, а в домашних страницах типа html не обновляются, пока не установить период автообновления, но в этом случае страница перезагружается и это заметно. Почему так? В будущем хотелось бы написать свой интерфейс и как казалось это будет удобнее сделать в домашних страницах, где просто код без без стандартных элементов, получается лучше делать на основе сцен с переделкой стандартных элементов?
В домашних страницах оно тоже должно обновляться без перезагрузки. Можете привести полный пример кода страницы?
За это сообщение автора sergejey поблагодарил:
alt.Maksimus (Вс янв 14, 2018 10:20 am)
Рейтинг: 1.47%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
alt.Maksimus
Сообщения: 9
Зарегистрирован: Вс янв 14, 2018 7:43 am
Благодарил (а): 5 раз
Поблагодарили: 3 раза

Re: Несколько вопросов о кастомизации интерфейса

Сообщение alt.Maksimus » Вс янв 14, 2018 9:44 am

Да наверное и все. Новые файлы html можно добавлять куда угодно, главное в них не запутаться, так что я рекомендовал бы в тот же templates_alt. Включать их можно через [#include ...#]
понял. Сергей, просветите пожалуйста еще на счет PHP файлов (вдруг пригодится в будущем)
Условному оператору, в общем случае, недоступны значения свойств объектов. Просто как-то в этом не было необходимости. Но я себе помечу, что можно добавить этот функционал в обработчик шаблона.
было бы очень клево, ели реализуете. думаю я не один таким вопросом задался.
В домашних страницах оно тоже должно обновляться без перезагрузки. Можете привести полный пример кода страницы? 
код взял из меню

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

<big style="font-size:24px">%ThisComputer.timeNow%</big>
домашнюю страницу создал вида HTML Code. Если автообновление не устанавливать ничего не происходит, а если установить то страница мерцает при перезагрузке.

PS Сергей, пользуясь случаем, хотелось бы поблагодарить Вас за разработку и поддержку этой замечательной системы
Аватара пользователя
sergejey
Site Admin
Сообщения: 4272
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1340 раз
Контактная информация:

Re: Несколько вопросов о кастомизации интерфейса

Сообщение sergejey » Вс янв 14, 2018 9:50 am

alt.Maksimus писал(а):
Да наверное и все. Новые файлы html можно добавлять куда угодно, главное в них не запутаться, так что я рекомендовал бы в тот же templates_alt. Включать их можно через [#include ...#]
понял. Сергей, просветите пожалуйста еще на счет PHP файлов (вдруг пригодится в будущем)
С PHP-файлами нет механизма альтернативной замены (как с шаблонами), но можно в папку /lib/ добавлять свои файлы и они будут автоматически подгружаться и туда можно писать свои функции, если нужно. Но обычно более или менее серьёзный функционал лучше реализовывать через дополнительный модуль со своим кодом и шаблонами.
alt.Maksimus писал(а):
Условному оператору, в общем случае, недоступны значения свойств объектов. Просто как-то в этом не было необходимости. Но я себе помечу, что можно добавить этот функционал в обработчик шаблона.
было бы очень клево, ели реализуете. думаю я не один таким вопросом задался.
Ага, пометил себе.
alt.Maksimus писал(а):
В домашних страницах оно тоже должно обновляться без перезагрузки. Можете привести полный пример кода страницы? 
код взял из меню

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

<big style="font-size:24px">%ThisComputer.timeNow%</big> 
домашнюю страницу создал вида HTML Code. Если автообновление не устанавливать ничего не происходит, а если установить то страница мерцает при перезагрузке.
Проверю...
alt.Maksimus писал(а):PS Сергей, пользуясь случаем, хотелось бы поблагодарить Вас за разработку и поддержку этой замечательной системы
Пожалуйста )
За это сообщение автора sergejey поблагодарил:
alt.Maksimus (Вс янв 14, 2018 10:20 am)
Рейтинг: 1.47%

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
alt.Maksimus
Сообщения: 9
Зарегистрирован: Вс янв 14, 2018 7:43 am
Благодарил (а): 5 раз
Поблагодарили: 3 раза

Re: Несколько вопросов о кастомизации интерфейса

Сообщение alt.Maksimus » Вс янв 14, 2018 10:17 am

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

Ага, пометил себе. 
Сергей, а в случае реализации как потом узнать что функция появилась?)
Аватара пользователя
nick7zmail
Сообщения: 5463
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 110 раз
Поблагодарили: 1289 раз

Re: Несколько вопросов о кастомизации интерфейса

Сообщение nick7zmail » Вс янв 14, 2018 11:03 am

В логе обновлений Сергей довольно подробно описывает нововведения...там будет написано...так же можете создать тестовую страничку с нужной функцией, и ждать, пока оно заработает))

Отправлено с моего G8441 через Tapatalk
Raspberry Pi3 + Broadlink + esp8266 (blynk) + Arduino Mega (AMS)
Уважаемые пользователи! Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Помощь пользователям | Создание сцен
alt.Maksimus
Сообщения: 9
Зарегистрирован: Вс янв 14, 2018 7:43 am
Благодарил (а): 5 раз
Поблагодарили: 3 раза

Re: Несколько вопросов о кастомизации интерфейса

Сообщение alt.Maksimus » Вс янв 14, 2018 11:11 am

В логе обновлений Сергей довольно подробно описывает нововведения...там будет написано...так же можете создать тестовую страничку с нужной функцией, и ждать, пока оно заработает))
лог это на странице "проверка обновлений"?
так что бы ждать пока оно заработает, нужно же правильно написать, а я так понимаю синтаксис написания будет известен после того как реализуют)
Аватара пользователя
nick7zmail
Сообщения: 5463
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 110 раз
Поблагодарили: 1289 раз

Re: Несколько вопросов о кастомизации интерфейса

Сообщение nick7zmail » Вс янв 14, 2018 11:42 am

Да, на странице обновления, а так же на главной странице проекта.

Отправлено с моего G8441 через Tapatalk
За это сообщение автора nick7zmail поблагодарил:
alt.Maksimus (Вс янв 14, 2018 11:56 am)
Рейтинг: 1.47%
Raspberry Pi3 + Broadlink + esp8266 (blynk) + Arduino Mega (AMS)
Уважаемые пользователи! Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Помощь пользователям | Создание сцен
Аватара пользователя
VooDooN
Сообщения: 268
Зарегистрирован: Сб июн 11, 2016 12:02 am
Благодарил (а): 112 раз
Поблагодарили: 45 раз

Re: Несколько вопросов о кастомизации интерфейса

Сообщение VooDooN » Вс янв 14, 2018 4:59 pm

Ну раз заговорили о кастомизации, подскажите, пожалуйста, где можно найти инструкцию, как правильно редактировать интерфейс главного меню под себя (цвета, кнопки, стили)?
alt.Maksimus
Сообщения: 9
Зарегистрирован: Вс янв 14, 2018 7:43 am
Благодарил (а): 5 раз
Поблагодарили: 3 раза

Re: Несколько вопросов о кастомизации интерфейса

Сообщение alt.Maksimus » Вс янв 14, 2018 5:40 pm

Ну раз заговорили о кастомизации, подскажите, пожалуйста, где можно найти инструкцию, как правильно редактировать интерфейс главного меню под себя (цвета, кнопки, стили)?
думаю какой то прям инструкции нет. я лично методом научного тыка нахожу шаблоны в папке C:\_majordomo\htdocs\templates и копирую их в C:\_majordomo\htdocs\templates_alt
далее уже редактирую верстку и подключаю свои стили.
например C:\_majordomo\htdocs\templates\application.html это основное тело основной страницы (как я понял) туда цеплять стили и скрипты свои. далее различные модули вроде как ifram'ом размещаются, некоторые в этой же обертке, а некоторые в своих.
для меню свой файл C:\_majordomo\htdocs\templates\menu.html для него стили и скрипты подключать там. а далее все зависит от знаний html и css (возможно js, а то даже и php), а так же фантазии ;)
:!: так же, важно понимать, что локализуя основные обертки, рискуешь после обновления получить ошибки (из за отсутствия нововведеных файлов), в лучшем случае надо будет сверить оригинал файла и твою локальную копию и добавить недостающие строки, в худшем интеграция может быть более глубокая и тогда придется попотеть, что бы найти косяк (а то мб и не получится вовсе) :!:
За это сообщение автора alt.Maksimus поблагодарил:
VooDooN (Вс янв 14, 2018 7:27 pm)
Рейтинг: 1.47%
Ответить