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 kryptomienOdoslaní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.