NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Comments for Laravel

Zamykanie vlákien

Dve úrovne zámku pokryjú vyriešené aj vyhrotené diskusie:

use RoundlyConsulting\Comments\Facades\Comments;

Comments::lock($post);              // block all new/edited comments on the post
Comments::unlock($post);
Comments::isLocked($post);          // bool
$post->commentsLocked();            // bool, same answer

Comments::lockThread($comment);     // no new replies anywhere below it, no edits in it
Comments::unlockThread($comment);
Comments::isThreadLocked($reply);   // bool — true when it or any ancestor is locked

$comment->lockReplies();            // same as Comments::lockThread($comment)
$comment->unlockReplies();          // same as Comments::unlockThread($comment)
$comment->isLocked();               // bool — this comment's own thread lock only
  • Zámok subjektu — Comments::lock($post) uloží záznam CommentLock (jeden na subjekt; opakované zamknutie nič nezmení). Nové komentáre, odpovede aj úpravy na subjekte vyhodia CommentsLockedException, kým nezavoláte Comments::unlock().
  • Zámok vlákna — Comments::lockThread($comment) nastaví komentáru locked_at. Pokrýva celý podstrom: žiadne nové odpovede kdekoľvek pod ním a žiadne úpravy jeho ani ktoréhokoľvek komentára v ňom — aj odpoveď na odpoveď patrí do vlákna a mäkké zmazanie komentára v zamknutom vlákne nechá všetko pod ním zamknuté.
  • Comments::isThreadLocked($reply) vráti true, ak je zamknutý komentár alebo niektorý jeho predok; $comment->isLocked() hlási len vlastný zámok komentára.
  • Zamknutie spustí CommentThreadLocked a odomknutie CommentThreadUnlocked — len keď sa stav naozaj zmení.
use RoundlyConsulting\Comments\Exceptions\CommentsLockedException;

try {
    Comments::on($post)->as($user)->body('Late to the party')->post();
} catch (CommentsLockedException $e) {
    // "This thread is locked and cannot accept new or edited comments."
}

CommentResource vystavuje vlastný zámok vlákna každého komentára ako locked, takže klient môže skryť pole na odpoveď. Pri zapnutej autorizácii zamknutie a odomknutie kontrolujú ability lock a unlock — pozrite Autorizácia.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.