Шаблон класса / Class Template

Новые релизы, обновления и т.п.

Модератор: immortal

Ged
Сообщения: 105
Зарегистрирован: Чт окт 20, 2016 10:59 pm
Благодарил (а): 1 раз
Поблагодарили: 7 раз

Re: Шаблон класса / Class Template

Сообщение Ged » Пн фев 20, 2017 10:01 am

Утонула тема?
Аватара пользователя
sergejey
Site Admin
Сообщения: 4273
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1453 раза
Контактная информация:

Re: Шаблон класса / Class Template

Сообщение sergejey » Пт фев 24, 2017 1:04 pm

Ged писал(а):Как получить в шаблоне имя объекта?
А то сейчас приходится извращаться
Можно использовать %.object_title% или даже %.object_description%

примеры кодов можно взять из ./templates/classes/views/

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
maleha
Сообщения: 19
Зарегистрирован: Пн окт 24, 2016 7:39 pm
Благодарил (а): 3 раза
Поблагодарили: 1 раз

Re: Шаблон класса / Class Template

Сообщение maleha » Вт мар 21, 2017 3:10 pm

Подскажите. Есть класс blokrele - это модуль из 8 реле который управляется esp8266. Также был создан класс rele - это сами релюшки со своими свойствами. Каждый обьект релюшки называется %имя blokrele%_d# релюшки. Сделал шаблон отображения для blokrele
<style>
.openclose-widget {
Float: left;
padding-right: 6px;
}
.openclose-text {
padding-top:10px;
cursor:pointer;
vertical-align:middle;
}
.openclose-light {
border-radius: 50%;
width: 12px;
height: 12px;
border: 2px solid #3d3d3d;
margin-top: 5px;
float: left;
margin-left: 3px;
margin-right: 10px;
}
.openclose-light.on {
background-color:#C7FF73;
box-shadow: 0px 0px 15px #99FF00;
border-color:#FDF1DF;
}
</style>
<div class="openclose-widget">
<div>№1</div>
<div class="openclose-light %%.mac%_d0.status|"off;on"%"></div>
<div class="openclose-text" style='display:%%.object_title%_d0.status|"none;block"%;cursor:pointer'></div>
<div class="openclose-text" style='display:%%.object_title%_d0.status|"block;none"%;cursor:pointer'></div>
</div>
<div class="openclose-widget">
<div>№2</div>
<div class="openclose-light %%.mac%_d1.status|"off;on"%"></div>
<div class="openclose-text" style='display:%5ccf7f2cb630_d1.status|"none;block"%;cursor:pointer'>%.object_description%</div>
<div class="openclose-text" style='display:%5ccf7f2cb630_d1.status|"block;none"%;cursor:pointer'>%.object_description%</div>
</div>
и так далее для все реле в блоке. Так вот проблема в том что смена состояния происходит только при обновлнении страницы. Если такой шаблон создать непосредсьвенно для класса rele то все нормально...
serge_wddm
Сообщения: 9
Зарегистрирован: Вс июн 26, 2016 9:58 am
Благодарил (а): 8 раз
Поблагодарили: 2 раза

Re: Шаблон класса / Class Template

Сообщение serge_wddm » Ср апр 05, 2017 2:00 pm

Данный вопрос уже подымался в начале темы.
Возник затык при использовании элемента "ползунок" в шаблоне класса.
Объект вместе с ползунком без проблем визуализируется на dashboard.
ползунок изменяет своё значение при изменении связанного с ним свойства объекта Light_Brightness_Max.
Проблема в том, что я не могу изменить значение связанного свойства Light_Brightness_Max при перемещении ползунка мышкой.

фрагмент html кода шаблона объекта:

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

<input type="range" name="brMax" id="rngBrMax" value="%.Light_Brightness_Max%" oninput="setBrMax()" min="0" max="100" step="1">

<script type="text/javascript">
 function setBrMax() {
    var newVal = document.getElementById("rngBrMax").value;
    callMethod('HallLight.SetBrightnessMax', 'param1=newVal');
}
 </script>
