010f70e432
[TWIG][CSS][Accessibility] Base template accessibility improvements. Applying more semantic HTML5 tags and aria to describe content actions.
2021-08-20 11:38:32 +01:00
fc310a0b4e
[CSS] Fixed Favourite button background size and colour. Fixed right panel incorrect font size.
2021-08-20 11:38:32 +01:00
d398456be8
[TESTS] Fix namespace on Controller Security test
2021-08-20 11:34:08 +01:00
3288d48b8a
[TESTS] Fix broken tests and expand tests around Attachments
2021-08-20 11:34:07 +01:00
94edde001c
[TESTS] Fix Common test
2021-08-20 11:34:06 +01:00
41d759428f
[TESTS][DataFixtures] Use Temporary file instead of an ad-hoc solution to copy the upload files
2021-08-20 11:32:49 +01:00
469cd97b9b
[Posting] Respect process_links setting
2021-08-19 19:37:56 +01:00
8a01224feb
[FileQuota] Update plugin to respect the new entities
2021-08-19 19:37:56 +01:00
61d558b371
[CORE] Fix path configuration
2021-08-19 01:58:29 +01:00
8c5486ba13
[FIXTURES] Catch any exception, we don't have VIPS-related only
2021-08-19 01:58:29 +01:00
a7d4a56b14
[TESTS][Forms] Respect new naming conventions
2021-08-19 01:57:19 +01:00
bef23f20bc
[TESTS] remove accidentally duplicate sample upload
2021-08-19 01:07:51 +01:00
22ad2bd5cc
[VideoEncoder] Port plugin to v3 properly
2021-08-18 23:38:03 +01:00
968a425459
[DOCS][Developer] Paradigms: Update is_null based on poll votes
...
Everything around the use we give to php's null is about the state of having a value or not. Thus, using `is_null` always is the less bad option.
2021-08-18 23:38:03 +01:00
30975111d9
[ImageEncoder] Make plugin respect instance config and use the new core interface
2021-08-18 23:38:03 +01:00
7c85d312ed
[ENTITY][AttachmentThumbnail] Improve the way EncoderPlugins participate in the thumbnail process
2021-08-18 23:38:03 +01:00
c50e3324ef
[TWIG][Attachments] Don't throw event with mimetype in its name
2021-08-18 23:38:02 +01:00
aebc5358b5
[Core][GSFile] Improve the way EncoderPlugins participate in the file sanitization process
2021-08-18 23:38:02 +01:00
24b3e22f73
[ENTITY][Attachment] Respect rfc6838#section-4.2 mimetype length
2021-08-18 23:38:02 +01:00
6e9cde8a5c
[TESTS][Controller][AdminTest] Update int tests to use attachment file_quota instead, as we deleted attachment max width
2021-08-18 23:37:57 +01:00
4089fc692d
[CONFIG] Add setting for attachment sanitization
2021-08-18 22:17:40 +01:00
f25759d60b
[CONTROLLER][Attachment] Some attachments may not have dimensions
2021-08-18 22:17:39 +01:00
a383021992
[DOCUMENTATION] Update documentation regarding route accept formats
2021-08-18 21:40:08 +01:00
d6e6e56814
[ROUTER][UTIL] Allow specifying the Accept format for a route
2021-08-18 21:33:07 +01:00
9afa265c30
[DOCKER] Update PHP docker container to include ffmpeg, for the VideoEncoderPlugin
2021-08-18 21:20:25 +01:00
027c9a9324
[MODULES][PLUGINS] Move noteActionHandle utility to NoteHandlerPlugin which plugins which handle actions on notes should extend
2021-08-18 19:14:24 +01:00
2c10ce5cfc
[UI] Rename all forms to more specific names, to avoid form name collisions
2021-08-18 18:38:54 +01:00
c03c6f1bb5
[UTIL][Form] Disallow using very generic form names, as they can collide with other forms in the same page
2021-08-18 18:35:03 +01:00
be5328cdc5
[TESTS] Fix LocalUserTest, i forgor to boot the kernel
2021-08-18 18:09:26 +01:00
4a781d483a
[TESTS] Fix tests broken with rebased commits
2021-08-18 17:40:37 +01:00
5bcabbb025
[TESTS] Raise test coverage for Link to 100%
2021-08-18 17:35:10 +01:00
b6cd58d501
[TESTS] Raise test coverage of LocalGroup to 100%
2021-08-18 17:35:10 +01:00
2ba6f66b7f
[TESTS] Raise test coverage of LocalUser to 100%
2021-08-18 17:35:10 +01:00
152beb5798
[TESTS] Raise GSActor test coverage to 100%
2021-08-18 17:35:10 +01:00
96612fcd43
[TESTS][Attachment][AttachmentThumbnail][GSFile] Reorganize tests and raise test coverage to 100%
2021-08-18 17:35:10 +01:00
4cda3fc645
[ATTACHMENTS][AttachmentThumbnail] Fix implementation of predictScalingValues and small fixes
2021-08-18 17:35:10 +01:00
b72fcd2a05
[TESTS] Add code coverage annotations to entities
2021-08-18 17:35:10 +01:00
9018b1301a
[TESTS] Raise test coverage for Note to 100%
2021-08-18 17:35:10 +01:00
20901d26df
[Note] Fix scope check for group notes, move away from SQL, to DQL
2021-08-18 17:35:10 +01:00
0b3ebf841d
[TESTS][DataFixtures] Add user, self follows, group member and group scope note
2021-08-18 17:35:09 +01:00
fd1bd9838d
[TOOLS] Disable command echo in Makefile
2021-08-18 17:35:09 +01:00
7320c6834f
[UI][Attachment] Use Attachment methods to get the proper URL, rather than crafting it in a template
2021-08-18 17:35:09 +01:00
9c533a54a7
[ATTACHMENTS] Ensure thumbnail dimensions are bounded and change way cropping is implemented
2021-08-18 17:35:09 +01:00
5be4c6a22e
[VideoEncoder] Add plugin composer dependency php-ffmpeg/php-ffmpeg
2021-08-18 14:46:49 +01:00
61500c5223
[Embed] Move composer dependency embed/embed from core to plugin
2021-08-18 14:46:49 +01:00
f7c426e81c
[ENTITY][Link] self urls can't be considered a remote url
2021-08-18 14:34:49 +01:00
40f2f5f977
[Embed][StoreRemoteMedia] Re-add {white,black}list check config
2021-08-18 14:15:53 +01:00
b7b54b8a07
[Posting] Fix wrong usage of DB::findBy
2021-08-18 12:23:36 +01:00
a6e41d3bd8
[DOCS][Developer] Recommend reading the tests cases for when the doc doesn't cover
2021-08-17 23:39:45 +01:00
d4ad0cc3d4
[DOCS][Developer] Update storage documentation
2021-08-17 23:37:19 +01:00
3af33d1317
[ImageEncoder] Fix ImageSanitization, it should never modify the input image
2021-08-17 23:35:35 +01:00
2448d83ace
[CSS] Hotfix: Figure captions do not overflow.
2021-08-17 21:59:54 +01:00
923ff309fe
[Posting] Store uploaded filenames as titles
2021-08-17 21:48:38 +01:00
f039c86578
[Avatar] Preserve uploaded filename and use Avatar's own route instead of attachment
2021-08-17 21:48:37 +01:00
e76e3b710b
Remove weird empty template
2021-08-17 21:48:37 +01:00
022a9476cc
[TWIG][CSS] Left and right panels accessibility improvements. Tabindex is now properly set up. When panels have the attribute open but aren't focused (keyboard navigation out of panel, into main content) they aren't displayed anymore.
2021-08-17 21:43:58 +01:00
4e5f9a51f0
[TESTS] Hot-fix Security controller tests, broken with ongoing form rendering changes
2021-08-17 20:54:46 +01:00
44593f2ab4
[TWIG][CSS] More consistent classes. Checkbox styling done. Register and Login pages now done.
2021-08-17 20:52:22 +01:00
2ae1198704
[UTIL][FORM] Password form now shows the proper HTML class, and it's respective label.
2021-08-17 20:52:22 +01:00
9e52bd127f
[CONTROLLER][SECURITY] Added class names. Help labels for each form element. Each form element now has a proper block prefix (the resulting HTML won't simply concatenate the form's name to the element's label).
2021-08-17 20:52:21 +01:00
41b45435ff
[DOC] Fixed installation.md typos.
2021-08-17 20:52:21 +01:00
e9fa41c5a8
[FORM] Fix bug where options were passed in the data parameter
2021-08-17 20:52:21 +01:00
48c11a3fda
[DOCS][Developer] Add an introduction
2021-08-17 20:27:54 +01:00
fa1585bd00
[DOCS][Developer] httpclient: Add an example of lazyness care
2021-08-17 20:27:54 +01:00
f5918d8d5c
[DOCS][Developer] Paradigms: apply XRevan86 fixes and remove the return types section, we must revisit it later..
2021-08-17 20:27:54 +01:00
ff4d31404b
[DOCS][Developer] Remove low level index, we will approach these themes in another manner
...
Fix some broken links
2021-08-17 20:27:54 +01:00
ac6f2bed5e
[TOOLS] Add make command 'database-force-schema-update' to update the database schema and 'redis-shell'
2021-08-17 01:31:52 +01:00
5cb45fcd66
Duplicate public/assets/css/bg.jpg history in tests/sample-uploads/attachment-lifecycle-target.jpg history.
2021-08-17 01:31:52 +01:00
dd22894f66
[TESTS][TOOLS] Always stop containers regardless of test success
2021-08-17 01:31:52 +01:00
11178289fa
[DEPENDENCIES] Update dependencies
2021-08-16 18:05:24 +01:00
1e8beefb07
[PLUGINS][ENTITY][Cover][ProfileColor] Clean up after interns and move entity defintions to be inside the corresponding plugin, rather than in core
2021-08-16 17:20:33 +01:00
f68a2ce481
[TESTS] Raise test coverage for GSFile to 100%
2021-08-16 17:11:28 +01:00
b0f5352a53
[TESTS] Raise test coverage for Attachment controller to 100%
2021-08-16 17:11:05 +01:00
69ff8c2750
[CORE][GSFile] Use pathinfo rather than regular expressions and don't attempt to persist an already persisted entity
2021-08-16 17:10:33 +01:00
355b26221d
[CONTROLLER][Attachment] Small refactor and add testing annotation
2021-08-16 17:09:44 +01:00
d4c3e26f50
[TESTS] Remove copied upload test files, if upload failed
2021-08-16 17:09:02 +01:00
5bd5c25dcf
[TESTS] Add coverage ignore flags to trivial methods
2021-08-16 17:08:29 +01:00
e30ae79eb7
[DB][DOCUMENTATION] Explain limit: 2 in findOneBy
2021-08-16 17:07:00 +01:00
fb861ed41f
[UTIL][EXCEPTIONS] Introduce NotStoredLocallyException
2021-08-16 17:06:02 +01:00
33bf99cfda
[ENTITY][Attachment] Raise mimetype max length to 64 characters and ensure we don't attempt to store more than that
2021-08-14 21:47:49 +01:00
4d883d1011
[TESTS] Cleanup attachment test data
2021-08-14 21:46:44 +01:00
1d95080f9a
[TESTS] Remove MediaFileTest and move setup code to media data fixture
2021-08-14 19:49:51 +00:00
bb57d7dc10
[TESTS] Move Media fixtures to their own file, for organization
2021-08-14 19:49:51 +00:00
f3972abb70
[DOCUMENTATION][Entity] Improve documentation on Entity::getWithPK, explaining the ways it can be used
2021-08-14 19:49:50 +00:00
2e3ab5bdfb
[ENTITY][Link] Sometimes URLs don't work, handle that
2021-08-14 17:08:11 +01:00
d23312aff9
[Embed] Add UI element and fix some bugs
2021-08-14 17:04:59 +01:00
a43f1a641a
[TWIG] Add Links representation to notes
2021-08-14 17:04:58 +01:00
31c5fd6da7
[ImageEncoder] Handle VIPS unsupported image type
2021-08-14 17:04:58 +01:00
7b3ca428e9
[ATTACHMENT] Some attachments don't have thumbnails and that's okay
2021-08-14 17:04:58 +01:00
df5e7b139a
[CORE][GSFile] ensureFilenameWithProperExtension: extension isn't an I/O param
2021-08-14 17:04:57 +01:00
4c1fc40c43
[ENTITY][Note] Add getter for note links
2021-08-14 17:04:57 +01:00
c381e58d33
[ENTITY] Refactor RemoteURL entities to Link
...
RemoteURL was being an awfully confusing term.
2021-08-14 17:04:51 +01:00
333567c6a1
[Embed] Retrieve remote thumbnails and other improvements
2021-08-14 17:00:53 +01:00
632a54208d
[Embed] Fix usage of EmbedLib
...
Fix other minor bugs
2021-08-14 17:00:53 +01:00
daaf7ea236
[Attachment] Sometimes we can't provide download of original file
2021-08-14 17:00:53 +01:00
3019048585
[Posting] Re-add original file to attachment on upload, if it was previously removed
2021-08-14 17:00:52 +01:00
9781ddc8e0
[AttachmentToNote][Attachment] Add title getter to Attachment
2021-08-14 17:00:52 +01:00
c12eacc758
[TESTS][Twig] Fix ExtensionTest->testIconsExtension
2021-08-14 17:00:52 +01:00
d13da61d30
[StoreRemoteMedia] Implement the first version of it in v3
2021-08-14 17:00:51 +01:00
f64436771c
[UTIL] Common::config wasn't a proper port from v2, it has to accept one argument only as well
2021-08-14 17:00:51 +01:00
91666f7d61
[RemoteURLToAttachment] Fix primary key, relation is: One Attachment Has Many URLs, One URL Has One Attachment
2021-08-14 17:00:51 +01:00
b20a4c89fb
[Attachment] Allow to delete the associated file
2021-08-14 17:00:50 +01:00
6453593b0d
[MODULES] Add module configuration
2021-08-14 17:00:50 +01:00
f72cfd1c2b
[CORE][Event] Fix bug on handler Log
2021-08-14 17:00:50 +01:00
c0a404c640
[CORE][Entity] Compare with object properties when creating/updating, instead of class
2021-08-14 17:00:50 +01:00
aec8521e4b
[ENTITY][Posting] Remove GSActorToRemoteURL, Fix URL database store
2021-08-14 17:00:49 +01:00
eb6ff68f7a
[AttachmentShowRelated] Bug fix after re-introduction of NoteActions
2021-08-14 17:00:49 +01:00
c86cac2095
[CSS][Assets] Minified header icons. Reverted footer links position due to Firefox's corageous interpretation of a fixed element's position.
2021-08-14 17:00:49 +01:00
c14718e8dd
[Favourite][TWIG][CSS] Favourite shows alt-text and properly sets colours. Titles translated on the right panel.
2021-08-14 17:00:48 +01:00
ae7516c893
[ATTACHMENTS] Always store in the same location
2021-08-14 17:00:48 +01:00
32ad5dbd74
[ENTITY] Split Attachment in various new entities
...
Remove Attachment Scope
Fixed some minor bugs
Scope will be implemented later in v3. It doesn't make sense to have
the scope handling being per attachment. Different actors can post
the same attachment with different scopes. The attachment controller
will assume the highest level of scope applied to the attachment and
the rest will be handled at the note level.
Motivation:
* Remove title from attachment, as it's part of the relation between attachment and note.
* Remove actor from attachment, many actors may publish the same attachment.
* Remove is_local from attachment, as it's part of the relation between attachment and note.
* Remove remote_url from attachment, different urls can return the same attachment.
Addition:
* Attachment now has a lives attribute, it's a reference counter with a nicer name
* GSActorToAttachment
* GSActorToRemoteURL
* RemoteURL
* RemoteURLToNote
* RemoteURLToAttachment
* AttachmentToNote now has a title attribute
2021-08-14 17:00:46 +01:00
2ea739ef61
[FileQuota] We'll get back to this plugin later
2021-08-14 16:17:15 +01:00
420b3f4aeb
[DB][Attachments] Use count function rathar than fetch and count, rename to refCount, rather than countDepencies
2021-08-14 16:13:01 +01:00
6cea2b1d00
[DEPENDENCIES] Update dependencies
2021-08-14 16:13:01 +01:00
9c99c11790
[TemporaryFile][TESTS] Throw on attempt to write to null resource and fix tests
2021-08-14 16:13:01 +01:00
ecbfba1b1a
[TESTS] Add test for JSON response and invalid accept format
2021-08-14 16:13:00 +01:00
66b39d3607
[ENTITY] Add JsonSerializable interface to Entity base class and implement it for the Note class
2021-08-14 16:13:00 +01:00
8e627f2c18
[TESTS] Add test annotations to core classes
2021-08-14 16:12:59 +01:00
7cace2051f
[CORE][Controller] Fix JSON response and add test annotations
2021-08-14 16:12:59 +01:00
a4cb90ba12
[EVENTS] Change FormatNoteList do separate in and out arguments
...
This is necessary due to some weird problem which I wasn't able to figure out (but which doesn't matter)
that somehow causes the event to be called twice during testing, and thus the function was exploding
2021-08-14 16:12:58 +01:00
cb0093bd4a
[TESTS] Fix Entity test in accordance with the changes to createOrUpdate
2021-08-14 16:12:58 +01:00
c804892672
[TEST] Raise test coverage for UserPanel to 100%
2021-08-14 16:12:57 +01:00
e053ee451b
[CONTROLLER][UserPanel] Finish implementation of ::notifications so it actually saves the values in the database
2021-08-14 16:12:57 +01:00
9a6fddb004
[CONTROLLR][UserPanel][PLUGINS] Add submit button to notification settings for each transport
2021-08-14 16:12:57 +01:00
06b9bd9910
[CONTROLLER][AdminPanel] Further ensure form validity
2021-08-14 16:12:56 +01:00
47daf6169a
[CORE][Log] Add Log::unexpected_exception utility which logs and throws a ServerException
2021-08-14 16:12:56 +01:00
71b1ee7796
[CORE][Entity] Fix implementation of createOrUpdate so it doesn't throw NotFoundException if trying to create an object
...
This was previously done because we wanted to notify the callee that
and entity existed but not with the provided contents. With the change
of return value, with a bool $is_update, this is no longer a problem.
2021-08-14 16:12:55 +01:00
4266b361c0
[TESTS] Update PHPUnit config to start executing tests by last failure. This doens't seem to actually work currently, though
2021-08-14 16:12:55 +01:00
504c8f8935
[TOOLS] Add utility commands to the Makefile
2021-08-14 16:12:55 +01:00
c38bbed7df
[UTIL][FormFields] Move FormFields class to Util\Form namespace
2021-08-14 16:12:54 +01:00
7308e66981
[Favourite][TWIG][CSS] Favourite now works.
2021-08-14 16:12:54 +01:00
2590ea7b67
[CSS] Overall typography resizing to provide proper text hierarchy. Radio buttons polish, notes author box is now smaller. Better organization of CSS rules according to their filename and thus, their aim.
2021-08-14 16:12:53 +01:00
6aa61abd81
[CSS] Fixed top margin, footer elements are now actually footer elements.
2021-08-14 16:12:53 +01:00
96abf53e22
[TWIG][CSS] Buttons are now the correct size in all contexts. Right panel create a notice section re-structure.
2021-08-14 16:12:52 +01:00
b7d205465f
[TWIG][CSS] Feedback provided to active page. Removed top accent border on notes.
2021-08-14 16:12:52 +01:00
d19c990acf
[FAQ][CSS] All FAQ pages stylized, minor structure changes throughout.
2021-08-14 16:12:52 +01:00
38abbc14b9
[TWIG][CSS] Left panel text hierarchy fix (no <hr> element between timeline navigation and its items). Default CSS fixes for buttons and input file selectors.
2021-08-14 16:12:51 +01:00
0eb9575534
[CSS] Input file elements polish. It should resize properly and provide feedback when selected (not a thing in Firefox ESR yet).
2021-08-14 16:12:51 +01:00
a02093e848
[CSS] Base CSS polish, reset CSS additions for better cross-browser compatibility.
2021-08-14 16:12:51 +01:00
9343d00110
[Avatar] Delete attachment only if safe
2021-08-14 16:12:47 +01:00
67f5421691
[ATTACHMENTS] Add dependencies counter
2021-08-05 14:44:05 +01:00
bbaeaad052
[CSS] Fixed background incorrect sizing.
2021-08-05 13:09:18 +01:00
5236278f45
[CSS] Mesh gradient works as intended with no banding.
2021-08-05 13:01:31 +01:00
289eef5cf7
[Avatar] Store as regular attachments
2021-08-05 03:24:21 +01:00
c155f4e30e
[DEV] Add PsySH REPL
2021-08-05 03:24:21 +01:00
5896f5bb82
[Avatar] Move entity from core to component
2021-08-05 03:23:05 +01:00
1556b3e019
[CORE][GSFile] Allow storing files under /file
2021-08-05 03:22:57 +01:00
c58b9fb5b1
[TESTS] Ignore coverage of ResetPasswordRequest, as it uses mailing functionality. We may want to introduce this test in the future
2021-08-04 20:11:47 +00:00
97a3c067d9
[UTIL][FormFields] Allow specifying whether a password is required and provide placeholder text
2021-08-04 20:11:47 +00:00
92db61a975
[ROUTES] Remove individual settings pages, as they got merged
2021-08-04 20:11:47 +00:00
05e10589c3
[ENTITY] Refactor LocalUser::changePassword for easier use
2021-08-04 20:11:47 +00:00
a590ddd85e
[UTIL][EXCEPTION] Add AuthenticationException, representing an auth error, status code 401 unauthorized
2021-08-04 20:11:47 +00:00
0bead1c58a
[TESTS] Change format of data fixtures to allow creating more users
2021-08-04 20:11:47 +00:00
0845224188
[CORE][DB] Specify desired case in array_change_case, for clarity
2021-08-04 20:11:47 +00:00
1da1f0918e
[TESTS] Raise test coverage for AdminPanel to 100%
2021-08-04 20:11:47 +00:00
b075ab610b
[SECURITY] Do not require email when in development
2021-08-04 17:48:00 +01:00
5b858a7bc1
[DOCS][Dev] Add Debugging and Testing
2021-08-04 16:58:27 +01:00
f760de43b0
[TESTS] Fixup Security controller tests to match new UI
2021-08-03 19:37:56 +00:00
960675b459
[TESTS] Raise test coverage for AdminPanel controller to 100%
2021-08-03 19:37:56 +00:00
f9c1d14c7a
[TESTS] Raise test coverage for Attachment controller to 100%
2021-08-03 19:37:56 +00:00
ed21290ef4
[TESTS] Add a sample image to the test dataset
2021-08-03 19:37:56 +00:00
6b098a26f7
[CORE][GSFile] Ensure files are stored inside the configured storage folder, with a relative filename in the database
2021-08-03 19:37:56 +00:00
19a966f1a9
[CORE][CONTROLLER] Add TODO to Controller base class as to where our custom exception pages would be implemented
2021-08-03 19:23:03 +00:00
f5f11b6e54
[CORE][ENTITY] Allow create'ing will null values
2021-08-03 19:23:03 +00:00
9077403f65
[ImageEncoder] Don't print_r the exception as that leads to an OOM error
2021-08-03 19:23:03 +00:00
bbdad515a2
[CONFIG] Ensure consistency in config file
2021-08-03 19:23:03 +00:00
7034476cc7
[TESTS] Make PHPUnit exit on first fail and some other tweaks
2021-08-03 19:23:03 +00:00
927472cf06
[UTIL][FORM] Create a utility class that defines common form fields, such as passwords
2021-08-03 19:23:02 +00:00
b2456d8cd2
[TESTS] Raise test coverage for Controller/Security to 100%
2021-08-03 19:23:02 +00:00
d1e92a80e5
[CORE][GSFile] Assert that the destination folder where to store the attachment is inside the INSTALLDIR and store the filepath in the database
2021-08-03 19:23:02 +00:00
af951685ed
[TESTS] Add coverage ignore to TemplateController and ResetPassword (as it requires sending emails)
2021-08-03 19:23:02 +00:00
9c61e92257
[CONTROLLER][Attachment] Assert that the supplied is positive and add documentation
2021-08-03 19:23:02 +00:00
4297eb71a0
[CORE][GSFile] Change actor_id paramenter of validateAndStoreFileAsAttachment to optional and reorder them and their usages
2021-08-03 19:23:02 +00:00
b89368bf6a
[AUTOGENERATED] Update entity fields for ResetPasswordRequest entity
2021-08-03 19:23:02 +00:00
5fc5df68f5
[CORE] Add repositories, as needed by the Reset Password Bundle
2021-08-03 19:23:02 +00:00
a83d506d6c
[UTIL] Add a class that defines commonly used form fields
2021-08-03 19:22:54 +00:00
56481c8289
[CORE] Add passowrd reset and forgot password functionality
2021-08-03 19:22:54 +00:00
6d2f8daeae
[DEPENDENCIES] Add symfonycasts/reset-password-bundle as a dependency
2021-08-03 19:22:54 +00:00
bdbd588de9
[CORE][SECURITY][EMAIL] Move email confirmation functionality to it's own static wrapper, in preparation for adding password reset functionality
2021-08-03 19:22:54 +00:00
176d604abb
[CONTROLLER][Security] Refactor and make clearer errors with duplicate nicknames and emails. Return notes as a callable, since they're not used in the default template, in the login and register pages
2021-08-03 19:22:54 +00:00
bff65afe5d
[TESTS][Queue] Add @codeCoverageIgnore to select queueing functions
2021-08-03 19:22:50 +00:00
6479b698f8
[TESTS][Router] Add tests for Router and use named paramenters, as we can since PHP8
2021-08-03 19:22:16 +00:00
a01914ddac
[ENTITY][LocalUser] Add method 'findByNicknameOrEmail'
2021-08-03 19:22:16 +00:00
2e3ec15827
[CORE][Controller][TESTS] Fix issue that arrises in tests where the Accept header is not specified
2021-08-03 19:22:12 +00:00
6deac21960
[EXCEPTION] Add Email related exceptions
2021-08-03 19:21:34 +00:00
c4de4cab32
[UTIL][Nickname] Refactor Nickname and extract a validate function, as we'll want to perform normalization in select cases in the future, likely as a plugin
2021-08-03 19:21:34 +00:00
75af2232dc
[UI] Add TODO annotation to login template, since it's possible to login using email, so the fonrm field names should be updated
2021-08-03 19:21:31 +00:00
988d384654
[TESTS][DataFixtures] Add password and email to created test user
2021-08-03 19:15:30 +00:00
14db5d9864
[TESTS][Twig] Add @codeCoverageIgnore to select methods, as these are simple wrappers
2021-08-03 19:15:30 +00:00
e0ebef594f
[TESTS][DB] Update test to reflec fact that GSActor no longer has a normalized_nickname field
2021-08-03 19:15:30 +00:00
63d26d1295
[TESTS][Nickname] Update tests to reflect new usage. Normalization functionality will be moved to a plugin
2021-08-03 19:15:30 +00:00
ed850a7763
[TESTS][TemporaryFile] Update test to reflect new usage
2021-08-03 19:15:30 +00:00
e196a3577d
[ENTITY] Remove 'normalized_nickname' field from GSActor as that feature will be moved to a plugin
2021-08-03 19:15:30 +00:00
c0e4dec674
[TESTS][DOCUMENTATION][Module] Add documentation and exclude method from testing in Module base class
2021-08-03 19:15:30 +00:00
88ab76c480
[CORE][TemporaryFile] Add option to specify attempts and better handle when reaching the attemp limit without being able to create a file
2021-08-03 19:14:56 +00:00
1f9acaf4ef
[TESTS] Add tests for GSFile
2021-08-03 19:13:30 +00:00
55710aa33d
[DB] Refactor findOneBy method
2021-08-03 19:13:29 +00:00
8e743eabb9
[TESTS][DOCUMENTATION] Add documenation for the list events command and exclude it from unit testing
2021-08-03 19:13:29 +00:00
d34155c743
[CONFIG] Make password length limits configurable
2021-08-03 19:13:29 +00:00
0d6b4093fe
[TESTS] Exclude Data Fixtures from testing, as that happens before testing
2021-08-03 19:13:29 +00:00
400716c1b2
[TESTS] Exclude class Security from testing, as it's a simple wrapper
2021-08-03 19:13:29 +00:00
75c9ffde31
[TESTS] Raise test coverage for ModuleManager to 100%
2021-08-03 19:13:29 +00:00
4258148a03
[TESTS] Exclude HTTPClient from testing, as it's a simple wrapper and we don't want to be performing HTTP requests in tests, for speed and reliability
2021-08-03 19:13:29 +00:00
6956e6907c
[TESTS] Raise test coverage for Form to 100%
2021-08-03 19:13:29 +00:00
7ee908f4dc
[TESTS] Revert exposing Redis docker container ports, as this conflicts with the actual instance, and was intended for testing
2021-08-03 19:13:29 +00:00
b2d72673c7
[TESTS][EVENTS] Raise test coverage for Event class to 100%
2021-08-03 19:13:28 +00:00
b51d43e6e2
[TESTS][ENTITY] Raise test coverage for Entity class to 100%
2021-08-03 19:13:28 +00:00
5777cdeaf9
[TESTS][LOG] Raise test coverage for Log class to 100%
2021-08-03 19:13:28 +00:00
b0ef7599b2
[TESTS] Ignore GNUsocial class from tests, as it simply pipes objects around
2021-08-03 19:13:28 +00:00
2c74bd7fb4
[FORM][DOCUMENTATION] Add documentation to Form class
2021-08-03 19:13:28 +00:00
b9fdaa1401
[EVENT] Fixup implementation, as imformed by tests
2021-08-03 19:13:28 +00:00
88bb0c6b38
[ENTITY] Fixup implementation, as imformed by tests
2021-08-03 19:13:28 +00:00
df956a5f90
[DB] Handle using methods with class name as well as table name and add lookup methods
2021-08-03 19:13:28 +00:00
aa66263b92
[TESTS] Add missing tests for Common
2021-08-03 19:13:28 +00:00
ae27d95509
[TESTS] Expand and fix cache tests
2021-08-03 19:13:27 +00:00
2beda0dd44
[TESTS] Add ignore annotations to code paths that serve as hooks in DependencyInjection
2021-08-03 19:13:27 +00:00
b79629b6d2
[TESTS][CACHE] Fixup errors found in cache implementation by testing. Ensure the newest values are kept, in pushList with max_count
2021-08-03 19:13:27 +00:00
4f6f4aa512
[ENTITY] Fix foreign key type in Cover entity, as found by tests
2021-08-03 19:13:27 +00:00
3554a5c369
[TESTS] Exclude Routes from testing, as well as, temporarily, src/Security
2021-08-03 19:13:27 +00:00
5ca8842308
[TESTS] Use vendor/bin/simple-phpunit for running the tests, as it provides the appropriate polyfills
2021-08-03 19:13:20 +00:00
5bf4a68454
[LEFT][RIGHT][CSS] Panels now occupy full page in smaller screen sizes.
2021-08-03 19:02:39 +01:00
903e6b33ff
[RIGHT][CSS] Right panel now shows an intuitive icon for other note options available.
2021-08-03 19:02:39 +01:00
0a0ead3081
[TWIG][CSS] Overall CSS optimizations. Image gradients are now used, 64x64 px.
2021-08-03 19:02:39 +01:00
efeb4b4ffe
[SETTINGS][PLUGIN][CONTROLLER] Populate profile tabs event added. Settings base template populated with such event for plugins and components.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:39 +01:00
780d341939
[SETTINGS][ROUTES][CONTROLLER] Settings overhaul, refactoring to accommodate new global settings view. WIP, component settings aren't shown at the moment.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:39 +01:00
5e012c39ab
[SETTINGS][TWIG][CSS] Settings WIP. Form polished, dropdowns need styling.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:38 +01:00
787afb9b41
[BASE][CSS] Snappier and consistent animations.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:38 +01:00
0e7c657301
[TWIG][SETTINGS] WIP. Settings navigation early sketch.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:38 +01:00
95f92d34db
[CSS] <figcaption> now has top padding for better legibility, hover now resizes it's element accordingly.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:38 +01:00
3cd33fb83a
[TWIG][CSS] Panels are fixed and base content acts accordingly on all sizes.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-08-03 19:02:38 +01:00
c2fc2300c7
[DOCS][Dev] Add HTTP Client
2021-08-03 18:22:37 +01:00
7fd4149695
[DOCS][Dev] Add Security
2021-08-03 17:54:43 +01:00
0273c8ca24
[DOCS][Dev] Add Queues
2021-08-03 17:23:58 +01:00
477518abf7
[DOCS][Dev] Add Internationalisation
2021-08-03 16:07:32 +01:00
47171069c2
[DOCS][Dev] Add Attachments
2021-08-03 15:37:31 +01:00
e8f57e8380
[DOCS][Dev] Configure search
2021-08-03 15:37:30 +01:00
7f3a9bc880
[DOCS][Dev] Add Logging
2021-08-03 15:37:30 +01:00
263a5f67f3
[DOCS][Dev] Add Templates
2021-08-03 13:34:57 +01:00
df1f12470f
[DOCS][Dev] Add Routes and Controllers
2021-08-03 13:34:56 +01:00
0cf53a4163
[DOCS][Dev] Add Cache
2021-08-03 13:34:53 +01:00
12f3e1f406
[DOCS][Dev] Cleanup src directory
2021-07-31 01:57:20 +01:00
15f2514aa2
[DOCS][Dev] Add database chapter
2021-07-31 01:46:54 +01:00
900d538e26
[DOCS][DEV] Add events
2021-07-30 19:09:25 +01:00
8f8b66c938
[DOCS][Paradigms] Elaborate on Null, Set and Void
2021-07-29 13:43:57 +01:00
3c0f6b294f
[DOCS] Write exceptions chapter
2021-07-28 21:06:55 +01:00
cfd771283a
[TWIG][CSS] Final fix for panels, resizing works as intended, content is wrapped when no space is available. Simpler rules throughout.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:45 +01:00
88eea554fc
[TWIG][CSS] Panels weren't "flexing" properly, in smaller sizes the right panel form would break.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:45 +01:00
5c8735ebea
[TWIG][CSS] Fixed right panel buttons, fix issue where the form was invalid on send.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:44 +01:00
d2a7281a4d
[TWIG][CSS] Right panel WIP. Create a note now looks better, need to style in some way the default user agent buttons without removing features (e.g. current file chosen).
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:44 +01:00
0ce686d8bb
[TWIG][CSS] Left panel profile section done.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:44 +01:00
b4bf720b06
[TWIG][CSS] Register and Login styling done.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:44 +01:00
0d83bbff23
[CSS] Fixing poor responsiveness to main nav element hover animation.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:43 +01:00
a9d710f189
[CSS][TWIG] Left panel HTML nesting to better aid screen readers.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:43 +01:00
4b095961d8
[CSS][TWIG] Panels icons are now hidden on desktop view to stop possible inconsistencies on window resizing. Left Panel polish.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:43 +01:00
14ecf913bf
[CSS][TWIG] Details element is now shown by default on larger screens, and hidden on smaller screens.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:42 +01:00
2b4bf6c31f
[CSS][TWIG] Timeline navigation is now a part of the left panel, this way more items could be displayed at a time. Left panel styling WIP.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:42 +01:00
6437e68132
[TWIG] Microformats added to timeline, note's view and media. Should be backwards compatiblr as well.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:42 +01:00
37a2db3706
[CSS] Fixed accessibility issues with header and panel elements. Left, instance and right elements are now properly ordered when focused.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:41 +01:00
362be17aba
[CSS] Fixed incorrect Chromium based browsers improper main content view. Flex item order (shouldn't be a problem, but it was) and padding for the container class was the root issue.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:41 +01:00
3a5ba9b6c4
[CSS] Main container 'order' attribute was somehow a problem in Chromium.
2021-07-28 11:52:41 +01:00
dd7d412e83
[CSS] Fixed top content margin.
2021-07-28 11:52:41 +01:00
593d5bf96e
[TWIG][CSS] Accessibility improvements, all general links provide proper feedback now. Base theme CSS progress, page now looks more as it should. Panels WIP.
2021-07-28 11:52:40 +01:00
d6cf812707
[TWIG][CSS][ICONS] New profile and notice creation panel, alternative text set correctly for header icons. WIP in base styling and panels.
2021-07-28 11:52:40 +01:00
2d7b201e71
[TWIG][CSS] Found solution to show details content by default in desktop view. However, post_form is being rendered multiple times, it was already rendered in the Posting Component. Needs to be fixed.
2021-07-28 11:52:40 +01:00
ac5df2f6b3
[TWIG][CSS] Panels are now animated when shown, main content width as well as panel's is now correctly configured. WIP: displaying side panels by default when space is available, "details" element state cannot be manipulated through CSS only, need a better solution.
2021-07-28 11:52:39 +01:00
375d0097f3
[TWIG][CSS] Panels functionality works as intended, size needs to be worked upon.
2021-07-28 11:52:39 +01:00
a5eb231196
[TWIG][CSS] Complete HTML refactoring, now using details element instead of a checkbox trick per panel. Using a "grid" akin to IBM's Carbon design guidelines.
2021-07-28 11:52:39 +01:00
aa6886a62a
[TWIG][CSS] Timeline WIP. Creating a notice is now done on the right panel. HTML structure improvements, such as the timeline divided from the navigation div.
2021-07-28 11:52:39 +01:00
aa1fd8ea40
[TWIG][CSS] Base template structural refactoring to accommodate true canons of page construction. CSS WIP to reflect these changes.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:38 +01:00
f47fedcfd4
[TWIG][CSS] Fixed right panel buttons, fix issue where the form was invalid on send.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:38 +01:00
f206b55869
[TWIG][CSS] Right panel WIP. Create a note now looks better, need to style in some way the default user agent buttons without removing features (e.g. current file chosen).
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:38 +01:00
69f5c1e312
[TWIG][CSS] Left panel profile section done.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:37 +01:00
8b4148a00d
[TWIG][CSS] Register and Login styling done.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:37 +01:00
df44d92bb2
[CSS] Fixing poor responsiveness to main nav element hover animation.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:37 +01:00
021583ea05
[CSS][TWIG] Left panel HTML nesting to better aid screen readers.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:36 +01:00
4afaa6858b
[CSS][TWIG] Panels icons are now hidden on desktop view to stop possible inconsistencies on window resizing. Left Panel polish.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:36 +01:00
ab7d1b0370
[CSS][TWIG] Details element is now shown by default on larger screens, and hidden on smaller screens.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:36 +01:00
38225dfa6e
[CSS][TWIG] Timeline navigation is now a part of the left panel, this way more items could be displayed at a time. Left panel styling WIP.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:36 +01:00
154025090c
[TWIG] Microformats added to timeline, note's view and media. Should be backwards compatible as well.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:52:30 +01:00
8ec17086a0
[CSS] Fixed accessibility issues with header and panel elements. Left, instance and right elements are now properly ordered when focused.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:46:14 +01:00
18f2823e14
[CSS] Fixed incorrect Chromium based browsers improper main content view. Flex item order (shouldn't be a problem, but it was) and padding for the container class was the root issue.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:46:13 +01:00
7dd23f3f2c
[CSS] Main container 'order' attribute was somehow a problem in Chromium.
2021-07-28 11:46:13 +01:00
a34f0c2534
[CSS] Fixed top content margin.
2021-07-28 11:46:13 +01:00
7d15ec1620
[TWIG][CSS] Accessibility improvements, all general links provide proper feedback now. Base theme CSS progress, page now looks more as it should. Panels WIP.
2021-07-28 11:46:13 +01:00
2d253ee5ad
[TWIG][CSS][ICONS] New profile and notice creation panel, alternative text set correctly for header icons. WIP in base styling and panels.
2021-07-28 11:46:12 +01:00
c18879b02f
[TWIG][CSS] Found solution to show details content by default in desktop view. However, post_form is being rendered multiple times, it was already rendered in the Posting Component. Needs to be fixed.
2021-07-28 11:46:12 +01:00
a48e699133
[TWIG][CSS] Panels are now animated when shown, main content width as well as panel's is now correctly configured. WIP: displaying side panels by default when space is available, "details" element state cannot be manipulated through CSS only, need a better solution.
2021-07-28 11:46:12 +01:00
77675ea8c4
[TWIG][CSS] Panels functionality works as intended, size needs to be worked upon.
2021-07-28 11:46:11 +01:00
b7b69b549e
[TWIG][CSS] Complete HTML refactoring, now using details element instead of a checkbox trick per panel. Using a "grid" akin to IBM's Carbon design guidelines.
2021-07-28 11:46:11 +01:00
681f001f4e
[TWIG][CSS] Timeline WIP. Creating a notice is now done on the right panel. HTML structure improvements, such as the timeline divided from the navigation div.
2021-07-28 11:46:11 +01:00
c5e5708915
[TWIG][CSS] Base template structural refactoring to accommodate true canons of page construction. CSS WIP to reflect these changes.
...
Signed-off-by: Eliseu Amaro <mail@eliseuama.ro >
2021-07-28 11:46:10 +01:00
86e92fedc2
[MEDIA][Thumbnail] Fix non-instantiated variable
2021-07-26 21:19:40 +01:00
8ef6aceb6a
[DOCS][Dev] Write paradigms
2021-07-26 20:38:23 +01:00
bf01e97533
[SECURITY] Remove aggressive normalization of nicknames. This will be moved to a plugin in the future and we'll open an RFC, as discussed
2021-07-26 17:12:42 +00:00
835a3c6701
[TOOLS] Fix pre commit hook to allow for partial file commits (git add -p/git reset -p)
2021-07-26 15:46:20 +00:00
cc0ef73799
[MEDIA][AttachmentThumbnail] Add mimetype to Entity
2021-07-22 21:17:23 +01:00
c3eda07521
[Media] EncoderPlugins should handle the views that concern them
...
Ensure the intended filetypes and mimetypes during Vips conversions (part 2)
Sanitize Attachments instead of Validate (part 2)
Various bug fixes
2021-07-22 21:10:45 +01:00
832a5c0bd9
[Media] Support any kind of thumbnails in the Core
...
Sanitize Attachments instead of Validate (part 1)
Ensure the intended filetypes and mimetypes during Vips conversions (part 1)
Various bug fixes
2021-07-22 21:10:45 +01:00
143ecea376
[Media] File quota should be triggered by the Core
2021-07-22 21:10:45 +01:00
0eebcdbd51
[POSTING] Make it possible for plugins to change the placeholder string
2021-07-22 13:02:09 +01:00
aada96beb7
[MEDIA] We need permissions to run chmod in directories
...
It's better to have in the filename data that we couldnt't otherwise rapidly retrieve
2021-07-22 12:32:52 +01:00
218bec1826
[MEDIA] Fix database misses on thumbnail retrieval
...
We were storing the real scaling values instead of the predictions, but the core is never able to pre-compute the real values generated by the encoding plugins so, we have to rely on our own aproximation function ported from v2
2021-07-20 23:47:27 +01:00
4d2131808a
[FILE][TemporaryFile] Fix various issues now that we also have Symfony's file abstractions
2021-07-20 23:46:18 +01:00
4ef400f509
[DOCS][Developer] Adopt a top-down approach
...
Minor corrections to the overview
2021-07-20 12:41:48 +01:00
086754d95b
[CORE][GNUsocial] Fix undefined property typo
2021-07-20 11:48:29 +01:00
5e9cd21db5
[DOCS][User][SysAdmin] Add thomask as an author as we're starting this from his unofficial docs
2021-07-20 11:48:07 +01:00
65c2c42790
[DOCS] Add designer book.
2021-07-20 10:56:51 +01:00
d6f31ad4b4
[DOCKER][nginx] Removing default nginx config through docker/nginx/domain.sh. The default config conflicts with 'localhost' server_name.
2021-07-20 10:56:51 +01:00
8f7e0f2131
[DOCS] Elaborate initial architecture page
2021-07-20 09:41:30 +01:00
3af3526b5c
[CORE] Proxies: constant HEADER_X_FORWARDED_ALL is deprecated
...
Give ENV preference over SERVER
2021-07-19 15:24:12 +01:00
a46140fc00
[UTIL] Add utility to flatten the result of note queries
2021-05-23 19:59:42 +00:00
eecef99372
[TESTS] Raise test coverage for App\Controller\Network to 100% and fixup related code
2021-05-23 19:56:45 +00:00
5543f65ce9
[UI] Remove margin in timeline container
2021-05-12 19:40:47 +00:00
818a31a690
[UTIL] Provide static access to current request and utilities in Common
2021-05-12 19:33:03 +00:00
9b862d6a26
[CORE] Throw more meaningfull error when method doesn't exist in Security and Entity
2021-05-12 15:44:09 +00:00
f8107c86c5
[TESTS] Raise App\Core\DB\DB test coverage to 100% and fix issues found
2021-05-11 21:04:15 +00:00
ce98e80836
[TESTS] Raise App\Core\DB\UpdateListener test coverage to 100%
2021-05-06 21:57:06 +00:00
75adf2e59f
[TESTS] Change relevant tests to use GNUsocialTestCase, so they can access all the needed features
2021-05-06 21:56:28 +00:00
31518f97ee
[CORE] Clarify message when calling non existent method in Entity
2021-05-06 21:54:50 +00:00
dab822037c
[TESTS] Merge datafixtures to allow for using the correct ID in notes, and add group_inbox
2021-05-06 21:54:50 +00:00
79644d1e2b
[TESTS] Add GNUsocialTestCase, which initializes our infrastructure when bootKernel is called
2021-05-06 21:54:50 +00:00
5f9b61f4bf
[AUTOGENERATED] Update autogenerated code
2021-05-05 16:03:03 +00:00
3a6a1b71d6
[TOOLS][TESTS] Add coverage ignore tag to autogenerated code
2021-05-05 15:56:03 +00:00
f25494cd83
[TOOLS][TESTS] Add a data fixture with example notes, for testing
2021-05-05 13:37:43 +00:00
b79c0595d5
[TESTS] Expand test coverage for App\Util\Forms\ArrayTransformer, App\Util\Notification and App\Twig\Runtime
2021-05-05 13:37:10 +00:00
33cdea87ee
[TWIG] Remove unused Twig function 'get_note_other_content'
2021-05-05 13:35:25 +00:00
c532fdb4c8
[TESTS] Add ignored files and folders to config
2021-05-05 13:34:32 +00:00
5cc82785c6
[TESTS] Raise App\Util\TemporaryFile test coverage to 100%
2021-05-05 12:46:29 +00:00
05fbcdefa8
[TOOLS][TESTS] Make tests run as www-data
2021-05-05 12:46:29 +00:00
dd218b04e9
[UTIL] Fix App\Util\TemporaryFile, adding default options and preventing warning on not enough permission
2021-05-05 12:46:17 +00:00
059ed1fa76
[TESTS] Raise test coverage for NicknameTest to 100%
2021-05-05 12:46:17 +00:00
f946da6f29
[TOOLS][TESTS] Add data fixtures, which populate the database with users used for testing
2021-05-05 12:46:08 +00:00
9e2037e086
[UTIL] Rename and rewrite isTaken to checkTaken
2021-05-05 12:46:08 +00:00
84399a76e3
[ENTITY] Add 'normalized_nickname' to GSActor, the result of Nickname::normalize, so we can make sure we don't have very similar nicknames duplicated
2021-05-05 12:46:08 +00:00
4f0bdade45
[DEPENDENCIES] Add doctrine/doctrine-fixtures-bundle, which allows populating the database in the testing environment
2021-05-05 12:46:08 +00:00
d5db350595
[TOOLS][TESTS] Adjust configuration for testing environment
2021-05-05 12:45:58 +00:00
f5fcfe628e
[TESTS] Raise App\Util\HTML test coverage to 100%
2021-05-02 21:02:43 +00:00
fde7b87c65
[TESTS] Raise App\Util\Bitmap test coverage to 100%
2021-05-02 20:47:15 +00:00
f841e5e0dd
[TESTS] Raise App\Util\Common test coverage to 100%
2021-05-02 20:42:25 +00:00
39ac043d59
[ENTITY] Add uniqueness constraint to Attachment::file_hash
2021-05-02 15:48:33 +00:00
041d19a22d
[ATTACHMENTS] Don't store an attachment if it's a dupplicate, reuse it
2021-05-02 15:48:33 +00:00
b99fab00e9
[UTILS][TemporaryFile] Change way TemporaryFile takes arguments and it's internal implementation
2021-05-02 15:48:33 +00:00
88e84f2dc5
[UTIL] Fix bugs found in App\Util\Formatting by tests
2021-05-02 15:28:56 +00:00
16055c7055
[TESTS] Add tests increasing coverage of App\Util\Formatting to 100%
2021-05-02 15:28:56 +00:00
15c406a348
[TESTS] Move testing container's DB and Redis to different ports, so it can be used at the same time as the regular containers
2021-05-02 15:28:56 +00:00
eff703ca21
[TESTS] Add test container with Xdebug and allow for generation of coverage reports with 'make test'
2021-05-02 13:31:04 +00:00
2e943293e6
[ATTACHMENTS] Do not create thumbnails for attachments with mimetype different from 'image|video'
2021-05-02 00:50:16 +01:00
6aea20db05
[Embed] Do not create AttachmenThumbnail
2021-05-02 00:49:10 +01:00
a5a2032e75
[ENTITY] Fix entity->has to access private properties with closure bindTo
2021-05-02 00:14:24 +01:00
c948ca6178
[CSS][Network] Minor fixes concerning attachment representation (centering and width)
2021-05-02 00:00:03 +01:00
676210f76a
[ATTACHMENTS] Follow URL redirects and don't duplicate attachments
2021-05-02 00:00:03 +01:00
af4b0113ba
[ATTACHMENTS] Respect config for smart crop
2021-05-02 00:00:03 +01:00
3f565442d2
[Posting] Don't sanitize on storage
...
We prefer to have the original input in database and sanitize on output when appropriate
2021-05-02 00:00:03 +01:00
4397d12fa4
[AUTOGENERATED] Update auto generated code
2021-05-02 00:00:03 +01:00
c58d7e470a
[CORE][ImageEncoder] Add width and height back in attachment entity and allow for differently sized thumbs
...
The strategy adopted involves predicting the thumb size as we did in v2 before having vips resize
2021-05-02 00:00:02 +01:00
5a40d1f3e3
[Embed] Fix some bugs and change AttachmentEmbed::url to ::media_url
2021-05-01 23:58:49 +01:00
ced6e236ce
[ATTACHMENTS][GSFile] Rename ValidateAndStore functions
2021-05-01 23:57:51 +01:00
d5a7f2122a
[Embed] Local config
2021-05-01 23:57:51 +01:00
d0d98a611d
[DEPENDENCIES] Add ext-curl
2021-05-01 23:57:51 +01:00
650bfec699
[ATTACHMENTS] In sendFile, check that file exists or show a custom exception
2021-05-01 13:02:14 +00:00
6d842d60c5
[ENTITY] Change foreign key definition to new format for cover and profile_color tables
2021-05-01 12:50:49 +00:00
e0e1dca0f0
[DOCUMENTATION] Add database diagram to developer documentation
2021-05-01 12:49:04 +00:00
6374e30475
[CSS][Network] Improve attachment representation
...
Part of why we have thumbnails with a specific size is so that they are in the proper theme size
2021-04-30 23:47:46 +01:00
0086d8dec4
[CSS][Left] Vertical scroll on left menu when it doesn't fit the screen
2021-04-30 23:43:34 +01:00
6910620d59
[CSS][Network] Fix horizontal menu on smaller screens
2021-04-30 23:40:32 +01:00
0629c1434d
[UTIL][Formatting] Add twigRenderFile
2021-04-30 23:08:08 +01:00
120571fa42
[DOCUMENTATION] Add high level code walkthrough to developer docs
2021-04-30 23:08:08 +01:00
d9a3ecb116
[Posting] Add missing default visibility option
2021-04-30 23:08:08 +01:00
1bf5e9d117
[ImageEncoder][FileQuota] Move quota enforcement to it's own plugin, so it can be easily shared and disabled
2021-04-30 23:08:08 +01:00
aa28251c11
[TEMPLATES] Fix identation
2021-04-30 23:08:08 +01:00
c2f6665cce
[AttachmentShowRelated] Move Attachment related to plugin
2021-04-30 23:08:08 +01:00
b196af5f36
[SECURITY] We can't really show a stream for this, was a nice concept, but not properly doable without requiring JS
2021-04-30 23:08:08 +01:00
ebfa0e2240
[Avatar][Embed] Change use of TemporaryFile::getPath to getRealPath
2021-04-30 23:08:08 +01:00
365a7b436f
[ImageEncoder] Implement attachment validation for images. This limits the maximum dimensions of the file, enforces a per file, per user and per user-month size quota and fixes the title if it's a filename, by replacing the extension to the new one
2021-04-30 23:08:08 +01:00
93e1e4b7a9
[ENTITY] Add field size to attachments, used for quota calculations
2021-04-30 23:08:08 +01:00
e5ee31a2fe
[UTIL] Add option for setting a file suffix on TemporaryFile constructor and add missing TemporaryFileException
2021-04-30 23:08:08 +01:00
e32d8711d6
[CONFIG] Add attachments/max_{width,height} config option, which is used as maximum dimensions when validating attachments
2021-04-30 23:08:08 +01:00
78a17425f9
[DEPENDENCIES] Add oroinc/doctrine-extensions, which provides cross database platform date functions
2021-04-30 23:08:08 +01:00
94b100dc06
[CSS] Refactor Right Panel style
2021-04-30 23:08:02 +01:00
75c494dca1
[TEMPLATES] Add dynamic blocks to right panel
2021-04-30 23:05:39 +01:00
f95b8ab226
[CSS] Fix invisible checkboxes
2021-04-29 20:36:50 +00:00
6819dd9fb7
[TEMPLATES] Minor refactoring, extending left was weird
2021-04-29 20:36:50 +00:00
c57a8481b1
[Avatar] Implement avatar deletion
2021-04-29 20:36:50 +00:00
ec0c551bb3
[AVATAR] Move avatar settings page to Avatar component
2021-04-29 18:14:49 +00:00
f17d4d2d92
[Embed] Use Formatting utilities rather than substr and such
2021-04-29 18:14:49 +00:00
255055d149
[Embed] Add docblock to handle function to pass pre-commit hook
2021-04-29 17:42:31 +01:00
55c4ad40cd
[ENTITY][GSActor] Fix getAvatarUrl method
2021-04-29 17:42:06 +01:00
5fbc079c55
[RIGHT] Introduce component abstraction
2021-04-29 17:40:19 +01:00
22c79db540
[VIEWS] Minor proofreading of templates and css
2021-04-29 17:08:09 +01:00
bb56b24d8f
[ATTACHMENTS] Restrict thumbnail generation to allowed sizes. Defaults to only configured sizes, but can be extended with the event 'GetAllowedThumbnailSizes'. The intention is to prevent DoS attacks, since handling a thumbnail request is a relatively slow process
2021-04-28 21:53:02 +00:00
b2841cb5fc
[UI] Fix 'hide_attachments is not defined' error
2021-04-28 21:50:55 +00:00
f264cd6125
[ATTACHMENTS] Add controller and templates for the attachment show page, which shows extra info about an attachment, such as related notes and tags
2021-04-28 21:25:35 +00:00
d49de9d35e
[CORE] Typo in GSFile and slight Twig weirdness in base template
2021-04-28 20:16:59 +00:00
7f765c530e
[Embed][ENTITY] Fix embed route and use attachment_view rather than _show. Rename Entity::have to Entity::has, because grammar
2021-04-28 20:15:43 +00:00
e699824b1d
[Embed] Fix plugin. Only attempt to show an image, if we have one
2021-04-28 15:03:17 +00:00
6da8cf7f14
[ATTACHMENTS] Add event 'AttachmentFileInfo' to allow a plugin to override the file displayed
2021-04-28 15:01:40 +00:00
e08767cec0
[UTIL] Fix remove affix utilities, so they only try to remove an affix if the string starts/ends with it
2021-04-28 15:00:04 +00:00
83415b7aa6
[CONFIG] Add attachment related parameters to default config
2021-04-28 14:59:04 +00:00
495e66f4ae
[AUTOGENERATED] Update autogenerated code
2021-04-27 21:24:48 +00:00
17ea4ecce1
[DB] Fix error in config/services.yaml where the wrong namespace was used for the UpdateListener
2021-04-27 21:23:47 +00:00
1d7375b9cb
[TOOLS] Use \DateTimeInterface rather than DateTimeInterface
2021-04-27 21:23:00 +00:00
0a69f6de8c
[AUTOGENERATED] Run bin/generate_entity_fields for the Embed plugin
2021-04-27 21:18:44 +00:00
72cd2e7a30
[Embed] Review and port v2 code
2021-04-27 20:56:50 +00:00
c6389c63b8
[ENTITY] Add meta method 'have*' to Entity base class, which checks if a field 'isset'
2021-04-27 20:56:13 +00:00
f388554166
[ATTACHMENTS][EVENT] Add onHashFile event, which can be used to deduplicate files
...
Currently, we simply hash the contents of the file with sha256, but in the future we can use something smarter,
which could find visual feature similarity between images
2021-04-27 20:53:59 +00:00
b4ad396cd1
[FORMATTING] Add utilities to remove affixes from strings
2021-04-27 20:52:12 +00:00
c3473e45d2
[DEPENDENCIES] Add 'embed/embed', 'nyholm/psr7' and 'symfony/dom-crawler'
2021-04-27 20:50:43 +00:00
075b495f5a
[ENTITY] Add utils to Attachment and AttachmentThumbnail to get the corresponding URL and html representation parameters
2021-04-27 18:10:18 +00:00
9b3ccac246
[UTIL] Add TemporaryFile class, courtesy of Alexei Sorokin from v2, a class that ensures files stored in /tmp are removed, as it doesn't happen in some cases
2021-04-27 18:10:18 +00:00
82d9326343
[PLUGINS] Remove scripts. These will need to be implemented with Commands
2021-04-27 18:10:18 +00:00
464406cccc
[Emebed] Add Embed plugin and initial cleanup
2021-04-27 18:10:18 +00:00
2782aa9924
[UI] Use event 'ShowAttachment' to permit plugins like Embed to alter the representation
2021-04-27 18:10:18 +00:00
1df7be7e8a
[UTIL] Add method to validate url
2021-04-27 18:10:18 +00:00
792a9f097c
[HTTPClient] Add utility functions for all HTTP methods
2021-04-27 18:10:18 +00:00
4649ee9e71
[DB] Make DB::findOneBy throw a different exception if two values are found
2021-04-27 18:10:18 +00:00
c1db9bd0a3
[Posting] Extract and store URLs from note content. Introduce 'AttachmentStoreNew' event
2021-04-25 21:20:28 +00:00
cc47cda3d1
[TESTS] Fix Nickname test
2021-04-23 15:38:26 +00:00
1503c98f26
[Favourite] Make twig event operate on array rather than string
2021-04-23 12:55:42 +00:00
b82658e345
[SECURITY][DB] Make user register 'atomic', by using a single transaction for inserting all objects, to avoid partial inserts
2021-04-23 12:54:25 +00:00
1bad2fa050
[TESTS] Fix wrong namespace in tests
2021-04-22 18:26:00 +00:00
926d0af663
[PLUGIN] Change base class from Module to Plugin for all plugins
2021-04-19 18:51:42 +00:00
0a7496de1e
[AVATAR] Display avatar rounded
2021-04-19 18:41:40 +00:00
9814baf192
[UI] Use thumbnail path for thumbs
2021-04-19 13:22:50 +01:00
5ec7717fa1
[ATTACHMENTS] Move thumbnail controller to core and cleanup
2021-04-19 13:22:50 +01:00
d316f9dd6f
[ImageEncoder] Change preferred type to always be WEBP
2021-04-19 13:22:50 +01:00
529ec19801
[AVATAR] Display avatar as round on the default theme
2021-04-19 13:22:50 +01:00
e105889a59
[AVATAR] Fix JS cropping script and save square image, in case other themes need it
2021-04-19 13:22:50 +01:00
c37a75cf7b
[ImageEncoder] Move DB::persist call to AttachmentThumbnail
2021-04-19 13:22:40 +01:00
a33a25983e
[ImageEncoder] Fix error when not providing a width and/or height
2021-04-19 13:22:26 +01:00
2f137f8b44
[ATTACHMENTS] Even more further refactoring
...
Introduce Encoder plugins Instead of abstract upload and thumb modules
Ported attachment routes. In v3 thumbnail depends on existing attachment
so route updated accordingly.
2021-04-19 13:22:04 +01:00
0f52638a80
[ATTACHMENTS] Further refactoring
...
Some key points:
- Components and Plugins shouldn't extend Module directly
- Avatars should be fetched via GSActor ID, not by nickname as that isn't unique
- Avatar now is a separate Component
- Common file utilities are now to be placed in Core\GSFile, this will
handle storage and trigger validation
- Some bug fixes
2021-04-19 13:21:32 +01:00
bbc2fe1b5a
[ENTITY] Cache AttachmentThumbnail query result
2021-04-16 20:28:39 +01:00
45a894c953
[Poll] Move tables from core to plugin
2021-04-16 20:28:39 +01:00
c8915df31e
[ImageThumbnail] Finish image thumbnailing functionality
2021-04-16 20:28:39 +01:00
f6dea6e162
[DB] Fix bug in custom criteria format wrangling
2021-04-16 20:28:39 +01:00
ec8ad1888a
[DEPENDENCIES] Add php-vips
2021-04-16 20:28:39 +01:00
8a280c349f
[TOOLS] In pre-commit hook, only run php-doc-check if some PHP file changed
2021-04-16 20:28:39 +01:00
cbb36c9531
[DOCKER] Add VIPS PHP extension to Docker build
2021-04-16 20:28:39 +01:00
acf5bd1ff5
[ImageThumbnail] Implement image resizing with Intervention/Image
2021-04-16 20:28:39 +01:00
6dd6491bee
[ImageThumbnail] Structure of plugin to generate thumbnails for image attachments
2021-04-16 20:28:39 +01:00
2f65311ae6
[DB] Allow DQL queries with table name rather than entity
2021-04-16 20:28:39 +01:00
cadd48922d
[CORE] Add functionality to App\Core\Controller to get and validate GET parameters
2021-04-16 20:28:39 +01:00
2232f28283
[Posting] Rename file to attachment and cache result of actor tag query
2021-04-16 20:28:39 +01:00
b639ce906c
[MEDIA] Rename File to Attachment
2021-04-16 20:28:39 +01:00
d6414e51a2
[CORE] Rename NoteScope to VisibilityScope, as it will be used for attachment visbility too
2021-04-16 20:28:39 +01:00
1fda65bc3d
[DB] Add table map which allows using table names rather than entities in Doctrine operations
2021-04-16 20:28:39 +01:00
a5505bf848
[AUTOGENERATED] Update autogenerated code
2021-04-16 20:28:39 +01:00
678d62781b
[Directory] Fixup directory plugin
2021-04-16 20:28:39 +01:00
b5ffe8a52b
[DOCUMENTATION] Three books instead of only one
...
The User one is intended to illustrate the various common use cases, possibilities regarding customization and introduce the existing functionalities.
The Administrator one explains the step by step of how to install and maintain a GNU social instance, be it as node of The Free Network or as an intranet social network in a company setting.
The Developer one starts by introducing the Modules system and architecture, then the plugin development process and finally the exciting internals of GNU social for those looking forward to make the most advanced contributions.
2021-04-16 20:28:23 +01:00
8e9da452c6
[MEDIA] Refactor File as Attachment
2021-04-16 20:27:33 +01:00
8fc2a83e3c
[CONFIG][TWIG] Move twig config to php code to add support for placing templates in modules (plugins and components)
2021-04-16 20:21:54 +01:00
f4e40002a4
[Directory] Move templates from core to plugin
2021-04-16 20:21:54 +01:00
8c6881f526
[COMPOSER][Media] Add example composer.json in plugins/Media
2021-04-16 20:21:54 +01:00
0802f7a9e3
[TWIG] Add way to launch events from TWIG, capture service and add way to render from a string
2021-04-16 20:21:54 +01:00
d95e51a030
[LEFT][EVENT] Add event allowing plugins to add links to the left panel
2021-04-16 20:21:54 +01:00
085a98cea3
[Favourite] Move table and left panel links to plugin
2021-04-16 20:21:54 +01:00
f7af76a1ba
[DEPENDENCIES] Add wikimedia/composer-merge-plugin
2021-04-16 20:21:54 +01:00
c5b26bcffb
[FAVOURITE] Temporary commit to fix exception in timeline
2021-04-16 20:21:54 +01:00
244cc8dae1
[Favourite] Move controller to plugin
2021-04-16 20:21:54 +01:00
520733888d
Rename FFmpeg to VideoThumbnail FIXME
2021-04-16 20:21:54 +01:00
a1cac40f6a
[MODULES] Introduce the concept of abstract modules to V3
...
Introduce placeholder for abstract upload and thumb modules
Temporarily supress some bugs
2021-04-16 20:21:54 +01:00
6bfea8a0df
[NETWORK] Fix big brain bug
2021-04-14 19:54:38 +00:00
ae29a9c00a
[ENTITY] Remove extraneous File_thumbnail.php file
2021-04-14 16:12:26 +00:00
5ddc551fd9
[SCRIPTS] pre-commit now has variables double quoted
2021-04-14 15:47:10 +00:00
764ff60c34
[INSTALL] Elaborate on localhost installation
2021-04-14 15:47:06 +00:00
ae91f75aeb
[FFmpeg] Copy FFmpeg plugin from v2
2021-04-14 15:44:45 +00:00
5d4f544a03
[TOOLS] Fix missing exported variable in bin/configure
2021-04-14 15:40:14 +00:00
efd2719481
[Embed][StoreRemoteMedia][Media] Copy and cleanup plugins from v2
2021-04-14 15:37:24 +00:00
66ed6fb658
[Media] Copy media subsystem from v2 and roughly structure it for v3
2021-04-14 15:37:24 +00:00
6606a72e67
[TOOLS][DOCKER] Make sure composer doesn't require interaction when installing
2021-04-14 15:37:24 +00:00
fc019d6a6e
[ActivityPub] Remove ActivityPub plugin until we're ready to work on it, as it needs significant work
2021-04-14 15:37:24 +00:00
6be1622fd0
[DB][FKEY] Temporarily disable foreign key mapping, as there seems to be a bug in doctrine, which is under investigation
2021-04-14 15:37:24 +00:00
d0fd0e6c6c
[DB] Remove unique constraint from GSActor.nickname and fix register and related functionality
2021-04-14 15:37:24 +00:00
079d230959
[NICKNAME] Don't throw when normalizing reserved nicknames
2021-04-14 15:37:24 +00:00
637c25d5fe
[WEB] Fix translations and small inconsistency when opening on web
2021-04-14 15:37:24 +00:00
051720a686
[TESTS] Add tests to all relevant methods under App\Util and fix errors that popup
2021-04-14 15:37:24 +00:00
f3c2048c62
[NICKNAME] Add nickname min length config and check it in Nickname::normalize
2021-04-14 15:37:24 +00:00
988c5af6d3
[DEPENDENCIES] Add jchook/phpunit-assert-throws and update dependencies
2021-04-14 15:37:24 +00:00
aa58c3520c
Duplicate src/Util/Exception/NicknameTooLongException.php history in src/Util/Exception/NicknameTooShortException.php history.
2021-04-14 15:37:24 +00:00
cafd9a39a0
[TESTS] Add tests of Common and fix small oddities that pop up
2021-04-14 15:37:24 +00:00
120011a2d0
[TESTS] Fix error when testing cold redis cache
2021-04-14 15:37:24 +00:00
c8b2ce6694
[TESTS] Add tests for the bitmap utility and fix implementation
2021-04-14 15:37:24 +00:00
b855dd00ac
[LOG] Only try to log if setup, so logs can be disabled, in tests, for instance
2021-04-14 15:37:24 +00:00
d082f4249c
CACHE] Fix cache implementation with the help of tests and remove premature optimization for non-redis list caching
...
This complicated the code significantly and likely didn't help that much, if at all. The recommended setup is using Redis, anyway, which is plenty optimized
2021-04-14 15:37:24 +00:00
f11f9040b1
[TESTS] Add App\Core\Cache test
2021-04-14 15:37:24 +00:00
27dbd5521a
[DEPENDENCIES] Update dependencies, including redis-polyfill, to be able to implement a test
2021-04-14 15:37:24 +00:00
4f3b797c80
[TESTS] Update PHPUnit configuration and upgrade to version 9.5
2021-04-14 15:37:23 +00:00
f5df7edc6c
[DOCKER][TOOLS] Add option to bin/configure to use a prebuilt PHP container ( https://hub.docker.com/repository/docker/gsocial/php )
2021-04-14 15:37:23 +00:00
99c4e8ded5
[TESTS] Fix deprecations
2021-04-14 15:37:23 +00:00
a8b599d213
[DOCKER] Fix default docker-compose file
2021-04-14 15:37:23 +00:00
ffaf5da984
[TESTS] Fix unkept unit tests
2021-04-14 15:37:23 +00:00
49fa11ba07
[TEST] Fix translation test
2021-04-14 15:37:23 +00:00
a1546a51cd
[DEPENDENCIES] Upgrade to Symfony 5.2 to get my upstream ICU translation feature
2021-04-14 15:37:23 +00:00
0f0851dbf3
[DOCUMENTATION] Add documentation on installing without docker and other topics
2021-04-14 15:37:23 +00:00
ef617819e0
[DOCUMENTATION] Add documentation on installing with Docker
2021-04-14 15:37:23 +00:00
636f8d1be9
[DOCTRINE][CONFIGURATION] Add new required Doctrine DBAL parameter, for testing environments
2021-04-14 15:37:23 +00:00
b8c73d2d2a
[DEPENDENCIES] Update all dependencies
2021-04-14 15:37:23 +00:00
b2aff4c75e
[DB] Fix Doctrine errors due to lack of column uniqueness
...
So, Doctrine doesn't like that `GSActorTag.tag` is not unique, even
though composite key `[tagger, tag]` is. `tag` can't unique, but
doctrine doesn't understand this. This seems like a Doctrine bug that
should be investigated. For now we'll just not mark it as a foreign
key
2021-04-14 15:37:23 +00:00
f912236114
[DOCKER][MAIL] Temporarily disable mail container
2021-04-14 15:37:23 +00:00
349df02f78
[DOCKER][MAIL] Update config and change the way mail docker handles it, so the edits aren't visible from the outside, polluting the git staging area
2021-04-14 15:37:23 +00:00
0a15ccab9b
[DOKER][MAIL][BOOTSTRAP] Make bootstrap generate separate certificates for the web root and the mail server
2021-04-14 15:37:23 +00:00
cfbb28f1ea
[DOCKER] Remove quotes from docker env files, as docker (or at least docker-compose) include them in the actual value
2021-04-14 15:37:23 +00:00
e008bf1863
[DB] Make Note.source reference NoteSource.code, the primary key
2021-04-14 15:37:23 +00:00
297d30706f
[DOCKER] Rename docker-compose.yaml, so there can still be a default one on the repo, while the previous name can be used by the configurator without having problems with git
2021-04-14 15:37:23 +00:00
2f570fcc2a
[TOOLS][DOCKER] Rewrite the configuration script to use whiptail/dialog, and refactor
2021-04-14 15:37:23 +00:00
Angelo D. Moura
ea6623f029
[UI][NOTE][MARKDOWN] Add markdown support to the notes
2021-04-14 15:37:23 +00:00
up201706832
ccf4480395
[REPLY] Fixed CSS for reply form, making it now usable
2021-04-14 15:37:23 +00:00
up201706832
98f072bc12
[AUTH][REMEMBER-ME] Changed name of column in rememberme_token database table to fix bug
2021-04-14 15:37:23 +00:00
Daniel
03aa46cf4e
[ProfileColor] Added profile color css
2021-04-14 15:37:23 +00:00
Daniel
4d0f87b91b
[ProfileColor] Visualize profile color
2021-04-14 15:37:23 +00:00
Daniel
a4fdb193bc
[ProfileColor] Added Profile Color entity, color form and db store/load to color settings controler
2021-04-14 15:37:23 +00:00
Daniel
9ea47c5385
[ProfileColor] Added plugin base, controller and settings template
2021-04-14 15:37:23 +00:00
Daniel
79f0615441
[REVERSEFAV] Added css to make Reverse favs label in one line
2021-04-14 15:37:23 +00:00
Daniel
7e215d9f9e
[REVERSEFAV] Fixed typo
2021-04-14 15:37:23 +00:00
Daniel
04b9c736a6
[REVERSEFAV] Added reverse favorourites stream/template
2021-04-14 15:37:23 +00:00
João Brandão
5e26359783
[UI][TIMELINES] Refactored query for public stream
2021-04-14 15:37:23 +00:00
Daniel
493476f408
[UI][TIMELINES] Fix undefined main_nav_tabs in logged out view
2021-04-14 15:37:23 +00:00
Angelo D. Moura
54fd7eda06
[Directory] Actors stream now includes a link to groups stream
2021-04-14 15:37:23 +00:00
Angelo D. Moura
f838dbe5f3
[Directory] Lint fix - missed a coma
2021-04-14 15:37:23 +00:00
Angelo D. Moura
793e1b0417
[Directory] Finished implementing groups stream as a plugin
2021-04-14 15:37:23 +00:00
Angelo D. Moura
66875e93f8
[Directory] Finished implementing groups stream using Directory plugin
2021-04-14 15:37:23 +00:00
Angelo D. Moura
08fe5fb23f
[Directory] Changed the route so the plugin Directory doesn't take over - query is not working for some reason
2021-04-14 15:37:23 +00:00
Angelo D. Moura
d4038cd520
[Directory] Added the route, controller and a blank template file - something is broken
2021-04-14 15:37:23 +00:00
Angelo D. Moura
f29b15924c
[Directory] Actors are now organized by nickname
2021-04-14 15:37:23 +00:00
Angelo D. Moura
f621e521f9
[Directory] Actors are no longer related with notes, and the logged in user now shows on the stream
2021-04-14 15:37:23 +00:00
Angelo D. Moura
b9622e4512
[Directory] Changed the title of the template and add a css rule for actor-bio
2021-04-14 15:37:23 +00:00
Angelo D. Moura
f67c41a7ac
[Directory] Almost finishied creating the /actors stream - problems with the css files
2021-04-14 15:37:23 +00:00
Angelo D. Moura
19be786da8
[Directory] Add the route, controller function, and blank template file
2021-04-14 15:37:23 +00:00
Daniel
e14efe86a4
[Directory] Add documentation
2021-04-14 15:37:23 +00:00
Daniel
a19b51f91e
[Directory] Moved /actors stream to directory plugin
2021-04-14 15:37:23 +00:00
Daniel
35d2bdfd5e
[Cover] Remove of cover form
2021-04-14 15:37:23 +00:00
Daniel
485607169f
[Cover] Added cover route verifications
2021-04-14 15:37:23 +00:00
Daniel
ee039ab2e9
[Cover] Removed commented code
2021-04-14 15:37:23 +00:00
Daniel
e2df8aec10
[Cover] Input restrictions, Code cleanup
2021-04-14 15:37:23 +00:00
Daniel
0d18615fd8
[Cover] Added cover css, changed cover settings route name
2021-04-14 15:37:23 +00:00
Daniel
4f69686968
[Cover] Added temporary css
2021-04-14 15:37:23 +00:00
Daniel
777b8b55fd
[Cover] Cover route, cover now renders
2021-04-14 15:37:23 +00:00
Daniel
7688cc39a8
[Cover] Added TWIG vars for profile plugins
2021-04-14 15:37:23 +00:00
Daniel
4fd33bf37f
[Cover] Added Cover Entity, updated form handler
...
Basically the same as the avatar
2021-04-14 15:37:23 +00:00
Daniel
3d3c560516
[Cover] Started implementing Cover plugin: base class, route, base templates, added tabs in profile template
2021-04-14 15:37:23 +00:00
Diogo Machado
1abc3e3e7d
[STATIC ANALYSIS] Started removal process for the errors found by PHPStan
2021-04-14 15:37:23 +00:00
Pastilhas
f1f4ad7ba7
[DOCKER][MAIL] Fixed hash command
...
Also added permissions to start.sh
2021-04-14 15:37:23 +00:00
margarida
66670ff220
[TOOLS][DOCKER] Add mail setup to configure
2021-04-14 15:37:23 +00:00
margarida
a5eca9f110
[TOOLS][DOCKER] Changed script to write docker-compose.yaml
2021-04-14 15:37:23 +00:00
margarida
f9b98f87a4
[TOOLS][DOCKER] Change dialog method to command substitution and redirection and add way of finding git's root
2021-04-14 15:37:23 +00:00
margarida
28b337f793
[TOOLS][DOCKER] Added input verfication
2021-04-14 15:37:23 +00:00
margarida
b02564e575
[TOOLS][DOCKER] Added first version of configuration shell script
2021-04-14 15:37:23 +00:00
João Brandão
850f1b327e
[UI] Visual restructure of login/register pages
2021-04-14 15:37:23 +00:00
João Brandão
b98db96c27
[UI] Show public stream on login/register pages
2021-04-14 15:37:23 +00:00
up201706832
49b0494f28
[UI] Extracted public stream on login/register pages to a twig template
2021-04-14 15:37:23 +00:00
João Brandão
27137b4762
[UI] Visual restructure of login/register pages
2021-04-14 15:37:23 +00:00
Pastilhas
81109c88c7
[DOCKER][MAIL] Fixed variable expansion in run
2021-04-14 15:37:23 +00:00
Pastilhas
748d86d6d3
[DOCKER][MAIL] Cleanup opendkim.conf
...
Also improved consistency in other files
2021-04-14 15:37:23 +00:00
Pastilhas
dde68b1d22
[DOCKER][MAIL] Removed unsued files, modified dovecot.conf
2021-04-14 15:37:23 +00:00
Pastilhas
a27e3593fa
[DOCKER][MAIL] User is now created on setup and Dockerfile
...
Continuation of previous commit
2021-04-14 15:37:23 +00:00
Pastilhas
aaa6585a1e
[DOCKER][MAIL] Removed unused config files and scripts
...
Now user is created on setup and dockerfile
2021-04-14 15:37:23 +00:00
Pastilhas
a3908a22ae
[DOCKER][MAIL] Substituted supervisord for s6
2021-04-14 15:37:23 +00:00
Pastilhas
0a5ac7cf7e
[DOCKER][MAIL] Moved and modified setup.sh
2021-04-14 15:37:23 +00:00
Pastilhas
7e99d5faa8
[DOCKER][MAIL] Switched named volume to shared volume and changed env vars to env file
2021-04-14 15:37:23 +00:00
Pastilhas
b43cc4f742
[DOCKER][MAIL] Improved exec.sh
2021-04-14 15:37:23 +00:00
Pastilhas
e99d8481b5
[DOCKER][MAIL] Fixed small bug with ssl certificates
2021-04-14 15:37:23 +00:00
Pastilhas
5950986a6f
[DOCKER][MAIL] Fixed small bugs in config and scripts
2021-04-14 15:37:23 +00:00
Pastilhas
c37f5a59b3
[DOCKER][MAIL] New config files
2021-04-14 15:37:23 +00:00
Pastilhas
92ffc5644f
[DOCKER][MAIL] Fused services into single container
2021-04-14 15:37:23 +00:00
Pastilhas
439ea2c182
[DOCKER][MAIL] Changed directory path
2021-04-14 15:37:23 +00:00
Pastilhas
27065e5ead
[DOCKER][MAIL] Setup docker mail server
2021-04-14 15:37:23 +00:00
Pastilhas
12cfb5006a
[DOCKER][MAIL] Added docker mailserver setup
2021-04-14 15:37:23 +00:00
Daniel
ac16b3eff1
[Poll] Removed/refactored unnecessary files, changed redirect to default parameters in new poll route
2021-04-14 15:37:23 +00:00
Daniel
696ebe60e0
[Poll] Restructured templates, added misssing poll related css
2021-04-14 15:37:23 +00:00
Daniel
168b7d313a
[Poll] Polls now have an associated note, poll templates, start_show_styles event, started css
2021-04-14 15:37:23 +00:00
Daniel
3a51d3ef89
[Poll] Started testing with note integration
2021-04-14 15:37:23 +00:00
Daniel
7c8dbccee2
[Poll] Added file headers
2021-04-14 15:37:23 +00:00
Daniel
7a925cd9a6
[Poll] Added modified param for Poll/Poll response, added PollTest
2021-04-14 15:37:23 +00:00
Daniel
0a1ea8749b
[Poll] Added variable num of options
...
not sure if it is the right way to do it
2021-04-14 15:37:23 +00:00
Daniel
8543c8c68e
[Poll] Added templates, response counting
2021-04-14 15:37:23 +00:00
Daniel
8bbeb79233
[Poll] Store poll response to DB
2021-04-14 15:37:23 +00:00
Daniel
4fcde940ff
[Poll] Added New Route, RespondPoll, Poll Response, PollResponseForm
2021-04-14 15:37:23 +00:00
Daniel
a98e3a32f9
[Poll] Fixed ShowPoll route, moved Poll Entity, created NewPollForm
...
Entity was temporarily moved to src/Entity in order to load from DB, since it is yet no possible to do that from Plugin
2021-04-14 15:37:23 +00:00
Daniel
a9c35def3f
[AUTOGENERATED][Poll] Add auto generated code for poll entity and new route
2021-04-14 15:37:23 +00:00
Daniel
b860c6bbb0
[Poll] Started porting Poll Plugin
2021-04-14 15:37:23 +00:00
margarida
03007194c8
[TOOLS][DOCKER] Added input verfication
2021-04-14 15:37:23 +00:00
margarida
b600dc0902
[TOOLS][DOCKER] Added first version of configuration shell script
2021-04-14 15:37:23 +00:00
Daniel
0868880d45
[TESTS] Added unit tests
2021-04-14 15:37:23 +00:00
Angelo D. Moura
5ec7e2e092
[TWIG] Moves the SVG custom function to an extension and change the test regex
2021-04-14 15:37:23 +00:00
Angelo D. Moura
b60185a97c
[TWIG][TESTS] Update IconsExtension test
2021-04-14 15:37:23 +00:00
Angelo D. Moura
cacd9a574d
[TWIG] Add SVG icon embed function
2021-04-14 15:37:23 +00:00
Diogo Machado
5a7b895476
[DB][TESTS] Implement Doctrine event listener to update timestamps on modification, and related tests
2021-04-14 15:37:23 +00:00
Daniel
630ef3e826
[FORM] Implement ActorArrayTransformer
2021-04-14 15:37:23 +00:00
bb4f5b88e7
[PLUGIN][Favourite] Move favourite table definition to inside the plugin, as it is now supported
2021-04-14 15:37:23 +00:00
23904f326d
[SchemaDef] Finish association mapping implementation
2021-04-14 15:37:23 +00:00
9b42f525e8
[DB][NoteLocation] Add missing multiplicity
to column
2021-04-14 15:37:23 +00:00
9d12dde7c1
[DB] Fix typo in table definitions and fix name of GSActorCircle table
2021-04-14 15:37:23 +00:00
adb5cfbb72
[AUTOGENERATED][DB][File][GroupJoinQueue] Update autogenerated code and add select fields as specified in the previous commit
2021-04-14 15:37:23 +00:00
f8c47387c4
[DB] Change foreign key specification to new format
2021-04-14 15:37:23 +00:00
b337d6b2eb
[SCHEMADEF] Add preliminary support for foreign keys
2021-04-14 15:37:23 +00:00
f486656756
[DOCKER] Bump to PHP version 8
2021-04-14 15:37:23 +00:00
2c9bd3575b
[AUTOGENERATED] Update auto generated code in entities
2021-04-14 15:37:23 +00:00
e1941b6612
[TOOLS] Use GSActor rather than Gsactor in autogenerated code
2021-04-14 15:37:23 +00:00
256169a3c4
[GIT] Change my email to the new one in all files and bump copyright year
2021-04-14 15:37:23 +00:00
f51a772826
Add some missing documentation to ActivityPub
2021-04-14 15:37:23 +00:00
0d2cf6eaa6
[DB] Merge definition of SchemaDefDriver with SchemaDefPass for clarity
2021-04-14 15:37:23 +00:00
8a14222d51
[NETWORK][TreeNotes] Add TreeNotes plugin which takes over the responsibility of displaying a conversation as a tree, in order to reduce the number of queries
2021-04-14 15:37:23 +00:00
9c2a911dab
[Reply] Fix bug where wrong variable is used when replying to a note
2021-04-14 15:37:23 +00:00
Hugo Sales
cfc8af675f
[DEPENDENCIES] Update all dependencies
2021-04-14 15:37:23 +00:00
Hugo Sales
b1cb923036
Ensure group table name is quoted, as it's a reserved word in postgreSQL
2021-04-14 15:37:23 +00:00
Hugo Sales
ff1d6d9df8
Small update to php dockerfile
2021-04-14 15:37:23 +00:00
Hugo Sales
5c1b3b99f4
[DEPENDENCIES] Update dependencies
2021-04-14 15:37:23 +00:00
7e9ffbe033
[DOCUMENTATION] Add mdBook stub
2021-04-14 15:37:23 +00:00
Hugo Sales
38deea85e2
[CONFIGURATION] Remove the individual language settings from social.yaml, as these are not something that changes at runtime
2021-04-14 15:37:23 +00:00
Hugo Sales
91eb3354e3
[COMMAND] Change the way ListEventsCommand outputs the results to use the output interface and add some formatting
2021-04-14 15:37:23 +00:00
Hugo Sales
5cced1c9ed
[DOCUMENTATION][REFACTOR] Add documentation to all flagged function and do some small cleanup
2021-04-14 15:37:23 +00:00
Hugo Sales
9cc7b6adf5
[HOOKS] Update pre-commit script to check for missing documentation in functions
2021-04-14 15:37:23 +00:00
Hugo Sales
1f4f080bd2
[DEPENDENCIES] Update dependencies
2021-04-14 15:37:23 +00:00
Hugo Sales
8eb32add3a
[DEPENDENCIES] Update dependencies
2021-04-14 15:37:23 +00:00
Hugo Sales
fdaa89e3c9
[EVENT] Rename event names to camel case to make finding handlers easier
2021-04-14 15:37:23 +00:00
Hugo Sales
dd8fe29a98
[REGISTER] Add self follow when registering, fixing the '-1 followers' bug
2021-04-14 15:37:23 +00:00
Hugo Sales
ed9e4be6b2
[SETTINGS][NOTIFICATIONS] Fix error when displaying the user notification settings page
2021-04-14 15:37:23 +00:00
Hugo Sales
69202ce7a0
[Reply] Fix missing use statement
2021-04-14 15:37:23 +00:00
Hugo Sales
88ce4cbf80
[CONTROLLER] Fix use of undefined variable
2021-04-14 15:37:23 +00:00
Hugo Sales
4c021a2838
[POSTING] Fix missing use statement
2021-04-14 15:37:23 +00:00
Tiago Magalhaes
4050222bc8
[CORE] made configure script explicitly fail when bootstrap.env is not present
2021-04-14 15:37:23 +00:00
Hugo Sales
4b4da170f2
[CONFIG][CACHE] Move cache configuration from environment variables to the configuration file
2021-04-14 15:37:23 +00:00
Hugo Sales
8ef85e90e9
[UI] Make configured instance name show in UI, fix repeat icon
2021-04-14 15:37:23 +00:00
Hugo Sales
06e92344cc
[CONFIG] Various fixes to use new configuration format
2021-04-14 15:37:23 +00:00
Hugo Sales
a9944592c4
[CONFIG] Fix error on missing or empty local configuration
2021-04-14 15:37:23 +00:00
Hugo Sales
02c7bdf4f0
[CONFIG][DB] Remove config from the database, put it in yaml, so it can be baked into the container
2021-04-14 15:37:22 +00:00
Hugo Sales
b34307b74c
[DEPENDENCIES] Update dependencies
2021-04-14 15:37:22 +00:00
Hugo Sales
c43f25f4b8
[CSS][UI] Update CSS to fix reply note action (icon swap needed) and remove duplication
2021-04-14 15:37:22 +00:00
Hugo Sales
8547c54103
[CORE] Add missing use statement in module base class
2021-04-14 15:37:22 +00:00
Hugo Sales
db608ca3c1
[UTILS] Make bitmap not use a static class var and set object properties as lowercase
2021-04-14 15:37:22 +00:00
Hugo Sales
abc32ecc0e
[NoteAction] Refactor duplicated code out to base class
2021-04-14 15:37:22 +00:00
Hugo Sales
d7ff38fe24
[NOTE] Add isVisibleTo
2021-04-14 15:37:22 +00:00
Hugo Sales
4b84ef5183
[Directory] Add missing use statement
2021-04-14 15:37:22 +00:00
Hugo Sales
a7b7d487d7
POSTING remove REPLY route
2021-04-14 15:37:22 +00:00
Hugo Sales
7e7bfd1958
[EXCEPTION] Make findOne return NotFoundException
2021-04-14 15:37:22 +00:00
Hugo Sales
9f4a53dbbd
[EXCEPTION] Add base class to invalid form exception and add URL arguments to redirect exception
2021-04-14 15:37:22 +00:00
Hugo Sales
96415f8523
[SECURITY] Fix getRoles
2021-04-14 15:37:22 +00:00
Hugo Sales
e0672e559a
[MODULES] Fix module manager dev-mode rebuild
2021-04-14 15:37:22 +00:00
Hugo Sales
c8b6db650a
[UI] Only show note action buttons if a user is logged in
2021-04-14 15:37:22 +00:00
Hugo Sales
9ae31501cc
[Controller] Fix exception handler to recurse on the exception's previous (in some contexts, RedirectException gets wrapped)
2021-04-14 15:37:22 +00:00
Hugo Sales
1330c96681
[UTIL] Update bitmap base class, making using easier
2021-04-14 15:37:22 +00:00
Hugo Sales
774d7ffdf9
[Reply] Move reply functionality to a plugin
2021-04-14 15:37:22 +00:00
Hugo Sales
0492d71294
[NoteActions] Refactor note actions and fix bug in favourite
2021-04-14 15:37:22 +00:00
Hugo Sales
1c37eb7c72
[UI] Display error when submitted form is invalid
2021-04-14 15:37:22 +00:00
Hugo Sales
34fab45b6b
[MODULE][DB] Added support for loading entity definitions from modules
2021-04-14 15:37:22 +00:00
Hugo Sales
b1e49f67f4
FIXUP WITH DOCTRINE DEV
2021-04-14 15:37:22 +00:00
Hugo Sales
6926d70543
[Bridge] Replace zero dates with CURRENT_TIMESTAMP
2021-04-14 15:37:22 +00:00
Hugo Sales
09a1342588
[TOOLS] Add support for updating autocode in modules
2021-04-14 15:37:22 +00:00
Hugo Sales
ff96c2bb59
[AUTOGENERATED] Update autogenerated code in module entities
2021-04-14 15:37:22 +00:00
Hugo Sales
4ab7da32ce
[CONFIG][DEV][DOCTRINE] Add doctrine stacktrace tracking in dev mode
2021-04-14 15:37:22 +00:00
Hugo Sales
749bec5d52
[EXCEPTION][UI][UX] Add RedirectException, which can be thrown anywhere to redirect somewhere, and an exception handler
2021-04-14 15:37:22 +00:00
Hugo Sales
7a68ba4f05
[UI][NOTE] Add reply to in UI
2021-04-14 15:37:22 +00:00
Hugo Sales
3affbc3c78
[Posting] Fix form name and remove unused recycle route and controller
2021-04-14 15:37:22 +00:00
Hugo Sales
5663e5e58d
[Media] Add cache control directive to all files served
2021-04-14 15:37:22 +00:00
Hugo Sales
922c435e28
[Repeat][Favourite] Only display action buttons if logged in (instead of forcing login)
2021-04-14 15:37:22 +00:00
Hugo Sales
5c4be9d29e
[DB] Add rendered collumn to note table, so we can preserve microtags from other services
2021-04-14 15:37:22 +00:00
Hugo Sales
13fb9b4698
[DB] Fix local_user table to use a numeric id, since the username is editable
2021-04-14 15:37:22 +00:00
rainydaysavings
8e17dd1829
[TWIG] Improving view template structure
2021-04-14 15:37:22 +00:00
rainydaysavings
3a4d3fc1e2
[TWIG] Adding active rules
2021-04-14 15:37:22 +00:00
rainydaysavings
1f7e3a1d90
[UI] CSS polish all around
2021-04-14 15:37:22 +00:00
rainydaysavings
40aa4fa60e
[CONTROLLER][ROUTE] Favourites page initial query implementation and routing
2021-04-14 15:37:22 +00:00
rainydaysavings
aa4418e71a
[UI] Fixing Login CSS issues
2021-04-14 15:37:22 +00:00
Hugo Sales
76b8b29776
[UI][FEED] Fix scope in timelines; major rewrite of home timeline query, still missing scoping and paging
2021-04-14 15:37:22 +00:00
Hugo Sales
d862457623
[DB][DEFAULTS] Change attachment storage location from uploads to attachments
2021-04-14 15:37:22 +00:00
Hugo Sales
f6a40390e0
[DB] Rename notice to activity in notification table
2021-04-14 15:37:22 +00:00
Hugo Sales
1387eab434
[UI] Subtract self follow from total user follows
2021-04-14 15:37:22 +00:00
Hugo Sales
ca576981a3
[DB][NOTE] Update scope
2021-04-14 15:37:22 +00:00
Hugo Sales
5cf7050008
[Media] Display images and videos inline in notes
2021-04-14 15:37:22 +00:00
rainydaysavings
af3ed18d48
[UI][TWIG] Fixing note actions placement and size, more descriptive rules
2021-04-14 15:37:22 +00:00
Hugo Sales
54e8852fb7
[Posting] Fix posting form name and css
2021-04-14 15:37:22 +00:00
Hugo Sales
109b17b1f9
[FORM] Add names to forms
2021-04-14 15:37:22 +00:00
Hugo Sales
a129a6e368
[DB] Add Activity table, to store all known activity
2021-04-14 15:37:22 +00:00
Hugo Sales
736fb672a5
[EXCEPTION] Fix exceptions not being translated
2021-04-14 15:37:22 +00:00
Hugo Sales
7b467091d6
[DB] Add wrapper for making native queries
2021-04-14 15:37:22 +00:00
Hugo Sales
b364a51f80
[Directory] Add directory plugin, for listing people and groups
2021-04-14 15:37:22 +00:00
Hugo Sales
8f68d7deb4
[Posting] Add missing includes
2021-04-14 15:37:22 +00:00
rainydaysavings
b5b39b5f68
[UI] All radio buttons now look like they should
2021-04-14 15:37:22 +00:00
rainydaysavings
49cd0af021
[PLUGIN] Removing unnecessary labels
2021-04-14 15:37:22 +00:00
rainydaysavings
c423101c00
[TWIG] Making notes view more easily customizable
2021-04-14 15:37:22 +00:00
rainydaysavings
ebf6f8d735
[UI] Fixing note actions views
2021-04-14 15:37:22 +00:00
rainydaysavings
ce94d50043
[PLUGIN] Recycle initial implementation
2021-04-14 15:37:22 +00:00
rainydaysavings
0ed0d0470c
[Favourite] Add backend support for favourite
2021-04-14 15:37:22 +00:00
rainydaysavings
153c8d0d64
[DB] Temporarily add favourite entity in core, as plugins don't support them yet
2021-04-14 15:37:22 +00:00
Hugo Sales
75bc71f473
[DB] Add helper for removing entities
2021-04-14 15:37:22 +00:00
Hugo Sales
29f30a6932
[DB] Add support for calling methods with FQCN
2021-04-14 15:37:22 +00:00
rainydaysavings
f4e52f5e11
[TWIG] Various routes added
2021-04-14 15:37:22 +00:00
rainydaysavings
902a57d10f
[UI] Replies border fix and other minor fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
928064c5ee
[CONTROLLER] Replies and network queries implemented
2021-04-14 15:37:22 +00:00
rainydaysavings
492f32c555
[COMPONENT][CONTROLLER][TWIG] Recycle component work
2021-04-14 15:37:22 +00:00
rainydaysavings
b0566e7b8c
[TWIG][UI] Replies CSS fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
6d3dba17d2
[ROUTE] Network and replies routes added
2021-04-14 15:37:22 +00:00
rainydaysavings
2d1200e2e6
[COMPONENT] Favourite initial implementation
2021-04-14 15:37:22 +00:00
rainydaysavings
a2c40163f5
[UI] Fixing note actions placement
2021-04-14 15:37:22 +00:00
rainydaysavings
a51c546f8c
[UI] Responsiveness overall polish
2021-04-14 15:37:22 +00:00
rainydaysavings
b2c2e6b6c6
[UI] Browser compatibility improvements, various small fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
fa0612c0d1
[UI] Checkboxes now display a custom tick
2021-04-14 15:37:22 +00:00
rainydaysavings
4d0028d95f
[TWIG] Timeline attachment form restructure
2021-04-14 15:37:22 +00:00
rainydaysavings
54c54990a4
[Controller] Attempting to fix home timeline query
2021-04-14 15:37:22 +00:00
rainydaysavings
930a9a99f2
[UI] No focus outlines by default
2021-04-14 15:37:22 +00:00
rainydaysavings
36aff803c6
[UI] Reply icon now shows accordingly, same for the replies themselves
2021-04-14 15:37:22 +00:00
rainydaysavings
b609932726
[UI] Custom and accessible checkboxes, radio buttons and normal buttons
2021-04-14 15:37:22 +00:00
rainydaysavings
8f7790fa3c
[COMPONENT] Fixing typo
2021-04-14 15:37:22 +00:00
Hugo Sales
e13e763d5c
[NOTE][UI] Add note replying and UI displaying
2021-04-14 15:37:22 +00:00
Hugo Sales
c0caf520b8
[CACHE] Fix bug in list caching
2021-04-14 15:37:22 +00:00
Hugo Sales
1c1ef7a572
[MODULE] Fix avatars not loading
2021-04-14 15:37:22 +00:00
Hugo Sales
fefee324b4
[DB][MODULES][ActivityPub] Cleanup table definitions
2021-04-14 15:37:22 +00:00
rainydaysavings
07178e6ffa
[TWIG] Timeline template rework
2021-04-14 15:37:22 +00:00
rainydaysavings
d96e4f9076
[ROUTE] Home timeline route url now shows accordingly as the user nickname
2021-04-14 15:37:22 +00:00
rainydaysavings
6445931493
[UI] Posting form re-styling
2021-04-14 15:37:22 +00:00
rainydaysavings
11d6c19d65
[CONTROLLER] Reply initial implementation
2021-04-14 15:37:22 +00:00
rainydaysavings
b9355b49f3
[COMPONENT] Posting form restructure and minor fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
be86a05ddb
[TWIG] Timeline structure rework
2021-04-14 15:37:22 +00:00
rainydaysavings
79be38992f
[ROUTE] Home timeline added
2021-04-14 15:37:22 +00:00
rainydaysavings
6d92230c32
[CONTROLLER] Home timeline controller work
2021-04-14 15:37:22 +00:00
rainydaysavings
f5267a1975
[UI] Posting form styling work
2021-04-14 15:37:22 +00:00
rainydaysavings
5dbde32f01
[COMPONENT] Posting form now shows a random default string
2021-04-14 15:37:22 +00:00
rainydaysavings
655b5e36a4
[UI] Links removed since they are part of a plugin
2021-04-14 15:37:22 +00:00
rainydaysavings
a4c6fbbbd8
[UI] Post form new structure first styling implementation
2021-04-14 15:37:22 +00:00
rainydaysavings
1f89f3298c
[UI] Small border fix
2021-04-14 15:37:22 +00:00
rainydaysavings
f16fcb0200
[COMPONENTS] Small fix
2021-04-14 15:37:22 +00:00
rainydaysavings
253705f704
[UI][TWIG] Better, divided form rendring of the posting form
2021-04-14 15:37:22 +00:00
rainydaysavings
cf8c85f6ba
[UI] Small border radius problem fix
2021-04-14 15:37:22 +00:00
rainydaysavings
dec35a6aa1
[COMPONENT] Posts scope initial form
2021-04-14 15:37:22 +00:00
rainydaysavings
9442556c3e
[UI] Fixing login and register styling, refactoring
2021-04-14 15:37:22 +00:00
rainydaysavings
a761c4e11a
[UI] Fixing issue where notices wouldn't break text
2021-04-14 15:37:22 +00:00
rainydaysavings
fa40bfb8dc
[UI] Fixing static pages styling
2021-04-14 15:37:22 +00:00
rainydaysavings
27d292affd
[UI] Fixes to settings CSS
2021-04-14 15:37:22 +00:00
rainydaysavings
dc5992bebd
[UI] Finalizing timeline structure and CSS
2021-04-14 15:37:22 +00:00
rainydaysavings
3c06a1e24f
[UI] New reset CSS to deal with firefox's abysmal and evil defaults
2021-04-14 15:37:22 +00:00
Hugo Sales
84cfa65bc6
[ActivityPub] Initial cleanup, removing 'die' statements, and ignoring the subfolders
2021-04-14 15:37:22 +00:00
Hugo Sales
43665749bb
[UI][TWIG] Small UI cleanup and change twig 'active' function to check for starts with, rather than equals
2021-04-14 15:37:22 +00:00
Hugo Sales
57297aba56
[DB][MEDIA] Small database structure changes
2021-04-14 15:37:22 +00:00
Hugo Sales
9204213dbc
[MEDIA] Only try to get an avatar if a user is logged in
2021-04-14 15:37:22 +00:00
Hugo Sales
1b0cab6dc8
[UI][NOTE] Post and see attachments
2021-04-14 15:37:22 +00:00
Hugo Sales
9a0c64c3d1
[DEPENDENCY] Add tgalopin/html-sanitizer-bundle and transitively tgalopin/html-sanitizer
2021-04-14 15:37:22 +00:00
Hugo Sales
4b8e6bb198
[MEDIA][CACHE] Cache avatar queries and delete stale values; small refactoring
2021-04-14 15:37:22 +00:00
Hugo Sales
624aef0a8e
[UI][MEDIA] Add actor avatar in feed timeline
2021-04-14 15:37:22 +00:00
Hugo Sales
d66ec9d85c
[SECURITY] Fix error in user registering where password wasn't hashed
2021-04-14 15:37:22 +00:00
rainydaysavings
fc6bb1ddf6
[UI] Fixing timeline notice structure and CSS
2021-04-14 15:37:22 +00:00
rainydaysavings
475e78e13f
[UI] Fix left panel new dynamic components view
2021-04-14 15:37:22 +00:00
Hugo Sales
8ceeb6be80
[UI][SELFTAGS] Display 'none' if the user doesn't have selftags
2021-04-14 15:37:22 +00:00
Hugo Sales
f76bfca921
[UI][ACCOUNT][SETTINGS] Hack to fix error related to phone number, until a solution is found upstream
2021-04-14 15:37:22 +00:00
Hugo Sales
0758b84d2c
[UI][LEFT] Add # before selftags, and link
2021-04-14 15:37:22 +00:00
Hugo Sales
aab9212ffa
[UI][FAQ] Fix static pages
2021-04-14 15:37:22 +00:00
Hugo Sales
b3c5fe9e96
[CONTROLLER] Stop propagation of kernel.controller so notices aren't posted 5 times. Not sure why it happens otherwise
2021-04-14 15:37:22 +00:00
Hugo Sales
8ca49478ab
[WRAPPER][HTTPClient] Static wrapper around Symfony's HTTP Client
2021-04-14 15:37:22 +00:00
Hugo Sales
e142b90653
[DB][FOLLOW] Change Follow table
2021-04-14 15:37:22 +00:00
Hugo Sales
8276baecab
[UI][CACHE][DB] Add follow counts to left panel, caching the results; change follow table
2021-04-14 15:37:22 +00:00
Hugo Sales
b678ab2191
[UI][LEFT] Add link to settings on avatar and personal info
2021-04-14 15:37:22 +00:00
Hugo Sales
5ed2abaf64
[ENTITY] Add Entity base class to all entities
2021-04-14 15:37:22 +00:00
Hugo Sales
513a1e58b8
[MODULE][Left][UI][TAGS] Add Left module which handles fetching tags and followers, fix self tags
2021-04-14 15:37:22 +00:00
Hugo Sales
d86636ebd4
[DB][File] Remove timestamp, add actor_id
2021-04-14 15:37:22 +00:00
Hugo Sales
6d1fa10965
[DB][AVATAR] Remove extraneous slash
2021-04-14 15:37:22 +00:00
Hugo Sales
86bd1dbbbf
[DB][DEFAULTS] Add avatar/default
2021-04-14 15:37:22 +00:00
Hugo Sales
96aa98cbcf
[UserPanel] Fix upload of avatar
2021-04-14 15:37:22 +00:00
Hugo Sales
30deeaf4ef
[Media] Use utils
2021-04-14 15:37:22 +00:00
Hugo Sales
fe50909549
[DB] Add 'dql' method to wrap 'createQuery' and replace 'Gsactor' with 'GSActor'
2021-04-14 15:37:22 +00:00
Hugo Sales
651af27674
[Media] Move code from media.php to utils.php
2021-04-14 15:37:22 +00:00
Hugo Sales
75958fc9b4
[MODULE][Posting] Add Posting module, which handles notice posting
2021-04-14 15:37:22 +00:00
Hugo Sales
036b4480f3
[MEDIA] Move avatar fetching and adding to ouput to media component
2021-04-14 15:37:22 +00:00
Hugo Sales
d4813b4ce9
[UTIL][Common] Fix import
2021-04-14 15:37:22 +00:00
Hugo Sales
21be5199cc
[CONTROLLER][AdminPanel] Add missing use statement
2021-04-14 15:37:22 +00:00
Hugo Sales
8f43c12e22
[STREAM][NetworkPublic] Add skeleton of public timeline and posting
2021-04-14 15:37:22 +00:00
Hugo Sales
a752a5a07c
[UTIL][Common] Implement 'isSystemPath'
2021-04-14 15:37:22 +00:00
Hugo Sales
4945a1342f
[SECURITY] Wrap getUser in a try catch, in case the user doesn't exist
2021-04-14 15:37:22 +00:00
Hugo Sales
fd7e06bf18
[COMMAND] Fix 'bin/console doctrine:database:create' by only loading defaults if we have a connection
2021-04-14 15:37:22 +00:00
Hugo Sales
e2960aebcb
[DEPENDENCY] Update dependencies
2021-04-14 15:37:22 +00:00
Hugo Sales
5b11c26e79
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:22 +00:00
Hugo Sales
a60c79c35d
[TOOLS] Fix bin/generate_entity_fields
2021-04-14 15:37:22 +00:00
Hugo Sales
0508886fc4
[CORE][DB] Fix uses of db tables after previous restructure
2021-04-14 15:37:22 +00:00
Hugo Sales
e0af29fd5e
[CORE] Data Representation and Modelling refactor
2021-04-14 15:37:22 +00:00
rainydaysavings
9fa363d9bf
[UI] Public feed responsive CSS work
2021-04-14 15:37:22 +00:00
rainydaysavings
c3a0b08c40
[UI] Responsive settings CSS work
2021-04-14 15:37:22 +00:00
rainydaysavings
b52d4faca7
[UI] Responsive base design polish
2021-04-14 15:37:22 +00:00
rainydaysavings
7d593366c7
[UI] Feed structure done, feed CSS work
2021-04-14 15:37:22 +00:00
rainydaysavings
4d00a0f6dd
[UI] Polishing design, settings pages
2021-04-14 15:37:22 +00:00
rainydaysavings
648a911055
[UI] Polishing base template
2021-04-14 15:37:22 +00:00
rainydaysavings
0d3a1cc14e
[UI] Left panel theme now looks like it should
2021-04-14 15:37:22 +00:00
rainydaysavings
c9b36b6030
[UI] Right panel checkbox size fix
2021-04-14 15:37:22 +00:00
rainydaysavings
52caf7cab1
[UI] Settings theme according to base theme
2021-04-14 15:37:22 +00:00
rainydaysavings
46d946f381
[UI] Complete base CSS overhaul and new theme
2021-04-14 15:37:22 +00:00
rainydaysavings
4568578e16
[UI] Right panel added
2021-04-14 15:37:22 +00:00
rainydaysavings
c0b6d8807f
[UI] Additional fixes to settings page
2021-04-14 15:37:22 +00:00
rainydaysavings
c25d33e38a
[UI] Small general settings CSS fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
488247119a
[UI] Settings small fix
2021-04-14 15:37:22 +00:00
rainydaysavings
08c792fac7
[UI] Notification settings checkbox placement fix
2021-04-14 15:37:22 +00:00
Hugo Sales
e96c273351
[LocalUser] Fix missing extend
2021-04-14 15:37:22 +00:00
Hugo Sales
a20e95fd38
[ROUTES] Add redirect from root to main/all, link from header to root, and change parameter order on RouteLoader::connect
2021-04-14 15:37:22 +00:00
Hugo Sales
37f21b516d
[EXCEPTION] Add ServerException and inherit previous throwable
...
imported from v2/5ea5d3007563f76a77efbfb66936315441922542
2021-04-14 15:37:22 +00:00
Alexei Sorokin
690b8750c6
[DATABASE] Enable fulltext search by default
...
Also rename fulltext indices to more fitting names
Imported from v2/f84dbb369f01a1d4a9bc362d01cdd100cdc79313
2021-04-14 15:37:22 +00:00
Hugo Sales
459a60d789
[MEDIA][EXCEPTIONS] Fix errors and deprecations
2021-04-14 15:37:22 +00:00
Hugo Sales
56c4309cb8
[SECURITY] Refactor
2021-04-14 15:37:22 +00:00
Hugo Sales
d21d4f5cb1
[AVATAR] Update way avatar is sent, to use proper symfony responses, make config('site', 's_static_delivery') into a boolean
2021-04-14 15:37:22 +00:00
Hugo Sales
a498134b13
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:22 +00:00
Hugo Sales
d91ab6f277
[TOOLS] Update generate_entity_fields
2021-04-14 15:37:22 +00:00
Hugo Sales
a5c97762e0
[AVATAR] Fixed avatar upload, added avatar inline download and updated template and base controller
2021-04-14 15:37:22 +00:00
Hugo Sales
d5e41ec099
[AVATAR] Handle avatar upload without js and save and validate uploaded files
2021-04-14 15:37:22 +00:00
Hugo Sales
9e45641b7b
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:22 +00:00
Hugo Sales
b7300c6457
[DEPENDENCIES] Update dependencies
2021-04-14 15:37:22 +00:00
Hugo Sales
04258b6072
[JS] Whitespace cleanup
2021-04-14 15:37:22 +00:00
Hugo Sales
480904a4e3
[MEDIA][AVATAR] Handle avatar validation and storage
2021-04-14 15:37:22 +00:00
Hugo Sales
7635f455ab
[DB] Add entity base class to allow sharing methods such as 'create'
2021-04-14 15:37:22 +00:00
Hugo Sales
c06346ef31
[DB][FILE][AVATAR] Handle deleting files, change file and avatar tables
2021-04-14 15:37:22 +00:00
Hugo Sales
65d6204a01
[UI][SETTINGS] User notification settings with configurable transports (through plugins)
2021-04-14 15:37:22 +00:00
Hugo Sales
bdacd638c7
[PLUGIN] Remove Test plugin
2021-04-14 15:37:22 +00:00
Hugo Sales
b9a2badc31
[COMPONENT][PLUGIN] Move Email and XMPP notification handlers from components to plugins, so they can be disabled
2021-04-14 15:37:22 +00:00
Hugo Sales
be49bfa0c1
[COMPONENT] Remove 'post on status change' option for email transport
2021-04-14 15:37:22 +00:00
Hugo Sales
c1963438bc
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:22 +00:00
rainydaysavings
19e4f120c0
[UI] Notifications settings styling finished
2021-04-14 15:37:22 +00:00
rainydaysavings
cc4a95fbd5
[UI] Notification settings styling progress
2021-04-14 15:37:22 +00:00
rainydaysavings
246bf30c41
[UI] Notification settings tabs functional
2021-04-14 15:37:22 +00:00
rainydaysavings
a71f54c6bf
[UI] Notifications settings page CSS work
2021-04-14 15:37:22 +00:00
rainydaysavings
e4db0eb9b9
[UI] Accessibility improvements all around
2021-04-14 15:37:22 +00:00
rainydaysavings
e1ff2a0ef1
[UI] Fixed issue where certain form element would be on top the left panel
2021-04-14 15:37:22 +00:00
rainydaysavings
3f98f8fecf
[ROUTES] Fix use statement
2021-04-14 15:37:22 +00:00
rainydaysavings
10010552e1
[JS][UI][AVATAR] JS cropping script
2021-04-14 15:37:22 +00:00
rainydaysavings
d38bf8ff4c
[UI] Cropping avatar as a circle, proper preview done
2021-04-14 15:37:22 +00:00
rainydaysavings
caab08b017
[CONTROLLER][UI] Avatar JS cropping added
2021-04-14 15:37:22 +00:00
rainydaysavings
85d8d9b268
[UI] Login and Register button fixes
2021-04-14 15:37:22 +00:00
rainydaysavings
a64a099d7d
[UI] Controller and Route for FAQ page created as well as basic template structure
2021-04-14 15:37:22 +00:00
rainydaysavings
2a75237c70
[UI] Settings pages routes and styling done.
2021-04-14 15:37:22 +00:00
Hugo Sales
d7801737f6
[COMPONENT][PLUGIN] Small refactor and add license
2021-04-14 15:37:22 +00:00
Hugo Sales
b2b0990bf6
[CONTROLLER][UI] Add notification settings form
2021-04-14 15:37:22 +00:00
Hugo Sales
ed84c1f8bf
[MODULE] Reload modules if modified, except in production environment
2021-04-14 15:37:22 +00:00
Hugo Sales
6567f10e69
[UTIL] Fix and rename arrayRemoveKeys
2021-04-14 15:37:22 +00:00
Hugo Sales
b2dbf9bc20
[CONFIG] Cleanup services.yaml config file
2021-04-14 15:37:21 +00:00
Hugo Sales
78929629f0
[FORMATTING] Update license header in SchemaDef compiler pass
2021-04-14 15:37:21 +00:00
Hugo Sales
7945a9c825
[EVENT][ROUTES] Add event to allow modules to add routes, 'add_route'
2021-04-14 15:37:21 +00:00
Hugo Sales
4c60aac8f8
[FRAMEWORK] Avoid double initializing the framework
2021-04-14 15:37:21 +00:00
Hugo Sales
d394f6fc9c
[EVENT] Fix event handler and rename events to snake_case
2021-04-14 15:37:21 +00:00
Hugo Sales
605a8919a7
[PLUGIN] Update example plugin
2021-04-14 15:37:21 +00:00
Hugo Sales
bfa3095137
[MODULE][COMPILER] Add compiler pass responsible for loading, instantiating and wiring enabled modules
2021-04-14 15:37:21 +00:00
Hugo Sales
0e401edac2
[MODULE] Added module base class
2021-04-14 15:37:21 +00:00
Hugo Sales
468d00d393
[COMMAND] Fix ListEvents command to properly display the callable
2021-04-14 15:37:21 +00:00
Hugo Sales
f5f10890b6
[COMPOSER][MODULE] Add autoloading rules for components and plugins
2021-04-14 15:37:21 +00:00
Hugo Sales
9b2db7608b
[MODULE] Renamed modules to components
2021-04-14 15:37:21 +00:00
Hugo Sales
0ca169aad2
[UTIL][FORM] Add form transformer array <--> string
2021-04-14 15:37:21 +00:00
Hugo Sales
9291bfbecb
[UTIL] Add Common::array_remove_keys
2021-04-14 15:37:21 +00:00
Hugo Sales
e620c20bb4
[UI][CONTROLLER] Work on tabbed notification settings panel
2021-04-14 15:37:21 +00:00
Hugo Sales
4b73024a57
[MAIL] Make mailserver a required service
2021-04-14 15:37:21 +00:00
Hugo Sales
b4e42d6562
[SECURITY] Ensure ARGON2 constants are defined, or throw exception
2021-04-14 15:37:21 +00:00
Hugo Sales
3934d403ef
[DEPENDENCY] Update dependencies
2021-04-14 15:37:21 +00:00
Hugo Sales
e571c62319
[UI][CONTROLLER] Refactor UserPanel to use the new Form::handle method and add placeholders in the password fields
2021-04-14 15:37:21 +00:00
Hugo Sales
9dffd1c93e
[DATABASE] Remove DATABASE::flush from Profile::setSelfTags
2021-04-14 15:37:21 +00:00
Hugo Sales
34890aff90
[FORMATTING] Add option to split a string to array by both a comma and a space
2021-04-14 15:37:21 +00:00
Hugo Sales
503fa2e537
[FORM] Add DataTransformer to and from array
2021-04-14 15:37:21 +00:00
Hugo Sales
e10e6644e3
[FORM] Add Form::handle which automagically creates a form, handles a request, and writes the data to the given entity and update Form::create to do some more magic as well
2021-04-14 15:37:21 +00:00
Hugo Sales
4d2770319e
[DATABASE][TOOLS] Update local_user to return the proper PhoneNumber type
2021-04-14 15:37:21 +00:00
Hugo Sales
0cba00ebbb
[CORE][SECURITY][UX] Save previous url on /register and /logout
2021-04-14 15:37:21 +00:00
rainydaysavings
6e52fd4c95
[CONTROLLER][UI] Fixing controller display errors, Settings CSS fixes
2021-04-14 15:37:21 +00:00
rainydaysavings
9a2ac34ba3
[UI][ROUTES][CONTROLLER] Fixing Settings navs and templates
2021-04-14 15:37:21 +00:00
rainydaysavings
e334ce9a55
[UI] Register and Login rework
2021-04-14 15:37:21 +00:00
rainydaysavings
b8a0d14fd5
[UI] Left panel fix
2021-04-14 15:37:21 +00:00
Hugo Sales
7b0f5ab576
[Controller] Update settings/avatar
2021-04-14 15:37:21 +00:00
Hugo Sales
e7f541219d
[DATABASE][TOOLS] Update local_user, SchemaDefDriver and bin/generate_entity_fields to use the phone_number type (which maps to a varchar 35 and does validation)
2021-04-14 15:37:21 +00:00
Hugo Sales
0bc59f1b9a
[UI] Update settings/account to reflect the current values
2021-04-14 15:37:21 +00:00
Hugo Sales
8088b78a24
[UI][ROUTES] s%settings/profile%settings/personal_info%
2021-04-14 15:37:21 +00:00
Hugo Sales
b98d01bd06
[CORE][UX] Save previous url to redirect back after registering
2021-04-14 15:37:21 +00:00
Hugo Sales
d0c999199b
[DEPENDENCY] Add odolbeau/phone-number-bundle
2021-04-14 15:37:21 +00:00
Hugo Sales
f907843d43
[UTIL][NICKNAME][FIX] Add self to constant
2021-04-14 15:37:21 +00:00
Hugo Sales
8aa1a3d05e
[UI][USERPANEL] Add prefilled fields, mark some as optional and handle self tags in the profile settings page
2021-04-14 15:37:21 +00:00
Hugo Sales
c91c385dec
[SELFTAGS] Add Profile::{set,get}SelfTags
2021-04-14 15:37:21 +00:00
Hugo Sales
2838aaad14
[FORM] Add Form::isRequired
2021-04-14 15:37:21 +00:00
Hugo Sales
d6a7843240
[DATABASE] Refactor DB.php and make findBy always return an array, instead of a doctrine collection
2021-04-14 15:37:21 +00:00
Hugo Sales
51f65edb55
[UTIL] Update Formatting::{toString,toArray} to allow spliting by either space or comma
2021-04-14 15:37:21 +00:00
Alexei Sorokin
256d57adaa
[SECURITY] Update way passwords are checked and update
2021-04-14 15:37:21 +00:00
rainydaysavings
6d6b1447f8
[TWIG][ROUTES] Footer links routes and pages added
2021-04-14 15:37:21 +00:00
rainydaysavings
801399218f
[UI][ROUTES] Footer links added
2021-04-14 15:37:21 +00:00
rainydaysavings
c2e69a06b0
[UI] Fixing problem due to Firefox's autofill filter
2021-04-14 15:37:21 +00:00
rainydaysavings
ae49f82580
[UI] Login template small fix
2021-04-14 15:37:21 +00:00
rainydaysavings
879666fab7
[UI] Left panel template and Login page CSS work done
2021-04-14 15:37:21 +00:00
Hugo Sales
81e45e3ace
[SECURITY][CONTROLLER] Remove unreachable code from the Security controller
2021-04-14 15:37:21 +00:00
Hugo Sales
107351a6b5
[CONTROLLER][ADMIN][CONFIG] Fix form to use static strings as keys and add labels seperately; convert input from string to appropriate type
2021-04-14 15:37:21 +00:00
Hugo Sales
292d98a33c
[LIB][Util] Update Common::setConfig to throw an exception if appropriate, add Formatting::{toString,toArray}
2021-04-14 15:37:21 +00:00
Hugo Sales
72ee91a8da
[I18N] Remove incomplete autogenerated translation file, to be fixed later
2021-04-14 15:37:21 +00:00
Hugo Sales
2eb61543d9
[AUTOGENERATED] Update all entity fields
2021-04-14 15:37:21 +00:00
Hugo Sales
60002df680
[SECURITY] Small refactor in Authenticator.php, to remove unused services
2021-04-14 15:37:21 +00:00
Hugo Sales
f081d58e2b
[USER][UI][AUTHENTICATION] Add registration form
2021-04-14 15:37:21 +00:00
Hugo Sales
13244c1e37
[UTIL][NICKNAME] Small refactor and remove the check between user nickname and group_alias, as these will have different semantics
2021-04-14 15:37:21 +00:00
Hugo Sales
71c9462d2e
[DATABASE] Fix typos in user_notification_prefs
2021-04-14 15:37:21 +00:00
Hugo Sales
c410f9b67a
[DATABASE] Fix typo in profile table and add a constructor
2021-04-14 15:37:21 +00:00
Hugo Sales
b4fb1569ce
[FORM][WRAPPER] Merge argument options, not replace
2021-04-14 15:37:21 +00:00
Hugo Sales
fdcedb8295
[DATABASE] Update LocalUser table to not have a numerical id, add is_email_verified and fix getProfile accordingly
2021-04-14 15:37:21 +00:00
Hugo Sales
39e3e8a04e
[MAILER][WRAPPER] Add mailer wrapper that respects the configuration
2021-04-14 15:37:21 +00:00
Hugo Sales
7bb3717673
[FIX] Fix bug in DATABASE.php, since findBy can return different types
2021-04-14 15:37:21 +00:00
Hugo Sales
8dcf563674
[TOOLS] Update generate fields script to output default values
2021-04-14 15:37:21 +00:00
Hugo Sales
a582cfe4f2
[DEPENDENCY] Add symfonycasts/verify-email-bundle
2021-04-14 15:37:21 +00:00
Hugo Sales
0af82054ff
[COMMON][SECURITY][WRAPPER] Added security service static wrapper and Common::getUser
2021-04-14 15:37:21 +00:00
Hugo Sales
f812d9142f
[CORE][ROUTES] Small refactor on entrypoint and RouteLoader
2021-04-14 15:37:21 +00:00
Hugo Sales
92ecb50cff
[TWIG] Add twig function to output the active tag if the current route matches a given one
2021-04-14 15:37:21 +00:00
Hugo Sales
1b2c308808
[CONTROLLER][ROUTES] Refactor the base Controller to not reinvent the wheel too much and rely on Symfony's events
2021-04-14 15:37:21 +00:00
Hugo Sales
0c448ee83f
[ROUTES] Change name of admin and settings routes and refactor the way they're specified
2021-04-14 15:37:21 +00:00
Hugo Sales
a075d35c8c
[CONTROLLER][ROUTES] Refactor controllers to use the new base class and remove controller from the class name
2021-04-14 15:37:21 +00:00
Hugo Sales
f26b488045
[NOTIFICATION][DATABASE] Update user notification prefs table, implementation of Notification and define a base class for notification transport
2021-04-14 15:37:21 +00:00
Hugo Sales
2fd81e218a
[CONTROLLER] Remove example enqueue
2021-04-14 15:37:21 +00:00
Hugo Sales
fc4d8bcf65
[DEFAULTS] Add password hashing algorithm default settings
2021-04-14 15:37:21 +00:00
Hugo Sales
0ef9223803
[LOGIN] Implement password checking and related systems
2021-04-14 15:37:21 +00:00
Hugo Sales
9bc186a072
[USER] Add UserRoles
2021-04-14 15:37:21 +00:00
Hugo Sales
70cb6d5d94
[DATABASE] Add role collumn to profile table
2021-04-14 15:37:21 +00:00
Hugo Sales
162a955f41
[UTIL] Update Common::config to ensure the values queried exist
2021-04-14 15:37:21 +00:00
Hugo Sales
aadb4832bc
[DEFAULTS][FIX] Fix logic error that kept reloading the table when the file wasn't modified
2021-04-14 15:37:21 +00:00
Hugo Sales
0e96ffe287
[UI][SESSION] Add login and logout pages
2021-04-14 15:37:21 +00:00
Hugo Sales
958d5bfe22
[LIB][Util] Remove Functional::arity as it got merged upstream as Functional\ary
2021-04-14 15:37:21 +00:00
Hugo Sales
c0ba6250aa
[LIB][Util] Make Common::config return the unserialized value instead of the entity
2021-04-14 15:37:21 +00:00
Hugo Sales
0a6b134f23
[CORE] Refactor GNUsocial.php so it initializes itself as a service
2021-04-14 15:37:21 +00:00
Hugo Sales
a7715fc9c3
[I18N] Remove support for context until it proves necessary, as it broke the code
2021-04-14 15:37:21 +00:00
Hugo Sales
b508fbe3b1
[TOOLS] Update shebang on scripts to use the correct php executable
2021-04-14 15:37:21 +00:00
Hugo Sales
9a9ac8b55f
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:21 +00:00
Hugo Sales
adda4caea4
[DATABASE] Rename user table to local_user, since doctrine shits itself otherwise ._.
2021-04-14 15:37:21 +00:00
Hugo Sales
a7ff0ef506
[DEPENDENCY] Add symfony/config as a dependency
2021-04-14 15:37:21 +00:00
Hugo Sales
ee1c1bce80
[CONFIG] Change way configuration is done to use Symfony's system instead of environment vars
2021-04-14 15:37:21 +00:00
Hugo Sales
7b00ab4699
[CORE][I18n][DEFAULTS] Remove I18nHelper
2021-04-14 15:37:21 +00:00
Hugo Sales
df60e72fb3
[LIB][Util] Change methods in the Common class to camelCase, add isSystemPath (previously in Nickname.php)
2021-04-14 15:37:21 +00:00
Hugo Sales
d5b5d97bc1
[UTIL][NICKNAME] Import nickname utilities and exceptions from v2
2021-04-14 15:37:21 +00:00
Hugo Sales
640c4b2ca8
[DEFAULTS] Update default reserved usernames
2021-04-14 15:37:21 +00:00
Hugo Sales
11822cbed0
[DATABASE][WRAPPER] Add findBy method which allows finding entities with a complex expression
2021-04-14 15:37:21 +00:00
Hugo Sales
9fb74c2f27
[DATABASE] Re-import the local_group table, as it'll be used as per the new group semantics
2021-04-14 15:37:21 +00:00
rainydaysavings
f361a64ab5
[UI] Settings routes refactor, avatar and misc settings added.
2021-04-14 15:37:21 +00:00
rainydaysavings
a4934a4ef3
[UI][CONTROLLER][ROUTES] UserPanel account page form added, account page CSS work
2021-04-14 15:37:21 +00:00
rainydaysavings
46c63b3240
[UI] Fixed top header spacing issue, hamburger menu weird rendering
2021-04-14 15:37:21 +00:00
rainydaysavings
f77f56e1f2
[UI] FAQ pages markdown fixes
2021-04-14 15:37:21 +00:00
rainydaysavings
2f05f05dc9
[UI][CONTROLLER] Form help messages added, fixed checkbox trick hitbox
2021-04-14 15:37:21 +00:00
rainydaysavings
02b17049e3
[UI] Reset CSS added, small fixes all around
2021-04-14 15:37:21 +00:00
rainydaysavings
ee6791fe97
[UI] Settings page CSS redesign port completed
2021-04-14 15:37:21 +00:00
rainydaysavings
de5554f1e2
[UI][CONTROLLER][ROUTES] Corrected core action name, UserPanel CSS work
2021-04-14 15:37:21 +00:00
rainydaysavings
e1f9143cf5
[UI] Fixed FAQ template issues
2021-04-14 15:37:21 +00:00
rainydaysavings
4fd69b684a
[UI] Side panel animation added
2021-04-14 15:37:21 +00:00
rainydaysavings
c133565780
[UI] Redesign responsiveness work done
2021-04-14 15:37:21 +00:00
rainydaysavings
099be93420
[UI] Further work into new side panel design
2021-04-14 15:37:21 +00:00
rainydaysavings
43b7076ff8
[UI] Basic implementation of the new base design
2021-04-14 15:37:21 +00:00
rainydaysavings
49e33557e1
[UI] Polishing FAQ CSS
2021-04-14 15:37:21 +00:00
rainydaysavings
f16789f10e
[UI] Standardization of sizes and variable usage for faster theming
2021-04-14 15:37:21 +00:00
rainydaysavings
2b4540952e
[UI][CONTROLLER] Profile settings action functionality working
2021-04-14 15:37:21 +00:00
Hugo Sales
91ff4dbdec
[DATABASE][WRAPPER] Update DATABASE wrapper so entity names are provided without the namespace
2021-04-14 15:37:21 +00:00
Hugo Sales
4cc196a69a
[DOCKER] Add redis to the docker image
2021-04-14 15:37:21 +00:00
Hugo Sales
7cedbcd63f
[CACHE] Fix usage of the redis extension
2021-04-14 15:37:21 +00:00
Hugo Sales
ba7ad5fd28
[DOCKER] Fix redis extension build process to use LZ4 and add APCu
2021-04-14 15:37:21 +00:00
Hugo Sales
7ca22ecc1d
[DEPENDENCY] Add mock polyfill implementations of the redis and memcached extension
2021-04-14 15:37:21 +00:00
Hugo Sales
02a23a2aff
[CACHE][Redis] Add special support for redis (fixed size lists), set method and general fixes
2021-04-14 15:37:21 +00:00
Hugo Sales
47af6e85b8
[LIB][Util] Refactor and implement array indexing methods on RingBuffer
2021-04-14 15:37:21 +00:00
Hugo Sales
04b0d63d43
[DOCKER] Updated php image so redis is compiled with LZ4 compression available, as it's the fastest at decompressing and really fast at compressing. Read performance is more important, with this being used as a cache
2021-04-14 15:37:21 +00:00
Hugo Sales
62c9b56b3f
[CACHE] Add support for multiple pools with the syntax (as an example) SOCIAL_CACHE_ADAPTER='default=redis://localhost:6379,memcached://localhost:11211;db.config=apcu://'
2021-04-14 15:37:21 +00:00
Hugo Sales
155038a5c0
[DOCKER] Add msgpack and redis extensions to docker image
2021-04-14 15:37:21 +00:00
Hugo Sales
89ce298a3b
[DEFAULTS] Add modified time to config table (as value) and only reload the defaults if the file is newer
2021-04-14 15:37:21 +00:00
Hugo Sales
9563fb0af3
[CACHE] Extend the static wrapper to support working with lists in caches that don't natively support them
2021-04-14 15:37:21 +00:00
Hugo Sales
2c4fcaaf07
[LIB][Util] Add Ring Buffer data structure
2021-04-14 15:37:21 +00:00
Hugo Sales
3aaad123de
[DOCKER] Move certbot files to hidden folder, so it's ignored by GNU global
2021-04-14 15:37:21 +00:00
Hugo Sales
7a07b95240
[DEFAULTS][FIX] Fix defaults to use value from environment
2021-04-14 15:37:21 +00:00
Hugo Sales
e5babcd36e
[PHP][EXTENSION][POLYFILL] Add php-ds polyfill, which is used if the native extension is not available
2021-04-14 15:37:21 +00:00
Hugo Sales
1134fec173
[DOCKER][PHP][EXTENSION] Add PHP ds extension to docker PHP image
2021-04-14 15:37:21 +00:00
Hugo Sales
d2b44f4400
[TOOLS][configure] Fix to use quotation marks properly
2021-04-14 15:37:21 +00:00
Hugo Sales
aaba304ca8
[CACHE][WRAPPER] Fix cache wrapper
2021-04-14 15:37:21 +00:00
Hugo Sales
288f8363ae
[FORMATTING][DEFAULTS] Fix formatting and remove redundant config defaults
2021-04-14 15:37:21 +00:00
Hugo Sales
b09e1525eb
[CACHE][HTTP] Configure simple HTTP cache
2021-04-14 15:37:21 +00:00
Hugo Sales
9fadb73ea5
[CACHE] Add a static wrapper around symfony/cache
2021-04-14 15:37:21 +00:00
Hugo Sales
cf1483e6b5
[DEPENDENCY] Add symfony/cache as a dependency
2021-04-14 15:37:21 +00:00
Hugo Sales
b579842eb6
[LOG][WRAPPER] Refactor log wrapper
2021-04-14 15:37:21 +00:00
Hugo Sales
47ab835549
[QUEUE] Add queueing wrapper, default configuration and example usage
2021-04-14 15:37:21 +00:00
Hugo Sales
69341880d3
[DEPENDENCY] Add symfony/messenger as a dependency
2021-04-14 15:37:21 +00:00
Hugo Sales
e146ebc05b
[DATABASE] Delete queue_item table, as queueing will be handled by messenger
2021-04-14 15:37:21 +00:00
Hugo Sales
ceb5092b34
[CONTROLLER] Show dummy notices in main/all
2021-04-14 15:37:21 +00:00
Hugo Sales
17da1f7fb5
[MODULES] Make ModulesManager check if file exists
2021-04-14 15:37:21 +00:00
Hugo Sales
43e56c08f7
[CONTROLLER] Add Controller base class, which handles rendering templates if requested HTML or json, accordingly
2021-04-14 15:37:21 +00:00
Hugo Sales
6f9c70398b
[ROUTE] Fix routes, config_admin got deleted
2021-04-14 15:37:21 +00:00
Hugo Sales
8b9a1dd535
[COMMAND][DEPRECATION][FIX] Fix app:events's deprecation
2021-04-14 15:37:21 +00:00
Hugo Sales
c2d9d5b75b
[GIT] Update gitignore to ignore composer.local.json, where plugin settings will be placed
2021-04-14 15:37:21 +00:00
Hugo Sales
4fa6295fde
[DEPENDENCY] Update all dependencies
2021-04-14 15:37:21 +00:00
Hugo Sales
bf4c06295a
[DEPENDENCY] Add wikimedia/composer-merge-plugin as a dependency, to allow managing plugins
2021-04-14 15:37:21 +00:00
rainydaysavings
443a5438be
[DEPENDENCY] Add erusev/parsedown and twig/markdown-extra as dependencies
2021-04-14 15:37:21 +00:00
rainydaysavings
9b88f93cad
[TWIG][CONFIG] Change default_path and add public_path
2021-04-14 15:37:21 +00:00
rainydaysavings
d6196a5e69
[CONTROLLER] UserAdminPanel handle request fix
...
[UI] Minor CSS font size corrections
2021-04-14 15:37:21 +00:00
rainydaysavings
b39d43a700
[TWIG][UI] Settings: removed unnecessary pages, responsive CSS work
2021-04-14 15:37:21 +00:00
rainydaysavings
20497bf905
[UI][CONTROLLER] Settings page styling almost done.
2021-04-14 15:37:21 +00:00
rainydaysavings
fe20ed08d0
[TWIG] faq/contact template route fix
2021-04-14 15:37:21 +00:00
rainydaysavings
a87653860b
[FAQ] Removing unnecessary categories.
2021-04-14 15:37:21 +00:00
rainydaysavings
9f2977bfd1
[UI][FAQ] FAQ polish, better use of twig, responsive css.
2021-04-14 15:37:21 +00:00
rainydaysavings
1e8efe180c
[UI][Mobile][FAQ][ROUTES] FAQ sub pages and routing added, small screen css work started.
2021-04-14 15:37:21 +00:00
rainydaysavings
29712edbd3
[UI] Icon assets now work with Symfony asset component, header icon placement fixes
2021-04-14 15:37:21 +00:00
rainydaysavings
0211771d5f
[UI][ROUTES][CONTROLLER] Settings pages routes and styling done.
2021-04-14 15:37:21 +00:00
rainydaysavings
f100d33d94
[UI] Work started on profile settings page.
2021-04-14 15:37:21 +00:00
rainydaysavings
9a05f11b65
[UI][Header] New header implemented.
2021-04-14 15:37:21 +00:00
rainydaysavings
b28f3ffa19
[TWIG][UI] CSS refactoring, containerized twig blocks and settings initial work
2021-04-14 15:37:21 +00:00
rainydaysavings
168d138481
[TWIG] FAQ base template hierarchy fixes
...
Minor refactoring of routes for FAQ static pages
2021-04-14 15:37:21 +00:00
rainydaysavings
3daa764d87
[UI][ROUTES] Better use of icons, fixing static pages routing.
2021-04-14 15:37:21 +00:00
rainydaysavings
ff06671cd5
[UI][FAQ] Better FAQ organization, removing unnecessary categories.
2021-04-14 15:37:21 +00:00
rainydaysavings
5736bd1408
[UI][Mobile][FAQ] FAQ polish, better use of twig, responsive css.
2021-04-14 15:37:21 +00:00
rainydaysavings
999b31b615
[UI][Mobile][FAQ] FAQ sub pages and routing added, small screen css work started.
2021-04-14 15:37:21 +00:00
rainydaysavings
e925c566ac
[UI] SVG icons added
...
[TWIG][UI] Header completed
2021-04-14 15:37:21 +00:00
rainydaysavings
8faf299a23
[UI][FAQ] FAQ page progress, assets folder and assets added
2021-04-14 15:37:21 +00:00
rainydaysavings
2985284f2b
[UI][FAQ] Controller and Route for FAQ page created as well as basic template structure
2021-04-14 15:37:21 +00:00
Hugo Sales
2d1d697498
[TOOLS] Fix bootstrap and pre-commit scripts
2021-04-14 15:37:21 +00:00
Hugo Sales
57310dcb15
[MODULE] Move 'foreign' entities from core to a module
2021-04-14 15:37:21 +00:00
Hugo Sales
a574971f0b
[AUTOGENERATED] Update autogenerated code
2021-04-14 15:37:21 +00:00
Hugo Sales
68a5551f36
[TOOLS] Update bin/generate_entity_fields script
2021-04-14 15:37:21 +00:00
Hugo Sales
3a6b4cca1e
[CORE][DATABASE] Replace zero dates with CURRENT_TIMESTAMP and add defaults to all 'created' or 'modified'
...
This commit is a port from v2's 9a515b9234
([SCHEMA] Improve timestamp storage) to v3.
As explained by Alexei Sorokin:
Avoid the use of deprecated MariaDATABASE "zero dates" globally. If they're present
as attribute defaults somewhere, they will be replaced with NULL implicitly.
The existing "zero dates" in MariaDATABASE storage will be left intact and this
should not present any issues.
The "timestamp" type in table definitions now corresponds to DATETIME in
MariaDATABASE with "DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", which
should be close enough to the original behaviour for compatibility purposes.
It is now the recommended type for "modified" attributes, because of the
update trigger on MariaDATABASE. But there is no such trigger implemented on
PostgreSQL as of this moment.
2021-04-14 15:37:21 +00:00
Hugo Sales
6fe35833e7
[CORE][DATABASE] Restructure the database
2021-04-14 15:37:21 +00:00
Hugo Sales
4b4f235481
[ROUTE][ADMIN][CONFIG] Add route to update values in the config table
2021-04-14 15:37:21 +00:00
Hugo Sales
6c0c84c284
[DEFAULTS] Small fixes and add check of SOCIAL_NO_RELOAD_DEFAULTS from the environment, to override the reloading of default values
2021-04-14 15:37:21 +00:00
Hugo Sales
26c966084a
[DOCUMENTATION] Fixed type annotations and documentation of Common::size_str_to_int
2021-04-14 15:37:21 +00:00
Hugo Sales
bf92c44d81
[CORE][Event] Move GSEvent to Event, no longer a name collision
2021-04-14 15:37:21 +00:00
Hugo Sales
07422c4e1a
[FORM] Added Symfony Form wrapper
2021-04-14 15:37:21 +00:00
Hugo Sales
6e6e50939b
[CORE][Symfony] Fixed deprecation resultant from Symfony 5.1 upgrade
...
User Deprecated: Since symfony/framework-bundle 5.1: Using type
"Symfony\Component\Routing\RouteCollectionBuilder" for argument 1 of
method "App\Kernel:configureRoutes()" is deprecated, use
"Symfony\Component\Routing\Loader\Configurator\RoutingConfigurator"
instead.
2021-04-14 15:37:21 +00:00
Hugo Sales
0ecb164e2e
[TESTS][I18N] Added test for I18n::_m and I18nHelper::formatICU
2021-04-14 15:37:21 +00:00
Hugo Sales
15cf498e75
[I18N] Fix implementation of I18nHelper::formatICU
2021-04-14 15:37:21 +00:00
Hugo Sales
377965d100
[ROUTES] Add easier support for using TemplateController and improved documentation
2021-04-14 15:37:21 +00:00
Hugo Sales
c9b0e994c1
[I18N] Small fixes. Still broken, though :')
2021-04-14 15:37:21 +00:00
Hugo Sales
daf4f0727d
[AUTOLOAD] Always autoload _m file
2021-04-14 15:37:21 +00:00
Hugo Sales
652c3b5d62
[DEPENDENCY] Upgrade Symfony framework from 5.0 to 5.1
2021-04-14 15:37:21 +00:00
Hugo Sales
95764a0c48
[DEPENDENCY][DEV] Added Symfony Bridge PHPUnit
2021-04-14 15:37:21 +00:00
Hugo Sales
97e9991d85
[GIT] Updated gitignore
2021-04-14 15:37:21 +00:00
Hugo Sales
26be897578
[I18N] Overhaul _m() implementation to support ICU message formats
2021-04-14 15:37:21 +00:00
Hugo Sales
b15fb50194
[I18N] Dumped english translation files
2021-04-14 15:37:21 +00:00
Hugo Sales
d7218535dd
[TOOLS] Small fix to composer install hook
2021-04-14 15:37:21 +00:00
Hugo Sales
3108d82a4d
[I18N] Added ability to call _m_dynamic
from any class, allowing it to define translations for dynamic-valued calls to _m
2021-04-14 15:37:21 +00:00
Hugo Sales
d5fa31a6f5
[TOOLS] Improve configure script to disallow reserved database names
2021-04-14 15:37:21 +00:00
Hugo Sales
a8cd9034ff
[I18N] Custom translation extractor based on Symfony's PhpExtractor, since we use instead of
2021-04-14 15:37:21 +00:00
Hugo Sales
d73840352b
[I18N] Refactor since rfc/use-static-function is not implemented
...
As the above mentioned RFC is not implemented, `_m` needs to be
outside of the I18n class, otherwise it would have to always be called
with `I18n::_m`.
2021-04-14 15:37:21 +00:00
Hugo Sales
766eac8467
[ROUTES] Add static wrapper around Symfony's router
2021-04-14 15:37:20 +00:00
Hugo Sales
0fe5ae7675
[CORE] Refactoring core
2021-04-14 15:37:20 +00:00
Hugo Sales
66c4ab7e24
[UI][CONFIG] Added admin configuration form
2021-04-14 15:37:20 +00:00
Hugo Sales
34f49edf2c
[I18N] Fix i18n and add default domain 'Core'
2021-04-14 15:37:20 +00:00
Hugo Sales
27bb76706c
[DEFAULTS] Fix default config loading logic
2021-04-14 15:37:20 +00:00
Hugo Sales
ce00acdb39
[TOOLS] Fixed all licence blocks, to use the same, foldable, format
2021-04-14 15:37:20 +00:00
Hugo Sales
e5a97611d0
[DEPENDENCY] Added alchemy/zippy, which adds support for multiple archive formats. Used to allow theme uploads in zip, tar, gz, or other formats
2021-04-14 15:37:20 +00:00
Hugo Sales
d2f49e56bc
[DOCUMENTATION][DEFAULTS] Documented all defaults and updated some. Restructured other documentation.
2021-04-14 15:37:20 +00:00
Hugo Sales
520989bc59
[DEFAULTS] Remove deprecated defaults and convert them to snake_case
2021-04-14 15:37:20 +00:00
Hugo Sales
2407853970
[GIT] Added docker-compose to gitignore, in preparation for using a script to generate them
2021-04-14 15:37:20 +00:00
Hugo Sales
ccc0d7d401
[DATABASE] Change the way defaults are loaded, bulk insert, reload everything in debug mode, only on http requests (not command line)
2021-04-14 15:37:20 +00:00
Hugo Sales
ac68436b0b
[TOOLS] Update install scripts
2021-04-14 15:37:20 +00:00
Hugo Sales
b0fece57ea
[DATABASE] Fix 'relation config doesn't exist'
2021-04-14 15:37:20 +00:00
Hugo Sales
7dda377a79
[DATABASE] Postgres doesn't understand '0000-00-00 00:00:00' for datetime, use '-infinity'
2021-04-14 15:37:20 +00:00
Hugo Sales
4a754553f7
[DOCKER] Change postgres data path to the correct one
2021-04-14 15:37:20 +00:00
Hugo Sales
074797384d
[DATABASE][CONFIG] Loading defaults into database, doctrine static wrapper
2021-04-14 15:37:20 +00:00
Hugo Sales
7718b167c3
[DATABASE][CONFIG] Bring default configs from V2 and implement DATABASE wrapper
2021-04-14 15:37:20 +00:00
Hugo Sales
a2f5b77ff0
[ASSETS] Import old favicon.ico
2021-04-14 15:37:20 +00:00
Hugo Sales
40ec37bd27
[CORE][UTIL] Moved classes from util to core
...
And splitted up Common
2021-04-14 15:37:20 +00:00
Hugo Sales
0d5f66e8b8
[FORMATTING] Cherry-pick of Diogo's 763ac735c0758624ebd5957993dc0676b865927a
2021-04-14 15:37:20 +00:00
Diogo Cordeiro
c67cf336d4
[DOCKER][BOOTSTRAP] Add option to use a self signed cert
2021-04-14 15:37:20 +00:00
Diogo Cordeiro
4efbf9361c
[DOCUMENTATION][TOOL] Small bug fixes and docblock elaboration
2021-04-14 15:37:20 +00:00
Hugo Sales
87a768ac8d
[CORE] Rename GNU social constants
2021-04-14 15:37:09 +00:00
Hugo Sales
26ee98a224
[DOCUMENTATION] Updated INSTALL.md to reflect the fact that a CNAME record can be used directly
2021-04-14 15:37:09 +00:00
Hugo Sales
5c1851028a
[DOCUMENTATION] Import installation instructions for installing without docker from V2
2021-04-14 15:37:09 +00:00
Hugo Sales
f0b8f91a75
[DOCKER] Small fixes to docker setup, imported from V2
2021-04-14 15:37:09 +00:00
Hugo Sales
70fac546da
[DOCUMENTATION] Added a code walkthrough document, which explains how the codebase works
2021-04-14 15:37:09 +00:00
Hugo Sales
80755fc6e2
[DOCUMENTATION] Added install documentation
2021-04-14 15:37:09 +00:00
Hugo Sales
feb3c16b3f
[TOOLS] Updated install script to also support mariadb
2021-04-14 15:37:09 +00:00
Hugo Sales
cef20e1332
[TOOLS][DOCKER] Further fixes in the docker environment and fixed the install script
2021-04-14 15:37:09 +00:00
Hugo Sales
3b50815422
[DOCKER] Fixed docker environment to properly configure the app environment
2021-04-14 15:37:09 +00:00
Hugo Sales
33270dabf3
[TOOLS] Added script to configure the installation and to bootstrap certificate creation with Let's Encrypt
2021-04-14 15:37:09 +00:00
Hugo Sales
a97c511c7a
[TOOLS][SSL] Added bin/boostrap_certificates.sh, allowing for easy configuration of SSL certificates with Let's Encrypt
2021-04-14 15:37:09 +00:00
Hugo Sales
3b5789639b
[TOOLS][DOCUMENTATION] Improvements to entity generation script
2021-04-14 15:36:35 +00:00
Hugo Sales
04a59d22a6
[DOCUMENTATION] Added generated diagram
2021-04-14 15:36:35 +00:00
Hugo Sales
cb1944aca9
[DOCUMENTATION][TOOLS] Wrote a tool to generate entity diagrams from the database definition
2021-04-14 15:36:35 +00:00
Hugo Sales
c2add5e1d1
[UTIL] Wrote HTML library to convert arrays to html
2021-04-14 15:36:35 +00:00
Hugo Sales
a72e0a53e7
[GITIGNORE] Add file folder to gitignore
2021-04-14 15:36:35 +00:00
Hugo Sales
3ad81ab730
[DATABASE] Changed the type of the 'id' field of the ProfileList table from serial to int, as doctrine complains otherwise
2021-04-14 15:36:35 +00:00
Hugo Sales
2afb15ee02
[TOOLS][CS-FIX] Altered some php-cs-fix rules
2021-04-14 15:36:35 +00:00
Hugo Sales
160b811669
[DATABASE][AUTOCODE] Update autocode to use \DateTimeInterface instead of DateTime
2021-04-14 15:36:35 +00:00
Hugo Sales
fe603928e2
[TOOLS] Fix the generate_entities_fields script
2021-04-14 15:36:35 +00:00
Hugo Sales
57298da60e
[SCHEMADEF] Bug fixes
2021-04-14 15:36:35 +00:00
Hugo Sales
d14ac1edf6
[DATABASE] Add missing table names
2021-04-14 15:36:35 +00:00
Hugo Sales
8ca49ab511
[MODULES] Fix small error in modules manager
2021-04-14 15:36:35 +00:00
Hugo Sales
04202b59ef
[DATABASE][AUTOCODE] Autogenerated fields, setters and getters for each entity
2021-04-14 15:36:35 +00:00
Hugo Sales
4bc3eabd29
[TOOLS][AUTOCODE] Fixed generate_entities script
2021-04-14 15:36:35 +00:00
Hugo Sales
36bc871c65
[TOOLS] Change autocode tag to allow editor folding
2021-04-14 15:36:35 +00:00
Hugo Sales
1589f6e26f
[DATABASE] Removed calls to common_config
2021-04-14 15:36:35 +00:00
Hugo Sales
b52f0c795e
[FORMATTING] Changed license block format to allow folding
2021-04-14 15:36:35 +00:00
Hugo Sales
8f13d331ad
[DATABASE] Extracted schemaDef method from old files and refactored onto new files
2021-04-14 15:36:35 +00:00
Hugo Sales
b46e3d5bf4
[COMMON] Added toCamelCase and toSnakeCase functions
2021-04-14 15:36:35 +00:00
Hugo Sales
8a8d0f1dcd
[TOOLS] Add script used to port from old class files to entities
2021-04-14 15:36:35 +00:00
Hugo Sales
e3ef58bd8e
[CORE][DATABASE] Import old classes folder into src/Entity
2021-04-14 15:36:35 +00:00
Hugo Sales
57f7f40fa9
[DATABASE] Remove testing entity
2021-04-14 15:36:35 +00:00
Hugo Sales
7e4aacd342
[TOOLS] Add command which imports a file with it's history
2021-04-14 15:36:35 +00:00
Hugo Sales
1caab62200
[MODULES] Rename extensions to modules, add example plugin, change plugin location
2021-04-14 15:36:35 +00:00
Hugo Sales
6c8da48efa
[DOCUMENTATION] Document All The Things!
2021-04-14 15:36:35 +00:00
Hugo Sales
10a304ab83
[CORE][ROUTES] Implemented custom router, with an interface similar to the old one, which allows routes to be seperated into files
2021-04-14 15:36:35 +00:00
Hugo Sales
a1d83bd2a8
[COMMAND][EVENTS] Added command to list events and handlers, and search by regex
2021-04-14 15:36:35 +00:00
Hugo Sales
df6da4d941
[CORE][COMMAND] Register internal structures on command event
2021-04-14 15:36:35 +00:00
Hugo Sales
d8d2ad3e10
[CORE][EXTENSIONS] Added extension (modules, plugins) loading and test plugin, which is able to handle events
2021-04-14 15:36:35 +00:00
Hugo Sales
2f5bdeed62
[CORE][SCHEMADEF] Clean up SchemaDef compiler pass
2021-04-14 15:36:35 +00:00
Hugo Sales
40b0812d9b
[CS-FIXER] Updated cs-fixer rules and added a temporary exception to the src/Entity folder (awaiting pr merge)
2021-04-14 15:36:35 +00:00
Hugo Sales
26ea268fed
[DOCTRINE][SCRIPT] Created a script to generate the class fields and accessors from the schema definition
2021-04-14 15:36:35 +00:00
Hugo Sales
04a5d2bfef
[DOCTRINE][SCHEMADEF] Small refactoring
2021-04-14 15:36:35 +00:00
Hugo Sales
06d76a649f
[CORE][DOCTRINE] Implement SchemaDefDriver, which transforms the old syntax from to doctrine's metadata
2021-04-14 15:36:35 +00:00
Hugo Sales
b0960c5345
[DOCTRINE] Configure cli-config for doctrine console and ensure DATABASE is set to UTF-8
2021-04-14 15:36:35 +00:00
Hugo Sales
6546c088d9
[DOCTRINE][SCHEMADEF] Create a new metadata driver to allow us to continue using static schemaDef functions
...
This has the benefit of requiring fewer code changes, as well as providing a better isolation
between GNU social and symfony, useful in case the framework needs to be changed
2021-04-14 15:36:35 +00:00
Hugo Sales
69550a1036
[COMPOSER] Update composer dependencies
2021-04-14 15:36:35 +00:00
Hugo Sales
027726205d
[CORE][I18N] Fix the translation system
2021-04-14 15:36:35 +00:00
Hugo Sales
4d2b8c26fa
[CORE][I18N] Port the translation system to rely on symfony's
2021-04-14 15:36:35 +00:00
Hugo Sales
cc47efe4b5
[CORE][EVENTS] Bring existing Events and Boostrapper back
...
- Adapt the existing event system to rely on Symfony's event dispatcher
2021-04-14 15:36:35 +00:00
Hugo Sales
c0e53ae658
[CORE][ROUTES] Example route
2021-04-14 15:36:35 +00:00
Hugo Sales
5ec23f2200
[DOCKER] Updated dockerfile to add memcached
2021-04-14 15:36:35 +00:00
Hugo Sales
51d1ea4f8f
[DOCKER] Added preliminary docker container
2021-04-14 15:36:35 +00:00
Hugo Sales
fff0ecd1cd
[COMPOSER] Update composer packages
2021-04-14 15:36:35 +00:00
Hugo Sales
86b5bfe075
[V3] Big Bang
...
Beginning anew, this time with a modern framework: symfony
2021-04-14 15:36:35 +00:00
f01331671c
[V3] Big Crunch
...
And so, just as it begins, so too must it end
One should not dwell and stall, for more is to come
2021-04-14 15:36:13 +00:00
b4b71f7626
[StoreRemoteMedia] Fix failing to show remote thumbnails on first load
...
imgPath onCreateFileImageThumbnailSource would throw FileNotFoundException
2021-04-13 14:58:55 +01:00
f088a3d54f
[Embed] Apply encoding and increased type strictness patches from StoreRemoteMedia
2021-04-13 14:55:45 +01:00
5b23781e68
[StoreRemoteMedia] Gracefully recover from poorly encoded images
2021-04-13 14:54:56 +01:00
edc9fd203d
[StoreRemoteMedia] Increase type strictness
2021-04-13 14:54:56 +01:00
844ecbf71e
[Embed] Revert defaults and fix Readme example
2021-02-21 20:20:48 +00:00
8570ad2094
[StoreRemoteMedia][SCRIPTS] Move removeRemoteMedia deleteRemoteMedia
2021-02-21 16:03:47 +00:00
bc3eb7bccc
[MEDIA] Allow thumbnail only entries
2021-02-21 16:03:47 +00:00
800c0daafe
[StoreRemoteMedia][SCRIPTS] Update removeRemoteMedia
2021-02-21 16:03:47 +00:00
9b1ccdc320
[SCRIPTS] Update clean_file_table
2021-02-21 16:03:47 +00:00
6c8e826028
[MEDIA][SCRIPTS] clean_thumbnails Allow to delete remote thumbs as well
...
If the sysadmin decides that StoreRemoteMedia plugin should store
original, then its thumbs will be regenerated as well, making it safe to
delete them if needed. Beware that Embed plugin never stores the original tho.
2021-02-21 16:03:46 +00:00
d47bb3736e
[Media] Document recently added settings and add some more
...
Fix some buggy ones, especially Embed crop
2021-02-21 16:03:46 +00:00
ec1719e61d
[StoreRemoteMedia][Embed] Bump plugins version
2021-02-21 16:03:46 +00:00
a657a7809a
[Media] Upload of previously uploaded files now works (bug fix)
...
This bug was introduced with the commit "[Media] Fix issues with database file storage"
due to the API change "File::getByHash now returns a yield of files".
I had updated this function on that commit but had missed this little detail.
2021-02-21 16:03:46 +00:00
ef0f65720e
[StoreRemoteMedia] Remote images are now stored exactly on the necessary size for the thumb
2021-02-21 16:03:46 +00:00
22b5dd8567
[Media] Fix several issues
...
[StoreRemoteMedia] Upgrade plugin to use the new Media system
API Changes:
- Added getters to File to better formalize the ideas of the commit "[Media] Fix issues with database file storage"
UI Changes:
- Now presented thumbnails are actual thumbnails (bug fix)
- Attachment actions have a slightly more extended behaviour
Many other minor bug fixes...
2021-02-21 16:03:46 +00:00
f9290705f8
[ActivityPub] Attachment fetch should happen on StoreRemoteMedia
2021-02-21 16:03:46 +00:00
e51520bd63
[Core] Add an event for StoreRemoteMedia and Embed
2021-02-21 16:03:46 +00:00
6028175bfc
[Media] Fix issues with database file storage
...
Fixed file quota as well.
There can be more than one file for the same filehash IF the url are different.
Possible states:
- A file with no url and with filename is a local file.
- A file with an url but no filename is a remote file that wasn't fetched,
not even the thumbnail.
- A file with an url and filename is a fetched remote file (maybe just a
thumbnail of it).
- A file with no filename nor url is a redirect.
Routes:
Given these states, updated routes so that an attachment can only be
retrieved by id and a file by filehash.
Major API changes:
File::getByHash now returns a yield of files
Major UI changes:
- Now remote non stored files are presented.
- /view became preferred
- Redirects to remote originals are preferred.
Many other minor bug fixes...
2021-02-21 16:03:46 +00:00
e9cd437668
[DOCUMENTATION] git clone with https so people don't need an account
2021-02-21 15:57:00 +00:00
aa153f2ee7
[i18n] Re-add gettext emulation
...
Removed by mistake with 9cc7df51d6#L50
2021-02-21 15:38:49 +00:00
b1e6b00545
[ActivityPub] Re-implement Delete Actor
2021-02-21 15:00:58 +00:00
Diogo Cordeiro
4f0ddc85d3
Merge branch 'ukrainian-translation-fix-branch' of tokarskiy/gnu-social into nightly
2020-12-31 11:20:15 +00:00
Andrew Tokarskiy
5d45702d5f
Added some ukr translations
2020-12-31 10:17:45 +02:00
Andrew Tokarskiy
d731a5cb09
Fixed some ukrainian translation errors
2020-12-30 20:00:00 +02:00
Alexei Sorokin
06dfd91a82
Various fixes
...
Fix OAuth and Realtime issues introduced in 9a515b9234
[DATABASE] Fix an empty default value mistake introduced in
fde929b151
[DATABASE][PostgreSQL] Avoid use of pg_constraint.consrc, which was removed in
PostgreSQL 12.
[DATABASE][MariaDB] Fix a typo introduced in aed2344bd4
[DAEMON] Wrap an assignment inside "switch":
a follow-up to adc689cb15
2020-10-11 18:29:47 +03:00
Alexei Sorokin
c540466147
[XMPP] Respond to ping and track time monotonically
...
This also fetches a necessary update from the XMPPHP upstream.
2020-09-27 00:16:08 +03:00
Alexei Sorokin
4d8b04cda9
Clear out potential duplicates when semi-joining a union
...
Using a left outer join as a semi-join is not a valid approach.
Can still be used for an anti-semi-join.
2020-09-21 22:25:33 +03:00
Alexei Sorokin
aed2344bd4
Set the character set before making a connection
...
Ideally the character set should be set with the connection, and so this is
exactly what's being done now.
And now the character set code is attempted to be generalised.
2020-09-16 19:34:49 +03:00
SENOO, Ken
c2508f8fa2
Change required MySQL database character set variable
...
Changing `character_set_server` requires root permissions and rebooting
the server.
Which is impossible on shared web hosting services.
So use `character_set_database`. This variable can be changed with
user permissions using `ALTER DATABASE`.
2020-09-16 17:14:58 +03:00
Alexei Sorokin
52d67b0f44
Avoid ordering just by a timestamp
...
Try to also employ an id when possible.
Involves reworking some of the indices.
2020-09-15 16:59:27 +03:00
Alexei Sorokin
8079a476b6
Remove "magic quotes" code and avoid wrong order implode
...
"Magic quotes" were removed in PHP 5.4, no need to mitigate it anymore.
Avoid implode() with the join()-like order of arguments which was deprecated
since PHP 7.4 and implicitly since PHP 5.3.
Also avoid implode() with an implicit separator for stylistic reasons.
mktime() with no arguments has been deprecated since PHP 5.1.
2020-09-15 14:59:27 +03:00
Alexei Sorokin
2ef944d5c4
[UTIL] Sanitise instead of validate in common_copy_args()
...
And remove common_validate_utf8() which is now unused.
2020-09-15 14:53:35 +03:00
Alexei Sorokin
fde929b151
[DATABASE] Switch from PEAR DB to MDB2
2020-09-14 22:46:29 +03:00
Alexei Sorokin
96f1cc1a5c
[ActivityPub][INBOX][Delete] Stop if the ID is not present
2020-09-14 21:32:41 +03:00
Alexei Sorokin
647bf8c953
[ActivityPub] Fix use of ActivityPubPlugin::pull_remote_profile
...
It does not throw but return null.
2020-09-14 20:48:10 +03:00
Alexei Sorokin
d2c7d70f49
Fix "Implement a class for automatic temporary file handling"
...
TemporaryFile::commit throws instead of returning a bool.
2020-09-14 20:37:48 +03:00
Alexei Sorokin
001629b6dd
[Memcached_DataObject] Do not encache on insert
...
This resulted in N=0 and empty "modified" in cache.
2020-09-14 20:19:17 +03:00
Alexei Sorokin
b04469a252
[DATABASE] Make sure the session always uses UTF-8 and UTC
2020-09-12 15:40:39 +03:00
Alexei Sorokin
54484e56e7
[API] Fix /api/statuses/update reporting a failure
2020-09-12 13:58:57 +03:00
Alexei Sorokin
adc689cb15
Avoid use of assignments bare inside statements
...
Either use them in a subroutine call or put parentheses around the assignment.
2020-09-08 12:42:51 +03:00
Alexei Sorokin
d0f96a7023
[Profile] Extend the allowed length of nicknames to 191 characters
2020-09-06 21:20:24 +03:00
Alexei Sorokin
08145f635f
Implement a class for automatic temporary file handling
...
And adopt it all over the code.
2020-09-04 13:15:23 +03:00
Alexei Sorokin
4884a97223
[Memcached_DataObject] Change how multiGet achieves an ordered result
...
The previous approach sent the key values twice, which for large sets is
twice as bad.
As an optional feature of this approach multiGet now allows retrieving tuples
in exact order and amount of the requested key values.
2020-09-03 18:11:12 +03:00
Alexei Sorokin
55136c1c6f
[DirectMessage] Simplify the inbox query
2020-09-02 15:12:20 +03:00
Alexei Sorokin
fc300607e5
[ActivityPub] Check if a Notice is public via CC as well
2020-09-01 01:20:13 +03:00
Diogo Cordeiro
8c20ed0c89
[ActivityPub] Fix note URIs
2020-08-31 22:18:49 +01:00
Diogo Cordeiro
c8e9cbdbb8
[ActivityPub] Tombstones now have datetimes
2020-08-30 01:59:38 +01:00
Diogo Cordeiro
3f70ac5cde
[TheFreeNetwork] Fix invalid index on lookup
2020-08-30 01:59:35 +01:00
Diogo Cordeiro
11a7182594
[ActivityPub] Implement Failed Queue
2020-08-29 20:32:21 +01:00
Diogo Cordeiro
817074a787
[ActivityPub] Fix DELETE
2020-08-29 20:32:18 +01:00
Diogo Cordeiro
c75bf1a19d
[ActivityPub] Fix issues concerning Activity URIs
...
And some other minor bugs.
2020-08-29 11:29:12 +01:00
Alexei Sorokin
11ebb98919
[DATABASE] Fix use of ORDER BY with DISTINCT
...
statuses/retweets_of_me has performance fixed, so it is also stripped of its
"bad query" status.
2020-08-27 11:15:39 +03:00
Diogo Cordeiro
e4093343c2
[ActivityPub] Revert moving Disfavor to Queues
...
It seems this kind of notice isn't queued?
2020-08-27 02:14:47 +01:00
Diogo Cordeiro
101ea554ef
[ActivityPub][Queues] Fix Like
2020-08-27 02:12:22 +01:00
Diogo Cordeiro
ef6a986dc6
[TheFreeNetwork] Do not allow lower priority protocols to handle remote actors already handled by the higher ones
2020-08-27 01:32:15 +01:00
Alexei Sorokin
db593496a7
[Directory] Fix SQL string quotation
2020-08-26 16:27:35 +03:00
Alexei Sorokin
00c492891e
[Foreign_link] Change the type of "credentials" to blob
...
TwitterOAuthClient::packToken uses \0 as a delimeter which can cause issues on
TEXT or VARCHAR.
2020-08-25 16:06:37 +03:00
Alexei Sorokin
0e81f9c726
[OpenID] Correct table definition types
...
"server_url" should not be blob.
Lengths are adjusted to Auth/OpenID/(PostgreSQL|MySQL)Store.php.
2020-08-24 16:27:44 +03:00
Alexei Sorokin
b419c5cf7c
[Queue_item] Let DataObject construct WHERE IN
2020-08-24 16:16:00 +03:00
Alexei Sorokin
20e5a6d1f3
[TwitterBridge][DAEMONS] Fix database connection clean-up
2020-08-24 15:43:14 +03:00
Alexei Sorokin
99a9a5d850
[NOTICES] Condition pushdown in the subquery in inboxnoticestream
...
This improves performance on PostgreSQL.
2020-08-19 19:14:11 +03:00
Alexei Sorokin
a15d51c3d8
[DATABASE][PostgreSQL] Ignore index prefix length
2020-08-17 17:01:42 +03:00
Alexei Sorokin
b01974b665
[PostgreSQL] Set timezone to UTC
...
And remove some redundant neighbouring cruft:
utf8mb4 is already set in mysqlschema more than enough times.
2020-08-17 16:52:11 +03:00
Alexei Sorokin
be5bec9887
Rename the mysql_foreign_keys option to foreign_keys
...
And apply it universally.
2020-08-17 14:12:49 +03:00
Alexei Sorokin
27045f03f5
[SESSION] Session ID can be as long as 128 characters
2020-08-17 13:58:19 +03:00
Alexei Sorokin
071baf04fd
[NOTICE] Store "url" as TEXT and not VARCHAR(191)
2020-08-17 13:35:16 +03:00
Alexei Sorokin
341e34b766
[DATABASE] Change collation handling
...
Before now table definitions could define collations only for MariaDB using the
MariaDB's collation names directly.
Now instead definitions get a slightly more abstract collation name syntax, but
only supporting the collations utf8mb4_bin and utf8mb4_unicode_(cs|ci) (wrapped
as utf8_bin, utf8_general_(cs|ci)), because those are the ones that have
practical use for GNU social.
Which also means that on MariaDB the formerly used utf8mb4_general_(cs|ci) have
been superseded by utf8mb4_unicode_(cs|ci), as they are the more modern
replacement.
Introduce collation support on PostgreSQL which results in use of the C (POSIX)
collation as utf8_bin and the und-x-icu collation as utf8_general_cs.
utf8_general_ci is also mapped to und-x-icu, which makes it case-sensitive,
unfortunately.
2020-08-16 23:41:28 +03:00
Alexei Sorokin
5c21816b22
[SEARCH][PostgreSQL] Make LIKE search case-insensitive
2020-08-16 19:05:47 +03:00
Alexei Sorokin
afd18db381
[TwitterBridge] Create Foreign_user before Foreign_link
...
To keep foreign key constraints intact.
2020-08-13 23:59:40 +03:00
Alexei Sorokin
6c8cd4c9f8
[SEARCH][MariaDB] Change user-facing fulltext search syntax
...
Now analogous to the simple and safe PostgreSQL's websearch_to_tsquery syntax.
MariaDB's full-text boolean search queries will fail on input such as "@user"
(unquoted) which is particularly noticeable to the user.
2020-08-13 23:44:59 +03:00
Alexei Sorokin
255d395f1d
[SEARCH] Exclude message scope
2020-08-13 22:59:41 +03:00
tenma
2f845e98e8
[FFmpeg] Add FFmpeg plugin
...
FFmpeg plugin serves as a better performant/quality alternative to
resize animated GIFs than the ImageMagick plugin.
2020-08-14 23:32:15 +01:00
tenma
1371e3efb8
[MEDIA] Add WebP support
...
WebP format is now the default image format for anything that
is not an animated GIF. Image Intervention doesn't support
animated WebPs so we don't convert animated GIFs.
ImageFile:
MediaFile:
default:
- Add WebP support
2020-08-14 19:48:02 +01:00
tenma
8a2c1658a8
[ImageMagick] Remove unnecessary code
...
ImageMagickPlugin:
- Remove animated thumbnail setting, we'll be able to use FFmpeg for performance
- Remove onFillImageFileMetadata and onCreateFileImageThumbnailSource(), these
are handled just fine by ImageFile
- Bump minor version number
README:
- Update
2020-08-14 19:48:02 +01:00
Alexei Sorokin
b65c200922
[File] Fix file deletion violating foreign keys
2020-08-13 23:56:31 +03:00
Alexei Sorokin
33caf31237
[RedisCache] Connections should not be shared by daemon threads
2020-08-13 22:51:22 +03:00
Alexei Sorokin
cb7effca05
[Memcached] Do not set persistent connections for daemons
2020-08-13 22:51:22 +03:00
Alexei Sorokin
8745a3e824
[Embed] Fix a query typo in fixup_files.php
...
Regression introduced in ec86de2bc4
2020-08-13 22:51:22 +03:00
Alexei Sorokin
ac6510d481
[Memcached_DataObject] Thorough check of pivotGetClass arguments
2020-08-12 13:50:39 +03:00
Alexei Sorokin
2109c7b830
[Bookmark] Silence a warning when no tags in BookmarkForm
2020-08-12 13:19:59 +03:00
Alexei Sorokin
629857d3ef
[Bookmark] Fix undefined variable "rendered" in Activity options
2020-08-12 13:12:36 +03:00
Alexei Sorokin
60eed202dd
[EXTLIB][VALIDATE] Declare everything as static
...
As was originally intended by the author and is expected.
2020-08-12 12:08:54 +03:00
Alexei Sorokin
14e2621a05
[RSSCloud] Avoid the deprecated in PHP each() function
2020-08-11 19:40:46 +03:00
Alexei Sorokin
99da7963d1
[Managed_DataObject] Remove the "timestamp" type
...
It is converted to "datetime" in lib/database/schema.php
2020-08-11 18:30:12 +03:00
Alexei Sorokin
2abe910ff5
[RSSCloud] Update schema definition
2020-08-11 18:23:45 +03:00
Alexei Sorokin
15f7941daf
[Profile] Allow grantRole to work when role exists
2020-08-11 15:00:57 +03:00
Alexei Sorokin
535b87bb64
[RedisCache][DiskCache] Check if unserialize succeeded
2020-08-10 11:12:31 +03:00
Alexei Sorokin
e63c0d1b03
[TwitterBridge] Check if Notice::$lat and Notice::$lon are defined
2020-08-10 10:35:45 +03:00
Alexei Sorokin
8bc714a2b1
[DATABASE][MariaDB] Always use LONGBLOB for "blob"
...
"blob" is practically used with the expectation of unlimited length, which is
true with PostgreSQL's bytea, but not with MariaDB's BLOB, which is limited to
64KiB.
So instead use LONGBLOB, which has a maximum of 4GiB, effectively unlimited.
2020-08-10 10:55:59 +03:00
Alexei Sorokin
07b0aa8f52
[DATABASE] Fix remaining misuses of SQL's GROUP BY
2020-08-10 19:29:04 +03:00
Alexei Sorokin
ce665baa88
[Queue_item] There is no "modified" attribute
...
Fixes a regression introduced in ec86de2bc4
2020-08-10 17:46:30 +03:00
Alexei Sorokin
8c41663175
Revert "[CORE] Avoid the old "reply" relation in inboxnoticestream"
...
It is needed for mentions.
2020-08-10 17:23:57 +03:00
Alexei Sorokin
7cb10b71bb
[RequireValidatedEmail] Only check current user posts
...
This check made registration impossible when welcomeuser didn't have validation
as well.
And rename the "grandfatherCutoff" option to "exemptBefore".
"Grandfathering" is a relatively obscure term linked to the history of the
United States of America, so replace that with something self-descriptive.
2020-08-09 23:58:25 +03:00
Alexei Sorokin
47cacf5f1a
[NOTICES] Restore FullNoticeStream
...
But only allow a select number of verbs.
This is to display optional subscription notices.
2020-08-09 21:00:14 +03:00
Alexei Sorokin
042e4b070c
[EmailAuthentication] Check if e-mail with filter_var
2020-08-09 20:35:31 +03:00
Alexei Sorokin
f84dbb369f
[DATABASE] Enable fulltext search by default
...
Also rename fulltext indices to more fitting names
and move the check from classes into database/schema.php
2020-08-08 18:08:06 +03:00
Alexei Sorokin
34ec165bff
[DATABASE][PostgreSQL] Add fulltext search support
2020-08-08 16:56:20 +03:00
Alexei Sorokin
b20c0bdec7
Clean Notice_prefs and Fave_tally when a notice is deleted
2020-08-08 12:22:35 +03:00
t3nma
c527ad0803
[COMPOSER] Add new php-ffmpeg package
2020-08-07 23:42:38 +01:00
Alexei Sorokin
0a6bb5190f
[ExtendedProfile] Clean up of missing array indices handling
2020-08-07 11:59:17 +03:00
Alexei Sorokin
cf353f8829
[TwitterBridge] Do not fail on missing notice
2020-08-07 11:42:21 +03:00
Alexei Sorokin
2bd7c021fd
[ACTIONS] Fix selftag
2020-08-07 10:20:03 +03:00
Alexei Sorokin
46f788d1eb
[UTIL] Fix up common_ensure_session()
...
Give priority to cookies over GET.
Make sure session ids have only expected characters
(PHP file session handler's limitation).
Replace a mostly useless log warning with a debug message.
2020-08-06 21:54:49 +03:00
Alexei Sorokin
5ea5d30075
[EXCEPTIONS] Inherit the Previous Exception parameter
2020-08-06 20:03:44 +03:00
t3nma
22d650469b
[TwitterBridge] Fix issue "Only variables should be assigned by reference"
...
From the docs: "The new operator returns a reference automatically, so
assigning the result of new by reference is not allowed as of PHP 7.0.0"
2020-08-06 17:25:27 +01:00
Diogo Cordeiro
849ad494d8
[ActivityPub][NOTICE] Process attachments
2020-08-05 18:23:41 +01:00
Diogo Cordeiro
7a2bb38331
[MEDIA] fromUrl now supports using original file name
2020-08-05 17:53:31 +01:00
Diogo Cordeiro
1428ac2cb0
[ActivityPub][NOTICE] Fix variable being wrongly reused
2020-08-05 17:53:31 +01:00
Diogo Cordeiro
efdc7d9ba0
[ActivityPub][INBOX][Delete] Support Delete Actor object being a Tombstone
2020-08-05 17:53:31 +01:00
Diogo Cordeiro
e4e41bb595
[ActivityPub][NOTICE] Fix other federation protocols mention handling
2020-08-04 20:00:55 +01:00
Diogo Cordeiro
379fbb6e5d
[ActivityPub][SCRIPTS] Add fix_subscriptions.php
2020-08-04 17:12:01 +01:00
Diogo Cordeiro
09c3236afc
[TheFreeNetwork][fix_duplicates.php] Don't die because you couldn't federate an undo follow
2020-08-04 13:03:33 +01:00
Diogo Cordeiro
7d52440461
[TheFreeNetwork][fix_duplicates.php] Small improvements on queries performed
2020-08-04 12:38:51 +01:00
Alexei Sorokin
e206995268
Set HTTP status codes with http_response_code()
2020-08-04 14:12:17 +03:00
Alexei Sorokin
ab4120721f
[Favorite] Fix "Properly trigger DisfavorNotice on profile deletion"
...
Calling find() inside delete() is probably not a good idea.
2020-08-04 13:23:31 +03:00
Diogo Cordeiro
a9c365a5eb
[VersionBump] 2.0.0alpha0
...
Ran composer update and locale updater
2020-08-04 05:31:44 +01:00
Diogo Cordeiro
8ad928d48d
[TheFreeNetwork] Add Readme
...
Improve script fix_duplicates.php's comments
2020-08-04 05:10:11 +01:00
t3nma
ebf5efe9f2
[TheFreeNetwork] Add fix_duplicates script
2020-08-04 05:02:06 +01:00
t3nma
c7055341f9
[TheFreeNetwork] Small rewrite to the onStartTFNLookup event
2020-08-04 02:45:32 +01:00
Diogo Cordeiro
34c5be5c42
[MODULES] Make default loading attributes available in global config
2020-08-04 01:36:21 +01:00
t3nma
1675916fda
[ActivityPub][QUEUES] Handle Create (AS1 POST) verb properly
...
Fixes a bug introduced in e504d13120
2020-08-03 18:21:47 +01:00
Alexei Sorokin
a38c608420
[SCHEMA] Better DBMS information fetching
...
On PostgreSQL:
- Parse defaults for strings and booleans properly.
- Parse the "serial" definition type properly.
- Get information on the "enum" definition type.
- Re-work getting information about keys/indices.
On MariaDB:
- Get information about lengths in indices.
- Get foreign key information separately from the rest as they can have
colliding names.
2020-08-01 19:05:48 +03:00
Alexei Sorokin
20be1d179a
[OpenID][DATABASE] Store UNIX timestamps as BIGINT
2020-07-31 18:40:53 +03:00
Alexei Sorokin
1870f38099
[SCHEMA] Fix a few mistakes
2020-07-31 18:24:12 +03:00
Alexei Sorokin
96eced9845
[BLOCK] Increase type strictness
2020-07-31 16:35:27 +03:00
Alexei Sorokin
92e8c40c55
[DATABASE] Add explicit indices for all foreign keys
...
This adds a requirement for all definitions that have foreign keys to also
require indices for all source (local) attributes mentioned in foreign keys.
MariaDB/MySQL creates indices for source attributes automatically, so this
serves as a way to get rid of those automatic indices and create clean explicit
ones instead.
In PostgreSQL, most of the time, indices on the source are necessary to
decrease performance penalty of foreign keys (like in MariaDB), but they aren't
created automatically, so this serves to remove that difference between
PostgreSQL and MariaDB.
2020-07-31 16:36:40 +03:00
Alexei Sorokin
0bfa747382
[DATABASE] Fix index identifiers and clean up redundant ones
2020-07-31 16:12:48 +03:00
t3nma
be3c4263b3
[DirectMessage] Update ApiDirectMessageNew action
...
- Messages are now saved as Notices
2020-07-29 17:50:29 +01:00
t3nma
f00852a619
[DirectMessage] Update ApiDirectMessage action
...
- getMessages() is now fetching from the Notice table as supposed
- every show{format}* method is properly updated to use Notice objects
- json and xml responses retrieve multi-recipients without compromising
backwards compatibility
2020-07-28 05:49:37 +01:00
t3nma
83df8848c8
[DirectMessage] Update inboxMessages() to stop fetching replies
...
This is yet to be supported in the plugin.
2020-07-28 05:48:43 +01:00
t3nma
99183ce4e2
[DirectMessage] PSR12-format
2020-07-28 04:46:10 +01:00
Alexei Sorokin
434ce56e33
[DOCUMENTATION] Adopt PSR-12 and clarify on arrays
2020-07-27 19:19:42 +03:00
Alexei Sorokin
ec86de2bc4
[DATABASE] Update "modified" in Managed_DataObject instead of a DBMS trigger
...
Instead of relying on the MariaDB's ON UPDATE CURRENT_TIMESTAMP trigger update
"modified" attributes in Managed_DataObject. Every raw query that needs
adjusting is adjusted, as they won't update "modified" automatically anymore.
The main goal behind this change is to fix "modified" updates on PostgreSQL.
2020-07-27 19:10:33 +03:00
Alexei Sorokin
341f3d0ea5
[DATABASE] Fix more incorrect uses of quotation in SQL
2020-07-26 15:28:05 +03:00
Alexei Sorokin
579120df70
[Notice] Fix clearReplies() and clearRepeats()
2020-07-26 15:12:00 +03:00
Alexei Sorokin
63eb323e8b
[SHOWSTREAM] Add "noindex" robots meta-tag for silenced profiles
2020-07-26 13:59:37 +03:00
Alexei Sorokin
2861ae2823
[AuthCrypt] Password storage and comparison improvements
...
Password hashes are now stored in a TEXT attribute, not limited to 199 symbols.
That limitation makes no sense as password hashes are not the kind of
information to be indexed.
Actually replace crypt() with password_verify() for password checking, current
code left password_verify() unused.
Only update passwords when they use a different algorithm from the current
default. Previously "overwrite" meant rehashing every login.
Replace the "argon" boolean option with "algorithm" and "algorithm_options" for
better configurability.
The default remains whichever is default for PHP's password_hash.
2020-07-25 20:16:21 +03:00
Diogo Cordeiro
0b947ce2c7
[AuthCrypt] Update README and fix formatting
2020-07-25 17:42:46 +01:00
Diogo Cordeiro
2222d6d173
[MODULES] Make settings great again
...
Plugin main class doesn't use this construct despite extending this class.
2020-07-25 17:47:53 +01:00
Alexei Sorokin
33e9b57b78
[Profile][User_group] Fix profile deletion violating foreign keys
2020-07-24 13:09:02 +03:00
Alexei Sorokin
62f4dfdc7a
[Favorite] Properly trigger DisfavorNotice on profile deletion
2020-07-24 12:45:30 +03:00
Alexei Sorokin
7e01fd9c38
[DATABASE][MariaDB] Fix index changes with foreign keys enabled
2020-07-23 19:09:41 +03:00
Alexei Sorokin
eefaf7a2b4
[DATABASE][Schema_version] Change the hashing algorithm to SHA3-512
2020-07-23 18:16:56 +03:00
Alexei Sorokin
31dcf99e61
[DATABASE] Make unprefixed schema.php a bit more DBMS-neutral
2020-07-23 18:12:01 +03:00
Diogo Cordeiro
0def5f1dca
[ActivityPub][Explorer] More robust exception handler for invalid remote answers
2020-07-23 15:54:40 +01:00
Alexei Sorokin
ac94374f48
[RemoteFollow] Fix location display
2020-07-22 19:49:24 +03:00
Diogo Cordeiro
9f72b6e2c0
[MEDIA] Fix headers when using x-static-delivery
2020-07-22 16:07:52 +01:00
Alexei Sorokin
f9e38c1a8d
[LRDD] Fix unhandled bad data in HostMeta, LinkHTML and WebFinger
2020-07-22 01:30:04 +03:00
Diogo Cordeiro
6db56cc949
[ActivityPub][AProfile] Complete strict typing
2020-07-21 23:22:07 +01:00
Alexei Sorokin
7081720ecb
[DATABASE] Check SQL boolean values with "IS TRUE"
...
This way UNKNOWN (NULL) explicitly turns to FALSE when three-valued logic is
reduced to binary.
In pgsqlschema, however, use "IS FALSE" as boolean attributes in pg_index are
non-nullable, there is no outer join and there's no clear preference for NULL
reduction.
Over-complicated constructions in TagCloud queries have been simplified, which
should not affect their performance.
Additionally, in TagCloud's lib/subscriptionspeopleselftagcloudsection.php
a typing mistake in an equi-join of "profile_tag" and "profile_list" on
"tagger" was fixed.
That regression was introduced in f446db8e2a
2020-07-21 18:06:39 +03:00
Diogo Cordeiro
f7ded4d87b
[UserFlag] Fix type of onUserRightsCheck
2020-07-21 13:37:36 +01:00
Diogo Cordeiro
67780ca4a9
[UserFlag] Increase strict typing of main file
...
Run php-cs-fixer
Correct case of class name onDeleteRelated event handlers
2020-07-21 12:43:52 +01:00
Diogo Cordeiro
871f3c4bfe
[ActivityPub] Increase type strictness on Explorer
2020-07-21 12:26:23 +01:00
Diogo Cordeiro
395fe8cb10
[ActivityPub] Fix wrong type handling on AProfile:update_profile
2020-07-21 12:02:07 +01:00
Diogo Cordeiro
af936f6f8e
[Bookmark] Fix misuse of XMLOutputter
...
Argument 3 passed to htmloutputter::input() must be of the type string or null, array given, called in /srv/gnusocial/plugins/Bookmark/forms/bookmark.php on line 166
2020-07-17 20:56:51 +01:00
Diogo Cordeiro
5512e95e0a
[ExtendedProfile] Fix misuse of XMLOutputter
...
Argument 1 passed to xmloutputter::text() must be of the type string, null given, called in /srv/gnusocial/plugins/ExtendedProfile/lib/extendedprofilewidget.php on line 556
2020-07-17 20:50:16 +01:00
Hugo Sales
5e14f18c83
[NOTICE][UI] Fix bug: Option to message "Everyone at site" when using private instance
2020-07-16 22:29:59 +00:00
Alexei Sorokin
5adb971d9a
[DOCUMENTATION] Adapt the nginx config for avatars located in /file
2020-07-09 18:39:36 +03:00
Alexei Sorokin
f51e5ba19d
[CORE] Avoid materialisation in the TaggedProfileNoticeStream query
...
This is analogous to c862589dcf
2020-07-07 22:41:03 +03:00
Alexei Sorokin
488bddb02a
[NOTICE] Update index for verbs in ProfileNoticeStream
...
After adding a verb condition there, MariaDB now prefers the
("created", "id", "is_local") and ("profile_id", "verb", "created", "id")
indices for that query, even though they are slow for the job.
So replace them with ("is_local", "created", "id") and
("profile_id", "verb", "created", "id") respectively.
Also fix the naming of the ("profile_id", "created", "id") index.
2020-07-07 20:43:08 +03:00
Diogo Cordeiro
3a2ec3ef9c
[ActivityPub] Fix bug introduced with 4d171b27
...
Too few arguments to function Activitypub_notice::create_notice()
2020-07-07 17:57:48 +01:00
Alexei Sorokin
08283f6c54
[RedisCache] Catch string return type from Predis\Client::setex
2020-07-06 20:10:12 +03:00
Alexei Sorokin
f7d3f58318
[CORE] Do not set "confirm_address"."user_id" to 0 by default
...
That breaks the foreign key constraint, it is better to just have it nullable.
2020-07-06 20:01:16 +03:00
Alexei Sorokin
89e84e9b1b
[NOTICES] Revert "We want the profile stream to be as raw as possible!"
...
There are only three possible visible notice verbs: POST, SHARE and DELETE.
What including all verbs does is it makes limiting (FETCH FIRST) unreliable as
the query will fetch invisible stuff (like favourites) and count it in, but
nothing will be displayed.
NoticeStream only allows POST and SHARE, so this effectively removes tombstones
from the profile page like in 78a111b57d
2020-07-06 19:20:44 +03:00
Alexei Sorokin
9226cce151
[NOTICES] Fix InboxNoticeStream caching
...
Introduce a new property in CachingNoticeStream for always checking if there
are any new elements in the stream.
It would be extremely hard to blow InboxNoticeStream, so instead the database
hit will still occur, but it is be much faster than starting fresh.
This fixes a regression introduced in 36a55d8436
2020-07-06 18:12:50 +03:00
Diogo Cordeiro
6526bdc824
[TheFreeNetwork] Fix small logic issue regarding StartTFNLookup return
2020-07-05 18:26:49 +01:00
Diogo Cordeiro
1967f46a69
[ActivityPub][SCRIPTS] Make update profiles work with an uri
2020-07-05 17:38:28 +01:00
Diogo Cordeiro
e504d13120
[ActivityPub][QUEUES] Add Like, Undo and Delete
2020-07-05 16:58:05 +01:00
Diogo Cordeiro
2f284f4274
[ActivityPub][INBOX][Delete] Fix misconceptions
...
References:
- https://socialhub.activitypub.rocks/t/the-delete-activity-and-its-misconceptions/137
- https://socialhub.activitypub.rocks/t/the-update-activity-more-than-caching/260
2020-07-05 16:46:37 +01:00
Diogo Cordeiro
4d171b27a4
[ActivityPub][NOTE] Do not extract actor from attributedTo
...
There was no checking of attributedTo, actors and referent object IDs to make
sure they exist in the same domain. Therefore, one could spoof messages from
people by doing attributedTo: whoever-i-want-to-spoof
2020-07-05 15:38:12 +01:00
Diogo Cordeiro
fe4a9a6189
[ActivityPub][Ostatus] Fetch avatars in accordance to the new media system
2020-07-05 15:37:52 +01:00
Alexei Sorokin
c862589dcf
[CORE] Avoid materialisation in the TagNoticeStream query
...
The notice.created sort forced the notice_tag by notice join plain to employ
materialisation, which can have a serious performance penalty depending on the
size of the database.
Sort by notice_tag.created instead, which should be exactly the same.
2020-07-01 18:20:44 +03:00
Alexei Sorokin
61765b0e33
[CORE] Avoid the old "reply" relation in inboxnoticestream
...
All verbs for not visible notices are filtered out, so this should not
break the timeline.
Additionally, filter by profile outside of the derived relation as that shows
better performance in PostgreSQL and MariaDB both.
2020-07-01 17:11:04 +03:00
Alexei Sorokin
78a111b57d
Revert "FullNoticeStream selects all verbs"
...
It appears this was added to display "tombstones" of deleted notices.
However, it has other side-effects and the concept of keeping them visible has
not been adopted by the wider fediverse.
2020-06-30 23:03:41 +03:00
Alexei Sorokin
9a515b9234
[SCHEMA] Improve timestamp storage
...
Avoid the use of deprecated MariaDB "zero dates" globally. If they're present
as attribute defaults somewhere, they will be replaced with NULL implicitly.
The existing "zero dates" in MariaDB storage will be left intact and this
should not present any issues.
The "timestamp" type in table definitions now corresponds to DATETIME in
MariaDB with "DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP", which
should be close enough to the original behaviour for compatibility purposes.
It is now the recommended type for "modified" attributes, because of the
update trigger on MariaDB. But there is no such trigger implemented on
PostgreSQL as of this moment.
2020-06-29 01:41:46 +03:00
Alexei Sorokin
b924c180ae
[DATABASE] Fix MariaDB schema verification
2020-06-28 20:05:11 +03:00
Diogo Cordeiro
737f3eb553
[ActivityPub][HTTPSignatures] Fix verify
2020-06-28 00:58:16 +01:00
Diogo Cordeiro
6e3954f3bb
[ActivityPub][Inbox] Signature verification after Actor update would always fail
2020-06-28 00:49:55 +01:00
Diogo Cordeiro
4544f29832
[AVATAR] Ensure this Action stays secure
2020-06-28 00:11:47 +01:00
Hugo Sales
477c357f11
[MEDIA] Move AttachmentAction::sendFile to common_send_file
...
This fixed the wrong content type and status code returned by the Avatar action
2020-06-27 23:23:10 +01:00
Diogo Cordeiro
7869a7c1b0
[ActivityPub][Inbox] With PHP 7.3 we don't need get_all_headers workaround anymore
...
Furthermore, it was broken on Apache2 because the actual function
doesn't put the resulting array's key in lowercase.
2020-06-27 20:43:43 +01:00
Alexei Sorokin
edc7159ef6
[Memcached_DataObject] Check if it is possible to sort efficiently
2020-06-27 11:22:19 +03:00
Diogo Cordeiro
1db6943702
[ActivityPub][Inbox] get_all_headers was nginx only
2020-06-26 14:08:47 +01:00
Diogo Cordeiro
e8dff6c4a0
[TESTS] Move AcceptHeader from ActivityPub plugin to Core
...
Delete temporary ActivityPub tests (they were to be deleted long ago)
2020-06-25 15:50:12 +01:00
Diogo Cordeiro
23ed816035
[ExtendedProfile] Fix XML type bug
2020-06-24 21:44:25 +01:00
Diogo Cordeiro
324b7f38a9
[FORMAT] Run php-cs-fixer on tests/
2020-06-24 13:55:10 +01:00
Diogo Cordeiro
aa7aff3f6b
[TESTS] Fix CommandInterpreterTest
...
Also corrected a bad refactoring that affected Xmpp plugin test
2020-06-24 13:54:38 +01:00
Diogo Cordeiro
236929a166
[PEAR] I'm tired of this issue still popping up, this seems to silence it
2020-06-24 13:08:58 +01:00
Diogo Cordeiro
953e243639
[UI] Make neo-quitter default theme
2020-06-21 00:34:55 +01:00
Diogo Cordeiro
338d53c982
[XML] Inscrease types strictness
2020-06-21 00:34:54 +01:00
Diogo Cordeiro
37ebcc509b
[AVATAR] Temporary ImageFile wasn't
2020-06-21 00:34:27 +01:00
Diogo Cordeiro
f9be6f9a85
[AVATAR] Try to delete tmp avatar if something goes wrong during the process
2020-06-20 14:47:35 +01:00
Diogo Cordeiro
2cc2b5b856
[MEDIA] ImageFile fromUpload method wasn't ensuring uploaded file was an image
2020-06-20 14:47:33 +01:00
Alexei Sorokin
194976135f
[DATABASE] Some query improvements
...
Make common_sql_weight employ standard SQL functions for the timestamp
difference in seconds.
Also replace UTC_TIMESTAMP in the MariaDB-specific part with CURRENT_TIMESTAMP
as it is the only occurence and GNU social sets UTC as a default timezone.
In a delete_orphan_files.php script simplify the main query considerably.
In clean_profiles.php stop using COUNT as if it is ANY, that is unnecessary
punishment for the database. Instead implement the anti-join with a
left outer join.
In Autocomplete and Activitypub_profile use joins instead of a WHERE OR
anti-pattern for the semi-joins.
In lib/ui/galleryaction.php replace a CROSS JOIN with an INNER JOIN.
In actions/sup.php remove a redundant subquery: WHERE is applied before
grouping either way.
2020-06-10 16:52:00 +03:00
Alexei Sorokin
ef17f3ea7d
[CORE][DATABASE] Another approach to semi-join in the inboxnoticestream query
...
Compared to the solution with INNER JOIN this seems to have better performance
as there is no need to deduplicate the subquery result before use.
2020-06-10 14:21:47 +03:00
Alexei Sorokin
0eec6fcfb6
[DATABASE] Replace NOW() with CURRENT_TIMESTAMP
2020-06-09 20:26:06 +03:00
Alexei Sorokin
09a772419a
[DATABASE] Use "<>" as an SQL non-equality sign in more cases
...
A follow-up to commit 644b417f6c
2020-06-08 18:31:22 +03:00
Alexei Sorokin
6c035d01d4
[DATABASE] Start transactions with START TRANSACTION
...
"BEGIN" is non-standard and unnecessary.
2020-06-08 12:25:01 +03:00
susdiv
97bddc4537
[Autocomplete] Fix postgres incompatible query in AutocompleteAction
2020-06-05 19:14:37 +00:00
susdiv
684675bd84
[SCRIPTS] Fix postgres incompatible query in clean_profiles.php
2020-06-05 17:57:22 +00:00
susdiv
b8c0fa9fa0
[ActivityPub] Fix Postgres incompatible query in Following and Followed collection
2020-06-05 17:48:21 +00:00
Diogo Cordeiro
9e7794cd66
Merge branch 'nightly' of rainydaysavings/gnu-social into nightly
2020-06-03 00:08:53 +00:00
rainydaysavings
92ad44abf9
[THEME][neo-quitter] Added icon for Network in navbar
2020-06-03 00:59:22 +01:00
Hugo Sales
7e83ddf80e
[FIX] Fix 'Trying to access array offset on value of type null' in AntiBrutePlugin and SimpleCaptchaPlugin when using scripts
2020-05-24 16:55:37 +00:00
tenma
a9be720f09
[OStatus] Remove TFN's deprecated Census event and fix small typo in the code
2020-05-09 11:50:26 +01:00
tenma
d7906f113e
[ActivityPub] Remove TFN's deprecated Census event
2020-05-09 11:50:26 +01:00
tenma
01dcaefcfb
[TheFreeNetwork] Use config + module settings for initialization and online lookup
...
The Census event is now replaced with module settings for populating the
protocols array. With this we can shutdown some plugins and still make
them be checked by TFN.
The performance:high config is now added when deciding whether or not to
do online lookup after the offline lookup fails.
default:
- Add default values for the TFN protocol setting
EVENTS:
- Remove Cencus event
TheFreeNetworkModule
- Remove Census event handler, update protocols array to use module's settings
- Use performance:high config when deciding to do online lookup
2020-05-09 11:50:26 +01:00
tenma
cfba91ea43
[OStatus] Add TheFreeNetwork module's support in handling profile insertion
...
Ostatus_profile:
- Update createActivityObjectProfile to trigger TFN's assistance in inserting the profile
2020-05-09 11:50:26 +01:00
tenma
134b6f6478
[ActivityPub] Add TheFreeNetwork module's support in handling profile insertion
...
Activitypub_profile:
- Update do_insert to trigger TFN's assistance in inserting the profile
explorer:
- Use the new LRDD's method for grabbing profile aliases
2020-05-09 11:50:25 +01:00
tenma
64104cb182
[TheFreeNetwork] Handle new StartTFNLookup and EndTFNLookup events
...
EVENTS:
- describe new events
TheFreeNetworkModule:
- add event handlers and necessary auxiliary methods
- minor comment updates
2020-05-09 11:50:25 +01:00
tenma
9aedcc7997
[OStatus] Update salmonaction to use the new LRDD's method for grabbing aliases
2020-05-09 11:50:25 +01:00
tenma
35547e28ea
[LRDD] Add a new method for grabing profile aliases
2020-05-09 11:50:25 +01:00
tenma
c6543e1f95
[ActivityPub] Autofix profile URIs through alias discovering
...
Activitypub_profile:
- Add updateUri method
explorer:
- Add grab_aliases method
- Update grab_local_user's online course to grab and test aliases
2020-05-09 11:50:25 +01:00
Alexei Sorokin
2183875e9e
[UI] Fix group member pages showing up twice
2020-05-05 16:49:21 +03:00
Alexei Sorokin
e5ee069f4a
[UI] Order groups in join descending order in profiles
2020-05-05 16:25:02 +03:00
Hugo Sales
6c844315aa
[CORE] Fix 'Array and string offset access syntax with curly braces is deprecated' in AuthCryptModule and DirectionDetectorPlugin
2020-05-04 10:47:23 +00:00
Alexei Sorokin
872bb1388d
[Nodeinfo] Count active users for full days and without silenced
2020-04-17 18:13:05 +03:00
Alexei Sorokin
42aa255152
[CORE] Re-format the inboxnoticestream query
2020-04-08 15:25:30 +03:00
Diogo Cordeiro
e58188d136
[UI] Small improvement on attachment's visual
2020-04-07 13:28:34 +01:00
Diogo Cordeiro
bb32c0af3b
[SensitiveContent] Fix plugin settings
...
Also reformatted the code and minor bug fixed it
2020-04-07 13:28:29 +01:00
nee
63fd2c7037
[SensitiveContent] Add option to activate for not-logged-in visitors
...
Remove redundant setting retrival code.
An example config.php entry to activate the new config:
$config['site']['sensitivecontent']['hideforvisitors'] = true;
2020-04-07 02:59:35 +01:00
nee
520a2ba202
[SensitiveContent] Don't crash in GNU social classic
...
When an attachment has no thumbnail (for example when it's a video).
2020-04-07 02:59:30 +01:00
Hugo Sales
13e8445083
[SensitiveContent] Fix bug where having this plugin activated would not size thumbnails correctly
2020-04-07 02:59:24 +01:00
Hugo Sales
d1c70cb13b
[CORE] Make avatars be served with the same mechanism as attachments
2020-04-06 21:14:11 +00:00
Diogo Cordeiro
6898cff623
[PLUGINS] Remove VideoThumbnails not useful anymore
2020-04-03 12:20:27 +01:00
Diogo Cordeiro
f4558e3c41
[ActivityPub] Fix profile url handling
2020-03-28 03:16:24 +00:00
tenma
d24075b1c5
[INSTALL] Allow the setup of sslproxy during install time
...
install.php:
installer.php:
- add option field and handle logic
display.css:
- hardcode ssl's label margin-top value so all options are correctly displayed
2020-03-15 21:37:37 +00:00
tenma
a8c2a9da3a
[DOCUMENTATION] Add further notes to the nginx sample config
2020-03-12 18:03:48 +00:00
tenma
8041df7d41
[DATABASE] Fix deprecated call to implode()
2020-03-12 17:44:50 +00:00
Diogo Cordeiro
073a181778
[ActivityPub] Fix undefined tag index 'type' in Activitypub_notice
2020-02-14 17:25:26 +00:00
Diogo Cordeiro
bec6fdc66a
[NOTICES] Add data-nosnippet attribute for notices by remote profiles
2020-01-09 19:49:49 +00:00
Diogo Cordeiro
6833c9f1c2
[SHOWSTREAM] Add robots meta-tag for remote profiles
2020-01-09 17:02:26 +00:00
Diogo Cordeiro
18ade30185
[FORMAT] Ran php-cs-fixer on the handlers of notice items and streams
...
This was to keep the following two commits readable
- actions/showstream.php
- actions/userbyid.php
- lib/modules/ActivityHandlerModule.php
- lib/modules/ActivityHandlerPlugin.php
- lib/notices/conversationnoticestream.php
- lib/notices/noticelistitem.php
- lib/notices/noticestream.php
- lib/notices/threadednoticelistitem.php
2020-01-09 21:41:34 +00:00
Alexei Sorokin
e7ab305335
[CORE] Use monotonic time via hrtime() where applicable
...
The realtime clock is not reliable when calculating elapsed time.
2020-01-07 19:48:13 +03:00
Alexei Sorokin
110d3a453a
[Embed][CORE] Validate the hexadecimal for hex2bin properly
2020-01-07 17:30:18 +03:00
Alexei Sorokin
f5aeab39b4
[PEAR DB_DataObject] Make static methods in Cast actually static
2020-01-07 17:16:07 +03:00
Diogo Cordeiro
e7738895ce
[DOCUMENTATION] Updated TODO and branches info
2019-12-23 15:39:26 +00:00
Diogo Cordeiro
60446dfc20
[CORE] Better queues defaults
2019-12-11 02:23:37 +00:00
Diogo Cordeiro
dc211c9c44
[ActivityPub][Postman] Fix not sending notices to self
2019-12-11 01:30:25 +00:00
Diogo Cordeiro
27babac6dc
[Ostatus] Partially revert 69add504e6
...
updateuris isn't needed after alll, we should solve this with TFNM and existing infrastructure.
2019-12-11 01:30:15 +00:00
Diogo Cordeiro
3e2b7cddc8
[ActivityPub][RSA] Revision, increase type scrictness and improve docs
2019-12-10 23:51:40 +00:00
Diogo Cordeiro
80ba2b3ccc
[ActivityPub] Properly handle Actor URIs by using events correctly
...
This should fix nulls on explorer lookups inputed by postman after generate_followers/getSubscribers, that I think were caused by calling common_profile_uri that, curiously, only handles local profiles
2019-12-10 23:50:56 +00:00
Diogo Cordeiro
b730582336
[CORE] Add GNUSOCIAL_ENGINE_REPO_URL and increase usage of GNUSOCIAL_ENGINE_URL
2019-11-21 00:21:22 +00:00
Alexei Sorokin
1b429dd2e5
[API] Show a nicer no such user error on statusnet/groups/list_all
2019-11-16 22:12:42 +03:00
Alexei Sorokin
448404e45c
[SCRIPTS] Fix resend_confirm_address.php
...
Fix a regression from 6ec72b2978
,
check if an address is set when using --email.
2019-11-16 21:22:46 +03:00
Alexei Sorokin
562d84c375
[Xmpp] Adjust type declarations for changes in XMPPHP
2019-11-16 20:44:18 +03:00
Diogo Cordeiro
f09e3362aa
[COMPOSER] update
2019-11-16 16:51:01 +00:00
Diogo Cordeiro
51b5b1c08c
[ActivityPub][RSA] Fix types of generate_keys
2019-11-16 15:32:49 +00:00
Diogo Cordeiro
ca2dde9a41
[ExtendedProfile] Fix updates and allow to delete values
2019-11-03 19:49:10 +03:00
Alexei Sorokin
6674d1ed0f
[NodeInfo][DATABASE] Adjust indices of the "notice" and "user" tables
...
On big databases these queries from the Nodeinfo plugin choked up:
SELECT profile_id FROM notice
WHERE notice.created >= (CURRENT_DATE - INTERVAL '180' DAY)
AND notice.is_local = 1;
SELECT id FROM "user"
WHERE "user".created >= (CURRENT_DATE - INTERVAL '180' DAY);
2019-11-03 18:57:03 +03:00
Diogo Cordeiro
2a10dffff8
[UI] Fix a small typo
2019-11-03 15:53:11 +00:00
Diogo Cordeiro
e0b17fc97d
[REALTIME] Reviewed both the superclass and its dist plugins
2019-11-03 15:37:49 +00:00
Alexei Sorokin
52800c3a65
[DATABASE] Remove profile_tag_tag_fkey
...
profile_list.tag is not supposed to be unique,
this also reverts the addition of profile_list_tag_key.
2019-11-02 14:32:48 +03:00
Alexei Sorokin
9124617055
[Xmpp] Latin-1 space characters are not forbidden for XMPP resources
...
Also use mb_strlen() with the 8bit encoding to count octets, strlen() is not as
reliable (mbstring.func_overload).
2019-11-02 13:54:26 +03:00
Alexei Sorokin
b312712d1b
[Xmpp] Use UnexpectedValueException in splitJid, a bit narrower
2019-11-02 13:29:00 +03:00
Alexei Sorokin
5bc1b8695e
[DATABASE] Disable 'NULL' strings evaluation as SQL NULLs
...
Use $object->sqlValue('NULL') (identical to DataObject_Cast'ing) instead and
fix related issues like (email|sms)settings considering these NULLs as a
false positive for the E-Mail address still being set when it's been removed.
There could also be security implications to the now-disabled approach of
considering 'NULL' strings as SQL NULLs.
2019-11-02 12:21:43 +03:00
Diogo Cordeiro
d921f3dadb
[ActivityPub] New URI system
2019-11-10 17:47:51 +00:00
Diogo Cordeiro
c154712012
[PEAR DB_DataObject] Removed DB_DATAOBJECT_NO_OVERLOAD as we don't have support for either PHP 4 or 5
2019-11-03 00:43:21 +00:00
tenma
3634af3fdc
[TheFreeNetwork] First code: Module class and census event
2019-11-03 00:43:21 +00:00
tenma
1df9ec9f0f
[SCRIPTS] Add updateuris script
...
To fix user URIs to their non-fancy version
2019-11-03 00:43:21 +00:00
tenma
ae54a94d41
[CORE] Update common_user_uri
...
To be consistent between federated-protocols and maintain non-fancy URIs
2019-11-03 00:43:21 +00:00
tenma
69add504e6
[OStatus] Add script for profile deduplication and URI fixing
2019-11-03 00:43:21 +00:00
tenma
a0d30b6872
[ActivityPub] Fix some small known problems
...
ActivityPubPlugin:
- Rework onProfileDeleteRelated to account for the tables _rsa and _pending_follow_requests
- Update onEndShowAccountProfileBlock to stop creating the ap_profile if it doesn't exist (we'll handle this in a different manner)
Activitypub_profile:
- Remove unnecessary code from from_profile method and add return type information
Explorer:
- Update travel_collection to call itself instead of _lookup, that was wrong
2019-11-03 00:43:21 +00:00
Alexei Sorokin
a06b33be66
[AnonymousFave][DATABASE] Set the created timestamp on INSERT
2019-11-01 16:09:09 +03:00
Alexei Sorokin
fe3e33e702
[DAEMONS][TwitterBridge] Set PUBLICDIR
2019-11-01 15:27:36 +03:00
Alexei Sorokin
3f56459734
[COMPOSER] Remove some pre-composer remnants from the code
2019-11-01 14:19:42 +03:00
Alexei Sorokin
4903241e4b
[DOCUMENTATION][NGINX conf] snippets/fastcgi-php.conf is Debian-specific
2019-11-01 08:52:21 +03:00
Alexei Sorokin
85be003cf5
[Embed][CORE] hex2bin should always get an even amount of symbols
2019-11-01 08:29:52 +03:00
tenma
bddc1c0f9d
[ActivityPub] Fix successive "Cannot use object of type stdClass as array" errors in the postman
2019-11-01 02:23:39 +00:00
tenma
01f6d83b86
[MODULES] Fix VERSION constant to MODULE_VERSION in various modules
2019-10-30 23:52:14 +00:00
Diogo Cordeiro
aa994ee4fb
[CORE] Allow to force non-fancy URLs
...
Essential to allow toggling fancy urls later. In some cases it is
critical to keep the URL an unique URI.
2019-10-27 17:40:37 +00:00
Diogo Cordeiro
d058a70557
[MEDIA] Simplify Attachment actions
2019-10-19 02:57:32 +01:00
Diogo Cordeiro
7298468df7
[FILE] Fix Return value of File::getFileOrThumbnailSize() must be of the type int, null returned
2019-10-19 01:16:37 +01:00
Diogo Cordeiro
63caa5044d
[LIB_REFACTOR] Fix minor issues
2019-10-19 00:51:52 +01:00
tenma
2ae93dbec6
[ActivityPub] Revert usage of bitwise-operator & in the inbox_handler class.
2019-10-17 20:25:00 +01:00
Diogo Cordeiro
b434bead2c
[ActivityPub] The protocol allows content to be null, GNU social doesn't, we'll reject silentiously
...
Reported by kaniini
2019-10-11 19:09:12 +01:00
Diogo Cordeiro
6284b155b8
[ActivityPub] attributedTo itself is not required, if not present then it should be inferred from the actor
...
Reported by kaniini
2019-10-11 17:51:20 +01:00
Diogo Cordeiro
b12c2d17d5
[ActivityPub] Fix security issue concerning remote profile deletes
...
Reported by kaniini
2019-10-11 17:41:43 +01:00
Diogo Cordeiro
5fb1e26a4c
[ActivityPub] Inbox Handler: Remove old guzzle import
...
Improve exception information in doc blocks
2019-10-11 17:18:50 +01:00
Diogo Cordeiro
6423750250
[ActivityPub] Slightly increase robustness on exception handling
...
Also ported Activitypub_rsa to PHP7
Minor indentation fixes
2019-10-11 17:08:41 +01:00
Diogo Cordeiro
d9b5ef1cee
[ActivityPub] Consistent headers in explorer requests
...
Minor indentation fixes
2019-10-11 16:00:14 +01:00
Miguel Dantas
f1717bde51
Fix 'Call to a member function getPayload() on null'
...
Trying to enable the RedisCache with the latest nightly, getting this with the daemon:
sep 25 11:40:18 friedrich startdaemons.sh[21428]: PHP Fatal error: Uncaught Error: Call to a member function getPayload() on null in /var/www/social/plugins/RedisCache/RedisCachePlugin.php:96
sep 25 11:40:18 friedrich startdaemons.sh[21428]: Stack trace:
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #0 /var/www/social/lib/util/event.php(89): RedisCachePlugin->onStartCacheSet('gnusocial:herds...', Object(HubSub), NULL, 86400, false)
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #1 /var/www/social/lib/cache/cache.php(202): Event::handle('StartCacheSet', Array)
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #2 /var/www/social/classes/Memcached_DataObject.php(520): Cache->set('gnusocial:herds...', Object(HubSub))
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #3 /var/www/social/classes/Memcached_DataObject.php(52): Memcached_DataObject->encache()
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #4 /var/www/social/classes/Managed_DataObject.php(50): Memcached_DataObject::getClassKV('HubSub', 'hashkey', 'a38b9dc516371af...')
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #5 /var/www/social/plugins/OStatus/classes/HubSub.php(47): Managed_DataObject::getKV('hashkey', 'a38b9dc516371af...')
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #6 /var/www/social/plugins/OStatus/lib/hubprepqueuehandler.php(68): HubSub::getByHashkey('https://herds.e ...', 'https://raki.so ...')
sep 25 11:40:18 friedrich startdaemons.sh[21428]: #7 /var/www/social/plugins/RedisQueue/classes/RedisQueueManager.php(58): HubPrepQueueHandl in /var/www/social/plugins/RedisCache/RedisCachePlugin.php on line 96
Sign in to j
2019-09-26 11:29:31 +01:00
Miguel Dantas
c6f4f40bba
[Embed][CORE] Fixes 'Invalid Filename' on Embed. Regex didn't get updated
2019-09-26 11:29:31 +01:00
Alexei Sorokin
65f1b1e1e3
Fix minor git merge resolving issues
2019-09-18 17:43:00 +03:00
Alexei Sorokin
ad91ef66bd
[SCRIPTS] Set PUBLICDIR in plugin scripts as well
2019-09-18 17:15:00 +03:00
Alexei Sorokin
6bfa593988
[DAEMONS] Move resetDb to the Daemon class
...
As it is used inside the Daemon class now, it should always be available.
2019-09-13 22:08:42 +03:00
Diogo Cordeiro
3ea580b537
[ActivityPub] Add missing parenthesis in class instantiation
...
Fixed some issues related to thrown exceptions in the doblocks; also boolean -> bool
2019-09-13 18:58:41 +01:00
Alexei Sorokin
87b0b493eb
[ActivityPub] Fix an unhandled error in onStartGetProfileFromURI
2019-09-13 20:55:23 +03:00
Diogo Cordeiro
4eb4a2de00
[ActivityPub] Fix some bugs with onStartNoticeSearch
...
Refactored Activitypub_profile::ensure_web_finger to Activitypub_profile::ensure_webfinger
Do not throw exceptions in the handling of this event because we don't
want to stop the regular search just because we were unable to find
ActivityPub actors or notes.
2019-09-13 18:10:20 +01:00
Alexei Sorokin
1f2f57b03b
[CORE] Fix logging of very early failures
2019-09-13 12:11:43 +03:00
Alexei Sorokin
4afaad3df5
[DATABASE][MariaDB] Properly account for foreign keys
2019-09-13 10:34:48 +03:00
Diogo Cordeiro
c3ba2e0f94
[BugFix] Plugins ExtendedProfile and OverwriteThemeBackground - admin is identical to system path names.
2019-09-12 23:18:50 +01:00
Alexei Sorokin
693c3168da
[OStatus] The unsubscribe state also needs a label
2019-09-12 14:19:21 +03:00
Alexei Sorokin
8f309bc768
Merge branch 'pgsql_support' into nightly
2019-09-12 12:01:50 +03:00
Alexei Sorokin
1a0d6a90c2
[INSTALL] Fix lib/util/installer.php import path
2019-09-12 11:52:04 +03:00
Diogo Cordeiro
7f2019b4af
[MODULES] Make disable in admin panel effective
2019-09-12 04:50:46 +01:00
Alexei Sorokin
ee7f0a2016
[DATABASE] Re-introduce PostgreSQL support
2019-09-11 14:14:40 +03:00
Alexei Sorokin
644b417f6c
[DATABASE] Use "<>" as an SQL non-equality sign
...
"!=" is not SQL compliant.
2019-09-11 13:27:36 +03:00
Alexei Sorokin
471576d6e8
[DATABASE] Columns not in GROUP BY must not be queried
2019-09-11 13:12:41 +03:00
Alexei Sorokin
7ee8aa7838
[DATABASE] Re-introduce the enum type abstraction
2019-09-11 12:48:28 +03:00
Alexei Sorokin
af63e9a7ad
[DATABASE] Set all primary keys as "not null" explicitly
2019-09-11 12:27:40 +03:00
Alexei Sorokin
95c7344557
[DATABASE] Various table schema related fixes
2019-09-11 12:07:54 +03:00
Alexei Sorokin
0c936e54ba
[DATABASE] Re-order tables to be created
...
Foreign keys need to be created after the respective tables are already in
place. This order makes sure this is the case.
2019-09-11 11:56:36 +03:00
Alexei Sorokin
62b90c29db
[DATABASE] Introduce a bool type in schema
...
PostgreSQL has a clear distinction between integers and booleans, so it makes
sense to draw a clear line.
2019-09-11 11:25:39 +03:00
Alexei Sorokin
6911b499d3
[DATABASE] Consistently use the "LIMIT $limit OFFSET $offset" syntax
...
The "LIMIT $offset, $limit" syntax is only supported by MySQL and MariaDB.
2019-09-11 10:12:49 +03:00
Alexei Sorokin
44f4c9374d
[DATABASE] Use time intervals in a SQL standard compliant way
2019-09-11 09:58:13 +03:00
Alexei Sorokin
11dabbe44d
[DATABASE] Only use single quotation marks for SQL strings
...
Double quotation marks are only used for identifiers in the SQL standard.
2019-09-11 09:46:30 +03:00
Alexei Sorokin
0a5a3845db
[DATABASE] Set NULL in DB_DataObject in a more reliable manner
...
Also stop assuming that FeedSub::sub_state (enum) and FeedSub::sub_end
(datetime) can possibly be set to an empty string.
2019-09-11 08:32:19 +03:00
Alexei Sorokin
5b797328f2
[DATABASE] Always quote identifiers
...
The code used to operate under the assumption that MariaDB doesn't support
quoting identifiers. Not only is that not exactly true, but MariaDB has
reserved keywords that cannot be used as table or column names unquoted.
2019-09-11 08:15:16 +03:00
Alexei Sorokin
b89f1ad7d8
[CORE] Another inboxnoticestream improvement
2019-09-10 22:25:45 +03:00
Alexei Sorokin
b0104d9992
[DAEMONS] Switch daemons to double-forking for daemonisation
2019-09-10 21:14:27 +03:00
Alexei Sorokin
9d8f4c774f
[DAEMONS] Properly disconnect daemons from the database
2019-09-10 20:25:28 +03:00
Diogo Cordeiro
8b7a22ecd9
Merge branch 'nightly' of biodantas/gnu-social into nightly
2019-09-10 17:11:00 +00:00
Miguel Dantas
a4e6db8d76
[OpportunisticQM] Revamped plugin to be able to use other poll based queuemanagers, no just the DB
2019-09-05 01:39:00 +02:00
Miguel Dantas
78506d5249
[StompQueue] Changed StompQueueManager to use polling rather than sockets
2019-09-05 01:39:00 +02:00
Miguel Dantas
6747b18b75
[PLUGINS] Added UnQueue, a new default plugin which does all actions immediately
2019-09-05 01:39:00 +02:00
Miguel Dantas
544f13c52a
[PLUGINS] Added DBQueue plugin
2019-09-05 01:38:59 +02:00
Miguel Dantas
4644f6e96b
[PLUGINS] Added StompQueue plugin, based on the implementation in lib/queue/stompqueuemanager. Updated to new STOMP library version. Dropped liberalstomp.php and stompqueuemanager.php
2019-09-05 01:38:40 +02:00
Miguel Dantas
a3b228399b
[PLUGINS] Added RedisQueue
2019-09-03 14:01:27 +01:00
Miguel Dantas
100a557c7c
[CORE][AUTOLOAD] Fix class OAuthRequest not found
...
Issue description as reported by aab:
2019-08-28 17:34:48 LOG_ERR: [khp.ignorelist.com:61055.f5f7f51c GET /api/statuses/show/178372.atom] ServerErrorAction: 500 Class 'OAuthRequest' not found
2019-08-28 17:39:50 LOG_ERR: [khp.ignorelist.com:65390.4483ff85 GET /api/statusnet/conversation/104672.rss] Handled serverError (500) but cannot output into desired format ('rss'): 'Class \'OAuthRequest\' not found'
2019-08-28 17:39:50 LOG_ERR: [khp.ignorelist.com:65390.4483ff85 GET /api/statusnet/conversation/104672.rss] ServerErrorAction: 500 Class 'OAuthRequest' not found
2019-08-28 17:40:49 LOG_ERR: [khp.ignorelist.com:65390.4c745f68 GET /api/statuses/show/18132.atom] Handled serverError (500) but cannot output into desired format ('atom'): 'Class \'OAuthRequest\' not found'
2019-08-28 17:40:49 LOG_ERR: [khp.ignorelist.com:65390.4c745f68 GET /api/statuses/show/18132.atom] ServerErrorAction: 500 Class 'OAuthRequest' not found
2019-08-28 17:47:41 LOG_ERR: [khp.ignorelist.com:65390.42ee9fd4 GET /api/statusnet/conversation/133023.as] Handled serverError (500) but cannot output into desired format ('as'): 'Class \'OAuthRequest\' not found'
2019-09-03 03:33:14 +01:00
Miguel Dantas
6acc75ccff
[FRAMEWORK][AUTOLOAD] Fix autoloads
2019-09-03 03:33:14 +01:00
Miguel Dantas
b41f9620fa
[LIB_REFACTOR] Fix requires
2019-09-03 03:33:13 +01:00
Miguel Dantas
58bde08425
[LIB_REFACTOR] Moving files into separate semantic categories
2019-09-03 03:33:13 +01:00
Miguel Dantas
7d6c6edab3
[RedisCache] Fix call to getPayload on int. The library is badly documented, but seems to return the TTL instead of the normal redis response
...
Issue description as reported by aab:
About one day after enabling redis plugin:
PHP Fatal error: Uncaught Error: Call to a member function getPayload() on int in /var/www/html/plugins/RedisCache/RedisCachePlugin.php:96
Stack trace:
0 /var/www/html/lib/event.php(89): RedisCachePlugin->onStartCacheSet('gnusocial:gatea...', Object(Queue_item), NULL, 86400, false)
1 /var/www/html/lib/cache.php(202): Event::handle('StartCacheSet', Array)
2 /var/www/html/classes/Memcached_DataObject.php(496): Cache->set('gnusocial:gatea...', Object(Queue_item))
3 /var/www/html/classes/Memcached_DataObject.php(416): Memcached_DataObject->encache()
4 /var/www/html/classes/Managed_DataObject.php(620): Memcached_DataObject->update(Object(Queue_item))
5 /var/www/html/classes/Queue_item.php(74): Managed_DataObject->update(Object(Queue_item))
6 /var/www/html/lib/dbqueuemanager.php(75): Queue_item::top(Array, Array)
7 /var/www/html/lib/iomaster.php(287): DBQueueManager->poll()
8 /var/www/html/lib/iomaster.php(161): IoMaster->poll()
9 /var/www/html/scripts/queuedaemon.php(112): IoMaster->service()
10 /var/www/html/lib/spawni in /var/www/html/plugins/RedisCache/RedisCachePlugin.php on line 96
2019-09-03 03:31:59 +01:00
Miguel Dantas
d209964718
[Memcached] Fix call to undefined method close
...
Issue description as reported by aab:
Memcached config in config.php:
addPlugin('Memcached', [ 'servers' => ['127.0.0.1', 11211],
'defaultExpiry' => 86400 // 24h
]);
Memcached and php-memchached installed.
The error appears when executing startdaemons.
Log:
PHP Fatal error: Uncaught Error: Call to undefined method Memcached::close() in /var/www/html/plugins/Memcached/MemcachedPlugin.php:202
Stack trace:
#0 /var/www/html/lib/event.php(89): MemcachedPlugin->onStartCacheReconnect(false)
#1 /var/www/html/lib/cache.php(273): Event::handle('StartCacheRecon...', Array)
#2 /var/www/html/lib/spawningdaemon.php(209): Cache->reconnect()
#3 /var/www/html/lib/spawningdaemon.php(188): SpawningDaemon->resetDb()
#4 /var/www/html/lib/spawningdaemon.php(118): SpawningDaemon->initAndRunChild(3)
#5 /var/www/html/lib/daemon.php(168): SpawningDaemon->run()
#6 /var/www/html/scripts/queuedaemon.php(186): Daemon->runOnce()
#7 {main}
thrown in /var/www/html/plugins/Memcached/MemcachedPlugin.php on line 202
2019-09-03 03:30:07 +01:00
Miguel Dantas
c03f659efb
[Embed] Fix use of undefined img_data
...
Got error 'PHP message: PHP Notice: Undefined variable: img_data in /var/www/html/plugins/Embed/EmbedPlugin.php on line 544'
2019-09-03 03:29:32 +01:00
tenma
2e66cbeb60
[CORE] Fix undefined offset warnings in different files
...
This problem was presentend in the following issue:
https://notabug.org/diogo/gnu-social/issues/60
AcceptHeader/util:
- Perform isset before using the required array values
2019-09-03 03:26:35 +01:00
tenma
19409cb999
[ActivityPub] Add support fox search-box profile/notice grabbing
...
NoticeSearchAction:
- Add new event before finding query matches
ActivityPubPlugin:
- Subscribe new searchNotice event
- Bump minor version number
Activitypub_explorer:
- Update lookup to make remote-grabbing optional
2019-09-03 03:26:35 +01:00
tenma
c06182c38f
[ActivityPub] Handle DELETE-Person activity
...
ActivityPubPlugin:
- update grab_notice_from_url to make online grab optional
- subscribe events of user and profile deletion
- bump minor version number
Activitypub_inbox_handler:
- separate handle_delete for delete-note and delete-person
Activitypub_postman:
- add delete-person logic
Activitypub_delete:
- update validation method to check for the "Person" type
- update to_array method to target the activity
2019-09-03 03:26:35 +01:00
Miguel Dantas
f79cd8cee3
[CORE] Fix small bug where Notice was sending a JSON representation to the queue, instead of sending itself
2019-09-03 03:26:35 +01:00
tenma
c130739de0
[AP] Fix subscription events
...
Both StartSubscribe and StartUnsubscribe had a wrong initial if-condition.
Furthermore, this events were calling Activitypub_profile::from_profile()
which is wrong because it creates the Activitypub_profile object when
the goal is only to check if it exists already.
2019-09-03 03:26:35 +01:00
tenma
1a4a1583d5
[AP] Subscribe RemoteFollow plugin events for allowing following with the remote-follow button
2019-09-03 03:26:35 +01:00
tenma
3633ca04eb
[OStatus] Port remote-follow to the RemoteFollow plugin
...
OStatusPlugin:
- Stop adding the remote-follow button
- Subscribe to required RemoteFollow plugin events
- Drop main/ostatussub route and update urls to the main/RemoteFollowSub route
- Bump plugin minor version number
actions/ostatusgroup,
actions/ostatuspeopletag:
- Update urls to the main/RemoteFollowSub route
lib/util:
- Port required functions from OStatusSubAction and adapt to be used with the new events
2019-09-03 03:26:35 +01:00
tenma
e61c0c45aa
[RemoteFollow] Initial work in the RemoteFollow plugin
...
lib/default.php
- Add RemoteFollow to the list of default plugins
RemoteFollowPlugin:
- Subscribe events to add the remote-follow button
RemoteFollowInitAction:
- Handles the remote-follow form and getting the redirection url for follow completion
RemoteFollowSubAction:
- Handles the remote profile pulling and actual following
2019-09-03 03:26:35 +01:00
Miguel Dantas
6d81848f25
[URLMAPPER] Fix small bug in URLMapper: a dynamic route might not exist even if a static one does
2019-09-03 03:26:35 +01:00
Miguel Dantas
10b3b343dd
[DirectMessage] Fixed use of incorrect type which prevented posting notices with only one word
2019-09-03 03:26:35 +01:00
tenma
f6fd025be2
[AP] Update version info
2019-09-03 03:26:35 +01:00
tenma
b5897687a6
[AP] Prevent postman to include the actor's followers for every sent activity
2019-09-03 03:26:35 +01:00
tenma
ebeae261de
[AP] Support Private Messaging
...
ActivityPubPlugin:
- Subscribe DirectMessage events
Activitypub_inbox_handler:
- Update handle_create_note to create private messages
Activitypub_postman:
- Add create_direct_note for sending private messages
Activitypub_create:
- Update create_to_array to support the 'directMessage' attribute
- Add isPrivateNote to verify private activities
Activitypub_notice:
- Update create_note to support the 'directMessage' attribute
- Remove isPrivateNote
lib/models:
- Add Activitypub_message, the model in charge of private notes
2019-09-03 03:26:35 +01:00
tenma
9733f3c02c
[AP] Fix Follow collections
...
Activitypub_profile:
- Fix subscription-counter getter functions, invalid profiles were being counted
apActorFollowingAction:
- Small rewrite of generate_following, didn't make sense to not use try-catch block
apActorFollowersAction:
- Small rewrite of generate_followers, didn't make sense to not use try-catch block
2019-09-03 03:26:35 +01:00
tenma
217c8a3933
[AP] Handle unlisted/followers-only notices
...
Note that this commit isn't intended to add support for sending such notes
in GS. Instead, we handle the reception, storage and direct reply to this
type of notices, in AP.
ActivityPubPlugin:
- Subscribe the event StartNoticeSave to hack answering non-public notes
Activitypub_create:
- Add 'directMessage' attribute to the Create activity, defaulting to false for now
- Update validation method: validate 'directMessage' and add debug
Activitypub_notice:
- Handle incoming unlisted/followers-only notes
- Add support for unlisted-replies
- Add method to verify private (direct) notices
inbox_handler:
- Add handler for CREATE Note
- Prepare logic for private-messaging
- Overall refactor: Class members were continuously being passed as function arguments without need
SharePlugin:
- Stop showing the announce button in non public posts
2019-09-03 03:26:35 +01:00
tenma
7188d81ad4
[AP] Properly target public notices
...
ActivityPubPlugin:
- Use TO as principal audience, CC as secondary
- Update note validation
2019-09-03 03:26:35 +01:00
Miguel Dantas
48cacd6d9d
[RedisCache] Added plugin description, fixes 'empty msgid' error
2019-09-03 03:26:35 +01:00
Diogo Cordeiro
1e378a514d
[OverwriteThemeBackground] This new plugin will let the admin set a custom background theme independent
2019-09-03 03:26:35 +01:00
Diogo Cordeiro
92ab5e18ee
[ExtendedProfile] Fix Admin menu option
2019-08-24 01:59:42 +01:00
Diogo Cordeiro
b42af10905
[MODULES] Allow to delete third party plugins
2019-08-24 01:59:42 +01:00
Diogo Cordeiro
afe8158cb7
[MODULES] Allow to upload third party plugins
...
Fixed some bugs
2019-08-24 01:59:42 +01:00
Diogo Cordeiro
a05bea0af5
[MODULES] List all available plugins and allow enabling them via UI
...
Yet another revision of the Admin Plugin Management tool
2019-08-24 01:59:41 +01:00
Diogo Cordeiro
e1514a151c
[DOCUMENTATION][DEVELOPERS][PLUGINS] Some updates to Plugins doc
2019-08-24 01:59:41 +01:00
Diogo Cordeiro
2a82cfdb2a
[TagCloud] Add Readme
2019-08-24 01:59:40 +01:00
Diogo Cordeiro
49da433879
[SearchSub][README] No longer is a default plugin since 8614cd77
2019-08-24 01:59:40 +01:00
Diogo Cordeiro
92388e1734
[SamplePlugin] Review and update with the latest GNU social best practices
2019-08-24 01:59:40 +01:00
Diogo Cordeiro
3860c25dc0
[ConversationTree] Format the plugin, add strict typing and fix docblocks
2019-08-24 01:59:39 +01:00
Diogo Cordeiro
25ee5ed1f9
[OfflineBackup] Fix plugin
2019-08-24 01:59:39 +01:00
Diogo Cordeiro
566214ac62
[PLUGINS] Removed OpenX as the service doesn't exist anymore
2019-08-24 01:59:39 +01:00
Diogo Cordeiro
1459f10803
[GroupFavorited] Fix plugin
2019-08-24 01:59:38 +01:00
Diogo Cordeiro
0795a39459
[ExtendedProfile] Hide 'Extra fields' from profile when no field was created by the sysadmin
2019-08-24 01:59:38 +01:00
Diogo Cordeiro
e5831d6807
[ExtendedProfile] Allow to delete custom profile field
2019-08-24 01:59:38 +01:00
Diogo Cordeiro
88bdb5114f
[Plugins] Incorporated GNUsocialExtendedProfile as part of ExtendedProfile
...
Also improved a lot of the plugin and made things in a way it would make sense
2019-08-24 01:59:37 +01:00
Diogo Cordeiro
90bd9088bb
[GNUsocialProfileExtensions] Fixed plugin
2019-08-24 01:59:37 +01:00
Diogo Cordeiro
01cf8ab82c
[PLUGINS] Removed GNUsocial{Photo, Photos, Video} as we don't need them anymore
2019-08-24 01:59:36 +01:00
Diogo Cordeiro
aee5506f00
[PLUGINS] Removed GeoURL as the service doesn't exist anymore
2019-08-24 01:59:36 +01:00
Diogo Cordeiro
b6183f2de1
[ForceGroup] Modernized plugin and improved documentation
2019-08-24 01:59:36 +01:00
Diogo Cordeiro
452e0fe553
[DEFAULT] Add 'DirectionDetector' as a default plugin
2019-08-24 01:59:35 +01:00
Diogo Cordeiro
2f341a3369
[ChooseTheme] Fixed plugin
2019-08-24 01:59:35 +01:00
Diogo Cordeiro
66e55d1a1f
[BlankAd] Fixed plugin
2019-08-24 01:59:34 +01:00
Diogo Cordeiro
63fac32bc0
[Awesomeness] Fixed plugin
2019-08-24 01:59:34 +01:00
Diogo Cordeiro
aaeaeba57c
[DEFAULT] Add 'AccountManager' as a default plugin
2019-08-24 01:59:34 +01:00
Diogo Cordeiro
d3c56897a3
[CORE] Core modules shouldn't show up in version action
2019-08-24 01:59:33 +01:00
Diogo Cordeiro
0c2c3ec862
[CORE] Plugin API now extends a new Module API
2019-08-24 01:59:33 +01:00
Diogo Cordeiro
b6e7b18c7b
[PLUGIN API] Bug fixes and improvements
2019-08-24 01:59:32 +01:00
Diogo Cordeiro
55d049b1e8
[CORE] Move plugin superclasses from /lib/ to /lib/modules/
2019-08-22 03:13:58 +01:00
Diogo Cordeiro
8c0601816f
[CORE] Move core plugins to a new modules directory
...
For reference (raised by rozzin in IRC):
* http://foldoc.org/module
* http://foldoc.org/library
* http://foldoc.org/plugin
As noted by XRevan86, modules are not necessarily non-essential.
As we will keep the modules directory in GS root [therefore, near to
plugins/], it is evidenced the difference between both.
This is a simple yet fundamental structural change. It doesn't change
functionality but makes clearer the way we understand GNU social's
internals.
2019-08-22 03:13:58 +01:00
Miguel Dantas
350cde08d8
[Embed] Added support for inline images
2019-08-22 03:13:58 +01:00
tenma
db5a29fd9a
[DirectMessage] Major plugin rework
...
This commit does the necessary rework to store private messages
as Notices and to support Federation. The plugin's README presents
some more detail about the changes and future work that is still
required to do.
2019-08-22 03:13:58 +01:00
tenma
0716605e94
[CORE][ROUTES] Update urlmapper to search dynamic routes before static ones when generating URLs.
...
This solves the problem of routes that differ only in having
or not $_GET params. The ones not having params (static) were
being matched first during URL generation.
The way this problem was solved was by separating the $reverse
array in both $reverse_statics and $reverse_dynamics and explicitly
traversing this last one first in the generation function. Note that
maintaining the $reverse array and unshifting dynamic routes to its
head ( and therefore to the front of the static ones ) doesn't work
since even among dynamic routes the order of arrival should be kept.
2019-08-22 03:13:58 +01:00
tenma
c802480d75
[CORE] Add new Notice scope for private messaging
...
Notice:
- Add MESSAGE_SCOPE scope
lib/*.stream:
- Filter out notices with MESSAGE_SCOPE scope
2019-08-21 16:54:47 +01:00
Miguel Dantas
2519431f02
[Embed] Added support for inline images
2019-08-21 16:54:46 +01:00
Miguel Dantas
b38e71e544
[Embed] Only resize thumbnail if it's bigger than the desired size
2019-08-21 16:54:46 +01:00
Diogo Cordeiro
c981afcf31
[DOCUMENTATION] Add release notes
...
Update INSTALL requirements
Update CHANGELOG
Update TODO
2019-08-21 16:54:09 +01:00
Diogo Cordeiro
eccb8a4faf
[ActivityPub] Move models from 'classes' to 'lib/models'
2019-08-21 16:46:39 +01:00
tenma
7fa5ddfc44
[ActivityPub] Fix WebFinger event subscription
...
ActivityPubPlugin:
- remove reference to the first argument of onEndWebFingerProfileLinks, no need
as it is an object
2019-08-21 16:46:39 +01:00
tenma
054f4e77f5
[ActivityPub] Fix handling of Delete Activity
...
inbox_handler:
- Call stronger validation method for Delete Activity objects
- Take into account mixed object in handle_delete
Activitypub_delete:
- Add validation method for Delete Activity objects
2019-08-21 16:46:39 +01:00
Diogo Cordeiro
1398d6cc21
[ActivityPub] This is the first release of the plugin
2019-08-21 16:46:38 +01:00
tenma
b902b019fb
[ActivityPub] Use queues for notice distribution
...
ActivityPubPlugin:
- Change event-based notice distribution to queues logic
ActivityPub/lib:
- Add queue handler class activitypubqueuehandler.php
Misc:
- Add documentation for the (Start/End)InitializeQueueManager events
2019-08-21 16:46:38 +01:00
tenma
5e589aba3c
[OStatus] Fix notice enqueue
...
OStatusPlugin:
- Enqueue in the last position, as it should be. No need to worry about
the OMB comment, this protocol no longer have queue handlers that could
cause a conflict.
2019-08-21 16:46:38 +01:00
tenma
c28cee88b7
[ActivityPub] Ensuring federation with other software
...
ActivityPubPlugin:
- Prevent sending a Delete for an Announce
Activitypub_announce:
- Update announce_to_array to add id, to and cc information to the retrieved object
Activitypub_follow:
- Add id to the arguments of follow_to_array, useful for Accept-Follow activities
Activitypub_notice:
- Fix notice validation, url isn't a MUST
Activitypub_inbox_handler:
- Make handle_follow use the received activity id for the later Accept-Follow
Activitypub_postman:
- Fix call to the updated announce_to_array
- Fix successive unnecessary calls to ActivityPubPlugin::actor_uri()
2019-08-21 16:46:37 +01:00
brunoccast
14a45dc546
[ActivityPub] Fix notice creation
...
Activitypub_notice:
- Perform url test, use id when missing.
2019-08-21 16:46:37 +01:00
brunoccast
883621ba34
[ActivityPub] Routes
...
ActivityPubPlugin:
- Update routes to properly use the updated URLMapper
2019-08-21 16:46:37 +01:00
brunoccast
067cc81ebb
[ActivityPub] Ensuring notice deletion
...
ActivityPubPlugin:
- Minor onDeleteOwnNotice rewrite
Activitypub_inbox_handler:
- Add deletion check to incoming notice
Activitypub_postman:
- Call the correct getUrl function
2019-08-21 16:46:37 +01:00
brunoccast
b19ee7b894
[ActivityPub] Ensuring Notice Favor/Disfavor
...
ActivityPubPlugin:
- Minor re-write of favor/disfavor event handlers
Activitypub_postman:
like/undo-like:
- fix proper getUrl() call
misc:
- make all activities accumulate errors (may be needed later) and log some information about it
2019-08-21 16:46:36 +01:00
brunoccast
1b356d3bf2
[ActivityPub] Ensuring notice distribution
...
ActivityPubPlugin:
- Fix of accepted activity verbs to include SHARES
- Add attention profiles to delivery when announcing
Activitypub_notice:
- New local function to retrieve original URL
- Removal of unnecessary 'Atom*' attributes
- Small fix to the ensuring of actor profile
Activitypub_profile:
- New local function to fetch AP profiles from a collection
Activitypub_postman:
- Fix url passed in the announce activity
2019-08-21 16:46:36 +01:00
brunoccast
94a4059b4a
[ActivityPub] Caching of Following/Followers interactions and collections
...
Follow interaction:
- Fixed mini-bug where the subscriber profile was being used as the subscribed
- Updated cache subscription-related values in both instances
- Tested and working with local GS instances
Unfollow interaction:
- Updated cache subscription-related values in both instances
- Tested and working with local GS instances
Followers/Following collections:
- Now returning ActivityPub profiles only
- Stored collections in cache
Misc:
- Fix bug concerning the retrieval of public/private-key after in-function generation
2019-08-21 16:46:36 +01:00
brunoccast
735a0023cc
[ActivityPub] Routes
...
ActivityPubPlugin:
- Update routes to properly use URLMapper
- Minor updates
2019-08-21 16:46:36 +01:00
Diogo Cordeiro
2ad4fa99ed
[CORE] Add ActivityPub plugin
...
This is not the same as the one in https://notabug.org/diogo/gnu-social-activitypub-plugin
Differences to the first "release"
-> Doesn't use guzzle nor has any composer dependencies
-> Supports HTTP Signatures
-> Has basic l10n/i18n
-> Some minor bug fixes
2019-08-21 16:46:35 +01:00
Miguel Dantas
c0950c5fc6
[PLUGINS] Dropped Memcache in favor of Memcached. The difference between these is that they use a similarly php library to interact with memcache, but memcached is more modern
2019-08-15 22:33:38 +01:00
Miguel Dantas
afbbbbd4f2
[Memcached] Merged useful features from Memcache
2019-08-15 22:33:37 +01:00
Miguel Dantas
32812c9482
[PLUGINS] Updated and reviewed the Memcached plugin
2019-08-15 22:33:37 +01:00
Miguel Dantas
c70e806d74
[RedisCache] Added README with configuration instructions
2019-08-15 22:33:36 +01:00
Miguel Dantas
05be2e7386
[RedisCache] Fix use of undefined variable
2019-08-14 15:32:36 +01:00
Miguel Dantas
e2e8885ce3
[PLUGINS] Removed direct call of EndCache events on all plugins, as it is now handled by the library
2019-08-14 15:32:35 +01:00
Miguel Dantas
b214d8b6ee
[CACHING] Imported Chimo's RedisCache plugin and fixed some small parts
2019-08-14 15:32:35 +01:00
Miguel Dantas
ba98bb9334
[CORE] Fixed small anti-pattern on cache code. Plugins had to throw EndCache events, when this should be done by the library
2019-08-14 15:32:35 +01:00
Miguel Dantas
630a578e1d
[COMPOSER] Added predis/predis and updated packages
2019-08-14 15:32:34 +01:00