import computed from 'ember-addons/ember-computed-decorators'; import PenaltyController from 'admin/mixins/penalty-controller'; export default Ember.Controller.extend(PenaltyController, { suspendUntil: null, suspending: false, onShow() { this.resetModal(); this.setProperties({ suspendUntil: null, suspending: false }); }, @computed('suspendUntil', 'reason', 'suspending') submitDisabled(suspendUntil, reason, suspending) { return (suspending || Ember.isEmpty(suspendUntil) || !reason || reason.length < 1); }, actions: { suspend() { if (this.get('submitDisabled')) { return; } this.set('suspending', true); this.penalize(() => { return this.get('user').suspend({ suspend_until: this.get('suspendUntil'), reason: this.get('reason'), message: this.get('message'), post_id: this.get('post.id'), post_action: this.get('postAction'), post_edit: this.get('postEdit') }); }).finally(() => this.set('suspending', false)); } } });