Commit Graph

1402 Commits (60919831276e9c9e9900258bec82b6c31e9e5dd3)

Author SHA1 Message Date
Chocobozzz e5cb43e071
Clean up peertube auth 2018-11-14 16:32:28 +01:00
Chocobozzz 5c6d985fae
Check activities host 2018-11-14 16:32:27 +01:00
Chocobozzz df66d81583
Add compatibility with other Linked Signature algorithms 2018-11-14 16:32:27 +01:00
Rigel Kent b83b8dd5ae add cli option to run without client 2018-11-14 15:59:56 +01:00
Chocobozzz fb651cf2d4
Revert change og video type 2018-11-14 08:18:50 +01:00
Chocobozzz be0f59b4ee
Merge branch 'master' into develop 2018-11-13 15:32:12 +01:00
BO41 891bc4f8bf change video type 2018-11-13 15:28:50 +01:00
Thomas Citharel 1cf8aca11d Rename context stats to state
I guess it refers to the VideoState enum used here as `state` instead.
2018-11-13 14:51:36 +01:00
Rigel Kent 408f50ebc7
(ffmpeg) force pixel format yuv420p (#1394) 2018-11-12 15:43:51 +01:00
buoyantair 9639bd1757 Move utils to /shared
Move utils used by /server/tools/* & /server/tests/**/* into
/shared folder.

Issue: #1336
2018-10-29 22:18:31 +05:30
BRAINS YUM fa27f07637 allow peertube-import-videos.ts CLI script to run concurrently (#1334)
allows running multiple imports at the same time, whereas previously a concurrent instance of the script deleted another processe's file.
2018-10-24 20:07:51 +02:00
Frank de Lange 8684f3c1f6 Fix #1328 - application-config initialisation in CLI tools (#1343)
Test for an empty object in `cli.ts` when no config data is present (i.e. when run on a new install).
2018-10-24 12:28:25 +02:00
Rigel Kent 7cf3e57376 (doc) add manpage to peertube cli 2018-10-20 19:16:56 +02:00
Rigel Kent c141f68be1
add repl to the cli wrapper, remove extraneous TOC in tools.md 2018-10-19 14:24:35 +02:00
Chocobozzz f7509cbec8
Add HTTP signature check before linked signature
It's faster, and will allow us to use RSA signature 2018 (with upstream
jsonld-signature module) without too much incompatibilities in the
peertube federation
2018-10-19 12:59:52 +02:00
Chocobozzz 40ed9f6aae
Update translations 2018-10-19 12:45:40 +02:00
Chocobozzz 41f2ebae4f
Add HTTP signature check before linked signature
It's faster, and will allow us to use RSA signature 2018 (with upstream
jsonld-signature module) without too much incompatibilities in the
peertube federation
2018-10-19 12:26:37 +02:00
BRAINS YUM d23e6a1c97 Feature/description support fields length 1000 (#1267)
* fix migrations to not use config constant values as it can introduce bugs later when they change; (fixes #1259)
remove constant fields imports from migrations

* add migrations to update description and support fields to 1000 (fixes #1258)

* fix client/server account and video_channel description/support fields to be max len 1000 (fixes #1258);
fix test Should fail with a too long description;
fix test Should fail with a long description;
fix test Should fail with a long description;
Remove USER.SUPPORT from constants since that field no longer exists;
null not false, in migrations/0280-description-support.ts;
video support field 1000, oops;

* rename migration 0280-description-support.ts -> 0285-description-support.ts;
update video support maxlength text
2018-10-19 08:54:01 +02:00
Rigel Kent be8139c7fe
fix lint test 2018-10-18 23:49:12 +02:00
Chocobozzz 74cd011b6c
Fix optimize old videos script 2018-10-18 16:54:26 +02:00
Chocobozzz cdf4cb9eaf
Fix transcoding 2018-10-18 10:44:16 +02:00
Chocobozzz e27ff5da6e
AP mimeType -> mediaType 2018-10-18 10:44:15 +02:00
Chocobozzz 28e51e831b
Oup's 2018-10-17 17:58:21 +02:00
Chocobozzz 0229b014e0
Fix tests 2018-10-17 13:10:58 +02:00
Chocobozzz bb5d90e62f
Merge branch 'feature/webtorrent-disabling' into develop 2018-10-17 10:48:56 +02:00
Felix Ableitner bcf21a376f Set keyframe interval for transcoding (fixes #1147) (#1231)
* Set keyframe interval for transcoding (fixes #1147)

* remove -maxrate and old bitrate setter

* pass fps as parameter

* set type for ffmpeg param

* assign ffmpeg object
2018-10-17 10:15:38 +02:00
Chocobozzz 26370ce469 Move redundancy in its own travis container 2018-10-16 16:41:36 +02:00
Chocobozzz fd28a0fc88 Fix redundancy test 2018-10-16 16:41:36 +02:00
Chocobozzz 65b21c961c Add ability to mute a user/instance by server in client 2018-10-16 16:41:36 +02:00
Chocobozzz b44164bb56 Add ability to mute a user/instance by server in server api 2018-10-16 16:41:36 +02:00
Chocobozzz af5767ffae Add user/instance block by users in the client 2018-10-16 16:41:36 +02:00
Chocobozzz 7ad9b9846c Add ability for users to block an account/instance on server side 2018-10-16 16:41:36 +02:00
BRAINS YUM 1e59ca3bac add REPL in server/tools/repl.ts (#1248) 2018-10-14 19:48:08 +02:00
Adnane Belmadiaf 6f2ae7a1aa rename News category into News & Politics (#1261) 2018-10-14 19:43:17 +02:00
Rigel Kent ed638e5325
move to boolean switch 2018-10-13 11:53:48 +02:00
Rigel Kent 64cc5e8575
add webtorrent opt-out settings
- add a key in localstorage to remember the opt-out
- add a user setting
2018-10-13 11:53:42 +02:00
BRAINS YUM 0e5ff97f6f add parseBytes utility function and tests (#1239)
* add parseBytes utility function and tests
make it parse TB MB
fix parseBytes; * 1024
test bytes too, and make parseByte to parse quotas
add test in travis.sh in misc

* fix parseBytes and test to pass linting
2018-10-13 08:43:55 +02:00
Chocobozzz 71e318b4fe
Merge branch 'release/v1.0.0' into develop 2018-10-11 09:52:16 +02:00
Chocobozzz 1cd3facc3d
Add ability to list all local videos
Including private/unlisted for moderators/admins
2018-10-10 11:46:50 +02:00
Chocobozzz b014b6b9c7
Add ability to search on followers/following 2018-10-10 09:43:53 +02:00
Lucas Declercq 9ccff23877 Add explicit error message that changing video ownership only works with local accounts (#1214)
* Add explicit error message that changing video ownership only works with local accounts

* Remove superfluous logger

* Remove unneeded end() to error responses

* Add a message on client side to prevent transfering ownership to a remote account
2018-10-10 08:57:00 +02:00
Chocobozzz 729bb18481
Add more headers to broadcast/unicast 2018-10-10 08:51:58 +02:00
Rigel Kent e1d7b98bc7
fix automatic bitrate adjustment
The regression was introduced in
edb4ffc7e0 and forced a fixed bitrate per
resolution
2018-10-08 21:14:21 +02:00
Chocobozzz c1c86c1599
Try to cache video_high_bitrate_1080p in travis 2018-10-08 17:47:19 +02:00
Chocobozzz 9f1ddd2496
Change a little bit optimize-old-videos logic 2018-10-08 16:50:56 +02:00
Felix Ableitner edb4ffc7e0 Set bitrate limits for transcoding (fixes #638) (#1135)
* Set bitrate limits for transcoding (fixes #638)

* added optimization script and test, changed stuff

* fix test, improve docs

* re-add optimize-old-videos script

* added documentation

* Don't optimize videos without valid UUID, or redundancy videos

* move getUUIDFromFilename

* fix tests?

* update torrent and file size, some more fixes/improvements

* use higher bitrate for high fps video, adjust bitrates

* add test video

* don't throw error if resolution is undefined

* generate test fixture on the fly

* use random noise video for bitrate test, add promise

* shorten test video to avoid timeout

* use existing function to optimize video

* various fixes

* increase test timeout

* limit test fixture size, add link

* test fixes

* add await

* more test fixes, add -b:v parameter

* replace ffmpeg wiki link

* fix ffmpeg params

* fix unit test

* add test fixture to .gitgnore

* add video transcoding fps model

* add missing file
2018-10-08 16:26:04 +02:00
Chocobozzz 24b9417cec
Add users search filter 2018-10-08 15:55:32 +02:00
Lucas Declercq 7f2cfe3a79 Rename downloadingEnabled property to downloadEnabled 2018-10-08 14:45:22 +02:00
Lucas Declercq 4ffdcfc63b Fix some defaults values + indentation 2018-10-08 14:42:55 +02:00
Chocobozzz 54b3316099
Merge branch 'release/v1.0.0' into develop 2018-10-08 12:04:52 +02:00
Chocobozzz 6321cbc3e7
Avoid old issue regarding duplicated hosts in db 2018-10-08 11:58:18 +02:00
Chocobozzz ecf3f060ef
Fix avatar update 2018-10-08 10:37:43 +02:00
Chocobozzz 505319061e
Fix avatar update 2018-10-08 10:37:08 +02:00
Lucas Declercq 156c50af30 Add downloadingEnabled property to video model 2018-10-06 19:17:39 +02:00
Chocobozzz 79bd2632d6
Add user moderation in the account page 2018-10-05 17:02:10 +02:00
Chocobozzz 6e46de095d
Add user history and resume videos 2018-10-05 11:22:38 +02:00
Chocobozzz d0ae9490a3
Don't block when removing redundancy files 2018-10-03 16:57:40 +02:00
Chocobozzz 25378bc866
Delete correctly redundancy files 2018-10-03 16:43:57 +02:00
Chocobozzz be691a57c5
Check video exists before extending its expiration 2018-10-03 15:52:39 +02:00
Chocobozzz 499d901595
Fix config endpoint 2018-10-03 14:36:00 +02:00
Chocobozzz b88a459664
Upsert cache file on create activity 2018-10-02 14:40:03 +02:00
Chocobozzz 278711b595
Try to fix travis redundancy tests 2018-10-02 13:09:57 +02:00
Chocobozzz 659edaa62c
Correctly forward comment deletion 2018-10-02 11:33:18 +02:00
Chocobozzz 792e5b8e5b
Try to improve redundancy tests 2018-10-02 09:04:19 +02:00
Chocobozzz 913f08f2bd
Fix get version 2018-10-02 09:02:47 +02:00
Chocobozzz c049d791f9
Check the comment is defined when validating body 2018-10-01 19:07:25 +02:00
Chocobozzz d05be4d944
Don't build redundancy urls with "-1" as fps 2018-10-01 18:40:17 +02:00
Chocobozzz c2ad546df9
Add tests regarding well known/static text endpoints 2018-10-01 17:29:11 +02:00
Chocobozzz 99cc653f47
Fix redundancy with specific videos 2018-10-01 16:33:53 +02:00
Chocobozzz a3737cbf2b
Fix video fps validator 2018-10-01 16:27:47 +02:00
Chocobozzz d382f4e917
Fix refreshing external video attributes 2018-10-01 15:34:31 +02:00
Chocobozzz 601527d795
Check video channel name is unique on our instance 2018-10-01 15:20:14 +02:00
Chocobozzz 7361c401b1
Decrease log file max size 2018-10-01 15:20:13 +02:00
Chocobozzz d1105b97ef
Fix dnt route 2018-10-01 15:20:13 +02:00
Rigel Kent abb2c7927c show last commit hash alongside server version in footer 2018-10-01 14:31:01 +02:00
Andrew Morgan 26b4151762 Define channelId property beforehand 2018-10-01 14:14:49 +02:00
Andrew Morgan c01cfce40b Allow specification of Channel ID in peertube-upload.js 2018-10-01 14:14:49 +02:00
Chocobozzz cf9166cf2f
Add timeout on youtube dl to cleaup files 2018-10-01 12:00:05 +02:00
Chocobozzz e37c85e933
Delete each file on failed import 2018-10-01 10:52:58 +02:00
Chocobozzz e95e0463d8
Correctly delete files on failed import 2018-10-01 10:44:16 +02:00
Chocobozzz 26649b4215
Ensure video existence before duplicating it 2018-10-01 10:31:42 +02:00
Chocobozzz 46f8d69b4e
Fix redundancy with videos already duplicated with another instance 2018-10-01 09:41:48 +02:00
Chocobozzz 8b917537af
Increase timeout on upload endpoint 2018-10-01 09:14:00 +02:00
Chocobozzz 5ce1208a0a
Improve prune script 2018-09-28 10:56:13 +02:00
Chocobozzz 07524e229f
Enable more angular options 2018-09-28 10:36:46 +02:00
Chocobozzz c39e86b898
Fix video description when importing by url 2018-09-28 10:18:37 +02:00
Chocobozzz 161b061d4e
Remove duplicated videos on unfollow/delete redundancy 2018-09-28 10:07:05 +02:00
Chocobozzz d0b52b5285
Correctly delete directories on import 2018-09-28 09:08:12 +02:00
Chocobozzz 8578e3b5e6
Fix federation with a comment reply 2018-09-27 11:05:50 +02:00
Chocobozzz a890d1e0d3
Check current password on server side 2018-09-26 16:28:27 +02:00
Chocobozzz cc68049424
Fix video import of some youtube videos 2018-09-26 15:55:45 +02:00
Chocobozzz 542e73a26b
Improve upliad script error handling for token 2018-09-26 15:16:48 +02:00
Chocobozzz 3827c3b348
Fix quota translations 2018-09-26 14:50:39 +02:00
Chocobozzz 2e7cf5ae0c
Fix video files duplicated when fps is null
Null values are not considered equal in a UNIQUE index
2018-09-26 14:08:35 +02:00
Chocobozzz d82d8ad60c
Fix redundancy tests 2018-09-26 10:16:12 +02:00
Chocobozzz 4a534352ad
Fix avatar transaction retry 2018-09-26 10:15:50 +02:00
Chocobozzz a71de50bbc
Correctly fix the webtorrent redundancy bug 2018-09-26 08:50:21 +02:00
Chocobozzz 69fa54a0b2
Dirty webtorrent fix to wait FS sync 2018-09-25 19:42:05 +02:00
Chocobozzz 4a08f66927
Only duplicate public videos 2018-09-25 18:05:54 +02:00
Chocobozzz c922d14220
Fix redundancy bug with old peertube torrent 2018-09-25 17:49:50 +02:00
Chocobozzz cfaf819c38
Reduce video import TTL 2018-09-25 17:49:49 +02:00
Chocobozzz ebdb612458
Fix redundancy totalVideos stats 2018-09-25 17:49:48 +02:00
Chocobozzz 96cdbcfa07
Merge remote-tracking branch 'origin/master' into develop 2018-09-25 11:43:00 +02:00
lsde 7e7ab7a15d Add dot into allowed actor username
One should have an oportunity to include a dot into the username.
Currently, it breaks the flow if one has an SSO in front of PeeTube which creates users with "name.surname".
2018-09-25 11:41:15 +02:00
Chocobozzz aac0118dc3
Fix dnt route 2018-09-25 11:13:34 +02:00
Chocobozzz 47d0b3ee61
Fix comment deletion with mastodon
Will only act with new comments
2018-09-24 16:24:42 +02:00
Chocobozzz e5565833f6
Improve redundancy: add 'min_lifetime' configuration 2018-09-24 13:38:39 +02:00
Chocobozzz d1a63fc7ac
Fix videos list user NSFW policy 2018-09-24 13:38:38 +02:00
Chocobozzz 1cfa8d6809
Remove unnecessary actor existance check
We already checked it in the signature checker
2018-09-21 09:51:24 +02:00
Chocobozzz 5c142a4bab
Fix peertube script 2018-09-20 16:35:48 +02:00
Chocobozzz 00f9e41ebf
Add warning if one of the storage directory is in the peertube
production directory

Because admins could loose these directories on peertube upgrade
2018-09-20 16:25:00 +02:00
Chocobozzz 0491173a61
Merge branch 'develop' into cli-wrapper 2018-09-20 16:24:31 +02:00
Chocobozzz f201a74992
Cache user token 2018-09-20 11:45:59 +02:00
Chocobozzz 91411dba92
Limit associations fetch when loading token 2018-09-20 11:45:59 +02:00
BO41 fcc7c06037 rename manifest 2018-09-20 08:22:29 +02:00
Chocobozzz f41d6aacdf
Fix jobs tests 2018-09-19 17:42:16 +02:00
Chocobozzz 993cef4b6e
Refractor audit user identifier 2018-09-19 17:02:27 +02:00
Chocobozzz 606c946e74
Move youtubeDL upgrader in helpers/ 2018-09-19 16:24:24 +02:00
Chocobozzz f9f899b9f8
Add redundancy check interval in config 2018-09-19 16:21:30 +02:00
Chocobozzz d9bdd007d7
Put config redundancy strategies in "strategies" subkey 2018-09-19 16:12:07 +02:00
Chocobozzz 12ba460e9e
Improve AP actor checks 2018-09-19 15:47:55 +02:00
Chocobozzz e587e0ecee
Optimize activity actor load in AP processors 2018-09-19 15:22:55 +02:00
Chocobozzz d4defe07d2
Optimize video view AP processing 2018-09-19 11:41:30 +02:00
Chocobozzz 4157cdb137
Refractor videos AP functions 2018-09-19 11:16:23 +02:00
Chocobozzz 96f29c0f6d
Optimize SQL requests of videos AP endpoints 2018-09-19 10:20:38 +02:00
Chocobozzz 627621c1e8
Optimize SQL requests of watch page API endpoints 2018-09-19 09:54:37 +02:00
Chocobozzz 098eb37797
Reduce video.ts file size by moving some methods in other files 2018-09-19 09:54:35 +02:00
Chocobozzz dae4a1c0f8
Improve webtorrent import error message when the torrent has multiple
files
2018-09-17 17:50:51 +02:00
Chocobozzz c07b604111
Fix checker if we don't have redundancy strategies 2018-09-17 11:28:33 +02:00
Chocobozzz 860cfb31e3
Fix "no results" on overview page 2018-09-17 10:28:38 +02:00
Chocobozzz 2ff83ae292
Handle actors search beginning with '@'
Something like @toto@example.com
2018-09-17 10:13:54 +02:00
Chocobozzz 743164fed1
Fix overviews tests 2018-09-17 10:13:54 +02:00
Chocobozzz a2377d15ee
Refractor activities sending 2018-09-14 16:51:35 +02:00
Chocobozzz d61b817890
Process inbox activities in a queue 2018-09-14 16:47:15 +02:00
Chocobozzz 4b5384f6e7
Add redundancy stats 2018-09-14 14:57:59 +02:00
Chocobozzz 7348b1fd84
Speed up overviews route 2018-09-14 11:52:23 +02:00
Chocobozzz 2b62cccd75
Raw query to get video ids 2018-09-14 11:09:34 +02:00
Rigel Kent 8704acf49e
one cli to unite them all
Ash nazg thrakatulûk agh burzum-ishi krimpatul

- refactor import-videos to use the youtubeDL helper
- add very basic tests for the cli
2018-09-14 11:08:55 +02:00
Chocobozzz 3f6b6a565d
Add recently added redundancy strategy 2018-09-14 11:05:38 +02:00
Chocobozzz d5f044cef2
Test to remove delay in tests when running multiple servers 2018-09-14 09:58:49 +02:00
Chocobozzz b36f41ca09
Add trending videos strategy 2018-09-14 09:57:21 +02:00
Chocobozzz 6f0c46be8c
Process last hour views instead of current hour 2018-09-13 14:14:15 +02:00
Chocobozzz c48e82b5e0 Basic video redundancy implementation 2018-09-13 14:05:49 +02:00
Chocobozzz 176e211453
Retry transactions on user endpoints if needed 2018-09-13 10:22:14 +02:00
Chocobozzz 9431cabf8a
Fix video views increment 2018-09-13 10:13:25 +02:00
Chocobozzz 662fb3ab5e
Fix feeds with channel filter 2018-09-13 09:48:34 +02:00
Rigel Kent e78980ebd1 use focus-visible polyfill to improve keyboard navigation
Only the homepage is concerned, but it should have decent keyboard
navigation support now.
2018-09-11 10:58:48 +02:00
Austin Heap 5447516b9a draft "security.txt" spec integration (#1020) 2018-09-06 14:23:46 +02:00
Chocobozzz db6d617dd2
Fix occitan label 2018-09-05 15:59:43 +02:00
Chocobozzz c75937d04f
Move nodeinfo model in shared/ 2018-09-04 15:34:11 +02:00
Chocobozzz df39a683ea
check 'trending.videos.interval_days' config key 2018-09-04 15:31:13 +02:00
Chocobozzz 0926af7acc
Add index to startDate in video view table 2018-09-04 15:25:02 +02:00
Chocobozzz 1a893f9c70
Do not import live streaming 2018-09-04 11:55:43 +02:00
Chocobozzz 5d112d0c3b
Fix video import with URL with small titles 2018-09-04 11:34:46 +02:00
Chocobozzz ea853b7282
Fix import videos duplicate detection 2018-09-04 11:25:40 +02:00
Chocobozzz eb87f9a4a9
Fix nsfw filter 2018-09-04 11:19:19 +02:00
Chocobozzz 5cf84858d4
Add federation to ownership change 2018-09-04 10:49:53 +02:00
Chocobozzz 0b74c74abe
Add trending sort tests 2018-09-04 08:58:34 +02:00
Chocobozzz 558187a72f
Fix overview cache 2018-09-04 08:58:33 +02:00
Chocobozzz 8ea6f49ad7
Fix trending videos count 2018-09-04 08:58:33 +02:00
Gaëtan Rizio 74d6346935 Users can change ownership of their video [#510] (#888)
* [#510] Create a new route to get the list of user names

To be able to transfer ownership to a user,
we need to be able to select him from the list of users.

Because the list could be too big, we add a autocomplete feature.

This commit does the following:

* Add a API endpoint to get a list of user names by searching its name

* [#510] The user can choose the next owner of the video

To be able to transfer ownership to a user,
we need the owner to be able to select the user.

The server can autocomplete the name of the user to give the ownership.
We add a dialog for the user to actually select it.

This commit does the following:

* Create a modal for the owner to select the next one
* Opens this modal with a button into the menu *more*
* Make the dependency injection

* [#510] When the user choose the next owner, create a request in database

For the change of ownership to happen, we need to store the temporary requests.
When the user make the request, save it to database.

This commit does the following:

* Create the model to persist change ownership requests
* Add an API to manage ownership operations
* Add a route to persist an ownership request

* [#510] A user can fetch its ownership requests sent to him

To be able to accept or refuse a change of ownership,
the user must be able to fetch them.

This commit does the following:

* Add an API to list ownership for a user
* Add the query to database model

* [#510] A user can validate an ownership requests sent to him - server

The user can accept or refuse any ownership request that was sent to him.
This commit focus only on the server part.

This commit does the following:

* Add an API for the user to accept or refuse a video ownership
* Add validators to ensure security access
* Add a query to load a specific video change ownership request

* [#510] A user can validate an ownership requests sent to him - web

The user can accept or refuse any ownership request that was sent to him.
This commit focus only on the web part.

This commit does the following:

* Add a page to list user ownership changes
* Add actions to accept or refuse them
* When accepting, show a modal requiring the channel to send the video

* Correct lint - to squash

* [#510] PR reviews - to squash

This commit does the following:

* Search parameter for user autocompletion is required from middleware directly

* [#510] PR reviews - to squash with creation in database commit

This commit does the following:

* Add the status attribute in model
* Set this attribute on instance creation
* Use AccountModel method `loadLocalByName`

* [#510] PR reviews - to squash with fetch ownership

This commit does the following:

* Add the scope `FULL` for database queries with includes
* Add classic pagination middlewares

* [#510] PR reviews - to squash with ownership validation - server

This commit does the following:

* Add a middleware to validate whether a user can validate an ownership
* Change the ownership status instead of deleting the row

* [#510] PR reviews - to squash with ownership validation - client

This commit does the following:

* Correct indentation of html files with two-spaces indentation
* Use event emitter instead of function for accept event
* Update the sort of ownership change table for a decreasing order by creation date
* Add the status in ownership change table
* Use classic method syntax

* code style - to squash

* Add new user right - to squash

* Move the change to my-account instead of video-watch - to squash

As requested in pull-request, move the action to change ownership into my videos page.

The rest of the logic was not really changed.

This commit does the following:

- Move the modal into my video page
- Create the generic component `button` to keep some styles and logic

* [#510] Add tests for the new feature

To avoid regression, we add tests for all api of ownership change.

This commit does the following:

- Create an end-to-end test for ownership change
- Divide it to one test per request

* [#510] Do not send twice the same request to avoid spam

We can send several time the same request to change ownership.
However, it will spam the user.
To avoid this, we do not save a request already existing in database.

This commit does the following:

- Check whether the request exist in database
- Add tests to verify this new condition

* [#510] Change icons

Change icons so they remains logic with the rest of the application.

This commit does the following:

- Add svg for missing icons
- Add icons in `my-button` component
- Use these new icons

* [#510] Add control about the user quota

The user should be able to accept a new video only if his quota allows it.

This commit does the following:

- Update the middleware to control the quota
- Add tests verifying the control

* Correct merge

- Use new modal system
- Move button to new directory `buttons`

* PR reviews - to squash
2018-09-04 08:57:13 +02:00
Chocobozzz d02911fadd
Fix thumbnail/preview in upload script 2018-09-03 11:12:53 +02:00
Chocobozzz 4b54f1360e
Fix videos overview tags section 2018-08-31 17:43:39 +02:00
Chocobozzz 9a629c6efb
Trending by interval 2018-08-31 17:22:01 +02:00
Chocobozzz 1a47109144
Add channel avatar to overviews 2018-08-31 14:32:37 +02:00
Chocobozzz b6314e3cee
Cleanup video API SQL requests 2018-08-31 11:44:48 +02:00
Chocobozzz 288fe38590
Use custom rate limiter when asking verif email 2018-08-31 11:44:44 +02:00
Chocobozzz 328e607d32
Add sql trace in error log on sequelize error 2018-08-31 11:43:46 +02:00
Chocobozzz afd2cba554
Try to improve sql videos list query
Split the complex query in 2 different queries
2018-08-31 09:53:07 +02:00
Chocobozzz 2d3741d6d9 Videos overview page: first version 2018-08-31 09:19:58 +02:00
Josh Morel d9eaee3939 add user account email verificiation (#977)
* add user account email verificiation

includes server and client code to:

* enable verificationRequired via custom config
* send verification email with registration
* ask for verification email
* verify via email
* prevent login if not verified and required
* conditional client links to ask for new verification email

* allow login for verified=null

these are users created when verification not required
should still be able to login when verification is enabled

* refactor email verifcation pr

* change naming from verified to emailVerified
* change naming from askVerifyEmail to askSendVerifyEmail
* undo unrelated automatic prettier formatting on api/config
* use redirectService for home
* remove redundant success notification on email verified

* revert test.yaml smpt host
2018-08-31 09:18:19 +02:00
Chocobozzz 04291e1ba4
Fix job tests 2018-08-30 15:03:19 +02:00
Chocobozzz 6b6168606b
Bufferize videos views in redis 2018-08-30 15:03:18 +02:00
Chocobozzz 8b60488020
Refractor user quota SQL queries 2018-08-28 18:29:48 +02:00
Chocobozzz 41a676db39
Add features table on signup 2018-08-28 17:39:29 +02:00
Chocobozzz c3c2ab1c8b
Optimize channel search query 2018-08-28 15:16:04 +02:00
Chocobozzz 9ee92651f6
Fix tests 2018-08-28 11:32:03 +02:00
Chocobozzz bfcef50db9
Fix oauth server module 2018-08-28 10:56:09 +02:00
Felix Ableitner bee0abffff Implement daily upload limit (#956)
* Implement daily upload limit (ref #652)

* remove duplicate code

* review fixes

* fix tests?

* whitespace fixes, finish leftover todo

* fix tests

* added some new tests

* use different config value for tests

* remove todo
2018-08-28 09:01:35 +02:00
Chocobozzz c907c2fa3f
Improve error message on actor name conflict 2018-08-27 16:42:27 +02:00
Chocobozzz 62689b942b
Correctly migrate to fs-extra 2018-08-27 16:23:34 +02:00
Rigel Kent c9d5c64f98 replace fs by fs-extra to prevent EMFILE error 2018-08-27 16:03:57 +02:00
Chocobozzz 687d638c2b Fetch outbox when searching an actor 2018-08-27 09:41:54 +02:00
Chocobozzz f5b0af50c8 Search video channel handle/uri 2018-08-27 09:41:54 +02:00
Chocobozzz aa55a4da42 Infinite scroll to list our subscriptions 2018-08-27 09:41:54 +02:00
Chocobozzz f37dc0dd14 Add ability to search video channels 2018-08-27 09:41:54 +02:00
Chocobozzz 240085d005 Fix tests 2018-08-27 09:41:54 +02:00
Chocobozzz 83e6519ba4 Refractor comment creation from federation 2018-08-27 09:41:54 +02:00
Chocobozzz 1297eb5db6 Add refresh video on search 2018-08-27 09:41:54 +02:00
Chocobozzz f6eebcb336 Add ability to search a video with an URL 2018-08-27 09:41:54 +02:00
Chocobozzz 22a16e36f6 Add local user subscriptions 2018-08-27 09:41:54 +02:00
Chocobozzz 99492dbc0d Add get subscription endpoint 2018-08-27 09:41:54 +02:00
Chocobozzz 8a19bee1a1 Add ability to set a name to a channel 2018-08-27 09:41:54 +02:00
Chocobozzz 965c4b22d0 Use height instead of width to represent the video resolution 2018-08-27 09:41:54 +02:00
Chocobozzz 06a05d5f47 Add subscriptions endpoints to REST API 2018-08-27 09:41:54 +02:00
Chocobozzz d03cd8bb20 Split users controller 2018-08-27 09:41:54 +02:00
Chocobozzz 4f1f6f0383
Ensure youtubedl binary exists in ydl helper 2018-08-16 09:45:51 +02:00
Chocobozzz a76138ff56
Add quota used in users list 2018-08-14 18:01:23 +02:00
Chocobozzz eed24d26db Don't set a bitrate on unknown audio input 2018-08-14 15:53:06 +02:00
Chocobozzz 06215f15e0
Cleanup utils helper 2018-08-14 15:28:30 +02:00
Chocobozzz 59c76ffa8f
Flat shared module directory 2018-08-14 15:00:01 +02:00
Chocobozzz 13b6dc1f34
Increase video import timeout 2018-08-14 11:40:14 +02:00
Chocobozzz cc43831a90
Filter tracker based on infohash 2018-08-14 11:00:03 +02:00
Chocobozzz e5e7f7fe99
Add tests when getting a blacklisted video 2018-08-14 09:27:19 +02:00
Chocobozzz 191764f30b
Improve blacklist management 2018-08-14 09:27:18 +02:00
Chocobozzz 26b7305a23
Add blacklist reason field 2018-08-14 09:27:18 +02:00
Chocobozzz 288178bf02
Try to fix travis tests 2018-08-10 17:49:12 +02:00
Chocobozzz 268eebed92
Add state and moderationComment for abuses on server side 2018-08-10 16:54:01 +02:00
Chocobozzz 141b177db0
Add ability to ban/unban users 2018-08-09 17:55:05 +02:00
Chocobozzz eacb25c436
Add reason when banning a user 2018-08-08 17:44:22 +02:00
Chocobozzz e69219184b
Implement user blocking on server side 2018-08-08 15:22:58 +02:00
Chocobozzz 92b9d60c00
Add ability to delete our account 2018-08-08 10:55:27 +02:00
Chocobozzz a031ab0b9b
Increase test timeout for imports 2018-08-08 10:13:05 +02:00
Chocobozzz 541006e355 Correct webtorrent download cleanup 2018-08-08 09:30:31 +02:00
Chocobozzz 3e17515e29 Add torrent tests 2018-08-08 09:30:31 +02:00
Chocobozzz 187501f8b8 Add check param tests regarding video imports 2018-08-08 09:30:31 +02:00
Chocobozzz a84b8fa5cf Add import.video.torrent configuration 2018-08-08 09:30:31 +02:00
Chocobozzz 990b6a0b0c Import torrents with webtorrent 2018-08-08 09:30:31 +02:00
Chocobozzz ce33919c24 Import magnets with webtorrent 2018-08-08 09:30:31 +02:00
Rigel Kent aad0ec24e8 advertising PeerTube's rather simple DNT policy 2018-08-08 09:22:15 +02:00
Chocobozzz 3d52b300ea
Merge branch 'release/beta-10' into develop 2018-08-06 12:11:08 +02:00
Chocobozzz 2769e297ca
Fix caption upload on Mac OS 2018-08-06 11:45:24 +02:00
Chocobozzz 60979b076d Fix tests 2018-08-06 11:19:16 +02:00
Chocobozzz b2977eecb8 Fix fps federation 2018-08-06 11:19:16 +02:00
Chocobozzz 590fb50690 Add tests regarding video import 2018-08-06 11:19:16 +02:00
Chocobozzz 5d08a6a74e Add import http enabled configuration 2018-08-06 11:19:16 +02:00
Chocobozzz 7e5f9f001d Add audit logs for video import 2018-08-06 11:19:16 +02:00
Chocobozzz 2b86fe7274 Add job ttl 2018-08-06 11:19:16 +02:00
Chocobozzz 516df59b3b Remove ability to delete video imports
Users should remove the linked video instead
2018-08-06 11:19:16 +02:00
Chocobozzz d7f83948a1 Correctly handle video import errors 2018-08-06 11:19:16 +02:00
Chocobozzz ed31c05985 Add ability to list video imports 2018-08-06 11:19:16 +02:00
Chocobozzz 299474e827 Add ability to remove a video import 2018-08-06 11:19:16 +02:00
Chocobozzz ce32426be9 Auto update youtube-dl 2018-08-06 11:19:16 +02:00
Chocobozzz fbad87b047 Add ability to import video with youtube-dl 2018-08-06 11:19:16 +02:00
Rigel Kent 7160878c4a adding tests for audio conversions 2018-08-01 10:57:13 +02:00
Jorropo 991feec9a3 ffmpeg auto thread
Set thread count to 0 and ffmpeg will chose automaticaly
2018-08-01 10:57:13 +02:00
Rigel Kent 19ca8ca939 fixing tests to deal with new transcoding parameters 2018-08-01 10:57:13 +02:00
Jorropo 80bc88c133 Nice ffmpeg to 15 and 2
Niceness 15 for video conversionNiceness 2 for image generation
(niceness 2 doesn't make it slower, just don't block servers and other
app)
2018-08-01 10:57:13 +02:00
Rigel Kent 4a5ccac5f1 fixing audio getter when video has no audio 2018-08-01 10:57:13 +02:00
Rigel Kent 4176e227cb Fixing #626 with ffmpeg's low default audio bitrate 2018-08-01 10:57:13 +02:00
Chocobozzz a3d1026bf3
Add index on sharedInboxUrl 2018-07-31 18:04:45 +02:00
Aurélien Bertron 80e36cd9fa Add audit logs in various modules
- Videos
- Videos comments
- Users
- Videos channels
- Videos abuses
- Custom config
2018-07-31 15:40:29 +02:00
Aurélien Bertron 5939081838 Add audit logs module 2018-07-31 15:40:29 +02:00
Rigel Kent 1c3386e87f adding ORM pool configuration 2018-07-31 15:38:08 +02:00
Chocobozzz cf7a61b5a2
Cleanup req files on bad request 2018-07-31 15:09:34 +02:00
Chocobozzz cc6373e6d6
Fix handle down test 2018-07-31 12:21:04 +02:00
Chocobozzz 6104adc3e9
Don't send follow request if the follow is already accepted 2018-07-31 11:15:59 +02:00
Chocobozzz 25e4d6ee97
Refresh orphan actors 2018-07-31 11:04:33 +02:00
Chocobozzz 4a9e71c2b1
Increase max stalled count in job queue 2018-07-30 19:18:01 +02:00
Chocobozzz 14f2b3ad11
Graceful job queue shutdown 2018-07-30 18:49:54 +02:00
Chocobozzz 8e0fd45e14
Add more info logging 2018-07-30 17:02:40 +02:00
Chocobozzz 0588221107
Remove kue migration 2018-07-30 16:34:47 +02:00
Chocobozzz c5a893d536
Revert "Delete actor too when deleting account/video channel"
This reverts commit e04551d796.

See https://github.com/Chocobozzz/PeerTube/issues/870#issuecomment-408814420
2018-07-30 13:39:20 +02:00
Chocobozzz e04551d796
Delete actor too when deleting account/video channel 2018-07-30 11:34:34 +02:00
Chocobozzz e20015d744
Fiw winston meta log 2018-07-30 11:34:34 +02:00
Chocobozzz 7a93e28110
Delete old indexes 2018-07-27 17:22:20 +02:00
Chocobozzz 8d194d9a5c
Optimize videos list SQL query (another time) 2018-07-27 16:57:16 +02:00
Chocobozzz dbfd3e9bfe
Optimize search SQL query (I hope :p) 2018-07-27 15:23:05 +02:00
Jorropo a3c1738eea [Server>Middlewares>Follows] Changing error code 400 to 500
Follows on http server is a server error not an error of the client.
2018-07-27 14:12:31 +02:00
Chocobozzz 18dbb5b972
Revert SQL optimization in videos list :( 2018-07-27 12:03:27 +02:00
Chocobozzz 3ac046e2a4
Fix peertube on chrome 2018-07-26 16:46:36 +02:00
Chocobozzz 2cebd79701
Fix last commit 2018-07-26 11:02:04 +02:00
Rigel Kent c1e791bad0
expliciting type checks and predicates (server only) 2018-07-25 22:01:25 +02:00
Chocobozzz d73c98884e
Hack 459 regarding Angular & i18n 2018-07-25 09:57:52 +02:00
Chocobozzz a8bf1d826e
404 on unknown thumbnail 2018-07-24 18:03:40 +02:00
Chocobozzz 1194e8b46f
Add max count in pagination 2018-07-24 18:03:38 +02:00
Chocobozzz 77de223a5f
Fix publishedAt after a scheduled update 2018-07-24 15:11:28 +02:00
Chocobozzz 98d3324db3
Fix nodeinfo endpoint 2018-07-24 14:36:25 +02:00
Rigel Kent 3f6d68d967 adding initial support for nodeinfo 2018-07-24 14:08:44 +02:00
Chocobozzz d411245096 Add ability to only filter in the search endpoint 2018-07-24 14:04:05 +02:00
Chocobozzz 8cd72bd377 Optimize SQL queries 2018-07-24 14:04:05 +02:00
Chocobozzz 5bcfd02974 Fix travis tests 2018-07-24 14:04:05 +02:00
Chocobozzz 0b18f4aa80 Add advanced search in client 2018-07-24 14:04:05 +02:00
Chocobozzz d525fc399a Add videos list filters 2018-07-24 14:04:05 +02:00
Chocobozzz 57c36b277e Begin advanced search 2018-07-24 14:04:05 +02:00
Chocobozzz 7279b45581 Speed up populate database script 2018-07-24 14:04:05 +02:00
Chocobozzz e032aec9b9
Render CSS/title/description tags on server side 2018-07-18 10:00:37 +02:00
Chocobozzz 1d94c15468
Add esperanto, lojban, klingon and kotava (audio/subtitle) languages 2018-07-17 19:22:03 +02:00
Chocobozzz 57a81ff649
Fix static avatars/thumbnails cache 2018-07-17 19:04:41 +02:00
Chocobozzz b54431049b
Add populate database script 2018-07-17 18:17:50 +02:00
Chocobozzz 62945f067b
Add cors for static paths too 2018-07-17 15:04:54 +02:00
Rigel Kent d00e2393d4 selective route permission to use embeds with x-frame-deny 2018-07-17 12:03:31 +02:00
Chocobozzz 019e475072
Remove unnecessary image check in video upload 2018-07-16 16:51:17 +02:00
Chocobozzz a920fef10a
Refractor video attr validators 2018-07-16 14:58:22 +02:00
Chocobozzz f4001cf408
Handle .srt subtitles 2018-07-16 14:31:40 +02:00
Chocobozzz 40e87e9ecc Implement captions/subtitles 2018-07-16 11:50:08 +02:00
Rigel Kent 19f7b248d8 adding redis unix connection 2018-07-14 15:00:56 +02:00
Chocobozzz 94831479f5 Migrate to bull 2018-07-11 14:00:17 +02:00
William Lahti 999417328b Ability to programmatically control embeds (#776)
* first stab at jschannel based player api

* semicolon purge

* more method-level docs; consolidate definitions

* missing definitions

* better match peertube's class conventions

* styling for embed tester

* basic docs

* add `getVolume`

* document the test-embed feature
2018-07-10 17:47:56 +02:00
Anton Latukha 602a81a213 (ffmpeg) B-adapt 1 and B-frames 16 (#774) 2018-07-10 00:27:59 +02:00
Chocobozzz 3a6f351b25
Handle higher FPS for high resolution (test) 2018-06-29 17:10:54 +02:00
Rigel Kent b81eb8fdc6 (feed) adding thumbnail support for RSS feed 2018-06-29 14:58:57 +02:00
Chocobozzz 52d9f792b3
Client: Add ability to update video channel avatar 2018-06-29 14:34:04 +02:00
Chocobozzz 4bbfc6c606
API: Add ability to update video channel avatar 2018-06-29 11:29:23 +02:00
William Lahti 12daa83784 move CORS allowance to the REST API router 2018-06-29 09:46:44 +02:00
Chocobozzz 8244c85ad6
Fix npm run dev:server 2018-06-29 09:33:36 +02:00
Chocobozzz 1b952dd426
Reset published date on publish 2018-06-28 16:58:15 +02:00
Chocobozzz 8afc19a612
Add ability to choose the language 2018-06-28 15:53:12 +02:00
PhieF 61b909b9bf Filter by category (#720)
* get videos with specific category (api)

* update api doc with category

* add url parameter to filter by category

* fix lint issues
2018-06-27 14:24:49 +02:00
Chocobozzz adc236fee3
Increase test timeout for travis 2018-06-27 10:07:41 +02:00