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
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
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
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
8856cc2f55
Rename MobilizonWeb to Mobilizon.Web
2020-01-26 21:39:49 +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
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
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
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
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
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
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
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
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
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
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
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
442a011490
Add draft feature
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-02 18:23:32 +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
miffigriffi
aed824f1aa
Fix code readability issues
2019-09-26 17:45:47 +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
eaf424e79f
Fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 11:22:16 +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
ac77a7d28a
Refactoring of Events context
2019-09-17 02:22:54 +02:00
miffigriffy
5967b30bb1
Clean specs
2019-09-13 02:15:04 +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
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
miffy
fa037fd683
Separating of Storage context
2019-09-08 01:49:56 +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
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
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
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
aef841e192
Introduce backend for reports
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 13:49:22 +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
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
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
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
9a60704ed9
Add and fix tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:13:19 +01:00
Thomas Citharel
66e67aa816
Redirect properly to correct endpoint depending on content-type
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-04 17:20:18 +01:00
Thomas Citharel
7086fe8389
Make Categories a predefined list
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Allow null values for categories for now
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-25 15:31:04 +01:00
Thomas Citharel
d37c873b04
A few fixes comming from Dialyser
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 16:57:12 +01:00
Thomas Citharel
4ec40d601b
Implement search with PostgreSQL trigrams
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Rename function to reflect that we only get one result
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Add loggers and make Ecto call parallels during search
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Implement trigrams for events & replace pg similarity operator % with <%
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 13:53:10 +01:00
Thomas Citharel
256d50e855
Allow tag relations + bump ecto deps
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-21 16:58:14 +01:00
Thomas Citharel
dfa25e0d21
Events with only one event creator participant can't be left
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 17:57:49 +01:00
Thomas Citharel
d1d3beeb35
Base default participant role on event join_options instead of visbility
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 17:09:04 +01:00
Chocobozzz
250f0b3bd1
Add API to join and leave an event
2019-02-07 16:56:59 +01:00
Thomas Citharel
4bac5a07bd
Move Participant role from integer to enum
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 16:37:40 +01:00
Thomas Citharel
a2070b1d54
Split event visibility and join options
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fix format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 11:49:14 +01:00
Chocobozzz
dd174f2446
Add ability to delete an event
2019-01-25 17:07:36 +01:00
Thomas Citharel
90fd0ff6b6
Replace Vuetify with Bulma
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Remove vuetify and add Bulma
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-24 15:35:57 +01:00
Thomas Citharel
289ba03960
Remove address_type and rename phone to phone_address
...
An event can indeed have several address types
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 17:48:08 +01:00
Thomas Citharel
2ece62bfb8
Add visibility to comments
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 16:21:13 +01:00
Thomas Citharel
ab56d3e607
🔍 Implement basic event visibility
...
See https://framagit.org/framasoft/mobilizon/wikis/spec/Event#visibility
Also brings support for event status (tentative/confirmed/cancelled)
Closes #56
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 15:56:07 +01:00
Thomas Citharel
c1e6612405
[WIP] Test transmogrifier
...
Introduce MobilizonWeb.API namespace
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
WIP
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
remove unneeded code
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
Fix warnings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-20 17:44:33 +01:00
Chocobozzz
48eb72cd4c
Add pagination to events, groups, partipants to an event and categories
...
lists
2018-12-14 11:36:22 +01:00
Thomas Citharel
ace427c223
Add test for find_close_events/4
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-04 12:06:34 +01:00
Thomas Citharel
c6e6a61000
Event changeset more cleaner
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-03 12:29:31 +01:00
Thomas Citharel
da378633ac
Moar coverage
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 17:54:54 +01:00
Thomas Citharel
9f9113f094
Change schema a bit
...
Closes #29
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-23 15:03:53 +01:00
Thomas Citharel
2939485321
Fix all warnings
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 23:30:47 +01:00
Thomas Citharel
a04dfc5293
Fix tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 18:17:53 +01:00
Thomas Citharel
5721c5fe05
Toot
2018-11-12 09:05:31 +01:00
Thomas Citharel
6e691640de
Insert :origin_comment_id too
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 18:03:53 +01:00
Thomas Citharel
fdef983125
Missing aliases
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 16:13:47 +01:00
Thomas Citharel
04e342c897
Fix things with in_reply_to_comment_id
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 15:57:46 +01:00
Thomas Citharel
b54dae7e15
Move to GraphQL
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-06 10:30:27 +01:00
Thomas Citharel
559c889f1b
Rename project to Mobilizon
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-11 17:37:39 +02:00