Commit graph

28 commits

Author SHA1 Message Date
Benjamin Neff
8372fb2240
Merge branch 'next-minor' into develop 2019-04-28 16:48:49 +02:00
Benjamin Neff
17af65e22c
Allow links with only the diaspora ID to link to a profile
closes #8000
2019-04-28 16:48:31 +02:00
Benjamin Neff
91aae4d755
Fix 500er when calling protocol handler with invalid URL 2019-04-28 16:44:29 +02:00
cmrd Senya
f85f167f50 Implement archive import backend
This implements archive import feature.

The feature is divided in two main subfeatures: archive validation and archive import.

Archive validation performs different validation on input user archive. This can be
used without actually running import, e.g. when user wants to check the archive
before import from the frontend. Validators may add messages and modify the archive.

Validators are separated in two types: critical validators and non-critical validators.

If validations by critical validators fail it means we can't import archive.

If non-critical validations fail, we can import archive, but some warning messages
are rendered.

Also validators may change archive contents, e.g. when some entity can't be
imported it may be removed from the archive.

Validators' job is to take away complexity from the importer and perform the validations
which are not implemented in other parts of the system, e.g. DB validations or
diaspora_federation entity validations.

Archive importer then takes the modified archive from the validator and imports it.

In order to incapsulate high-level migration logic a MigrationService is
introduced. MigrationService links ArchiveValidator, ArchiveImporter and
AccountMigration.

Also here is introduced a rake task which may be used by podmins to run archive
import.
2019-04-26 18:41:27 +03:00
cmrd Senya
6f812a5b8f
Add LinksController
LinksController redirects requests for provided diaspora:// links to
respective entities urls.
2018-07-11 01:24:28 +02:00
cmrd Senya
0080a2567f
StatusMessageController#create: respond 422 when aspect_ids are wrong
fixes #3862

closes #7742
2018-03-25 08:31:32 +02:00
cmrd Senya
e0e40f73c3
Spec for post creation bad aspects_ids issue 2018-03-25 08:28:59 +02:00
Benjamin Neff
e82690963d
Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Benjamin Neff
8a5752dd6c
Fix creating a post with poll
There were validation errors because `answer.poll` wasn't set.
2017-08-12 15:39:21 +02:00
Benjamin Neff
ec2c4a8564
Merge branch 'next-minor' into develop 2017-02-18 23:00:59 +01:00
Steffen van Bergerem
44b616eda8
Add reshare service 2017-02-18 22:59:38 +01:00
Steffen van Bergerem
f93124863f
Add like service 2017-02-18 22:59:33 +01:00
cmrd Senya
1fb6040344
new PostController#mentionable_in_comment action 2017-01-13 04:47:50 +02:00
cmrd Senya
33ad411bbd
Mentions in comments backend changes 2016-11-28 15:56:56 +02:00
Steffen van Bergerem
46cbc6e52a
Filter mentions on status message creation 2016-07-04 10:26:45 +02:00
Benjamin Neff
70f378a1c1 don't participate own posts on creation 2016-06-26 06:21:02 +02:00
Benjamin Neff
7184d4334e remove after_dispatch hook
handle photos in StatusMessageCreationService
2016-06-26 06:21:00 +02:00
Benjamin Neff
ebfb0aa884 create NotificationService: send notifications after receive 2016-06-26 06:20:59 +02:00
Benjamin Neff
0c8588eec8 PostService: create find!
* find returns nil if nothing found
* find! raises errors if not found or not visible
2016-03-07 05:52:54 +01:00
Benjamin Neff
017842cc01 don't update updated_at date when read the notifications.
updated_at is displayed in the frontend and should only be updated when
another notification_actor gets added

Also improved the sql-queries: update directly and not select first and
update then.
2016-03-07 05:52:54 +01:00
Benjamin Neff
d94eae0d45 refactoring PostService
* move presenters back to controllers, this is view-logic
* use PostService in CommentService
* remove iframe route, this is not used anymore
* id/guid limit at 16 chars, hex(8) is 16 chars long
2016-03-07 05:52:54 +01:00
Benjamin Neff
b398b115bc refactoring CommentService 2016-03-07 05:52:54 +01:00
Benjamin Neff
5a46da47c3 refactoring StatusMessageCreationService
* move parameter normalization back to controller, because this is
  frontend-specific.
* if the StatusMessage is public, save also public photos
2016-03-07 00:00:27 +01:00
Benjamin Neff
f913128967 don't add public shareables to aspect_visibilities 2016-03-04 20:13:52 +01:00
theworldbright
d7c92431ae Extract service from comments controller
closes #6307
2015-08-09 18:35:11 +02:00
theworldbright
cae5f94af0 Refactor status messages controller
closes #6280
2015-08-02 16:58:01 +02:00
theworldbright
2a3dde1ae5 Refactor PostService and extract its tests
Squashed commits:

[ada0f09] Remove favorites from Posts table

closes #6208
2015-07-26 13:10:24 +02:00
theworldbright
d724397168 Refactor posts controller 2015-07-26 12:58:42 +02:00