Commit Graph

2163 Commits

Author SHA1 Message Date
Chocobozzz 31c82cd914 Fix replay saving 2020-11-09 15:33:04 +01:00
Chocobozzz b5b687550d Add ability to save live replay 2020-11-09 15:33:04 +01:00
Chocobozzz ef680f6835 Save 2020-11-09 15:33:04 +01:00
Chocobozzz fb7194043d Check live duration and size 2020-11-09 15:33:04 +01:00
Chocobozzz a5cf76afa3 Add watch messages if live has not started 2020-11-09 15:33:04 +01:00
Chocobozzz de6310b2fc Handle live federation 2020-11-09 15:33:04 +01:00
Chocobozzz 1ef65f4c03 Refactor video creation 2020-11-09 15:33:04 +01:00
Chocobozzz c6c0fa6cd8 Live streaming implementation first step 2020-11-09 15:33:04 +01:00
Kimsible 98b9464312
render html/markdown for new comment notification email (#3255)
Co-authored-by: kimsible <kimsible@users.noreply.github.com>
Co-authored-by: Rigel Kent <sendmemail@rigelk.eu>
2020-11-07 22:59:58 +01:00
Rigel Kent 44fb529740
add node-youtube-dl download host env var in auto-updater 2020-10-24 12:42:06 +02:00
Girish Ramakrishnan 313921b50f Fix transcoding errors in readonly docker containers
ffmpeg seems to create some temporary files in the cwd. When PeerTube
is run in a read-only docker container, this causes all transcoding
to fail. As a workaround, we set the cwd to the configured tmp dir.
2020-10-23 14:51:44 +02:00
Chocobozzz fb0f7f82e5
Fix re webtorrent transcoding 2020-09-09 10:14:33 +02:00
Chocobozzz 865af3fd7b
Add site_name to opengraph tags 2020-09-04 09:52:38 +02:00
Chocobozzz 3e3ae9668b
Increase videos search before test timeout 2020-08-28 08:23:15 +02:00
Chocobozzz 6055411221
Fix abuse reportee search query 2020-08-26 15:44:19 +02:00
Chocobozzz 25ae21107c
Fix tests 2020-08-26 15:22:26 +02:00
Chocobozzz 20dcfd7498
Deprecate old static routes 2020-08-26 15:03:00 +02:00
Chocobozzz 2199aaef6f
Remove debug 2020-08-26 09:38:22 +02:00
Chocobozzz e6abf95e9f
Add redirection on unavailable video due to follow constraints 2020-08-26 09:14:14 +02:00
Chocobozzz 50fcdebdb1
Update server dependencies 2020-08-25 13:54:59 +02:00
Chocobozzz 07491f4b98 Add fixtures cache to github actions 2020-08-24 18:54:37 +02:00
Chocobozzz a293ac71d8
Fix lint 2020-08-24 16:21:16 +02:00
Chocobozzz de97d62109
Remove debug logs 2020-08-24 16:13:38 +02:00
Chocobozzz 97816649b7
Fix RSS feed when HLS only is enabled 2020-08-24 16:11:37 +02:00
Chocobozzz 74055dc882
Fix tests 2020-08-24 14:11:15 +02:00
Chocobozzz 8b6f0fd53d
Reorganize a little bit tests 2020-08-24 13:53:45 +02:00
Chocobozzz 1f5221fb4a
Move html injection plugin tests in its own file 2020-08-24 13:37:49 +02:00
Chocobozzz b0ce7c39dc
Add ssl support to postgresql 2020-08-24 11:38:57 +02:00
Chocobozzz 4f24f16e27
Better error message on postgresql connection err 2020-08-24 11:34:15 +02:00
Chocobozzz cf649c2ed9
Inject plugin CSS in embed too 2020-08-24 11:25:40 +02:00
Chocobozzz 5505981154
Fix auth add cli examples 2020-08-24 09:57:58 +02:00
Chocobozzz 7294aab0c8 Add ability to set custom field to video form 2020-08-21 15:39:51 +02:00
Chocobozzz 8054669f11
Optimize default sort when listing videos
createdAt does not have the appropriate index
2020-08-20 11:05:45 +02:00
Chocobozzz 1c58423f6c
Optimize comment RSS sql query 2020-08-20 11:05:45 +02:00
Chocobozzz 65b19fa479
Increase user notification test timeouts 2020-08-19 11:43:10 +02:00
Chocobozzz cbb513e737 Add server migration for playlists 2020-08-19 11:30:21 +02:00
Chocobozzz 371906639e Add ability to a video multiple times in a playlist 2020-08-19 11:30:21 +02:00
Rigel Kent b056afe0ac
add .ac3, .aac audio and more video extensions 2020-08-18 09:54:05 +02:00
Chocobozzz e9c5f12338
Do not reuse reset password links 2020-08-12 09:16:08 +02:00
Chocobozzz 07c01b3154
Add kabile to supported languages 2020-08-11 09:41:57 +02:00
kimsible 766d13b447 Make channelName optionnal in tests only and validators
Fix tests channel displayName

Make channelName in createUser optionnal on server side to not break api

Fix auto channelName with createUser in tests
2020-08-11 08:46:35 +02:00
kimsible 69db147043 Make channelName optionnal only for the API 2020-08-11 08:46:35 +02:00
kimsible 4e68fc8605 Add validator channelName for create-user api 2020-08-11 08:46:35 +02:00
kimsible 3d215dc5f9 Add channelName to user-create server-side and models 2020-08-11 08:46:35 +02:00
Chocobozzz 30bc55c88b Refactor video extensions logic in server 2020-08-11 07:57:20 +02:00
Rigel Kent fccbbc1a77 add and document new additional video extensions supported at upload 2020-08-10 09:46:59 +02:00
Chocobozzz b96777c380
Fix twitter embed 2020-08-07 14:53:01 +02:00
Chocobozzz 951b582f52
Add ability to share playlists in modal 2020-08-07 13:43:48 +02:00
Chocobozzz 6fad8e51c4 Handle playlist oembed 2020-08-07 08:58:29 +02:00
Chocobozzz 9054a8b6e5 Handle playlist methods in embed api 2020-08-07 08:58:29 +02:00
Chocobozzz 5abc96fca2 Add logic to handle playlist in embed 2020-08-07 08:58:29 +02:00
Chocobozzz a02b93ce75 Fix lint 2020-08-07 08:28:14 +02:00
Chocobozzz bd45d503e5 Reorganize shared models 2020-08-07 08:28:14 +02:00
Chocobozzz 583eb04b54 Upgrade to angular 10 2020-08-07 08:28:14 +02:00
Chocobozzz dca0fe12ec
Fix resolution for portrait videos 2020-08-03 16:03:52 +02:00
Chocobozzz cb4eb74485
Increase redundancy check params timeout 2020-07-31 16:18:40 +02:00
Chocobozzz d7b1c7b4f1
Fix video only HLS on ios 2020-07-31 13:49:36 +02:00
Chocobozzz 39433fa56c
Fix client tests 2020-07-31 13:20:25 +02:00
Chocobozzz 41130b4ce3 Fix tests 2020-07-31 11:35:19 +02:00
Chocobozzz 668b7f096e Add openapi doc 2020-07-31 11:35:19 +02:00
Chocobozzz d573926e9b Add migrations for abuse messages 2020-07-31 11:35:19 +02:00
Chocobozzz 594d3e48d8 Add abuse messages/states notifications 2020-07-31 11:35:19 +02:00
Chocobozzz 94148c9028 Add abuse messages management in my account 2020-07-31 11:35:19 +02:00
Chocobozzz 441e453ae5 Add abuse message management in admin 2020-07-31 11:35:19 +02:00
Chocobozzz edbc932546 Add server API to abuse messages 2020-07-31 11:35:19 +02:00
Chocobozzz 20516920d2 Increase timeout for moderation notifications 2020-07-31 11:32:04 +02:00
Chocobozzz f9d2deae3a Correctly test ldap 2020-07-31 11:32:04 +02:00
Chocobozzz f4659d73fb Don't run in parallel cli and plugin tests 2020-07-31 11:32:04 +02:00
Chocobozzz 7abb5c5da1 Use parallel to run tests in parallel 2020-07-31 11:32:04 +02:00
Chocobozzz b488ba1e26 Don't rely on youtube for tests
Use another import URL when possible, and disable import tests when we
want to do a youtube import test
2020-07-31 11:32:04 +02:00
Kim 8d987ec63e
Add fcbk open-graph and twitter-card metas for accounts, video-channels, playlists urls (#2996)
* Add open-graph and twitter-card metas to accounts and video-channels

* Add open-graph and twitter-card to video-playlists watch view

* Refactor meta-tags creation server-side

* Add client.ts tests for account, channel and playlist tags

* Correct lint forbidden spaces

* Correct test regression on client.ts

Co-authored-by: kimsible <kimsible@users.noreply.github.com>
2020-07-31 11:29:15 +02:00
Rigel Kent 7b3909644d test search for subscriptions and video-channels 2020-07-29 18:15:53 +02:00
Rigel Kent 225a7682e6 adapt notifications buttons for small screens 2020-07-29 18:15:53 +02:00
Rigel Kent 4f5d045960 harmonize search for libraries 2020-07-29 18:15:53 +02:00
Rigel Kent bc99dfe54e variable columns for users list, more columns possible, badge display for statuses 2020-07-29 18:15:53 +02:00
Rigel Kent 654a188f80 allow sorting notifications 2020-07-29 18:15:53 +02:00
Chocobozzz ec903c010e
Merge branch 'release/2.3.0' into develop 2020-07-20 17:00:58 +02:00
kimsible 963023abe6 Fix: display username in password-reset and verify-email notifs 2020-07-20 16:56:32 +02:00
Chocobozzz 677ea3c084
Relax migrations 2020-07-11 08:58:06 +02:00
Chocobozzz 17aa80ed01
Merge branch 'release/2.3.0' into develop 2020-07-10 15:23:31 +02:00
Chocobozzz 1dee8d68cb
Fix video import tests 2020-07-10 14:56:17 +02:00
Chocobozzz 1878224214
Handle webp images from youtube-dl 2020-07-10 14:54:11 +02:00
Chocobozzz cfde28bac3 Add ability to report account 2020-07-10 14:02:41 +02:00
Chocobozzz 8ca56654a1 Add ability to report comments in front end 2020-07-10 14:02:41 +02:00
Chocobozzz 310b5219b3 Add new abuses tests 2020-07-10 14:02:41 +02:00
Chocobozzz 811cef146c Use raw sql for abuses 2020-07-10 14:02:41 +02:00
Chocobozzz 4f32032fed Add migrations 2020-07-10 14:02:41 +02:00
Chocobozzz 57f6896f67 Implement abuses check params 2020-07-10 14:02:41 +02:00
Chocobozzz d95d155988 Use 3 tables to represent abuses 2020-07-10 14:02:41 +02:00
Chocobozzz 1fdf8edb77
Fix lint 2020-07-10 10:51:07 +02:00
Kim caf2aaf4f9
Add ability to override client assets : logo - favicon - PWA icons - PWA manifest name and description (#2897)
* Add client-overrides storage to config

* Add static-serve for client overrides

* Move backgroun-image logo from bundle to css tag for runtime content hash

* Add dynamic JSON manifest

* Add content hash for manifest, favicon and logo

Co-authored-by: kimsible <kimsible@users.noreply.github.com>
2020-07-10 10:20:11 +02:00
Rigel Kent ea7337cfde
add check-params test for user list
fixes #2918
2020-07-03 10:29:03 +02:00
Rigel Kent 8491293b02
add blocked filter in users list to filter banned users
fixes #2914
2020-07-02 22:50:33 +02:00
Chocobozzz 1e904cde34
Fix users tests 2020-07-02 14:23:50 +02:00
Rigel Kent b8b3abac6a
fix change ownership typing 2020-06-28 22:45:27 +02:00
Rigel Kent d473fd94ce
allow muting from the miniature options
initial implementation with a listing refresh except on search results
2020-06-28 16:55:17 +02:00
Rigel Kent 4c9e9d2ee9
align ownership change video list table with moderation tables 2020-06-28 16:20:23 +02:00
Rigel Kent 00494d6e2a
allow limiting video-comments rss feeds to an account or video channel 2020-06-27 13:20:59 +02:00
Rigel Kent 2c31866430
update openapi spec with links and callback for search 2020-06-27 13:12:34 +02:00
Chocobozzz 7820a54e5e
Close mock blocklit server when tests end 2020-06-26 14:51:01 +02:00
Chocobozzz db48de8597
Block infohash spammers from tracker 2020-06-25 16:28:07 +02:00
Chocobozzz d4bf24df8e
Add auto block videos plugin tests 2020-06-25 16:28:07 +02:00
Girish Ramakrishnan 6ee7221117 Add database.name config option
If database.name is set, we use it as the complete database name.
If unset, we use the "peertube"+database.suffix as the complete database
name.

Fixes #1620
2020-06-25 08:48:44 +02:00
Chocobozzz 67ed6552b8 Reorganize client shared modules 2020-06-23 16:00:49 +02:00
Rigel Kent 1ebddadd07
predefined report reasons & improved reporter UI (#2842)
- added `startAt` and `endAt` optional timestamps to help pin down reported sections of a video
- added predefined report reasons
- added video player with report modal
2020-06-22 13:00:39 +02:00
Chocobozzz 07aea1a264
Use TS_NODE_FILES instead of --files
Because --files does not work
2020-06-18 17:14:02 +02:00
Chocobozzz c24aac6bc7
Fix tests 2020-06-18 13:39:13 +02:00
Chocobozzz 26d6bf6533
Split types and typings 2020-06-18 10:46:27 +02:00
Chocobozzz 67c604ae69
Fix server build 2020-06-17 12:42:16 +02:00
Chocobozzz faa9d434b4
Update server dependencies 2020-06-17 11:42:50 +02:00
Chocobozzz 982f2fc9b4
Correctly fix subtitles import 2020-06-17 09:42:00 +02:00
Chocobozzz 8eb07b0130
Split notification tests 2020-06-16 15:55:42 +02:00
Chocobozzz 1ba471c55f
Add videos count in channels list 2020-06-16 14:13:01 +02:00
Chocobozzz c7763eddd1
Fix getSubs import 2020-06-16 11:26:46 +02:00
John Livingston 212e17a189 Logging ip requesting unknown infoHash 2020-06-15 15:43:11 +02:00
Chocobozzz fd261a8de9
Fix video view filename 2020-06-15 15:18:54 +02:00
Chocobozzz ba11402435
Fix global search nsfw policy when logged in 2020-06-15 15:04:51 +02:00
Chocobozzz 1a40132c67
Use default nsfw instance policy for search index 2020-06-12 16:27:41 +02:00
Chocobozzz 5a61ffbb7c
Optimize views per day in video channels 2020-06-12 16:27:41 +02:00
Chocobozzz e74bda21d1
Speed up videos indexation
And fetch video attributes after
2020-06-12 16:27:41 +02:00
Chocobozzz 8b381422b8
Fix lint 2020-06-12 08:27:59 +02:00
Rigel Kent 3487330d30
preserve original variable names server-side 2020-06-10 21:12:09 +02:00
Rigel Kent 5baee5fca4
rename blacklist to block/blocklist, merge block and auto-block views
- also replace whitelist with allowlist
- add advanced filters for video-block-list view
- move icons in video-block-list and video-abuse-list to left side
for visibility
- add robot icon to depict automated nature of a block in
video-block-list

resolves #2790
2020-06-10 21:12:05 +02:00
Chocobozzz f9b6d51f48
Fix tests 2020-06-10 15:35:20 +02:00
Chocobozzz 3521ab8fc0 Add search index tests 2020-06-10 14:02:41 +02:00
Chocobozzz 3b0bd70aa0 Add search target check params 2020-06-10 14:02:41 +02:00
Chocobozzz f046e2fa5c Fix video follow SQL 2020-06-10 14:02:41 +02:00
Chocobozzz 5fb2e2888c First implem global search 2020-06-10 14:02:41 +02:00
Rigel Kent 62e7be634b change fixtures to reflect output size of jimp 2020-06-10 14:01:49 +02:00
Rigel Kent e6dfa58689 space optimizations for `node_modules` and client stats removal
- replace sharp with lighter jimp alternative
- remove stats in builds

fixes #2807
2020-06-10 14:01:49 +02:00
Chocobozzz b84d4c809f
Fix video comments feed SQL query 2020-06-09 14:52:55 +02:00
Chocobozzz 4282dafc82
Add AP icons breaking change 2020-06-04 15:22:08 +02:00
Chocobozzz 5cb9f0f4f7
Send complete video description in AP messages 2020-06-04 15:17:20 +02:00
Chocobozzz 5072b90922
Sort AP files by resolution desc 2020-06-04 15:03:30 +02:00
Rigel Kent 81fe3c67c5 fix duplicate id in svg, empty alt in base email 2020-06-04 09:05:44 +02:00
Levi Bard 3092e9bbb0
Make federation of unlisted videos an instance-level server preference (#2802)
* Add preference for federating unlisted videos

* Connect unlisted video federation with new preference

* Apply pull request feedback

* Fix lint issues

* Remove preference for federating unlisted videos from web admin interface
2020-06-03 09:42:07 +02:00
Chocobozzz 78646451c9
Don't cache embed HTML file 2020-06-02 17:15:24 +02:00
Chocobozzz b763f88dd0
Merge branch 'release/2.2.0' into develop 2020-06-02 09:31:30 +02:00
Chocobozzz 03fc19281b
Fix emails 2020-06-02 09:21:33 +02:00
Chocobozzz 696d83fd13 Block comments from muted accounts/servers
Add better control for users of comments displayed on their videos:

 * Do not forward comments from muted remote accounts/servers (muted by the current server or by the video owner)
 * Do not list threads and hide replies (with their children) of accounts/servers muted by the video owner
 * Hide from RSS comments of muted accounts/servers by video owners

Use case:
  * Try to limit spam propagation in the federation
  * Add ability for users to automatically hide comments on their videos from undesirable accounts/servers (the comment section belongs to videomakers, so they choose what's posted there)
2020-05-29 09:32:20 +02:00
Chocobozzz 72c33e716f Support broadcast messages 2020-05-29 09:32:12 +02:00
Chocobozzz 8adf0a767f Fix comments deleted display 2020-05-29 09:21:26 +02:00
Chocobozzz 444c0a0e01 Add ability to bulk delete comments 2020-05-29 09:21:26 +02:00
Chocobozzz d2a5c4e150
Fix broken migration introduced in 2.2.0-rc.1 2020-05-25 08:59:59 +02:00
Chocobozzz 9a7fd9600b
Fix external auth email/password update
Also check if an actor does not already exist when creating the user
2020-05-20 10:17:27 +02:00
Chocobozzz 51539e95d9
Fix migrations 2020-05-18 09:43:36 +02:00
Rigel Kent 2158ac9034
Add server plugin filter hooks for import with torrent and url (#2621)
* Add server plugin filter hooks for import with torrent and url

* WIP: pre and post-import filter hooks

* Rebased

* Cleanup filters to accept imports

Co-authored-by: Chocobozzz <me@florianbigard.com>
2020-05-14 11:10:26 +02:00
Chocobozzz 7405b6ba89
Add missing channel playlists AP endpoint 2020-05-13 14:49:11 +02:00
Chocobozzz a06581f296
Fix tests 2020-05-13 11:57:34 +02:00
Chocobozzz 9934b6f31e
Add missing playlist and playlistElement types in AP context 2020-05-13 10:53:18 +02:00
Chocobozzz 2ca154da93
Fix auto follow index URL 2020-05-12 09:37:39 +02:00
Chocobozzz d253bfaaa5
Add other tests to external auth 2020-05-11 18:32:58 +02:00
Chocobozzz c9215a1be0
Update code contributors 2020-05-11 13:43:56 +02:00
Chocobozzz 0f06c4de69
Add unique key on actor preferredUsername 2020-05-11 11:06:12 +02:00
Chocobozzz 95cd31f1fe
Allow to auto follow a specific URL 2020-05-11 10:53:06 +02:00
Chocobozzz 3a7a261f33
Add test for auto mute list router 2020-05-11 10:15:56 +02:00
Chocobozzz 81c647ff19
Cleanup oauth tokens cache 2020-05-11 08:40:38 +02:00
Rigel Kent 1d26d05fd9 Align follower handle display on instance display in tables 2020-05-08 15:31:51 +02:00
Rigel Kent df4c603dea Switch emails to pug templates and provide richer html/text-only versions 2020-05-08 15:31:51 +02:00
Chocobozzz 91b8e675e2
Improve auto mute tests 2020-05-07 17:08:16 +02:00
Chocobozzz 716adfaed6
Fix refresh token 2020-05-07 16:36:04 +02:00
Chocobozzz 8bff1fe009
Add auto mute plugin tests 2020-05-07 16:34:09 +02:00
Chocobozzz faf174d043
Fix CLI build 2020-05-07 15:40:22 +02:00
Chocobozzz 80fdaf0645
Add moderation helpers to plugins 2020-05-07 15:07:01 +02:00
Chocobozzz 3cc665f48f
Add last login date to users 2020-05-07 10:39:09 +02:00
Chocobozzz feb34f6b6b Use video abuse filters on client side 2020-05-07 08:33:34 +02:00
Chocobozzz 1df8a4d79a
Fix comments feed with musted accounts 2020-05-06 14:12:12 +02:00
Chocobozzz fc8aabd0bf
parseQueryStringFilter cleanup 2020-05-06 10:31:52 +02:00
Chocobozzz ceba0e65d4
Fix lint 2020-05-06 08:48:06 +02:00
Chocobozzz fde37dc99c
Add ability for video owners to delete comments 2020-05-05 17:22:11 +02:00
Chocobozzz 298b3fd315
Increase video comments limit 2020-05-05 16:48:30 +02:00
Chocobozzz 4c576aca1c
Fix playlist description length 2020-05-05 16:34:50 +02:00
Chocobozzz 1c32067367
Fix HLS audio only transcoding 2020-05-05 16:27:46 +02:00
Chocobozzz 7139845894
Sort outbox by desc created at order 2020-05-05 14:08:07 +02:00
Chocobozzz 8bb71f2e33
Add auth plugin info in users list 2020-05-05 13:54:30 +02:00
Rigel Kent 5140edafeb
Fix plugin-auth migration 2020-05-05 13:52:10 +02:00
Chocobozzz 7557704eec
Fix compat with peertube 2.1 2020-05-05 09:15:41 +02:00
Chocobozzz 97b65ce58a Fix plugin storeData 2020-05-04 16:21:39 +02:00
Chocobozzz 15b4bcdf04 Fix plugin get settings 2020-05-04 16:21:39 +02:00
Chocobozzz 5644f9b035 Accept numbers in plugin names 2020-05-04 16:21:39 +02:00
Chocobozzz bc90883f1a Handle external login errors 2020-05-04 16:21:39 +02:00
Chocobozzz a4995eb7ac Add ability to unregister plugin auths 2020-05-04 16:21:39 +02:00
Chocobozzz e9b0fa5c16 Auth plugin compat with regular user accounts 2020-05-04 16:21:39 +02:00
Chocobozzz a5896799f1 Add plugin settings change watcher 2020-05-04 16:21:39 +02:00
Chocobozzz dadc90bca2 Client calls revoke-token endpoint on logout 2020-05-04 16:21:39 +02:00
Chocobozzz 5a7eecdd56 Add config helper for plugins 2020-05-04 16:21:39 +02:00
Chocobozzz ebefc902f5 Add external login buttons 2020-05-04 16:21:39 +02:00
Chocobozzz 9107d791e2 Add external login tests 2020-05-04 16:21:39 +02:00
Chocobozzz 4a8d113b9b Begin support for external auths 2020-05-04 16:21:39 +02:00
Chocobozzz 98813e69bc Check auth plugin result 2020-05-04 16:21:39 +02:00
Chocobozzz 829b794a85 Add plugin ldap tests 2020-05-04 16:21:39 +02:00
Chocobozzz 055cfb11a9 Add plugin auth migrations 2020-05-04 16:21:39 +02:00
Chocobozzz e307e4fce3 Add ability for auth plugins to hook tokens validity 2020-05-04 16:21:39 +02:00
Chocobozzz e1c5503114 Support logout and add id and pass tests 2020-05-04 16:21:39 +02:00
Chocobozzz 8dc8a34ee8 Avoir some circular dependencies 2020-05-04 16:21:39 +02:00
Chocobozzz 7fed637506 Begin auth plugin support 2020-05-04 16:21:39 +02:00
Rigel Kent 25a42e293b Fix rowsPerPage change, add filter clear button, update video-abuse-list search query param dynamically 2020-05-04 15:01:44 +02:00
Rigel Kent 9b1fa49b60 Support is:blacklisted as video-abuse-list filter 2020-05-04 15:01:44 +02:00
Rigel Kent 0d3a2982a9 Switching to a named filters/single input on video-abuse 2020-05-04 15:01:44 +02:00
Rigel Kent d1261d9a3c Add links from user-edit 2020-05-01 16:41:02 +02:00