Add job queue; e-mail sending; password reset support

This commit is contained in:
garrettmills
2020-05-25 15:45:26 -05:00
parent f371310620
commit 76ba843348
22 changed files with 884 additions and 30 deletions

View File

@@ -36,6 +36,16 @@ const template = `
</div>
<div class="modal-body">
{{ modal.message }}
<div v-if="Array.isArray(modal.inputs)" class="mt-4 mb-3">
<span v-for="input of modal.inputs">
<input
type="input.type"
v-model="modal.data[input.name]"
:placeholder="input.placeholder"
class="form-control"
>
</span>
</div>
</div>
<div class="modal-footer" v-if="modal.buttons && modal.buttons.length > 0">
<button
@@ -68,8 +78,8 @@ export default class MessageContainerComponent extends Component {
})
this.modal_event = event_bus.event('message.modal')
this.modal_event.subscribe(({ title, message, buttons = [] }) => {
this.create_modal(title, message, buttons)
this.modal_event.subscribe(({ title, message, buttons = [], inputs = [] }) => {
this.create_modal(title, message, buttons, inputs)
})
message_service.init_listener()
@@ -96,12 +106,14 @@ export default class MessageContainerComponent extends Component {
}
}
create_modal(title, message, buttons = []) {
create_modal(title, message, buttons = [], inputs = []) {
const index = this.modals.length
const modal = {
title,
message,
buttons
buttons,
inputs,
data: {},
}
this.modals.push(modal)
@@ -112,7 +124,7 @@ export default class MessageContainerComponent extends Component {
modal_button_click($event, modal, button) {
if ( typeof button.on_click === 'function' ) {
button.on_click($event)
button.on_click($event, modal.data)
}
}
}