Commit Graph

3612 Commits

Author SHA1 Message Date
flarum-bot
24dc0fc143 Bundled output for commit 2fe7d96288 [skip ci] 2020-04-10 19:18:00 +00:00
w-4
2fe7d96288 Fix PostStreamScrubber click (#1945) 2020-04-10 21:16:57 +02:00
Franz Liedke
8ee2edc3ff ForumSerializer: Use UrlGenerator for base URLs
The test from the previous commit proves this works as intended. :)

This is one more step in trying to avoid the widespread usage of the
`Application` godclass.

Refs #2055.
2020-04-10 17:46:15 +02:00
Franz Liedke
c9f0673f4b Add integration test for API root endpoint 2020-04-10 17:46:15 +02:00
Hasan Özbey
762c021f86 Fix mobile notification bubble on colored header (#2109) 2020-04-10 12:50:36 +02:00
flarum-bot
9329fd6d21 Bundled output for commit 236bedde45 [skip ci] 2020-04-10 10:32:46 +00:00
Taraflex
236bedde45 Protect dismissible modals from closing by ESC key 2020-04-10 12:30:56 +02:00
Franz Liedke
ebdef578c0 Permissions page: Tweak icon styling
- Give them a fixed width (independent of font library)
- Center the icons in their column
- De-emphasize the icons by applying a muted color

Fixes #2016, closes #2018.
2020-04-10 12:01:04 +02:00
Franz Liedke
a9f092cf4b Simplify uploads, inject filesystem instances
This avoids injecting the Application god class and assembling default
file locations in multiple places.

In addition, we no longer use the `MountManager` for these uploads. It
only added complexity (by moving tmp files around) and will not be
available in the next major release of Flysystem.

Note: Passing PSR upload streams to Intervention Image requires an
explicit upgrade of the library. (Very likely, users have already
updated to the newer versions, as the old constraint allowed it, but
we should be explicit for correctness' sake.)
2020-04-10 11:38:57 +02:00
Franz Liedke
46ec54d52d Validate PSR-compatible file upload
Instead of converting the uploaded file object to an UploadedFile
instance from Symfony, because the latter is compatible with
Laravel's validation, let's re-implement the validation for the
three rules we were using.

The benefit: we can now avoid copying the uploaded file to a
temporary location just to do the wrapping.

In the next step, we will remove the temporary file and let the
uploader / Intervention Image handle the PSR stream directly.
2020-04-10 11:38:55 +02:00
Charlie
085d3cdba6 Change default discussion comment count
This allows new public discussions to be immediately visible by users.
2020-04-08 01:13:52 +02:00
Alexander Skvortsov
d627d01544 Added CSRF Extender (#2095) 2020-04-03 21:32:18 +02:00
flarum-bot
6a7cac7704 Bundled output for commit 4ded0ffbb5 [skip ci] 2020-04-03 19:27:57 +00:00
Sami Mazouz
4ded0ffbb5 Fix new post injected above unread sticky (#1868)
Refresh the discussion list instead of prepending the new post
2020-04-03 21:26:51 +02:00
Alexander Skvortsov
c84dd4d5bf Add console extender (#2057)
* Made the console command system extender-friendly

* Added console extender

* Added ConsoleTestCase to integration tests

* Added integration tests for console extender

* Marked event-based console extension system as deprecated

* Moved trimming command output of whitespace into superclass

* Renamed 'add' to 'command'

* Added special processing for laravel commands

* Code style fixes

* More style fixes

* Fixed $this->container
2020-04-03 19:38:54 +02:00
Alexander Skvortsov
ca32879e1e Send emails through the queue 2020-04-03 13:47:12 +02:00
flarum-bot
7286889e88 Bundled output for commit 1f20cea653 [skip ci] 2020-04-03 10:03:45 +00:00
Franz Liedke
1f20cea653 Update JS dependencies to secure versions 2020-04-03 12:02:18 +02:00
Franz Liedke
2db82ffe96 Deprecations: Add removal dates and replacements 2020-04-03 11:46:32 +02:00
Hasan Özbey
10ffef032f fix extensions page layout 2020-04-03 11:44:02 +02:00
Franz Liedke
e43f091582 Revert BC breaks around notification blueprints
No need for breaking backwards compatibility here - encapsulating the
logic for `getAttributes()` in one place turns out to be quite useful.

Refs #1931.
2020-04-03 11:33:33 +02:00
flarum-bot
0ff870c02c Bundled output for commit eed1b9cbd0 [skip ci] 2020-04-01 12:42:05 +00:00
Daniël Klabbers
eed1b9cbd0 fixed an issue with Post--by-start-user for discussions that contain posts of deleted users 2020-04-01 14:40:40 +02:00
flarum-bot
76fcd7faac Bundled output for commit e7b8c05a77 [skip ci] 2020-03-30 19:19:56 +00:00
Hasan Özbey
e7b8c05a77 Update ModalManager.js 2020-03-30 21:18:48 +02:00
Hasan Özbey
90c2e7602b Update Modal.less 2020-03-30 21:18:48 +02:00
Hasan Özbey
192b003173 fix modals 2020-03-30 21:18:48 +02:00
Franz Liedke
2ed194666b Use UrlGenerator over Application for base URL
We need to get rid of this god class, as Laravel's Application contract
gets even bigger with 5.8. To avoid having to add all these methods, we
should try to stop using it where we can.
2020-03-28 11:17:45 +01:00
Franz Liedke
e446c91a27 Laravel: Stop calling deprecated fire() method
This has been deprecated and removed from the contract for a long time,
and it will be completely dropped in v5.8, our next upgrade target.
2020-03-28 11:08:44 +01:00
Franz Liedke
3246fb3fea Make tests compatible with PHPUnit 8 2020-03-28 11:06:47 +01:00
Franz Liedke
f47a4879c4 Merge pull request #1931 from flarum/dk/1869-queue-notifications
Notifications into the queue
2020-03-27 23:06:36 +01:00
Franz Liedke
119662f6ce Add new method to DiscussionRenamedBlueprint 2020-03-27 16:22:39 +01:00
Franz Liedke
cf3e0cc5bc Add BC layer for notification blueprints
This gives extension authors time to add the new `getAttributes()`
method to their `BlueprintInterface` implementations.

The layer itself is easy to remove in beta.14.
2020-03-27 16:22:38 +01:00
Franz Liedke
4c363fe76c Remove unnecessary constructor parameter 2020-03-27 16:22:38 +01:00
Franz Liedke
2277f26e84 Remove Notifying event for now
As discussed with @luceos, let's add this once the use case comes up. It
might be a left-over from a previous state of this PR anyway.
2020-03-27 16:22:37 +01:00
Daniël Klabbers
dfaa400d85 Moved sending emails to the syncer
This separates sending each individual mail, thus hardening the app.
There are still many improvements possible in this code, e.g. chaining
these commands, making emails just another notification type and
listening to the Notify event instead. We can postpone this to a later
stable release.
2020-03-27 16:22:37 +01:00
Daniël Klabbers
8cdcb25fcc Notifications into the queue
Forces notifications into a dedicated SendNotificationsJob and passed
to the queue.

- One static method re-used in the job ::getAttributes, is that okay or
  use a trait?
- Do we want to use this solution and refactor into a better Hub after
  stable, postpone this implementation or use it in b11?
2020-03-27 16:16:36 +01:00
Franz Liedke
20bc1e50fc Convert last two controller tests to request tests 2020-03-27 13:39:38 +01:00
Daniël Klabbers
9ee12eebcd fixes checking for enabled extension and correct pointer of 13e20c2ced 2020-03-27 13:29:16 +01:00
Franz Liedke
2deae4b058 Rename API tests for more consistency
I could not come up with a noun for the new "UpdateTest" for users, so
this is easier in terms of consistency.
2020-03-27 13:22:27 +01:00
Franz Liedke
4e2f91fa00 Convert more controller tests to request tests 2020-03-27 13:21:10 +01:00
Matt Kilgore
b0fd63adc3 Fix test and extender for middleware (#2084) 2020-03-27 11:00:30 +01:00
Daniël Klabbers
13e20c2ced Resolved enabled extension test
The getEnabled method returns all extensions (previously) enabled, yet manually
uninstalled through composer. This does not reference the exact, current state
of the forum. getEnabledExtensions returns a list where the getEnabled list
is filtered on the extensions found in the composer installed.json file.
2020-03-25 11:47:39 +01:00
Matt Kilgore
84dafdd5c3 fix insertAfter and insertBefore middleware extender functions (#2063) 2020-03-20 22:59:57 +01:00
Franz Liedke
b3dc2c7571 Convert more controller tests to request tests 2020-03-20 18:54:20 +01:00
Franz Liedke
a70acdf9cb Apply fixes from StyleCI
[ci skip] [skip ci]
2020-03-20 17:28:58 +00:00
Franz Liedke
2b0bc2865d Tests: Use new authenticatedAs option where useful
There are two more API integration tests that explicitly add the
"Authorization" header right now:

- `Flarum\Tests\integration\api\authentication\WithApiKeyTest`
- `Flarum\Tests\integration\api\csrf_protection\RequireCsrfTokenTest`

These two specifically test authentication, so in those cases the
explicitness seems desirable.
2020-03-20 18:28:35 +01:00
Franz Liedke
8e21fee06c Replace authenticatedRequest() by request() option
I feel this makes the parameters a bit more clear, does not rely on
inheritance (you can only inherit from one class, but we might want more
of these helpers in the future), and has less side effects (e.g. no
creation and, more importantly, deletion of users in the database).

Refs #2052.
2020-03-20 18:23:06 +01:00
Franz Liedke
6540049421 Tests: Extract trait for building requests 2020-03-20 17:51:03 +01:00
Alexander Skvortsov
fe8df6df4e Add Authenticated Test Case utility 2020-03-20 17:18:35 +01:00