Skip to content
Snippets Groups Projects
Commit c6e9f3ee authored by srosse's avatar srosse
Browse files

OO-4448: add classification to the Event VO

parent 27692428
No related branches found
No related tags found
No related merge requests found
...@@ -54,6 +54,14 @@ public class CalendarWSHelper { ...@@ -54,6 +54,14 @@ public class CalendarWSHelper {
kalEvent.setLiveStreamUrl(event.getLiveStreamUrl()); kalEvent.setLiveStreamUrl(event.getLiveStreamUrl());
kalEvent.setExternalId(event.getExternalId()); kalEvent.setExternalId(event.getExternalId());
kalEvent.setExternalSource(event.getExternalSource()); kalEvent.setExternalSource(event.getExternalSource());
if(event.getClassification() != null) {
int classification = event.getClassification().intValue();
if(classification == KalendarEvent.CLASS_PRIVATE
|| classification == KalendarEvent.CLASS_PUBLIC
|| classification == KalendarEvent.CLASS_X_FREEBUSY) {
kalEvent.setClassification(classification);
}
}
} }
static boolean hasReadAccess(KalendarRenderWrapper wrapper) { static boolean hasReadAccess(KalendarRenderWrapper wrapper) {
......
...@@ -45,6 +45,8 @@ public class EventVO { ...@@ -45,6 +45,8 @@ public class EventVO {
private Date end; private Date end;
private boolean allDayEvent; private boolean allDayEvent;
private Integer classification;
private String liveStreamUrl; private String liveStreamUrl;
@Schema(required = true, description = "Action to be performed on managedFlags", allowableValues = { @Schema(required = true, description = "Action to be performed on managedFlags", allowableValues = {
...@@ -79,6 +81,7 @@ public class EventVO { ...@@ -79,6 +81,7 @@ public class EventVO {
managedFlags = CalendarManagedFlag.toString(event.getManagedFlags()); managedFlags = CalendarManagedFlag.toString(event.getManagedFlags());
externalId = event.getExternalId(); externalId = event.getExternalId();
externalSource = event.getExternalSource(); externalSource = event.getExternalSource();
classification = event.getClassification();
} }
public String getId() { public String getId() {
...@@ -157,6 +160,14 @@ public class EventVO { ...@@ -157,6 +160,14 @@ public class EventVO {
this.calendarId = calendarId; this.calendarId = calendarId;
} }
public Integer getClassification() {
return classification;
}
public void setClassification(Integer classification) {
this.classification = classification;
}
public String getManagedFlags() { public String getManagedFlags() {
return managedFlags; return managedFlags;
} }
......
...@@ -186,6 +186,42 @@ public class CourseCalendarTest extends OlatRestTestCase { ...@@ -186,6 +186,42 @@ public class CourseCalendarTest extends OlatRestTestCase {
conn.shutdown(); conn.shutdown();
} }
@Test
public void putVisibleCalendarEvent() throws IOException, URISyntaxException {
RestConnection conn = new RestConnection();
assertTrue(conn.login(auth1.getName(), "A6B7C8"));
//create an event
EventVO event = new EventVO();
Calendar cal = Calendar.getInstance();
event.setBegin(cal.getTime());
cal.add(Calendar.HOUR_OF_DAY, 1);
event.setEnd(cal.getTime());
String subject = UUID.randomUUID().toString();
event.setSubject(subject);
event.setClassification(KalendarEvent.CLASS_PUBLIC);
URI eventUri = UriBuilder.fromUri(getContextURI()).path("repo").path("courses")
.path(course1.getResourceableId().toString()).path("calendar").path("event").build();
HttpPut putEventMethod = conn.createPut(eventUri, MediaType.APPLICATION_JSON, true);
conn.addJsonEntity(putEventMethod, event);
HttpResponse putEventResponse = conn.execute(putEventMethod);
assertEquals(200, putEventResponse.getStatusLine().getStatusCode());
EntityUtils.consume(putEventResponse.getEntity());
//check if the event is saved
KalendarRenderWrapper calendarWrapper = calendarManager.getCourseCalendar(course1);
Collection<KalendarEvent> savedEvents = calendarWrapper.getKalendar().getEvents();
KalendarEvent savedEvent = savedEvents.stream()
.filter(e -> subject.equals(e.getSubject()))
.findFirst().get();
Assert.assertEquals(KalendarEvent.CLASS_PUBLIC, savedEvent.getClassification());
conn.shutdown();
}
@Test @Test
public void putCalendarEvents() throws IOException, URISyntaxException { public void putCalendarEvents() throws IOException, URISyntaxException {
RestConnection conn = new RestConnection(); RestConnection conn = new RestConnection();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment