mirror of
https://github.com/flarum/core.git
synced 2025-08-16 05:14:20 +02:00
Only allow starting a discussion on a non-restricted tag if the user has the global permission
This commit is contained in:
@@ -13,7 +13,6 @@ namespace Flarum\Tags\Access;
|
|||||||
use Flarum\Core\Access\AbstractPolicy;
|
use Flarum\Core\Access\AbstractPolicy;
|
||||||
use Flarum\Core\User;
|
use Flarum\Core\User;
|
||||||
use Flarum\Tags\Tag;
|
use Flarum\Tags\Tag;
|
||||||
use Illuminate\Contracts\Events\Dispatcher;
|
|
||||||
use Illuminate\Database\Eloquent\Builder;
|
use Illuminate\Database\Eloquent\Builder;
|
||||||
|
|
||||||
class TagPolicy extends AbstractPolicy
|
class TagPolicy extends AbstractPolicy
|
||||||
@@ -39,7 +38,7 @@ class TagPolicy extends AbstractPolicy
|
|||||||
*/
|
*/
|
||||||
public function startDiscussion(User $actor, Tag $tag)
|
public function startDiscussion(User $actor, Tag $tag)
|
||||||
{
|
{
|
||||||
if (! $tag->is_restricted
|
if ((! $tag->is_restricted && $actor->hasPermission('startDiscussion'))
|
||||||
|| $actor->hasPermission('tag' . $tag->id . '.startDiscussion')) {
|
|| $actor->hasPermission('tag' . $tag->id . '.startDiscussion')) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user