import { withPluginApi } from 'discourse/lib/plugin-api'; import computed from 'ember-addons/ember-computed-decorators'; import showModal from 'discourse/lib/show-modal'; function initializePollUIBuilder(api) { api.modifyClass('controller:composer', { @computed('siteSettings.poll_enabled', 'siteSettings.poll_minimum_trust_level_to_create') canBuildPoll(pollEnabled, minimumTrustLevelToCreate) { return pollEnabled && this.currentUser && ( this.currentUser.admin || this.currentUser.trust_level >= minimumTrustLevelToCreate ); }, actions: { showPollBuilder() { showModal('poll-ui-builder').set('toolbarEvent', this.get('toolbarEvent')); } } }); api.addToolbarPopupMenuOptionsCallback(function() { return { action: 'showPollBuilder', icon: 'bar-chart-o', label: 'poll.ui_builder.title', condition: 'canBuildPoll' }; }); } export default { name: 'add-poll-ui-builder', initialize() { withPluginApi('0.8.7', initializePollUIBuilder); } };