1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
package cgeo.calendar;
import android.content.ContentValues;
import android.net.Uri;
import android.text.Html;
import java.util.Date;
class AddEntry extends AbstractAddEntry {
private int calendarId;
/**
* @param entry
* @param calendarId
* The selected calendar
*/
public AddEntry(CalendarEntry entry, CalendarActivity activity, int calendarId) {
super(entry, activity);
this.calendarId = calendarId;
}
@Override
protected void addEntryToCalendarInternal() {
final Uri calendarProvider = Compatibility.getCalendarEventsProviderURI();
final Date eventDate = entry.parseDate();
final String description = entry.parseDescription();
final String eventLocation = entry.parseLocation();
// values
final ContentValues event = new ContentValues();
event.put("calendar_id", calendarId);
if (entry.getStartTimeMinutes() >= 0) {
event.put("dtstart", eventDate.getTime() + entry.getStartTimeMinutes() * 60000L);
}
else {
event.put("dtstart", eventDate.getTime() + 43200000); // noon
event.put("dtend", eventDate.getTime() + 43200000 + 3600000); // + one hour
event.put("allDay", 1);
}
event.put("eventTimezone", "UTC");
event.put("title", Html.fromHtml(entry.getName()).toString());
event.put("description", description);
if (eventLocation.length() > 0) {
event.put("eventLocation", eventLocation);
}
event.put("hasAlarm", 0);
activity.getContentResolver().insert(calendarProvider, event);
}
}
|