Commit graph

1102 commits

Author SHA1 Message Date
Thomas Citharel 4ff00e92b6
Fix lasts events published order on the homepage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-16 19:08:00 +01:00
Thomas Citharel 6fe22ac6ed
Handle ActivityPub Fetcher returning text that's not JSON
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-16 16:50:43 +01:00
Thomas Citharel 35e641bcff
Fix geospatial runtime configuration
Geospatial configuration was only evaluated at compile-time, not at
runtime

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-16 15:33:44 +01:00
Thomas Citharel c09a43f71e
Get front-end index path at runtime instead of compile-time
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-16 11:08:04 +01:00
Thomas Citharel 239457a219
Releases fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-15 10:34:03 +01:00
Thomas Citharel 1f926902aa
Add comments under events to activities
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-10 17:40:55 +01:00
Thomas Citharel 57662aa690
Improve Backend Error page
Mostly handle things properly when the front-end is missing

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-09 19:39:54 +01:00
Thomas Citharel d8e4d6c24f
Introduce activity filters
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-09 16:21:12 +01:00
Thomas Citharel aa2c79d312
Fixes for Bamboo 2.0
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-09 14:33:09 +01:00
Thomas Citharel 6a23f03b70
Federate draft status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-08 15:58:54 +01:00
Thomas Citharel 3bffabccb6
Only federate group draft posts to members
Closes #615

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-08 13:43:53 +01:00
Thomas Citharel 03824b898c
Get membership status only for the current group
Closes #575

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-05 11:23:17 +01:00
Thomas Citharel bc99e48f06
Add tests for discussion
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-04 11:43:35 +01:00
Thomas Citharel e70b21ae79
Only refresh groups that need updating
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-02 14:48:59 +01:00
Thomas Citharel 74e0e009d1
Add cron job to clean old activities
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-03-02 14:34:52 +01:00
Thomas Citharel 15eae2b070
Fix editing a group discussion
Make sure media is preloaded

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-26 14:04:10 +01:00
Thomas Citharel 8508558945
Allow every origin for connect-src because of Webfinger
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-26 11:44:27 +01:00
Thomas Citharel 3fe64a4389
Introduce the group activity section
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-26 09:37:06 +01:00
Thomas Citharel b1cc3868a6
Add user setting to provide location and show events near location on
homepage

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-12 19:10:22 +01:00
Thomas Citharel 4d7203a1d2
Disable Sentry in test mode
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-10 14:39:23 +01:00
Thomas Citharel 496debd6f3
Change everything for releases
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-10 14:39:09 +01:00
Thomas Citharel ad74234ab4
Upgrade to use latest Sentry
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-05 15:19:16 +01:00
Thomas Citharel 882661e22c
Clean some unused config key
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-05 15:19:15 +01:00
Thomas Citharel 48e5ad89e7
Merge branch 'stable-1.0.x' 2021-02-04 17:20:59 +01:00
Thomas Citharel 177341b491
Fix events & posts not being sent to group followers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-04 16:48:42 +01:00
Thomas Citharel 0db39af37e
Fix default value for post visibility
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-02-04 12:29:34 +01:00
Thomas Citharel 88707ff729
Add Sentry
We use Sentry 7.x for now because Sentry 8.0 requires Elixir 1.10

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-27 17:06:09 +01:00
Thomas Citharel ba3e9fbaec
Fix search event query
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-26 20:13:52 +01:00
Thomas Citharel e933004daf
Fix CSP issues in production
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-26 17:00:15 +01:00
Thomas Citharel 0ac12a0a29
Proxify resource metadata pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-26 12:15:53 +01:00
Thomas Citharel a8e58547fd
Add back media proxy for resources pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-26 12:15:53 +01:00
Thomas Citharel e0e46a81e3
Refactor CSP config by using Pleroma's HTTPSecurityPlug
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-25 18:06:49 +01:00
Thomas Citharel 3b78cffb17
Hide event group organizers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-25 12:00:06 +01:00
Thomas Citharel a4545bcf67
Exclude persons from being followed
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-24 16:17:16 +01:00
Thomas Citharel 7b91367145
Some sobelow fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-22 23:24:51 +01:00
Thomas Citharel 21698f754d
Change some String.to_atom/1 to String.to_existing_atom/1
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-22 19:44:59 +01:00
Thomas Citharel b7915a6467
Add some CSP headers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-22 19:44:59 +01:00
Thomas Citharel f0141c97e8
Refactor rich media parsers to restrict the allowed properties
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-22 19:44:59 +01:00
Thomas Citharel 4fbdc94e7c
Fix following groups + Add interface to manage followers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-22 11:52:52 +01:00
Thomas Citharel e76a270e72
Feed improvements
And show public feed links on the group page

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-19 15:30:02 +01:00
Thomas Citharel 12d2ab669d
Improve Member federation
Federate the member ID instead of the person ID

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-18 16:19:07 +01:00
Thomas Citharel ba5c3c53ce
Improve Discussion docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-18 12:09:40 +01:00
Thomas Citharel a5416aae5c
Fix federation notification text email template
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-14 15:06:48 +01:00
Thomas Citharel 7f7bf025e7
Fix leftovers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-14 11:52:37 +01:00
Thomas Citharel eb72248e16
Revert "fix search results sorted by id instead of by begins_on"
This reverts commit a133612d9f.
2021-01-14 11:39:01 +01:00
Thomas Citharel 5d8ad897fd
Fix collection next attribute and add prev attribute
Closes #546

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-12 17:12:38 +01:00
setop a133612d9f fix search results sorted by id instead of by begins_on 2021-01-12 10:28:20 +01:00
Thomas Citharel 7657cadbbd
Sort group events by asc: begins_on
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-11 18:21:38 +01:00
Thomas Citharel b69daa7b54
Attach event ics files to event-related emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-01-11 11:29:28 +01:00
setop 3f856daf41 add "hr"to allowed tags in HTML
because it doesn't hurt and it is useful in event description and all other HTML content
2021-01-10 00:01:57 +01:00
Cédric Van Rompay 08df0be1b7 update location of litepub JSON-LD context
previous URL returns "HTTP 301 Moved Permanently"
2020-12-19 13:38:04 +01:00
Thomas Citharel 766b452640
Filter out cancelled events on homepage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-18 16:48:04 +01:00
Thomas Citharel ad0086032b
Fix tests with events listing
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-18 16:48:04 +01:00
Thomas Citharel 3635967439
Fix posts AP endpoint
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 17:32:59 +01:00
Thomas Citharel f7d064c022
Handle Hubzilla posts better
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 17:32:12 +01:00
Thomas Citharel 5e7bcc44df
Fix events query
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 16:57:55 +01:00
Thomas Citharel f9e14c3a93
Fix events being not distinct
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 16:52:57 +01:00
Thomas Citharel a646d4a40a
Fix unlisted groups being available in search
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 15:38:03 +01:00
Thomas Citharel da564078b3
Add a missing option to a command comment
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-17 15:25:43 +01:00
ty kayn 5c57f1ce3c if an event has geo coordinates, add links to routing on OSM, with correct place and zoom of 14, 3 buttons to get routig as car, bike, and by feet.
Signed-off-by: Baptiste Lemoine <contact@cipherbliss.com>
2020-12-17 11:26:25 +01:00
Thomas Citharel d1472d94de
Expose posts media through AP
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-16 09:54:56 +01:00
Thomas Citharel 4e7ab231ad
Allow data-media-id attribute in img tags
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-16 09:54:09 +01:00
Thomas Citharel 9b27e70eb0
Save remote profiles avatars & banners locally
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-15 17:17:42 +01:00
Thomas Citharel 848c18470c
Handle doing a paginated query on ordered_by results
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-09 19:55:45 +01:00
Thomas Citharel 8e722032fb
[GraphQL] Move events endpoint to paginated event list
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-09 19:55:44 +01:00
Thomas Citharel d35ccff5a1
Add tests for participation without account
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-07 15:55:49 +01:00
Thomas Citharel 0541fb0ada
Allow event's attributedTo to use the Dataloader
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-01 17:42:07 +01:00
Thomas Citharel 06050c9cd6
Fix leftover
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-01 17:42:07 +01:00
Thomas Citharel 6d8710f0fe
Send the membership emails in the correct language
And send them as well if the member is on the same instance 🙈

