Enable templates in scheduled maintenance dashboard
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
const Vue = require('vue');
|
const Vue = require('vue');
|
||||||
|
|
||||||
Vue.component('report-incident', require('./ReportIncident'));
|
Vue.component('report-incident', require('./ReportIncident'));
|
||||||
|
Vue.component('report-schedule', require('./ReportSchedule'));
|
||||||
Vue.component('invite-team', require('./InviteTeam'));
|
Vue.component('invite-team', require('./InviteTeam'));
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
|
|||||||
30
resources/assets/js/components/dashboard/ReportSchedule.vue
Normal file
30
resources/assets/js/components/dashboard/ReportSchedule.vue
Normal 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>
|
||||||
@@ -14,56 +14,58 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
@include('partials.errors')
|
@include('partials.errors')
|
||||||
<form class="form-vertical" name="ScheduleForm" role="form" method="POST" autocomplete="off">
|
<report-schedule inline-template>
|
||||||
<input type="hidden" name="_token" value="{{ csrf_token() }}">
|
<form class="form-vertical" name="ScheduleForm" role="form" method="POST" autocomplete="off">
|
||||||
<fieldset>
|
<input type="hidden" name="_token" value="{{ csrf_token() }}">
|
||||||
@if($incidentTemplates->count() > 0)
|
<fieldset>
|
||||||
<div class="form-group">
|
@if($incidentTemplates->count() > 0)
|
||||||
<label for="incident-template">{{ trans('forms.schedules.templates.template') }}</label>
|
<div class="form-group">
|
||||||
<select class="form-control" name="template">
|
<label for="incident-template">{{ trans('forms.schedules.templates.template') }}</label>
|
||||||
<option selected></option>
|
<select class="form-control" name="template" v-model="template">
|
||||||
@foreach($incidentTemplates as $tpl)
|
<option selected></option>
|
||||||
<option value="{{ $tpl->slug }}">{{ $tpl->name }}</option>
|
@foreach($incidentTemplates as $tpl)
|
||||||
|
<option value="{{ $tpl->slug }}">{{ $tpl->name }}</option>
|
||||||
|
@endforeach
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
@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') }}" v-model="name">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>{{ trans('forms.schedules.status') }}</label><br>
|
||||||
|
@foreach(trans('cachet.schedules.status') as $id => $status)
|
||||||
|
<label class="radio-inline">
|
||||||
|
<input type="radio" name="status" value="{{ $id }}" {{ $id === 0 ? 'checked="checked"' : null }}>
|
||||||
|
{{ $status }}
|
||||||
|
</label>
|
||||||
@endforeach
|
@endforeach
|
||||||
</select>
|
</div>
|
||||||
</div>
|
<div class="form-group">
|
||||||
@endif
|
<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') }}" v-model="message">{{ Binput::old('message') }}</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>{{ trans('forms.schedules.scheduled_at') }}</label>
|
||||||
|
<input type="text" name="scheduled_at" class="form-control flatpickr-time" data-date-format="Y-m-d H:i" required placeholder="{{ trans('forms.schedules.scheduled_at') }}">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>{{ trans('forms.schedules.completed_at') }}</label>
|
||||||
|
<input type="text" name="completed_at" class="form-control flatpickr-time" data-date-format="Y-m-d H:i" placeholder="{{ trans('forms.schedules.completed_at') }}">
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="incident-name">{{ trans('forms.schedules.name') }}</label>
|
<div class="btn-group">
|
||||||
<input type="text" class="form-control" name="name" id="incident-name" required value="{{ Binput::old('name') }}" placeholder="{{ trans('forms.schedules.name') }}">
|
<button type="submit" class="btn btn-success">{{ trans('forms.add') }}</button>
|
||||||
</div>
|
<a class="btn btn-default" href="{{ cachet_route('dashboard.schedule') }}">{{ trans('forms.cancel') }}</a>
|
||||||
<div class="form-group">
|
|
||||||
<label>{{ trans('forms.schedules.status') }}</label><br>
|
|
||||||
@foreach(trans('cachet.schedules.status') as $id => $status)
|
|
||||||
<label class="radio-inline">
|
|
||||||
<input type="radio" name="status" value="{{ $id }}" {{ $id === 0 ? 'checked="checked"' : null }}>
|
|
||||||
{{ $status }}
|
|
||||||
</label>
|
|
||||||
@endforeach
|
|
||||||
</div>
|
|
||||||
<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>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
</form>
|
||||||
<label>{{ trans('forms.schedules.scheduled_at') }}</label>
|
</report-schedule>
|
||||||
<input type="text" name="scheduled_at" class="form-control flatpickr-time" data-date-format="Y-m-d H:i" required placeholder="{{ trans('forms.schedules.scheduled_at') }}">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label>{{ trans('forms.schedules.completed_at') }}</label>
|
|
||||||
<input type="text" name="completed_at" class="form-control flatpickr-time" data-date-format="Y-m-d H:i" placeholder="{{ trans('forms.schedules.completed_at') }}">
|
|
||||||
</div>
|
|
||||||
</fieldset>
|
|
||||||
|
|
||||||
<div class="form-group">
|
|
||||||
<div class="btn-group">
|
|
||||||
<button type="submit" class="btn btn-success">{{ trans('forms.add') }}</button>
|
|
||||||
<a class="btn btn-default" href="{{ cachet_route('dashboard.schedule') }}">{{ trans('forms.cancel') }}</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user