UNPKG

iobroker.shuttercontrol

Version:
694 lines (638 loc) 37.1 kB
// Shuttercontrol - Copyright (c) by simatec // Please visit https://github.com/simatec/ioBroker.shuttercontrol for licence-agreement and further information //Settings // This will be called by the admin adapter when the settings page loads function load(settings, onChange) { // select elements with id=key and class=value and insert value if (!settings) return; console.log('##on change'); // select elements with id=key and class=value and insert value for (var key in settings) { if (!settings.hasOwnProperty(key)) continue; var $value = $('#' + key + '.value'); if ($value.attr('type') === 'checkbox') { $value.prop('checked', settings[key]).on('change', function () { showHideSettings(); onChange(); }); } else { $value.val(settings[key]).on('change', function () { console.log('on change'); showHideSettings(); onChange(); }).on('keyup', function () { $(this).trigger('change'); }); } } //var events = []; events = settings.events || []; values2table('events', events, onChange, tableOnReady); translateTable(); showHideSettings(); $('#responseOIDDialog').on('click', function () { var devices = table2values('events'); var id = 0; for (var i = 0; i < devices.length; i++) { id = id + 1; } var shutterNumber = id + 1; setTimeout(function () { // value $('#events .values-input[data-name="shutterName"][data-index="' + id + '"]').val(_('Shutter') + shutterNumber).trigger('change'); $('#events .values-input[data-name="triggerState"][data-index="' + id + '"]').val('none').trigger('change'); $('#events .values-input[data-name="triggerStateTilted"][data-index="' + id + '"]').val('none').trigger('change'); $('#events .values-input[data-name="typeUp"][data-index="' + id + '"]').val('sunrise').trigger('change'); $('#events .values-input[data-name="typeDown"][data-index="' + id + '"]').val('sunset').trigger('change'); $('#events .values-input[data-name="heightUp"][data-index="' + id + '"]').val('100').trigger('change'); $('#events .values-input[data-name="heightDown"][data-index="' + id + '"]').val('0').trigger('change'); $('#events .values-input[data-name="triggerDrive"][data-index="' + id + '"]').val('100').trigger('change'); $('#events .values-input[data-name="triggerDriveTildet"][data-index="' + id + '"]').val('50').trigger('change'); $('#events .values-input[data-name="triggerChange"][data-index="' + id + '"]').val('off').trigger('change'); $('#events .values-input[data-name="elevation"][data-index="' + id + '"]').val('8').trigger('change'); $('#events .values-input[data-name="enabled"][data-index="' + id + '"]').prop('checked', true); $('#events .values-input[data-name="type"][data-index="' + id + '"]').val('in- & outside temperature and direction').trigger('change'); $('#events .values-input[data-name="heightDownSun"][data-index="' + id + '"]').val('30').trigger('change'); $('#events .values-input[data-name="direction"][data-index="' + id + '"]').val('120').trigger('change'); $('#events .values-input[data-name="directionRange"][data-index="' + id + '"]').val('50').trigger('change'); $('#events .values-input[data-name="tempInside"][data-index="' + id + '"]').val('23').trigger('change'); $('#events .values-input[data-name="tempOutside"][data-index="' + id + '"]').val('23').trigger('change'); $('#events .values-input[data-name="valueLight"][data-index="' + id + '"]').val('15').trigger('change'); $('#events .values-input[data-name="autoDrive"][data-index="' + id + '"]').val('off').trigger('change'); $('#events .values-input[data-name="hysteresisOutside"][data-index="' + id + '"]').val('5').trigger('change'); $('#events .values-input[data-name="hysteresisInside"][data-index="' + id + '"]').val('5').trigger('change'); $('#events .values-input[data-name="hysteresisLight"][data-index="' + id + '"]').val('5').trigger('change'); $('#events .values-input[data-name="XmasLevel"][data-index="' + id + '"]').val('0').trigger('change'); $('#events .values-input[data-name="betweenPositionLevel"][data-index="' + id + '"]').val('50').trigger('change'); $('#events .values-input[data-name="trigDelyUp"][data-index="' + id + '"]').val('0').trigger('change'); $('#events .values-input[data-name="trigDelyDown"][data-index="' + id + '"]').val('0').trigger('change'); $('#events .values-input[data-name="sunProtectEndDely"][data-index="' + id + '"]').val('0').trigger('change'); $('#events .values-input[data-name="tempHeatProtection"][data-index="' + id + '"]').val('30').trigger('change'); // switch $('#events .values-input[data-name="LateDown"][data-index="' + id + '"]').val(true).trigger('change'); $('#events .values-input[data-name="inSummerNotDown"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="KeepSunProtect"][data-index="' + id + '"]').val(true).trigger('change'); $('#events .values-input[data-name="heatProtection"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="driveAfterClose"][data-index="' + id + '"]').val(true).trigger('change'); $('#events .values-input[data-name="useXmasLevel"][data-index="' + id + '"]').val(true).trigger('change'); $('#events .values-input[data-name="betweenPosition"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="enableAlarmWind1"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="enableAlarmWind2"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="enableAlarmRain"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="enableAlarmFrost"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="enableAlarmFire"][data-index="' + id + '"]').val(false).trigger('change'); $('#events .values-input[data-name="ignoreTriggerAutoState"][data-index="' + id + '"]').val(false).trigger('change'); }, 1000); initSelectId(function (sid) { sid.selectId('show', $('#events .values-input[data-name="name"][data-index="' + id + '"]').val(), function (newId) { if (newId) { $('#events .values-input[data-name="name"][data-index="' + id + '"]').val(newId).trigger('change'); socket.emit('getObject', newId, function (err, obj) { var name = getName(obj); var shutterNumber = id + 1; $('#events .values-input[data-name="shutterName"][data-index="' + id + '"]').val(name != '' ? name : _('Shutter') + shutterNumber).trigger('change'); }); } }); }); }); $('#actualValueTempDialogPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#actualValueTemp').val(), function (newId) { if (newId) { $('#actualValueTemp').val(newId).trigger('change'); } }); }); }); $('#actualValueLightDialogPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#actualValueLight').val(), function (newId) { if (newId) { $('#actualValueLight').val(newId).trigger('change'); } }); }); }); $('#actualValueTempInsideDialogPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#actualValueTempInside').val(), function (newId) { if (newId) { $('#actualValueTempInside').val(newId).trigger('change'); } }); }); }); $('#triggerAutoSleepDialog').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#triggerAutoSleep').val(), function (newId) { if (newId) { $('#triggerAutoSleep').val(newId).trigger('change'); } }); }); }); $('#triggerAutoChildrenDialog').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#triggerAutoChildren').val(), function (newId) { if (newId) { $('#triggerAutoChildren').val(newId).trigger('change'); } }); }); }); $('#triggerAutoLivingDialog').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#triggerAutoLiving').val(), function (newId) { if (newId) { $('#triggerAutoLiving').val(newId).trigger('change'); } }); }); }); $('#triggerIDPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#triggerID').val(), function (newId) { if (newId) { $('#triggerID').val(newId).trigger('change'); } }); }); }); $('#HolidayDPPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#HolidayDP').val(), function (newId) { if (newId) { $('#HolidayDP').val(newId).trigger('change'); } }); }); }); $('#schoolfreeDPPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#schoolfreeDP').val(), function (newId) { if (newId) { $('#schoolfreeDP').val(newId).trigger('change'); } }); }); }); $('#LightsensorUpDownPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#lightsensorUpDown').val(), function (newId) { if (newId) { $('#lightsensorUpDown').val(newId).trigger('change'); } }); }); }); $('#alarmWind1PopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#alarmWind1').val(), function (newId) { if (newId) { $('#alarmWind1').val(newId).trigger('change'); } }); }); }); $('#alarmWind2PopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#alarmWind2').val(), function (newId) { if (newId) { $('#alarmWind2').val(newId).trigger('change'); } }); }); }); $('#alarmRainPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#alarmRain').val(), function (newId) { if (newId) { $('#alarmRain').val(newId).trigger('change'); } }); }); }); $('#alarmFrostPopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#alarmFrost').val(), function (newId) { if (newId) { $('#alarmFrost').val(newId).trigger('change'); } }); }); }); $('#alarmFirePopUp').on('click', function () { initSelectId(function (sid) { sid.selectId('show', $('#alarmFire').val(), function (newId) { if (newId) { $('#alarmFire').val(newId).trigger('change'); } }); }); }); onChange(false); // reinitialize all the Materialize labels on the page if you are dynamically adding inputs: $('.timepicker').timepicker({ "twelveHour": false }); if (M) M.updateTextFields(); getAdapterInstances('feiertage', function (instances) { fillInstances('publicHolInstance', instances, settings['publicHolInstance']); }); getAdapterInstances('schoolfree', function (instances) { fillInstances('schoolfreeInstance', instances, settings['schoolfreeInstance']); }); fillPosition(); //++++++++++ TABS ++++++++++ //Enhance Tabs with onShow-Function $('ul.tabs li a').on('click', function () { onTabShow($(this).attr('href')); }); function onTabShow(tabId) { switch (tabId) { case "#tab-time": loadOptions(); break; case "#tab-extra": loadOptions(); break; case "#tab-extraPopUp": loadOptions(); break; } } //++++++++++ OPTIONS ++++++++++ //Load Options function loadOptions() { $('.collapsible').collapsible(); } } function translateTable() { const element = document.querySelector('#events'); const name = _('Name'); const objectID = _('Object-ID shutter'); element.style.setProperty('--my-name', `"${name}"`); element.style.setProperty('--my-id', `"${objectID}"`); } function fillPosition() { socket.emit('getObject', 'system.config', function (err, obj) { if ($('#longitude').val() === '') { $('#longitude').val(obj.common.longitude).trigger('change'); } if ($('#latitude').val() === '') { $('#latitude').val(obj.common.latitude).trigger('change'); } }); } function fillInstances(id, arr, val) { var $sel = $('#' + id); $sel.html('<option value="">' + _('none') + '</option>'); for (var i = 0; i < arr.length; i++) { var _id = arr[i]._id.replace('system.adapter.', ''); $sel.append('<option value="' + _id + '"' + (_id === val ? ' selected' : '') + '>' + _id + '</option>'); } $sel.select(); } function tableOnReady() { $('#events .table-values-div .table-values .values-buttons[data-command="edit2"]').on('click', function () { let id = $(this).data('index'); initSelectId(function (sid) { sid.selectId('show', $('#events .values-input[data-name="name"][data-index="' + id + '"]').val(), function (newId) { if (newId) { $('#events .values-input[data-name="name"][data-index="' + id + '"]').val(newId).trigger('change'); socket.emit('getObject', newId, function (err, obj) { var name = getName(obj); var shutterNumber = id + 1; $('#events .values-input[data-name="shutterName"][data-index="' + id + '"]').val(name != '' ? name : _('Shutter') + shutterNumber).trigger('change'); //$('#events .values-input[data-name="shutterName"][data-index="' + id + '"]').val(name).trigger('change'); }); } }); }); }); $('#events .table-values-div .table-values .values-buttons[data-command="edit"]').on('click', function () { let id = $(this).data('index'); // value $('#dialogDeviceEditShutter').html($('#events .values-input[data-name="shutterName"][data-index="' + id + '"]').val()); $('#heightUpShutter').val($('#events .values-input[data-name="heightUp"][data-index="' + id + '"]').val()); $('#heightDownShutter').val($('#events .values-input[data-name="heightDown"][data-index="' + id + '"]').val()); $('#triggerDriveShutter').val($('#events .values-input[data-name="triggerDrive"][data-index="' + id + '"]').val()); $('#triggerDriveTildetShutter').val($('#events .values-input[data-name="triggerDriveTildet"][data-index="' + id + '"]').val()); $('#elevationShutter').val(parseFloat($('#events .values-input[data-name="elevation"][data-index="' + id + '"]').val())); $('#triggerChangeShutter').val($('#events .values-input[data-name="triggerChange"][data-index="' + id + '"]').val()); $('#triggerChangeShutter').select(); $('#triggerStateShutter').val($('#events .values-input[data-name="triggerState"][data-index="' + id + '"]').val()); $('#triggerStateShutter').select(); $('#triggerStateTiltedShutter').val($('#events .values-input[data-name="triggerStateTilted"][data-index="' + id + '"]').val()); $('#triggerStateTiltedShutter').select(); $('#typeDown').val($('#events .values-input[data-name="typeDown"][data-index="' + id + '"]').val()); $('#typeDown').select(); $('#typeUp').val($('#events .values-input[data-name="typeUp"][data-index="' + id + '"]').val()); $('#typeUp').select(); $('#type').val($('#events .values-input[data-name="type"][data-index="' + id + '"]').val()); $('#type').select(); $('#triggerID').val($('#events .values-input[data-name="triggerID"][data-index="' + id + '"]').val()); $('#tempInside').val($('#events .values-input[data-name="tempInside"][data-index="' + id + '"]').val()); $('#heightDownSun').val($('#events .values-input[data-name="heightDownSun"][data-index="' + id + '"]').val()); $('#direction').val($('#events .values-input[data-name="direction"][data-index="' + id + '"]').val()); $('#directionRange').val($('#events .values-input[data-name="directionRange"][data-index="' + id + '"]').val()); $('#actualValueTempInside').val($('#events .values-input[data-name="tempSensor"][data-index="' + id + '"]').val()); $('#actualValueTemp').val($('#events .values-input[data-name="outsideTempSensor"][data-index="' + id + '"]').val()); $('#setpointValue').val($('#events .values-input[data-name="tempOutside"][data-index="' + id + '"]').val()); $('#actualValueLight').val($('#events .values-input[data-name="lightSensor"][data-index="' + id + '"]').val()); $('#setpointValueLight').val($('#events .values-input[data-name="valueLight"][data-index="' + id + '"]').val()); $('#autoDriveShutter').val($('#events .values-input[data-name="autoDrive"][data-index="' + id + '"]').val()); $('#autoDriveShutter').select(); $('#hysteresisOutside').val($('#events .values-input[data-name="hysteresisOutside"][data-index="' + id + '"]').val()); $('#hysteresisInside').val($('#events .values-input[data-name="hysteresisInside"][data-index="' + id + '"]').val()); $('#hysteresisLight').val($('#events .values-input[data-name="hysteresisLight"][data-index="' + id + '"]').val()); $('#XmasLevel').val($('#events .values-input[data-name="XmasLevel"][data-index="' + id + '"]').val()); $('#betweenPositionLevel').val($('#events .values-input[data-name="betweenPositionLevel"][data-index="' + id + '"]').val()); $('#trigDelyUp').val($('#events .values-input[data-name="trigDelyUp"][data-index="' + id + '"]').val()); $('#trigDelyDown').val($('#events .values-input[data-name="trigDelyDown"][data-index="' + id + '"]').val()); $('#sunProtectEndDely').val($('#events .values-input[data-name="sunProtectEndDely"][data-index="' + id + '"]').val()); $('#tempHeatProtection').val($('#events .values-input[data-name="tempHeatProtection"][data-index="' + id + '"]').val()); // switch var varLateDown = $('#events .values-input[data-name="LateDown"][data-index="' + id + '"]').prop('checked'); var varinSummerNotDown = $('#events .values-input[data-name="inSummerNotDown"][data-index="' + id + '"]').prop('checked'); var varKeepSunProtect = $('#events .values-input[data-name="KeepSunProtect"][data-index="' + id + '"]').prop('checked'); var vardriveAfterClose = $('#events .values-input[data-name="driveAfterClose"][data-index="' + id + '"]').prop('checked'); var varuseXmasLevel = $('#events .values-input[data-name="useXmasLevel"][data-index="' + id + '"]').prop('checked'); var varbetweenPosition = $('#events .values-input[data-name="betweenPosition"][data-index="' + id + '"]').prop('checked'); var varenableAlarmWind1 = $('#events .values-input[data-name="enableAlarmWind1"][data-index="' + id + '"]').prop('checked'); var varenableAlarmWind2 = $('#events .values-input[data-name="enableAlarmWind2"][data-index="' + id + '"]').prop('checked'); var varenableAlarmRain = $('#events .values-input[data-name="enableAlarmRain"][data-index="' + id + '"]').prop('checked'); var varenableAlarmFrost = $('#events .values-input[data-name="enableAlarmFrost"][data-index="' + id + '"]').prop('checked'); var varenableAlarmFire = $('#events .values-input[data-name="enableAlarmFire"][data-index="' + id + '"]').prop('checked'); var varignoreTriggerAutoState = $('#events .values-input[data-name="ignoreTriggerAutoState"][data-index="' + id + '"]').prop('checked'); var varheatProtection = $('#events .values-input[data-name="heatProtection"][data-index="' + id + '"]').prop('checked'); if (varuseXmasLevel == true) { $('.col-XmasLevel').show(); } else { $('.col-XmasLevel').hide(); } if (varheatProtection == true) { $('.col-heatProtect').show(); } else { $('.col-heatProtect').hide(); } if (varbetweenPosition == true) { $('.col-betweenPosition').show(); } else { $('.col-betweenPosition').hide(); } // switch $('#LateDown').prop('checked', varLateDown); $('#inSummerNotDown').prop('checked', varinSummerNotDown); $('#KeepSunProtect').prop('checked', varKeepSunProtect); $('#driveAfterClose').prop('checked', vardriveAfterClose); $('#useXmasLevel').prop('checked', varuseXmasLevel); $('#betweenPosition').prop('checked', varbetweenPosition); $('#enableAlarmWind1').prop('checked', varenableAlarmWind1); $('#enableAlarmWind2').prop('checked', varenableAlarmWind2); $('#enableAlarmRain').prop('checked', varenableAlarmRain); $('#enableAlarmFrost').prop('checked', varenableAlarmFrost); $('#enableAlarmFire').prop('checked', varenableAlarmFire); $('#ignoreTriggerAutoState').prop('checked', varignoreTriggerAutoState); $('#heatProtection').prop('checked', varheatProtection); setTimeout(function () { initDialogShutter(function (sid) { // val var newHeightUp = $('#heightUpShutter').val(); var newHeightDown = $('#heightDownShutter').val(); var newTriggerDrive = $('#triggerDriveShutter').val(); var newTriggerDriveTildet = $('#triggerDriveTildetShutter').val(); var newElevation = $('#elevationShutter').val(); var newTriggerState = $('#triggerStateShutter').val(); var newTriggerStateTilted = $('#triggerStateTiltedShutter').val(); var newTriggerChange = $('#triggerChangeShutter').val(); var newTemInside = $('#tempInside').val(); var newHeightDownSun = $('#heightDownSun').val(); var newDirection = $('#direction').val(); var newDirectionRange = $('#directionRange').val(); var newTempSensor = $('#actualValueTempInside').val(); var newOutsideTempSensor = $('#actualValueTemp').val(); var newTempOutside = $('#setpointValue').val(); var newLightSensor = $('#actualValueLight').val(); var newValueLight = $('#setpointValueLight').val(); var newTriggerID = $('#triggerID').val(); var newTypeDown = $('#typeDown').val(); var newTypeUp = $('#typeUp').val(); var newType = $('#type').val(); var hysteresisOutside = $('#hysteresisOutside').val(); var hysteresisInside = $('#hysteresisInside').val(); var hysteresisLight = $('#hysteresisLight').val(); var autoDrive = $('#autoDriveShutter').val(); var xmaslevel = $('#XmasLevel').val(); var betweenPositionLevel = $('#betweenPositionLevel').val(); var trigDelyUp = $('#trigDelyUp').val(); var trigDelyDown = $('#trigDelyDown').val(); var sunProtectEndDely = $('#sunProtectEndDely').val(); var tempHeatProtection = $('#tempHeatProtection').val(); // switch var newLateDown = $('#LateDown').prop('checked'); var newinSummerNotDown = $('#inSummerNotDown').prop('checked'); var newKeepSunProtect = $('#KeepSunProtect').prop('checked'); var newdriveAfterClose = $('#driveAfterClose').prop('checked'); var newuseXmasLevel = $('#useXmasLevel').prop('checked'); var newbetweenPosition = $('#betweenPosition').prop('checked'); var newenableAlarmWind1 = $('#enableAlarmWind1').prop('checked'); var newenableAlarmWind2 = $('#enableAlarmWind2').prop('checked'); var newenableAlarmRain = $('#enableAlarmRain').prop('checked'); var newenableAlarmFrost = $('#enableAlarmFrost').prop('checked'); var newenableAlarmFire = $('#enableAlarmFire').prop('checked'); var newignoreTriggerAutoState = $('#ignoreTriggerAutoState').prop('checked'); var newHeatProtection = $('#heatProtection').prop('checked'); // value $('#events .values-input[data-name="tempInside"][data-index="' + id + '"]').val(newTemInside).trigger('change'); $('#events .values-input[data-name="heightDownSun"][data-index="' + id + '"]').val(newHeightDownSun).trigger('change'); $('#events .values-input[data-name="direction"][data-index="' + id + '"]').val(newDirection).trigger('change'); $('#events .values-input[data-name="directionRange"][data-index="' + id + '"]').val(newDirectionRange).trigger('change'); $('#events .values-input[data-name="tempSensor"][data-index="' + id + '"]').val(newTempSensor).trigger('change'); $('#events .values-input[data-name="outsideTempSensor"][data-index="' + id + '"]').val(newOutsideTempSensor).trigger('change'); $('#events .values-input[data-name="tempOutside"][data-index="' + id + '"]').val(newTempOutside).trigger('change'); $('#events .values-input[data-name="lightSensor"][data-index="' + id + '"]').val(newLightSensor).trigger('change'); $('#events .values-input[data-name="valueLight"][data-index="' + id + '"]').val(newValueLight).trigger('change'); $('#events .values-input[data-name="triggerID"][data-index="' + id + '"]').val(newTriggerID).trigger('change'); $('#events .values-input[data-name="heightUp"][data-index="' + id + '"]').val(newHeightUp).trigger('change'); $('#events .values-input[data-name="heightDown"][data-index="' + id + '"]').val(newHeightDown).trigger('change'); $('#events .values-input[data-name="triggerDrive"][data-index="' + id + '"]').val(newTriggerDrive).trigger('change'); $('#events .values-input[data-name="triggerDriveTildet"][data-index="' + id + '"]').val(newTriggerDriveTildet).trigger('change'); $('#events .values-input[data-name="elevation"][data-index="' + id + '"]').val(newElevation).trigger('change'); $('#events .values-input[data-name="triggerState"][data-index="' + id + '"]').val(newTriggerState).trigger('change'); $('#events .values-input[data-name="triggerStateTilted"][data-index="' + id + '"]').val(newTriggerStateTilted).trigger('change'); $('#events .values-input[data-name="triggerChange"][data-index="' + id + '"]').val(newTriggerChange).trigger('change'); $('#events .values-input[data-name="typeDown"][data-index="' + id + '"]').val(newTypeDown).trigger('change'); $('#events .values-input[data-name="typeUp"][data-index="' + id + '"]').val(newTypeUp).trigger('change'); $('#events .values-input[data-name="type"][data-index="' + id + '"]').val(newType).trigger('change'); $('#events .values-input[data-name="autoDrive"][data-index="' + id + '"]').val(autoDrive).trigger('change'); $('#events .values-input[data-name="hysteresisOutside"][data-index="' + id + '"]').val(hysteresisOutside).trigger('change'); $('#events .values-input[data-name="hysteresisInside"][data-index="' + id + '"]').val(hysteresisInside).trigger('change'); $('#events .values-input[data-name="hysteresisLight"][data-index="' + id + '"]').val(hysteresisLight).trigger('change'); $('#events .values-input[data-name="XmasLevel"][data-index="' + id + '"]').val(xmaslevel).trigger('change'); $('#events .values-input[data-name="betweenPositionLevel"][data-index="' + id + '"]').val(betweenPositionLevel).trigger('change'); $('#events .values-input[data-name="trigDelyUp"][data-index="' + id + '"]').val(trigDelyUp).trigger('change'); $('#events .values-input[data-name="trigDelyDown"][data-index="' + id + '"]').val(trigDelyDown).trigger('change'); $('#events .values-input[data-name="sunProtectEndDely"][data-index="' + id + '"]').val(sunProtectEndDely).trigger('change'); $('#events .values-input[data-name="tempHeatProtection"][data-index="' + id + '"]').val(tempHeatProtection).trigger('change'); // switch $('#events .values-input[data-name="LateDown"][data-index="' + id + '"]').prop('checked', newLateDown).trigger('change'); $('#events .values-input[data-name="inSummerNotDown"][data-index="' + id + '"]').prop('checked', newinSummerNotDown).trigger('change'); $('#events .values-input[data-name="KeepSunProtect"][data-index="' + id + '"]').prop('checked', newKeepSunProtect).trigger('change'); $('#events .values-input[data-name="driveAfterClose"][data-index="' + id + '"]').prop('checked', newdriveAfterClose).trigger('change'); $('#events .values-input[data-name="useXmasLevel"][data-index="' + id + '"]').prop('checked', newuseXmasLevel).trigger('change'); $('#events .values-input[data-name="betweenPosition"][data-index="' + id + '"]').prop('checked', newbetweenPosition).trigger('change'); $('#events .values-input[data-name="enableAlarmWind1"][data-index="' + id + '"]').prop('checked', newenableAlarmWind1).trigger('change'); $('#events .values-input[data-name="enableAlarmWind2"][data-index="' + id + '"]').prop('checked', newenableAlarmWind2).trigger('change'); $('#events .values-input[data-name="enableAlarmRain"][data-index="' + id + '"]').prop('checked', newenableAlarmRain).trigger('change'); $('#events .values-input[data-name="enableAlarmFrost"][data-index="' + id + '"]').prop('checked', newenableAlarmFrost).trigger('change'); $('#events .values-input[data-name="enableAlarmFire"][data-index="' + id + '"]').prop('checked', newenableAlarmFire).trigger('change'); $('#events .values-input[data-name="ignoreTriggerAutoState"][data-index="' + id + '"]').prop('checked', newignoreTriggerAutoState).trigger('change'); $('#events .values-input[data-name="heatProtection"][data-index="' + id + '"]').prop('checked', newHeatProtection).trigger('change'); }); }, 20) }); } // This will be called by the admin adapter when the user presses the save button function save(callback) { // select elements with class=value and build settings object var obj = {}; $('#mainSettings .value').each(function () { var $this = $(this); if ($this.attr('type') === 'checkbox') { obj[$this.attr('id')] = $this.prop('checked'); } else { obj[$this.attr('id')] = $this.val(); } }); // Get edited table obj.events = table2values('events'); callback(obj); } function showHideSettings() { if ($('#publicHolidays').prop('checked')) { $('.publicHol').show(); } else { $('.publicHol').hide(); } if ($('#schoolfree').prop('checked')) { $('.schoolf').show(); } else { $('.schoolf').hide(); } if ($('#schoolfree').prop('checked')) { $('.schoolf_off').hide(); } else { $('.schoolf_off').show(); } if ($('#currentShutterState').prop('checked')) { $('.checkShutterState').show(); } else { $('.checkShutterState').hide(); } if ($('#livingAutomatic')[0].value == "livingTime") { $('.col-W_shutterUpLivingMin').hide(); $('.col-WE_shutterUpLivingMin').hide(); } else { $('.col-W_shutterUpLivingMin').show(); $('.col-WE_shutterUpLivingMin').show(); } if ($('#sleepAutomatic')[0].value == "sleepTime") { $('.col-W_shutterUpSleepMin').hide(); $('.col-WE_shutterUpSleepMin').hide(); } else { $('.col-W_shutterUpSleepMin').show(); $('.col-WE_shutterUpSleepMin').show(); } if ($('#useXmasLevel').prop('checked')) { $('.col-XmasLevel').show(); } else { $('.col-XmasLevel').hide(); } if ($('#LateAllDown').prop('checked')) { $('.LateAllDownTime').show(); } else { $('.LateAllDownTime').hide(); } if ($('#betweenPosition').prop('checked')) { $('.col-betweenPosition').show(); } else { $('.col-betweenPosition').hide(); } if ($('#heatProtection').prop('checked')) { $('.col-heatProtect').show(); } else { $('.col-heatProtect').hide(); } } var selectId; function initSelectId(callback) { if (selectId) { return callback(selectId); } socket.emit('getObjects', function (err, objs) { selectId = $('#dialog-select-member').selectId('init', { noMultiselect: true, objects: objs, imgPath: '../../lib/css/fancytree/', filter: { type: 'state' }, name: 'scenes-select-state', texts: { select: _('Select'), cancel: _('Cancel'), all: _('All'), id: _('ID'), name: _('Name'), role: _('Role'), room: _('Room'), value: _('Value'), selectid: _('Select ID'), from: _('From'), lc: _('Last changed'), ts: _('Time stamp'), wait: _('Processing...'), ack: _('Acknowledged'), selectAll: _('Select all'), unselectAll: _('Deselect all'), invertSelection: _('Invert selection') }, columns: ['image', 'name', 'role', 'room'] }); callback(selectId); }); } function getName(obj) { if (obj && obj.common && obj.common.name) { var name = obj.common.name; if (typeof name === 'object') { name = name[systemLang] || name.en; } return name; } else if (obj && obj.name) { var name = obj.name; if (typeof name === 'object') { name = name[systemLang] || name.en; } return name; } else { var parts = obj.id.split('.'); var last = parts.pop(); return last[0].toUpperCase() + last.substring(1).toLowerCase(); } } function initDialogShutter(callback) { var $editDialog = $('#dialog-shutter-edit'); if (!$editDialog.data('inited')) { $editDialog.data('inited', true); $editDialog.modal({ dismissible: false }); $editDialog.find('.btn-set').on('click', function () { var $editDialog = $('#dialog-shutter-edit'); var callback = $editDialog.data('callback'); if (typeof callback === 'function') callback(); $editDialog.data('callback', null); }); } $editDialog.data('callback', callback); $editDialog.modal('open'); }