Commit Graph

302 Commits

Author SHA1 Message Date
Chocobozzz
d50acfab69
Add comments federation tests 2017-12-27 20:03:37 +01:00
Chocobozzz
4635f59d7c
Add video comment components 2017-12-27 16:11:53 +01:00
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
85414add64
Fix player play exception on chromium 2017-12-19 15:17:43 +01:00
Chocobozzz
54b3806324
Fix lint 2017-12-19 14:22:38 +01:00
Chocobozzz
0405ab52dc
Set port if not specified in webfinger 2017-12-19 14:21:14 +01:00
Chocobozzz
e12a009254
Status are sent to mastodon 2017-12-19 10:53:16 +01:00
Chocobozzz
50d6de9c28
Begin moving video channel to actor 2017-12-19 10:53:16 +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
3fd3ab2d34
Move models to typescript-sequelize 2017-12-13 16:50:33 +01:00
Chocobozzz
8e7f08b5a5
Make some fields optional when uploading a video 2017-12-07 17:05:23 +01:00
Chocobozzz
f3aaa9a95c
Fix client search 2017-12-05 18:25:29 +01:00
Chocobozzz
fef2c7164e
Fix bad to/cc when undo dislike 2017-11-30 14:15:17 +01:00
Chocobozzz
4f49137101
Fix req accepts 2017-11-30 13:37:11 +01:00
Chocobozzz
98ec8b8e73
Fix lint 2017-11-30 13:16:23 +01:00
Chocobozzz
1b5b10d131
Fix activitypub check headers 2017-11-30 13:15:25 +01:00
Chocobozzz
6cbdbdef17
Check correctly activitypub headers 2017-11-30 12:00:40 +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
d4f1e94c89
Misc cleanup 2017-11-27 19:40:53 +01:00
Chocobozzz
8d468a16fd
Cleanup helpers 2017-11-27 19:40:53 +01:00
Chocobozzz
0f91ae62df
Add follow tests 2017-11-27 19:40:52 +01:00
Chocobozzz
7e9334c34d
Add ability to unfollow a server 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
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
20494f1221
Server shares user videos 2017-11-27 19:40:52 +01:00
Chocobozzz
6086242524
Rename Pod -> Server 2017-11-27 19:40:51 +01:00
Chocobozzz
350e31d6b6
Follow works 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
563d032e97
Usernames are case insensitive now 2017-11-04 18:32:38 +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
954605a804
Support roles with rights and add moderator role 2017-10-27 16:55:03 +02:00
Chocobozzz
51c443dbe0
Be tolerant with remote requests
Just remove videos we don't want
2017-10-26 10:40:37 +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
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
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
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
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
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
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
6d33593a08 Improve real world script 2017-09-12 13:12:35 +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
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
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
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
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
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
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
d38b828106 Add like/dislike system for videos 2017-03-08 21:35:43 +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
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
f6f7dfee01 Server: update express-validator 2017-02-10 11:27:14 +01:00
Chocobozzz
b09ce6455f Server: error if we add a pod that already exists 2017-01-27 11:55:31 +01:00
Chocobozzz
63d00f5ded Server: fix update right checks 2017-01-11 19:15:23 +01:00
Chocobozzz
45abb8b97b Server: rights check for update a video 2017-01-11 18:41:09 +01:00
Chocobozzz
bdfbd4f162 Server: use crypto instead of ursa for pod signature 2017-01-04 22:23:07 +01:00
Chocobozzz
55fa55a9be Server: add video abuse support 2017-01-04 21:05:13 +01:00
Chocobozzz
8fd66b75bf Server: fix video remoe validation 2016-12-30 12:39:49 +01:00
Chocobozzz
818f7987eb Server: optimization for videoGet and videoRemove 2016-12-30 11:51:08 +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
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
441b66f809 Server: forbid to make friends with a non https server 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
af1068ce1d Server: forbid to remove the root user 2016-10-07 15:32:09 +02:00
Chocobozzz
c4403b29ad Server: remove useless hash affectations 2016-10-02 12:19:02 +02:00
Chocobozzz
1ab844d859 Server: add port when making friends if it is not specified 2016-10-01 14:23:50 +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
f9b2d2cedd Fix client peer dependencies 2016-09-20 22:45:14 +02:00
Chocobozzz
bf68dd752d Client: fix error display for component 2016-08-23 17:42:56 +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
1e2564d392 Server: make friends urls come from the request instead of the
configuration file
2016-08-20 17:11:38 +02:00
Chocobozzz
5c39adb731 Server: add user list sort/pagination 2016-08-16 22:31:45 +02:00
Chocobozzz
68a3b9f2aa Server: delete user with the id and not the username 2016-08-09 21:44:45 +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
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
2f372a8654 Server: implement refresh token 2016-07-20 16:23:58 +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
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
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
be587647f9 Add tags support to server 2016-06-06 14:15:03 +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
501bc6c2b1 Thumbnail, author and duration support in client 2016-05-21 18:08:23 +02:00
Chocobozzz
13c14a9028 Add radix to parseInt 2016-05-19 20:27:36 +02:00
Chocobozzz
a877d5acc5 Add ability to sort videos list 2016-05-17 21:03:00 +02:00
Chocobozzz
67100f1f97 Add a check for the duration of videos 2016-05-16 19:49:10 +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
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
bc503c2a62 Update to standard 7. Goodbye snake_case, I used to love you 2016-05-13 14:23:11 +02:00
Chocobozzz
0c1cbbfe29 Add authentications for routes that need it and adapts the tests 2016-04-14 22:06:11 +02:00
Chocobozzz
9457bf8807 OAuth server: first draft 2016-03-21 11:56:33 +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
b9a3e09ad5 Prepare folders structure for angular app 2016-03-07 11:33:59 +01:00