Commit Graph

2074 Commits

Author SHA1 Message Date
Isaac Connor 2b90bf15a6
Improve session (#2487)
* Introduce ZM_COOKIE_LIFETIME which sets the life of the SESSION cookie, instead of using what is in php.ini

* Use zm specific session functions, which are now located in includes/session.php.  Be more agressive about clearing session on logout.

* Move session code to includes/session.php

* remove duplicate line

* Move is_session_open to session.php.  Move code to clear a session into session.php

* improve debug line when there is a problem updating config entry

* split description into description and help text for COOKIE_LIFETIME

* Remove redirect on line.  We do it in javascript on postlogin view so that we can say logging in before switching to console

* If there is a username in the session, then we are logged in, but we need to load the user object from the db.  We can't just trust it from the session. The user may have been deleted and having that data in the session can be a security risk. So load the user object on every request.

* Use session_regenerate_id instead of our broken code to do the same

* Move auth code to includes/auth.php

* add autocomplete tags to username and password inputs

* Don't redirect to login if we are already viewing login.  Put auth before including skin includes

* need to include session.php in auth.php

* update to php namespace
2019-02-22 09:43:38 -05:00
Chris b8117f7fc9 Add support for control of Amcrest cameras (#2536)
* Add a control module to support the current Amcrest HTTP API

This patch adds ZoneMinder::Control::Amcrest_HTTP

This module is adapted and improved from one available on the ZoneMinder
forums.[1] It appears that a number of individuals have contributed to
it. This is an attempt to correct some of its interactions with ZM::Control
and friends as well as enhance and extend supported control features
for Amcrest cameras.

This work is based on Amcrest HTTP Protocol API Specifications
Rev. 2.12 2017-03-15

[1]https://forums.zoneminder.com/download/file.php?id=1878

* Fixing zoom methods

* Misc. cleanup of comments, etc.

* Fixing up POD, etc.

* Converting line endings to Unix

* Fixing up preset methods

The current Amcrest HTTP API does not support a Home command per se. So this
method is set up to send the camera to the first preset position. Of course,
this presupposes that the user will setup a preset #1 otherwise the command
will fail on a bad preset error.

If a future version of the API supports a true Home command, we'll adjust
at that point. For now this seems to be a useful workaround.

* Removing duplicate home method

* Adding moveAbs method

I'm putting this in, but absolute camera movement does not seem to be well
supported in the classic skin ATM. Reading
www/skins/classic/include/control_functions.php seems to indicate
a faulty implementation, unless I'm reading it wrong. I see nowhere
where the user is able to specify the absolute location to move to. Rather,
the call is passed back movement in increments of 1 unit. At least with the
Amcrest/Duhua API this would result in the camera moving to the 1* or 0* etc.
position.

moveAbsUp, Down, Left, Right, etc. Doesn't make sense given the definition
of Absolute movement.

* Adding a note about the moveMap method

This method does not appear to be implemented in the classic skin,
but we'll leave it here for future implementation. Caveat: It may
or may not work as-is.

* Fixing up zoomConTele/Wide methods

* Adding a vanilla control type for the Amcrest HTTP API

Please note that this control type matches (mostly) the currently
available control options in Amcrest_HTTP.pm. It does not match
all (or possibly any) of the control options available on a specific
Amcrest camera. The user may need to create their own control type
specific to the camera model they are using.

* Removing misplaced comment

Thanks to connortechnology for pointing this out!
2019-02-22 09:17:28 -05:00
Isaac Connor 24845e0457 Merge branch 'master' into storageareas 2019-02-14 15:40:52 -05:00
Isaac Connor 62bf7d54f1 close sth's on Fatal to prevent error message 2019-02-14 15:40:42 -05:00
Isaac Connor a3374aa26c Merge branch 'reload_zmfilter_on_filter_save' into storageareas 2019-02-11 13:26:53 -05:00
Steve Gilvarry 87413d447d Set CSRF on as the default for new installs. Fixes #2507 (#2508)
* Set CSRF on as the default for new installs. Not sure we can impact config on existing installations.

* Fix the spelling mistake that I noticed after editing this.
2019-02-10 13:08:58 -05:00
Isaac Connor 555cb4780d Merge branch 'master' into storageareas 2019-02-10 12:37:45 -05:00
Isaac Connor e2fc0ea25d Increase navbar refresh times. 5 seconds is way too fast 2019-02-08 10:22:42 -05:00
Isaac Connor d121ecab75 Merge branch 'improve_session' into storageareas 2019-02-05 15:48:42 -05:00
Isaac Connor 5b288d3b67 split description into description and help text for COOKIE_LIFETIME 2019-02-05 11:39:50 -05:00
Isaac Connor a176c9bbd2 improve debug line when there is a problem updating config entry 2019-02-05 11:39:21 -05:00
Isaac Connor 4e10e6f0ae Merge branch 'improve_session' into storageareas 2019-01-30 15:26:37 -05:00
Isaac Connor 1e56e750cf Introduce ZM_COOKIE_LIFETIME which sets the life of the SESSION cookie, instead of using what is in php.ini 2019-01-30 11:04:38 -05:00
Isaac Connor cc8de69eba Merge branch 'master' into storageareas 2019-01-22 11:44:42 -05:00
Isaac Connor e60e3666d5 Fix comment 2019-01-22 10:53:53 -05:00
Matt N 0619a4a161 Validate cnj, obr, and cbr arguments in parseFilter (#2434) 2019-01-22 08:03:25 -05:00
Isaac Connor b8d065275b Merge branch 'master' into storageareas 2019-01-04 15:22:18 -05:00
techrockedge 571daec8fc Merge branch 'master' of git://github.com/ZoneMinder/zoneminder
refresh with master
2019-01-03 15:02:57 -05:00
techrockedge e21b8dc1f9 changed to ZM db functions 2019-01-02 16:01:33 -05:00
techrockedge 51d3e6b2cd changed to ZM db functions 2019-01-02 14:09:35 -05:00
Andrew Bauer bd2b761bcd change configdata.pm.in defaults 2018-12-31 09:54:48 -06:00
techrockedge f25e176b88 added create table if not exist 2018-12-29 20:57:46 -05:00
techrockedge 60d5880694 Merge branch 'master' of git://github.com/ZoneMinder/zoneminder 2018-12-29 19:36:20 -05:00
techrockedge 2cac25d353 removed unused preset code 2018-12-29 19:35:16 -05:00
Isaac Connor 5060358870 Merge branch 'master' into storageareas 2018-12-29 09:56:53 -05:00
Andrew Bauer 3258d8e590 remove ZM_DIR_IMAGES (#2374) 2018-12-29 09:52:58 -05:00
techrockedge bcbe9075f9 fixed preset delete and set 2018-12-28 21:11:52 -05:00
techrockedge 826201a3f9 Merge branch 'master' of git://github.com/ZoneMinder/zoneminder 2018-12-28 20:32:04 -05:00
Isaac Connor 1a1231fdaa Merge branch 'master' into storageareas 2018-12-28 10:47:27 -05:00
Jonathan Meredith 265a73ab29
Spelling mistake fix
Changed his to this
2018-12-27 22:26:07 -05:00
Isaac Connor 3e06bbcef8 Merge branch 'master' into storageareas 2018-12-27 13:50:29 -05:00
Isaac Connor 08e5166bcb remove quotes around state in command documentation. 2018-12-27 12:24:50 -05:00
Isaac Connor c017219a1e use do instead of many lines of dbi. Cleanup logic around command detection 2018-12-27 12:22:06 -05:00
techrockedge f815aaa5f5 Merge branch 'master' of git://github.com/ZoneMinder/zoneminder 2018-12-21 19:46:45 -05:00
Isaac Connor 7a8beffdcc Merge branch 'master' into storageareas 2018-12-20 15:10:52 -05:00
Isaac Connor e626049f6b Merge branch 'swresample' into storageareas 2018-12-20 14:08:40 -05:00
Isaac Connor 0c09616059 put back privacy notice update 2018-12-20 13:58:09 -05:00
Isaac Connor 88e148068e Logging and whitespace 2018-12-20 13:56:57 -05:00
Isaac Connor 6af8f0d419 Logging and whitespace 2018-12-20 13:55:18 -05:00
Isaac Connor 64bdf40e86 Logging and whitespace changes. No logical changes 2018-12-20 13:50:55 -05:00
Isaac Connor eccfdb8a6a Logging and whitespace changes. No logical changes 2018-12-20 13:50:07 -05:00
Isaac Connor 3a068ae6a3 Merge branch 'master' into swresample 2018-12-16 16:15:28 -05:00
techrockedge 180a4b07b1 foscam r2c ptz 2018-12-14 19:13:41 -05:00
techrockedge 51b4c27b27 foscam r2c ptz 2018-12-14 17:30:45 -05:00
Isaac Connor 0bfe1007c8 Merge branch 'master' into storageareas 2018-12-14 10:16:08 -05:00
Pliable Pixels ebaafef607 Ffmpeg logs optional (#2345)
* make ffmpeg logs configurable via web

* fix Info
2018-12-14 08:01:23 -05:00
Isaac Connor b61eb7d4fc Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-12-13 10:53:56 -05:00
Isaac Connor 0c5eead929 Merge branch 'master' into fix_startup_db_connection 2018-12-13 10:53:34 -05:00
Andrew Bauer db81465fa2 allow one to set manpage destination 2018-12-07 09:47:00 -06:00
Isaac Connor 0c7f91c38a Merge branch 'master' into storageareas 2018-12-03 16:25:28 -05:00
Isaac Connor f2f1e230d1 put back missing ! 2018-12-03 16:25:03 -05:00
Isaac Connor 14272a42b4 fix use of getcwd in delete_empty_subdirs. We use absolute paths 2018-12-03 11:08:24 -05:00
Isaac Connor 7d90a56561 Merge branch 'master' into storageareas 2018-11-30 14:46:42 -05:00
Isaac Connor f9139f2d98 Use the word skipped instead of aborted 2018-11-30 10:48:20 -05:00
Isaac Connor df0b600431 Merge branch 'master' into storageareas 2018-11-29 10:49:06 -05:00
Isaac Connor 45a9f9158d spelling mistakes 2018-11-29 10:45:30 -05:00
Isaac Connor 1a85e282e2 use find_one instead of new. We seem to be comparing against unfound event objects 2018-11-29 10:09:49 -05:00
Isaac Connor 4625f7c879 Merge branch 'master' into storageareas 2018-11-28 10:46:49 -05:00
Isaac Connor 6de704922c Set scheme to '' if undefined to quiet warnings 2018-11-27 17:01:49 -05:00
Isaac Connor e15bbba090 Make debug line more useful by printing out the containing directory 2018-11-26 15:45:05 -05:00
Isaac Connor b3703a5eed Check in db a second time for the event. Long running zmaudits can find an event in the fs that was created after we loaded all the db events. 2018-11-26 15:16:10 -05:00
Isaac Connor 3f4e918b9e Merge branch 'zmaudit_check_other_storageareas' into storageareas 2018-11-26 15:09:14 -05:00
Isaac Connor d6fb4e1910 Add StorageId function to clear Storage when you set a new StorageId. Clear Path when assigning a new StorageArea 2018-11-26 15:09:04 -05:00
Isaac Connor 7fb0e1eaf7 Cache All StorageAreas and just to next event if we find the event somewhere other than where it should be. 2018-11-26 15:02:34 -05:00
Isaac Connor 1c45f98a65 Merge branch 'zmaudit_check_other_storageareas' into storageareas 2018-11-23 15:16:15 -05:00
Isaac Connor 1b74aa959b Have to refresh the Path in the Event when updating Storage Area 2018-11-23 15:15:51 -05:00
Isaac Connor 32337c5dbb fix prompt when updating StorageArea 2018-11-23 15:13:47 -05:00
Isaac Connor d16981365f Merge branch 'zmaudit_check_other_storageareas' into storageareas 2018-11-23 12:16:21 -05:00
Isaac Connor 6d19280069 Set Scheme when Shallow. Improve debug message. Fix spacing 2018-11-23 12:16:11 -05:00
Isaac Connor dea5db9dd9 Merge branch 'zmaudit_check_other_storageareas' into storageareas 2018-11-23 11:11:39 -05:00
Isaac Connor 73d27f5095 Add code to see if a db event is stored at the wrong storage area 2018-11-23 10:10:50 -05:00
Andrew Bauer b4f77077e9
Update zmdc.pl.in
temporary fix to #2292
2018-11-16 18:33:54 -06:00
Andrew Bauer e5f2212a32 fix gpl mailing address 2018-11-15 20:00:53 -06:00
Isaac Connor 35b439629c Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-11-13 18:14:35 -05:00
Isaac Connor 381071eb0f Fix log message to say recovering instead of auditing 2018-11-13 16:36:39 -05:00
Isaac Connor d2dc23b4e9 fixes, better logging 2018-11-13 16:35:09 -05:00
Isaac Connor 73c52705f2 Merge branch 'fix_32bit_alignment' into storageareas 2018-11-13 14:22:06 -05:00
Isaac Connor e8ed1367d7 Merge branch 'master' into storageareas 2018-11-13 14:22:00 -05:00
Isaac Connor ca87936cd7 add function time_of_youngest_file to determine the youngest file in an event dir, so as to guess the starttime of the event. 2018-11-13 14:13:41 -05:00
Isaac Connor 798bf68df1 add function time_of_youngest_file to determine the youngest file in an event dir, so as to guess the starttime of the event. 2018-11-13 14:13:32 -05:00
Isaac Connor 31b0ed107d remove epadding2, to restore the 64bit alignment of startup_time. A proper fix instead of #2258 2018-11-13 14:02:44 -05:00
Isaac Connor 07d6d799ce Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-11-13 10:30:58 -05:00
Isaac Connor 993da131f1 tidy up and use Error instead of Carp::croak 2018-11-13 10:29:19 -05:00
Isaac Connor 967fe14b22 Add ability to update incorrect starttime. 2018-11-11 10:17:32 -05:00
Isaac Connor 1e98ecb595 Sort keys in to_string 2018-11-09 12:14:39 -05:00
Isaac Connor 5f81e9111f Add Scheme and SaveJPEGs to Event fields, and fix setting Scheme 2018-11-09 12:14:05 -05:00
Isaac Connor abada5c95c Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-11-09 10:47:00 -05:00
Isaac Connor 4ddd328c61 Check and Fix Scheme and StorageArea 2018-11-09 10:39:57 -05:00
Andrew Bauer d6877b763d
Merge pull request #2298 from connortechnology/log_use_global_dbh
Use the global dbh in ZoneMinder::Database instead of keeping our own…
2018-11-07 12:29:11 -06:00
Isaac Connor 0e3eb0df17 remove extra quotes, google code style, update pod docs 2018-11-07 11:26:48 -05:00
Isaac Connor 4107082845 Don't delete default states if there are none 2018-11-07 11:01:49 -05:00
Isaac Connor 0ebcef7324 in poddoc and over needs a =back 2018-11-07 11:01:12 -05:00
Isaac Connor 56bdd53757 Use the global dbh in ZoneMinder::Database instead of keeping our own copy of it in Logger 2018-11-07 10:40:44 -05:00
Isaac Connor 93bf05be4e Merge branch 'zmrecover' into storageareas 2018-11-06 20:37:35 -05:00
Isaac Connor 9a96785fa4 Add in Frame.php 2018-11-06 20:37:00 -05:00
Isaac Connor 5495ab8036 Fix package for Event 2018-11-06 16:15:27 -05:00
Isaac Connor c60bd3af1e Need to new an Event 2018-11-06 15:43:22 -05:00
Isaac Connor 5a6ffe758a Merge branch 'zmrecover' into storageareas 2018-11-06 15:29:02 -05:00
Isaac Connor f86ed5c66c allow interactive=0 and use Inf for log lines about resurecting events 2018-11-06 15:28:56 -05:00
Isaac Connor 181a8c29e1 Add SaveJPEGs to Event 2018-11-06 15:28:37 -05:00
Isaac Connor 6d6d25261f Merge branch 'zmrecover' into storageareas 2018-11-06 12:14:54 -05:00
Isaac Connor 3cd1887d54 Cleanup POSIX use. Fix conflict between POSIX and Date::Format. 2018-11-06 12:14:42 -05:00
Isaac Connor aa9bb81b61 Merge branch 'zmrecover' into storageareas 2018-11-06 09:57:01 -05:00
Isaac Connor e0bc0484d4 Add empty string default for DefaultVideo 2018-11-06 09:56:29 -05:00
Isaac Connor 18b327b4ac Turn off massive debugging 2018-11-06 09:55:53 -05:00
Isaac Connor e1a5940254 Merge branch 'zmrecover' into storageareas 2018-11-05 16:53:01 -05:00
Isaac Connor 451c42ddf5 Implement rmrecover script. Flush out Object code to support find, find_one, find_sql, improve to_string, etc. 2018-11-05 16:52:34 -05:00
Isaac Connor 4b24bf4e36 merge from storageareas, fully specify Module for zmDbDisconnect as we havn't 'used' it 2018-11-02 11:48:35 -04:00
Isaac Connor 461ce3c1f8 Merge branch 'master' into storageareas 2018-10-29 12:52:06 -04:00
Isaac Connor aaeb30a72f Move license down to perldocs at bottom. Remove unecessary line feeds and spaces 2018-10-28 17:50:22 -04:00
Isaac Connor 349693e27d Add a missing comma 2018-10-25 11:24:23 -04:00
Isaac Connor 88b9a1b259 Don't auto enable show privacy 2018-10-18 08:49:13 -04:00
Isaac Connor 372c6b7f69 explicitly call ZoneMinder::Database::zmDbDisconnect 2018-10-17 20:57:24 -04:00
Isaac Connor c2af380e29 Merge branch 'master' into storageareas 2018-10-16 11:39:26 -04:00
Isaac Connor 7149576a7c Merge branch 'smarter_packetqueue' into storageareas 2018-10-15 10:59:50 -04:00
Andy Bauer 5b964ba3d5 create the upload folder if it does not exist 2018-10-11 15:57:25 -05:00
Andrew Bauer 71e150daae
add missing brackets around second expression in archImagePath 2018-10-11 14:32:40 -05:00
Isaac Connor ad71b0c626 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-10-11 11:28:17 -04:00
Isaac Connor 428b2506ec Add .mp4 and snapshot files to glob for upload archive 2018-10-11 11:28:07 -04:00
Andrew Bauer 7ffc5ab266
Merge branch 'master' into control_plugin_psia 2018-10-11 09:32:06 -05:00
Isaac Connor e4de623537 Merge branch 'master' into storageareas 2018-10-10 14:53:51 -04:00
Isaac Connor 8e053aa04b Merge branch 'master' into storageareas 2018-10-10 14:51:52 -04:00
Andrew Bauer 2fbe1be02b implement loadMonitor sub (#2244)
* implement loadMonitor sub

* remove carriabe returns from Info, Warning, Debug statements
2018-10-10 14:27:05 -04:00
Isaac Connor b84234cdf1 Remove debug line at INF level 2018-10-10 14:22:48 -04:00
Isaac Connor 1958351a13 Merge branch 'master' into storageareas 2018-10-09 10:24:24 -04:00
Andrew Bauer c1de20a081 use $Event rather than $event (#2240) 2018-10-08 09:25:17 -04:00
Isaac Connor 4a642e1a9d pass Event instead of event to executeCommand 2018-10-08 08:31:16 -04:00
Isaac Connor 9275a1d046 fix missing spaces after 'to' and some spacing and quotes 2018-10-05 09:45:47 -04:00
Isaac Connor 56b31becb2 Add explicit db disconnect in Fatal(). If we don't disconnect then we leave sockets hanging around in TIME_WAIT (I think). 2018-10-04 10:47:38 -04:00
Isaac Connor 015890a509 Merge branch 'master' into storageareas 2018-10-02 15:27:12 -04:00
Isaac Connor c94367c7ad The uploadArchFile takes an Event object now 2018-09-29 08:32:57 -04:00
Isaac Connor 33bd30fbbd Merge branch 'master' into storageareas 2018-09-28 13:40:18 -04:00
Andrew Bauer b533c8b257 don't zmMemInvalidate when reloading monitors (#2225)
* remove call to zmMemVerify when reloading monitors

* need to call zmMemVerify to attach to the mem handle
2018-09-28 13:35:42 -04:00
Isaac Connor d45406bce7 ode style and some more debug 2018-09-28 11:50:34 -04:00
Isaac Connor e6f366c5cb Merge branch 'master' of github.com:zoneminder/ZoneMinder 2018-09-28 09:48:37 -04:00
Isaac Connor e0dc8a5f6b Merge branch 'master' into storageareas 2018-09-27 13:54:53 -04:00
Isaac Connor 66f11435b9 perhaps fix memory corruption due to libx264 writing to stderr which may be closed. 2018-09-27 13:50:11 -04:00
Isaac Connor 8f6db1c279 Merge branch 'master' into storageareas 2018-09-25 13:54:44 -04:00
Isaac Connor 5fd1034b0b Add ServerId to perl Logging to DB 2018-09-25 13:53:50 -04:00
Isaac Connor af69dab9c5 Merge branch 'master' of github.com:zoneminder/ZoneMinder 2018-09-22 14:58:28 -04:00
Isaac Connor 5dba17e1fc Merge branch 'master' into storageareas 2018-09-21 10:50:10 -04:00
Isaac Connor 3f0336e63e Fix event_id detection from link (re was wrong). Add extra check for db event when we find an event dir without identifying id info in Deep mode 2018-09-21 10:31:54 -04:00
Isaac Connor 6aa71dfc11 Fix calculation of LinkPath, as it was using RelativePath instead of Path 2018-09-21 10:31:11 -04:00
Isaac Connor a568948eab Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-09-20 12:31:36 -04:00
Isaac Connor 884eb48420 fix the section that deletes events that have lost their event links. 2018-09-20 12:31:19 -04:00
Jonathan Lassoff c7e1e7b901 Control plugin for Dahua PTZ cameras (#2192)
* Control plugin for Dahua PTZ cameras

* Update http/https protocol handling

* Update doc and license

* Remove license from top of file

* Use named regex capture groups for ControlAddress parsing

* Remove trailing whitespace in Trendnet.pm
2018-09-20 12:29:54 -04:00
Isaac Connor 7abe4c40d5 Merge branch 'fix_2213' into storageareas 2018-09-19 20:02:27 -04:00
Isaac Connor 95bcac4c5a Implement delete_empty_subdirs that uses delete_empty_directories. The idea is to use it on the monitor dir so that the monitor dir gets left behind and not deleted when there are no events 2018-09-19 20:00:26 -04:00
Isaac Connor 3a9f96e8e8 Skip deleting event if event is archived. And event not having a scheme is now an error 2018-09-19 12:03:51 -04:00
Isaac Connor 34c7ee32ee Merge branch 'master' into storageareas 2018-09-14 15:13:57 -04:00