Enable templates in scheduled maintenance dashboard

This commit is contained in:
Shuichiro MAKIGAKI
2018-11-14 16:06:16 +09:00
parent 93a459409c
commit 8db2b47aab
3 changed files with 79 additions and 46 deletions

View File

@@ -2,6 +2,7 @@
const Vue = require('vue');
Vue.component('report-incident', require('./ReportIncident'));
Vue.component('report-schedule', require('./ReportSchedule'));
Vue.component('invite-team', require('./InviteTeam'));
module.exports = {

View File

@@ -0,0 +1,30 @@
<script>
module.exports = {
data () {
return {
template: null,
name: '',
message: ''
}
},
methods: {
getTemplate (template) {
axios.get('/dashboard/api/incidents/templates', {
params: {
slug: template
}
}).then(response => {
this.name = response.data.name
this.message = response.data.template
}).catch(response => {
(new Cachet.Notifier()).notify('There was an error finding that template.');
})
}
},
watch: {
'template' (template) {
this.getTemplate(template)
}
}
}
</script>

View File

@@ -14,13 +14,14 @@
<div class="row">
<div class="col-md-12">
@include('partials.errors')
<report-schedule inline-template>
<form class="form-vertical" name="ScheduleForm" role="form" method="POST" autocomplete="off">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<fieldset>
@if($incidentTemplates->count() > 0)
<div class="form-group">
<label for="incident-template">{{ trans('forms.schedules.templates.template') }}</label>
<select class="form-control" name="template">
<select class="form-control" name="template" v-model="template">
<option selected></option>
@foreach($incidentTemplates as $tpl)
<option value="{{ $tpl->slug }}">{{ $tpl->name }}</option>
@@ -30,7 +31,7 @@
@endif
<div class="form-group">
<label for="incident-name">{{ trans('forms.schedules.name') }}</label>
<input type="text" class="form-control" name="name" id="incident-name" required value="{{ Binput::old('name') }}" placeholder="{{ trans('forms.schedules.name') }}">
<input type="text" class="form-control" name="name" id="incident-name" required value="{{ Binput::old('name') }}" placeholder="{{ trans('forms.schedules.name') }}" v-model="name">
</div>
<div class="form-group">
<label>{{ trans('forms.schedules.status') }}</label><br>
@@ -44,7 +45,7 @@
<div class="form-group">
<label>{{ trans('forms.schedules.message') }}</label>
<div class="markdown-control">
<textarea name="message" class="form-control autosize" rows="5" required placeholder="{{ trans('forms.schedules.message') }}">{{ Binput::old('message') }}</textarea>
<textarea name="message" class="form-control autosize" rows="5" required placeholder="{{ trans('forms.schedules.message') }}" v-model="message">{{ Binput::old('message') }}</textarea>
</div>
</div>
<div class="form-group">
@@ -64,6 +65,7 @@
</div>
</div>
</form>
</report-schedule>
</div>
</div>
</div>