Close #472

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-01 10:21:07 +01:00
Thomas Citharel d6d9309784
[LDAP] Allow to filter users by memberOf
Closes #528

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-01 09:16:41 +01:00
Thomas Citharel 0f5941a046
[LDAP] Allow to bind to an admin with a different FQDN
By directly providing the full DN

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-12-01 09:16:28 +01:00
Thomas Citharel 2141f92a30
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-30 16:46:26 +01:00
Thomas Citharel 207d5c0eb0
Use better upstream deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-30 12:48:23 +01:00
Thomas Citharel b05f0fe3e6
simplify user resolver errors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-30 12:48:22 +01:00
Thomas Citharel 10eb64720e
Fix tests with scheduler notifications
Close #390

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-30 12:23:40 +01:00
Thomas Citharel d041d274e0
Fix leftover from Picture -> Media rename
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-27 17:20:21 +01:00
Thomas Citharel 0e1dc0df8d
Clean unconfirmed users
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-27 11:10:12 +01:00
Thomas Citharel c9457fe0d3
Track usage of media files and add a job to clean them
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-26 17:53:33 +01:00
Thomas Citharel b11d35cbec
Backend support to get used media size for users and actors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-23 17:00:42 +01:00
Thomas Citharel 6a1cd42d2c
Add backend to list an user's pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-23 17:00:42 +01:00
Thomas Citharel 1cd680526a
Add backend to remove pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-23 17:00:36 +01:00
Thomas Citharel 68a4222a18
Add missing leftover documentation for GraphQL schema
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-20 15:24:04 +01:00
Thomas Citharel 19c9cf5e16
Fix refreshing groups
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-20 11:44:00 +01:00
Thomas Citharel 3eacbb2ca3
Improve GraphQL documentation and cleanup API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-20 11:44:00 +01:00
Thomas Citharel e6077d0dc3
Forbid creating usernames with uppercase characters
We don't actually enforce anything on the ActivityPub level, only
user-facing interfaces

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-17 19:54:40 +01:00
Thomas Citharel 15a82c7bce
[Metadata] Fix actors not sanitizing their description and refactor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-17 15:45:08 +01:00
Thomas Citharel a115b49b4c
Only load all locales in prod mode
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-17 15:42:03 +01:00
Thomas Citharel fdc8536c6f
Use user timezone in emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-17 09:36:32 +01:00
Thomas Citharel 6099878ac5
Allow Ueberauth providers to be used at runtime
Close #504

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-15 19:49:38 +01:00
Thomas Citharel dbdb2bcdab
Use DateTime.utc_now/0 instead of Timex.local/0
Timex.local/0 requires the TZ environment variable to be set

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-14 19:07:19 +01:00
Thomas Citharel 782c01e85d
Fix email missing headers
Close #426 #491

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-13 18:00:05 +01:00
Thomas Citharel 44559a71ee
Remove duplicate @doc blocs
Elixir 11 notifies this a lot

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-06 15:48:05 +01:00
Thomas Citharel 7c11807c14
Allow to join an open group
Also:

* Refactor interacting with a remote event so that you can interact with
  a remote group as well
* Add a setting for group admins to pick between an open and invite-only
  group
* Fix new groups without posts/todos/resources/events/conversations URL
  set
* Repair local groups that haven't got their
  posts/todos/resources/events/conversations URL set
* Add a scheduled job to refresh remote groups every hour
* Add a user setting to pick when to receive notifications when there's
  new members to approve (will be used when this feature is available)
* Fix pagination for members

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-06 15:19:36 +01:00
Thomas Citharel 7baad7cafc
Load only a few locales in dev environment
No need to load everything

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-06 12:03:20 +01:00
Thomas Citharel 78e3bcb2f8
Add proper error message when accessing followers/followings w/ auth
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-02 18:11:27 +01:00
Thomas Citharel c5e7abe3d4
Make sure we have only one relay actor
Close #427

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-02 18:10:56 +01:00
Thomas Citharel 9540a486ec
Fix About page crashing when instance language is not supported
Use the languages defined by CLDR on server instead, and fallback to
english if not defined

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-02 12:12:55 +01:00
Thomas Citharel 6cda3c0a94
Don't allow remote comments to be inserted if parent event doesn't allow it
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-11-02 10:49:58 +01:00
Thomas Citharel 01f746a5d2 Allow to use Mix tasks inside Releases
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-31 02:42:06 +01:00
Thomas Citharel a269d77044 Fix pictures not being served by Plug.Static
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-31 02:42:06 +01:00
prichier 751b72a434 Fix Mix.env use in prod app & MR threads 2020-10-31 02:42:06 +01:00
prichier 1acff2dd8a Mutli-stage build for production 2020-10-31 02:42:06 +01:00
Thomas Citharel 67b906cc96
Fix language change
- Load the language files correctly when language is changed
- Save user language in localstorage so that we can have it even if disconnected (but still load it from user settings eventually since
user might be on a different device)
- Load all locales from Cldr with Gettext
- Fix pt-PT -> pt-BR
- Clean some obsolete config.exs comments

Later changes will allow to set the language without an account
https://framagit.org/framasoft/mobilizon/-/issues/375

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-28 19:57:57 +01:00
Thomas Citharel bad8c779f8
Update demo mode to remove references to beta
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-28 11:41:39 +01:00
vincent debierre 07a69b78cf
Remove warning and reference to beta version status in text email format 2020-10-28 11:36:42 +01:00
Thomas Citharel 4e79d6a042
Fix detecting file MIME type if file hasn't got a name
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-27 16:32:34 +01:00
Thomas Citharel 6678e8f9eb Merge branch 'improve-local-upload' into 'master'
Improve local uploader

See merge request framasoft/mobilizon!653
2020-10-26 12:01:24 +01:00
Thomas Citharel 37402ece68
Improve local uploader
Check that destination file is not here and temporary file is still here

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-26 11:42:29 +01:00
Thomas Citharel 19b0f4fc91 Merge branch 'vpzomtrrfrt/mobilizon-port-support' into 'master'
Check port in compare_urls

See merge request framasoft/mobilizon!651
2020-10-26 10:01:31 +01:00
Colin Reeder 1cf59ef24a
Check port in compare_urls 2020-10-26 09:33:20 +01:00
Thomas Citharel 974620b3b3 Merge branch 'upload-and-avatar-improvements' into 'master'
Upload and avatar improvements

See merge request framasoft/mobilizon!646
2020-10-26 09:00:08 +01:00
Colin Reeder 32629a8d4b Fix is_public? for non-lists 2020-10-25 12:17:31 -06:00
Thomas Citharel 4a11d4adcc
Add more tests to upload filters
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-25 12:00:00 +01:00
Thomas Citharel ce7b8e05a1
Fallback GitStatus version code to mix env value
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-23 18:55:47 +02:00
Thomas Citharel a709a196bd
Fix list group elements
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-22 18:06:02 +02:00
Thomas Citharel 2c42cf2735
Fix listing event groups
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-22 16:59:04 +02:00
Thomas Citharel d8185660e3
When filter on public group events, exclude draft events as well
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-22 16:58:18 +02:00
Thomas Citharel fa7cd7e0e3
New unlogged homepage
With fancy illustrations 

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-21 17:49:18 +02:00
Thomas Citharel afc9febf0b Merge branch 'docs-email' into 'master'
Docs email

