Commit Graph

66 Commits

Author SHA1 Message Date
Hugo Sales
b84315c95b
[TOOLS] Fix errors reported by PHPStan at level 4 2021-12-27 17:35:33 +00:00
Diogo Peralta Cordeiro
d891089945
[PLUGIN][StoreRemoteMedia] Let the user decide the max file size to download 2021-12-26 21:19:04 +00:00
Diogo Peralta Cordeiro
044649c745
[PLUGIN][VideoEncoder] Some videos don't have images (video stream), only audio, handle that 2021-12-03 03:32:44 +00:00
Diogo Peralta Cordeiro
582519e13e
[COMPONENT][Attachment] Do not show download links for non-local attachments 2021-12-03 03:32:43 +00:00
Diogo Peralta Cordeiro
b66873e289
[PLUGIN][StoreRemoteMedia] Do not save empty files 2021-12-03 01:16:57 +00:00
Diogo Peralta Cordeiro
70ed04a7db
[COMPONENT][Link] Fix some minor issues with empty headed links, typo in event handler's name, and refactor entity to inside component 2021-12-03 00:46:52 +00:00
Diogo Peralta Cordeiro
eeaad19754
[Attachment] Move Controller and Entities to a Component
There's no problem in having the templates in the core
2021-12-02 15:14:07 +00:00
Hugo Sales
9109c61af5
[TOOLS][CS-FIXER] Run new PHP CS Fixer config. Notably, adds strict_types 2021-10-27 04:19:28 +01:00
Diogo Peralta Cordeiro
a681acae67
[ENTITY][AttachmentThumbnail] Every image should have width and height attributes 2021-09-25 19:40:11 +01:00
Diogo Peralta Cordeiro
3268559f9a
[AttachmentThumbnail] Use other thumbnail when requested isn't available and there's no original file 2021-09-23 16:19:50 +01:00
Diogo Peralta Cordeiro
05f16a3084
[ENTITY][AttachmentThumbnail] Now thumbnails are always only available in three sizes: small, medium, big
Commit jointly produced with eli (Eliseu Amaro)

Breaking change: Entity changed to only store the tinyint referring to the size stored

With this, the logic was simplified and now it's not possible to make an
instance produce unnecessary thumbs. The aspect ratio is preserved and
thus the thumbs will always look nice. New configuration was added to
maintain flexibility.
2021-09-22 15:13:46 +01:00
Hugo Sales
4e30e5aad9
[TOOLS] Fix all issues found by PHPStan level 2 2021-09-14 13:13:44 +01:00
Diogo Peralta Cordeiro
177801c81b
[Embed][StoreRemoteMedia] Re-add {white,black}list check config 2021-09-14 13:13:31 +01:00
Diogo Peralta Cordeiro
9e4cac0123
[ENTITY] Refactor RemoteURL entities to Link
RemoteURL was being an awfully confusing term.
2021-09-14 13:13:26 +01:00
Diogo Peralta Cordeiro
bac18715c5
[StoreRemoteMedia] Implement the first version of it in v3 2021-09-14 13:13:25 +01:00
Hugo Sales
7dab063a72
[PLUGINS] Remove scripts. These will need to be implemented with Commands 2021-09-14 13:12:48 +01:00
Hugo Sales
aeabf64051
[PLUGIN] Change base class from Module to Plugin for all plugins 2021-09-14 13:12:23 +01:00
Diogo Peralta Cordeiro
ccf3aa990a
[MODULES] Introduce the concept of abstract modules to V3
Introduce placeholder for abstract upload and thumb modules
Temporarily supress some bugs
2021-09-14 13:11:45 +01:00
Hugo Sales
3b901745d5
[Embed][StoreRemoteMedia][Media] Copy and cleanup plugins from v2 2021-09-14 13:10:54 +01:00
Hugo Sales
11154a0d8c
[V3] Big Crunch
And so, just as it begins, so too must it end
One should not dwell and stall, for more is to come
2021-09-14 13:01:23 +01:00
Diogo Peralta Cordeiro
7d8988d50c [VersionBump] 2.0.0beta0
Updated composer and translations

