Merge branch 'ZoneMinder:master' into patch-6
commit
c046c2ddc5
|
@ -426,6 +426,8 @@ CREATE TABLE `Logs` (
|
|||
|
||||
CREATE INDEX `Logs_TimeKey_idx` ON `Logs` (`TimeKey`);
|
||||
CREATE INDEX `Logs_Level_idx` ON `Logs` (`Level`);
|
||||
CREATE INDEX `Logs_Component_idx` ON `Logs` (`Component`);
|
||||
|
||||
--
|
||||
-- Table structure for table `Manufacturers`
|
||||
--
|
||||
|
|
|
@ -1,6 +1,2 @@
|
|||
--
|
||||
-- Add primary keys for Logs and Stats tables
|
||||
--
|
||||
|
||||
SELECT "Modifying Monitors MaxFPS to DECIMAL(5,3)";
|
||||
ALTER TABLE `Monitors` MODIFY `MaxFPS` decimal(5,3) default NULL;
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
--
|
||||
-- This adds Object_Types
|
||||
--
|
||||
|
||||
SELECT 'Checking For Object_Types Table';
|
||||
SET @s = (SELECT IF(
|
||||
(SELECT COUNT(*)
|
||||
FROM INFORMATION_SCHEMA.TABLES
|
||||
WHERE table_name = 'Object_Types'
|
||||
AND table_schema = DATABASE()
|
||||
) > 0,
|
||||
"SELECT 'Object_Types table exists'",
|
||||
"CREATE TABLE Object_Types (
|
||||
Id INTEGER NOT NULL AUTO_INCREMENT,
|
||||
Name VARCHAR(32) UNIQUE,
|
||||
Human TEXT,
|
||||
PRIMARY KEY (Id)
|
||||
)"
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @s;
|
||||
EXECUTE stmt;
|
|
@ -0,0 +1,50 @@
|
|||
SET @s = (SELECT IF(
|
||||
(SELECT COUNT(*)
|
||||
FROM INFORMATION_SCHEMA.STATISTICS
|
||||
WHERE table_name = 'Logs'
|
||||
AND table_schema = DATABASE()
|
||||
AND index_name = 'Logs_Component_idx'
|
||||
) > 0,
|
||||
"SELECT 'Logs_Component_idx already exists on Logs table'",
|
||||
"CREATE INDEX `Logs_Component_idx` ON `Logs` (`Component`)"
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @s;
|
||||
EXECUTE stmt;
|
||||
|
||||
SET @s = (SELECT IF(
|
||||
(SELECT COUNT(*)
|
||||
FROM INFORMATION_SCHEMA.STATISTICS
|
||||
WHERE table_name = 'Logs'
|
||||
AND table_schema = DATABASE()
|
||||
AND index_name = 'TimeKey'
|
||||
) > 0,
|
||||
"DROP INDEX `TimeKey` ON Logs",
|
||||
"SELECT 'TimeKey already removed from Logs table'"
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @s;
|
||||
EXECUTE stmt;
|
||||
|
||||
--
|
||||
-- This adds Object_Types
|
||||
--
|
||||
|
||||
SELECT 'Checking For Object_Types Table';
|
||||
SET @s = (SELECT IF(
|
||||
(SELECT COUNT(*)
|
||||
FROM INFORMATION_SCHEMA.TABLES
|
||||
WHERE table_name = 'Object_Types'
|
||||
AND table_schema = DATABASE()
|
||||
) > 0,
|
||||
"SELECT 'Object_Types table exists'",
|
||||
"CREATE TABLE Object_Types (
|
||||
Id INTEGER NOT NULL AUTO_INCREMENT,
|
||||
Name VARCHAR(32) UNIQUE,
|
||||
Human TEXT,
|
||||
PRIMARY KEY (Id)
|
||||
)"
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @s;
|
||||
EXECUTE stmt;
|
|
@ -18,7 +18,7 @@
|
|||
%global zmtargetdistro %{?rhel:el%{rhel}}%{!?rhel:fc%{fedora}}
|
||||
|
||||
Name: zoneminder
|
||||
Version: 1.37.57
|
||||
Version: 1.37.58
|
||||
Release: 2%{?dist}
|
||||
Summary: A camera monitoring and analysis tool
|
||||
Group: System Environment/Daemons
|
||||
|
|
|
@ -1 +1 @@
|
|||
1.37.57
|
||||
1.37.58
|
||||
|
|
|
@ -17,14 +17,14 @@ if ($raw) {
|
|||
foreach ($stats as $stat) {
|
||||
$stat['ZoneName'] = validHtmlStr($stat['ZoneName']);
|
||||
$stat['PixelDiff'] = validHtmlStr($stat['PixelDiff']);
|
||||
$stat['AlarmPixels'] = sprintf('%d (%d%%)', $stat['AlarmPixels'], (100*$stat['AlarmPixels']/$stat['Area']));
|
||||
$stat['FilterPixels'] = sprintf('%d (%d%%)', $stat['FilterPixels'], (100*$stat['FilterPixels']/$stat['Area']));
|
||||
$stat['BlobPixels'] = sprintf('%d (%d%%)', $stat['BlobPixels'], (100*$stat['BlobPixels']/$stat['Area']));
|
||||
$stat['AlarmPixels'] = sprintf('%d (%.1f%%)', $stat['AlarmPixels'], (100*$stat['AlarmPixels']/$stat['Area']));
|
||||
$stat['FilterPixels'] = sprintf('%d (%.1f%%)', $stat['FilterPixels'], (100*$stat['FilterPixels']/$stat['Area']));
|
||||
$stat['BlobPixels'] = sprintf('%d (%.1f%%)', $stat['BlobPixels'], (100*$stat['BlobPixels']/$stat['Area']));
|
||||
$stat['Blobs'] = validHtmlStr($stat['Blobs']);
|
||||
if ($stat['Blobs'] > 1) {
|
||||
$stat['BlobSizes'] = sprintf('%d-%d (%d%%-%d%%)', $stat['MinBlobSize'], $stat['MaxBlobSize'], (100*$stat['MinBlobSize']/$stat['Area']), (100*$stat['MaxBlobSize']/$stat['Area']));
|
||||
$stat['BlobSizes'] = sprintf('%d-%d (%.1f%%-%.1f%%)', $stat['MinBlobSize'], $stat['MaxBlobSize'], (100*$stat['MinBlobSize']/$stat['Area']), (100*$stat['MaxBlobSize']/$stat['Area']));
|
||||
} else {
|
||||
$stat['BlobSizes'] = sprintf('%d (%d%%)', $stat['MinBlobSize'], 100*$stat['MinBlobSize']/$stat['Area']);
|
||||
$stat['BlobSizes'] = sprintf('%d (%.1f%%)', $stat['MinBlobSize'], 100*$stat['MinBlobSize']/$stat['Area']);
|
||||
}
|
||||
$stat['AlarmLimits'] = validHtmlStr($stat['MinX'].','.$stat['MinY'].'-'.$stat['MaxX'].','.$stat['MaxY']);
|
||||
$data['raw'][] = $stat;
|
||||
|
|
|
@ -203,27 +203,27 @@ class ZM_Object {
|
|||
$this->{$field} = implode(',', $value);
|
||||
} else if (is_string($value)) {
|
||||
if (array_key_exists($field, $this->defaults)) {
|
||||
# Need filtering
|
||||
if (is_array($this->defaults[$field]) && isset($this->defaults[$field]['filter_regexp'])) {
|
||||
if (is_array($this->defaults[$field]['filter_regexp'])) {
|
||||
foreach ($this->defaults[$field]['filter_regexp'] as $regexp) {
|
||||
$this->{$field} = preg_replace($regexp, '', trim($value));
|
||||
}
|
||||
} else {
|
||||
$this->{$field} = preg_replace($this->defaults[$field]['filter_regexp'], '', trim($value));
|
||||
}
|
||||
} else if ($value == '') {
|
||||
if (is_array($this->defaults[$field])) {
|
||||
$this->{$field} = $this->defaults[$field]['default'];
|
||||
} else if (is_string($this->defaults[$field])) {
|
||||
# if the default is a string, don't set it. Having a default for empty string is to set null for numbers.
|
||||
$this->{$field} = $value;
|
||||
} else {
|
||||
$this->{$field} = $this->defaults[$field];
|
||||
}
|
||||
} else {
|
||||
$this->{$field} = $value;
|
||||
} # need a default
|
||||
# Need filtering
|
||||
if (is_array($this->defaults[$field]) && isset($this->defaults[$field]['filter_regexp'])) {
|
||||
if (is_array($this->defaults[$field]['filter_regexp'])) {
|
||||
foreach ($this->defaults[$field]['filter_regexp'] as $regexp) {
|
||||
$this->{$field} = preg_replace($regexp, '', trim($value));
|
||||
}
|
||||
} else {
|
||||
$this->{$field} = preg_replace($this->defaults[$field]['filter_regexp'], '', trim($value));
|
||||
}
|
||||
} else if ($value == '') {
|
||||
if (is_array($this->defaults[$field])) {
|
||||
$this->{$field} = $this->defaults[$field]['default'];
|
||||
} else if (is_string($this->defaults[$field])) {
|
||||
# if the default is a string, don't set it. Having a default for empty string is to set null for numbers.
|
||||
$this->{$field} = $value;
|
||||
} else {
|
||||
$this->{$field} = $this->defaults[$field];
|
||||
}
|
||||
} else {
|
||||
$this->{$field} = $value;
|
||||
} # need a default
|
||||
} else {
|
||||
$this->{$field} = $value;
|
||||
}
|
||||
|
|
|
@ -382,9 +382,10 @@ function addTerm( element ) {
|
|||
var row = $j(element).closest('tr');
|
||||
row.find('select').chosen('destroy');
|
||||
var newRow = row.clone().insertAfter(row);
|
||||
newRow.find('select').each( function() { //reset new row to default
|
||||
this[0].selected = 'selected';
|
||||
});
|
||||
//newRow.find('select').each( function() { //reset new row to default
|
||||
// if ($j(this).find('option').length > 0 )
|
||||
// this[0].selected = 'selected';
|
||||
//});
|
||||
newRow.find('input[type="text"]').val('');
|
||||
newRow[0].querySelectorAll("button[data-on-click-this]").forEach(function(el) {
|
||||
var fnName = el.getAttribute("data-on-click-this");
|
||||
|
|
Loading…
Reference in New Issue