Commit Graph

303 Commits

Author SHA1 Message Date
Isaac Connor 03f09bdc48 Use defined CONFIG constants instead of looking up config from db 2018-10-03 10:56:02 -04:00
Isaac Connor bf9ff8461c Add WebSite to the Monitor type enumeration 2018-09-24 13:20:19 -04:00
Isaac Connor 23ddc83ad4
fix_2167 (#2168)
* Populate a global  from the session on every request. Use the  object instead of using allowedMonitors in session.

* fix when  gets loaded.

* use  for auth, and add Monitor Edit checks to Zone add/delete/edit

* add back the ZM_OPT_USE_AUTH test for being logged in in AppController

* Update permissions code to use

* change quotes

* Update permission code to use

* Use  instal of session for systemPermission

* deprecate montiorPermision in session

* use  instead of session streamPermission

* move login code back into AppController. Has to be done for every request

* deprecate eventPermission, controlPermission and systemPermission in session.

* handle auth params in query string as well as post

* exit on HUP to free up memory.

* add missing global user

* system should be System
2018-08-08 09:59:46 -04:00
Isaac Connor dc57a3c91c fix spacing/quotes/google code style 2018-07-24 16:41:09 -04:00
Pliable Pixels 997aa6aa55 fixed getCredentials not working if called directly 2018-07-17 13:57:20 -04:00
Pliable Pixels 0ff9002adf 2156 api login (#2157)
* error can be due to bad user or password

* added login/logout and related private functions

* handle case when userLogin fails, current code returns PHP error for  and API throw is not called

* formatting

* converted login params to POST, removed user=&pass= for other APIs

* formatting

* add auth check back but leave out login/out

* fixes to make it work across zmN, postman and curl

* added back enabled check
2018-07-15 21:17:35 -04:00
Isaac Connor fe5ebe094d More work just using auth.php instead of cake code. Don't reload the User object 2018-07-11 11:45:49 -04:00
Isaac Connor 4f80ca6871 Use userLogin function from auth.php instead of cake code. 2018-07-11 10:33:49 -04:00
Isaac Connor 983e3c45be Fix spacing and quotes 2018-07-11 09:54:25 -04:00
Isaac Connor f10509690b add username and passwordHash to Session so that generateAuthHash works 2018-07-11 09:54:15 -04:00
Isaac Connor 21438d17ac Fix authenticating User 2018-07-10 13:19:51 -04:00
Isaac Connor 930d929427 Merge branch 'storageareas' into api_auth 2018-07-10 12:46:30 -04:00
Andrew Bauer 32d103c216 fix submodule again 2018-07-01 08:23:00 -05:00
Andrew Bauer 5d0719f18d fixes #2137 2018-07-01 08:16:06 -05:00
Isaac Connor e04eac57ae Include values in /etc/zm files in viewByName 2018-06-25 15:43:01 -04:00
Isaac Connor 24ceb75936 Merge branch 'master' into include_fs_config_in_api_config 2018-06-21 21:41:54 -04:00
Isaac Connor cd64619743 Fix controlling daemon when the monitor is Local 2018-06-06 12:56:33 -04:00
Isaac Connor af3ce3660f Only unlink if file exists, removing warning. Always return a Storage object in Monitor->Storage() fixes Monitor Delete. 2018-05-24 09:54:45 -04:00
Isaac Connor be424f46f0 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-05-18 12:07:22 -04:00
Isaac Connor 8276386a44 We always return an associative array now 2018-05-18 09:06:17 -04:00
Isaac 93dd943fec Fix some spacing 2018-05-16 20:17:57 +02:00
Isaac Connor 571b27a025 Merge branch 'storageareas' of github.com:ConnorTechnology/ZoneMinder into storageareas 2018-05-10 14:39:16 -04:00
Isaac Connor c61deb422f update to -zm versions 2018-05-10 14:38:49 -04:00
Isaac Connor 2a5f05499e Munge the config in the global configvals into the configs array before returning it. 2018-05-10 13:44:46 -04:00
Isaac Connor 62edca6dcb add fileSize to the api, and use it to add remote fileSize reporting in includes/Event 2018-05-08 13:33:56 -07:00
Isaac Connor e7bd5900bc rough in a Storage Model 2018-05-07 14:09:05 -07:00
Isaac Connor 1a012c62ff Add fileExists to event view 2018-05-07 14:07:03 -07:00
Isaac Connor 9c44f56f37 Add Storage to belongsTo. Implement Relative_Path and fileExists functions 2018-05-07 14:06:48 -07:00
Isaac Connor f2c099f1e4 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-05-04 16:01:25 -04:00
Isaac 84c94efaa8 Move redunddant close methods into parent. Use Fatal instead of croak. Croak is not defined so it causes an infinite loop 2018-05-04 02:26:25 +02:00
Pliable Pixels e953a04f61 naming consistency of attribute (#2096) 2018-05-03 14:03:49 -04:00
Pliable Pixels a3158fcc97 auth_key api for different situations (#2090)
* auth_key api for different situations

* added new flag to indicate if password needs to be appended

* pure json view
2018-05-02 12:26:28 -04:00
Isaac Connor c3b6cd4bab include auth.php if auth is on, and return '' for auth_hash is auth is disabled 2018-04-30 11:24:53 -04:00
Isaac Connor a4da624f4c break out of loops when zm-terminate is set 2018-04-27 13:20:38 -07:00
Isaac Connor bbb10fa4b4 Turn off ffmpeg debugging output, as it seems to conflict with the code at zm_db.cpp 34 2018-04-24 12:40:15 -04:00
Isaac Connor 578df0c5cc update submodules 2018-04-20 16:18:58 -04:00
Isaac Connor c65255a067 Merge ../ZoneMinder.connortechnology 2018-04-20 15:56:42 -04:00
Isaac Connor a868bb70ed Better debug when fail to attach images 2018-04-20 15:56:14 -04:00
Isaac Connor fac3cde1e7 Merge branch 'master' of github.com:ZoneMinder/ZoneMinder 2018-04-20 15:23:23 -04:00
Andy Bauer ed140426ab rpm packaging changes and documentation 2018-04-19 15:36:43 -05:00
Andrew Bauer 3c225c9f1c Migrate Webcache out of webroot (#2083)
* migrate webcache folder out of webroot, migrate htaccess files

* rpm specfile - add missing reference to cache folder

* fix submodule mixup
2018-04-19 15:01:46 -04:00
Isaac Connor fb44619a66 output the initial table head 2018-04-19 14:33:05 -04:00
Isaac Connor 2aa689a14a Use a class instead of an id for consoleTable 2018-04-19 14:20:02 -04:00
Andrew Bauer a5cbc8abd1 buildsystem - update git submodules 2018-04-18 19:21:14 -05:00
Andrew Bauer f6540aeba1 point git submodules to our own forks 2018-04-18 14:00:00 -05:00
Isaac Connor 0b0fbae1c5 Add output of paused image when paused 2018-04-12 18:43:57 -04:00
Isaac Connor f9f78e9aa3 Convert event_id to a 64bit unsigned int 2018-04-12 13:40:11 -07:00
Isaac Connor 989ed65f52 spacing and braces, remove a dead unused function 2018-04-11 10:50:28 -04:00
Isaac Connor ae3ccf6ffe Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-04-06 12:32:07 -07:00
Isaac Connor fdd8be5daf brackets and spaces 2018-04-06 14:52:56 -04:00
Isaac Connor 7f850890cb whitespace 2018-04-06 14:42:20 -04:00
Isaac Connor 513708b11c don't need to define the config, it will have already been done. Include auth.php instead of functions.php as the code has been moved 2018-04-06 14:42:10 -04:00
Isaac Connor a789fc88aa implement getAuthHash 2018-04-06 14:41:39 -04:00
Isaac Connor 2c02a479d6 remove duplicated config code from bootstrap and just include config.php 2018-04-06 14:38:32 -04:00
Isaac Connor 7a12589a83 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-04-05 13:41:47 -07:00
Isaac Connor f1a8d5f1ff start of work on .41. Adding foreign keysy 2018-04-05 13:41:24 -07:00
Isaac Connor 632ab143fe error when can't set session in cake 2018-04-05 14:21:56 -04:00
Isaac Connor 87f5204c46 rename process_configfile to remove namesspace colision 2018-04-05 11:44:21 -04:00
Isaac Connor fb392b2765 put back process_configfile 2018-04-05 11:33:24 -04:00
Isaac Connor 8fee795fb4 don't duplicate declaration of process_configfile, because we include our version from ZM 2018-04-05 11:24:17 -04:00
Isaac Connor 489f11bd07 empty contents of zone.css because it is no different from base. 2018-04-03 21:18:29 -04:00
Isaac Connor 793f630ee0 Merge branch 'storageareas' of github.com:connortechnology/ZoneMinder into storageareas 2018-04-02 10:43:07 -07:00
Pliable Pixels d3350919de Reintroduced empty check rule, closed paranthesis 2018-03-27 10:55:36 -04:00
Pliable Pixels 5b7011c61b commented out incomplete definition - please complete it if you need it 2018-03-27 03:58:28 -04:00
Isaac Connor c83e259160 revert to v3.1.0 of CRud 2018-03-22 12:01:38 -04:00
Isaac Connor a4fee5c91c further merges from cakephp 2.10.8 2018-03-21 13:09:55 -04:00
Isaac Connor 27736fb5d9 Merge ../ZoneMinder.master into storageareas 2018-03-15 11:04:41 -04:00
mcdamo aa0a831223 Update Host.php (#2062)
Remove whitespace causing problems with session authentication
2018-03-13 22:28:38 -04:00
Isaac Connor b4c13d56d6 Merge ../ZoneMinder.master into storageareas 2018-03-06 12:29:59 -05:00
tim 0654c7e3b2 Adding group handling in API 2018-03-04 23:01:52 -08:00
Isaac Connor 7ec71868a6 Switch CakePHP-Enum-Behavior to my fixed version 2018-01-29 21:25:40 -05:00
Isaac Connor 456f29fcba Rename column Id OF Monitor_Statuses to simplify JOINS. 2018-01-26 13:39:37 -05:00
Isaac Connor 348fdafa4e Update submofule 2018-01-26 11:34:45 -05:00
Isaac Connor 475c465b0d define 2018-01-26 10:39:12 -05:00
Isaac Connor a0892b1ffc Whitespace 2018-01-26 10:30:59 -05:00
Isaac Connor 1503c586d2 When there is an error saving, add the invalidFields() info to the error message. Only restart the daemon on success. 2018-01-26 10:30:29 -05:00
Isaac Connor 933259f9a5 fix bracket 2018-01-23 13:16:21 -08:00
Isaac Connor bd2da456f4 handle non-multi-server case when restarting monitors via API 2018-01-19 21:09:33 -05:00
Isaac Connor d586faf7fb Fix restarting Monitor 2018-01-19 08:16:28 -08:00
Isaac Connor 1b1b93f811 use CakePHP-Enum-Behavior to add support for ENUMs to the Monitor model. This should fix #48 2018-01-01 14:43:02 -05:00
Isaac Connor 1cd69c69b9 add defining ZM_SERVER_ID after loading config 2018-01-01 13:10:39 -05:00
Isaac Connor bb8e326392 Fix not restarting a monitor if it has moved to a different server 2017-12-22 09:16:56 -08:00
Isaac Connor 85b7baa131 Fix event Groups associations 2017-12-19 18:09:41 -05:00
Isaac Connor d312482a2b add StorageScheme to Storage and Events. Deprecate ZM_USE_DEEP_STORAGE 2017-12-18 12:52:26 -05:00
Isaac Connor dd69bc3d7b Merge branch 'master' into storageareas 2017-12-11 11:39:42 -05:00
Isaac Connor ef1af9cc15 disable FilterComponent as it doesn't actually do anything. Add Groups join when needed 2017-12-09 14:03:42 -05:00
Pliable Pixels 08b5c26a15 2019 maxscoreframeid (#2020)
* added MaxScoreFrameId to address #2019

* consistent quotes
2017-12-07 14:11:06 -05:00
Isaac Connor f7a2db4e49 remove MaxScore from the sorting because it really doesn't make sense to sort by time then maxscore... time is going to be pretty much unique 2017-12-04 21:50:29 -05:00
Isaac Connor 97c9ae02c2 cleanup 2017-12-04 17:02:38 -05:00
Isaac Connor 6270408c8f rework group MonitorIds and add GroupId filters to api 2017-12-04 15:52:16 -05:00
Isaac Connor 03c9f88d55 fix build on trusty 2017-11-27 08:24:14 -05:00
Isaac Connor 489d3ba6ed Merge ../ZoneMinder.master into storageareas 2017-11-21 12:23:17 -05:00
APHW2 MFGENG f093cfbcef add Filtering to monitors index 2017-11-13 10:27:24 -08:00
Pliable Pixels a8fc832481 fix for monitor API edit perm (#1995) 2017-10-07 09:55:13 -04:00
Isaac Connor 49464d381a Merge branch 'master' into storageareas 2017-08-14 10:44:40 -04:00
ralimi ecb7df0e8b Support SSL for mysql connections (#1965)
* Fix install location for config files when building to alternate directory.

With the previous code, we ended up with a directory structure like the following:

$ find /etc/zm/conf.d/
/etc/zm/conf.d/
/etc/zm/conf.d/01-system-paths.conf
/etc/zm/conf.d/conf.d
/etc/zm/conf.d/conf.d/README
/etc/zm/conf.d/conf.d/02-multiserver.conf

* Omitted README file that should have appeared in /etc/zm/conf.d

* Fix location for configs when building to alternate directory.

* Fix works, but this should go on a branch instead.

* Fix works, but this should go on a branch instead.

* Fix location for configs when building to alternate directory.

With the previous code, we ended up with a directory structure like the following:

$ find /etc/zm/conf.d/
/etc/zm/conf.d/
/etc/zm/conf.d/01-system-paths.conf
/etc/zm/conf.d/conf.d
/etc/zm/conf.d/conf.d/README
/etc/zm/conf.d/conf.d/02-multiserver.conf

* Remove double quotes. This is a list of paths.

* Allow SSL database connection to be secured with SSL.

* Fix incorrect variable name

* Fix PHP syntax errors

* SSL connection parameters must also be passed in API.

* Revert fixes to build files; they should not be in this branch.
2017-08-14 10:30:42 -04:00
Isaac Connor cfbfc0dd44 Merge branch 'master' into storageareas 2017-07-21 11:04:32 -04:00
Isaac Connor efb02f3368 fix indent 2017-07-21 10:54:48 -04:00
Andrew Bauer 5cf2be528a Merge pull request #1950 from connortechnology/fix_api_logs
fix path to logs for api
2017-07-14 13:19:12 -05:00
Isaac Connor 240a990c7f fix writing to config 2017-07-14 12:19:43 -04:00
Isaac Connor e203064bf7 updates bootstrap.php.in to match config.php's conf.d loading 2017-07-14 12:03:00 -04:00
Isaac Connor 13a72b7a99 fix path to logs for api 2017-07-14 11:58:15 -04:00
Isaac Connor 9824049c0c fix conf.d loading in api 2017-07-14 11:46:36 -04:00
Isaac Connor 150aa5be51 Merge branch 'master' into api_auth 2017-06-09 12:33:17 -04:00
Isaac Connor 84fd80b242 undo cake log path changes 2017-06-08 12:21:51 -04:00
Isaac Connor c7b52bd998 fix logging dirs 2017-05-30 13:14:43 -04:00
Isaac Connor 75dc774a08 Continue to support non-USE_DEEP_STORAGE option 2017-05-22 21:21:49 -04:00
Matt N 33092e4022 Allow API authentication using the `auth` query parameter containing an auth. hash. (#1845)
* Allow API authentication using the `auth` query parameter containing an auth. hash.

Fixes #1827

The same auth. hash for zms is used here. This allows consumers to use the API without sending the password in the query string and not require forging logins via the login form.

* Move logger.php's global Debug function to Logger::Debug to avoid polluting globals

This avoids a conflict with CakePHP when logger.php gets included indrectly from API code.

* Protect action=login when ZM_ENABLE_CSRF_MAGIC is enabled
2017-05-15 21:51:48 -04:00
Joshua Ruehlig ca1e8a13fe Update database.php.default 2017-04-24 23:40:21 -07:00
Isaac Connor ab4b5e6b69 Merge pull request #1853 from knnniggett/cakecache
change cake cache engine from File -> Apc
2017-04-14 21:10:23 -04:00
Andrew Bauer 48a73f7e78 change cache engine from File -> Apc 2017-04-14 14:31:42 -05:00
Andrew Bauer 3cbd32cd41 move cake log to zoneminder log folder 2017-04-14 14:24:29 -05:00
Matthew Noorenberghe ea558c79a0 Fix check that API user is enabled 2017-03-20 17:16:24 -07:00
Matthew Noorenberghe df4739826b Reduce the default API debug level 2017-02-18 23:06:53 -08:00
Andy Bauer 2dda2d9e1e remove unneeded, empty files 2016-12-26 09:49:14 -06:00
Pliable Pixels 192d0dbb45 added TimeZone get API 2016-10-18 14:07:31 -04:00
Pliable Pixels 92d7cad5f1 enabled utf8 2016-09-21 11:53:34 -04:00
Pliable Pixels 1440dd9265 retab 2016-09-03 15:02:32 -04:00
Pliable Pixels 7bf0b3c423 readded forMonitor - removed by mistake 2016-09-03 14:51:24 -04:00
Pliable Pixels 9a4330eb59 #1537 Zones Controller not returning all zones 2016-09-03 14:46:47 -04:00
Isaac Connor 55f5db55dd implement suggested code to stop the monitor when Function is set to None 2016-09-01 11:43:20 -04:00
Isaac Connor b4aec41d3d fix warnings and move User import up higher to where it needs to be 2016-06-21 09:09:58 -04:00
Isaac Connor dbdd1ae51e remove debug logging 2016-06-07 16:26:58 -04:00
Isaac Connor f26c9168c4 if user=&pass= are in request, use them for auth 2016-06-07 16:25:35 -04:00
Isaac Connor 6cb163c37f Merge branch 'master' into api_auth 2016-06-07 16:23:50 -04:00
Andrew Bauer ceaacf91bf Merge pull request #1470 from connortechnology/api_improvements
Api improvements
2016-05-25 12:45:03 -05:00
arjunrc 4018cab743 don't pass partial data to daemoncontrol 2016-05-19 14:53:16 -04:00
arjunrc b513bcef82 icon's gonna kill me 2016-05-10 20:09:41 -04:00
arjunrc af3cae578e fixed verbose handling bug for status command on zmu 2016-05-10 20:07:28 -04:00
arjunrc 8d5f2a8e5d added iconnor's change back 2016-05-10 19:17:09 -04:00
arjunrc df830a5190 resolved merge conflicts 2016-05-10 19:15:00 -04:00
arjunrc 2888142e68 added status command to retrieve alarmed status of monitor in addition to on/of 2016-05-10 16:55:43 -04:00
Steve Gilvarry b03d2660cb Merge pull request #1455 from ZoneMinder/api_servers
rough in Server object support
2016-05-10 08:00:58 +10:00
Joshua Ruehlig e12160456b Support user defined MySQL Port/Socket in API 2016-05-09 00:24:08 -07:00
Isaac Connor 966a9dcd8d Merge pull request #1467 from ZoneMinder/api_fixes
Don't pass request data as a monitor array to daemonControl
2016-05-07 18:25:35 -04:00
Isaac Connor e35b0a1eb2 Merge pull request #1469 from pliablepixels/1468-api-consoleEvents-alarmedFrames
added alarmed frames filter
2016-05-07 17:06:37 -04:00
arjunrc be329e1e0d switched to named param format, more flexible, in line with other APIs 2016-05-07 16:28:25 -04:00
arjunrc 8347b69b09 added alarmed frames filter 2016-05-07 14:26:09 -04:00
Isaac Connor 6d991a1c6c Merge pull request #1466 from pliablepixels/1465-api-alarm-on-off
added alarm enable/disable
2016-05-07 11:26:49 -04:00
arjunrc 6f9cc0f19f to be safe, lets add system edit permissions, so rogue users can't turn alarms OFF 2016-05-07 11:01:03 -04:00
Isaac Connor 15977f1a3c Don't pass request data as a monitor array to daemonControl 2016-05-07 10:56:38 -04:00
arjunrc 0280ae4dd5 added alarm enable/disable 2016-05-07 10:37:42 -04:00
Isaac Connor 01aa2c9319 change permissions to stream permissions for view 2016-05-02 19:48:24 -04:00
Isaac Connor 75f9fde920 rough in Server object support 2016-05-02 10:41:25 -04:00
Isaac Connor ce69f24bdd use zm.conf values for database connection 2016-04-30 08:11:39 -04:00
Isaac Connor 532fb77ecb As well as writing zm.conf contents into the Configure object, define them, like we do in the regular UI. Also remove unneeded quotes 2016-04-30 08:09:56 -04:00
arjunrc 8a47241e18 address issue #1335 2016-03-12 08:07:25 -05:00
arjunrc 6e606aa74b removed issue # 2015-12-19 19:04:27 -05:00
arjunrc 38b4785557 PP - Gone,flitted away, Taken the starts from the night and sun, From the day! Gone, and a cloud in my heart. - Tennyson 2015-12-19 18:36:38 -05:00
arjunrc c4461c328e initial user role support 2015-12-19 17:45:03 -05:00