Commit Graph

330 Commits (5cf135001124cd19183336dbfcae1cd432217b00)

Author SHA1 Message Date
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 d48ff09d27
Use sequelize scopes 2017-12-14 10:07:57 +01:00
Chocobozzz 65b3ed25fc
Fix job model 2017-12-13 17:00:01 +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 8e7f08b5a5
Make some fields optional when uploading a video 2017-12-07 17:05:23 +01:00
Chocobozzz b1fa3eba70
Begin video watch design 2017-12-06 17:15:59 +01:00
Chocobozzz f3aaa9a95c
Fix client search 2017-12-05 18:25:29 +01:00
Chocobozzz be44767854
Fix lint 2017-12-04 11:17:08 +01:00
Chocobozzz 2295ce6c4e
Add account avatar 2017-12-04 10:34:40 +01:00
Chocobozzz 98ec8b8e73
Fix lint 2017-11-30 13:16:23 +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 165cdc75bf
Fix well known and json parser with mastodon 2017-11-29 11:34:44 +01:00
Chocobozzz c60774b05b
Remove max duration/filesize constraints 2017-11-28 14:51:00 +01:00
Chocobozzz a2431b7dcb
Refractor validators 2017-11-27 19:43:01 +01:00
Chocobozzz 4e50b6a1c9
Add shares forward and collection on videos/video channels 2017-11-27 19:40:53 +01:00
Chocobozzz 74bb2cb834
Add activitypub migration script 2017-11-27 19:40:53 +01:00
Chocobozzz df1966c9b4
Fix lint 2017-11-27 19:40:53 +01:00
Chocobozzz 63c93323ec
Correctly forward like/dislikes and undo 2017-11-27 19:40:53 +01:00
Chocobozzz d4f1e94c89
Misc cleanup 2017-11-27 19:40:53 +01:00
Chocobozzz 39445ead45
Cleanup models 2017-11-27 19:40:53 +01:00
Chocobozzz 16b9097594
Fetch video likes/dislikes too 2017-11-27 19:40:53 +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 e71bcc0f4b
Add outbox 2017-11-27 19:40:53 +01:00
Chocobozzz 7e9334c34d
Add ability to unfollow a server 2017-11-27 19:40:52 +01:00
Chocobozzz 5414139835
Refractor activity pub lib/helpers 2017-11-27 19:40:52 +01:00
Chocobozzz 79d5caf994
Fix lint 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 21e0727a84
Federate video abuses 2017-11-27 19:40:52 +01:00
Chocobozzz d7d5611c8a
Federate video update 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 d846501818
Handle announces in inbox 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 59c857da59
Fix error when creating a fresh database 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 e34c85e527
Fix issues on server start 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 59557c4663
Don't hash user password once again on update 2017-11-04 18:09:23 +01:00
Chocobozzz 53abc4c272
Upgrade server packages 2017-10-31 16:31:24 +01:00
Chocobozzz fd45e8f43c
Add video privacy setting 2017-10-31 11:53:13 +01:00
Chocobozzz 2de96f4d6b
Lazy description and previews to video form 2017-10-30 20:26:06 +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 c296250511
Remove sequelize deprecated operators 2017-10-26 16:59:02 +02:00
Chocobozzz 911238e343
Fix integrity issues with after destroy hook 2017-10-26 14:05:20 +02:00
Chocobozzz 6cd44728bb
Fix log in after destroy hook 2017-10-26 12:06:57 +02:00
Chocobozzz b869d19068
Fix join in video events 2017-10-26 11:42:36 +02:00
Chocobozzz a041b17147
Reset video fields when remote update fails 2017-10-26 11:26:35 +02:00
Chocobozzz d412e80e5f
Fix lint 2017-10-26 09:11:38 +02:00
Chocobozzz f5028693a8
Use async/await in lib and initializers 2017-10-26 09:11:38 +02:00
Chocobozzz 72c7248b6f
Add video channels 2017-10-26 09:11:38 +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 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 164174a6ab
Use preview instead of thumbnail for oembed 2017-10-17 10:35:27 +02:00
Chocobozzz d8755eed1e
Add oembed endpoint 2017-10-16 10:07:26 +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 91f6f169b1 Fix concurrency error when deleting a video 2017-09-12 14:17:46 +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 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
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 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 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
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 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 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 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 4e284e97b9 Server: finish old jobs at startup 2017-05-05 17:24:16 +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 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 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 6e07c3de88 Add video category support 2017-03-22 21:25:24 +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 ed708d62a6 Server: fix migrations with an empty Applications table 2017-03-04 10:40:09 +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 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 9cc99d7b56 Fix update host script 2017-02-08 20:34:01 +01:00
Chocobozzz 11ac88de40 Client: add basic support to report video abuses 2017-01-23 22:18:53 +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 91cc839af8 Server: fix single pod tests 2017-01-12 13:08:47 +01:00
Chocobozzz 7f4e7c3637 Server: fix update remote video infohash 2017-01-12 09:47:21 +01:00
Chocobozzz edc5e86006 Server: transaction serializable for videos 2017-01-11 18:41:40 +01:00
Chocobozzz d8cc063e97 Server: do not break remote videos processing on error 2017-01-11 18:06:51 +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 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 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 178edb2025 Server: correctly sort tags by name asc 2016-12-26 17:44:25 +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