Commit Graph

441 Commits

Author SHA1 Message Date
Diogo Peralta Cordeiro 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
Hugo Sales 6bfea8a0df [NETWORK] Fix big brain bug 2021-04-14 19:54:38 +00:00
Hugo Sales ae29a9c00a [ENTITY] Remove extraneous File_thumbnail.php file 2021-04-14 16:12:26 +00:00
Hugo Sales 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
Hugo Sales d0fd0e6c6c [DB] Remove unique constraint from GSActor.nickname and fix register and related functionality 2021-04-14 15:37:24 +00:00
Hugo Sales 079d230959 [NICKNAME] Don't throw when normalizing reserved nicknames 2021-04-14 15:37:24 +00:00
Hugo Sales 637c25d5fe [WEB] Fix translations and small inconsistency when opening on web 2021-04-14 15:37:24 +00:00
Hugo Sales 051720a686 [TESTS] Add tests to all relevant methods under App\Util and fix errors that popup 2021-04-14 15:37:24 +00:00
Hugo Sales f3c2048c62 [NICKNAME] Add nickname min length config and check it in Nickname::normalize 2021-04-14 15:37:24 +00:00
Hugo Sales aa58c3520c Duplicate src/Util/Exception/NicknameTooLongException.php history in src/Util/Exception/NicknameTooShortException.php history. 2021-04-14 15:37:24 +00:00
Hugo Sales cafd9a39a0 [TESTS] Add tests of Common and fix small oddities that pop up 2021-04-14 15:37:24 +00:00
Hugo Sales 120011a2d0 [TESTS] Fix error when testing cold redis cache 2021-04-14 15:37:24 +00:00
Hugo Sales c8b2ce6694 [TESTS] Add tests for the bitmap utility and fix implementation 2021-04-14 15:37:24 +00:00
Hugo Sales 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
Hugo Sales 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
Hugo Sales f11f9040b1 [TESTS] Add App\Core\Cache test 2021-04-14 15:37:24 +00:00
Hugo Sales ffaf5da984 [TESTS] Fix unkept unit tests 2021-04-14 15:37:23 +00:00
Hugo Sales 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
Hugo Sales e008bf1863 [DB] Make Note.source reference NoteSource.code, the primary key 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 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 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
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 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 e2df8aec10 [Cover] Input restrictions, Code cleanup 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 4fd33bf37f [Cover] Added Cover Entity, updated form handler
Basically the same as the avatar
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
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
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 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
Hugo Sales bb4f5b88e7 [PLUGIN][Favourite] Move favourite table definition to inside the plugin, as it is now supported 2021-04-14 15:37:23 +00:00
Hugo Sales 23904f326d [SchemaDef] Finish association mapping implementation 2021-04-14 15:37:23 +00:00
Hugo Sales 9b42f525e8 [DB][NoteLocation] Add missing `multiplicity` to column 2021-04-14 15:37:23 +00:00
Hugo Sales 9d12dde7c1 [DB] Fix typo in table definitions and fix name of GSActorCircle table 2021-04-14 15:37:23 +00:00
Hugo Sales 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
Hugo Sales f8c47387c4 [DB] Change foreign key specification to new format 2021-04-14 15:37:23 +00:00
Hugo Sales b337d6b2eb [SCHEMADEF] Add preliminary support for foreign keys 2021-04-14 15:37:23 +00:00
Hugo Sales 2c9bd3575b [AUTOGENERATED] Update auto generated code in entities 2021-04-14 15:37:23 +00:00
Hugo Sales 256169a3c4 [GIT] Change my email to the new one in all files and bump copyright year 2021-04-14 15:37:23 +00:00
Hugo Sales 0d2cf6eaa6 [DB] Merge definition of SchemaDefDriver with SchemaDefPass for clarity 2021-04-14 15:37:23 +00:00
Hugo Sales 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
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 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 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 88ce4cbf80 [CONTROLLER] Fix use of undefined variable 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 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 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 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 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 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 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 40aa4fa60e [CONTROLLER][ROUTE] Favourites page initial query implementation and routing 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 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
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 928064c5ee [CONTROLLER] Replies and network queries implemented 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 54c54990a4 [Controller] Attempting to fix home timeline query 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 fefee324b4 [DB][MODULES][ActivityPub] Cleanup table definitions 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 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
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 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
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 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 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 fe50909549 [DB] Add 'dql' method to wrap 'createQuery' and replace 'Gsactor' with 'GSActor' 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 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 5b11c26e79 [AUTOGENERATED] Update autogenerated code 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
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