zoneminder/web/skins/classic/views/js/monitor.js

70 lines
2.5 KiB
JavaScript
Raw Normal View History

2017-05-19 01:50:56 +08:00
function updateMonitorDimensions( element ) {
var form = element.form;
var widthFactor = parseInt( defaultAspectRatio.replace( /:.*$/, '' ) );
var heightFactor = parseInt( defaultAspectRatio.replace( /^.*:/, '' ) );
2017-05-19 01:50:56 +08:00
if ( form.elements['preserveAspectRatio'].checked ) {
var monitorWidth = parseInt(form.elements['newMonitor[Width]'].value);
var monitorHeight = parseInt(form.elements['newMonitor[Height]'].value);
switch ( element.name ) {
2017-05-19 01:50:56 +08:00
case 'newMonitor[Width]':
if ( monitorWidth >= 0 ) {
2017-05-19 01:50:56 +08:00
form.elements['newMonitor[Height]'].value = Math.round((monitorWidth * heightFactor) / widthFactor);
} else {
2017-05-19 01:50:56 +08:00
form.elements['newMonitor[Height]'].value = '';
}
2017-05-19 01:50:56 +08:00
break;
case 'newMonitor[Height]':
if ( monitorHeight >= 0 ) {
2017-05-19 01:50:56 +08:00
form.elements['newMonitor[Width]'].value = Math.round((monitorHeight * widthFactor) / heightFactor);
} else {
2017-05-19 01:50:56 +08:00
form.elements['newMonitor[Width]'].value = '';
}
2017-05-19 01:50:56 +08:00
break;
}
2017-05-19 01:50:56 +08:00
}
return ( false );
}
2017-05-19 01:50:56 +08:00
function loadLocations( element ) {
var form = element.form;
var controlIdSelect = form.elements['newMonitor[ControlId]'];
var returnLocationSelect = form.elements['newMonitor[ReturnLocation]'];
2017-05-19 01:50:56 +08:00
returnLocationSelect.options.length = 1;
//returnLocationSelect.options[0] = new Option( noneString, -1 );
2017-05-19 01:50:56 +08:00
var returnLocationOptions = controlOptions[controlIdSelect.selectedIndex];
if ( returnLocationOptions ) {
for ( var i = 0; i < returnLocationOptions.length; i++ ) {
returnLocationSelect.options[returnLocationSelect.options.length] = new Option( returnLocationOptions[i], i );
}
2017-05-19 01:50:56 +08:00
}
}
2017-05-19 01:50:56 +08:00
function initPage() {
//var protocolSelector = $('contentForm').elements['newMonitor[Protocol]'];
//if ( $(protocolSelector).getTag() == 'select' )
//updateMethods( $(protocolSelector) );
document.querySelectorAll('input[name="newMonitor[SignalCheckColour]"]').forEach(function(el) {
el.oninput = function(event) {
$j('#SignalCheckSwatch').css('background-color', event.target.value);
};
});
document.querySelectorAll('input[name="newMonitor[WebColour]"]').forEach(function(el) {
el.oninput = function(event) {
$j('#WebSwatch').css('background-color', event.target.value);
};
});
$j('#contentForm').submit(function(event){
if ( validateForm(this) ) {
$j('#contentButtons').hide();
return true;
} else {
return false;
};
});
}
window.addEventListener( 'DOMContentLoaded', initPage );