Commit Graph

19304 Commits

Author SHA1 Message Date
Hugo Sales
6d31945401
[ATTACHMENTS] In sendFile, check that file exists or show a custom exception 2021-09-14 13:12:56 +01:00
Hugo Sales
38cf8f8efe
[ENTITY] Change foreign key definition to new format for cover and profile_color tables 2021-09-14 13:12:56 +01:00
Hugo Sales
cfe842b487
[DOCUMENTATION] Add database diagram to developer documentation 2021-09-14 13:12:56 +01:00
Diogo Peralta Cordeiro
06b236374d
[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-09-14 13:12:56 +01:00
Diogo Peralta Cordeiro
612c809469
[CSS][Left] Vertical scroll on left menu when it doesn't fit the screen 2021-09-14 13:12:55 +01:00
Diogo Peralta Cordeiro
7a2f5e352b
[CSS][Network] Fix horizontal menu on smaller screens 2021-09-14 13:12:55 +01:00
Diogo Peralta Cordeiro
837f644458
[UTIL][Formatting] Add twigRenderFile 2021-09-14 13:12:55 +01:00
Hugo Sales
e9a96f1c9b
[DOCUMENTATION] Add high level code walkthrough to developer docs 2021-09-14 13:12:55 +01:00
Hugo Sales
353595eb97
[Posting] Add missing default visibility option 2021-09-14 13:12:55 +01:00
Hugo Sales
5067bcd074
[ImageEncoder][FileQuota] Move quota enforcement to it's own plugin, so it can be easily shared and disabled 2021-09-14 13:12:55 +01:00
Diogo Peralta Cordeiro
5bd16a509e
[TEMPLATES] Fix identation 2021-09-14 13:12:55 +01:00
Diogo Peralta Cordeiro
8cb64ede7f
[AttachmentShowRelated] Move Attachment related to plugin 2021-09-14 13:12:55 +01:00
Diogo Peralta Cordeiro
29a215534d
[SECURITY] We can't really show a stream for this, was a nice concept, but not properly doable without requiring JS 2021-09-14 13:12:55 +01:00
Hugo Sales
d11615ded6
[Avatar][Embed] Change use of TemporaryFile::getPath to getRealPath 2021-09-14 13:12:55 +01:00
Hugo Sales
aad4bddedd
[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-09-14 13:12:54 +01:00
Hugo Sales
7509913fcf
[ENTITY] Add field size to attachments, used for quota calculations 2021-09-14 13:12:54 +01:00
Hugo Sales
29457ef50d
[UTIL] Add option for setting a file suffix on TemporaryFile constructor and add missing TemporaryFileException 2021-09-14 13:12:54 +01:00
Hugo Sales
a165e533bb
[CONFIG] Add attachments/max_{width,height} config option, which is used as maximum dimensions when validating attachments 2021-09-14 13:12:54 +01:00
Hugo Sales
8ad8546aab
[DEPENDENCIES] Add oroinc/doctrine-extensions, which provides cross database platform date functions 2021-09-14 13:12:54 +01:00
Diogo Peralta Cordeiro
a0b820fd76
[CSS] Refactor Right Panel style 2021-09-14 13:12:54 +01:00
Diogo Peralta Cordeiro
2d8d8ffb48
[TEMPLATES] Add dynamic blocks to right panel 2021-09-14 13:12:54 +01:00
Diogo Peralta Cordeiro
4bd081ad27
[CSS] Fix invisible checkboxes 2021-09-14 13:12:54 +01:00
Diogo Peralta Cordeiro
110c2572a4
[TEMPLATES] Minor refactoring, extending left was weird 2021-09-14 13:12:54 +01:00
Hugo Sales
e9b2b18093
[Avatar] Implement avatar deletion 2021-09-14 13:12:53 +01:00
Hugo Sales
2ec7059076
[AVATAR] Move avatar settings page to Avatar component 2021-09-14 13:12:53 +01:00
Hugo Sales
ced610d942
[Embed] Use Formatting utilities rather than substr and such 2021-09-14 13:12:53 +01:00
Diogo Peralta Cordeiro
9008bee558
[Embed] Add docblock to handle function to pass pre-commit hook 2021-09-14 13:12:53 +01:00
Diogo Peralta Cordeiro
88e5cec8fc
[ENTITY][GSActor] Fix getAvatarUrl method 2021-09-14 13:12:53 +01:00
Diogo Peralta Cordeiro
cbd383f92d
[RIGHT] Introduce component abstraction 2021-09-14 13:12:53 +01:00
Diogo Peralta Cordeiro
143b2460e9
[VIEWS] Minor proofreading of templates and css 2021-09-14 13:12:53 +01:00
Hugo Sales
aea8639d44
[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-09-14 13:12:53 +01:00
Hugo Sales
4f6f1941da
[UI] Fix 'hide_attachments is not defined' error 2021-09-14 13:12:53 +01:00
Hugo Sales
436528172c
[ATTACHMENTS] Add controller and templates for the attachment show page, which shows extra info about an attachment, such as related notes and tags 2021-09-14 13:12:53 +01:00
Hugo Sales
be91fb754d
[CORE] Typo in GSFile and slight Twig weirdness in base template 2021-09-14 13:12:52 +01:00
Hugo Sales
b1e514832b
[Embed][ENTITY] Fix embed route and use attachment_view rather than _show. Rename Entity::have to Entity::has, because grammar 2021-09-14 13:12:52 +01:00
Hugo Sales
30107de079
[Embed] Fix plugin. Only attempt to show an image, if we have one 2021-09-14 13:12:52 +01:00
Hugo Sales
2adb3c3521
[ATTACHMENTS] Add event 'AttachmentFileInfo' to allow a plugin to override the file displayed 2021-09-14 13:12:52 +01:00
Hugo Sales
708a910870
[UTIL] Fix remove affix utilities, so they only try to remove an affix if the string starts/ends with it 2021-09-14 13:12:52 +01:00
Hugo Sales
8988d89192
[CONFIG] Add attachment related parameters to default config 2021-09-14 13:12:52 +01:00
Hugo Sales
a7ef2babe6
[AUTOGENERATED] Update autogenerated code 2021-09-14 13:12:52 +01:00
Hugo Sales
ece3c11e1b
[DB] Fix error in config/services.yaml where the wrong namespace was used for the UpdateListener 2021-09-14 13:12:52 +01:00
Hugo Sales
fb220e82ed
[TOOLS] Use \DateTimeInterface rather than DateTimeInterface 2021-09-14 13:12:52 +01:00
Hugo Sales
bb1ba11fcf
[AUTOGENERATED] Run bin/generate_entity_fields for the Embed plugin 2021-09-14 13:12:51 +01:00
Hugo Sales
4cd152f640
[Embed] Review and port v2 code 2021-09-14 13:12:51 +01:00
Hugo Sales
7adc198a52
[ENTITY] Add meta method 'have*' to Entity base class, which checks if a field 'isset' 2021-09-14 13:12:51 +01:00
Hugo Sales
34059a8d3d
[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-09-14 13:12:51 +01:00
Hugo Sales
60a9085e56
[FORMATTING] Add utilities to remove affixes from strings 2021-09-14 13:12:51 +01:00
Hugo Sales
b647e31495
[DEPENDENCIES] Add 'embed/embed', 'nyholm/psr7' and 'symfony/dom-crawler' 2021-09-14 13:12:51 +01:00
Hugo Sales
9a7f1358c2
[ENTITY] Add utils to Attachment and AttachmentThumbnail to get the corresponding URL and html representation parameters 2021-09-14 13:12:51 +01:00
Hugo Sales
2a74dced22
[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-09-14 13:12:51 +01:00