javascript вызывает метод объекта HallLight.SetBrightnessMax. Но вместо числового значения передаёт в параметре 'param1' строку 'newVal'

Отвечу сам себе. Проблема была в синтаксисе передачи второго параметра метода callMethod. Т.е. вторым параметром идёт строка вида 'param1=10', где 10 - это значение параметра.
Чтобы всё правильно работало нужно самим сгенерировать строку и передать её вторым параметром. Вот рабочий код:

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

<input type="range" name="brMax" id="rngBrMax" value="%.light_brightness_max%" onchange="setBrMax()" min="0" max="100" step="1">

<script type="text/javascript">
 function setBrMax() 
 {
    var newVal = document.getElementById("rngBrMax").value;
   var par = "param1=" + newVal.toString();
    callMethod('HallLight.SetBrightnessMax', par);
 }
 </script>
Далее в методе "SetBrightnessMax" объекта HallLight (в моём случае) получаем значение ползунка из параметра:

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

$newBr = $params['param1']; 
и дальше используем значение ползунка в переменной $newBr по своему усмотрению.
За это сообщение автора serge_wddm поблагодарил:
odinvolk (Пн апр 09, 2018 5:41 pm)
Рейтинг: 1.27%
Аватара пользователя
nick7zmail
Сообщения: 6624
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 119 раз
Поблагодарили: 1631 раз

Re: Шаблон класса / Class Template

Сообщение nick7zmail » Вт дек 19, 2017 9:02 pm

И снова рубрика "дело было вечером, делать было...есть чего"))
Добрался я наконец и до тестирования шаблонов класса =) Да и тихо в этой темке))
Просто надоела эта унылая строка в меню...
viber image.jpg
viber image.jpg (10.83 КБ) 3760 просмотров
И захотелось чего нить по-оригинальнее))) Не скажу что сильно "красочно"...но, вроде, вполне себе неплохо =)
111.png
111.png (104.27 КБ) 3760 просмотров
Самое прикольное, что работает везде...и в меню, и в дашборде, и на сценах (правда на сцене, как обычно, со шрифтами фигня какая-то)))
Вот код, кому надо.
Шаблон классаПоказать

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

 <style>
@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css");
.container {
  background-color: rgba(0, 0, 0, 0.3);
  width: 270px;
  height: 100px;
  border-radius: 15px;
  border:1px solid #444;
}
.container img {
  width: 80px;
  height: 80px;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 10px;
  float: left;
}
.batt {
  padding-right: 20px;
  padding-top: 15px;
  float: right;
}

.info {
  padding-top: 10px;
  height: 80px;
}
.name {
  font-size: 140%;
  font-family: fantasy;
}
.loc {
  font-size: 100%;
  padding-top: 10px;
  padding-bottom: 10px;

}
.time {
  font-size: 60%;
  color:grey;
}
 </style>


<div class="container">
    <img src="%.user_icon%">
    <div class="batt">
      %.BattLevel% % <span class="batt_icon fa fa-%.BattPic%" aria-hidden="true"></span>
     </div>
    <div class="info">
      <div class="name">%.user_name%</div>
      <div class="loc"><span class="loc_icon fa fa-map-marker" aria-hidden="true"></span> %.seenAt%</div>
      <div class="time"><span class="ref_icon fa fa-refresh" aria-hidden="true"></span> %.TimeUpdated%</div>
    </div>
  </div>
