san4es

 
<<< Назад

Добавление розетки в простые устройства

что бы не выбирать в простых устройствах иконку вручную,было создано это, с изменением статуса без подсвечивания

html/modules/devices/addons
создаем файл "Ssocket_structure.php"
в нем вписываем

<?php

$this->device_types['Socket'] = array(
    'TITLE'=>LANG_DEVICES_SOCKET,
    'PARENT_CLASS'=>'SControllers',
    'CLASS'=>'SSocket',
    'DESCRIPTION'=>'bulb controller',
    'PROPERTIES'=>array( 

    ),
    'METHODS'=>array(
        'switch'=>array('DESCRIPTION'=>'Switch'),
        'turnOn'=>array('DESCRIPTION'=>LANG_DEVICES_TURN_ON,'_CONFIG_SHOW'=>1),
        'turnOff'=>array('DESCRIPTION'=>LANG_DEVICES_TURN_OFF,'_CONFIG_SHOW'=>1), 

    ),
);

так же создаем "Ssocket_structure_links.php"
в нем вписываем

<?php
$this->device_links['SMotions,SButtons,SOpenClose,SCameras'][2]['TARGET_CLASS'] .= ',SSocket';

html/modules/devices
создаем файл "SSocket_switch.php"
в нем вписываем

<?php
if ($this->getProperty('status')) {
 $this->callmethodSafe('turnOff');
} else {
 $this->callmethodSafe('turnOn');
}

создаем файл "SSocket_turnOff"
в нем вписываем

<?php
$this->setProperty('status', 0);

создаем файл "SSocket_turnOn"
в нем вписываем

<?php
$this->setProperty('status', 1);

html/templates/classes/views/
создаем файл 'SSocket.php"
в нем вписываем

 <div class="device-widget socket %.loadType%"
     onClick='$(".icon%.object_id%_light").addClass("pressed");
     setTimeout("$(\".icon%.object_id%_light\").removeClass(\"pressed\");",300);
     callMethod("%.object_title%.switch");
     $.get("<#ROOTHTML#>ajax/devices.html?op=clicked&object="+encodeURIComponent("%.object_title%"));'>
     <div class="socket device-icon %.status|"off;on"% icon%.object_id%_light" id="icon%.object_id%_light" style='%.icon|"background-image:url(%.icon%)"%'></div>
     <div class="device-header">%.object_description%
 </div>
</div>

html/css/
добавляем

/*Розетка иконка*/
.socket .device-icon.on {
    background-image: url(../cms/scenes/styles/devices/socket_on.png);
}
.socket .device-icon {  
    background-image: url(../cms/scenes/styles/devices/socket_off.png);
}

создаем папку /cms/scenes/styles/devices/ куда вставляем иконки.

иконку качаем тут:https://disk.yandex.ru/d/oddES0WL2qCY4w
languages/ru.php
добавляем

    'DEVICES_SOCKET' => 'Розетка',

после строчки 1118
в // DEVICES

Обсуждение (6) (8)

Смотрите так же:
03.01.2022 Датчики движения, работают как система безопасности дома
07.11.2021 DarknessMode добавления строчки для изменения иконки
07.11.2021 EconomMode добавления строчки для изменения иконки
04.10.2021 Открытие\закрытие простые устройства
03.10.2021 Датчик движения простые устройства
11.09.2021 SGadget в простых устройствах
13.07.2021 Измененый дивайс Простое устройство: ТВ
24.09.2021 Изменения иконки - свойства vаlue температуры
19.01.2021 Изменения иконки- статуса RGB

Москва, Россия

На форуме: yoshok