1
0
mirror of https://github.com/flarum/core.git synced 2025-08-12 03:14:33 +02:00

chore(phpstan): enable phpstan in bundled extensions (#3667)

* feat(phpstan): pick up extended model relations typings
* feat(phpstan): pick up extended model date attributes
* feat(core): introduce `castAttribute` extender
Stops using `dates` as it's deprecated in laravel 8
* feat(phpstan): pick up extended model attributes through casts
* fix: extenders not resolved when declared namespace
* fix(phpstan): new model attributes are always nullable
* chore(phpstan): add helpful cache clearing command
* Apply fixes from StyleCI
* chore: improve extend files provider logic
* chore: rename `castAttribute` to just `cast`
* chore: update phpstan package to detect `cast` method
* chore: enable phpstan in bundled extensions
* chore: rebasing conflicts
* chore: rebasing conflicts
* chore: typings for latest 1.7 changes

Signed-off-by: Sami Mazouz <sychocouldy@gmail.com>
This commit is contained in:
Sami Mazouz
2023-01-19 21:49:38 +01:00
committed by GitHub
parent ccf9442d79
commit da1bf8da21
59 changed files with 215 additions and 138 deletions

View File

@@ -28,15 +28,17 @@ return [
// Discussions should be approved by default
(new Extend\Model(Discussion::class))
->default('is_approved', true),
->default('is_approved', true)
->cast('is_approved', 'bool'),
// Posts should be approved by default
(new Extend\Model(Post::class))
->default('is_approved', true),
->default('is_approved', true)
->cast('is_approved', 'bool'),
(new Extend\ApiSerializer(BasicDiscussionSerializer::class))
->attribute('isApproved', function ($serializer, Discussion $discussion) {
return (bool) $discussion->is_approved;
return $discussion->is_approved;
}),
(new Extend\ApiSerializer(PostSerializer::class))

View File

@@ -9,6 +9,7 @@
namespace Flarum\Approval\Listener;
use Carbon\Carbon;
use Flarum\Discussion\Discussion;
use Flarum\Flags\Flag;
use Flarum\Post\CommentPost;
@@ -55,7 +56,7 @@ class UnapproveNewContent
$flag->post_id = $post->id;
$flag->type = 'approval';
$flag->created_at = time();
$flag->created_at = Carbon::now();
$flag->save();
});

View File

@@ -22,7 +22,7 @@ class UpdateDiscussionAfterPostApproval
$discussion->refreshCommentCount();
$discussion->refreshLastPost();
if ($post->number == 1) {
if ($post->number === 1) {
$discussion->is_approved = true;
$discussion->afterSave(function () use ($user) {