Move assignment status into the component
This commit is contained in:
parent
58d785cf8f
commit
a1bcdd1d9b
|
|
@ -29,18 +29,7 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{#if this.siteSettings.enable_assign_status}}
|
|
||||||
<div class="control-group assign-status">
|
|
||||||
<label>{{i18n "discourse_assign.assign_modal.status_label"}}</label>
|
|
||||||
<ComboBox
|
|
||||||
@id="assign-status"
|
|
||||||
@content={{this.availableStatuses}}
|
|
||||||
@value={{this.status}}
|
|
||||||
@onChange={{fn (mut @model.status)}}
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
|
|
||||||
<Assignment
|
<Assignment
|
||||||
@note={{@model.note}}
|
@note={{@model.note}}
|
||||||
|
@status={{@model.status}}
|
||||||
@onSubmit={{this.assign}} />
|
@onSubmit={{this.assign}} />
|
||||||
|
|
|
||||||
|
|
@ -18,18 +18,6 @@ export default class AssignUserForm extends Component {
|
||||||
this.args.formApi.submit = this.assign;
|
this.args.formApi.submit = this.assign;
|
||||||
}
|
}
|
||||||
|
|
||||||
get availableStatuses() {
|
|
||||||
return this.siteSettings.assign_statuses
|
|
||||||
.split("|")
|
|
||||||
.map((status) => ({ id: status, name: status }));
|
|
||||||
}
|
|
||||||
|
|
||||||
get status() {
|
|
||||||
return (
|
|
||||||
this.args.model.status || this.siteSettings.assign_statuses.split("|")[0]
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
@action
|
@action
|
||||||
handleTextAreaKeydown(event) {
|
handleTextAreaKeydown(event) {
|
||||||
if ((event.ctrlKey || event.metaKey) && event.key === "Enter") {
|
if ((event.ctrlKey || event.metaKey) && event.key === "Enter") {
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,15 @@
|
||||||
|
{{#if this.siteSettings.enable_assign_status}}
|
||||||
|
<div class="control-group assign-status">
|
||||||
|
<label>{{i18n "discourse_assign.assign_modal.status_label"}}</label>
|
||||||
|
<ComboBox
|
||||||
|
@id="assign-status"
|
||||||
|
@content={{this.availableStatuses}}
|
||||||
|
@value={{this.status}}
|
||||||
|
@onChange={{fn (mut @status)}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
{{/if}}
|
||||||
|
|
||||||
<div class="control-group assign-status">
|
<div class="control-group assign-status">
|
||||||
<label>
|
<label>
|
||||||
{{i18n "discourse_assign.assign_modal.note_label"}} <span class="label-optional"
|
{{i18n "discourse_assign.assign_modal.note_label"}} <span class="label-optional"
|
||||||
|
|
|
||||||
|
|
@ -4,10 +4,28 @@ import { action } from "@ember/object";
|
||||||
import { inject as service } from "@ember/service";
|
import { inject as service } from "@ember/service";
|
||||||
|
|
||||||
export default class Assignment extends Component {
|
export default class Assignment extends Component {
|
||||||
|
@service siteSettings;
|
||||||
|
|
||||||
|
constructor() {
|
||||||
|
super(...arguments);
|
||||||
|
}
|
||||||
|
|
||||||
|
get status() {
|
||||||
|
return this.args.status || this.#assignStatuses[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
get availableStatuses() {
|
||||||
|
return this.#assignStatuses.map((status) => ({ id: status, name: status }));
|
||||||
|
}
|
||||||
|
|
||||||
@action
|
@action
|
||||||
handleTextAreaKeydown(event) {
|
handleTextAreaKeydown(event) {
|
||||||
if ((event.ctrlKey || event.metaKey) && event.key === "Enter") {
|
if ((event.ctrlKey || event.metaKey) && event.key === "Enter") {
|
||||||
this.args.onSubmit();
|
this.args.onSubmit();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get #assignStatuses() {
|
||||||
|
return this.siteSettings.assign_statuses.split("|");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue