|
export default {
data: function () {
return {
selectedDate: new Date(2018, 3, 25),
currentView: 'Week',
showQuickInfo: true,
eventSettings: {
dataSource: [
{
EVENT_ID: 1,
DESCRIPTION: 'Explosion of Betelgeuse Star',
DATE: new Date(2018, 1, 11, 9, 30),
DATE_TO: new Date(2018, 1, 11, 11, 0)
}, {
EVENT_ID: 2,
Subject: 'Thule Air Crash Report',
StartTime: new Date(2018, 1, 12, 12, 0),
EndTime: new Date(2018, 1, 12, 14, 0)
}, {
EVENT_ID: 3,
Subject: 'Blue Moon Eclipse',
StartTime: new Date(2018, 1, 13, 9, 30),
EndTime: new Date(2018, 1, 13, 11, 0)
},
],
fields: {
id: { name: 'EVENT_ID' },
subject: { name: 'DESCRIPTION' },
startTime: { name: 'DATE' },
endTime: { name: 'DATE_TO' },
}
},
EventTemplate: function () {
return { template: EventTemplate }
},
}
},
provide: {
schedule: [Day, Week, WorkWeek, Month]
},
methods: {
onPopupOpen: function (args) {
console.log(args);
if (args.type === 'Editor') {
if (args.data.EVENT_ID) {
args.element.querySelector('#povezanSaPredmetom').setAttribute('style', 'display: none;');
if (args.element.querySelector('#brojPredmeta')) {
args.element.querySelector('#brojPredmeta').setAttribute('style', 'display: none;');
}
}
else {
args.element.querySelector('#povezanSaPredmetom').setAttribute('style', 'display: block;');
if (args.element.querySelector('#brojPredmeta')) {
args.element.querySelector('#brojPredmeta').setAttribute('style', 'display: block;');
}
}
}
},
----------------------
----------------------
----------------------
} |
|
<template>
<div>
<div class="row custom-event-editor" width="100%">
<div class="col-md-12" id="povezanSaPredmetom">
<div class="form-group row">
<div class="col-md-2">
</div>
<div class="col-md-8">
<ejs-checkbox id="ON_CASE" name='ON_CASE' :checked="povezanSaPredmetom" :change="ON_CASE_onChange"></ejs-checkbox>
<label for="POVEZAN_SA_PREDMETOM" class="m-l-10">
ON_CASE
</label>
</div>
<div class="col-md-2">
</div>
</div>
</div>
<div class="col-md-12" id="brojPredmeta" v-if="radnjaNaPredmetu == false && povezanSaPredmetom == true">
<div class="form-group row">
<label class="control-label text-right col-md-2" for="CASES_ID">CASE_NUMBER</label>
<div class="col-md-8">
<ejs-autocomplete id="CASES_ID"
class="form-control obavezno"
name="CASES_ID"
:dataSource='CASES_ID_data'
:fields='CASES_ID_fields'
:query='CASES_ID_query'
v-model="data.CASES_ID"></ejs-autocomplete>
</div>
<div class="col-md-2">
<ejs-checkbox id="COURT_NUMBER"
name='COURT_NUMBER'
:checked="COURT_NUMBER"
:change="COURT_NUMBER_onChange"></ejs-checkbox>
<label for="COURT_NUMBER" class="m-l-10">
{{this.COURT_NUMBER}}
</label>
</div>
</div>
</div>
<div class="col-md-12" v-if="schedulerEvent == true && povezanSaPredmetom == true">
<div class="form-group row">
<label class="control-label text-right col-md-2" for="PERSONS_ON_EVENT">PERSONS</label>
<div class="col-md-8">
<ejs-multiselect id='PERSONS_ON_EVENT'
class="e-field"
name="PERSONS_ON_EVENT"
value=""
:dataSource="PERSONS_ON_EVENT_data"
:fields='PERSONS_ON_EVENT_fields'
:allowFiltering='allowFiltering'>
</ejs-multiselect>
</div>
<div class="col-md-2">
</div>
</div>
</div>
<div class="col-md-12" v-else-if="schedulerEvent == false && povezanSaPredmetom == true">
<div class="form-group row">
<label class="control-label text-right col-md-2" for="PERSONS_ON_EVENT">{{$t('Lica')}}</label>
<div class="col-md-8">
<ejs-multiselect id='PERSONS_ON_EVENT'
class="e-field"
name="PERSONS_ON_EVENT"
v-model="data.PERSONS_ON_EVENT"
:dataSource="PERSONS_ON_EVENT_data"
:fields='PERSONS_ON_EVENT_fields'
:allowFiltering='allowFiltering'>
</ejs-multiselect>
</div>
<div class="col-md-2">
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import Vue from "vue";
import { Query, DataManager, UrlAdaptor } from '@syncfusion/ej2-data';
import { AutoCompletePlugin, MultiSelectPlugin } from '@syncfusion/ej2-vue-dropdowns';
import { CheckBoxPlugin } from "@syncfusion/ej2-vue-buttons";
Vue.use(AutoCompletePlugin);
Vue.use(CheckBoxPlugin);
Vue.use(MultiSelectPlugin);
export default {
name: 'EventTemplate',
data() {
return {
data: {
povezanSaPredmetom: false,
},
povezanSaPredmetom: false,
COURT_NUMBER: false,
CASES_ID_data: [
{ value: 'Australia', id: 'AU' },
],
CASES_ID_fields: { text: 'value', value: 'id' },
PERSONS_ON_EVENT_data: [
{ value: 'Australia', id: 'AU' }
],
PERSONS_ON_EVENT_fields: { text: 'value', value: 'id' },
radnjaNaPredmetu: false,
schedulerEvent: true,
allowFiltering: true,
};
},
computed: {
CASES_ID_query: function () {
return new Query().addParams('sudskiBroj', JSON.stringify({ courtNumber: this.COURT_NUMBER }));
},
},
methods: {
COURT_NUMBER_onChange: function () {
var checkboxObj = event.target.ej2_instances[0];
this.COURT_NUMBER = checkboxObj.checked;
},
ON_CASE_onChange: function () {
var checkboxObj = event.target.ej2_instances[0];
//this.data.povezanSaPredmetom = checkboxObj.checked;
this.povezanSaPredmetom = checkboxObj.checked;
},
}
};
</script> |