Modules/devices/devices structure links inc php: различия между версиями
Материал из MajorDoMo инфо
Elmax (обсуждение | вклад) (заготовка) |
Elmax (обсуждение | вклад) (+ файл devices_structure_links.inc.php) |
||
| Строка 4: | Строка 4: | ||
<pre> | <pre> | ||
<?php | |||
// Инициализация массива device_links для хранения ссылок между различными устройствами | |||
$this->device_links=array( | |||
// Ссылка между устройствами движения, кнопками, открывающими/закрывающими устройствами и камерами | |||
'SMotions,SButtons,SOpenClose,SCameras'=>array( | |||
// Ссылка "switch_timer" для управления таймером | |||
array( | |||
// Название ссылки | |||
'LINK_NAME'=>'switch_timer', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SWITCH_TIMER_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SControllers', | |||
// Параметры ссылки | |||
'PARAMS'=>array( | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_delay', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER_PARAM_ACTION_DELAY, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'num' | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'darktime', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER_PARAM_DARKTIME, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Опция "нет" | |||
array('TITLE'=>LANG_NO,'VALUE'=>'0'), | |||
// Опция "да" | |||
array('TITLE'=>LANG_YES,'VALUE'=>'1') | |||
) | |||
) | |||
) | |||
), | |||
// Ссылка "switch_it" для управления устройствами | |||
array( | |||
// Название ссылки | |||
'LINK_NAME'=>'switch_it', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SWITCH_IT_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SControllers,SOpenable', | |||
// Параметры ссылки | |||
'PARAMS'=>array( | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_type', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_ACTION_TYPE, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Опция "включить" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_ON,'VALUE'=>'turnon'), | |||
// Опция "выключить" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_OFF,'VALUE'=>'turnoff'), | |||
// Опция "переключить" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_SWITCH,'VALUE'=>'switch'), | |||
// Опция "открыть" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_OPEN,'VALUE'=>'open'), | |||
// Опция "закрыть" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_CLOSE,'VALUE'=>'close'), | |||
) | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_delay', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT_PARAM_ACTION_DELAY, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'num' | |||
) | |||
) | |||
), | |||
// Ссылка "set_color" для управления цветом устройств | |||
array( | |||
// Название ссылки | |||
'LINK_NAME'=>'set_color', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SET_COLOR, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SET_COLOR_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SRGB', | |||
// Параметры ссылки | |||
'PARAMS'=>array( | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_color', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SET_COLOR_PARAM_ACTION_COLOR, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'color' | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_delay', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT_PARAM_ACTION_DELAY, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'num' | |||
) | |||
) | |||
) | |||
), | |||
// Ссылка между устройствами термостатов | |||
'SThermostats'=>array( | |||
array( | |||
// Название ссылки | |||
'LINK_NAME'=>'thermostat_switch', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_THERMOSTAT_SWITCH, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_THERMOSTAT_SWITCH_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SControllers', | |||
// Параметры ссылки | |||
'PARAMS'=>array( | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'invert_status', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_THERMOSTAT_INVERT, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Опция "нет" | |||
array('TITLE'=>LANG_NO,'VALUE'=>'0'), | |||
// Опция "да" | |||
array('TITLE'=>LANG_YES,'VALUE'=>'1') | |||
) | |||
) | |||
) | |||
) | |||
), | |||
// Ссылка между датчиками | |||
'SSensors'=>array( | |||
array( | |||
// Название ссылки | |||
'LINK_NAME'=>'sensor_switch', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_SWITCH_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SControllers,SOpenable', | |||
// Параметры ссылки | |||
'PARAMS'=>array( | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'source_value_type', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Текущее значение | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_CURRENT,'VALUE'=>''), | |||
// Минимальное значение | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_MIN,'VALUE'=>'min'), | |||
// Среднее значение | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_AVG,'VALUE'=>'avg'), | |||
// Максимальное значение | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_MAX,'VALUE'=>'max'), | |||
) | |||
), | |||
array( | |||
// Условие видимости параметра | |||
'PARAM_VISIBLE_CONDITION'=>array( | |||
// Проверяемый параметр | |||
'CHECK_PARAM_NAME'=>'source_value_type', | |||
// Условие проверки | |||
'CHECK_PARAM_CONDITION'=>'!=', | |||
// Значение для проверки | |||
'CHECK_PARAM_VALUE'=>'', | |||
), | |||
// Название параметра | |||
'PARAM_NAME'=>'source_value_time', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_FOR_PERIOD, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'duration' | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'condition_type', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Условие "выше" | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION_ABOVE,'VALUE'=>'above'), | |||
// Условие "ниже" | |||
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION_BELOW,'VALUE'=>'below') | |||
) | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'condition_value', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_VALUE, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'num' | |||
), | |||
array( | |||
// Название параметра | |||
'PARAM_NAME'=>'action_type', | |||
// Заголовок параметра | |||
'PARAM_TITLE'=>LANG_DEVICES_LINK_ACTION_TYPE, | |||
// Тип параметра | |||
'PARAM_TYPE'=>'select', | |||
// Опции параметра | |||
'PARAM_OPTIONS'=>array( | |||
// Действие "включить" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_ON,'VALUE'=>'turnon'), | |||
// Действие "выключить" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_OFF,'VALUE'=>'turnoff'), | |||
// Действие "открыть" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_OPEN,'VALUE'=>'open'), | |||
// Действие "закрыть" | |||
array('TITLE'=>LANG_DEVICES_LINK_TYPE_CLOSE,'VALUE'=>'close'), | |||
) | |||
) | |||
) | |||
), | |||
array ( | |||
// Название ссылки | |||
'LINK_NAME'=>'sensor_pass', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_PASS, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_PASS_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SThermostats', | |||
) | |||
), | |||
/* | |||
Этот фрагмент кода завершает определение массива device_links, | |||
который содержит ссылки между различными типами устройств. | |||
Каждая ссылка определена массивом параметров, включая название ссылки, | |||
заголовок, описание и целевой класс устройства. | |||
В данном случае, ссылка open_sensor_pass предназначена для устройств, | |||
которые могут открываться и закрываться, | |||
и позволяет управлять их состоянием на основе данных с датчиков. | |||
*/ | |||
// Ссылка между устройствами, которые могут открываться и закрываться | |||
'SOpenClose' =>array( | |||
array ( | |||
// Название ссылки | |||
'LINK_NAME'=>'open_sensor_pass', | |||
// Заголовок ссылки | |||
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_PASS, | |||
// Описание ссылки | |||
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_PASS_DESCRIPTION, | |||
// Класс целевого устройства | |||
'TARGET_CLASS'=>'SOpenable', | |||
) | |||
) | |||
); | |||
/* | |||
Этот участок кода проверяет наличие директории addons и, | |||
если она существует, загружает все файлы, которые соответствуют шаблону _links.php. | |||
Это позволяет расширять функциональность системы за счет дополнительных ссылок, | |||
определенных в этих файлах. | |||
*/ | |||
// Проверяем наличие директории addons и загружаем дополнительные ссылки | |||
// Путь к директории addons | |||
$addons_dir=dirname(__FILE__).'/addons'; | |||
// Если директория существует | |||
if (is_dir($addons_dir)) { | |||
// Получаем список файлов в директории | |||
$addon_files=scandir($addons_dir); | |||
// Перебираем каждый файл | |||
foreach($addon_files as $file) { | |||
// Если файл соответствует шаблону "_links.php" | |||
if (preg_match('/\_links\.php$/',$file)) { | |||
// Загружаем файл с дополнительными ссылками | |||
require($addons_dir.'/'.$file); | |||
} | |||
} | |||
} | |||
</pre> | </pre> | ||
Текущая версия от 13:47, 6 апреля 2024
ᐂ В корневой раздел ᐃ В директорию расположения файла
<?php
// Инициализация массива device_links для хранения ссылок между различными устройствами
$this->device_links=array(
// Ссылка между устройствами движения, кнопками, открывающими/закрывающими устройствами и камерами
'SMotions,SButtons,SOpenClose,SCameras'=>array(
// Ссылка "switch_timer" для управления таймером
array(
// Название ссылки
'LINK_NAME'=>'switch_timer',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SWITCH_TIMER_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SControllers',
// Параметры ссылки
'PARAMS'=>array(
array(
// Название параметра
'PARAM_NAME'=>'action_delay',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER_PARAM_ACTION_DELAY,
// Тип параметра
'PARAM_TYPE'=>'num'
),
array(
// Название параметра
'PARAM_NAME'=>'darktime',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_TIMER_PARAM_DARKTIME,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Опция "нет"
array('TITLE'=>LANG_NO,'VALUE'=>'0'),
// Опция "да"
array('TITLE'=>LANG_YES,'VALUE'=>'1')
)
)
)
),
// Ссылка "switch_it" для управления устройствами
array(
// Название ссылки
'LINK_NAME'=>'switch_it',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SWITCH_IT_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SControllers,SOpenable',
// Параметры ссылки
'PARAMS'=>array(
array(
// Название параметра
'PARAM_NAME'=>'action_type',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_ACTION_TYPE,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Опция "включить"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_ON,'VALUE'=>'turnon'),
// Опция "выключить"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_OFF,'VALUE'=>'turnoff'),
// Опция "переключить"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_SWITCH,'VALUE'=>'switch'),
// Опция "открыть"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_OPEN,'VALUE'=>'open'),
// Опция "закрыть"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_CLOSE,'VALUE'=>'close'),
)
),
array(
// Название параметра
'PARAM_NAME'=>'action_delay',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT_PARAM_ACTION_DELAY,
// Тип параметра
'PARAM_TYPE'=>'num'
)
)
),
// Ссылка "set_color" для управления цветом устройств
array(
// Название ссылки
'LINK_NAME'=>'set_color',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SET_COLOR,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SET_COLOR_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SRGB',
// Параметры ссылки
'PARAMS'=>array(
array(
// Название параметра
'PARAM_NAME'=>'action_color',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SET_COLOR_PARAM_ACTION_COLOR,
// Тип параметра
'PARAM_TYPE'=>'color'
),
array(
// Название параметра
'PARAM_NAME'=>'action_delay',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SWITCH_IT_PARAM_ACTION_DELAY,
// Тип параметра
'PARAM_TYPE'=>'num'
)
)
)
),
// Ссылка между устройствами термостатов
'SThermostats'=>array(
array(
// Название ссылки
'LINK_NAME'=>'thermostat_switch',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_THERMOSTAT_SWITCH,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_THERMOSTAT_SWITCH_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SControllers',
// Параметры ссылки
'PARAMS'=>array(
array(
// Название параметра
'PARAM_NAME'=>'invert_status',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_THERMOSTAT_INVERT,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Опция "нет"
array('TITLE'=>LANG_NO,'VALUE'=>'0'),
// Опция "да"
array('TITLE'=>LANG_YES,'VALUE'=>'1')
)
)
)
)
),
// Ссылка между датчиками
'SSensors'=>array(
array(
// Название ссылки
'LINK_NAME'=>'sensor_switch',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_SWITCH_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SControllers,SOpenable',
// Параметры ссылки
'PARAMS'=>array(
array(
// Название параметра
'PARAM_NAME'=>'source_value_type',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Текущее значение
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_CURRENT,'VALUE'=>''),
// Минимальное значение
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_MIN,'VALUE'=>'min'),
// Среднее значение
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_AVG,'VALUE'=>'avg'),
// Максимальное значение
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_TYPE_MAX,'VALUE'=>'max'),
)
),
array(
// Условие видимости параметра
'PARAM_VISIBLE_CONDITION'=>array(
// Проверяемый параметр
'CHECK_PARAM_NAME'=>'source_value_type',
// Условие проверки
'CHECK_PARAM_CONDITION'=>'!=',
// Значение для проверки
'CHECK_PARAM_VALUE'=>'',
),
// Название параметра
'PARAM_NAME'=>'source_value_time',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_VALUE_FOR_PERIOD,
// Тип параметра
'PARAM_TYPE'=>'duration'
),
array(
// Название параметра
'PARAM_NAME'=>'condition_type',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Условие "выше"
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION_ABOVE,'VALUE'=>'above'),
// Условие "ниже"
array('TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_CONDITION_BELOW,'VALUE'=>'below')
)
),
array(
// Название параметра
'PARAM_NAME'=>'condition_value',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_SENSOR_SWITCH_PARAM_VALUE,
// Тип параметра
'PARAM_TYPE'=>'num'
),
array(
// Название параметра
'PARAM_NAME'=>'action_type',
// Заголовок параметра
'PARAM_TITLE'=>LANG_DEVICES_LINK_ACTION_TYPE,
// Тип параметра
'PARAM_TYPE'=>'select',
// Опции параметра
'PARAM_OPTIONS'=>array(
// Действие "включить"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_ON,'VALUE'=>'turnon'),
// Действие "выключить"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_TURN_OFF,'VALUE'=>'turnoff'),
// Действие "открыть"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_OPEN,'VALUE'=>'open'),
// Действие "закрыть"
array('TITLE'=>LANG_DEVICES_LINK_TYPE_CLOSE,'VALUE'=>'close'),
)
)
)
),
array (
// Название ссылки
'LINK_NAME'=>'sensor_pass',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_PASS,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_PASS_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SThermostats',
)
),
/*
Этот фрагмент кода завершает определение массива device_links,
который содержит ссылки между различными типами устройств.
Каждая ссылка определена массивом параметров, включая название ссылки,
заголовок, описание и целевой класс устройства.
В данном случае, ссылка open_sensor_pass предназначена для устройств,
которые могут открываться и закрываться,
и позволяет управлять их состоянием на основе данных с датчиков.
*/
// Ссылка между устройствами, которые могут открываться и закрываться
'SOpenClose' =>array(
array (
// Название ссылки
'LINK_NAME'=>'open_sensor_pass',
// Заголовок ссылки
'LINK_TITLE'=>LANG_DEVICES_LINK_SENSOR_PASS,
// Описание ссылки
'LINK_DESCRIPTION'=>LANG_DEVICES_LINK_SENSOR_PASS_DESCRIPTION,
// Класс целевого устройства
'TARGET_CLASS'=>'SOpenable',
)
)
);
/*
Этот участок кода проверяет наличие директории addons и,
если она существует, загружает все файлы, которые соответствуют шаблону _links.php.
Это позволяет расширять функциональность системы за счет дополнительных ссылок,
определенных в этих файлах.
*/
// Проверяем наличие директории addons и загружаем дополнительные ссылки
// Путь к директории addons
$addons_dir=dirname(__FILE__).'/addons';
// Если директория существует
if (is_dir($addons_dir)) {
// Получаем список файлов в директории
$addon_files=scandir($addons_dir);
// Перебираем каждый файл
foreach($addon_files as $file) {
// Если файл соответствует шаблону "_links.php"
if (preg_match('/\_links\.php$/',$file)) {
// Загружаем файл с дополнительными ссылками
require($addons_dir.'/'.$file);
}
}
}