Commit Graph

79 Commits

Author SHA1 Message Date
f3dd0aea7e Consistent error rejection & resolve around spawn calls. 2022-10-02 10:25:44 +02:00
7ca074e294 Use child_process spawn to call command and return data 2022-09-26 19:13:03 +02:00
0d5453d877 Python packages should be installed as modules, and not use source files 2022-09-26 00:46:52 +02:00
212a6864f1 Fix: Redis call chain (#147)
* Moved redis mock client to separate file

* To keep cache response & api response consistent, alter call chain

* Resolved linting issues
2022-09-25 13:39:48 +02:00
2b6ad301a8 Resolved exception where readWithoutUserData was not defined (#145) 2022-09-25 13:39:23 +02:00
6732ed988d Register plex instance with token parameter for authenticated calls to plex (#144) 2022-09-25 13:39:07 +02:00
696f9f989c Fix: Plex errors (#141)
* inPlex function returns promise for more consistent return types

* plexUserId should default to null on falsey
2022-08-25 17:28:29 +02:00
93d394c2fe Return parsed json from redis cache (#142) 2022-08-25 17:20:52 +02:00
13470d7372 Custom errors for view hsitory/tautulli exceptions (#140) 2022-08-25 17:20:39 +02:00
7168950dfe Feat: es modules (#139)
* All file imports change from commonjs to es-module

* Improved plex error responses back from api

* Converted viewHistory to es module

* Es-module requires file extension, updated all imports

* Fix esmodule not having __dirname defined in scope

* Replace dynamic-require with fs readFileSync

* Short message service module function is exported as default

* Resolved lint issues & ignore import/extension rule until typescript

* All tests file imports changed from commonjs to es-module

* Import json fixtures with new helper
2022-08-25 17:19:23 +02:00
628ed52012 Fix: Tests lint and src folder (#138)
* Automaticly fixable eslint issues, mostly 3 -> 2 space indentation

* fix: updated plex_userid to camelcase

* Linted and some consistency refactor on middleware

* eslint uses ecmaversion 2020 & allow empty catch rule

* Started linting source files

* Fixed eslint errors & improved a lot of error handling

* Set 2 eslint rules as warning temporarly

* Updated all import statements to be relative

* Updated mocha & nyc, resolved all lint issues in tests/

* Updated mocha & nyc. Removed production config. Updated gitignore

* Updated test commands to omit system tests, no exit code

* Updated test configuration w/ missing keys

* Chai modules defined in package.json & resolved linting errors

* Dockerfile copies development.example -> production.json. Simplified commands

* All api calls from tests use same chaiHttp implementation

Removes a list of fetch alternatives after being replaced by chaiHttp:
 - request
 - request-promise
 - supertest
 - supertest-as-promised

* Tests should use redis (mock) cache, not tmdb sqlite cache

* Disabled test asADeveloperIWantTheServerToStart

* Re-enable tests/system

* Use chaiHttp in asAUserIWantToRequestAMovie.

* Fixed redis expire & mock implmentation

* Replaced all fetch alternatives from source code and package.json

* Pass error from tmdb api back to client as errorMessage

* Updated authentication middleware to handle checks consitenctly

* Prevent assert error when checking request status, returns success 200

* Resolved merge conflicts

* Only build and publish docker container when branch master
2022-08-20 17:41:46 +02:00
1815a429b0 Fix: Linter warnings (#137)
* Automaticly fixable eslint issues, mostly 3 -> 2 space indentation

* fix: updated plex_userid to camelcase

* Linted and some consistency refactor on middleware

* eslint uses ecmaversion 2020 & allow empty catch rule

* Started linting source files

* Fixed eslint errors & improved a lot of error handling

* Set 2 eslint rules as warning temporarly
2022-08-20 17:21:25 +02:00
a4b2e8f51c Instead of having a list of emojis, generate from code point 2022-08-19 10:08:34 +02:00
56262a45c8 Moved contents of seasoned_api up to root folder 2022-08-19 01:03:27 +02:00
47aa638fd8 Moved eveything related to the api to a seperate folder seasoned_api. 2017-08-06 16:45:02 +02:00
bc4eff795e Added quotes to poster url 2017-08-06 09:19:39 +02:00
fbf49e4cd9 Updated to use sqlite3 instead of sqlite in api 2017-07-29 13:21:25 +02:00
6b5a2341bf Class file that creates and returns objects for the mail sender in a single place. 2017-07-16 13:47:49 +02:00
30d26d82c3 Added nodemailer to send email of the requested movie 2017-07-16 13:47:06 +02:00
e77a05db07 Merge pull request #14 from KevinMidboe/client_feature
Client feature
2017-07-16 11:19:15 +02:00
c45df8a131 Added controller for calling POST request function for media items. 2017-07-16 11:08:14 +02:00
91606fc9b8 Removed unused import 2017-07-16 11:05:30 +02:00
3047dce147 Opened the POST endpoint for requesting a movie in the server 2017-07-16 11:04:56 +02:00
Kevin Midbøe
2c97803d82 Added a sendRequest function for handliing the post of a movie request 2017-07-16 11:03:30 +02:00
b2848e6a7e Merge pull request #13 from KevinMidboe/api
Verify that respond has content, if so send the content back. If no c…
2017-07-01 08:47:19 +02:00
1663f5931d Verify that respond has content, if so send the content back. If no content was found, send 404 status and error message 2017-07-01 08:46:37 +02:00
5b8394c5a0 Merge pull request #12 from KevinMidboe/api
If search request returns empty array from tmdb, then send a 404 repo…
2017-07-01 08:37:53 +02:00
ba3a1fa028 If search request returns empty array from tmdb, then send a 404 reponse with error message back to client. 2017-07-01 08:37:29 +02:00
3bb43f08f2 Controller for handling submits of item requests. 2017-06-04 00:13:35 +02:00
703e3d3785 Added a api endpoint for submitting a movie request. 2017-06-04 00:13:02 +02:00
6496988e51 Changed variable names to better reflect their purpose 2017-06-04 00:12:38 +02:00
069d984c39 Added for handling input of movie request, but still need to work on the way the python script is run. 2017-06-04 00:10:35 +02:00
907bc73a7f Added overview (description) from tmdb movie to movieObject. 2017-06-03 13:07:49 +02:00
d05aa13c39 Changes to more strict origin policy. 2017-06-03 11:17:09 +02:00
9d11798133 Removed test logging functions 2017-06-02 12:14:19 +02:00
76b8c46197 Test if bitrate exists 2017-06-02 08:49:20 +02:00
5ab71d9ed8 Added morgan for logging purposes 2017-06-02 08:49:00 +02:00
c8090dfb96 Added option for filtering in verified and page number when searching through all stray episodes. 2017-05-15 12:30:18 +02:00
a5f8a2adce Linting, added newline at eos 2017-05-14 08:19:24 +02:00
c4a1fb5c78 In readall, the verified status is also sent. 2017-05-13 13:21:17 +02:00
9f67354bd4 Controllers for routing tmdb requests to correct functions is tmdbRepo and returns approp status messgaes on errors 2017-05-10 20:19:37 -06:00
9424de9037 Classes for holding info from different parts of a plex stream 2017-05-10 20:18:38 -06:00
dfb8c40a29 Routes request to correct function in plexRepo and if error, returns correct error. 2017-05-10 20:16:35 -06:00
a5ecaff00e Routes request to correct function in plexRepo and if error, returns correct error. 2017-05-10 20:16:05 -06:00
98d30257f0 Routes plex webhook to handler. 2017-05-10 20:14:55 -06:00
4bdffad9fb Similar to tmdb and plex search and lookup. This uses both at same time to check if a searched tmdb item is in plex and adds matchedInPlex tag to the item. 2017-05-10 20:13:45 -06:00
8d16a4952f Just console logs the request from plex webhook. This was created just to test webhooks for plex and will later handle input 2017-05-10 20:00:51 -06:00
3a83b98df0 Function that converts json object about stream from plex format to wanted custom format. 2017-05-10 19:59:25 -06:00
baa8515bd4 Creates a stream object that converts the plex now_playing json format to contain only the wanted information about the palyer, user, transcode, and whats playing 2017-05-10 19:57:49 -06:00
5464837682 Removed unused import 2017-05-10 19:46:59 -06:00