EventEdit: add uuid to events.

master
Tom Hacohen 7 years ago
parent 2af9e41404
commit df538c368a

@ -20,7 +20,8 @@
"redux-persist": "^5.4.0", "redux-persist": "^5.4.0",
"redux-thunk": "^2.2.0", "redux-thunk": "^2.2.0",
"sjcl": "git+https://github.com/etesync/sjcl", "sjcl": "git+https://github.com/etesync/sjcl",
"urijs": "^1.16.1" "urijs": "^1.16.1",
"uuid": "^3.1.0"
}, },
"scripts": { "scripts": {
"start": "react-scripts-ts start", "start": "react-scripts-ts start",
@ -42,6 +43,7 @@
"@types/redux-actions": "^2.2.3", "@types/redux-actions": "^2.2.3",
"@types/redux-logger": "^3.0.5", "@types/redux-logger": "^3.0.5",
"@types/sjcl": "^1.0.28", "@types/sjcl": "^1.0.28",
"@types/urijs": "^1.15.34" "@types/urijs": "^1.15.34",
"@types/uuid": "^3.4.3"
} }
} }

@ -7,6 +7,7 @@ import MenuItem from 'material-ui/MenuItem';
import DateTimePicker from './DateTimePicker'; import DateTimePicker from './DateTimePicker';
import * as uuid from 'uuid';
import * as ICAL from 'ical.js'; import * as ICAL from 'ical.js';
import * as EteSync from './api/EteSync'; import * as EteSync from './api/EteSync';
@ -15,6 +16,7 @@ import { EventType } from './pim-types';
class EventEdit extends React.Component { class EventEdit extends React.Component {
state: { state: {
uid: string,
title: string; title: string;
allDay: boolean; allDay: boolean;
start: string; start: string;
@ -34,6 +36,7 @@ class EventEdit extends React.Component {
constructor(props: any) { constructor(props: any) {
super(props); super(props);
this.state = { this.state = {
uid: '',
title: '', title: '',
allDay: false, allDay: false,
location: '', location: '',
@ -45,12 +48,15 @@ class EventEdit extends React.Component {
if (this.props.event !== undefined) { if (this.props.event !== undefined) {
const event = this.props.event; const event = this.props.event;
this.state.uid = event.uid;
this.state.title = event.title ? event.title : ''; this.state.title = event.title ? event.title : '';
this.state.allDay = event.startDate.isDate; this.state.allDay = event.startDate.isDate;
this.state.start = event.startDate.toString(); this.state.start = event.startDate.toString();
this.state.end = event.endDate.toString(); this.state.end = event.endDate.toString();
this.state.location = event.location ? event.location : ''; this.state.location = event.location ? event.location : '';
this.state.description = event.description ? event.description : ''; this.state.description = event.description ? event.description : '';
} else {
this.state.uid = uuid.v4();
} }
if (props.journalUid) { if (props.journalUid) {
@ -89,6 +95,7 @@ class EventEdit extends React.Component {
} }
let event = new EventType(); let event = new EventType();
event.uid = this.state.uid;
event.summary = this.state.title; event.summary = this.state.title;
event.startDate = ICAL.Time.fromString(this.state.start); event.startDate = ICAL.Time.fromString(this.state.start);
event.endDate = ICAL.Time.fromString(this.state.end); event.endDate = ICAL.Time.fromString(this.state.end);

@ -94,6 +94,12 @@
dependencies: dependencies:
"@types/jquery" "*" "@types/jquery" "*"
"@types/uuid@^3.4.3":
version "3.4.3"
resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-3.4.3.tgz#121ace265f5569ce40f4f6d0ff78a338c732a754"
dependencies:
"@types/node" "*"
abab@^1.0.3: abab@^1.0.3:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"

Loading…
Cancel
Save