Commit Graph

5254 Commits

Author SHA1 Message Date
Angelo D. Moura 793e1b0417 [Directory] Finished implementing groups stream as a plugin 2021-04-14 15:37:23 +00:00
Angelo D. Moura 66875e93f8 [Directory] Finished implementing groups stream using Directory plugin 2021-04-14 15:37:23 +00:00
Daniel e14efe86a4 [Directory] Add documentation 2021-04-14 15:37:23 +00:00
Daniel a19b51f91e [Directory] Moved /actors stream to directory plugin 2021-04-14 15:37:23 +00:00
Daniel 35d2bdfd5e [Cover] Remove of cover form 2021-04-14 15:37:23 +00:00
Daniel 485607169f [Cover] Added cover route verifications 2021-04-14 15:37:23 +00:00
Daniel ee039ab2e9 [Cover] Removed commented code 2021-04-14 15:37:23 +00:00
Daniel e2df8aec10 [Cover] Input restrictions, Code cleanup 2021-04-14 15:37:23 +00:00
Daniel 0d18615fd8 [Cover] Added cover css, changed cover settings route name 2021-04-14 15:37:23 +00:00
Daniel 4f69686968 [Cover] Added temporary css 2021-04-14 15:37:23 +00:00
Daniel 777b8b55fd [Cover] Cover route, cover now renders 2021-04-14 15:37:23 +00:00
Daniel 7688cc39a8 [Cover] Added TWIG vars for profile plugins 2021-04-14 15:37:23 +00:00
Daniel 4fd33bf37f [Cover] Added Cover Entity, updated form handler
Basically the same as the avatar
2021-04-14 15:37:23 +00:00
Daniel 3d3c560516 [Cover] Started implementing Cover plugin: base class, route, base templates, added tabs in profile template 2021-04-14 15:37:23 +00:00
Pastilhas aaa6585a1e [DOCKER][MAIL] Removed unused config files and scripts
Now user is created on setup and dockerfile
2021-04-14 15:37:23 +00:00
Daniel ac16b3eff1 [Poll] Removed/refactored unnecessary files, changed redirect to default parameters in new poll route 2021-04-14 15:37:23 +00:00
Daniel 696ebe60e0 [Poll] Restructured templates, added misssing poll related css 2021-04-14 15:37:23 +00:00
Daniel 168b7d313a [Poll] Polls now have an associated note, poll templates, start_show_styles event, started css 2021-04-14 15:37:23 +00:00
Daniel 3a51d3ef89 [Poll] Started testing with note integration 2021-04-14 15:37:23 +00:00
Daniel 7c8dbccee2 [Poll] Added file headers 2021-04-14 15:37:23 +00:00
Daniel 7a925cd9a6 [Poll] Added modified param for Poll/Poll response, added PollTest 2021-04-14 15:37:23 +00:00
Daniel 0a1ea8749b [Poll] Added variable num of options
not sure if it is the right way to do it
2021-04-14 15:37:23 +00:00
Daniel 8543c8c68e [Poll] Added templates, response counting 2021-04-14 15:37:23 +00:00
Daniel 8bbeb79233 [Poll] Store poll response to DB 2021-04-14 15:37:23 +00:00
Daniel 4fcde940ff [Poll] Added New Route, RespondPoll, Poll Response, PollResponseForm 2021-04-14 15:37:23 +00:00
Daniel a98e3a32f9 [Poll] Fixed ShowPoll route, moved Poll Entity, created NewPollForm
Entity was temporarily moved to src/Entity in order to load from DB, since it is yet no possible to do that from Plugin
2021-04-14 15:37:23 +00:00
Daniel a9c35def3f [AUTOGENERATED][Poll] Add auto generated code for poll entity and new route 2021-04-14 15:37:23 +00:00
Daniel b860c6bbb0 [Poll] Started porting Poll Plugin 2021-04-14 15:37:23 +00:00
Daniel 0868880d45 [TESTS] Added unit tests 2021-04-14 15:37:23 +00:00
Hugo Sales bb4f5b88e7 [PLUGIN][Favourite] Move favourite table definition to inside the plugin, as it is now supported 2021-04-14 15:37:23 +00:00
Hugo Sales 2c9bd3575b [AUTOGENERATED] Update auto generated code in entities 2021-04-14 15:37:23 +00:00
Hugo Sales 256169a3c4 [GIT] Change my email to the new one in all files and bump copyright year 2021-04-14 15:37:23 +00:00
Hugo Sales f51a772826 Add some missing documentation to ActivityPub 2021-04-14 15:37:23 +00:00
Hugo Sales 8a14222d51 [NETWORK][TreeNotes] Add TreeNotes plugin which takes over the responsibility of displaying a conversation as a tree, in order to reduce the number of queries 2021-04-14 15:37:23 +00:00
Hugo Sales 9c2a911dab [Reply] Fix bug where wrong variable is used when replying to a note 2021-04-14 15:37:23 +00:00
Hugo Sales 5cced1c9ed [DOCUMENTATION][REFACTOR] Add documentation to all flagged function and do some small cleanup 2021-04-14 15:37:23 +00:00
Hugo Sales 69202ce7a0 [Reply] Fix missing use statement 2021-04-14 15:37:23 +00:00
Hugo Sales abc32ecc0e [NoteAction] Refactor duplicated code out to base class 2021-04-14 15:37:22 +00:00
Hugo Sales 4b84ef5183 [Directory] Add missing use statement 2021-04-14 15:37:22 +00:00
Hugo Sales 774d7ffdf9 [Reply] Move reply functionality to a plugin 2021-04-14 15:37:22 +00:00
Hugo Sales 0492d71294 [NoteActions] Refactor note actions and fix bug in favourite 2021-04-14 15:37:22 +00:00
Hugo Sales 1c37eb7c72 [UI] Display error when submitted form is invalid 2021-04-14 15:37:22 +00:00
Hugo Sales ff96c2bb59 [AUTOGENERATED] Update autogenerated code in module entities 2021-04-14 15:37:22 +00:00
Hugo Sales 922c435e28 [Repeat][Favourite] Only display action buttons if logged in (instead of forcing login) 2021-04-14 15:37:22 +00:00
Hugo Sales 54e8852fb7 [Posting] Fix posting form name and css 2021-04-14 15:37:22 +00:00
Hugo Sales b364a51f80 [Directory] Add directory plugin, for listing people and groups 2021-04-14 15:37:22 +00:00
rainydaysavings 49cd0af021 [PLUGIN] Removing unnecessary labels 2021-04-14 15:37:22 +00:00
rainydaysavings ce94d50043 [PLUGIN] Recycle initial implementation 2021-04-14 15:37:22 +00:00
rainydaysavings 0ed0d0470c [Favourite] Add backend support for favourite 2021-04-14 15:37:22 +00:00
Hugo Sales fefee324b4 [DB][MODULES][ActivityPub] Cleanup table definitions 2021-04-14 15:37:22 +00:00
Hugo Sales 84cfa65bc6 [ActivityPub] Initial cleanup, removing 'die' statements, and ignoring the subfolders 2021-04-14 15:37:22 +00:00
Hugo Sales bdacd638c7 [PLUGIN] Remove Test plugin 2021-04-14 15:37:22 +00:00
Hugo Sales b9a2badc31 [COMPONENT][PLUGIN] Move Email and XMPP notification handlers from components to plugins, so they can be disabled 2021-04-14 15:37:22 +00:00
Hugo Sales d7801737f6 [COMPONENT][PLUGIN] Small refactor and add license 2021-04-14 15:37:22 +00:00
Hugo Sales 605a8919a7 [PLUGIN] Update example plugin 2021-04-14 15:37:21 +00:00
Diogo Cordeiro 4efbf9361c [DOCUMENTATION][TOOL] Small bug fixes and docblock elaboration 2021-04-14 15:37:20 +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 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 f01331671c [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-04-14 15:36:13 +00: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 f088a3d54f [Embed] Apply encoding and increased type strictness patches from StoreRemoteMedia 2021-04-13 14:55:45 +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 844ecbf71e [Embed] Revert defaults and fix Readme example 2021-02-21 20:20:48 +00: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 f9290705f8 [ActivityPub] Attachment fetch should happen on StoreRemoteMedia 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
Diogo Peralta Cordeiro b1e6b00545 [ActivityPub] Re-implement Delete Actor 2021-02-21 15:00:58 +00:00
Alexei Sorokin 06dfd91a82 Various fixes
Fix OAuth and Realtime issues introduced in 9a515b9234

[DATABASE] Fix an empty default value mistake introduced in
fde929b151

[DATABASE][PostgreSQL] Avoid use of pg_constraint.consrc, which was removed in
PostgreSQL 12.

[DATABASE][MariaDB] Fix a typo introduced in aed2344bd4

[DAEMON] Wrap an assignment inside "switch":
a follow-up to adc689cb15
2020-10-11 18:29:47 +03:00
Alexei Sorokin c540466147 [XMPP] Respond to ping and track time monotonically
This also fetches a necessary update from the XMPPHP upstream.
2020-09-27 00:16:08 +03:00
Alexei Sorokin 4d8b04cda9 Clear out potential duplicates when semi-joining a union
Using a left outer join as a semi-join is not a valid approach.
Can still be used for an anti-semi-join.
2020-09-21 22:25:33 +03:00
Alexei Sorokin aed2344bd4 Set the character set before making a connection
Ideally the character set should be set with the connection, and so this is
exactly what's being done now.

And now the character set code is attempted to be generalised.
2020-09-16 19:34:49 +03:00
Alexei Sorokin 52d67b0f44 Avoid ordering just by a timestamp
Try to also employ an id when possible.
Involves reworking some of the indices.
2020-09-15 16:59:27 +03:00
Alexei Sorokin 8079a476b6 Remove "magic quotes" code and avoid wrong order implode
"Magic quotes" were removed in PHP 5.4, no need to mitigate it anymore.

Avoid implode() with the join()-like order of arguments which was deprecated
since PHP 7.4 and implicitly since PHP 5.3.
Also avoid implode() with an implicit separator for stylistic reasons.

mktime() with no arguments has been deprecated since PHP 5.1.
2020-09-15 14:59:27 +03:00
Alexei Sorokin fde929b151 [DATABASE] Switch from PEAR DB to MDB2 2020-09-14 22:46:29 +03:00
Alexei Sorokin 96f1cc1a5c [ActivityPub][INBOX][Delete] Stop if the ID is not present 2020-09-14 21:32:41 +03:00
Alexei Sorokin 647bf8c953 [ActivityPub] Fix use of ActivityPubPlugin::pull_remote_profile
It does not throw but return null.
2020-09-14 20:48:10 +03:00
Alexei Sorokin d2c7d70f49 Fix "Implement a class for automatic temporary file handling"
TemporaryFile::commit throws instead of returning a bool.
2020-09-14 20:37:48 +03:00
Alexei Sorokin adc689cb15 Avoid use of assignments bare inside statements
Either use them in a subroutine call or put parentheses around the assignment.
2020-09-08 12:42:51 +03:00
Alexei Sorokin 08145f635f Implement a class for automatic temporary file handling
And adopt it all over the code.
2020-09-04 13:15:23 +03:00
Alexei Sorokin 55136c1c6f [DirectMessage] Simplify the inbox query 2020-09-02 15:12:20 +03:00
Alexei Sorokin fc300607e5 [ActivityPub] Check if a Notice is public via CC as well 2020-09-01 01:20:13 +03:00
Diogo Cordeiro 8c20ed0c89 [ActivityPub] Fix note URIs 2020-08-31 22:18:49 +01:00
Diogo Cordeiro c8e9cbdbb8 [ActivityPub] Tombstones now have datetimes 2020-08-30 01:59:38 +01:00
Diogo Cordeiro 11a7182594 [ActivityPub] Implement Failed Queue 2020-08-29 20:32:21 +01:00
Diogo Cordeiro 817074a787 [ActivityPub] Fix DELETE 2020-08-29 20:32:18 +01:00
Diogo Cordeiro c75bf1a19d [ActivityPub] Fix issues concerning Activity URIs
And some other minor bugs.
2020-08-29 11:29:12 +01: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 e4093343c2 [ActivityPub] Revert moving Disfavor to Queues
It seems this kind of notice isn't queued?
2020-08-27 02:14:47 +01:00
Diogo Cordeiro 101ea554ef [ActivityPub][Queues] Fix Like 2020-08-27 02:12:22 +01:00
Diogo Cordeiro ef6a986dc6 [TheFreeNetwork] Do not allow lower priority protocols to handle remote actors already handled by the higher ones 2020-08-27 01:32:15 +01:00
Alexei Sorokin db593496a7 [Directory] Fix SQL string quotation 2020-08-26 16:27:35 +03:00
Alexei Sorokin 00c492891e [Foreign_link] Change the type of "credentials" to blob
TwitterOAuthClient::packToken uses \0 as a delimeter which can cause issues on
TEXT or VARCHAR.
2020-08-25 16:06:37 +03:00
Alexei Sorokin 0e81f9c726 [OpenID] Correct table definition types
"server_url" should not be blob.
Lengths are adjusted to Auth/OpenID/(PostgreSQL|MySQL)Store.php.
2020-08-24 16:27:44 +03:00