Commit Graph

270 Commits

Author SHA1 Message Date
Chocobozzz d3ea897591
Begin unit tests 2017-12-22 12:12:33 +01:00
Chocobozzz bf1f650817
Add comments controller 2017-12-22 11:29:12 +01:00
Chocobozzz 6d85247028
Create comment on replied mastodon statutes 2017-12-22 09:14:50 +01:00
Chocobozzz 225a89c2af
Sanitize url to not end with implicit ports 2017-12-21 09:56:59 +01:00
Chocobozzz ce33ee01cd
Use RsaSignature2017 2017-12-19 10:53:16 +01:00
Chocobozzz a7d647c440
Add dirty migration :/ 2017-12-19 10:53:16 +01:00
Chocobozzz 50d6de9c28
Begin moving video channel to actor 2017-12-19 10:53:16 +01:00
Chocobozzz fadf619ad6
Save 2017-12-19 10:51:09 +01:00
Andréas Livet 7efe153b0b Enh #106 : Add an autoPlayVideo user attribute (#159)
Warning : I was not able to run the tests on my machine. It uses a different approach to handle databse connexion and didn't find where to configure it...

- create a migration file to add a boolean column in user table
- add autoPlayVideo attribute everywhere it is needed (both on client and server side)
- add tests
- add a way to configure this attribute in account-settings
- use the attribute in video-watch component to actually autoplay or not the video
2017-12-19 10:45:49 +01:00
Chocobozzz 3fd3ab2d34
Move models to typescript-sequelize 2017-12-13 16:50:33 +01:00
Chocobozzz f595d39477
Finish admin design 2017-12-08 17:31:21 +01:00
Chocobozzz e11f68a356
Optimise transaction for video upload 2017-12-08 10:08:36 +01:00
Chocobozzz cadb46d832
Design second video upload step 2017-12-08 09:57:29 +01:00
Chocobozzz f3aaa9a95c
Fix client search 2017-12-05 18:25:29 +01:00
Chocobozzz 25ed141c7c
Put activity pub sends inside transactions 2017-11-30 11:31:15 +01:00
Chocobozzz 5cd8054542
Add ability to list jobs 2017-11-30 10:55:06 +01:00
Chocobozzz 1f3e9feca2
Better view counter 2017-11-30 09:21:11 +01:00
Chocobozzz 86d13ec2aa
Users list only available when use is authenticated
And has a special right
2017-11-29 13:18:05 +01:00
Chocobozzz a2431b7dcb
Refractor validators 2017-11-27 19:43:01 +01:00
Chocobozzz 0032ebe94a
Federate likes/dislikes 2017-11-27 19:40:53 +01:00
Chocobozzz 40ff57078e
Federate video views 2017-11-27 19:40:53 +01:00
Chocobozzz c46edbc2f6
Fetch outbox to grab old activities tests 2017-11-27 19:40:53 +01:00
Chocobozzz c986175d68
Fetch outbox to grab old activities 2017-11-27 19:40:53 +01:00
Chocobozzz 0f91ae62df
Add follow tests 2017-11-27 19:40:52 +01:00
Chocobozzz 892211e849
Move activitypub functions from helpers/ to lib/ 2017-11-27 19:40:52 +01:00
Chocobozzz 5414139835
Refractor activity pub lib/helpers 2017-11-27 19:40:52 +01:00
Chocobozzz 572f8d3dba
Fix public video we set to public or unlisted 2017-11-27 19:40:52 +01:00
Chocobozzz 9a27cdc27c
Optimize signature verification 2017-11-27 19:40:52 +01:00
Chocobozzz 47e0652b4a
Optimize account creation 2017-11-27 19:40:52 +01:00
Chocobozzz 4610bc5b12
ApplicationFollow -> SeverFollow 2017-11-27 19:40:52 +01:00
Chocobozzz 21e0727a84
Federate video abuses 2017-11-27 19:40:52 +01:00
Chocobozzz 20494f1221
Server shares user videos 2017-11-27 19:40:52 +01:00
Chocobozzz efc32059d9
Send server announce when users upload a video 2017-11-27 19:40:52 +01:00
Chocobozzz 8e10cf1a5a
Fix video upload and videos list 2017-11-27 19:40:52 +01:00
Chocobozzz 8e13fa7d09
Add video abuse to activity pub 2017-11-27 19:40:52 +01:00
Chocobozzz 6086242524
Rename Pod -> Server 2017-11-27 19:40:51 +01:00
Chocobozzz 51548b3181
Add follow tabs
Following
Follow
Followers
2017-11-27 19:40:51 +01:00
Chocobozzz 350e31d6b6
Follow works 2017-11-27 19:40:51 +01:00
Chocobozzz 8e69648749
Add MANAGE_PEERTUBE_FOLLOW right 2017-11-27 19:40:51 +01:00
Chocobozzz ce548a10db
Send follow/accept 2017-11-27 19:40:51 +01:00
Chocobozzz 7a7724e66e
Handle follow/accept 2017-11-27 19:40:51 +01:00
Chocobozzz 571389d43b
Make it compile at least 2017-11-27 19:40:51 +01:00
Chocobozzz 38fa206583
Remove references to author 2017-11-27 19:40:51 +01:00
Chocobozzz 0d0e8dd090
Continue activitypub 2017-11-27 19:40:51 +01:00
Chocobozzz e4f97babf7
Begin activitypub 2017-11-27 19:40:51 +01:00
Chocobozzz 53abc4c272
Upgrade server packages 2017-10-31 16:31:24 +01:00
Chocobozzz 11474c3cd9
Add tests and fix bugs for video privacy 2017-10-31 15:32:10 +01:00
Chocobozzz fd45e8f43c
Add video privacy setting 2017-10-31 11:53:13 +01:00
Chocobozzz 9567011bf0
Add lazy description on server 2017-10-30 10:16:27 +01:00
Chocobozzz 954605a804
Support roles with rights and add moderator role 2017-10-27 16:55:03 +02:00
Chocobozzz a041b17147
Reset video fields when remote update fails 2017-10-26 11:26:35 +02:00
Chocobozzz faab3a8453
Add migration script for channels 2017-10-26 09:11:38 +02:00
Chocobozzz d412e80e5f
Fix lint 2017-10-26 09:11:38 +02:00
Chocobozzz eb08047657
Use async/await in controllers 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 bda65bdc9f
Fix pod removal when it is down 2017-10-19 10:43:54 +02:00
Chocobozzz 8a02bd0433
Add pod list endpoint with pagination, sort... 2017-10-19 09:43:01 +02:00
Chocobozzz 35bf0c83c8
Video blacklist refractoring 2017-10-10 10:18:16 +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 40298b0254 Implement video transcoding on server side 2017-10-03 15:31:26 +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 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 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 aa2e7f1501 urls: makefriends/quitfriends -> make-friends/quit-friends 2017-09-07 21:22:17 +02:00
Chocobozzz 77a5501f64 Fix tests and user quota 2017-09-06 17:28:20 +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 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
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 075f16caac Remove "function" in favor of () => {} 2017-07-11 17:05:55 +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 6fcd19ba73 Move to promises
Closes https://github.com/Chocobozzz/PeerTube/issues/74
2017-07-05 14:14:16 +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 154898b0b7 Share models between server and client 2017-06-17 11:28:11 +02:00
Chocobozzz ee9e7b61f5 Create types for model enums 2017-06-16 10:36:18 +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 1840c2f7c9 Update webpack stack 2017-06-11 15:19:43 +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 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 62326afb15 Server: Fix video propagation with transcoding enabled 2017-05-05 12:15:16 +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