mirror of
https://github.com/flarum/core.git
synced 2025-08-04 15:37:51 +02:00
@@ -9,8 +9,8 @@
|
|||||||
* file that was distributed with this source code.
|
* file that was distributed with this source code.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use Flarum\Core\Group;
|
|
||||||
use Flarum\Database\Migration;
|
use Flarum\Database\Migration;
|
||||||
|
use Flarum\Group\Group;
|
||||||
|
|
||||||
return Migration::addPermissions([
|
return Migration::addPermissions([
|
||||||
'discussion.lock' => Group::MODERATOR_ID
|
'discussion.lock' => Group::MODERATOR_ID
|
||||||
|
@@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Access;
|
namespace Flarum\Lock\Access;
|
||||||
|
|
||||||
use Flarum\Core\Access\AbstractPolicy;
|
use Flarum\Discussion\Discussion;
|
||||||
use Flarum\Core\Discussion;
|
use Flarum\User\AbstractPolicy;
|
||||||
use Flarum\Core\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class DiscussionPolicy extends AbstractPolicy
|
class DiscussionPolicy extends AbstractPolicy
|
||||||
{
|
{
|
||||||
|
@@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Access;
|
namespace Flarum\Lock\Access;
|
||||||
|
|
||||||
use Flarum\Core\Access\AbstractPolicy;
|
use Flarum\Post\Post;
|
||||||
use Flarum\Core\Post;
|
use Flarum\User\AbstractPolicy;
|
||||||
use Flarum\Core\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class PostPolicy extends AbstractPolicy
|
class PostPolicy extends AbstractPolicy
|
||||||
{
|
{
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Event;
|
namespace Flarum\Lock\Event;
|
||||||
|
|
||||||
use Flarum\Core\Discussion;
|
use Flarum\Discussion\Discussion;
|
||||||
use Flarum\Core\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class DiscussionWasLocked
|
class DiscussionWasLocked
|
||||||
{
|
{
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Event;
|
namespace Flarum\Lock\Event;
|
||||||
|
|
||||||
use Flarum\Core\Discussion;
|
use Flarum\Discussion\Discussion;
|
||||||
use Flarum\Core\User;
|
use Flarum\User\User;
|
||||||
|
|
||||||
class DiscussionWasUnlocked
|
class DiscussionWasUnlocked
|
||||||
{
|
{
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Listener;
|
namespace Flarum\Lock\Listener;
|
||||||
|
|
||||||
use Flarum\Event\ConfigureWebApp;
|
use Flarum\Frontend\Event\Rendering;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
|
|
||||||
class AddClientAssets
|
class AddClientAssets
|
||||||
@@ -21,13 +21,13 @@ class AddClientAssets
|
|||||||
*/
|
*/
|
||||||
public function subscribe(Dispatcher $events)
|
public function subscribe(Dispatcher $events)
|
||||||
{
|
{
|
||||||
$events->listen(ConfigureWebApp::class, [$this, 'addAssets']);
|
$events->listen(Rendering::class, [$this, 'addAssets']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param ConfigureClientView $event
|
* @param Rendering $event
|
||||||
*/
|
*/
|
||||||
public function addAssets(ConfigureWebApp $event)
|
public function addAssets(Rendering $event)
|
||||||
{
|
{
|
||||||
if ($event->isForum()) {
|
if ($event->isForum()) {
|
||||||
$event->addAssets([
|
$event->addAssets([
|
||||||
|
@@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Listener;
|
namespace Flarum\Lock\Listener;
|
||||||
|
|
||||||
|
use Flarum\Api\Event\Serializing;
|
||||||
use Flarum\Api\Serializer\DiscussionSerializer;
|
use Flarum\Api\Serializer\DiscussionSerializer;
|
||||||
use Flarum\Event\PrepareApiAttributes;
|
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
|
|
||||||
class AddDiscussionLockedAttributes
|
class AddDiscussionLockedAttributes
|
||||||
@@ -22,13 +22,13 @@ class AddDiscussionLockedAttributes
|
|||||||
*/
|
*/
|
||||||
public function subscribe(Dispatcher $events)
|
public function subscribe(Dispatcher $events)
|
||||||
{
|
{
|
||||||
$events->listen(PrepareApiAttributes::class, [$this, 'prepareApiAttributes']);
|
$events->listen(Serializing::class, [$this, 'prepareApiAttributes']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param PrepareApiAttributes $event
|
* @param Serializing $event
|
||||||
*/
|
*/
|
||||||
public function prepareApiAttributes(PrepareApiAttributes $event)
|
public function prepareApiAttributes(Serializing $event)
|
||||||
{
|
{
|
||||||
if ($event->isSerializer(DiscussionSerializer::class)) {
|
if ($event->isSerializer(DiscussionSerializer::class)) {
|
||||||
$event->attributes['isLocked'] = (bool) $event->model->is_locked;
|
$event->attributes['isLocked'] = (bool) $event->model->is_locked;
|
||||||
|
@@ -11,16 +11,16 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Listener;
|
namespace Flarum\Lock\Listener;
|
||||||
|
|
||||||
use Flarum\Api\Serializer\DiscussionBasicSerializer;
|
use Flarum\Api\Serializer\BasicDiscussionSerializer;
|
||||||
use Flarum\Core\Discussion;
|
|
||||||
use Flarum\Core\Notification\NotificationSyncer;
|
use Flarum\Core\Notification\NotificationSyncer;
|
||||||
use Flarum\Core\User;
|
use Flarum\Discussion\Discussion;
|
||||||
use Flarum\Event\ConfigureNotificationTypes;
|
use Flarum\Event\ConfigureNotificationTypes;
|
||||||
use Flarum\Event\ConfigurePostTypes;
|
use Flarum\Event\ConfigurePostTypes;
|
||||||
use Flarum\Lock\Event\DiscussionWasLocked;
|
use Flarum\Lock\Event\DiscussionWasLocked;
|
||||||
use Flarum\Lock\Event\DiscussionWasUnlocked;
|
use Flarum\Lock\Event\DiscussionWasUnlocked;
|
||||||
use Flarum\Lock\Notification\DiscussionLockedBlueprint;
|
use Flarum\Lock\Notification\DiscussionLockedBlueprint;
|
||||||
use Flarum\Lock\Post\DiscussionLockedPost;
|
use Flarum\Lock\Post\DiscussionLockedPost;
|
||||||
|
use Flarum\User\User;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
|
|
||||||
class CreatePostWhenDiscussionIsLocked
|
class CreatePostWhenDiscussionIsLocked
|
||||||
@@ -62,7 +62,7 @@ class CreatePostWhenDiscussionIsLocked
|
|||||||
*/
|
*/
|
||||||
public function addNotificationType(ConfigureNotificationTypes $event)
|
public function addNotificationType(ConfigureNotificationTypes $event)
|
||||||
{
|
{
|
||||||
$event->add(DiscussionLockedBlueprint::class, DiscussionBasicSerializer::class, ['alert']);
|
$event->add(DiscussionLockedBlueprint::class, BasicDiscussionSerializer::class, ['alert']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -11,10 +11,10 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Listener;
|
namespace Flarum\Lock\Listener;
|
||||||
|
|
||||||
use Flarum\Core\Access\AssertPermissionTrait;
|
use Flarum\Discussion\Event\Saving;
|
||||||
use Flarum\Event\DiscussionWillBeSaved;
|
|
||||||
use Flarum\Lock\Event\DiscussionWasLocked;
|
use Flarum\Lock\Event\DiscussionWasLocked;
|
||||||
use Flarum\Lock\Event\DiscussionWasUnlocked;
|
use Flarum\Lock\Event\DiscussionWasUnlocked;
|
||||||
|
use Flarum\User\AssertPermissionTrait;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
use Illuminate\Contracts\Events\Dispatcher;
|
||||||
|
|
||||||
class SaveLockedToDatabase
|
class SaveLockedToDatabase
|
||||||
@@ -26,13 +26,13 @@ class SaveLockedToDatabase
|
|||||||
*/
|
*/
|
||||||
public function subscribe(Dispatcher $events)
|
public function subscribe(Dispatcher $events)
|
||||||
{
|
{
|
||||||
$events->listen(DiscussionWillBeSaved::class, [$this, 'whenDiscussionWillBeSaved']);
|
$events->listen(Saving::class, [$this, 'whenSaving']);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param DiscussionWillBeSaved $event
|
* @param Saving $event
|
||||||
*/
|
*/
|
||||||
public function whenDiscussionWillBeSaved(DiscussionWillBeSaved $event)
|
public function whenSaving(Saving $event)
|
||||||
{
|
{
|
||||||
if (isset($event->data['attributes']['isLocked'])) {
|
if (isset($event->data['attributes']['isLocked'])) {
|
||||||
$isLocked = (bool) $event->data['attributes']['isLocked'];
|
$isLocked = (bool) $event->data['attributes']['isLocked'];
|
||||||
|
@@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Notification;
|
namespace Flarum\Lock\Notification;
|
||||||
|
|
||||||
use Flarum\Core\Discussion;
|
use Flarum\Discussion\Discussion;
|
||||||
use Flarum\Core\Notification\BlueprintInterface;
|
|
||||||
use Flarum\Lock\Post\DiscussionLockedPost;
|
use Flarum\Lock\Post\DiscussionLockedPost;
|
||||||
|
use Flarum\Notification\Blueprint\BlueprintInterface;
|
||||||
|
|
||||||
class DiscussionLockedBlueprint implements BlueprintInterface
|
class DiscussionLockedBlueprint implements BlueprintInterface
|
||||||
{
|
{
|
||||||
|
@@ -11,9 +11,9 @@
|
|||||||
|
|
||||||
namespace Flarum\Lock\Post;
|
namespace Flarum\Lock\Post;
|
||||||
|
|
||||||
use Flarum\Core\Post;
|
use Flarum\Post\Post;
|
||||||
use Flarum\Core\Post\AbstractEventPost;
|
use Flarum\Post\Post\AbstractEventPost;
|
||||||
use Flarum\Core\Post\MergeableInterface;
|
use Flarum\Post\Post\MergeableInterface;
|
||||||
|
|
||||||
class DiscussionLockedPost extends AbstractEventPost implements MergeableInterface
|
class DiscussionLockedPost extends AbstractEventPost implements MergeableInterface
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user