See merge request framasoft/mobilizon!627
2020-10-21 11:38:13 +02:00
Thomas Citharel 85aa9df4f8
Fix webfinger not following redirections by using a custom dedicated Tesla client
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-21 11:20:15 +02:00
Thomas Citharel e29704a928
Add task to refresh an instance relay
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-21 11:02:28 +02:00
Thomas Citharel b94bf2ad87
Fix a credo issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 10:06:58 +02:00
Thomas Citharel 2b3d1d7f79
Fix issue with hostname validation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:58:19 +02:00
Thomas Citharel 2ad043a91d
Fix OEmbed preview parser
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:58:18 +02:00
Thomas Citharel efd95044c2
Use a RichMediaPreviewClient to get details on resources
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:58:18 +02:00
Thomas Citharel 23dcb47ce5
Make sure only group moderators can update/delete events, posts
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:58:17 +02:00
Thomas Citharel fc1d392211
Couple of fixes for groups
- Fix posts update federation and add tests
- Fix posts deletion federation and add tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:44:04 +02:00
Thomas Citharel 0c4a7e0216
Fix listing group public events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-20 09:44:03 +02:00
Thomas Citharel 6f5d535b86
Fix finding local actor by username with domain
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-15 17:19:22 +02:00
Thomas Citharel 479bd466b5
Improve debug logger message in webfinger module
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-15 17:19:15 +02:00
Thomas Citharel 8c9546ff2a
Improve member management
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-15 14:24:51 +02:00
Thomas Citharel f6480cb37e
Improve dashboard
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-15 11:04:05 +02:00
Thomas Citharel 2fc08dfc5c
Remove outdated string in install assistant
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-14 18:56:23 +02:00
Thomas Citharel 9573e417d9
Fix email template without variables
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-14 11:45:32 +02:00
Thomas Citharel cf9b8d5f46
Fix events from former followed instances showing up
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-14 11:45:32 +02:00
Thomas Citharel 86e1e84247
Use datetime with TZ for posts timestamps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-14 09:46:33 +02:00
Thomas Citharel bba9e6bf59
Fix tests with user tasks
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 15:53:18 +02:00
Thomas Citharel 71476ee587
Don't sent reset email when user is disabled
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 15:21:00 +02:00
Thomas Citharel 53c4f5dfde
Show user disabled status in mix task
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 15:20:30 +02:00
Thomas Citharel edfcacf5ac
Fix a typo in create_bot task
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 15:20:07 +02:00
Thomas Citharel 3c6916360d
Completely delete user when user request self destruction
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 15:10:27 +02:00
Thomas Citharel 8035fb743d
Don't count deactivated users in statistics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 14:39:05 +02:00
Thomas Citharel 1a3a3602d1
Change CLI delete user task to completly delete user by default
And document the new option

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-13 14:36:55 +02:00
Thomas Citharel cd5418825b
Make sure a person profile page returns 404
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-12 13:38:25 +02:00
Thomas Citharel dad9623482
Make sure only proper pictures are uploaded
Closes #384

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 19:29:12 +02:00
Thomas Citharel c296381ed6
[Security] Fix events being editable by other users that organizers
Closes #385

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 18:12:35 +02:00
Thomas Citharel 24238da393
Fix a typo in the path to picture on error template
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 17:07:10 +02:00
Thomas Citharel 75fc1f125a
Show a proper error message on creating/updating an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 16:09:45 +02:00
Thomas Citharel 9430f1145f
Fix profiles not administrators able to edit a group
Related to #385

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 16:09:44 +02:00
Thomas Citharel 07a5d10421
Introduce support for custom nginx error pages
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-09 14:48:49 +02:00
Thomas Citharel ed4042ed1e
Fix injecting metadata into HTML pages
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-08 10:41:30 +02:00
Thomas Citharel f4b777c3d6
Make sure event update notification email gets sent to anonymous
participants

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-08 08:53:25 +02:00
Thomas Citharel 9f9f58ce7d
Improve event update notification email
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-08 08:53:07 +02:00
Thomas Citharel fbb1b2d607
Handle case when setting value is nil
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-08 08:19:59 +02:00
Thomas Citharel 77970b8091
Improve anonymous participation and confirmation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-07 17:05:15 +02:00
Thomas Citharel 9382e8fc74
Improve participation rejection email by adding bold
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-07 16:39:33 +02:00
Thomas Citharel 3a84e6dfa5
Improve anonymous participation confirmation email by adding bold
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-07 16:39:32 +02:00
Thomas Citharel 586d8c440d
Add languages to admin settings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-07 16:38:24 +02:00
Thomas Citharel 02eac30c9b
Expose more statistics
* differenciate local & all events/comments/groups
* add instance follows/followings

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-07 10:52:29 +02:00
Thomas Citharel 27a75cd0df
Improve some texts on account registration and email notification
settings

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-06 15:36:19 +02:00
Thomas Citharel 05e5fc35d5
Improve profile registration
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-06 12:35:45 +02:00
Thomas Citharel 8eca9d9702
Make sure only organizer actor can comment if event comments are
disabled

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-05 17:42:53 +02:00
Thomas Citharel 8ba23c858b
Fix issues in email change emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-05 14:46:08 +02:00
Thomas Citharel a576d41b24
Fix typo in atom name
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-05 14:45:58 +02:00
Thomas Citharel afb7d75307
Fix invitations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-02 16:19:31 +02:00
Thomas Citharel 4896036cd1
Make sure event and group search only return the correct type
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-02 16:19:30 +02:00
Thomas Citharel d41aa3b2fd
Disallow accessing identity page when logged in
And disallow calls to fetchPerson when not our own profile or unlogged

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-02 09:53:32 +02:00
Thomas Citharel beba4a16ea
Fix anonymous call to profile endpoint
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-01 19:10:18 +02:00
Thomas Citharel e068326c4b
Fix duplicate events on homepage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-01 17:51:07 +02:00
Thomas Citharel aced4d039b
Fix posts and rework graphql errors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-10-01 15:07:15 +02:00
Thomas Citharel 92367a5f33
Allow to report a group
And multiple group tweaks

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-30 15:26:58 +02:00
Thomas Citharel 36cdcaa864
Send all event reminder notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-30 10:45:01 +02:00
Thomas Citharel dc8faa12bd
Sent notification that the event participation has been confirmed when
anonymous

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-30 10:44:01 +02:00
Thomas Citharel a600720062
Add local groups as statistics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-30 10:42:19 +02:00
Thomas Citharel 49a5725da3
Improve and activate groups
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-29 10:25:00 +02:00
setop bd3087d121
Fix geospatial clients
add json plus to base client and rename to geospacial client
geospatial http client with json plug
2020-09-21 14:46:07 +02:00
Thomas Citharel aed2dadb35 Merge branch 'patch-1' into 'master'
add debut statement to create activity

See merge request framasoft/mobilizon!563
2020-09-21 11:53:55 +02:00
Thomas Citharel b0e8a32d2a
Improvements to group page
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-21 11:18:49 +02:00
setop 31a2ede77f add debut statement to create activity 2020-09-12 00:42:35 +02:00
Thomas Citharel 69faeec14c
Allow to disable event creation
And change the group toggle

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-02 15:08:47 +02:00
Thomas Citharel 952e592e2c
Show group address in group metadata
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-02 10:57:19 +02:00
Thomas Citharel 93728cb9d7
Add a noindex HTTP header on unlisted resources
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-02 10:57:18 +02:00
Thomas Citharel 489fd74545
Allow to refresh instance outbox when they accept subscription
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-02 10:57:18 +02:00
Thomas Citharel c011a988a8
Fix relay outbox endpoint
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-09-02 10:50:22 +02:00
Thomas Citharel aa7d919c98
Show user connection IP and date in admin
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-31 16:57:13 +02:00
Thomas Citharel 5f0497144a
Improve texts
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-31 14:25:21 +02:00
Thomas Citharel 45fa3e8ad0
Add login information to user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-28 09:23:49 +02:00
Thomas Citharel 7c0b813dce
Fix getting remote IP behind reverse proxy
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-27 15:54:43 +02:00
Thomas Citharel 1984f71cbf
Add group admin profiles
And other fixes

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-27 12:12:54 +02:00
Thomas Citharel 4782221ef4
Allow to update a member role
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-20 10:54:58 +02:00
Thomas Citharel bdb4350624
Add an authenticated fetch route for members
If the member is remote, it redirects to original instance

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-19 11:29:02 +02:00
Thomas Citharel 6ae8de7560
Fix datetime unserialize on admin logs view
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-18 17:22:06 +02:00
Thomas Citharel 2ea6286d3f
Fix account suspension
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-18 17:21:58 +02:00
Thomas Citharel 156eba0551
Improve member adding and excluding flow
Allow to exclude a member

