Commit Graph

793 Commits

Author SHA1 Message Date
Hugo Sales 8f5b404941
[CACHE] Switch to 'empty' rather than 'is_null' is Cache::getHashMapKey, as it may return null or false 2021-11-29 22:42:49 +00:00
Hugo Sales f986f59424
[ENTITY][ActorTag] Add 'canonical' field to actor_tag 2021-11-29 22:42:49 +00:00
Diogo Peralta Cordeiro 56526c9ba6
[ActivityPub][Inbox] Restore Create Note Functionality
Minor bug fixes
2021-11-29 22:42:46 +00:00
Eliseu Amaro 7145dba8af
[PLUGINS][Oomox] getEntity added.
[CORE][Cache] exists added.
2021-11-27 15:14:17 +00:00
Diogo Peralta Cordeiro 7b9d388a44
[NOTIFICATION] Implement Target Collector 2021-11-27 15:14:15 +00:00
Diogo Peralta Cordeiro 51994406da
[CORE][ENTITY] Properly port ProfileTag, ProfileTagSubscription and ProfileList as ActorTag, ActorTagSubscription and ActorCircle 2021-11-27 04:17:18 +00:00
Hugo Sales 11d2cfb9ed
[UI][FEEDS][ENTITY][Feed] Add way to customize the feeds that are displayed in the left panel. The user can add, delete, reoder and rename them 2021-11-26 23:35:10 +00:00
Hugo Sales cdc8886bb8
[CORE][DB] Rename parameters 'orderBy' to 'order_by' 2021-11-26 23:34:37 +00:00
Hugo Sales 42f40f9ebe
[CORE][CONTROLLER][Network] Refactor term 'network' into 'feeds' 2021-11-26 23:34:37 +00:00
Diogo Peralta Cordeiro 0ab8febab3
[CORE][DB] Document magic methods 2021-11-26 15:11:51 +00:00
Eliseu Amaro 180ae15647
[PLUGINS][Oomox] User theme CSS file is served. Settings page needs polish, and option to revert changes. 2021-11-26 14:45:28 +00:00
Eliseu Amaro 7fa2418e54
[PLUGINS][Oomox] Theme colours WIP. 2021-11-26 14:45:28 +00:00
Hugo Sales 6cd7be6abc
[UI][CONTROLLER][ENTITY][DOCS] Refactor term 'timeline' into 'feed' 2021-11-26 13:05:23 +00:00
Hugo Sales 283820a4a5
[UI][ENTITY][Language] Use list rather than hashmap so actor language ordering is preserved 2021-11-26 12:30:21 +00:00
Hugo Sales 04e6b2fb53
[ENTITY][Language] Properly handle context actor language 2021-11-26 12:29:27 +00:00
Hugo Sales edf1b30e89
[TOOLS][DOCS] Add missing doc blocks 2021-11-25 23:16:04 +00:00
Hugo Sales b1262919da
[TOOLS] Fix (most) issues found by PHPStan 2021-11-25 23:08:30 +00:00
Hugo Sales 98b719dca3
[COMPONENTS][Tag] Split tag into words and stem each 2021-11-25 20:37:53 +00:00
Hugo Sales 2d057024b9
[TAGS][ENTITY][Note] Properly store the note language, pass it along when rendering content. Add mechanism for stemming tags, with fallback to simply slug-ifying them 2021-11-25 20:37:53 +00:00
Hugo Sales f837df5753
[CACHE] Add way of calculating hash map if key is not found 2021-11-25 20:37:53 +00:00
Hugo Sales c1779dc12d
[UI] Don't display short language form in user panel language selection 2021-11-25 20:37:53 +00:00
Hugo Sales 0194b6b14c
[TESTS] Fix tests by adding missing is_local columns and by login in the admin user in the admin panel test 2021-11-25 20:37:52 +00:00
Hugo Sales d9544c6edb
[CORE][SECURITY] Move to the new authentication format, for Symfony 5.3 2021-11-25 20:37:45 +00:00
Diogo Peralta Cordeiro 05758c999f
[ENTITY][Actor] fix typo in findRelativeActors query 2021-11-25 02:07:12 +00:00
Eliseu Amaro d8147cbd2d
[PLUGINS][AttachmentShowRelated] Fixed note template error. Fixed if statement.
[CORE][Controller] Commented CSP out.
2021-11-24 12:46:32 +00:00
Eliseu Amaro 8edaabbabf
[TWIG][Settings] WIP Refactoring of user panel. Now using macros to diminish repeated code.
[CONTROLLER][UserPanel] Replaced form names. More readable.
2021-11-24 12:46:31 +00:00
Hugo Sales 30f4131f5d
[TESTS] Add missing 'is_local' to actors in data fixtures 2021-11-24 12:46:31 +00:00
Hugo Sales 206856e1ba
[FORM][FormFields] Add way of specifying attributes for password fields (namely form autocomplete=new-password) 2021-11-24 12:46:31 +00:00
Hugo Sales 3a5e52ee0d
[CORE][SECURITY] Move to the new authentication format, for Symfony 5.3
Keep using (deprecated) Guard
2021-11-24 12:46:26 +00:00
Hugo Sales b4ce77320e
[TESTS] Fix remaining tests, back to 100% passed. Some minor semantic changes 2021-11-20 21:33:25 +00:00
Hugo Sales c68d7ae406
[CONTROLLER][UserPanel] Make function names camelCase 2021-11-20 21:33:25 +00:00
Hugo Sales 7e4a971fac
[ENTITY][LocalUser][CACHE] Remove bad keys from getByNickname cache key 2021-11-20 21:33:25 +00:00
Hugo Sales 0e104a9701
[UTIL][HTML][TESTS] Fix test and implementation and expand HTML generation utilities 2021-11-20 21:33:25 +00:00
Hugo Sales fe755f7c42
[UTIL][FormFields] Accomodate use of FormFields::repeated_password without a 'required' option 2021-11-20 21:33:23 +00:00
Eliseu Amaro 0aa43783e8
[PLUGIN][Repeat] Repeat now repeats attachments as it should.
[COMPONENTS][Posting] Now accepts attachments already processed.
[ENTITY][Note] Added getAttachmentsWithTitle().
2021-11-17 17:14:15 +00:00
Eliseu Amaro 8077bdb0b5
[CORE][Controller] CSP default-src changed to 'self' to allow internal redirects. 2021-11-17 01:29:36 +00:00
Eliseu Amaro 1d31bd651e
[CORE][Controller] Added Content-Security-Policy response header. 2021-11-17 00:49:23 +00:00
Diogo Peralta Cordeiro f07dce4604
[UTIL][Form] Fix bug with repeated_password 2021-11-16 23:27:29 +00:00
Diogo Peralta Cordeiro 89d36a68e5
[ENTITY][Actor] Add is_local, it's common to depend, and this makes it much faster, with a low space cost 2021-11-16 23:26:20 +00:00
Hugo Sales b8b19abed2
[ENTITY][AttachmentThumbnail] Do not attempt to check if a file exists if the path is null 2021-11-15 19:25:52 +00:00
Hugo Sales 5cafc80d01
[UTIL][FormFields] Refactor duplicated language choice form entry logic 2021-11-15 19:25:52 +00:00
Hugo Sales e6c0db9ee1
[CORE][Cache] Allow retrieving multiple keys from a hashmap 2021-11-15 19:25:52 +00:00
Hugo Sales 587d701d11
[CONTROLLER][Network] Temporarily remove replies from streams, following planned changes to the Reply plugin 2021-11-15 19:25:52 +00:00
Hugo Sales 774eb49af4
[UI][CONTROLLER][UserPanel][ENTITY][ActorLanguage][Language][Actor] Add interface to allow user to select thier preferred languages and to order them. Rename ActorLanguage::order to ordering 2021-11-15 19:25:52 +00:00
Hugo Sales d5e6fd603d
[CONTROLLER][UserPanel] Fix 'could not convert IntergetType to string' error 2021-11-15 19:25:51 +00:00
Hugo Sales 1abd28c949
[UI][TWIG][CONTROLLER][UserPanell] Add way to expand details with a GET parameter. Implement it in UserPanel 2021-11-15 19:25:51 +00:00
Hugo Sales c509692102
[ENTITY][AttachmentThumbnail] Uncache when deleting, cleanup code and ensure the biggest thumbnail is used when the original is not avaliable 2021-11-15 19:25:51 +00:00
Hugo Sales a3074662b8
[TESTS] Remove 'reply_to' in note creation in data fixtures 2021-11-15 19:25:51 +00:00
Hugo Sales eab6de3609
[TESTS][Security] Fix SecurityTest. Remove nickname normalization on register (a plugin can handle that). Move from filter_var(FILTER_VALIDATE_EMAIL) as it does not support dotless domains 2021-11-15 19:25:50 +00:00
Hugo Sales bf5ffe7d3d
[CACHE][TEST] Fix errors in cache implementation found by tests 2021-11-15 19:25:44 +00:00
Hugo Sales 98352cfece
[TESTS] Properly provide both createClient and bootKernel in test base class 2021-11-11 12:39:36 +00:00
Hugo Sales 2239845a00
[CONTROLLER][Security] Remove nickname normalization when trying to login 2021-11-11 12:39:36 +00:00
Hugo Sales a1c78696f7
[CORE][Actor][Posting] Fixup Actor::getPreferredLanguageChoices following changes in how the data is cached 2021-11-11 12:39:36 +00:00
Hugo Sales f39f800a8e
[TESTS] Add now-required content-type to notes created in data fixtures 2021-11-11 12:39:35 +00:00
Hugo Sales f667b558f7
[TESTS] Fix SecurityTest
This test was broken by changes in the routing and in the templates.
However, this revealead a potential open redirect and duplicated code
in the Reply and Favourite plugins
2021-11-11 12:39:28 +00:00
Hugo Sales dea9aa4dcf
[CORE][Router] Remove duplicate service for URL generation, as that is actually the same object 2021-11-11 12:38:09 +00:00
Eliseu Amaro d0f9fde7c2
[PLUGIN][Reply] WIP. Note complementary info now shows who has replied on the original note! 2021-11-10 15:44:28 +00:00
Eliseu Amaro f2f1bdc145
[PLUGIN][Reply] Separated replies from Note table.
[PLUGIN][Repeat] Deleted unnecessary card note template, info now to
appended at the end of note.
[PLUGIN][TreeNotes] WIP to accomodate reply plugin changes.
[TWIG][Runtime] Removed getAdditionalTemplateVars event.
2021-11-10 13:29:53 +00:00
Hugo Sales 7d8819a3da
[DB][CONTROLLER][Network][ENTITY][Note] Fix Note::getAllNotes 2021-11-09 23:38:37 +00:00
Hugo Sales f0c532340e
[DB] Fix uses of `DB::sql`, to remove the deprecated second `entities` parameter 2021-11-08 20:35:38 +00:00
Hugo Sales 767b2035e7
[ENTITY][ActorLanguage] Remove duplicate specification of 'not null' in table schema 2021-11-08 20:32:10 +00:00
Hugo Sales 1d84f1629e
[CORE][DB] Make DB::sql not error when selecting from tables with columns of the same name and remove the second enitites paramter, calculating it internally instead 2021-11-08 20:32:10 +00:00
Diogo Peralta Cordeiro f98afd15ce
[ENTITY] Refactor Follow as Subscription 2021-11-08 16:14:23 +00:00
Hugo Sales 68c6dd1ba9
[CORE][Cache] Use hashmaps to store language related items 2021-11-08 16:08:04 +00:00
Hugo Sales 2eb31952bc
[ENTITY][Language] Use varchar as char leads to a padded string, which isn't helpful 2021-11-08 16:08:03 +00:00
Hugo Sales 2cf3a0b4e6
[COMPONENT][Posting] Display short language signifier rather than the full name for the first preffered language 2021-11-08 16:08:03 +00:00
Hugo Sales 705bf815ab
[CACHE] Add partial implmentation for caching hashmaps (non-list arrays, i.e. array<string,string>). No non-redis-fallback yet 2021-11-08 16:08:03 +00:00
Hugo Sales cd470cbf93
[CORE] Fix loading of settings from modules 2021-11-08 16:08:03 +00:00
Hugo Sales 019ad794d1
[Posting] Add dropdown with language choice, with preferred choice according to user choice and context (group, etc) 2021-11-08 16:08:02 +00:00
Hugo Sales 9444c34071
[ENTITY][Actor][ActorLanguage][Language] Remove Actor::preferred_lang_id. Add ActorLanguage::order. Add Language::{short_display,long_display}. Instead of an actor having a single preffered language, the entries in ActorLanguage should be used, sorted by ActorLanguage::order 2021-11-08 16:08:02 +00:00
Hugo Sales 2bd05fbd47
[TOOLS][COMMAND] Add 'app:populate_initial_values' command, which inserts values into the language table if it does not yet contain values. Add database-force-nuke to Makefile, which does all the steps necessary to reset the database 2021-11-08 16:08:02 +00:00
Hugo Sales 1960f6944f
[CORE][DB] Fix error in regex that prevented selecting collumns that are named the same way a column is 2021-11-02 11:14:59 +00:00
Hugo Sales 839fa070c7
[CORE][Posting] Default Posting language to site language, if the user hasn't selected one 2021-11-02 11:14:59 +00:00
Eliseu Amaro cf09b48e92
[PLUGINS][Repeat] Added note_repeat entity, fixed visual discrepancies, and completed the expected functionality.
[ENTITY][Note] Removed repeat_off from table. It is now part of the Repeat plugin.
2021-11-01 21:19:56 +00:00
Diogo Peralta Cordeiro 712d1739e4
[UTIL][Formatting] Make local mentions great again 2021-11-01 12:16:29 +00:00
Eliseu Amaro 91dd6e1428
[Controller][Security] Fullname is not setup automatically upon registering anymore.
[ENTITY][Actor] Changes to accomodate fullname from potentially being null.
[ENTITY][Note] Changes to accomodate fullname from potentially being null.
2021-10-29 22:05:10 +01:00
Eliseu Amaro 9a23e03330
[PLUGINS][Repeat] Repeat template override WIP. 2021-10-29 17:26:20 +01:00
Hugo Sales 44454ac28a
[UTIL][TemporaryFile] Ensure `resource` is neither `false` nor `null` when attempting to cleanup, otherwise `getRealPath` returns `false` and we get sad 2021-10-28 17:36:02 +01:00
Hugo Sales 458c09485a
[CORE][ENTITY] Move preferred language setting from [LocalUser] to [Actor], make [Language] `language` unique and make [Note] `content_type` not null 2021-10-28 17:34:01 +01:00
Hugo Sales e6c5312025
[CORE][GSFile] Add `check_is_supported_mimetype` option to `GSFile::storeFileAsAttachment` 2021-10-28 17:29:57 +01:00
Hugo Sales c352e40518
[CORE][Controller] Allow plugins to override the Twig templates 2021-10-28 14:29:34 +01:00
Hugo Sales 18aeeb3850
[ENTITY] Add a [Language] table, which has a char 64 field that maps to an int. This is then used in [Note], [LocalUser] and [ActorLanguage] 2021-10-28 11:26:34 +01:00
Eliseu Amaro e54e55dfbf
[EXCEPTION][RedirectException] You are now able to redirect to a specific url. 2021-10-27 20:44:50 +01:00
Eliseu Amaro 3e2fefa8af
[TWIG][Cards] Fullname is now displayed as the note author, nickname as an identification.
[CONTROLLER][Security] Fullname is set on resgistration to enable it to be shown by default in notes.
[CONTROLLER][UserPanel] Fullname extra step added.
[CSS] Fullname and nickname representation work.
2021-10-27 20:44:50 +01:00
Diogo Peralta Cordeiro 3cdaf6671a
[CORE][HTTPClient] Add some shortcut functions inspired by pre-v3 2021-10-27 04:22:18 +01:00
Diogo Peralta Cordeiro 3227e1f919
[CORE][Log] Document magic methods 2021-10-27 04:22:18 +01:00
Diogo Peralta Cordeiro bccafd0d7b
[CORE][GSFile] Respect mimetype whitelist and extensions blacklist before saving files 2021-10-27 04:19:33 +01:00
Eliseu Amaro 8038fdbce9
[UTIL][Common] Added Common::getUploadLimit().
[COMPONENT][Posting] Update Posting to warn the user of submtting attachments too large.
2021-10-27 04:19:32 +01:00
Eliseu Amaro 656c2c7812
[SECURITY][Authenticator] fix wrong route id on after login redirection 2021-10-27 04:19:32 +01:00
Hugo Sales 299e893ca9
[TOOLS][PHPStan][DocCheck] Fix errors found by PHPStan and Doc Check 2021-10-27 04:19:31 +01:00
Hugo Sales dff5647b97
[DB][Note] Add langauge field to notes 2021-10-27 04:19:31 +01:00
Hugo Sales 8a10fec31d
[CONTROLLER][UserPanel] Make all fields in settings not required 2021-10-27 04:19:30 +01:00
Hugo Sales 2694d83ae4
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types 2021-10-27 04:19:30 +01:00
Diogo Peralta Cordeiro 028ea79fff
[CORE][Router] Properly act on Accept headers 2021-10-27 04:19:30 +01:00
Eliseu Amaro 99fd2f725b
[Core][Util] Hotfix: In App\Core\DB\DB persistWithSameId, casting the id to an int. In App\Util\HTML html, tag is now evaluated beforehand, making sure it's a string. 2021-10-27 04:19:30 +01:00
Diogo Peralta Cordeiro 8fdc52636f
[ActivityPub] Port RSA 2021-10-27 04:19:29 +01:00
Diogo Peralta Cordeiro 8544fe157b
[FreeNetwork] First steps porting webfinger/lrdd to v3, GET webfinger requests already have a basic result 2021-10-27 04:19:29 +01:00
Diogo Peralta Cordeiro 44cf1fa24c
[UTIL][Nickname] Fix some parameters issues found with strict types 2021-10-27 04:19:29 +01:00
Hugo Sales b524c5bc90
[TOOLS][PHPStan] Add missing toString on the call to DB::filterName, as it seems something changed in some update 2021-10-27 04:19:28 +01:00
Hugo Sales b65ee4c21d
[TOOLS][CS-FIXER] Fix incorrect transformation 2021-10-27 04:19:28 +01:00