composer install --no-dev
composer dump-autoload --optimize
git add vendor/ --force
make updatepo
2021-07-18 12:51:07 +01:00
Diogo Peralta Cordeiro
fbeadc1d49 [StoreRemoteMedia][SCRIPTS] Fix typo in query
This was introduced in 11ebb98919f56f7dcf888adfbebf9e8826f995b4#diff-96141878409d7418ea5a9eefbde509b43482c01R70
The arg number should have been one, as there's only one...
2021-07-16 15:46:25 +01:00
Diogo Peralta Cordeiro
b4b71f7626 [StoreRemoteMedia] Fix failing to show remote thumbnails on first load
imgPath onCreateFileImageThumbnailSource would throw FileNotFoundException
2021-04-13 14:58:55 +01:00
Diogo Peralta Cordeiro
5b23781e68 [StoreRemoteMedia] Gracefully recover from poorly encoded images 2021-04-13 14:54:56 +01:00
Diogo Peralta Cordeiro
edc9fd203d [StoreRemoteMedia] Increase type strictness 2021-04-13 14:54:56 +01:00
Diogo Peralta Cordeiro
8570ad2094 [StoreRemoteMedia][SCRIPTS] Move removeRemoteMedia deleteRemoteMedia 2021-02-21 16:03:47 +00:00
Diogo Peralta Cordeiro
bc3eb7bccc [MEDIA] Allow thumbnail only entries 2021-02-21 16:03:47 +00:00
Diogo Peralta Cordeiro
800c0daafe [StoreRemoteMedia][SCRIPTS] Update removeRemoteMedia 2021-02-21 16:03:47 +00:00
Diogo Peralta Cordeiro
d47bb3736e [Media] Document recently added settings and add some more
Fix some buggy ones, especially Embed crop
2021-02-21 16:03:46 +00:00
Diogo Peralta Cordeiro
ec1719e61d [StoreRemoteMedia][Embed] Bump plugins version 2021-02-21 16:03:46 +00:00
Diogo Peralta Cordeiro
ef0f65720e [StoreRemoteMedia] Remote images are now stored exactly on the necessary size for the thumb 2021-02-21 16:03:46 +00:00
Diogo Peralta Cordeiro
22b5dd8567 [Media] Fix several issues
[StoreRemoteMedia] Upgrade plugin to use the new Media system

API Changes:
- Added getters to File to better formalize the ideas of the commit "[Media] Fix issues with database file storage"

UI Changes:
- Now presented thumbnails are actual thumbnails (bug fix)
- Attachment actions have a slightly more extended behaviour

Many other minor bug fixes...
2021-02-21 16:03:46 +00:00
Diogo Peralta Cordeiro
6028175bfc [Media] Fix issues with database file storage
Fixed file quota as well.

There can be more than one file for the same filehash IF the url are different.

Possible states:
  - A file with no url and with filename is a local file.
  - A file with an url but no filename is a remote file that wasn't fetched,
    not even the thumbnail.
  - A file with an url and filename is a fetched remote file (maybe just a
    thumbnail of it).
  - A file with no filename nor url is a redirect.

Routes:
  Given these states, updated routes so that an attachment can only be
  retrieved by id and a file by filehash.

Major API changes:
  File::getByHash now returns a yield of files

Major UI changes:
  - Now remote non stored files are presented.
  - /view became preferred
  - Redirects to remote originals are preferred.

Many other minor bug fixes...
2021-02-21 16:03:46 +00:00
Alexei Sorokin
11ebb98919 [DATABASE] Fix use of ORDER BY with DISTINCT
statuses/retweets_of_me has performance fixed, so it is also stripped of its
"bad query" status.
2020-08-27 11:15:39 +03:00
Diogo Cordeiro
a9c365a5eb [VersionBump] 2.0.0alpha0
Ran composer update and locale updater
2020-08-04 05:31:44 +01:00
Diogo Cordeiro
b730582336 [CORE] Add GNUSOCIAL_ENGINE_REPO_URL and increase usage of GNUSOCIAL_ENGINE_URL 2019-11-21 00:21:22 +00:00
Alexei Sorokin
ad91ef66bd [SCRIPTS] Set PUBLICDIR in plugin scripts as well 2019-09-18 17:15:00 +03:00
Diogo Cordeiro
aee5506f00 [PLUGINS] Removed GeoURL as the service doesn't exist anymore 2019-08-24 01:59:36 +01:00
Diogo Cordeiro
0c2c3ec862 [CORE] Plugin API now extends a new Module API 2019-08-24 01:59:33 +01:00
Diogo Cordeiro
8c0601816f [CORE] Move core plugins to a new modules directory
For reference (raised by rozzin in IRC):

