1
0
mirror of https://github.com/flarum/core.git synced 2025-08-12 19:34:18 +02:00

feat: messages extension (#4028)

* feat: private messages
This commit is contained in:
Sami Mazouz
2024-09-28 11:12:52 +01:00
committed by GitHub
parent bc4356a7f5
commit b74ecbfacf
186 changed files with 5331 additions and 605 deletions

View File

@@ -1,6 +1,6 @@
The MIT License (MIT)
Copyright (c) 2019-2021 Stichting Flarum (Flarum Foundation)
Copyright (c) 2019-2024 Stichting Flarum (Flarum Foundation)
Copyright (c) 2014-2019 Toby Zerner (toby.zerner@gmail.com)
Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@@ -9,8 +9,10 @@
namespace Flarum\Mentions\Api;
use Flarum\Api\Context;
use Flarum\Api\Schema;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
class PostResourceFields
{
@@ -20,12 +22,14 @@ class PostResourceFields
{
return [
Schema\Integer::make('mentionedByCount')
->countRelation('mentionedBy'),
->countRelation('mentionedBy', function (Builder $query, Context $context) {
$query->whereVisibleTo($context->getActor());
}),
Schema\Relationship\ToMany::make('mentionedBy')
->type('posts')
->includable()
->scope(fn (Builder $query) => $query->oldest('id')->limit(static::$maxMentionedBy)),
->scope(fn (BelongsToMany $query) => $query->oldest('id')->limit(static::$maxMentionedBy)),
Schema\Relationship\ToMany::make('mentionsPosts')
->type('posts'),
Schema\Relationship\ToMany::make('mentionsUsers')

View File

@@ -11,12 +11,13 @@ namespace Flarum\Mentions\Notification;
use Flarum\Database\AbstractModel;
use Flarum\Locale\TranslatorInterface;
use Flarum\Notification\AlertableInterface;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\Post\Post;
use Flarum\User\User;
class GroupMentionedBlueprint implements BlueprintInterface, MailableInterface
class GroupMentionedBlueprint implements BlueprintInterface, AlertableInterface, MailableInterface
{
public function __construct(
public Post $post

View File

@@ -11,12 +11,13 @@ namespace Flarum\Mentions\Notification;
use Flarum\Database\AbstractModel;
use Flarum\Locale\TranslatorInterface;
use Flarum\Notification\AlertableInterface;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\Post\Post;
use Flarum\User\User;
class PostMentionedBlueprint implements BlueprintInterface, MailableInterface
class PostMentionedBlueprint implements BlueprintInterface, AlertableInterface, MailableInterface
{
public function __construct(
public Post $post,

View File

@@ -11,12 +11,13 @@ namespace Flarum\Mentions\Notification;
use Flarum\Database\AbstractModel;
use Flarum\Locale\TranslatorInterface;
use Flarum\Notification\AlertableInterface;
use Flarum\Notification\Blueprint\BlueprintInterface;
use Flarum\Notification\MailableInterface;
use Flarum\Post\Post;
use Flarum\User\User;
class UserMentionedBlueprint implements BlueprintInterface, MailableInterface
class UserMentionedBlueprint implements BlueprintInterface, AlertableInterface, MailableInterface
{
public function __construct(
public Post $post