Commit Graph

680 Commits

Author SHA1 Message Date
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
Chocobozzz cc1903ad2a
Fix angular build 2018-10-10 15:09:16 +02:00
Chocobozzz 017c3dcadf
Add ability to list all local videos on client 2018-10-10 14:35:55 +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
Lucas Declercq 8ea1597fdb Fix too big line length 2018-10-08 16:33:02 +02:00
Chocobozzz 24b9417cec
Add users search filter 2018-10-08 15:55:32 +02:00
Chocobozzz 791645e620
Add bulk actions in users table 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 156c50af30 Add downloadingEnabled property to video model 2018-10-06 19:17:39 +02:00
Chocobozzz 35d50b7dd2
Fix videos list when page is empty 2018-10-05 17:07:13 +02:00
Chocobozzz 79bd2632d6
Add user moderation in the account page 2018-10-05 17:02:10 +02:00
Chocobozzz e724fa93c7
Move user moderation tool in a separate component 2018-10-05 17:02:09 +02:00
Chocobozzz 6e46de095d
Add user history and resume videos 2018-10-05 11:22:38 +02:00
Chocobozzz 60709df536
Fix Delete title button 2018-10-03 10:02:55 +02:00
Chocobozzz ed4c3c0910
Update captions in sequence to avoid concurrence issues 2018-10-01 08:54:58 +02:00
Rigel Kent 8be9f43aed
correct local subscribe in the subscription menu 2018-09-28 13:42:33 +02:00
Chocobozzz a890d1e0d3
Check current password on server side 2018-09-26 16:28:27 +02:00
Chocobozzz 39ba2e8e3a
Add RSS feed to subscribe button 2018-09-26 09:39:41 +02:00
Rigel Kent 660d11e91e
refactor subscribe button and comment-add for visitor-interact UX (#1100)
* refactor subscribe button for visitor-subscribe UX
* refactor comment-add for visitor-interact UX
2018-09-25 15:42:58 +02:00
Chocobozzz d1a63fc7ac
Fix videos list user NSFW policy 2018-09-24 13:38:38 +02:00
Chocobozzz 0b4e5fe327
Merge branch 'develop' into unused-imports 2018-09-24 10:40:27 +02:00
Rigel Kent 0144862299
revert f845c683 partial: "fix SEO tags and attributes" 2018-09-24 09:50:38 +02:00
Rigel Kent bc144e16ce
append my-help popover to body instead of parent object 2018-09-23 18:33:53 +02:00
BO41 23db998f07 remove unused imports 2018-09-22 20:11:16 +02:00
Chocobozzz ae04a0ce12
Upgrade client dependencies 2018-09-21 09:26:52 +02:00
Rigel Kent f845c68305
fix SEO tags and attributes 2018-09-20 16:48:21 +02:00
Chocobozzz 89724816ae
Improve videos list client performance 2018-09-20 14:21:57 +02:00
Chocobozzz d5931e6233
Fix client build 2018-09-18 08:21:04 +02:00
Chocobozzz a8ecc6f670
Try to improve infinite pagination 2018-09-17 17:45:55 +02:00
Chocobozzz 860cfb31e3
Fix "no results" on overview page 2018-09-17 10:28:38 +02:00
Chocobozzz 4035d2b6e9
Fix video channel deletion 2018-09-13 09:31:04 +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
Chocobozzz b0ee41df7d
Clean up change password validation 2018-09-05 15:00:25 +02:00
Chocobozzz 8ff3f88347
Fix watch page responsive 2018-09-05 11:20:44 +02:00
Rigel Kent 9a0fc8409c add theming via css custom properties
and a bonus dark color theme toggle
2018-09-04 23:24:34 +02:00
Chocobozzz 6aff854c0e
Fix overview page on mobile 2018-09-04 17:31:30 +02:00
Chocobozzz 8cd7faaa33
Better label for video privacies 2018-09-04 17:31:28 +02:00
Jorropo b0c36821d1 Add video recomandation by tags (#1001)
* Recommendation by tags (thx bradsk88)

Thx bradsk88 for the help.

* Prefer jest-preset-angular to skip need for babel config

* Fix jest
2018-09-04 11:01:54 +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
Rigel Kent 769ac6c11f add title ellipsis over two lines to miniatures 2018-09-03 08:49:29 +02:00
Rigel Kent 61318dd63f add daily quota to the features table information 2018-09-03 08:49:29 +02:00
Chocobozzz 9a629c6efb
Trending by interval 2018-08-31 17:22:01 +02:00
Brad Johnson 7f5f4152a4 Refactor: Separated "Other Videos" section into a dedicated component/service (#969)
* Separated "Other Videos" section into a dedicated component/service

I'm currently working on some proof-of-concepts for recommendation
providers that could work with PeerTube to provide useful video
suggestions to the user.

As a first step, I want to have great clarity about how PeerTube,
itself, will surface these videos to the user.

With this branch, I'm refactoring the "recommendations" to make it
easier to swap out different recommender implementations quickly.

Stop recommender from including the video that's being watched.

Ensure always 5 recommendations

* Treat recommendations as a stream of values, rather than a single async value.

* Prioritize readability over HTTP response size early-optimization.

* Simplify pipe
2018-08-31 17:19:21 +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 41a676db39
Add features table on signup 2018-08-28 17:39:29 +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 84b6dbcc6e
Underline links in feed popover when hovering 2018-08-27 16:04:06 +02:00
Chocobozzz 11b8762f9c
Add start at checkbox in share modal 2018-08-27 16:04:06 +02:00
Chocobozzz d77ad72663
Fix deprecated ng-bootstrap methods 2018-08-27 15:09:04 +02:00
Chocobozzz 0bd84f8bde
Add popover autoclose 2018-08-27 11:52:14 +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 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 8a19bee1a1 Add ability to set a name to a channel 2018-08-27 09:41:54 +02:00
Chocobozzz c0ffdd0958 Fix dev locale 2018-08-27 09:41:54 +02:00
Jorropo 9e91237655 Fix AutoThread 2018-08-21 14:42:52 +02:00
Chocobozzz 3dfa849402
Translate subtitle langs in player 2018-08-16 10:48:35 +02:00
Chocobozzz a76138ff56
Add quota used in users list 2018-08-14 18:01:23 +02:00
Chocobozzz e63dbd426e
Update client according to new model paths 2018-08-14 15:47:56 +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 efc9e8450a
Add ability to delete and update abuse on client 2018-08-14 09:27:17 +02:00
Chocobozzz 141b177db0
Add ability to ban/unban users 2018-08-09 17:55:05 +02:00
Chocobozzz 63347a0ff9
Migrate to bootstrap 4 and ng-bootstrap 2018-08-09 14:55:06 +02:00
Chocobozzz eacb25c436
Add reason when banning a user 2018-08-08 17:44:22 +02:00
Chocobozzz 92b9d60c00
Add ability to delete our account 2018-08-08 10:55:27 +02:00
Chocobozzz ce33919c24 Import magnets with webtorrent 2018-08-08 09:30:31 +02:00
Chocobozzz ed31c05985 Add ability to list video imports 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
Chocobozzz e80687c458
Upgrade client dependencies 2018-07-31 19:47:14 +02:00
Chocobozzz c487d3033c
Add aria-labelledby to video thumbnails 2018-07-31 14:25:02 +02:00
Chocobozzz 0933bb4a8a
Fix responsive on videos search 2018-07-31 09:45:57 +02:00
Chocobozzz d59cba295b
category parma -> categoryOneOf (videos list) 2018-07-25 17:18:46 +02:00
Chocobozzz ad77475251
Sort video captions 2018-07-25 15:11:25 +02:00
Chocobozzz b4a929accf
Add "agree to the terms" checkbox in registration form 2018-07-25 11:01:53 +02:00
Chocobozzz 772d5642ba
Improve captions UX (at least I've tried) 2018-07-25 10:28:43 +02:00
Chocobozzz 57c36b277e Begin advanced search 2018-07-24 14:04:05 +02:00
Chocobozzz 0f7fedc398
Improve frontend accessibility
In particular checkboxes, likes/dislikes, share button, video thumbnails
and help buttons
2018-07-17 14:56:15 +02:00
Chocobozzz 329d908660
Do not display private privacy if the video is not private 2018-07-16 15:24:50 +02:00
Chocobozzz 40e87e9ecc Implement captions/subtitles 2018-07-16 11:50:08 +02:00
Chocobozzz e4f0e92e75
Fix client error logging 2018-07-09 15:56:02 +02:00
Chocobozzz 52d9f792b3
Client: Add ability to update video channel avatar 2018-06-29 14:34:04 +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 0c237b19fd
Fix images size limit 2018-06-22 15:42:55 +02:00
Chocobozzz 4d089429fe
Remove uneeded rxjs-compat 2018-06-18 11:02:24 +02:00
Chocobozzz e94fc29706
Fix removing scheduled update 2018-06-18 10:26:20 +02:00
Chocobozzz fc11a44ec9
Improve screen cache service 2018-06-18 10:26:20 +02:00
Chocobozzz bbe0f0645c
Add ability to schedule video publication 2018-06-15 18:20:56 +02:00
Chocobozzz 2186386cca
Add concept of video state, and add ability to wait transcoding before
publishing a video
2018-06-12 20:37:51 +02:00
Chocobozzz 74b7c6d48e
Little i18n refractoring 2018-06-06 17:37:13 +02:00
Chocobozzz 7ce44a74a3
Add server localization 2018-06-06 16:48:41 +02:00
Chocobozzz 0975cd5cf2
Translate tab heads 2018-06-05 16:31:52 +02:00
Chocobozzz e309822b93
Add form validator translations 2018-06-05 15:02:27 +02:00
Chocobozzz d18d64787b
Form validators refractoring 2018-06-05 10:58:45 +02:00
Chocobozzz 25acef90a8
Fix i18n in components 2018-06-05 09:13:26 +02:00
Chocobozzz b1d40cff89
Add i18n attributes 2018-06-05 08:43:01 +02:00
Chocobozzz 989e526abf
Prepare i18n files 2018-06-05 08:43:01 +02:00
Chocobozzz a51bad1acc
Add 404 page 2018-05-31 14:24:13 +02:00
Chocobozzz 74af5145f2
Video support field inherits channel support field 2018-05-25 18:32:53 +02:00
Chocobozzz ad9e39fb81
Only use account name in routes 2018-05-25 10:41:07 +02:00
Chocobozzz d14a9532a1
Handle account name in client url
More consistent with AP urls
2018-05-24 15:30:28 +02:00
Chocobozzz a4f99a766b
Add owner in video channel page 2018-05-23 11:38:18 +02:00
Chocobozzz f954b5da2a
Fix change detection in app component 2018-05-22 09:42:05 +02:00
Chocobozzz cd4d7a2ca8
Fix peertube with google bot 2018-05-22 09:17:20 +02:00
Chocobozzz 5f92c4dc5f
Add videos e2e tests 2018-05-17 15:20:21 +02:00
Chocobozzz 5fcbd89841
Fix typings 2018-05-16 11:06:33 +02:00
Chocobozzz 1335920348
Fix rxjs throw 2018-05-16 10:51:03 +02:00
Chocobozzz 5f73f5da1d
Fix concurrent requests in videos list 2018-05-16 10:51:01 +02:00
Chocobozzz 2efd32f697
Fix updating video tags to empty field 2018-05-16 09:42:56 +02:00
Chocobozzz e998cf3cc7
Fix some components after Angular 6 upgrade 2018-05-16 09:42:54 +02:00
Chocobozzz db400f447a
Upgrade to rxjs 6 2018-05-16 09:42:54 +02:00
Chocobozzz 136cce4d67
Use publishedAt by default in videos sort 2018-05-15 08:47:47 +02:00
Chocobozzz 0f320037e6
Add ability to update a video channel 2018-05-11 15:25:51 +02:00
Chocobozzz 8be1afa12b
Add ability to embed a video in Twitter
The instance should be whitelisted first
2018-05-11 08:48:20 +02:00
Chocobozzz a077482fb7
Add overflow on markdown textaera 2018-05-11 08:48:20 +02:00
Chocobozzz b17e8d8975
Avoid ... for delete/edit buttons in admin panel 2018-05-09 14:22:42 +02:00
Chocobozzz a10fc78bb0
Fix video channel description/support max length 2018-05-09 13:32:44 +02:00
Chocobozzz 360329cc02
Account/channel descriptions are not required anymore 2018-05-09 11:41:18 +02:00
Gérald Niel acf24c7497 Fix #546 (I hope!) 2018-05-09 09:30:17 +02:00
Chocobozzz 47f8de2834
Fix error message on token expiration 2018-05-07 18:41:10 +02:00
Chocobozzz 08c1efbe32
Add video channel management 2018-04-26 16:18:01 +02:00
Chocobozzz ed56ad1193
Add ability to update the user display name/description 2018-04-26 10:03:40 +02:00
Chocobozzz 170726f523
Implement video channel views 2018-04-25 16:56:13 +02:00
Chocobozzz d3e91a5f72
Add video channel account list 2018-04-25 15:43:19 +02:00
Chocobozzz 03e12d7c49
Add account link in videos list 2018-04-25 14:32:19 +02:00
Chocobozzz 6b738c7a31
Video channel API routes refractor 2018-04-25 13:50:48 +02:00
Chocobozzz 0626e7af82
Add account view 2018-04-24 15:13:19 +02:00
Chocobozzz 9d3ef9fe05
Use ISO 639 for languages 2018-04-23 14:39:52 +02:00
Chocobozzz 2a2c19dfef
Replace current state when changing page 2018-04-20 14:27:30 +02:00
Chocobozzz 2243730c8e
Add information concerning video privacy in my videos list 2018-04-19 14:52:10 +02:00
Chocobozzz 41f657c570
Add help concerning NSFW videos in upload 2018-04-19 11:47:02 +02:00
Chocobozzz 0883b3245b
Add ability to choose what policy we have for NSFW videos
There is a global instance setting and a per user setting
2018-04-19 11:01:34 +02:00
Chocobozzz 04ed10b21e
Use popover for help component 2018-04-18 16:29:15 +02:00
Chocobozzz 7b87d2d514
Handle sort in rss 2018-04-17 10:56:27 +02:00
Chocobozzz cc1561f9f7
Simplify client syndications 2018-04-17 10:35:08 +02:00
Rigel Kent 244e76a552
feature: initial syndication feeds support
Provides rss 2.0, atom 1.0 and json 1.0 feeds for videos (instance and account-wide) on listings and video-watch views.

* still lacks redis caching
* still lacks lastBuildDate support
* still lacks channel-wide support
* still lacks semantic annotation (for licenses, NSFW warnings, etc.)
* still lacks love ( ˘ ³˘)

* RSS: has MRSS support for torrent lists!
* RSS: includes the first torrent in an enclosure
* JSON: lists all torrents in the 'attachments' object
* ATOM: lacking torrent listing support

Advances #23
Partial implementation for the accountId generation in the client, which will need a hotfix to add a way to get the proper account id.
2018-04-17 01:09:06 +02:00
Chocobozzz a8462c8e3a
Automatic resolution according to user bandwidth V1 2018-04-05 16:15:51 +02:00
Julien Le Bras 2922e048de Add publishedAt field for video model.
* New field added in the `video` table + migration script

* `publishedAt` updated to NOW when privacy changes from private to
  public/unlisted (default = NOW)

* Models updated to handle the new attribute

* Client interface updated to use `publishedAt` instead of `createdAt`
  except in My Account > My Videos view
2018-03-30 08:52:58 +02:00
Chocobozzz 490b595a01
Prevent brute force login attack 2018-03-29 11:03:30 +02:00
Chocobozzz 2b084d7048
Add link to register in login form 2018-03-28 18:22:59 +02:00
Chocobozzz 5afdd0a52f
Add initial video quota info in registration form 2018-03-28 17:05:46 +02:00
Chocobozzz 2e78e2684c
Fix lint 2018-03-27 17:52:41 +02:00
Chocobozzz a86887a4b8
Fix my videos pagination 2018-03-27 17:37:26 +02:00
Chocobozzz 5b5e333f06
Fix videos list params 2018-03-27 17:10:56 +02:00
Chocobozzz 75236b9878
4 lines per page instead of 3 for videos list 2018-03-27 11:11:15 +02:00
Chocobozzz 53eb90c0ab
Fix check comments params unit tests 2018-03-26 09:48:20 +02:00
Gérald Niel d502231244 Fix #408 2018-03-25 16:07:39 +02:00
Chocobozzz 0bd78bf30b
Proxify local storage and handle if it is unavailable 2018-03-23 14:26:20 +01:00
jomo dce1d7957d fix #382 generic error when password is too long (#383) 2018-03-23 09:13:33 +01:00
Chocobozzz 1ff8d7d631
Fix pagination when videos take all the width 2018-03-21 17:28:15 +01:00
Chocobozzz 632c5e3629
More secure target blank links 2018-03-19 18:30:28 +01:00
Chocobozzz 9af61e8430
Don't forget to clean up subscriptions 2018-03-19 18:00:31 +01:00
Chocobozzz caae7a0671
Better handling video resizing 2018-03-19 17:16:53 +01:00
Chocobozzz 6194c1b419
Handle resizes on videos list 2018-03-19 16:18:41 +01:00
Chocobozzz 09700934b9
BEARKING CHANGE: Update videos API response
before beta
2018-03-19 11:04:40 +01:00
Lucas Declercq f6aec1b0f6 Update video duration string to show hours when duration greater than or equal 60min (#360)
* Update video duration string to show hours when >= 60min

* Only show hours in duration when relevant

* Fix problem with ternary expression

* Remove accidentally commited package-lock.json
2018-03-19 10:32:12 +01:00
Chocobozzz 2e3a0215d0
Add short description in config 2018-03-15 14:34:47 +01:00
Chocobozzz 066e94c538
Add "local" videos in menu 2018-03-13 10:24:28 +01:00
Chocobozzz b64c950a1c
Update videos api list for account 2018-03-12 11:44:28 +01:00
Chocobozzz 2c6bbd97d3
Improve infinite scroll 2018-03-09 09:22:35 +01:00
Chocobozzz 6a6d92b1ec
Fix infinite scroll 2018-03-08 10:46:12 +01:00
Chocobozzz 20b40b195a
Handle user rates in real time 2018-02-28 09:49:40 +01:00
Chocobozzz ab998f7b6d
Improve admin tables 2018-02-23 14:36:16 +01:00
Chocobozzz 621d99f53f
Better help on markdown fields 2018-02-23 10:05:17 +01:00
Chocobozzz 8a8e02a43e
Add help tooltip 2018-02-22 18:32:31 +01:00
Chocobozzz a9ca764e7e
Throttle infinite scroller 2018-02-22 16:41:02 +01:00
Chocobozzz 1f30a1853e
Add confirm when admin use custom js/css 2018-02-22 15:29:32 +01:00
Chocobozzz 6221f311de
Add ability to update another user video 2018-02-22 09:03:45 +01:00
Chocobozzz 3bf1ec2ebb
Hide support button if it is empty 2018-02-21 08:49:05 +01:00
Chocobozzz 07fa4c97ca
Add support to video support on client 2018-02-20 16:13:55 +01:00
Chocobozzz 5de8a55abc
Handle line feeds in comments 2018-02-20 10:41:11 +01:00
Chocobozzz 68e24d7279
Add loading bar when updating a video 2018-02-16 17:24:47 +01:00
Chocobozzz 6de3676898
Add ability to update thumbnail and preview on client 2018-02-16 16:35:32 +01:00
Chocobozzz 2422c46b27
Implement support field in video and video channel 2018-02-15 15:29:07 +01:00
Chocobozzz 3bcfff7f44
Fix video play promise error on non supported browsers 2018-02-14 18:04:30 +01:00
Chocobozzz 8cac1b6446
Move adding a video view videojs peertube plugin 2018-02-14 17:16:32 +01:00
Chocobozzz ac81d1a06d
Add ability to set video thumbnail/preview 2018-02-14 16:03:09 +01:00
Chocobozzz 0cd4344f3c
Rewrite infinite scroll 2018-02-13 14:20:46 +01:00
Chocobozzz d6bd50ba1d
Add background placeholder for thumbnails 2018-02-12 17:56:11 +01:00
Chocobozzz 3290f37c76
Video previews take all the width on mobile 2018-02-09 09:30:37 +01:00
Chocobozzz 7193ad1044
Add service worker 2018-02-08 17:31:05 +01:00
Chocobozzz 36f9424ff1
Add about page 2018-01-31 17:51:04 +01:00
Chocobozzz 66b16cafb3
Add new name/terms/description config options 2018-01-31 16:42:40 +01:00
Chocobozzz 61bbc72775
Fix human dates in result lists 2018-01-31 10:41:44 +01:00
Chocobozzz ecb4e35f4e
Add ability to reset our password 2018-01-30 13:27:07 +01:00
Chocobozzz 13fb4de93b
Add message on 413 http error code 2018-01-29 16:15:39 +01:00
Chocobozzz 6f6cdef7ec
25 items per page 2018-01-29 15:14:29 +01:00
Chocobozzz c88593f72f
Fix search pagination 2018-01-29 09:30:06 +01:00
Chocobozzz f6a043df74
Improve video upload guard a little bit 2018-01-25 19:09:47 +01:00
Dimitri Gilbert 529479f924 Issue #195 : When uploading, warn when the user quits the page (#222)
* issue #195

* fixing missing provider definition

* fix styling issue

* fix styling issue

* removed unecessary code

* using angular confirmService instead of window.confirm

* gitignore unecessary folders

* style fixes

* using a generic canDeactivateGuard

* fixing lint style
2018-01-25 18:40:23 +01:00
Chocobozzz fd206f0b2d
Add ability to update some configuration keys 2018-01-17 10:41:27 +01:00
Chocobozzz cfe1efd200
Fix http token interceptor 2018-01-11 15:39:41 +01:00
Chocobozzz 60650c77c8
Add scores to follows and remove bad ones 2018-01-11 09:35:50 +01:00
Chocobozzz ce5496d6a3
Support video quota on client 2018-01-08 12:53:09 +01:00
Chocobozzz 76d36e0b35
Refractor account by 2018-01-08 10:35:54 +01:00
Benjamin Bouvier 57a49263e4 A few updates for the watch video view (#181)
* Fixes #156: Filter out the video being watched from the list of other videos of the same author;

* Fixes #167: in the video view, hide the author's domain when it's from the current host;

* Fixes #171: Allow undoing a like/dislike;
2018-01-07 14:48:10 +01:00
Chocobozzz 4cb6d45788
Add ability to delete comments 2018-01-04 11:19:16 +01:00
Chocobozzz 47564bbe2e
Add ability to disable video comments 2018-01-03 10:38:19 +01:00
Chocobozzz c5911fd347
Begin to add avatar to actors 2017-12-29 19:10:13 +01:00
Chocobozzz 4635f59d7c
Add video comment components 2017-12-27 16:11:53 +01:00
Chocobozzz fb4fd623d5
Better admin tables 2017-12-21 15:24:49 +01:00
Chocobozzz 6e33bf2882
Add no result text if there are no results 2017-12-21 11:09:46 +01:00
Chocobozzz 15a7387da8
Customize select 2017-12-20 14:29:55 +01:00
Chocobozzz 24a8e782d8
Add bootstrap analyzer and optimize build 2017-12-20 09:05: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 c893d4514e
Add beautiful loading bar 2017-12-12 14:57:46 +01:00
Chocobozzz b2731bff28
Small style fixes 2017-12-12 14:41:59 +01:00
Chocobozzz b682782093
Upgrade to angular 5 2017-12-12 13:58:03 +01:00
Chocobozzz 63c4db6d71
Move to angular cli 2017-12-12 10:58:16 +01:00
Chocobozzz 3daf400219
Responsive homepage 2017-12-11 08:50:43 +01:00
Chocobozzz f595d39477
Finish admin design 2017-12-08 17:31:21 +01:00
Chocobozzz e600e1fea2
Design follow admin page 2017-12-08 15:22:57 +01:00
Chocobozzz cd83ea1b90
Design admin data tables 2017-12-08 14:34:17 +01:00
Chocobozzz cadb46d832
Design second video upload step 2017-12-08 09:57:29 +01:00
Chocobozzz c182778e26
Add progress bar for video upload 2017-12-07 17:56:59 +01:00
Chocobozzz ff249f499c
Move video form inside a component 2017-12-07 11:15:19 +01:00
Chocobozzz 0727cab0df
Design video watch modals 2017-12-07 10:28:20 +01:00
Chocobozzz 6a9e1d42f8
Add likes/dislikes bar 2017-12-06 18:04:40 +01:00
Chocobozzz b1fa3eba70
Begin video watch design 2017-12-06 17:15:59 +01:00
Chocobozzz a2b817d322
Better error messages 2017-12-06 09:19:25 +01:00
Chocobozzz f3aaa9a95c
Fix client search 2017-12-05 18:25:29 +01:00
Chocobozzz d235f6b0d1
Design signup and login pages 2017-12-05 16:48:26 +01:00
Chocobozzz 6bafac54bf
Fix missing default avatar 2017-12-05 15:12:03 +01:00
Chocobozzz 62e23e40da
Fix client build 2017-12-04 11:40:45 +01:00
Chocobozzz be44767854
Fix lint 2017-12-04 11:17:08 +01:00
Chocobozzz d2cc03aaad
Design account videos 2017-12-04 11:04:08 +01:00
Chocobozzz 2295ce6c4e
Add account avatar 2017-12-04 10:34:40 +01:00
Chocobozzz 202f6b6c9d
Begin videos of an account 2017-12-01 18:56:26 +01:00
Chocobozzz c30745f342
Add account settings new design 2017-12-01 17:38:26 +01:00
Chocobozzz 2bbb34127f
Add auto scroll to videos list 2017-12-01 16:17:32 +01:00
Chocobozzz 9bf9d2a5c2
Begin videos list new design 2017-12-01 14:46:22 +01:00
Chocobozzz 26c6ee80d0
Implement header design 2017-12-01 13:15:53 +01:00
Chocobozzz b33f657c30
Begin new menu design 2017-12-01 10:55:56 +01:00
Chocobozzz 80958c78fd
Add loader when expanding long video description 2017-11-28 17:13:51 +01:00
Chocobozzz 1e1265b36c
Make the client compile too 2017-11-27 19:40:51 +01:00
Chocobozzz a01f107bc4
Improve client mobile version 2017-11-06 11:46:11 +01:00
Chocobozzz 563d032e97
Usernames are case insensitive now 2017-11-04 18:32:38 +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 757f0da370
Add tests to user roles 2017-10-27 17:27:06 +02:00
Chocobozzz 954605a804
Support roles with rights and add moderator role 2017-10-27 16:55:03 +02:00
Chocobozzz a265f7f30f
Increase video attributes length
Number of tags: 3 -> 5
Tag length: 10 -> 30
Video name: 50 -> 120
Video channel name: 50 -> 120
2017-10-26 15:52:11 +02:00
Chocobozzz bcd9f81eff
Add channels to upload form 2017-10-26 09:11:38 +02:00
Chocobozzz 404b54e14f
Adapt client with 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
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 35bf0c83c8
Video blacklist refractoring 2017-10-10 10:18:16 +02:00
Chocobozzz c9d6d155c3 Fix login when there is an error 2017-09-15 12:26:02 +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 d592e0a9b2 Move to HttpClient and PrimeNG data table 2017-09-14 11:57:49 +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 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 42374cf5d4 Fix client admin 2017-06-25 11:35:09 +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 1840c2f7c9 Update webpack stack 2017-06-11 15:19:43 +02:00
Chocobozzz 69f616ab3a Use shared models 2017-06-11 11:02:35 +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 c689fcdca2 Client: use builtin email validator 2017-04-26 21:22:51 +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 a184c71b52 Client: support signup 2017-04-10 20:29:33 +02:00
Chocobozzz db216afd98 Client: support video language 2017-04-07 14:57:05 +02:00
Chocobozzz af5e743b01 Client: add ability for user to change nsfw settings 2017-04-06 21:21:03 +02:00
Chocobozzz 92fb909c9b Client: Handle NSFW video 2017-04-04 21:37:03 +02:00
Chocobozzz d07137b90b Client: add support for video licences 2017-03-27 21:11:37 +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 e2a2d6c86c Client: check token valitidy at startup 2017-03-04 11:45:47 +01:00
Chocobozzz 99fdec4648 Fix request schedulers stats 2017-02-27 21:56:55 +01:00
Chocobozzz ad4a8a1cca Add email to users 2017-02-18 09:29:59 +01:00
Chocobozzz 7af75da41b Client: fix lint 2017-02-10 11:52:45 +01:00
Chocobozzz 28798b5d94 Client: replace simple tables by ng2 smart table component 2017-01-30 22:41:14 +01:00
Chocobozzz 11ac88de40 Client: add basic support to report video abuses 2017-01-23 22:18:53 +01:00
Chocobozzz 4f8c0eb0e9 Client: add ability to report a video 2017-01-20 19:22:15 +01:00
Chocobozzz c16ce1de8e Client: add basic aot support 2017-01-13 12:16:00 +01:00
Chocobozzz d396a937b6 Client: upgrade angular dep' 2016-12-29 17:34:29 +01:00
Chocobozzz feb4bdfd9b First version with PostgreSQL 2016-12-19 21:22:28 +01:00
Chocobozzz bf57d5eebf Client: try to improve ux for the upload form 2016-11-27 18:10:26 +01:00
Chocobozzz 447fde2774 Client: improve host regex 2016-11-27 17:45:00 +01:00
Chocobozzz 693b1aba46 Client: split in angular modules 2016-11-21 22:09:45 +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 c0a89c46ef Client: fix handle refresh token 2016-11-04 11:54:36 +01:00
Chocobozzz 2ac6c52560 Client: fix search dropdown 2016-10-13 21:59:19 +02:00
Chocobozzz 1a00504203 Client: fix progress bar and tags validation issues 2016-10-07 14:52:18 +02:00
Chocobozzz a6375e6966 Merge branch 'master' into webseed-merged 2016-10-02 15:39:09 +02:00
Chocobozzz d86099204c Client: add some explanations if we cannot retrieve client oauth
credentials
2016-10-01 12:19:48 +02:00
Chocobozzz 14ad0c276b Client: handle the case when the refreshing token step fails 2016-10-01 09:20:42 +02:00
Chocobozzz 44c5275e1b Client: fix compilation about the user created date 2016-09-23 17:34:18 +02:00
Chocobozzz b539c9b34c Client: display created user date 2016-09-23 17:20:15 +02:00
Chocobozzz ec8d8440a8 Client: use templateUrl/styleUrls instead of require 2016-09-19 22:49:31 +02:00
Chocobozzz 4b2f33f3c6 Client: reactive forms 2016-09-09 22:16:51 +02:00
Chocobozzz ab32b0fc80 Dirty update to Angular RC6 2016-09-06 22:40:57 +02:00
Chocobozzz bf68dd752d Client: fix error display for component 2016-08-23 17:42:56 +02:00
Chocobozzz de59c48f5f Client: centralize http res extraction in a service 2016-08-23 16:54:21 +02:00
Chocobozzz 9e8aa10d94 Client: change url validation for friend add 2016-08-23 15:49:16 +02:00
Chocobozzz 9aa46b0c7b Client: navigate to /videos/list when do search on another page 2016-08-21 11:21:45 +02:00
Chocobozzz c323efb9cd Update webtorrent -> 0.96 2016-08-12 17:35:10 +02:00
Chocobozzz 7da18e4420 Client: add user management 2016-08-09 21:45:21 +02:00
Chocobozzz 629d8d6f70 Client: implement password change 2016-08-05 18:04:08 +02:00
Chocobozzz 6606150c49 Server: move clients in its own file 2016-08-05 16:09:39 +02:00
Chocobozzz e62f6ef741 Client: fix login state when logout 2016-07-27 21:38:09 +02:00
Chocobozzz 724fed2931 Client: fix login state when logout 2016-07-27 21:16:19 +02:00
Chocobozzz 0f3a78e7ea Client: Auth services cleanup 2016-07-20 16:40:28 +02:00
Chocobozzz bd5c83a8cb Client: Add authHttp service that authentificates the http request and
optionally refresh the access token if needed
2016-07-20 16:25:06 +02:00
Chocobozzz bddab65ae5 Client: save page params as well 2016-07-18 15:39:10 +02:00
Chocobozzz 0629423ce3 Client: Update to Angular RC4 2016-07-18 14:26:56 +02:00
Chocobozzz 70af9a0d4f Fix router on / 2016-06-10 22:08:39 +02:00
Chocobozzz 641f98b2ee Don't make a search when the field is changed and the value is empty 2016-06-10 18:18:29 +02:00
Chocobozzz 00a446454d Add tags support to the video list 2016-06-10 17:46:29 +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 5555f886c0 Do not import whole rxjs 2016-06-05 09:34:41 +02:00
Chocobozzz 4a6995be18 First draft to use webpack instead of systemjs 2016-06-03 22:08:03 +02:00