Send emails to the member when it's excluded

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-18 14:37:31 +02:00
Thomas Citharel 3ca4291c9b
Remove the /events/explore route
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-12 17:55:38 +02:00
Thomas Citharel 1de802a36c Merge branch 'feature/sitemap' into 'master'
Introduce sitemap and upgrade oban

See merge request framasoft/mobilizon!538
2020-08-12 16:36:37 +02:00
Thomas Citharel 634c33c959
Add a mix task to generate a sitemap
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-12 16:35:46 +02:00
Thomas Citharel c56fb710b6
Introduce Sitemaps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-12 16:29:34 +02:00
Thomas Citharel 9a0068dfea
Upgrade oban to 2.0
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-12 16:06:09 +02:00
Thomas Citharel c09deb5bc6
Fix remote group visibility and use Mastodon's discoverable attribute
Make sure actor visibility is :public or :unlisted

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-12 10:45:48 +02:00
Thomas Citharel 4fc1a984f9
Fix Tesla warning.
No need to implement get/post functions here

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-11 10:13:25 +02:00
Thomas Citharel 163b189d75 Merge branch 'change-wording-on-email-change' into 'master'
Fix some gettext issues with translations

See merge request framasoft/mobilizon!532
2020-08-10 18:39:34 +02:00
Thomas Citharel 7162c30153
Fix some gettext issues with translations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 18:30:15 +02:00
Thomas Citharel e4e316b42b Merge branch 'change-wording-on-email-change' into 'master'
Change wording on email modification notification sentence

See merge request framasoft/mobilizon!531
2020-08-10 18:13:35 +02:00
Thomas Citharel 09c131c33b
Fix Schema.org SearchAction metadata
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 18:08:25 +02:00
Thomas Citharel 3263a84c51
Improve wording for emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 18:02:48 +02:00
Thomas Citharel 992e3af237
Add a VirtualLocation field to the event URL itself when location is not
defined

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 16:22:15 +02:00
Thomas Citharel 3c077c59ad
Allow to search groups by location
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 15:40:24 +02:00
Thomas Citharel b4f500532f
Allow to filter by begins_on and ends_on. Redirect explore to search
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 15:40:21 +02:00
Thomas Citharel 2198b2cb87
Allow to filter search by multiple tags
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 15:40:19 +02:00
Thomas Citharel 50666e5dd7
Fix AP Fetcher
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 15:40:19 +02:00
Thomas Citharel 3807ab1b63
Allow events to be searched by location and period
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-08-10 15:40:18 +02:00
Thomas Citharel 5a8745dc13 Merge branch 'patch-4' into 'master'
fix instance_name option for `mix mobilizon.instance gen`

Closes #368

See merge request framasoft/mobilizon!526
2020-08-10 14:39:51 +02:00
yalh 660eaf094c Adding listen-port option to mix mobilizon.instance gen 2020-08-04 21:46:17 +02:00
yalh b24b6fd61a Trying to fix https://framagit.org/framasoft/mobilizon/-/issues/368 2020-08-04 21:22:38 +02:00
Thomas Citharel 8b6c7aa207
Insert spaces before stripping HTML when inserting search data
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-31 11:19:42 +02:00
Thomas Citharel 74031892c5
Fix a line no longer used
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-31 11:08:29 +02:00
Thomas Citharel 2eda4eca3e Merge branch 'fix-accepting-follows' into 'master'
Fix accepting follows

See merge request framasoft/mobilizon!518
2020-07-31 10:00:18 +02:00
Thomas Citharel d268a16c4f
Fix trying to create signatures for remote actors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-31 09:21:10 +02:00
Thomas Citharel b9cdd2f02f
Prevent upserting local actor
By comparing it's URI

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-31 09:01:27 +02:00
Thomas Citharel d4cde716d4
Fix redirections on WebFinger
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-30 17:57:20 +02:00
Thomas Citharel 9c9f1385fb
Introduce group posts
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-30 16:55:35 +02:00
Thomas Citharel e0fad9ddd1
Update Instance Actor when updating instance settings
Also fix an issue when publishing activities to followers/group members

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-07 16:55:59 +02:00
Thomas Citharel 5fe829ae76 Merge branch 'fix-my-events-pagination' into 'master'
Fix scheduler for participation notifications

See merge request framasoft/mobilizon!510
2020-07-06 19:06:59 +02:00
Thomas Citharel c7ad21262c
Fix scheduler for participation notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-06 18:55:58 +02:00
Thomas Citharel 69841cbb45
Fix 3rd-party auth issues
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-06 17:33:40 +02:00
Thomas Citharel 9a080c1f10
Introduce support for 3rd-party auth (OAuth2 & LDAP)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-07-06 15:42:59 +02:00
setop 2749b6b2d4
fix addok - country and region 2020-06-30 09:16:32 +02:00
Thomas Citharel b11674fc9e
Fix opengraph issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-26 14:42:40 +02:00
Thomas Citharel 39c03301c9
Allow to properly move group resources
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-26 11:48:05 +02:00
Marie-Cécile Godwin 1d03bff1fd Make this file match the "gettext" requests 2020-06-24 19:00:34 +02:00
Thomas Citharel 83aa005faf
Drop HTMLSanitizeEx and fix title sanitizing
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-24 16:37:00 +02:00
Thomas Citharel 378a113002
Scheduler fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-24 11:37:22 +02:00
Thomas Citharel 4f961f958d
More email fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-23 18:40:56 +02:00
Marie-Cécile Godwin 16ca2c115c
Text amendments to sound more native English, switch to MBZ latest colour scheme, switch to Roboto font. 2020-06-23 18:13:53 +02:00
Marie-Cécile Godwin fec8298d3d
Update "gettext" commands to reflect html file. 2020-06-23 18:13:39 +02:00
Marie-Cécile Godwin 2f9976b289
Text amendments to sound more native English, switch to MBZ latest colour scheme, switch to Roboto font. 2020-06-23 18:13:28 +02:00
Thomas Citharel 6981b54679
Fix instance terms when contact is undefined
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-23 10:58:48 +02:00
Thomas Citharel f5241954bd
Improve Terms of Service
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-23 10:35:15 +02:00
Thomas Citharel 5759f2bc32
Comment fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-18 16:50:47 +02:00
Thomas Citharel e030eab93d
Fix event stats participants / going incoherent
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-18 16:24:00 +02:00
Thomas Citharel b61d12b5fd
Participation panel revamp and fixes
Apollo is a pain in the ass with pagination & filters, so this removes
the tabs system and uses a <select> to filter instead

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-18 15:52:19 +02:00
Thomas Citharel b5f295c5d9
UI improvements
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-17 15:55:21 +02:00
Thomas Citharel 7cd45a1351
Fixup
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-16 18:02:53 +02:00
Thomas Citharel 5cb3f478ae
Allow to change language
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-16 18:00:27 +02:00
Thomas Citharel ef6a1a21ac
Even more fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 19:41:11 +02:00
Thomas Citharel 47297127a2
Improve comment section
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 16:50:01 +02:00
Thomas Citharel d8bdc132e8 Merge branch 'use-ap-wrapper-instead-of-calling-directly-actors-context' into 'master'
Use ActivityPub.get_or_fetch_actor_by_url/2 instead of directly Actors.get_actor_by_url

See merge request framasoft/mobilizon!469
2020-06-15 11:59:35 +02:00
Thomas Citharel 5990633fb9
Use ActivityPub.get_or_fetch_actor_by_url/2 instead of
directly Actors.get_actor_by_url

So that we can refresh actors when they're stale

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 11:45:58 +02:00
Thomas Citharel d0bf64275e Merge branch 'improve-registration-page' into 'master'
Improve registration page and add a rules option

See merge request framasoft/mobilizon!467
2020-06-15 11:20:16 +02:00
Thomas Citharel 97197e3811
Improve registration page and add a rules option
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 11:01:49 +02:00
Thomas Citharel 9063772e35 Merge branch 'fix-comment-threads' into 'master'
Fix comment threads display

