Commit Graph

386 Commits

Author SHA1 Message Date
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
Ronan 334ddfa471 Fix some inconsistency in link (#97)
Some link could appear with double // in url.
e.g : "POST /api/v1/videos//upload HTTP/1.1"
2017-10-13 08:14:40 +02:00
Chocobozzz f47bf2e142
Client: check user is logged in for some pages 2017-10-10 10:24:02 +02:00
Chocobozzz 35bf0c83c8
Video blacklist refractoring 2017-10-10 10:18:16 +02:00
Chocobozzz 974f7c68f5
Client: Fix blacklist url in dev mode 2017-10-09 19:27:19 +02:00
Chocobozzz 4897fc4197
Fix lint 2017-10-09 19:21:59 +02:00
Chocobozzz db7af09bd8
Client: fix loading server configurations 2017-10-09 19:12:40 +02:00
Chocobozzz ec61fb7e2c
Upgrade client dependencies 2017-10-09 14:49:32 +02:00
Chocobozzz a685e25ca0
Try to optimize frontend 2017-10-09 14:28:44 +02:00
Chocobozzz 2ed6a0aedc
Fix exception when getting 404 in video watch 2017-10-09 11:25:41 +02:00
Chocobozzz aa8b6df4a5
Client: handle multiple file resolutions 2017-10-06 11:03:09 +02:00
Chocobozzz 127d96b969
Fix refresh token expired handling 2017-10-04 09:30:57 +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 c9d6d155c3 Fix login when there is an error 2017-09-15 12:26:02 +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 3523b64a03 Optimize imports 2017-09-14 22:16:39 +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 d5050d1e09 Fix lint 2017-09-14 12:09:06 +02:00
Chocobozzz 03b40f2487 err.text -> err 2017-09-14 11:58:25 +02:00
Chocobozzz d592e0a9b2 Move to HttpClient and PrimeNG data table 2017-09-14 11:57:49 +02:00
Chocobozzz 6d33593a08 Improve real world script 2017-09-12 13:12:35 +02:00
Chocobozzz 7ca86c864e Client: add guard to admin routes 2017-09-10 09:24:50 +02:00
Chocobozzz 6599f096d5 Fix bad translation in confirm dialog 2017-09-10 09:07:40 +02:00
Green-Star 5c7d587b19 Client: Fix Javascript OOM error during webpack compilation (#89) 2017-09-09 12:04:21 +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 aa2e7f1501 urls: makefriends/quitfriends -> make-friends/quit-friends 2017-09-07 21:22:17 +02:00
Chocobozzz 04de542abd Update webpack config 2017-09-06 21:48:15 +02:00
Chocobozzz a8b5de6c67 Add information at video upload if user video quota is reached 2017-09-06 17:45:38 +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 b0f9f39ed7 Begin user quota 2017-09-04 20:07:54 +02:00
Chocobozzz e7dbeae8d9 Fix client admin 2017-08-28 20:28:12 +02:00
Chocobozzz d15ab38a90 Update client dependencies 2017-08-25 12:11:42 +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
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 d58cdea854 Remove ng2-completer 2017-06-25 17:33:58 +02:00
Chocobozzz e636eb8810 Requests -> RequestSchedulers 2017-06-25 17:19:46 +02:00
Chocobozzz 3f1ac36c6a Fix issue with node-sass and yarn 2017-06-25 14:51:01 +02:00
Chocobozzz 42374cf5d4 Fix client admin 2017-06-25 11:35:09 +02:00
Chocobozzz f627b712c9 Fix client build
A node dep is in ES2015, but uglify is not compatible.

Temporary quick fix -> use babel on this module (awaiting an official
support of uglify and webpack for ES2015)
2017-06-25 11:33:16 +02:00
Chocobozzz 26b8286522 Update dependencies 2017-06-25 10:33:59 +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 85cd99dc84 Use yarn instead of npm install 2017-04-26 22:45:27 +02:00
Chocobozzz 165c8d2558 Fix travis lint tests 2017-04-26 21:52:49 +02:00
Chocobozzz d61e81538b Client: fix compilation 2017-04-26 21:48:54 +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 240c64c5f4 Client: avoid loading javascript ressource over the network 2017-04-26 21:22:51 +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 0dd079da27 Update standard -> 10 2017-04-16 14:25:37 +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