Commit Graph

426 Commits

Author SHA1 Message Date
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
Hugo Sales a498134b13 [AUTOGENERATED] Update autogenerated code 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 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 c1963438bc [AUTOGENERATED] Update autogenerated code 2021-04-14 15:37:22 +00:00
rainydaysavings 3f98f8fecf [ROUTES] Fix use statement 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 a64a099d7d [UI] Controller and Route for FAQ page created as well as basic template structure 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 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 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 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 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
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 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
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 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 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 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 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 2f05f05dc9 [UI][CONTROLLER] Form help messages added, fixed checkbox trick hitbox 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 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 7cedbcd63f [CACHE] Fix usage of the redis 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 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 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 7a07b95240 [DEFAULTS][FIX] Fix defaults to use value from environment 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 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 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
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 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 0211771d5f [UI][ROUTES][CONTROLLER] Settings pages routes and styling done. 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 999b31b615 [UI][Mobile][FAQ] FAQ sub pages and routing added, small screen css work started. 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 a574971f0b [AUTOGENERATED] Update autogenerated code 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 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 652c3b5d62 [DEPENDENCY] Upgrade Symfony framework from 5.0 to 5.1 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 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 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 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 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 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 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 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 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 3b5789639b [TOOLS][DOCUMENTATION] Improvements to entity generation script 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 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 160b811669 [DATABASE][AUTOCODE] Update autocode to use \DateTimeInterface instead of DateTime 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 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 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 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 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 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 86b5bfe075 [V3] Big Bang
Beginning anew, this time with a modern framework: symfony
2021-04-14 15:36:35 +00:00