* http://foldoc.org/module
* http://foldoc.org/library
* http://foldoc.org/plugin

As noted by XRevan86, modules are not necessarily non-essential.
As we will keep the modules directory in GS root [therefore, near to
plugins/], it is evidenced the difference between both.

This is a simple yet fundamental structural change. It doesn't change
functionality but makes clearer the way we understand GNU social's
internals.
2019-08-22 03:13:58 +01:00
Miguel Dantas
b25632ebc4 [PLUGINS] Fixed oEmbed dependents to use Embed 2019-08-03 17:49:06 +01:00
Miguel Dantas
ed7a88ce66 [StoreRemoteMedia] Added documentation for feature which limits the maximum filesize which is kept locally 2019-08-03 17:47:22 +01:00
Miguel Dantas
7070a14480 [CORE][StoreRemoteMedia] Fixed bug where sometimes images were written outside the site root 2019-08-03 17:31:43 +01:00
Miguel Dantas
f746866b65 [StoreRemoteMedia] StoreRemoteMedia now uses the new filename format, which allows it to display correctly in the UI. Formatting fixes 2019-08-03 17:31:42 +01:00
Miguel Dantas
da82048d77 [MEDIA] Fix trying to display file wich is not available locally 2019-08-03 17:31:41 +01:00
Diogo Cordeiro
5f4e3fe0eb [TRANSLATION] Update POTs and normalize files 2019-06-08 18:41:10 +01:00
Diogo Cordeiro
46f98b3142 [VersionBump] 1.19.0, fairly late
The core plugins whose version was attached to GS's were reseted to 2.0.0.

2.0.0 was chosen as reset version for plugins because it is higher than
  the one that was set by inheriting GS version. Furthermore, it's a
  major change from prior plugin versioning system thus it also makes
  semantic sense.

Justification for version bump:

== GS ==
9a4ab31f26 1.19.0
c13b935201 1.18.3
c13b935201 1.18.2
18fc39d2cf 1.18.1
c083a8bcc2 1.18.0
e8783d46d0 1.17.1
d9a42550ff 1.17.0
1536d3ef29 1.16.0
c03ed457a6 1.15.0
d2e6519bad 1.14.2
fe411e8138 1.14.1
b17e0b4169 1.14.0
daa5f87fd4 1.13.0
d75b5d2f4a 1.11.7
f6dbf66983 1.11.6
6cf674f8f8 1.11.5
7845a09b34 1.11.4
e4d432295d 1.11.3
339204f1ee 1.11.2
a4e679a118 1.11.1
7967db6ff5 1.11.0
bc030da320 1.10.1
9cc7df51d6 1.10.0
bf7f17474d 1.9.2
8a07edec5f 1.9.1
0042971d74 1.9.0
6b5450b7e6 1.8.0
5dcc98d1c6 1.7.0
e6667db0cd 1.6.0
3290227b50 1.5.0
a59c439b46 1.4.0
496ab8c920 1.3.10
986030060b 1.3.9
1d529c021a 1.3.8
f89c052cf8 1.3.7
38f2ecefac 1.3.6
e473937cb9 1.3.5
9a39ebe66f 1.3.4
ddc3cecfc0 1.3.3
2b43d484eb 1.3.2
e8e487187e 1.3.1

== Plugins ==
XMPP plugin
e0887220b0 bump patch
e186ad57d0 bump patch

OStatus
e186ad57d0 bump patch

Nodeinfo
ceae66a30f bump minor
586fb5a517 bump major
195296846e bump minor
2019-06-07 15:02:08 +01:00
Diogo Cordeiro
fc4aa470b2 StoreRemoteMedia - removeRemoteMedia script - Add missing newline in bad limit error 2019-04-23 22:11:29 +01:00
Diogo Cordeiro
2d20656e22 [StoreRemoteMedia] script removeRemoteMedia.php was trying to remove already removed files
Sometimes different posts are associated with the same file, that case wasn't considered
Thanks to XRevan86 for spotting this issue.
2019-04-18 01:03:09 +01:00
Diogo Cordeiro
98ebe1f63b [StoreRemoteMedia] script removeRemoteMedia.php was deleting every file posted without being via web interface
Added two more options: delete image-only attachments; delete previews (like oembed thumbs)
Some further minor improvements.
Thanks to colegota for spotting this issue.
2019-04-17 02:05:04 +01:00