'
@@ -1287,7 +1287,7 @@ if (!jeeFrontEnd.scenario) {
return message
},
selectCmdFromModal: function(event) { //Condition chaining modals outside page_container, called from bt_selectCmdFromModal onclick()
- var modal = event.target.closest('.jeeDialogPrompt')
+ const modal = event.target.closest('.jeeDialogPrompt')
modal.style.display = 'none'
jeedom.cmd.getSelectModal({
cmd: {
@@ -1303,8 +1303,8 @@ if (!jeeFrontEnd.scenario) {
reloadStack: function(loadStack) {
document.getElementById('div_scenarioElement').empty()
this.actionOptions = []
- var elements = ''
- for (var i in loadStack) {
+ const elements = ''
+ for (const i in loadStack) {
elements += this.addElement(loadStack[i])
}
document.getElementById('div_scenarioElement').empty().html(elements, true)
@@ -1317,7 +1317,7 @@ if (!jeeFrontEnd.scenario) {
this.bt_undo.removeClass('disabled')
this.bt_redo.addClass('disabled')
- var newStack = []
+ const newStack = []
document.getElementById('root').querySelectorAll(':scope > .expression').forEach(_exp => {
newStack.push(jeeP.getElement(_exp.querySelector('div.element')))
})
@@ -1339,7 +1339,7 @@ if (!jeeFrontEnd.scenario) {
return
}
try {
- var loadState = this.undoState
+ const loadState = this.undoState
if (this.reDo == 0) this.setUndoStack(this.undoState + 1)
this.reloadStack(this.undoStack[loadState])
this.undoState -= 1
@@ -1363,7 +1363,7 @@ if (!jeeFrontEnd.scenario) {
}
this.bt_undo.removeClass('disabled')
try {
- var loadState = this.undoState + 2
+ const loadState = this.undoState + 2
this.reloadStack(this.undoStack[loadState])
this.undoState += 1
@@ -1388,14 +1388,14 @@ if (!jeeFrontEnd.scenario) {
},
//Code Editors:
setEditors: function() {
- var expression, code
+ const expression, code
document.querySelectorAll('.expressionAttr[data-l1key="type"][value="code"]').forEach(function(elCode) {
expression = elCode.closest('.expression')
code = expression.querySelector('.expressionAttr[data-l1key="expression"]')
elCode.querySelector('.blocPreview')?.html(code.value)
if (code.getAttribute('id') == undefined && code.isVisible()) {
code.uniqueId()
- var id = code.getAttribute('id')
+ const id = code.getAttribute('id')
setTimeout(function() {
jeeP.editors[id] = CodeMirror.fromTextArea(document.getElementById(id), {
lineNumbers: true,
@@ -1416,7 +1416,7 @@ if (!jeeFrontEnd.scenario) {
},
resetEditors: function() {
this.editors = []
- var expression, code
+ const expression, code
document.querySelectorAll('.expressionAttr[data-l1key="type"][value="code"]').forEach(elCode => {
expression = elCode.closest('.expression')
code = expression.querySelector('.expressionAttr[data-l1key="expression"]')
@@ -1427,7 +1427,7 @@ if (!jeeFrontEnd.scenario) {
this.setEditors()
},
syncEditors: function() {
- var expression, code, id
+ const expression, code, id
document.querySelectorAll('.expressionAttr[data-l1key="type"][value="code"]').forEach(function(elCode) {
expression = elCode.closest('.expression')
code = expression.querySelector('.expressionAttr[data-l1key="expression"]')
@@ -1493,9 +1493,9 @@ document.getElementById('bt_addScenario').addEventListener('click', function(eve
})
},
success: function(data) {
- var vars = getUrlVars()
- var url = 'index.php?'
- for (var i in vars) {
+ const vars = getUrlVars()
+ const url = 'index.php?'
+ for (const i in vars) {
if (i != 'id' && i != 'saveSuccessFull' && i != 'removeSuccessFull') {
url += i + '=' + vars[i].replace('#', '') + '&'
}
@@ -1511,11 +1511,11 @@ document.getElementById('bt_addScenario').addEventListener('click', function(eve
})
document.getElementById('bt_changeAllScenarioState').addEventListener('click', function(event) {
- var _target = event.target.closest('#bt_changeAllScenarioState')
+ const _target = event.target.closest('#bt_changeAllScenarioState')
if (_target.getAttribute('data-state') == '0') {
- var msg = '{{Êtes-vous sûr de vouloir désactiver les scénarios ?}}'
+ let msg = '{{Êtes-vous sûr de vouloir désactiver les scénarios ?}}'
} else {
- var msg = '{{Êtes-vous sûr de vouloir activer les scénarios ?}}'
+ let msg = '{{Êtes-vous sûr de vouloir activer les scénarios ?}}'
}
jeeDialog.confirm(msg, function(result) {
@@ -1622,9 +1622,9 @@ document.querySelector('.scenarioAttr[data-l2key="timeline::enable"]').addEventL
}
})
-var select = document.getElementById('in_addElementType')
-var input = document.getElementById('in_addElementTypeFilter')
-var allOptions = Array.from(select.options)
+const select = document.getElementById('in_addElementType')
+const input = document.getElementById('in_addElementTypeFilter')
+const allOptions = Array.from(select.options)
function filterOptions() {
const text = input.value.trim().toLowerCase().stripAccents()
@@ -1649,7 +1649,7 @@ select.addEventListener('change', function(event) {
})
document.getElementById('in_searchInsideScenario').addEventListener('keyup', function(event) {
- var search = this.value
+ let search = this.value
document.querySelectorAll('#div_scenarioElement .insideSearch').removeClass('insideSearch')
document.querySelectorAll('#div_scenarioElement div.CodeMirror.CodeMirror-wrap').forEach(_code => {
_code.CodeMirror.setCursor(0)
@@ -1663,7 +1663,7 @@ document.getElementById('in_searchInsideScenario').addEventListener('keyup', fun
search = jeedomUtils.normTextLower(search)
//search code blocks:
- var cmEditor, code, cursor
+ let cmEditor, code, cursor
document.querySelectorAll('#div_scenarioElement div.elementCODE').forEach(_code => {
try {
cmEditor = _code.querySelector('div.CodeMirror.CodeMirror-wrap').CodeMirror
@@ -1684,7 +1684,7 @@ document.getElementById('in_searchInsideScenario').addEventListener('keyup', fun
} catch { }
})
//search in expressions:
- var text
+ const text
document.querySelectorAll('#div_scenarioElement div.element:not(.elementCODE) .expressionAttr').forEach(_expr => {
text = jeedomUtils.normTextLower(_expr.value)
if (text.includes(search)) {
@@ -1702,20 +1702,20 @@ document.getElementById('in_searchInsideScenario').addEventListener('keyup', fun
//_________________Root page events:
document.getElementById('in_searchScenario').addEventListener('keyup', function() {
- var search = this.value
+ let search = this.value
if (search == '') {
document.querySelectorAll('#accordionScenario .accordion-toggle:not(.collapsed)').forEach(_panel => { _panel.click() })
document.querySelectorAll('.scenarioDisplayCard').seen()
return
}
search = jeedomUtils.normTextLower(search)
- var not = search.startsWith(":not(")
+ const not = search.startsWith(":not(")
if (not) {
search = search.replace(':not(', '')
}
document.querySelectorAll('#accordionScenario .accordion-toggle').forEach(_panel => { _panel.setAttribute('data-show', 0) })
document.querySelectorAll('.scenarioDisplayCard').unseen()
- var match, text
+ let match, text
document.querySelectorAll('.scenarioDisplayCard .name').forEach(scName => {
match = false
@@ -1736,7 +1736,7 @@ document.getElementById('in_searchScenario').addEventListener('keyup', function(
})
document.getElementById('scenarioThumbnailDisplay').addEventListener('click', function(event) {
- var _target = null
+ const _target = null
if (!event.target.matches('a.accordion-toggle')) {
event.preventDefault()
event.stopImmediatePropagation()
@@ -1759,7 +1759,7 @@ document.getElementById('scenarioThumbnailDisplay').addEventListener('click', fu
}
if (_target = event.target.closest('#accordionScenario .bt_ViewLog')) {
- var id = _target.closest('.scenarioDisplayCard').getAttribute('data-scenario_id')
+ const id = _target.closest('.scenarioDisplayCard').getAttribute('data-scenario_id')
jeeDialog.dialog({
id: 'jee_modal2',
title: "{{Log d'exécution du scénario}}",
@@ -1769,9 +1769,9 @@ document.getElementById('scenarioThumbnailDisplay').addEventListener('click', fu
}
if (_target = event.target.closest('.scenarioDisplayCard')) {
- var id = _target.getAttribute('data-scenario_id')
+ const id = _target.getAttribute('data-scenario_id')
if ((isset(event.detail) && event.detail.ctrlKey) || event.ctrlKey || event.metaKey) {
- var url = '/index.php?v=d&p=scenario&id=' + id
+ const url = '/index.php?v=d&p=scenario&id=' + id
window.open(url).focus()
} else {
document.getElementById('scenarioThumbnailDisplay').unseen()
@@ -1782,11 +1782,11 @@ document.getElementById('scenarioThumbnailDisplay').addEventListener('click', fu
})
document.getElementById('scenarioThumbnailDisplay').addEventListener('mouseup', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('.scenarioDisplayCard')) {
if (event.which == 2) {
event.preventDefault()
- var id = _target.getAttribute('data-scenario_id')
+ const id = _target.getAttribute('data-scenario_id')
document.querySelector('.scenarioDisplayCard[data-scenario_id="' + id + '"]').triggerEvent('click', { detail: { ctrlKey: true } })
}
return
@@ -1796,7 +1796,7 @@ document.getElementById('scenarioThumbnailDisplay').addEventListener('mouseup',
//_________________Floating bar events:
document.getElementById('div_editScenario').querySelector('div.floatingbar').addEventListener('click', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('#bt_logScenario')) {
jeeDialog.dialog({
id: 'jee_modal',
@@ -1868,8 +1868,8 @@ document.getElementById('div_editScenario').querySelector('div.floatingbar').add
if (_target = event.target.closest('#bt_runScenario')) {
jeedomUtils.hideAlert()
- var scenario_id = document.querySelector('.scenarioAttr[data-l1key="id"]').jeeValue()
- var logmode = document.querySelector('select[data-l2key="logmode"]').jeeValue()
+ const scenario_id = document.querySelector('.scenarioAttr[data-l1key="id"]').jeeValue()
+ const logmode = document.querySelector('select[data-l2key="logmode"]').jeeValue()
if (event.ctrlKey || event.metaKey) {
jeeP.saveScenario(function() {
jeedom.scenario.changeState({
@@ -1999,7 +1999,7 @@ document.getElementById('div_editScenario').querySelector('div.floatingbar').add
if (_target = event.target.closest('#bt_resetInsideScenarioSearch')) {
if (_target.hasClass('disabled')) return
- var searchField = document.getElementById('in_searchInsideScenario')
+ const searchField = document.getElementById('in_searchInsideScenario')
if (_target.getAttribute('data-state') == '0') {
//show search:
searchField.seen()
@@ -2051,12 +2051,12 @@ document.getElementById('div_editScenario').querySelector('div.floatingbar').add
//_________________General tab events:
document.getElementById('generaltab').addEventListener('click', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('.scenario_link')) {
jeedomUtils.hideAlert()
if ((isset(event.detail) && event.detail.ctrlKey) || event.ctrlKey || event.metaKey) {
- var url = '/index.php?v=d&p=scenario&id=' + event.target.getAttribute('data-scenario_id')
+ const url = '/index.php?v=d&p=scenario&id=' + event.target.getAttribute('data-scenario_id')
window.open(url).focus()
} else {
document.getElementById('scenarioThumbnailDisplay').unseen()
@@ -2066,7 +2066,7 @@ document.getElementById('generaltab').addEventListener('click', function(event)
if (_target = event.target.closest('.action_link')) {
jeedomUtils.hideAlert()
- var cmdId = _target.getAttribute('data-cmd_id')
+ const cmdId = _target.getAttribute('data-cmd_id')
jeeDialog.dialog({
id: 'jee_modal2',
title: '{{Configuration de la commande}}',
@@ -2077,7 +2077,7 @@ document.getElementById('generaltab').addEventListener('click', function(event)
if (_target = event.target.closest('#bt_chooseIcon')) {
jeedomUtils.hideAlert()
- var _icon = false
+ let _icon = false
if (document.querySelector('div[data-l2key="icon"] > i') != null) {
_icon = document.querySelector('div[data-l2key="icon"] > i').getAttribute('class')
}
@@ -2153,7 +2153,7 @@ document.getElementById('generaltab').addEventListener('mouseup', function(event
if (event.target.matches('.scenario_link')) {
if (event.which == 2) {
event.preventDefault()
- var id = event.target.getAttribute('data-scenario_id')
+ const id = event.target.getAttribute('data-scenario_id')
document.querySelector('.scenario_link[data-scenario_id="' + id + '"]').triggerEvent('click', { detail: { ctrlKey: true } })
}
}
@@ -2170,12 +2170,12 @@ document.getElementById('generaltab').addEventListener('dblclick', function(even
//_________________Scenario tab events:
document.getElementById('scenariotab').addEventListener('click', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('#bt_addElementSave')) { //Ok button from new block modal
jeeP.setUndoStack()
jeeFrontEnd.modifyWithoutSave = true
if (jeeP.addElementSave.expression) {
- var newEL = domUtils.parseHTML(jeeP.addExpression({
+ const newEL = domUtils.parseHTML(jeeP.addExpression({
type: 'element',
element: {
type: document.getElementById("in_addElementType").jeeValue()
@@ -2183,7 +2183,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
})
)
} else {
- var newEL = domUtils.parseHTML(jeeP.addElement({
+ const newEL = domUtils.parseHTML(jeeP.addElement({
type: document.getElementById("in_addElementType").jeeValue()
})
)
@@ -2224,7 +2224,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
if (_target = event.target.closest('input:not([type="checkbox"]).expressionAttr, textarea.expressionAttr')) { //ctrl-click input popup
jeeP.PREV_FOCUS = _target //Place new block next
if (event.ctrlKey) {
- var selfInput = _target
+ const selfInput = _target
jeeDialog.prompt({
title: '{{Edition}}',
width: '80%',
@@ -2252,7 +2252,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('button.bt_selectJeeDialogCmdExpression')) { //ctrl-click input popup getSelectModal
- var expression = _target.closest('.jeeDialogPrompt').querySelector('.promptAttr')
+ const expression = _target.closest('.jeeDialogPrompt').querySelector('.promptAttr')
jeedom.cmd.getSelectModal({}, function(result) {
expression.insertAtCursor(result.human)
})
@@ -2318,23 +2318,23 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_collapse')) {
- var open = _target.querySelector(':scope > i').hasClass('fa-eye') ? true : false
+ const open = _target.querySelector(':scope > i').hasClass('fa-eye') ? true : false
if (event.ctrlKey || event.metaKey) {
changeThese = _target.closest('.expressions')?.querySelectorAll('.bt_collapse') || document.querySelectorAll('.bt_collapse')
} else {
- var changeThese = [_target]
+ let changeThese = [_target]
}
for (_target of changeThese) {
- var icon = _target.querySelector(':scope > i')
+ const icon = _target.querySelector(':scope > i')
if (open) { // -> Collapse!
icon.removeClass('fa-eye').addClass('fa-eye-slash')
_target.closest('.element').addClass('elementCollapse')
_target.setAttribute('value', 1)
_target.setAttribute('title', "{{Afficher ce bloc.
Ctrl+click: tous.}}")
//update action, comment and code blocPreview:
- var txt, _el, id
+ let txt, _el, id
_target.closest('.element').querySelectorAll('.blocPreview').forEach(function(_blocPreview) {
txt = '
Unfound'
_el = _blocPreview.closest('.element')
@@ -2375,8 +2375,8 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_selectCmdExpression')) {
- var expression = _target.closest('.expression')
- var type = 'info'
+ const expression = _target.closest('.expression')
+ let type = 'info'
if (expression.querySelector('.expressionAttr[data-l1key="type"]').jeeValue() == 'action') {
type = 'action'
}
@@ -2397,13 +2397,13 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (expression.querySelector('.expressionAttr[data-l1key="type"]').jeeValue() == 'condition') {
- var condType = _target.closest('.subElement')
+ const condType = _target.closest('.subElement')
if (!condType.hasClass('subElementIF') && !condType.hasClass('subElementFOR')) {
expression.querySelector('.expressionAttr[data-l1key="expression"]').insertAtCursor(result.human)
return
}
- var message = jeeP.getSelectCmdExpressionMessage(result.cmd.subType, result.human)
+ const message = jeeP.getSelectCmdExpressionMessage(result.cmd.subType, result.human)
jeeDialog.prompt({
title: "{{Ajout d'une nouvelle condition}}",
inputType: false,
@@ -2427,7 +2427,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
click: function(event) {
jeeP.setUndoStack()
jeeFrontEnd.modifyWithoutSave = true
- var condition = result.human
+ let condition = result.human
condition += ' ' + document.querySelector('.conditionAttr[data-l1key="operator"]').jeeValue()
if (result.cmd.subType == 'string') {
if (document.querySelector('.conditionAttr[data-l1key="operator"]').jeeValue() == 'matches') {
@@ -2456,7 +2456,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_selectOtherActionExpression')) {
- var expression = _target.closest('.expression')
+ const expression = _target.closest('.expression')
jeedom.getSelectActionModal({
scenario: true
}, function(result) {
@@ -2471,7 +2471,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_selectScenarioExpression')) {
- var expression = _target.closest('.expression')
+ const expression = _target.closest('.expression')
jeedom.scenario.getSelectModal({}, function(result) {
if (expression.querySelector('.expressionAttr[data-l1key="type"]').jeeValue() == 'action') {
expression.querySelector('.expressionAttr[data-l1key="expression"]').jeeValue(result.human)
@@ -2484,7 +2484,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_selectGenericExpression')) {
- var expression = _target.closest('.expression')
+ const expression = _target.closest('.expression')
jeedom.config.getGenericTypeModal({ type: 'info', object: true }, function(result) {
expression.querySelector('.expressionAttr[data-l1key="expression"]').insertAtCursor(result.human)
})
@@ -2492,7 +2492,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
}
if (_target = event.target.closest('.bt_selectEqLogicExpression')) {
- var expression = _target.closest('.expression')
+ const expression = _target.closest('.expression')
jeedom.eqLogic.getSelectModal({}, function(result) {
if (expression.querySelector('.expressionAttr[data-l1key="type"]').jeeValue() == 'action') {
expression.querySelector('.expressionAttr[data-l1key="expression"]').jeeValue(result.human)
@@ -2518,8 +2518,8 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
if (_target = event.target.closest('.fromSubElement')) {
jeeP.setUndoStack()
- var elementDiv = _target.closest('.subElement').querySelector('.expressions')
- var newEL = domUtils.parseHTML(jeeP.addExpression({
+ const elementDiv = _target.closest('.subElement').querySelector('.expressions')
+ const newEL = domUtils.parseHTML(jeeP.addExpression({
type: 'element',
element: {
type: _target.getAttribute('data-type')
@@ -2542,7 +2542,7 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
//COPY - PASTE
if (_target = event.target.closest('i.bt_copyElement')) {
- var clickedBloc = _target.closest('.element')
+ const clickedBloc = _target.closest('.element')
jeeP.clipboard = jeeP.getElement(clickedBloc)
//delete all id in properties to make it unique later:
@@ -2565,12 +2565,12 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
} else {
return false
}
- var clickedBloc = _target.closest('.element')
+ const clickedBloc = _target.closest('.element')
jeeP.setUndoStack()
jeeP.actionOptions = []
- var pastedElement = document.createElement('div')
+ let pastedElement = document.createElement('div')
pastedElement.innerHTML = jeeP.addElement(jeeP.clipboard)
//Are we pasting inside an expresion:
@@ -2618,14 +2618,14 @@ document.getElementById('scenariotab').addEventListener('click', function(event)
document.getElementById('scenariotab').addEventListener('change', function(event) {
if (event.target.matches('.subElementAttr[data-l1key="options"][data-l2key="enable"]')) {
- var checkbox = event.target
- var element = checkbox.closest('.element')
+ const checkbox = event.target
+ const element = checkbox.closest('.element')
if (checkbox.checked) {
element.removeClass('disableElement')
} else {
element.addClass('disableElement')
}
- var subElement = checkbox.closest('.element').querySelector('.subElement:not(.noSortable)')
+ const subElement = checkbox.closest('.element').querySelector('.subElement:not(.noSortable)')
if (!subElement) return
if (checkbox.checked) {
subElement.querySelectorAll('.expressions')?.removeClass('disableSubElement')
@@ -2636,7 +2636,7 @@ document.getElementById('scenariotab').addEventListener('change', function(event
}
if (event.target.matches('.expressionAttr[data-l1key="options"][data-l2key="enable"]')) {
- var element = event.target.closest('.expression')
+ const element = event.target.closest('.expression')
if (event.target.checked) {
element.removeClass('disableSubElement')
} else {
@@ -2647,7 +2647,7 @@ document.getElementById('scenariotab').addEventListener('change', function(event
})
document.getElementById('scenariotab').addEventListener('mouseenter', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('button.dropdown-toggle')) {
if (event.clientY > window.innerHeight - 220) {
_target.closest('div.dropdown').addClass('dropup')
@@ -2658,7 +2658,7 @@ document.getElementById('scenariotab').addEventListener('mouseenter', function(e
}, { capture: true })
document.getElementById('scenariotab').addEventListener('mouseout', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('button.dropdown-toggle')) {
if (event.clientY > window.innerHeight - 220) {
event.target.closest('div.dropdown').addClass('dropup')
@@ -2669,11 +2669,11 @@ document.getElementById('scenariotab').addEventListener('mouseout', function(eve
})
document.getElementById('scenariotab').addEventListener('focusout', function(event) {
- var _target = null
+ const _target = null
if (_target = event.target.closest('.expression .expressionAttr[data-l1key="expression"]')) {
if (_target.getAttribute('prevalue') == _target.value) return
if (_target.closest('.expression').querySelector('.expressionAttr[data-l1key="type"]').value == 'action') {
- var expression = _target.closest('.expression').getJeeValues('.expressionAttr')
+ const expression = _target.closest('.expression').getJeeValues('.expressionAttr')
jeedom.cmd.displayActionOption(_target.value, init(expression[0].options), function(html) {
_target.closest('.expression').querySelector('.expressionOptions').html(html)
jeedomUtils.taAutosize()
@@ -2703,12 +2703,12 @@ try {
success: function(scenarioGroupedList) {
if (scenarioGroupedList.length == 0) return
- var contextmenuitems = {}
- var uniqId = 0
- var items, scName, scId
- for (var group in scenarioGroupedList) {
+ const contextmenuitems = {}
+ let uniqId = 0
+ let items, scName, scId
+ for (const group in scenarioGroupedList) {
items = {}
- for (var i in scenarioGroupedList[group]) {
+ for (const i in scenarioGroupedList[group]) {
scName = scenarioGroupedList[group][i].humanName.replace('[' + group + ']', '')
scId = scenarioGroupedList[group][i].id
items[uniqId] = {
@@ -2732,7 +2732,7 @@ try {
callback: function(key, options, event) {
if (!jeedomUtils.checkPageModified()) {
if (event.ctrlKey || event.metaKey || event.which == 2) {
- var url = 'index.php?v=d&p=scenario&id=' + options.commands[key].id
+ const url = 'index.php?v=d&p=scenario&id=' + options.commands[key].id
if (window.location.hash != '') {
url += window.location.hash
}
@@ -2757,16 +2757,16 @@ try {
appendTo: 'div#div_pageContainer',
className: 'scenario-context-menu',
build: function(trigger) {
- var scGroups = []
+ const scGroups = []
Object.keys(jeephp2js.scenarioListGroup).forEach(function(key) {
scGroups.push(jeephp2js.scenarioListGroup[key].group)
})
- var scId = trigger.getAttribute('data-scenario_id')
- var scName = trigger.querySelector('.name strong').innerHTML
- var isActive = !trigger.hasClass('inactive')
+ const scId = trigger.getAttribute('data-scenario_id')
+ const scName = trigger.querySelector('.name strong').innerHTML
+ const isActive = !trigger.hasClass('inactive')
- var contextmenuitems = {}
+ const contextmenuitems = {}
contextmenuitems['scId'] = { 'name': scName + '(id: ' + scId + ')', 'id': 'scId', 'disabled': true }
if (isActive) {
contextmenuitems['disable'] = { 'name': '{{Rendre inactif}}', 'id': 'disable', 'icon': 'fas fa-toggle-on' }
@@ -2775,8 +2775,8 @@ try {
}
//group submenu:
- var idx = 0
- var items = {}
+ let idx = 0
+ let items = {}
items['group_none'] = {
'name': '{{Aucun}}',
'id': 'group_none',
@@ -2798,7 +2798,7 @@ try {
}
//parent submenu
- var items = {}
+ let items = {}
items[0] = {
'name': '
None',
'id': 'parent_0',
@@ -2807,8 +2807,8 @@ try {
'jHumanName': '{{Aucun}}',
'isHtmlName': true,
}
- var idx = 1
- for (var parent of jeephp2js.objectList) {
+ let idx = 1
+ for (const parent of jeephp2js.objectList) {
items[idx] = {
'name': parent.tag,
'id': 'parent_' + idx,
@@ -2828,7 +2828,7 @@ try {
callback: function(key, options) {
if (options.commands[key].jType == 'group') {
if (key == 'group_none') key = null
- var scenario = {
+ const scenario = {
id: scId,
group: key
}
@@ -2846,12 +2846,12 @@ try {
}
if (options.commands[key].jType == 'parent') {
- var humanName = options.commands[key].jHumanName
- var objectId = options.commands[key].jId
+ let humanName = options.commands[key].jHumanName
+ const objectId = options.commands[key].jId
if (key == '0') {
humanName = '
None'
}
- var scenario = {
+ const scenario = {
id: scId,
object_id: objectId
}
@@ -2871,7 +2871,7 @@ try {
}
if (key == 'disable') {
- var scenario = {
+ const scenario = {
id: scId,
isActive: "0"
}
@@ -2888,7 +2888,7 @@ try {
}
if (key == 'enable') {
- var scenario = {
+ const scenario = {
id: scId,
isActive: "1"
}
diff --git a/desktop/js/timeline.js b/desktop/js/timeline.js
index 1562f769e5..d2e4a5a4b2 100644
--- a/desktop/js/timeline.js
+++ b/desktop/js/timeline.js
@@ -50,28 +50,30 @@ if (!jeeFrontEnd.timeline) {
if (data.length == 0) return
data.sort(jeeP.sortByDateConsistentASC)
data = data.reverse()
- var dataLength = data.length
- var decayFactor = 130
+ const dataLength = data.length
+ const decayFactor = 130
moment.locale(jeeFrontEnd.language.substring(0, 2))
- var lastEvent = document.querySelector('#timelineContainer #events li.event:last-child')
+ const lastEvent = document.querySelector('#timelineContainer #events li.event:last-child')
+ let isFirstOfDay, isLastOfDay, prevDate, prevDateTs, content
+ let nextDate, thisDateTs
if (lastEvent != null) {
- var isFirstOfDay = data[0].date.substring(0, 10) != lastEvent.querySelector('div.date').innerHTML.substring(4) ? true : false
- var isLastOfDay = false
- var prevDate = moment(lastEvent.querySelector('div.date').innerHTML, 'ddd YYYY-MM-DD').format("YYYY-MM-DD")
- var prevDateTs = moment(prevDate + ' ' + lastEvent.querySelector('div.time').innerHTML, "YYYY-MM-DD hh:mm:ss").unix()
- var content = ''
+ isFirstOfDay = data[0].date.substring(0, 10) != lastEvent.querySelector('div.date').innerHTML.substring(4) ? true : false
+ isLastOfDay = false
+ prevDate = moment(lastEvent.querySelector('div.date').innerHTML, 'ddd YYYY-MM-DD').format("YYYY-MM-DD")
+ prevDateTs = moment(prevDate + ' ' + lastEvent.querySelector('div.time').innerHTML, "YYYY-MM-DD hh:mm:ss").unix()
+ content = ''
} else {
- var isFirstOfDay, isLastOfDay = false
- var nextDate, thisDateTs = false
- var prevDate = moment().format("YYYY-MM-DD")
- var prevDateTs = moment().unix()
- var content = '
' + moment(data[0].date).format('ddd YYYY-MM-DD') + '
'
+ isLastOfDay = false
+ thisDateTs = false
+ prevDate = moment().format("YYYY-MM-DD")
+ prevDateTs = moment().unix()
+ content = '
' + moment(data[0].date).format('ddd YYYY-MM-DD') + '
'
}
- var thisData, date, dateFull, time, lineClass, style, height, li
- for (var i in data) {
+ let thisData, date, dateFull, time, lineClass, style, height, li
+ for (const i in data) {
thisData = data[i]
date = thisData.date.substring(0, 10)
time = thisData.date.substring(11, 19)
@@ -169,11 +171,11 @@ if (!jeeFrontEnd.timeline) {
},
sortByDateConsistentASC: function(itemA, itemB) {
- var valueA = itemA.date
- var valueB = itemB.date
- var a = moment(valueA)
- var b = moment(valueB)
- var r = 0
+ const valueA = itemA.date
+ const valueB = itemB.date
+ const a = moment(valueA)
+ const b = moment(valueB)
+ let r = 0
if (a.isValid() && b.isValid()) {
r = ((a.valueOf() > b.valueOf()) ? 1 : ((a.valueOf() < b.valueOf()) ? -1 : 0))
}
@@ -190,18 +192,18 @@ jeeFrontEnd.timeline.init()
//searching
document.getElementById('in_searchTimeline')?.addEventListener('keyup', function(event) {
- var search = event.target.value
+ let search = event.target.value
if (search == '') {
document.querySelectorAll('#events > li.event').seen()
return
}
search = jeedomUtils.normTextLower(search)
- var not = search.startsWith(":not(")
+ const not = search.startsWith(":not(")
if (not) {
search = search.replace(':not(', '')
}
document.querySelectorAll('#events > li.event').unseen()
- var match, text
+ let match, text
document.querySelectorAll('#events > li.event').forEach(_li => {
match = false
text = jeedomUtils.normTextLower(_li.querySelector('.tml-cmd')?.textContent)
@@ -264,7 +266,7 @@ document.getElementById('sel_timelineFolder').addEventListener('change', functio
//Specials
document.getElementById('div_mainContainer').registerEvent('scroll', function(event) {
if (jeeP == undefined || jeeP.isScrolling) return
- let container = document.getElementById('div_mainContainer')
+ const container = document.getElementById('div_mainContainer')
if (container.scrollTop >= container.scrollHeight - window.innerHeight) {
jeeP.isScrolling = true
jeeP.loadStart = jeeP.loadStart + jeeP.loadOffset + 1
@@ -276,7 +278,7 @@ document.getElementById('div_mainContainer').registerEvent('scroll', function(ev
/*Events delegations
*/
document.getElementById('events').addEventListener('click', function(event) {
- var _target = null
+ let _target = null
if (_target = event.target.closest('.bt_scenarioLog')) {
jeeDialog.dialog({
id: 'jee_modal',
@@ -311,9 +313,9 @@ document.getElementById('events').addEventListener('click', function(event) {
})
document.getElementById('timelineBottom').addEventListener('click', function(event) {
- var _target = null
+ let _target = null
if (_target = event.target.closest('a.bt_loadMore')) {
- var more = parseInt(_target.getAttribute('data-load'))
+ const more = parseInt(_target.getAttribute('data-load'))
jeeP.loadStart = jeeP.loadStart + jeeP.loadOffset + 1
jeeP.loadOffset = more
jeeP.displayTimelineSegment(jeeP.loadStart, jeeP.loadOffset)