See merge request framasoft/mobilizon!466
2020-06-15 10:10:23 +02:00
Thomas Citharel 790f333e4a
Fix comment threads display
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 09:46:08 +02:00
Thomas Citharel 0ea5b27402
Fix events tests with public visibility
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-15 09:11:35 +02:00
Thomas Citharel 0fcbbaa80c
Fix searchable unlisted events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-12 19:19:19 +02:00
Thomas Citharel beb35a09c6
Introduce basic user and profile management
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-12 19:16:40 +02:00
Thomas Citharel c61a54d802
Add a command to refresh a single actor or all actors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-10 15:09:59 +02:00
Thomas Citharel 23a5ffd3a1 Merge branch 'exclude-happening-events' into 'master'
Currently happening events are not future events

Closes #220

See merge request framasoft/mobilizon!460
2020-06-10 10:03:36 +02:00
Thomas Citharel 0702878924 Merge branch 'install-fixes' into 'master'
Install fixes

See merge request framasoft/mobilizon!459
2020-06-10 09:58:25 +02:00
Thomas Citharel c4cdfd9857
Currently happening events are not future events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-10 09:44:01 +02:00
Thomas Citharel da3673386c
Install fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-10 09:38:06 +02:00
Thomas Citharel eaa791cb89
Update i18n, move release to fall 2020
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-10 09:08:10 +02:00
Thomas Citharel 503616fa60 Merge branch 'fix-lang-not-detected-on-fallback-pages' into 'master'
Fix lang not detected on fallback pages

See merge request framasoft/mobilizon!456
2020-06-09 18:00:42 +02:00
Thomas Citharel ecbc5993c4
Fix lang not detected on fallback pages
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 17:45:41 +02:00
Thomas Citharel ff5e27b0a0
Fix admin settings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 17:41:08 +02:00
Thomas Citharel ba6e656015
Fix geocoding
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 15:20:07 +02:00
Thomas Citharel dac47d2abb
Add config option to allow anonymous reporting
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 14:07:49 +02:00
Thomas Citharel 2e64da11e3 Merge branch 'fix-online-address' into 'master'
Fix online address validation

See merge request framasoft/mobilizon!450
2020-06-09 11:27:45 +02:00
Thomas Citharel 2634c7f46b
Fix online address validation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 11:13:22 +02:00
Thomas Citharel 0da2ad44a5 Merge branch 'fix-activity-pub-fetch-issue' into 'master'
Fix activitypub HTTPoison issue

See merge request framasoft/mobilizon!449
2020-06-09 11:12:18 +02:00
Thomas Citharel 39ae24edb8
Fix activitypub HTTPoison issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 10:40:20 +02:00
Thomas Citharel 8310a3d4b9
Use correct locale for participation emails
For anonymous participations we now use a locale parameter in metadata

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-09 10:32:26 +02:00
Thomas Citharel 7dbabcf15f
Add toggle to disable groups
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 16:47:57 +02:00
Thomas Citharel 428ce9e200
Fixup
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 15:04:53 +02:00
Thomas Citharel e77cfe2e33
Provide metadata for tombstone
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 14:37:31 +02:00
Thomas Citharel 3e74f59ee8
Send Notifications when participation approval
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 13:59:27 +02:00
Thomas Citharel 09ad687403 Merge branch 'validate-number-of-places' into 'master'
Validate number of places being a positive integer

Closes #286

See merge request framasoft/mobilizon!440
2020-06-05 11:52:33 +02:00
Thomas Citharel c56e299a09
Validate number of places being a positive integer
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 11:38:49 +02:00
Thomas Citharel f627477662 Merge branch 'event-address-update-trigger-change' into 'master'
Also send event updates if physical address changed

See merge request framasoft/mobilizon!438
2020-06-05 11:02:46 +02:00
Thomas Citharel 44e08c4319
Add weekly notification
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 10:27:02 +02:00
Thomas Citharel 9e3107e3aa
Also send event updates if physical address changed
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 10:18:08 +02:00
Thomas Citharel 42f07c17e5
Disable mix docs for now
Because of https://github.com/elixir-lang/ex_doc/issues/1172

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-04 10:58:27 +02:00
Thomas Citharel 5e6bdb92fb
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-03 16:55:34 +02:00
Thomas Citharel 4144e9ffd0
Introduce group basic federation, event new page and notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-03 16:01:26 +02:00
Thomas Citharel fa19270232
Fix DateTime comparison
!420 used Date.compare/2 instead of DateTime.compare/2

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-14 17:50:17 +02:00
setop 01bdd7b344 fix compare begin and end dates
this bug prevent from creating an event with the day of month of the begin date greater than the day of month of the end date, event if end date is effectively greater than begin date.

for example, if the begin date is '2020-04-28' and end date is '2020-05-13', these dates are valid but because 28 > 13, the validation fails.

