101 Commits

Author SHA1 Message Date
Hugo Sales
5b11c26e79 [AUTOGENERATED] Update autogenerated code 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
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
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
c06346ef31 [DB][FILE][AVATAR] Handle deleting files, change file and avatar tables 2021-04-14 15:37:22 +00:00
Hugo Sales
c1963438bc [AUTOGENERATED] Update autogenerated code 2021-04-14 15:37:22 +00:00
Hugo Sales
e620c20bb4 [UI][CONTROLLER] Work on tabbed notification settings panel 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
9dffd1c93e [DATABASE] Remove DATABASE::flush from Profile::setSelfTags 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
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
c91c385dec [SELFTAGS] Add Profile::{set,get}SelfTags 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
Hugo Sales
2eb61543d9 [AUTOGENERATED] Update all entity fields 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
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
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
0ef9223803 [LOGIN] Implement password checking and related systems 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
0e96ffe287 [UI][SESSION] Add login and logout pages 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
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
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
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
ce00acdb39 [TOOLS] Fixed all licence blocks, to use the same, foldable, format 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
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
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
d14ac1edf6 [DATABASE] Add missing table names 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
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
6c8da48efa [DOCUMENTATION] Document All The Things! 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
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