www.gusucode.com > Flarum开源的PHP国外手机版论坛 0.1 Beta2 源码程序 > Flarum_v0.1.beta2/extensions/sticky/js/forum/src/addStickyControl.js
import { extend } from 'flarum/extend'; import DiscussionControls from 'flarum/utils/DiscussionControls'; import DiscussionPage from 'flarum/components/DiscussionPage'; import Button from 'flarum/components/Button'; export default function addStickyControl() { extend(DiscussionControls, 'moderationControls', function(items, discussion) { if (discussion.canSticky()) { items.add('sticky', Button.component({ children: app.trans(discussion.isSticky() ? 'sticky.unsticky' : 'sticky.sticky'), icon: 'thumb-tack', onclick: this.stickyAction.bind(discussion) })); } }); DiscussionControls.stickyAction = function() { this.save({isSticky: !this.isSticky()}).then(() => { if (app.current instanceof DiscussionPage) { app.current.stream.update(); } m.redraw(); }); }; }