Commit Graph

1341 Commits (f36da21e40104a50acb00132920b835240cebb38)

Author SHA1 Message Date
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
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 3d09cdbf90 Fix overflow on embed for firefox 2017-07-23 15:30:57 +02:00
Chocobozzz 202e722317 Process embed in webpack too 2017-07-23 15:10:57 +02:00
Chocobozzz 0c31c33dcb Better webtorrent error handling 2017-07-23 11:07:30 +02:00
Bigard Florian d063f8ca92 Fix preview location in embed 2017-07-19 14:24:40 +02:00
Bigard Florian 78d5b1893d Fix player on embed 2017-07-19 14:07:52 +02:00
Chocobozzz d38309c345 Set correctly preview image for open graph 2017-07-12 12:19:39 +02:00
Chocobozzz 43f61d2635 Add preview to embed 2017-07-12 12:16:13 +02:00
Chocobozzz 0a6658fdcb Use global uuid instead of remoteId for videos 2017-07-11 16:01:56 +02:00
Chocobozzz 33c4972d5b Type webtorrent 2017-07-11 10:09:18 +02:00
Chocobozzz 4771e0008d Better typescript typing for a better world 2017-07-10 19:43:21 +02:00
Chocobozzz 8b13c289f8 Fix page titles 2017-07-06 17:43:58 +02:00
Chocobozzz 4e1b09735d Clean up bottom video bar 2017-07-06 17:18:10 +02:00
Chocobozzz e14852b4bf Better skin for videojs 2017-07-06 16:50:02 +02:00
Chocobozzz 8062415498 Update videojs -> 6 2017-07-06 14:39:39 +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 42374cf5d4 Fix client admin 2017-06-25 11:35:09 +02:00
Chocobozzz b632e9049f Fix client compilation 2017-06-20 20:20:09 +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 46757b477c Fix client compilation 2017-06-16 11:01:45 +02:00
Chocobozzz 174d46578b Fix prod build 2017-06-11 17:49:13 +02:00
Chocobozzz 294f80f21e Bundle webtorrent with webpack. Closes https://github.com/Chocobozzz/PeerTube/issues/50 2017-06-11 15:58:27 +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 66dd264f7b Better build/dev scripts 2017-06-11 11:36:05 +02:00
Chocobozzz 69f616ab3a Use shared models 2017-06-11 11:02:35 +02:00
Chocobozzz 1f0215a908 Client: little refractoring 2017-05-05 16:08:43 +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 3eeeb87fe6 Client: try to be responsive 2017-05-01 18:16:50 +02:00
Chocobozzz 0d7d2ad9ff Client: minor css fixes 2017-04-29 18:34:10 +02:00
Chocobozzz 165c8d2558 Fix travis lint tests 2017-04-26 21:52:49 +02:00
Chocobozzz ab683a8e0d Format video blacklist 2017-04-26 21:42:36 +02:00
Chocobozzz 32502eda29 Client: fix bad rebase 2017-04-26 21:25:02 +02:00
Chocobozzz 6716739082 Client: add ability to hide left menu 2017-04-26 21:23:19 +02:00
Chocobozzz d1a00ddbe2 Client: add github and licence link in footer 2017-04-26 21:23:19 +02:00
Chocobozzz efbf0ed7f2 Client: adjust viewport height 2017-04-26 21:23:19 +02:00
Chocobozzz 8ce9e815c8 Client: display video tags 2017-04-26 21:23:19 +02:00
Chocobozzz b362290d40 Client: Use recharge typo for logo
http://www.dafont.com/recharge.font?text=PeerTube
2017-04-26 21:23:19 +02:00
Chocobozzz d7c152a491 Add credit 2017-04-26 21:23:19 +02:00
Chocobozzz 897ec54d76 Client: beautiful watch page 2017-04-26 21:23:19 +02:00
Chocobozzz ea9f487b40 Client: fixed header and menu 2017-04-26 21:23:19 +02:00
Chocobozzz 6562f1f727 Client: add titles to menu blocks 2017-04-26 21:23:19 +02:00
Chocobozzz 09223546a4 Client Better design for video watch 2017-04-26 21:23:19 +02:00
Chocobozzz 383bfc8356 Client: responsive design 2017-04-26 21:23:19 +02:00
Chocobozzz c689fcdca2 Client: use builtin email validator 2017-04-26 21:22:51 +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 3758da9489 Client: use ng2-tag-input for forms with video tags 2017-04-16 14:06:48 +02:00
Chocobozzz ad42bea3a5 Client: update to angular 4 2017-04-12 22:00:17 +02:00
Chocobozzz d8e689b864 Client: add basic support for updating a video 2017-04-10 21:16:36 +02:00
Chocobozzz a184c71b52 Client: support signup 2017-04-10 20:29:33 +02:00
Chocobozzz db216afd98 Client: support video language 2017-04-07 14:57:05 +02:00
Chocobozzz af5e743b01 Client: add ability for user to change nsfw settings 2017-04-06 21:21:03 +02:00
Chocobozzz 92fb909c9b Client: Handle NSFW video 2017-04-04 21:37:03 +02:00
Chocobozzz d07137b90b Client: add support for video licences 2017-03-27 21:11:37 +02: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 55b3394641 Client: fix routes title 2017-03-12 18:40:05 +01:00
Chocobozzz a2457e9de4 Client: fix prod compilation 2017-03-10 10:42:02 +01:00
Chocobozzz 758b996dc6 Client: switch to @nglibs/meta 2017-03-10 10:33:36 +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 e2a2d6c86c Client: check token valitidy at startup 2017-03-04 11:45:47 +01:00
Chocobozzz 99fdec4648 Fix request schedulers stats 2017-02-27 21:56:55 +01:00
Chocobozzz 05a9feaa48 Client: add views information and sort 2017-02-26 20:01:26 +01:00
Chocobozzz ad4a8a1cca Add email to users 2017-02-18 09:29:59 +01:00
Chocobozzz 4793c343fd Add email to pods 2017-02-16 19:19:56 +01:00
Chocobozzz 7af75da41b Client: fix lint 2017-02-10 11:52:45 +01:00
Chocobozzz a17bc2c34e Client: use tslib instead of ts-helpers 2017-02-10 10:28:11 +01:00
Chocobozzz 99b727ec9c Client: fix angular2-notifications dep... 2017-02-05 10:27:29 +01:00
Chocobozzz 28798b5d94 Client: replace simple tables by ng2 smart table component 2017-01-30 22:41:14 +01:00
Chocobozzz 13fc89f4a4 Client: notify client if there are webtorrent errors 2017-01-29 18:35:19 +01:00
Chocobozzz 5769e1db8d Client: better confirm box for a beautiful world 2017-01-27 16:59:56 +01:00
Chocobozzz 7ddd02c9b8 Client: better notifications for a beautiful world 2017-01-27 16:14:11 +01:00
Chocobozzz 0d4fb7e6d4 Client: fix video timeout 2017-01-27 11:30:36 +01:00
Chocobozzz b99290b1d5 Client: lazy load admin area 2017-01-23 22:32:43 +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 c625a9560b Client: fix client error handling 2017-01-19 22:26:39 +01:00
Chocobozzz cdcbc81077 Client: update ng2-meta 2017-01-13 14:31:33 +01:00
Chocobozzz c16ce1de8e Client: add basic aot support 2017-01-13 12:16:00 +01:00
Chocobozzz 55fa55a9be Server: add video abuse support 2017-01-04 21:05:13 +01:00
Chocobozzz d396a937b6 Client: upgrade angular dep' 2016-12-29 17:34:29 +01:00
Chocobozzz feb4bdfd9b First version with PostgreSQL 2016-12-19 21:22:28 +01:00
Chocobozzz da19d94b63 Client: redirect /videos/:id to /videos/watch/:id 2016-11-29 21:57:19 +01:00
Chocobozzz ea070c93cc Client: fix PeerTube link in embed videos 2016-11-29 21:55:03 +01:00
Chocobozzz 50b0c262fd Client: move menu component in core module 2016-11-29 21:41:11 +01:00
Chocobozzz f81bb2853c Client: Get videos -> See videos 2016-11-29 21:30:27 +01:00
Chocobozzz bf57d5eebf Client: try to improve ux for the upload form 2016-11-27 18:10:26 +01:00
Chocobozzz 447fde2774 Client: improve host regex 2016-11-27 17:45:00 +01:00
Chocobozzz a86444089e Client: fix https warning in make friends 2016-11-21 22:09:45 +01:00
Chocobozzz 4dc5477227 Client: move vendor imports into the vendor file 2016-11-21 22:09:45 +01:00
Chocobozzz 693b1aba46 Client: split in angular modules 2016-11-21 22:09:45 +01:00
Chocobozzz 2c8d4697db Client: add warning if the user want to embed a video of a non https website 2016-11-21 22:09:45 +01:00
Chocobozzz cf02fbfb17 Client: move video watch modals in their own component 2016-11-21 22:09:45 +01:00
Chocobozzz 8735451aff Client: add message if the admin wants to make friends without https 2016-11-16 20:29:26 +01:00
Chocobozzz 9c89a45cb2 Client: add video not found message if the video... is not found 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 830bcd0f82 Prerender opengraph tags in the server 2016-11-16 20:29:26 +01:00
Chocobozzz ad4013d5c3 Client: add button control in embed videojs to go to the watch page 2016-11-16 20:29:26 +01:00
Chocobozzz 4fab6acb45 Client: don't use thumbnail in embed video for now 2016-11-08 21:19:57 +01:00
Chocobozzz 067e3f84ce Client: remove videojs on destroy 2016-11-08 21:17:17 +01:00
Chocobozzz 99cc4f4948 Client: add share button 2016-11-08 21:11:57 +01:00
Chocobozzz e31f6ad637 Client: use videojs as player 2016-11-08 20:49:43 +01:00
Chocobozzz 3bb2c7f99d Prepare embed page 2016-11-07 22:35:37 +01:00
Chocobozzz 3ec343a41d Client: add opengraph tags 2016-11-04 17:37:44 +01:00
Chocobozzz b58c69a1ed Client: add titles to all pages 2016-11-04 17:25:26 +01:00
Chocobozzz 3154f38219 Client: allow to copy magnet uri 2016-11-04 16:23:18 +01:00
Chocobozzz d1992b93f0 Client: add more informations to watch video view 2016-11-04 16:04:50 +01:00
Chocobozzz 4d19d2f10b Update to webpack beta 25 2016-11-04 12:50:01 +01:00
Chocobozzz c0a89c46ef Client: fix handle refresh token 2016-11-04 11:54:36 +01:00
Chocobozzz dc00913261 Client: avoid "quit friends" to appear during the pending request 2016-10-21 13:13:49 +02:00
Chocobozzz 4648530318 Client: fix form upload validation on key enter 2016-10-17 21:14:13 +02:00
Chocobozzz 2ac6c52560 Client: fix search dropdown 2016-10-13 21:59:19 +02:00
Chocobozzz 1a00504203 Client: fix progress bar and tags validation issues 2016-10-07 14:52:18 +02:00
Chocobozzz a6375e6966 Merge branch 'master' into webseed-merged 2016-10-02 15:39:09 +02:00
Chocobozzz 32e574750a Add "max requests number" information for requests iterations 2016-10-01 15:45:15 +02:00
Chocobozzz d86099204c Client: add some explanations if we cannot retrieve client oauth
credentials
2016-10-01 12:19:48 +02:00
Chocobozzz 14ad0c276b Client: handle the case when the refreshing token step fails 2016-10-01 09:20:42 +02:00
Chocobozzz da4971c11f Client: fix error alert 2016-09-26 22:54:34 +02:00
Chocobozzz 44c5275e1b Client: fix compilation about the user created date 2016-09-23 17:34:18 +02:00
Chocobozzz c53d2a4e5e Client: Update ng2-file-upload to the module part 2016-09-23 17:31:41 +02:00
Chocobozzz bed3143eb9 Client: move some methods in the requestStats model 2016-09-23 17:25:09 +02:00
Chocobozzz b539c9b34c Client: display created user date 2016-09-23 17:20:15 +02:00
Chocobozzz ec1b7d9738 Client: created date in a better format 2016-09-23 17:15:03 +02:00
Chocobozzz eb4f957eca Client: add requests stats page 2016-09-23 17:09:38 +02:00
Chocobozzz ec8d8440a8 Client: use templateUrl/styleUrls instead of require 2016-09-19 22:49:31 +02:00
Chocobozzz 23bcf66685 Client: little app module cleanup 2016-09-09 22:23:41 +02:00
Chocobozzz 4b2f33f3c6 Client: reactive forms 2016-09-09 22:16:51 +02:00
Chocobozzz ab32b0fc80 Dirty update to Angular RC6 2016-09-06 22:40:57 +02:00
Chocobozzz 2149630437 Client: ID column smaller 2016-08-26 19:02:43 +02:00
Chocobozzz 8889736127 Client: add ID, score and created date to the friends list 2016-08-26 18:59:17 +02:00
Chocobozzz f84a89f0e7 Client: fix friend add input control when removing an input 2016-08-23 18:09:21 +02:00
Chocobozzz 93c462b771 Client: refresh friends list after quitting them 2016-08-23 17:47:58 +02:00
Chocobozzz bf68dd752d Client: fix error display for component 2016-08-23 17:42:56 +02:00
Chocobozzz de59c48f5f Client: centralize http res extraction in a service 2016-08-23 16:54:21 +02:00
Chocobozzz 9e8aa10d94 Client: change url validation for friend add 2016-08-23 15:49:16 +02:00
Chocobozzz b5d6b94c1e Client: make friends url button (+/-) -> same width 2016-08-23 15:28:03 +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 6be622478a Client: display make/quit friends according to the situation 2016-08-23 14:43:20 +02:00
Chocobozzz 0f6da32b14 Client: update to new form api 2016-08-23 14:37:49 +02:00
Chocobozzz 5267260022 Client: fix malformed div 2016-08-23 11:45:28 +02:00
Chocobozzz 96b0c2bf70 Client: remove makeFriend from friend-list (in friend-add now) 2016-08-21 11:36:43 +02:00
Chocobozzz beacf6993c Client: simplify simple menu/admin menu displaying logic 2016-08-21 11:27:24 +02:00
Chocobozzz 9aa46b0c7b Client: navigate to /videos/list when do search on another page 2016-08-21 11:21:45 +02:00
Chocobozzz e105c19c8e Client: support the new make friends method 2016-08-21 10:41:21 +02:00
Chocobozzz 7eef95353f Client: reset pagination when we search something 2016-08-15 19:05:52 +02:00
Chocobozzz dfe3ec6bf6 Client: add users list/friends list titles 2016-08-12 18:24:24 +02:00
Chocobozzz e2f555cab7 Client: add friends page 2016-08-12 18:22:58 +02:00
Chocobozzz c323efb9cd Update webtorrent -> 0.96 2016-08-12 17:35:10 +02:00
Chocobozzz 602eb142be Client: make an admin menu and a classic menu component 2016-08-12 16:53:32 +02:00
Chocobozzz 7da18e4420 Client: add user management 2016-08-09 21:45:21 +02:00
Chocobozzz 66af9ee16d Client: Redirect user to home page after logout 2016-08-05 18:05:27 +02:00
Chocobozzz 629d8d6f70 Client: implement password change 2016-08-05 18:04:08 +02:00
Chocobozzz 6606150c49 Server: move clients in its own file 2016-08-05 16:09:39 +02:00
Chocobozzz e62f6ef741 Client: fix login state when logout 2016-07-27 21:38:09 +02:00
Chocobozzz 71d3476b82 Client: clear timeout error timer for video watch 2016-07-27 21:21:57 +02:00
Chocobozzz 724fed2931 Client: fix login state when logout 2016-07-27 21:16:19 +02:00
Chocobozzz 11975ce845 Client: increase min height for videos list 2016-07-22 11:43:09 +02:00
Chocobozzz 798442f665 Client: click on PeerTube title routes to videos list 2016-07-21 17:10:08 +02:00
Chocobozzz 1e128cdbb9 Client: video name in the link title for videos list template 2016-07-21 15:47:25 +02:00
Chocobozzz 0f3a78e7ea Client: Auth services cleanup 2016-07-20 16:40:28 +02:00
Chocobozzz bd5c83a8cb Client: Add authHttp service that authentificates the http request and
optionally refresh the access token if needed
2016-07-20 16:25:06 +02:00
Chocobozzz a64668c024 Client: try to make it work with Android Firefox 2016-07-19 16:45:07 +02:00
Chocobozzz bddab65ae5 Client: save page params as well 2016-07-18 15:39:10 +02:00
Chocobozzz 0629423ce3 Client: Update to Angular RC4 2016-07-18 14:26:56 +02:00
Chocobozzz efb9afc3e8 Client: fix pagination component 2016-07-06 19:56:23 +02:00
Chocobozzz 528a9efa82 Try to make a better communication (between pods) module 2016-06-18 16:13:54 +02:00
Chocobozzz 70af9a0d4f Fix router on / 2016-06-10 22:08:39 +02:00
Chocobozzz 641f98b2ee Don't make a search when the field is changed and the value is empty 2016-06-10 18:18:29 +02:00
Chocobozzz c6de16eb1d Fix redirection after the upload of a video 2016-06-10 18:14:01 +02:00
Chocobozzz 00a446454d Add tags support to the video list 2016-06-10 17:46:29 +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 3ad109e449 Add an alert if the video load seems to be too long 2016-06-05 12:20:53 +02:00
Chocobozzz 5555f886c0 Do not import whole rxjs 2016-06-05 09:34:41 +02:00
Chocobozzz e56b20f587 Add loader indication when loading videos list 2016-06-05 08:48:44 +02:00
Chocobozzz 1cdb5c0f58 Handle error for the video upload 2016-06-04 20:37:38 +02:00
Chocobozzz fe3b20cdaf Fix favicon 2016-06-04 19:39:33 +02:00
Chocobozzz 443ecefe67 Reload videos after removing one to avoid issues with paging etc 2016-06-04 19:02:32 +02:00
Chocobozzz 7914607ecd Apply a fade instead of a loader when loading videos 2016-06-04 18:53:11 +02:00
Chocobozzz 192ea60b82 Improve the login form 2016-06-04 13:31:23 +02:00
Chocobozzz 7f82b8ae37 Use webtorrent as external dependency instead of building it with
webpack
2016-06-04 13:08:38 +02:00
Chocobozzz af14488f61 Fix styling when clicking on a thumbnail video 2016-06-04 11:29:27 +02:00
Chocobozzz c21f59d334 Add webtorrent and jquery to webpack 2016-06-04 10:05:17 +02:00
Chocobozzz b20b5fed40 Add production webpack, big thanks to @AngularClass 2016-06-03 22:47:55 +02:00
Chocobozzz 4a6995be18 First draft to use webpack instead of systemjs 2016-06-03 22:08:03 +02:00