Для тех кто ещё не понял - вставлять в шаблоны класса users, у пользователей должны быть свойства (помимо стандартных) user_icon BattPic user_name TimeUpdated. В первом - путь к картинке, остальные, думаю, и так понятно))
В общем пользуйтесь, если надо...если что нить оригинальнее придумаю - выложу...а то этот места многовато занимает, при минимуме информации...
За это сообщение автора nick7zmail поблагодарили (всего 9):
Logrus (Вт дек 19, 2017 9:59 pm) • kas5858 (Пт дек 22, 2017 1:06 pm) • antpino (Пн янв 08, 2018 8:04 pm) • serge_wddm (Вс янв 14, 2018 6:39 pm) • savenko_egor (Вт янв 16, 2018 6:17 pm) • ipc2002 (Вт янв 16, 2018 7:07 pm) • directman66 (Вс апр 15, 2018 10:47 pm) • jjevgen (Ср янв 30, 2019 1:25 pm) • kosem (Чт май 02, 2019 7:52 pm)
Рейтинг: 11.39%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Logrus
Сообщения: 1386
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 252 раза
Поблагодарили: 239 раз

Re: Шаблон класса / Class Template

Сообщение Logrus » Вт дек 19, 2017 10:03 pm

СпойлерПоказать
пользователи.PNG
пользователи.PNG (23.54 КБ) 3744 просмотра
с наскока не все получилось, хотя я вроде б все поменял в тексте и шаблоне одинаково
а повторение (Smart Repeat) для этого не увидел
до картинки не дошел, попробовал
СпойлерПоказать
пользователи1.PNG
пользователи1.PNG (22.93 КБ) 3734 просмотра
еще раз, спасибо )))
Последний раз редактировалось Logrus Вт дек 19, 2017 10:17 pm, всего редактировалось 1 раз.
Мой CONNECT | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
Аватара пользователя
nick7zmail
Сообщения: 6624
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 119 раз
Поблагодарили: 1631 раз

Re: Шаблон класса / Class Template

Сообщение nick7zmail » Вт дек 19, 2017 10:06 pm

Хах)) не учел момент, что имена могут быть гораздо длиннее)) поменять надо размер шрифта вот тут
.name {
font-size: 140%;
font-family: fantasy;
}
ну и путь к картинке указать в свойстве...и пожалуй под ваше меню основной размер чуть уменьшить надо
.container {
width: 270px;
height: 100px
тут
За это сообщение автора nick7zmail поблагодарил:
Logrus (Вт дек 19, 2017 10:16 pm)
Рейтинг: 1.27%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
igorewa
Сообщения: 480
Зарегистрирован: Ср дек 21, 2016 11:54 pm
Откуда: Киев
Благодарил (а): 8 раз
Поблагодарили: 40 раз

Re: Шаблон класса / Class Template

Сообщение igorewa » Ср дек 20, 2017 2:26 am

А у меня стазу несколько проблем. 1я это заряд батареи BattLevel отображается 92.00000166893 ( а в самом модуле iDevices 92 ) и нет данных о последнем обновлении
Снимок экрана 2017-12-20 в 01.17.19.png
Снимок экрана 2017-12-20 в 01.17.19.png (78.08 КБ) 3716 просмотров
Свойства Объект: Alena
СпойлерПоказать
Снимок экрана 2017-12-20 в 01.21.35.png
Снимок экрана 2017-12-20 в 01.21.35.png (177.4 КБ) 3716 просмотров
ASUS H110T, I5 7500, DDR4-16Gb, SSD256 . WIN10 64 (LTSB)
Аватара пользователя
nick7zmail
Сообщения: 6624
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 119 раз
Поблагодарили: 1631 раз

Re: Шаблон класса / Class Template

Сообщение nick7zmail » Ср дек 20, 2017 6:14 am

1) В свойствах батарею округляйте.
2) Время можете указать не %.TimeUpdated% а %.CoordinatesUpdate% в вашем случае.
3) У Вас не записано свойство SeenAt, по-этому местоположение не отображается.
4) В BattPic у меня запихано название иконки из шрифта AwesomeFont.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Logrus
Сообщения: 1386
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 252 раза
Поблагодарили: 239 раз

Re: Шаблон класса / Class Template

Сообщение Logrus » Ср дек 20, 2017 6:23 am

4. fa fa-plug
( отвлекли) а вот при нуле какую?
Мой CONNECT | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо - ТАМ =>
Ответить