this is better explained in this article ["Never compare dates in Elixir using < or >"](https://blog.leif.io/never-use-to-compare-dates/).

using Date.compare, as proposed in this PR fix the issue.
2020-04-03 23:37:56 +02:00
Thomas Citharel c732ec7f87
Add ability to add message for participation and improve participation
management interface

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-06 09:00:48 +01:00
Thomas Citharel 39b7afd1cd
Blind key rotation and stale duration for profiles
See https://blog.dereferenced.org/the-case-for-blind-key-rotation

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-14 18:21:18 +01:00
Thomas Citharel 3a753312c1
Validate Date header in HTTPSignatures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-14 09:22:17 +01:00
Thomas Citharel 9f007da286
Allow to edit account email and delete account
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-13 16:21:26 +01:00
Thomas Citharel da879f5bcd
Fix event link construction in emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-10 09:59:20 +01:00
Thomas Citharel 18c8b7bc14
Fix event online URL AP attachment
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 18:41:36 +01:00
Thomas Citharel 94df5bd1be
Don't access remote events from non-federated instances when not logged
in

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 16:28:49 +01:00
Thomas Citharel 39017b63a9
Add canonical link to the original event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 16:25:30 +01:00
Thomas Citharel 9e3df495dc
Move configuration to traditional way
️ This is the way.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-06 16:12:13 +01:00
Thomas Citharel 2ed9050a90
Add anonymous and remote participations 2020-01-29 17:28:11 +01:00
rustra 3505736705 Fix Credo code readability issues 2020-01-28 20:15:59 +01:00
rustra 97651e88e9 Implement Credo software design suggestions 2020-01-28 19:18:33 +01:00
rustra bc31e2f0c2 Fix mix format 2020-01-26 21:53:17 +01:00
rustra 8856cc2f55 Rename MobilizonWeb to Mobilizon.Web 2020-01-26 21:39:49 +01:00
rustra b3f8d52bc9 Move API under GraphQL context 2020-01-26 21:15:04 +01:00
rustra ba3ad713c0 Split GraphQL as separate context 2020-01-26 20:34:25 +01:00
rustra 3577fe42e1 Improve Federation boundaries 2020-01-24 22:02:10 +01:00
rustra 8ca5c0b320 Separate Web modules related to Federation 2020-01-23 01:03:33 +01:00
rustra d1251280c5 Put HTTPSignatures, WebFinger and ActivityStream alongside with ActivityPub 2020-01-22 22:40:40 +01:00
rustra cdb520a95b Split Federation as separate context 2020-01-22 02:14:42 +01:00
Thomas Citharel fe4cf86838
Restrict follows to approved actors/instances
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-19 13:41:25 +01:00
Thomas Citharel b911ecbb00
Fix comments URLs
Also remote comments were marked as local

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 18:25:40 +01:00
Thomas Citharel 9485694392
Add a mix mobilizon.actors task to list actors tasks
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 15:57:15 +01:00
Thomas Citharel d8c20feead
Use mix.exs version instead of config one
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 14:32:20 +01:00
Thomas Citharel 814c9ab53b
Move from Schema.org Place to AS Place with Schema.org properties
See https://socialhub.activitypub.rocks/t/how-to-represent-places-in-an-event/413

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 11:03:04 +01:00
Thomas Citharel 846b4e9b77
Fix event html representation with no Accept header
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 10:15:58 +01:00
Thomas Citharel 822a522579
Handle actor or object being AP Public string
Mastodon uses "https://www.w3.org/ns/activitystreams#Public" as object
when sending a `Follow` activity to a relay

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 13:36:45 +01:00
Thomas Citharel 89b751e124
Fix signatures for relay
The plugs were missing

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 13:36:25 +01:00
Thomas Citharel d552fcb2d3
Add a config option to whitelist users registration
Through whole email or domain email

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 12:09:24 +01:00
Thomas Citharel 28e966e5b0
Fix comment visibility and local status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 09:49:08 +01:00
Thomas Citharel 4da3fb946b
Update demo warning message
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 09:20:40 +01:00
Thomas Citharel 39b7a5b948
Improve JSON-LD representation for Address and add it to the docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:47:57 +01:00
Thomas Citharel 039846d465
Clear AP cache when content is updated or deleted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:47:31 +01:00
Thomas Citharel 14176ccc89
Support pt:CommentsEnabled in addition to mz:repliesModeration
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:46:19 +01:00
Thomas Citharel 334d66bf5d
Add admin interface to manage instances subscriptions
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-15 21:56:16 +01:00
Thomas Citharel dc07f34d78
Introduce comments below events
Also add tomstones

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-28 12:33:58 +01:00
Thomas Citharel 8aed527971 Merge branch 'master' into 'feature/add-a-demo-mode'
# Conflicts:
#   CHANGELOG.md
2019-11-21 16:28:53 +01:00
Thomas Citharel a53100ef6e
Added a demo mode to show or hide instance warnings that data is deleted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-21 16:07:43 +01:00
Thomas Citharel 5e9c91e659
Added mix commands to manage users and view actors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-21 15:51:13 +01:00
Thomas Citharel 3b210a33a2
Disable address autocomplete where required (nominatim)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-20 13:49:57 +01:00
Thomas Citharel 83fcf2b62e Merge branch 'feature/add-pelias-geocoder' into 'master'
Feature/add pelias geocoder

See merge request framasoft/mobilizon!324
2019-11-19 20:19:02 +01:00
Thomas Citharel ea00cf45dc
Update docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 20:01:31 +01:00
Thomas Citharel c7b25474d3
Introduce support for Pelias geocoder
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 17:59:04 +01:00
Thomas Citharel 321a04babe
Fix duplicate tags when editing an event with tags in description
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 15:36:25 +01:00
Thomas Citharel b6645a4acc
Include sender mail in from: emails
Closes #277

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 11:12:59 +01:00
Thomas Citharel 258550ec94
Handle missing geolix database
Close #313

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 10:47:48 +01:00
Thomas Citharel 634a0b851e
Validate ends_on being after begins_on
Closes #315

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:36 +01:00
Thomas Citharel 4dc4524e71
Validate username on backend side and refactor actor changeset
Closes #316

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:28 +01:00
Thomas Citharel f35698005a
Fix #232 and #230
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:28 +01:00
Thomas Citharel c599a47d58
Introduce Mimirsbrunn geocoder and improve addresses & maps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-12 14:10:18 +01:00
Thomas Citharel 0e7cf89492
Remove floor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-08 19:39:02 +01:00
Thomas Citharel 33f7c14db6
Fixes with addresses and iCalendar
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-06 10:04:17 +01:00
Thomas Citharel f91f8ab926
Fix for adding addresses
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-06 09:32:01 +01:00
Thomas Citharel 95ba76a0fa
Fix issue when updating event and introduce background jobs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-04 16:40:36 +01:00
Thomas Citharel cc820d6b63
Refactor Core things, including Ecto handling, ActivityPub & Transmogrifier modules
* Data doesn't need anymore to be converted to ActivityStream format to
be saved (this was taken from Pleroma and not at all a good idea here)
* Everything saved when creating an event is inserted into PostgreSQL in
a single transaction
2019-10-31 10:06:11 +01:00
Thomas Citharel b117985dff
Make inserting data into search table an async operation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 16:33:56 +02:00
Thomas Citharel 39d7db07f3
Fix unrelated warning
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 15:27:11 +02:00
Thomas Citharel b5f9518faf
Implement search engine & service in backend
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 15:27:11 +02:00
Thomas Citharel afa3bb1eff
Allow WebP and Gif pics
svg stays forbidden until we can be sure it's fine security-wise

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-21 13:43:06 +02:00
Thomas Citharel d1fb90eece
Add the optimize filter for uploaded pics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-21 13:42:45 +02:00
Thomas Citharel c16ef05d88
Limit multipart upload to 10MB
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-18 14:10:39 +02:00
Thomas Citharel 342506bac0
Add some backend changes and validation for field length
Closes #225 and #226

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-18 11:31:11 +02:00
Thomas Citharel 6718dd8e69
Upgrade vue-cli to v4, change the way server params injection is made
and serve es6 modules

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-17 14:20:22 +02:00
Thomas Citharel 4dcbf85d9a Merge branch 'bug/fix-XSS-on-event-title' into 'master'
Make sure title is properly sanitized

Closes #247

See merge request framasoft/mobilizon!281
2019-10-16 19:17:27 +02:00
Thomas Citharel 8094f1d80a
Make sure title is properly sanitized
Close #247

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-16 19:03:31 +02:00
Thomas Citharel de9b26df2d
Translate them and handle difference between user not found and user not
confirmed

Closes #212

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-16 17:07:49 +02:00
Damien b98a86184b (Hopefully) improve grammar
[CI skip]
2019-10-15 21:38:49 +02:00
Thomas Citharel 5e9ca2f2f3
set default to show event time
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 20:00:58 +02:00
Thomas Citharel 7b296e01da
Change link for Framacolibri
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:33:07 +02:00
Thomas Citharel d93561742a
Better handle datetime
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:29:18 +02:00
Thomas Citharel cc701f8994
Properly update event ics export cache and fix export desc html
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 15:44:16 +02:00
Thomas Citharel cbe1dd2868
Prevent picture resend on event update, handle duplicate pictures
properly in backend and add a proper default picture

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 11:41:57 +02:00
Thomas Citharel 33e51a05ec
Handle errors better
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 13:56:24 +02:00
Thomas Citharel 57f0b5dad1
Participation fixes
Closes #208 and #210

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 10:51:22 +02:00
Thomas Citharel 2577a2a27b Merge branch 'test/add-cypress-on-event-creation' into 'master'
Add e2e seed and test event creation

See merge request framasoft/mobilizon!254
2019-10-12 19:47:19 +02:00
Thomas Citharel 5e75daa732
Add e2e seed and test event creation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-12 19:34:16 +02:00
Thomas Citharel d3a5b1f3e5
Add custom user-agent to geospatial calls
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-12 11:41:18 +02:00
Thomas Citharel 534ff09674
Properly handle event status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 16:34:03 +02:00
Thomas Citharel 4499fb2f31
Fix participation section, show how many places are available
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 15:26:16 +02:00
Thomas Citharel 98472e7222
Expose participants number through API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 11:54:57 +02:00
Thomas Citharel bf25d22786
Make sure people can't join an event with limited participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 11:50:06 +02:00
Thomas Citharel 210b348b46
Add warning inside emails as well
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 10:44:53 +02:00
Thomas Citharel 040faf4451
Fix title & meta
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 17:28:32 +02:00
Thomas Citharel 5a56c47360 Merge branch 'bug/email-logo-alt' into 'master'
Bug/email logo alt

See merge request framasoft/mobilizon!238
2019-10-10 14:57:07 +02:00
Thomas Citharel aa233f43a7
Replace email logo alternative text by instance name
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 14:27:06 +02:00
Thomas Citharel ac35e4b923
Fix preview
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 12:25:32 +02:00
Thomas Citharel eca8b9ec7c
Fix editor related issues
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 11:05:53 +02:00
Thomas Citharel 5b1b7ee164
Make sure featured events have currently happening events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-09 16:37:39 +02:00
Thomas Citharel 7a453b4329
Fix unavailable access to an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-08 21:31:47 +02:00
Thomas Citharel bff00dea21
Properly handle account deleted
Close #191

Also fix an issue with public events not being accessible when requested
as another logged-in user.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-08 18:13:06 +02:00
Thomas Citharel 77d286ebb6
Introduce Cypress
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-06 18:28:18 +02:00
Thomas Citharel 471e8ac472
Redirect to profile creation when user has no identities
Also load persons by ID instead of preferred_username

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-06 12:36:42 +02:00
Thomas Citharel 442a011490
Add draft feature
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-02 18:23:32 +02:00
Thomas Citharel a84cfb5910
Save user locale and use it to translate things
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-01 13:08:09 +02:00
Thomas Citharel 5fd38ace2e
Notifications on event update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-30 19:01:46 +02:00
Thomas Citharel 5b4f1c271a
Send email notifications when a participation is approved/rejected
Also handles participant status :rejected instead of deleting the
participation

Closes #164

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-30 18:45:29 +02:00
Thomas Citharel 65b49e247f
Add config option to disable federation
Closes #148

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-27 16:18:29 +02:00
Thomas Citharel 8dc2fbcf98
Fix rebase issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 18:10:11 +02:00
miffigriffi 0a0d07cf38
Fix software design suggestions 2019-09-26 17:45:47 +02:00
miffigriffi aed824f1aa
Fix code readability issues 2019-09-26 17:45:47 +02:00
miffigriffi 20dfce5c83
Fix refactoring opportunities 2019-09-26 17:45:33 +02:00
Thomas Citharel 4d4fdaaffe Merge branch 'feature/participate-dropdown' into 'master'
Add a dropdown on participate menu, disallow listing participations

Closes #174

See merge request framasoft/mobilizon!200
2019-09-26 17:41:14 +02:00
Thomas Citharel 757d2cabec
Add a dropdown on participate menu, disallow listing participations
Now requires quering the person endpoint to know if an actor
participates in an event, organizers can make authenticated requests to
event { participants { } } to see the pending / approved participants.

Also closes #174

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 17:00:01 +02:00
Thomas Citharel d4a7b6fe0d
Remove unneeded Markdown converter (earmark)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 16:49:49 +02:00
Thomas Citharel f129d4137d
[Backend] Allow to change your password
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-24 18:08:33 +02:00
Thomas Citharel 8006b8e0f3
Fixes for email
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-24 12:09:43 +02:00
Thomas Citharel 6a41b13446
🎨 Add fancy html emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-23 19:50:33 +02:00
Thomas Citharel 9abb2f3526
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-23 10:26:23 +02:00
Chocobozzz 5520e2e5f9
Exhaustive create/update event tests 2019-09-22 19:36:43 +02:00
Thomas Citharel eaf424e79f
Fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 11:22:16 +02:00
Thomas Citharel 246555a768
Couple of fixes, and introducing Explore section
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 10:40:18 +02:00
Thomas Citharel abf3a58657
Allow to accept / reject participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 10:40:12 +02:00
Thomas Citharel ffa4ec9209
Work on dashboard
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 09:42:54 +02:00
Thomas Citharel 2d087fb810
Move Mobilizon.Events.Activity to Mobilizon.Service.ActivityPub.Activity
It's only used for ActivityPub stuff, nothing DB related.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 09:24:18 +02:00
miffigriffi 4c74248a04 Merge branch 'master' into refactoring-based-on-credo-and-dialyzer 2019-09-22 00:40:53 +02:00
miffigriffi 64f42d412b mix credo warnings in Mobilizon context 2019-09-18 00:37:31 +02:00
miffigriffi eaff073cd2 Remove Dataloader related code from Mobilizon context 2019-09-18 00:18:45 +02:00
miffigriffi 48dbec51f5 Move caching to MobilizonWeb 2019-09-18 00:01:16 +02:00
miffigriffi 8f580ce10c Returm generation of URL by usage of MobilizonWeb.Endpoint 2019-09-17 22:10:22 +02:00
miffigriffi da97c29340 Move Email context under MobilizonWeb 2019-09-17 02:45:32 +02:00
miffigriffi ac77a7d28a Refactoring of Events context 2019-09-17 02:22:54 +02:00
miffigriffi 6372599493 Refactoring of Application module 2019-09-16 01:43:06 +02:00
miffigriffy f6800665e7 Apply formatting 2019-09-13 02:28:09 +02:00
miffigriffy 5967b30bb1 Clean specs 2019-09-13 02:15:04 +02:00
miffigriffy 56efb0acb1 Move MIME under MobilizonWeb context 2019-09-13 01:35:56 +02:00
miffigriffy d3f3553ae7 Move Activity under Events context 2019-09-13 01:35:03 +02:00
miffigriffy e358dcce77 Refactoring of Events context 2019-09-13 01:01:17 +02:00
Thomas Citharel c3b03a2e6b
Show number of participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-12 12:18:57 +02:00
miffigriffy e4a446003d Refactoring of Actors context 2019-09-11 23:36:14 +02:00
Thomas Citharel 27f2597b07
Add admin dashboard, event reporting, moderation report screens, moderation log
Close #156 and #158

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 20:53:16 +02:00
Chocobozzz 82df0526ec
Edit events fixes and update cache 2019-09-09 14:41:19 +02:00
Thomas Citharel 8f50e88e1e
Fix failing test on updating actor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 09:55:08 +02:00
Thomas Citharel cc4a59ad1f
Run mix format and fix a credo check
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 09:35:50 +02:00
miffigriffy 4418275223 Refactoring of Actors context 2019-09-09 00:52:49 +02:00
miffy 3a4a006c44 Refactoring of Adresses context 2019-09-08 03:05:30 +02:00
miffy 2a9605c66a Refactoring of Admin context 2019-09-08 02:06:28 +02:00
miffy fa037fd683 Separating of Storage context 2019-09-08 01:49:56 +02:00
miffy a32ab590ab Refactoring of config wrapper 2019-09-08 00:05:54 +02:00
miffy 96f51d3a27 Refactoring of Email context 2019-09-07 23:58:53 +02:00
miffy f316f0a940 Refactoring of Users context 2019-09-07 19:55:45 +02:00
miffy d0c9974558 Refactoring of Reports context 2019-09-07 18:54:30 +02:00
miffy c2b4fb6cff Refactoring of Media context 2019-09-07 02:36:37 +02:00
miffy 4a0c1ea42e Add separate module for pagination of queries 2019-09-07 02:32:23 +02:00
Thomas Citharel f5c3dbf128
Correctly handle event update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-05 13:59:52 +02:00
Thomas Citharel 6845825db2
Split ActivityPub.insert to create activity & insert object
So that when we're not inserting anything no need to call method

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-03 09:11:41 +02:00
Chocobozzz dc9ef9c1b5
Improve create event and prepare update event 2019-09-03 09:11:41 +02:00
Thomas Citharel cb96b807a0
Improve event creation form by introducting EventOptions
It's a subentity that holds additional metadata in a map database type

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-02 17:11:27 +02:00
Thomas Citharel 925f7bbb02 Merge branch 'feature/group-create' into 'master'
Prepare create group

See merge request framasoft/mobilizon!173
2019-09-02 12:10:23 +02:00
Chocobozzz 18b2854d99
Prepare create group 2019-09-02 11:51:42 +02:00
Chocobozzz f21c79cf6a
Don't delete the last admin of a group 2019-08-26 15:44:02 +02:00
Thomas Citharel 0e0b68445b
Reuse existing addresses when creating an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-22 16:20:42 +02:00
Thomas Citharel 641129dc74
Federate participations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-20 10:17:28 +02:00
Thomas Citharel 8f31beb0fb
Make category optionnal and hide it from the form
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-13 11:15:19 +02:00
Thomas Citharel c51115bdbe
Introduce relay
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-13 11:15:13 +02:00
Chocobozzz a007160480
Fix lint 2019-08-13 10:59:12 +02:00
Chocobozzz ac1dab0fc0
Fix guardian db hook when refresh the access token 2019-08-12 17:41:41 +02:00
Chocobozzz 6d221212ef
Remove apollo link state 2019-08-12 16:04:32 +02:00
Thomas Citharel 5fbaf42cad
Add address input and refactor federation stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-30 10:35:29 +02:00
Thomas Citharel 6d80bf43ea
Refactor adding tags to an event
Also refactor extracting tags from content, now uses Pleroma's Formatter

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-26 12:06:26 +02:00
Thomas Citharel c3cca5d613
Fix credo style reports following it's update
Mainly transform `with` into `case`

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 18:12:26 +02:00
Thomas Citharel 1cd511f440
Front end deps upgrades and fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 17:14:03 +02:00
Thomas Citharel aef841e192 Introduce backend for reports
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 13:49:22 +02:00
Thomas Citharel 33a8da4570 Merge branch 'add-node-info-2.0-support' into 'master'
Add NodeInfo 2.0 support (in addition to 2.1)

See merge request framasoft/mobilizon!155
2019-07-09 10:01:55 +02:00
Thomas Citharel 661b31d822
Add NodeInfo 2.0 support (in addition to 2.1) and fix validation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-09 09:43:13 +02:00
Thomas Citharel b52fc33d97
Fix 404s on RSS feeds
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-08 16:53:54 +02:00
Chocobozzz 0e485b2388
Add ability to update/create/delete identities 2019-07-08 16:32:22 +02:00
Thomas Citharel 49f38c8924
Final fixes for build
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-05 16:59:25 +02:00
Thomas Citharel d609ccfb51
Upload pictures fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-04 17:43:23 +02:00
Thomas Citharel 2749989a28
Drop the eex template and directly use the webpack index.html
Partly reverts ff7fd460

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-04 17:43:18 +02:00
Thomas Citharel 449baabe3c
Upgrade Elixir deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-03 17:30:22 +02:00
Thomas Citharel e8cabd38d4
Delete files when updating parent identities
Closes #127

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-06-07 15:01:10 +02:00
Thomas Citharel 87bc5f8352
Add filesize to file entity, expose it to GraphQL API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-06-03 17:13:47 +02:00
Thomas Citharel 5b3831b4bf
Attach actor to pictures entity 2019-05-31 18:07:37 +02:00
Thomas Citharel d4d295eae1
Add proxy route and proxify pics everywhere
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-05-28 10:55:13 +02:00
Thomas Citharel f90089e1bf
Refactor media upload
Use Upload Media logic from Pleroma

Backend changes for picture upload

Move AS <-> Model conversion to separate module

Front changes

Downgrade apollo-client: https://github.com/Akryum/vue-apollo/issues/577

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-05-24 17:29:51 +02:00
Julien Lavergne a2c181f7fe Update NodeInfo support to 2.1 (#79) 2019-05-24 09:18:19 +02:00
Vincent 7f31121880
Simplify PageController 2019-05-02 13:54:06 +02:00
Vincent 3f71ddfe5b Move eventos to mobilizon 2019-05-02 11:38:44 +02:00
Thomas Citharel e97be0b814
Fix tests for FeedController
And remove useless Fallbacks in Fallback controller

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 14:30:26 +02:00
Thomas Citharel 7c8f1a56af
Fix warning
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 14:04:00 +02:00
Thomas Citharel f8ed5cd779
Fix Docker setup and add back back an entrypoint
* Also add special deps for argon2 support inside the Alpine image
* Make sure yarn install is triggered

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 13:56:20 +02:00
Vincent ff7fd460f0
add make test and Remove vue-cli serve 2019-04-30 13:56:07 +02:00
Chocobozzz 25153d2ae1
Only render public comments 2019-04-26 10:03:46 +02:00
Thomas Citharel 12116ba6fa
Add visibility to actors
Also use url helpers to generate urls properly

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-25 19:05:05 +02:00
Thomas Citharel 10bfc17306 Merge branch 'feature/related_events' into 'master'
Feature/related events

See merge request framasoft/mobilizon!113
2019-04-23 11:31:20 +02:00
Thomas Citharel f5b02ed154
Show related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 11:23:18 +02:00
Thomas Citharel a877e4d7d9
Implement related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 11:22:36 +02:00
Chocobozzz d66bbc5414
Add ability to search on Group, Person or Event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 10:53:04 +02:00
Vincent 4c0a43b4d4 Minor change on web_finger_controller 2019-04-17 17:33:36 +02:00
Thomas Citharel ddad462076
Add description slug field for events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-11 14:45:31 +02:00
Thomas Citharel da2a0593ca
Various UI stuff (mainly implement mookup)
Fix lint

Disable modern mode

Fixes

UI fixes

Fixes

Ignore .po~ files

Fixes

Fix homepage

Fixes

Fixes

Mix format

Fix tests

Fix tests (yeah…)

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-11 11:58:13 +02:00
Thomas Citharel fc0214c633 Merge branch 'feature/event-maps' into 'master'
Feature/event maps

See merge request framasoft/mobilizon!105
2019-04-01 17:26:33 +02:00
Thomas Citharel ccd705bc4f
Add timeline events you're going to
Mix format

Fix chocobozzz feedback

Only show upcoming events on feed

Remove console log calls

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 17:07:00 +02:00
Thomas Citharel 0c8d2f7e00
Work around Addresses to bring them properly through GraphQL
Got caught with https://github.com/absinthe-graphql/absinthe/issues/601
at some point, that's why fields are renamed

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 16:51:15 +02:00
Chocobozzz 4fa78d7cd2
Get config and display/hide register button 2019-03-22 15:26:58 +01:00
Chocobozzz e864b38ec6
Add config endpoint 2019-03-22 13:58:57 +01:00
Thomas Citharel 2fe33aa470
ℹ Improve docs and documentation (again)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-19 11:16:03 +01:00
Thomas Citharel bba6629046
Better docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Nicer docs

No 3rd stage

Add mix.deps get before docs

Add :ex_doc on test env so that it runs into CI
2019-03-18 12:10:29 +01:00
Thomas Citharel 6ca0b5f915
Add GraphQL methods and test
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Finish

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-15 16:37:46 +01:00
Thomas Citharel 98b7618338
Add GeoSpatial backends for geocoding
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Geospatial Backend

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-15 16:37:43 +01:00
Thomas Citharel 99ac6ef100
Add GraphQL support to handle FeedTokens
Closes #88

Automatically create tokens for new users and actors

Closes #89

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-08 18:52:27 +01:00
Thomas Citharel c61c75163f
Add backend and endpoints for Feed Tokens
Closes #19 #86 #87

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-08 14:57:05 +01:00
Chocobozzz 5a8ad3ab52
Add join/leave group 2019-03-08 14:43:45 +01:00
Thomas Citharel cb0808dbad
Introduce admin and moderator role, check role on list_users action
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Add test for guards
2019-03-07 14:18:11 +01:00
Thomas Citharel d3e2f28b49
Implement public actor ICS endpoint and event ICS export
Closes #83 and #84

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-06 17:07:42 +01:00
Thomas Citharel c689406114
Extract User from Actors context
Mobilizon.Actors.User -> Mobilizon.Users.User
Also Mobilizon.Actors.Service now become Mobilizon.User.Service
And Mobilizon.Users and Mobilizon.UsersTest is introduced.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 17:23:05 +01:00
Thomas Citharel 0f107606b1
Make accept the default content-type on AP/HTML routes
Fixes case with Accept: */* getting AP instead of HTML

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:24:29 +01:00
Thomas Citharel bacd1bfb02 Merge branch 'feature/list-users' into 'master'
Add ability to list users

See merge request framasoft/mobilizon!83
2019-03-05 12:19:40 +01:00
Thomas Citharel 9c98f34b5c
Invert list users sort direction (make it desc)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:14:31 +01:00
Thomas Citharel c1f07122d1
Fix routing between BE & FE and fix event creation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:07:58 +01:00
Thomas Citharel f08b6334f0
Add @moduledoc to new module
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:41:23 +01:00
Chocobozzz a0123459b3
Add ability to list users 2019-03-05 10:41:23 +01:00
Thomas Citharel 9a60704ed9
Add and fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:13:19 +01:00
Thomas Citharel 6de839dec2
Add JSON-LD schema
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-04 18:38:30 +01:00