Commit Graph

1770 Commits

Author SHA1 Message Date
Chocobozzz eb08047657
Use async/await in controllers 2017-10-26 09:11:38 +02:00
Chocobozzz 5f04dd2f74
Add video channel tests 2017-10-26 09:11:38 +02:00
Chocobozzz 72c7248b6f
Add video channels 2017-10-26 09:11:38 +02:00
Chocobozzz 6a84aafd23
Take in account transcoding for video quota 2017-10-19 17:35:41 +02:00
Chocobozzz a96aed1518
Add ability to download a video from direct link or torrent file 2017-10-19 14:58:28 +02:00
Chocobozzz bda65bdc9f
Fix pod removal when it is down 2017-10-19 10:43:54 +02:00
Chocobozzz 10db166bbe
Upgrade client dependencies and fix error logs 2017-10-19 10:22:07 +02:00
Chocobozzz 8a02bd0433
Add pod list endpoint with pagination, sort... 2017-10-19 09:43:01 +02:00
Chocobozzz 9fd540562c
Fix video removing when it is corrupted 2017-10-19 09:28:35 +02:00
Chocobozzz 49347a0a8b
Escape opengraph/oembed tags 2017-10-17 16:53:10 +02:00
Chocobozzz 031094f799
More robust transcoding jobs 2017-10-17 15:37:40 +02:00
Chocobozzz a6218a0b8f
Improve transcoding quality
I'm an idiot
2017-10-17 14:46:09 +02:00
Chocobozzz 4937996095
Don't cache torrent files 2017-10-17 14:21:18 +02:00
Chocobozzz af9b792268
Try to fix travis tests 2017-10-17 12:47:21 +02:00
Chocobozzz 164174a6ab
Use preview instead of thumbnail for oembed 2017-10-17 10:35:27 +02:00
Ronan 8376734ee3 Handle express-validator error on the client side and fix #96 (#98)
* Handle express-validator error on the client side

* More meaningfull error for not supported format
2017-10-16 11:43:40 +02:00
Chocobozzz d8755eed1e
Add oembed endpoint 2017-10-16 10:07:26 +02:00
Chocobozzz 35bf0c83c8
Video blacklist refractoring 2017-10-10 10:18:16 +02:00
Chocobozzz 769d332177
Fix database benchmark in prod mode 2017-10-10 09:00:50 +02:00
Chocobozzz bcd1c9e194
Server: upgrade packages 2017-10-09 15:18:41 +02:00
Chocobozzz 14d3270f36
Change how we handle resolution
It was an enum before, now we just use video height
2017-10-09 11:17:36 +02:00
Chocobozzz aa8b6df4a5
Client: handle multiple file resolutions 2017-10-06 11:03:09 +02:00
Chocobozzz ecb455b6c4 Add migration script 2017-10-03 17:16:47 +02:00
Chocobozzz 40298b0254 Implement video transcoding on server side 2017-10-03 15:31:26 +02:00
Chocobozzz f0adb2701c Modify video file size to bigint 2017-09-22 17:02:31 +02:00
Green-Star 792dbaf07f Handle blacklist (#84)
* Client: Add list blacklist feature

* Server: Add list blacklist feature

* Client: Add videoId column

* Server: Add some video infos in the REST api

* Client: Add video information in the blacklist list

* Fix sortable columns :)

* Client: Add removeFromBlacklist feature

* Server: Add removeFromBlacklist feature

* Move to TypeScript

* Move to TypeScript and Promises

* Server: Fix blacklist list sort

* Server: Fetch videos informations

* Use common shared interface for client and server

* Add check-params remove blacklisted video tests

* Add check-params list blacklisted videos tests

* Add list blacklist tests

* Add remove from blacklist tests

* Add video blacklist management tests

* Fix rebase onto develop issues

* Server: Add sort on blacklist id column

* Server: Add blacklists library

* Add blacklist id sort test

* Add check-params tests for blacklist list pagination, count and sort

* Fix coding style

* Increase Remote API tests timeout

* Increase Request scheduler API tests timeout

* Fix typo

* Increase video transcoding API tests timeout

* Move tests to Typescript

* Use lodash orderBy method

* Fix typos

* Client: Remove optional tests in blacklist model attributes

* Move blacklist routes from 'blacklists' to 'blacklist'

* CLient: Remove blacklist-list.component.scss

* Rename 'blacklists' files to 'blacklist'

* Use only BlacklistedVideo interface

* Server: Use getFormattedObjects method in listBlacklist method

* Client: Use new coding style

* Server: Use new sort validator methods

* Server: Use new checkParams methods

* Client: Fix sortable columns
2017-09-22 09:13:43 +02:00
Chocobozzz b60e5f38da Upgrade express validator to v4 2017-09-15 12:17:08 +02:00
Chocobozzz 315cc0cc18 Add info when server is processing a video at upload 2017-09-14 23:03:43 +02:00
Chocobozzz bfb3a98fac Remove ng2 file upload module
Unmaintained and we don't need it anymore with httpclient
2017-09-14 17:25:36 +02:00
Chocobozzz d592e0a9b2 Move to HttpClient and PrimeNG data table 2017-09-14 11:57:49 +02:00
Chocobozzz 91f6f169b1 Fix concurrency error when deleting a video 2017-09-12 14:17:46 +02:00
Chocobozzz 6d33593a08 Improve real world script 2017-09-12 13:12:35 +02:00
Chocobozzz 0cb11df7f5 Fix request schedulers test 2017-09-08 19:15:36 +02:00
Chocobozzz 096641566f Convert real world script to typescript 2017-09-08 17:11:32 +02:00
Chocobozzz e95561cdf1 Upload a video to /videos/upload
This is an action, not a REST endpoint
2017-09-07 21:46:44 +02:00
Chocobozzz 0cee28c1b2 Don't display password in logs 2017-09-07 21:26:33 +02:00
Chocobozzz aa2e7f1501 urls: makefriends/quitfriends -> make-friends/quit-friends 2017-09-07 21:22:17 +02:00
Chocobozzz 337c258e77 Fix lint 2017-09-07 20:44:30 +02:00
Chocobozzz 8df87ce792 Convert real world tools to typescript 2017-09-07 17:58:09 +02:00
Chocobozzz fdbda9e3d6 Add tests for npm run scripts 2017-09-07 15:54:34 +02:00
Chocobozzz 77a5501f64 Fix tests and user quota 2017-09-06 17:28:20 +02:00
Chocobozzz 5c98d3bf07 Begin tests for user quota 2017-09-05 22:09:16 +02:00
Chocobozzz 8094a89802 Add user update for admins 2017-09-05 21:29:39 +02:00
Chocobozzz 980246ea8f Make tslint happy 2017-09-04 21:45:05 +02:00
Chocobozzz 0e1dc3e7c6 Convert tests to typescript 2017-09-04 21:30:18 +02:00
Chocobozzz b0f9f39ed7 Begin user quota 2017-09-04 20:07:54 +02:00
Chocobozzz 3482688cce Fix config checker 2017-08-26 09:17:20 +02:00
Chocobozzz 556ddc3192 Upgrade common server dependencies 2017-08-25 18:36:49 +02:00
Chocobozzz 0aef76c479 Formated -> Formatted 2017-08-25 11:45:31 +02:00
Chocobozzz 93e1258c7c Move video file metadata in their own table
Will be used for user video quotas and multiple video resolutions
2017-08-25 11:36:23 +02:00
Chocobozzz 69f224587e Fix tests 2017-08-02 21:51:40 +02:00
Green-Star d5f5a670fc Remove one pod (#76)
* Client: Fix typo

* Client: Add removeFriend feature

* Server: Add removeFriend feature

* Server: Update method name

* Fix rebase onto develop issues

* Server: Fix error message

* Server: Remove useless methods in removeFriend method

* Server: Finish remove on pod feature after rebase

* Server: Type pod parameter

* Fix Travis build

* Add friend-basic test for the remove one pod feature

* Add check-params tests for the remove one pod feature

* Fix typos

* Add friend-advanced test for the remove one pod feature

* Client: Trailing new line

* Move to promises

* Add undefined id test

* Use find method instead of a for loop to find the friend to remove

* Remove setTimeout method

* Server: Remove requestScheduler operations

* Server: Fix logging messages

* Server: Remove sign request parameter
2017-08-02 21:50:42 +02:00
Chocobozzz 291e8d3eed Add ability to limit user registrations 2017-07-25 20:17:28 +02:00
Chocobozzz 0b7db72af3 Fix lint 2017-07-12 14:58:34 +02:00
Chocobozzz d38309c345 Set correctly preview image for open graph 2017-07-12 12:19:39 +02:00
Chocobozzz f981dae861 Add previews cache system between pods 2017-07-12 11:56:02 +02:00
Chocobozzz 075f16caac Remove "function" in favor of () => {} 2017-07-11 17:05:55 +02:00
Chocobozzz 4e979c3e1b Add tests for open graph tags 2017-07-11 16:16:51 +02:00
Chocobozzz 0a6658fdcb Use global uuid instead of remoteId for videos 2017-07-11 16:01:56 +02:00
Chocobozzz e6d4b0ff24 Remove any typing from server 2017-07-11 10:59:13 +02:00
Chocobozzz 4771e0008d Better typescript typing for a better world 2017-07-10 19:43:21 +02:00
Chocobozzz ad0997adfb Fix error logging 2017-07-07 18:26:12 +02:00
Chocobozzz 709756b8e1 Async signature and various fixes 2017-07-07 18:23:18 +02:00
Chocobozzz 18c8e94508 Video search -> case insensitive 2017-07-06 18:01:02 +02:00
Chocobozzz 6fcd19ba73 Move to promises
Closes https://github.com/Chocobozzz/PeerTube/issues/74
2017-07-05 14:14:16 +02:00
Green-Star 5fe7e89831 Fix test (#71)
* Fix timeouting tests

* Increase timeout to be sure requests will be propagated

* Add timeout to be sure video views will be updated

* Use standard style

* Fix PR comments.
2017-07-02 20:48:31 +02:00
Chocobozzz ba44fa1953 Move ensureRegistrationEnabled to middlewares 2017-06-25 17:48:51 +02:00
Chocobozzz 0a381679e0 ClientLocal -> OAuthClientLocal 2017-06-25 17:44:19 +02:00
Chocobozzz e636eb8810 Requests -> RequestSchedulers 2017-06-25 17:19:46 +02:00
Chocobozzz 945075ad45 Oup's, forgot to increate timeout test 2017-06-25 15:15:03 +02:00
Chocobozzz 12028e7a17 Fix travis tests 2017-06-25 15:02:08 +02:00
Chocobozzz 0c2388548a Excluse .js.map when scanning models/ directory 2017-06-24 10:30:23 +02:00
Chocobozzz 9e58005439 Update systemd service template 2017-06-20 20:34:41 +02:00
Chocobozzz 154898b0b7 Share models between server and client 2017-06-17 11:28:11 +02:00
Chocobozzz df98563e21 Use typescript standard and lint all files 2017-06-16 14:32:15 +02:00
Chocobozzz ee9e7b61f5 Create types for model enums 2017-06-16 10:36:18 +02:00
Chocobozzz 70c065d64c Add this context to instance model functions 2017-06-16 09:54:59 +02:00
Chocobozzz 74889a71fe Reorganize model files 2017-06-16 09:45:46 +02:00
Chocobozzz 15a302943d BaseRequestScheduler -> AbstractRequestScheduler 2017-06-16 09:14:41 +02:00
Chocobozzz c3d19a4907 Fix video update test 2017-06-12 21:37:56 +02:00
Chocobozzz 75d612ce3c Convert scripts to typescript 2017-06-12 21:06:32 +02:00
Chocobozzz 127944aacb Better models define typing 2017-06-11 17:35:32 +02:00
Chocobozzz 1840c2f7c9 Update webpack stack 2017-06-11 15:19:43 +02:00
Chocobozzz 8635a2c70c Update client modules 2017-06-11 12:28:22 +02:00
Chocobozzz 69f616ab3a Use shared models 2017-06-11 11:02:35 +02:00
Chocobozzz 69818c9394 Type functions 2017-06-10 22:15:25 +02:00
Chocobozzz 4d4e5cd4dc require -> import 2017-06-05 21:53:49 +02:00
Chocobozzz e02643f32e Type models 2017-05-25 17:32:16 +02:00
Chocobozzz 65fcc3119c First typescript iteration 2017-05-20 09:57:40 +02:00
Chocobozzz 5a976a8c35 Server: move requests lib in their own directory 2017-05-05 17:35:58 +02:00
Chocobozzz 4e284e97b9 Server: finish old jobs at startup 2017-05-05 17:24:16 +02:00
Chocobozzz e5b8853905 Server: check ffmpeg at startup 2017-05-05 17:15:21 +02:00
Chocobozzz d33242b047 Server: split videos controller 2017-05-05 16:53:35 +02:00
Chocobozzz c24ac1c18e Fix unset video language on video update 2017-05-05 14:29:58 +02:00
Chocobozzz 9eee32fc34 Client: fix update button displayed on non owned video 2017-05-05 14:11:01 +02:00
Chocobozzz b1ed221747 Fix tests 2017-05-05 13:42:52 +02:00
Chocobozzz 62326afb15 Server: Fix video propagation with transcoding enabled 2017-05-05 12:15:16 +02:00
Chocobozzz fce897f326 Server: add tests to video transcoder 2017-05-04 21:51:00 +02:00
Chocobozzz 227d02fead Server: add job scheduler to transcode video files 2017-05-04 21:12:32 +02:00
Chocobozzz 15d4ee04a9 Server: little refractoring when listing videos 2017-05-01 19:24:37 +02:00
Chocobozzz 843aa7ba03 Server: add tests for video blacklists 2017-05-01 19:04:29 +02:00
Chocobozzz ab683a8e0d Format video blacklist 2017-04-26 21:42:36 +02:00
Green-Star 198b205c10 Add ability for an administrator to remove any video (#61)
* Add ability for an admin to remove every video on the pod.

* Server: add BlacklistedVideos relation.

* Server: Insert in BlacklistedVideos relation upon deletion of a video.

* Server: Modify BlacklistedVideos schema to add Pod id information.

* Server: Moving insertion of a blacklisted video from the `afterDestroy` hook into the process of deletion of a video.

To avoid inserting a video when it is removed on its origin pod.
When a video is removed on its origin pod, the `afterDestroy` hook is fire, but no request is made on the delete('/:videoId') interface.
Hence, we insert into `BlacklistedVideos` only on request on delete('/:videoId') (if requirements for insertion are met).

* Server: Add removeVideoFromBlacklist hook on deletion of a video.

We are going to proceed in another way :).
We will add a new route : /:videoId/blacklist to blacklist a video.
We do not blacklist a video upon its deletion now (to distinguish a video blacklist from a regular video delete)
When we blacklist a video, the video remains in the DB, so we don't have any concern about its update. It just doesn't appear in the video list.
When we remove a video, we then have to remove it from the blacklist too.
We could also remove a video from the blacklist to 'unremove' it and make it appear again in the video list (will be another feature).

* Server: Add handler for new route post(/:videoId/blacklist)

* Client: Add isBlacklistable method

* Client: Update isRemovableBy method.

* Client: Move 'Delete video' feature from the video-list to the video-watch module.

* Server: Exclude blacklisted videos from the video list

* Server: Use findAll() in BlacklistedVideos.list() method

* Server: Fix addVideoToBlacklist function.

* Client: Add blacklist feature.

* Server: Use JavaScript Standard Style.

* Server: In checkUserCanDeleteVideo, move the callback call inside the db callback function

* Server: Modify BlacklistVideo relation

* Server: Modifiy Videos methods.

* Server: Add checkVideoIsBlacklistable method

* Server: Rewrite addVideoToBlacklist method

* Server: Fix checkVideoIsBlacklistable method

* Server: Add return to addVideoToBlacklist method
2017-04-26 21:22:10 +02:00
Chocobozzz 0dd079da27 Update standard -> 10 2017-04-16 14:25:37 +02:00
Chocobozzz c36b4ff77e Server: fix tests 2017-04-09 12:31:04 +02:00
Chocobozzz 2c2e909216 Server: add ability to register new user 2017-04-09 12:08:36 +02:00
Chocobozzz 3092476e64 Server: add video language attribute 2017-04-07 12:13:37 +02:00
Chocobozzz 1d49e1e27d Server: Add NSFW in user profile 2017-04-03 21:24:36 +02:00
Chocobozzz 31b59b4774 Server: add nsfw attribute 2017-03-28 21:19:46 +02:00
Chocobozzz 6f0c39e2de Server: add licence video attribute 2017-03-27 20:53:11 +02:00
Chocobozzz b4c5ac97ff Server: refractoring upload/update video test utils 2017-03-26 18:39:01 +02:00
Chocobozzz f6e692f5ee Fix tag tests 2017-03-22 22:13:11 +01:00
Chocobozzz e54163c2d5 Relax on tags (accept any characters and not required anymore) 2017-03-22 21:56:02 +01:00
Chocobozzz 6e07c3de88 Add video category support 2017-03-22 21:25:24 +01:00
Chocobozzz 34831b4843 Server: move pod remove to remote path 2017-03-19 18:56:10 +01:00
Chocobozzz f148e5edb6 Better real world test 2017-03-19 09:16:33 +01:00
Chocobozzz e22528aca6 Server: add config endpoint 2017-03-10 11:32:39 +01:00
Chocobozzz 86e8393986 Allow to sort by likes 2017-03-08 21:52:25 +01:00
Chocobozzz d38b828106 Add like/dislike system for videos 2017-03-08 21:35:43 +01:00
Chocobozzz e3d156b341 Server: add views attribute when sending videos to friends 2017-03-04 11:00:59 +01:00
Chocobozzz 1f5bf9ef70 Server: typo 2017-03-04 10:41:42 +01:00
Chocobozzz ed708d62a6 Server: fix migrations with an empty Applications table 2017-03-04 10:40:09 +01:00
Chocobozzz 4b4660582b Server: fix requests endpoints 2017-03-04 09:48:35 +01:00
Chocobozzz 72329aaa28 Update bittorrent-tracker and standard to v9 2017-03-03 18:45:40 +01:00
Chocobozzz 99fdec4648 Fix request schedulers stats 2017-02-27 21:56:55 +01:00
Chocobozzz f282639b07 Server: request scheduler refractoring 2017-02-26 20:01:26 +01:00
Chocobozzz 9c2c18f3ab Server: little sort refractoring 2017-02-26 20:01:26 +01:00
Chocobozzz e4c87ec269 Server: implement video views 2017-02-26 20:01:26 +01:00
Chocobozzz 9e167724f7 Server: make a basic "quick and dirty update" for videos
This system will be useful to to update some int video attributes
(likes, dislikes, views...)

The classic system is not used because we need some optimization for
scaling
2017-02-26 20:01:26 +01:00
Chocobozzz fe783f6b0d This is not a prototype anymore, but a real project! 2017-02-26 20:01:26 +01:00
Chocobozzz 5804c0db33 Server: fix migration scripts 2017-02-18 12:13:33 +01:00
Chocobozzz c1a7ab7f04 Server: use a request scheduler object instance for friends
communication
2017-02-18 10:29:36 +01:00
Chocobozzz ad4a8a1cca Add email to users 2017-02-18 09:29:59 +01:00
Chocobozzz 5d67f289df Server: add unique to unique indexes 2017-02-16 19:24:34 +01:00
Chocobozzz 4793c343fd Add email to pods 2017-02-16 19:19:56 +01:00
Chocobozzz f6f7dfee01 Server: update express-validator 2017-02-10 11:27:14 +01:00
Chocobozzz 9cc99d7b56 Fix update host script 2017-02-08 20:34:01 +01:00
Chocobozzz 28798b5d94 Client: replace simple tables by ng2 smart table component 2017-01-30 22:41:14 +01:00
Chocobozzz cddadde81f Server: assert remoteId and host pair is unique 2017-01-27 12:14:53 +01:00
Chocobozzz b09ce6455f Server: error if we add a pod that already exists 2017-01-27 11:55:31 +01:00
Chocobozzz 84c07f8ac1 Fix tests 2017-01-23 23:00:27 +01:00
Chocobozzz 11ac88de40 Client: add basic support to report video abuses 2017-01-23 22:18:53 +01:00
Chocobozzz 4f8c0eb0e9 Client: add ability to report a video 2017-01-20 19:22:15 +01:00
Chocobozzz 872a4c7cea Adapt requests controller/front to new informations 2017-01-19 22:38:34 +01:00
Chocobozzz 15103f11ec Server: paths refractoring 2017-01-17 21:42:47 +01:00
Chocobozzz 1e4b0080ff Server: requests refractoring 2017-01-17 21:17:07 +01:00
Chocobozzz da691c46df Server: remote video validators refractoring 2017-01-17 20:59:16 +01:00
Chocobozzz 62f4ef413c Server: remote request process refractoring 2017-01-17 20:50:45 +01:00
Chocobozzz 4145c1c689 Server: transaction refractoring 2017-01-17 20:50:45 +01:00
Chocobozzz fbc22d7936 Server: fix update remote video 2017-01-15 22:22:41 +01:00
Chocobozzz 4df023f2d4 Server: create transaction refractoring 2017-01-15 19:53:11 +01:00
Chocobozzz d6a5b018b8 Server: retryer transaction wrapper refractoring 2017-01-15 19:13:16 +01:00
Chocobozzz 91cc839af8 Server: fix single pod tests 2017-01-12 13:08:47 +01:00
Chocobozzz 790e65fcf7 Try to fix travis build 2017-01-12 10:06:03 +01:00
Chocobozzz 7f4e7c3637 Server: fix update remote video infohash 2017-01-12 09:47:21 +01:00
Chocobozzz 63d00f5ded Server: fix update right checks 2017-01-11 19:15:23 +01:00
Chocobozzz edc5e86006 Server: transaction serializable for videos 2017-01-11 18:41:40 +01:00
Chocobozzz f2cdb86675 Server: add update case to real world script 2017-01-11 18:41:28 +01:00
Chocobozzz 45abb8b97b Server: rights check for update a video 2017-01-11 18:41:09 +01:00
Chocobozzz d8cc063e97 Server: do not break remote videos processing on error 2017-01-11 18:06:51 +01:00
Chocobozzz dea32aacde Server: always check commit result 2017-01-11 16:22:50 +01:00
Chocobozzz bf4ff8fe0b Server: retry video abuse requests too 2017-01-10 22:33:00 +01:00
Chocobozzz bd14d16a29 Server: improve requests scheduler 2017-01-10 22:24:42 +01:00
Chocobozzz ed04d94f6d Server: try to have a better video integrity 2017-01-06 23:46:36 +01:00
Chocobozzz bb0b243c92 Server: improve real world script 2017-01-06 23:24:20 +01:00
Chocobozzz bdfbd4f162 Server: use crypto instead of ursa for pod signature 2017-01-04 22:23:07 +01:00
Chocobozzz b981a525c3 Server: we don't need the video name when removing a remote video 2017-01-04 21:15:57 +01:00
Chocobozzz 55fa55a9be Server: add video abuse support 2017-01-04 21:05:13 +01:00
Chocobozzz a6fd2b30bf Server: move remote routes in their own directory 2016-12-30 12:53:41 +01:00
Chocobozzz 8fd66b75bf Server: fix video remoe validation 2016-12-30 12:39:49 +01:00
Chocobozzz efe923bcda Server: split check params tests 2016-12-30 12:23:53 +01:00
Chocobozzz 818f7987eb Server: optimization for videoGet and videoRemove 2016-12-30 11:51:08 +01:00
Chocobozzz 79066fdf33 Server: add updatedAt attribute to videos 2016-12-30 11:45:00 +01:00
Chocobozzz 3d118fb501 Server: propagate video update to other pods 2016-12-30 11:27:42 +01:00
Chocobozzz 7b1f49de22 Server: add ability to update a video 2016-12-29 19:07:05 +01:00
Chocobozzz 4ff0d86208 Server: little refractoring 2016-12-29 18:02:03 +01:00
Chocobozzz 4d32448895 Server: use binary data instead of base64 to send thumbnails 2016-12-29 12:13:19 +01:00
Chocobozzz 98ac898a03 Server: use video hook to send information to other pods when a video is
deleted
2016-12-29 11:17:11 +01:00
Chocobozzz 4712081f2a Server: add association between author and user 2016-12-29 10:56:07 +01:00
Chocobozzz 319d072e8e Server: Add postgresql indexes 2016-12-29 10:04:39 +01:00
Chocobozzz 67bf9b96bb Server: add database field validations 2016-12-28 15:49:23 +01:00
Chocobozzz 00d6a41e46 Add script to migrate from mongodb to postgresql
Usage: NODE_ENV=production ./scripts/mongo-to-postgre.js --mongo-database peertube-prod
2016-12-27 18:34:47 +01:00
Chocobozzz 178edb2025 Server: correctly sort tags by name asc 2016-12-26 17:44:25 +01:00
Chocobozzz 124648d7fc Server: add createdAt from remote video in database 2016-12-25 12:06:08 +01:00
Chocobozzz 56ac84d0a3 Fix real world script 2016-12-25 12:05:47 +01:00
Chocobozzz f83e279581 Fix standard lint 2016-12-25 09:47:49 +01:00
Chocobozzz b769007f73 Update migrations code 2016-12-25 09:44:57 +01:00
Chocobozzz 7920c273a2 Move tags in another table 2016-12-24 16:59:17 +01:00
Chocobozzz 3897209f46 Server: rename Pods -> Pod 2016-12-19 21:50:20 +01:00
Chocobozzz feb4bdfd9b First version with PostgreSQL 2016-12-19 21:22:28 +01:00
Chocobozzz 38d78e5b82 Server: remove encryption when seending requests to other pods
We don't need it anymore since HTTPS is mandatory now
2016-11-27 18:25:35 +01:00
Chocobozzz 437cf8b531 Server: set manually the post host of a remote video throught the
signature
2016-11-27 11:09:05 +01:00
Chocobozzz 79530164b6 Server: move static/client routes in controllers/ 2016-11-25 14:21:41 +01:00
Bigard Florian 8e124f999b Server: fix magnet tracker websocket url for remote videos 2016-11-23 13:34:07 +01:00
Chocobozzz a078c1556f Server: fix logs when adding a remote video 2016-11-22 22:41:50 +01:00
Chocobozzz 8f21730250 Server: add extname video information to remote pods 2016-11-22 22:34:59 +01:00
Chocobozzz 04968ab477 Fix migration script 2016-11-21 22:09:45 +01:00
Chocobozzz fab69ab8aa Server: fix refreshing token 2016-11-21 22:09:45 +01:00
Chocobozzz 40e3f5e1c5 Fix opengraph url tag 2016-11-18 18:55:34 +01:00
Chocobozzz c77fa067a1 Server: fix thumbnail in remote videos 2016-11-16 21:16:41 +01:00
Chocobozzz 441b66f809 Server: forbid to make friends with a non https server 2016-11-16 20:29:26 +01:00
Chocobozzz 73ce7f9676 Server: don't be rude when serving unknown video in watch html file 2016-11-16 20:29:26 +01:00
Chocobozzz 2550fab35e Server: add migration scripts to the new mongo schemes 2016-11-16 20:29:26 +01:00
Chocobozzz 8eb7d0fa09 Server: Remove unused console log 2016-11-16 20:29:26 +01:00
Chocobozzz a4254ea173 Server: adapt tests to host 2016-11-16 20:29:26 +01:00
Chocobozzz 49abbbbedc Pod URL -> pod host. HTTPS is required to make friends.
Reason: in a network with mix http/https pods, https pods won't be able
to play videos from http pod (insecure requests).
2016-11-16 20:29:26 +01:00
Chocobozzz 41b5da1d8c Server: use preview image for opengraph 2016-11-16 20:29:26 +01:00
Chocobozzz 55723d16fd Server: adapt magnet uri search 2016-11-16 20:29:26 +01:00
Chocobozzz f285faa04e Server: generate magnet uri on the fly 2016-11-16 20:29:26 +01:00
Chocobozzz 558d7c2385 Server: use _id for image and video files. Add remoteId field 2016-11-16 20:29:26 +01:00
Chocobozzz 6a94a109b4 Server: add video preview 2016-11-16 20:29:26 +01:00
Chocobozzz 830bcd0f82 Prerender opengraph tags in the server 2016-11-16 20:29:26 +01:00
Chocobozzz 371fa0933a Server: fix refreshing token 2016-11-04 11:34:23 +01:00
Chocobozzz b65c27aaf7 Server: check the host key is not present in configurations
The parameter was renamed to hostname
2016-11-01 19:46:07 +01:00
Chocobozzz d16b5172ae Server: use constants to get port configuration 2016-11-01 19:17:25 +01:00
Chocobozzz b1233aa856 Server: add log messages if the server refuses to serve local clients tokens 2016-11-01 19:14:33 +01:00
Chocobozzz 4b08096b2c Server: add endpoint in requests 2016-11-01 18:47:57 +01:00
Chocobozzz bf2fc85c83 Server: fix refreshing token that fails 2016-11-01 18:16:47 +01:00
Chocobozzz cf6412e85d Server: videos search case insensitive 2016-10-26 20:37:27 +02:00
Chocobozzz 3737bbafb1 Server: host -> hostname (host = hostname + port) 2016-10-26 20:28:34 +02:00
Chocobozzz 2c49ca42d1 Server: do not make friends with myself 2016-10-26 20:28:34 +02:00
Chocobozzz 43666d616d Server: randomize the requests list
We don't want to stuck with the same failing requests
2016-10-26 20:28:34 +02:00
Chocobozzz dc00913261 Client: avoid "quit friends" to appear during the pending request 2016-10-21 13:13:49 +02:00
Chocobozzz f253b1c1f1 Server: remove v1 directory, we don't really need it 2016-10-21 12:16:28 +02:00
Chocobozzz b3d9251015 Server: Uploads -> Videos 2016-10-21 11:33:31 +02:00
Chocobozzz 80a6c9e76f Server: pod removing refractoring 2016-10-21 11:20:45 +02:00
Chocobozzz 792b893ed4 Server: add npm run check to check CORS, bittorrent tracker... 2016-10-21 11:20:14 +02:00
Chocobozzz c2ee5ce83a Server: wait pod removal when finishing a request 2016-10-17 21:38:14 +02:00
Chocobozzz 25cad91992 Server: handle tls websockets 2016-10-17 21:10:29 +02:00
Chocobozzz 7a2c9a8e55 Try to fix travis 2016-10-14 18:59:01 +02:00
Chocobozzz 5683534893 Remove references to Electron 2016-10-13 21:48:55 +02:00
Chocobozzz 82221ac920 Update clean script 2016-10-13 21:45:23 +02:00
Chocobozzz 3fad43acfb Server: fix real world tools 2016-10-10 21:33:40 +02:00
Chocobozzz af1068ce1d Server: forbid to remove the root user 2016-10-07 15:32:09 +02:00
Chocobozzz bf94b6f0a1 Server: update to webseed implementation (tests, lint...) 2016-10-07 13:59:06 +02:00
Chocobozzz a6375e6966 Merge branch 'master' into webseed-merged 2016-10-02 15:39:09 +02:00
Chocobozzz c4403b29ad Server: remove useless hash affectations 2016-10-02 12:19:02 +02:00
Chocobozzz 9f6bae3a9d Server: reorganize constant file 2016-10-02 11:14:08 +02:00
Chocobozzz d6cf31b7e0 Server: add informations when removing requests of unexisting pod 2016-10-01 16:10:18 +02:00
Chocobozzz 32e574750a Add "max requests number" information for requests iterations 2016-10-01 15:45:15 +02:00
Chocobozzz 5abeec313f Server: fix remaining milli seconds before the next requests feature 2016-10-01 15:33:27 +02:00
Chocobozzz 1ab844d859 Server: add port when making friends if it is not specified 2016-10-01 14:23:50 +02:00
Chocobozzz 35165e1669 Electron-prebuilt -> electron 2016-10-01 11:49:32 +02:00
Chocobozzz 7c34bc6491 Server: fix error log when a friend request fails 2016-10-01 10:10:49 +02:00
Chocobozzz b91359055f Server: add information why a friend request failed (status code) 2016-10-01 09:48:49 +02:00
Chocobozzz b81929a014 Server: when we remove a user, remove the oauthtokens too 2016-10-01 09:12:02 +02:00
Chocobozzz 0eb78d5303 Server: do not forget to check the signature when another pod wants to
quit us
2016-10-01 09:09:07 +02:00
Chocobozzz c60f2212fd Server: migration script that add admin role to root user 2016-09-27 22:41:38 +02:00
Chocobozzz f6a0754fda Server: fix migration at installation 2016-09-26 23:10:32 +02:00
Chocobozzz 00d6b0dda4 Add migration (for db, folders...) mechanism 2016-09-26 22:39:58 +02:00
Chocobozzz d74a0680f7 Server: show user created date for the api 2016-09-23 17:19:57 +02:00
Chocobozzz eb4f957eca Client: add requests stats page 2016-09-23 17:09:38 +02:00
Chocobozzz ccc64aa679 Server: fix unit tests again 2016-09-21 23:05:31 +02:00
Chocobozzz 0fb99fb4fd Server: fix tests 2016-09-21 22:52:25 +02:00
Chocobozzz f9b2d2cedd Fix client peer dependencies 2016-09-20 22:45:14 +02:00
Chocobozzz d3cd34be2f Server: add requests stats endpoint 2016-09-19 21:33:46 +02:00
Chocobozzz 535724234a Server: add pod created date and score to the list controller 2016-08-26 18:55:10 +02:00
Chocobozzz 26d7d31ba3 Server: encrypt password in database 2016-08-25 17:57:37 +02:00
Chocobozzz 327680c984 Server: fix check user params tests 2016-08-23 17:58:05 +02:00
Chocobozzz bf68dd752d Client: fix error display for component 2016-08-23 17:42:56 +02:00
Chocobozzz 9ab1071c8d Do not wait the make friends process ends to send a response to the
request
2016-08-23 14:48:59 +02:00
Chocobozzz 39f87cb216 Server: catch JSON.parse exceptions 2016-08-23 14:37:36 +02:00
Chocobozzz d57d6f2605 Server: fix makefriends validation and tests 2016-08-21 10:41:04 +02:00
Chocobozzz 6c1a098b41 Server: fix remote videos requests validator 2016-08-21 09:54:46 +02:00
Chocobozzz 4613274479 Server: fix real world simulation script 2016-08-20 17:19:27 +02:00
Chocobozzz 1e2564d392 Server: make friends urls come from the request instead of the
configuration file
2016-08-20 17:11:38 +02:00
Chocobozzz e861452fb2 Server: put config in constants 2016-08-19 21:34:51 +02:00
Chocobozzz 5c39adb731 Server: add user list sort/pagination 2016-08-16 22:31:45 +02:00
Chocobozzz 089ff2f204 Server: optimize function to see if there are users or not 2016-08-16 21:51:35 +02:00
Chocobozzz 0ff21c1c08 Server: video.list -> video.listForApi (with pagination, sort...) 2016-08-16 21:51:04 +02:00
Chocobozzz 28f7d2020f Server: test filenames with hyphens 2016-08-15 18:44:30 +02:00
Chocobozzz ede4db9e5e Server: fix travis tests 2016-08-14 16:50:22 +02:00
Chocobozzz 68a3b9f2aa Server: delete user with the id and not the username 2016-08-09 21:44:45 +02:00
Chocobozzz 25ed57f3db Server: create requests utils module 2016-08-07 22:18:14 +02:00
Chocobozzz 8d30905858 Server: split tests utils in multiple files 2016-08-07 22:09:59 +02:00
Chocobozzz 58b2ba55a9 Server: do not allow a user to remove a video of another user 2016-08-05 21:41:28 +02:00
Chocobozzz f3391f9237 Server: fix tests 2016-08-05 19:18:11 +02:00
Chocobozzz 10431358b2 Server: fix status code when updating/removing a user 2016-08-05 18:08:55 +02:00
Chocobozzz 99a64bfed2 Server: allow user to get its informations (/users/me) 2016-08-05 17:19:08 +02:00
Chocobozzz 6606150c49 Server: move clients in its own file 2016-08-05 16:09:39 +02:00
Chocobozzz 9bd2662976 Implement user API (create, update, remove, list) 2016-08-04 22:33:38 +02:00
Chocobozzz e4c556196d Server: reorganize express validators 2016-07-31 20:58:43 +02:00
Chocobozzz 052937db8a First draft using only webseed for server 2016-07-27 21:21:57 +02:00
Chocobozzz 32bb415602 Server: Use ES6 promise for mongoose/node-oatuh2-server 2016-07-27 21:16:19 +02:00
Chocobozzz 419633ce9d Server: throttle "seedAll" when starting the server 2016-07-21 17:15:29 +02:00
Chocobozzz 677618d4a6 Server: Add some cli tools to make it easy to upload a lot of videos 2016-07-20 19:16:00 +02:00
Chocobozzz 2bd3f17127 Server: do not enable images tests by default because it needs a special
ffmpeg version
2016-07-20 17:55:26 +02:00
Chocobozzz 2f372a8654 Server: implement refresh token 2016-07-20 16:23:58 +02:00
Chocobozzz f9f5478ca0 Server: Don't make the host url check for client credentials if this is a test instance 2016-07-19 16:44:15 +02:00
Chocobozzz 1a42c9e2c0 Server: udpate async to 2.0.0 2016-07-18 17:17:52 +02:00
Chocobozzz 5495c83a71 Server: fix ipc bug 2016-07-18 16:16:47 +02:00
Chocobozzz 022856f8a5 Fix tests
I should consider writing unit tests to test the tests
2016-07-07 20:36:46 +02:00
Chocobozzz 8f68c31a71 Server: add script that try to simulate a real world situation
Each pod randomly upload or remove a video and send the information to
its friend
2016-07-06 20:01:27 +02:00
Chocobozzz b359546358 Server: limit actions for each request between pods 2016-07-06 19:59:01 +02:00
Chocobozzz 4fea95df04 Server: fix videos pagination 2016-07-06 19:57:47 +02:00
Chocobozzz 6666aad459 Fix requests ordering between pods 2016-07-05 21:36:01 +02:00
Chocobozzz 5f698b82c7 Use dashes for filenames 2016-07-01 16:22:36 +02:00
Chocobozzz fc51fde048 reqValidators --> validators 2016-07-01 16:16:40 +02:00
Chocobozzz 69b0a27cbb OAuth/User models refractoring -> use mongoose api 2016-07-01 16:03:53 +02:00
Chocobozzz a3ee6fa22d Pod model refractoring -> use mongoose api 2016-06-30 22:39:08 +02:00
Chocobozzz d14b3e37a2 Do not generate a random password for test env 2016-06-30 21:58:48 +02:00
Chocobozzz 5189d08aac Video model: namePath -> filename 2016-06-28 20:19:41 +02:00
Chocobozzz 907e9510c2 Re enable the "seed all videos" function 2016-06-28 20:17:05 +02:00
Chocobozzz 00057e85a7 Request model refractoring -> use mongoose api 2016-06-28 20:10:32 +02:00
Chocobozzz aaf61f3810 Video model refractoring -> use mongoose api 2016-06-24 17:42:51 +02:00
Chocobozzz 528a9efa82 Try to make a better communication (between pods) module 2016-06-18 16:13:54 +02:00
Chocobozzz 3c8ee69f88 Remove useless use of async.each 2016-06-14 20:14:17 +02:00
Chocobozzz e822fdaeee Use ng2-file-upload instead of jquery and add tags support to the video
upload form
2016-06-07 22:34:02 +02:00
Chocobozzz 8c255eb53c Little refractoring of requests scheduler module 2016-06-06 15:28:33 +02:00
Chocobozzz 8d199cb823 Add tag search support to server 2016-06-06 14:54:52 +02:00
Chocobozzz be587647f9 Add tags support to server 2016-06-06 14:15:03 +02:00
Chocobozzz 8483b22164 Increase the interval for the friends requests 2016-06-05 12:43:15 +02:00
Chocobozzz 1cdb5c0f58 Handle error for the video upload 2016-06-04 20:37:38 +02:00
Chocobozzz 46246b5f19 Extends the search feature by customizing the search field (name,
podUrl...)
2016-05-22 09:15:00 +02:00
Chocobozzz 68ce3ae021 Add total results field and wrap videos in data field when listing
videos
2016-05-21 19:30:22 +02:00
Chocobozzz 501bc6c2b1 Thumbnail, author and duration support in client 2016-05-21 18:08:23 +02:00
Chocobozzz 9e379c835c Don't send the "http(s)" for the podUrl 2016-05-21 15:05:29 +02:00
Chocobozzz 6e56eb63ac Return with callback with an error 2016-05-19 20:28:17 +02:00
Chocobozzz 13c14a9028 Add radix to parseInt 2016-05-19 20:27:36 +02:00
Chocobozzz 1af470c709 Fix tests for according to the sort 2016-05-17 21:18:19 +02:00
Chocobozzz a877d5acc5 Add ability to sort videos list 2016-05-17 21:03:00 +02:00
Chocobozzz 479f229198 Add check for the thumbnail in base64 (requests inter pods) 2016-05-16 19:55:32 +02:00
Chocobozzz a996fc4abe Add check for the author username length 2016-05-16 19:51:07 +02:00
Chocobozzz 67100f1f97 Add a check for the duration of videos 2016-05-16 19:49:10 +02:00
Chocobozzz e856e334a1 Use async waterfall in request scheduler for better readability 2016-05-15 18:03:43 +02:00
Chocobozzz e7ea2817c0 Use async waterfall for better readability in friends lib 2016-05-15 10:42:17 +02:00
Chocobozzz cefc718dd6 Use async series in installer for better readability 2016-05-13 21:34:47 +02:00
Chocobozzz 1cad0f395f Use async waterfall in pods controller for better readability 2016-05-13 21:34:36 +02:00
Chocobozzz 807df9e668 Use async waterfall in videos controller for better readability 2016-05-13 21:14:14 +02:00
Chocobozzz 57a56079fe getVideoThumbnail -> createVideoThumbnail 2016-05-13 20:45:53 +02:00
Chocobozzz bb10240ee1 Add createdDate to videos 2016-05-13 20:42:11 +02:00
Chocobozzz 3fe81fa75e Move the count of results for the pagination in constants module 2016-05-13 20:10:02 +02:00
Chocobozzz fbf1134e3e Introduce paginations in videos listing 2016-05-13 18:10:46 +02:00
Chocobozzz bc59d9e056 Fix adding twice a torrent in webtorrent 2016-05-13 16:35:51 +02:00
Chocobozzz b3b9264742 Authenticate before make/quit friends (server + tests) 2016-05-13 16:31:14 +02:00
Chocobozzz 5dda52c924 Remove the cache middleware 2016-05-13 16:13:00 +02:00
Chocobozzz b6c6f935d4 Fix typos in server tests 2016-05-13 15:27:31 +02:00
Chocobozzz d6ea0175cb Fix friends making 2016-05-13 15:02:51 +02:00
Chocobozzz bc503c2a62 Update to standard 7. Goodbye snake_case, I used to love you 2016-05-13 14:23:11 +02:00
Chocobozzz 09bc69df7a Add debug electron setting 2016-05-13 14:23:11 +02:00
Chocobozzz 36d560246f thumbnail_path -> thumbnailPath 2016-05-10 22:24:04 +02:00
Chocobozzz 9e5f374090 Add tests for thumbnails 2016-05-10 21:56:16 +02:00
Chocobozzz cbe2f7c348 Refractoring and add thumbnails support (without tests) 2016-05-10 21:19:24 +02:00
Chocobozzz f1dae01868 Add label (host + port) to logger 2016-05-07 15:41:20 +02:00
Chocobozzz 0ae6a09d40 Move video duration logic in lib/ 2016-05-06 14:44:09 +02:00
Chocobozzz 3a8a8b5122 Video duration support (server) 2016-05-03 22:41:46 +02:00
Chocobozzz 6d8ada5f24 Better tests for a better world 2016-05-03 21:03:51 +02:00
Chocobozzz e3647ae226 Rename pool requests --> requests scheduler 2016-05-02 17:25:05 +02:00
Chocobozzz 320d627544 Ensure the log directory is created before instanciate the logger 2016-05-01 09:58:34 +02:00
Chocobozzz 9353449515 Use scripty instead of writing shell commands in package.json 2016-04-30 12:56:36 +02:00
Chocobozzz b0ec596c00 Don't forget to test the client stuffs 2016-04-27 22:17:55 +02:00
Chocobozzz 23a5a916db Make angular client load dynamically the generated client id/secret 2016-04-27 22:11:48 +02:00
Chocobozzz 35f1c54e32 Fix lodash map require 2016-04-26 21:56:46 +02:00
Chocobozzz bb1e6d0ce3 Generate passwords at initialization (client/admin passwords) 2016-04-19 22:29:36 +02:00
Chocobozzz e7ea0979f8 Use lodash v4 2016-04-19 22:06:46 +02:00
Chocobozzz 0c1cbbfe29 Add authentications for routes that need it and adapts the tests 2016-04-14 22:06:11 +02:00
Chocobozzz 37dc07b292 Create an "installer" module that create defaults clients/users... 2016-03-21 21:11:26 +01:00
Chocobozzz 9457bf8807 OAuth server: first draft 2016-03-21 11:56:33 +01:00
Chocobozzz 233d12d8b1 Fix exception log of the webtorrent process 2016-03-19 09:08:10 +01:00
Chocobozzz 8c9c1942f6 Change name of fields for add video api 2016-03-18 16:44:54 +01:00
Chocobozzz a4c1575197 Use map instead of pluck (lodash) 2016-03-18 16:34:50 +01:00
Chocobozzz 2df82d42cb Change api output for videos 2016-03-18 16:28:09 +01:00
Chocobozzz f0f5567b69 Use const/let now we use node 4.2 2016-03-16 22:29:27 +01:00
Chocobozzz 5101105ef9 Video lib/model/reqvalidator refractoring 2016-03-16 21:37:17 +01:00
Chocobozzz 2c4a0b5d90 Fix tests 2016-03-15 13:16:54 +01:00
Chocobozzz 98b01bac2c Angular 2 : draft 2 2016-03-14 22:16:43 +01:00
Chocobozzz dc8bc31be5 Angular application :first draft 2016-03-14 13:50:19 +01:00
Chocobozzz 3d446a26ad Fix tests 2016-03-07 18:53:03 +01:00
Chocobozzz 6f4e252246 Prepare Angular routes 2016-03-07 14:48:46 +01:00
Chocobozzz b9a3e09ad5 Prepare folders structure for angular app 2016-03-07 11:33:59 +01:00