Skip to content

Commit

Permalink
Merge 19f55aa into 6f4af8b
Browse files Browse the repository at this point in the history
  • Loading branch information
Kratious committed Oct 28, 2018
2 parents 6f4af8b + 19f55aa commit 3fc05f2
Show file tree
Hide file tree
Showing 5 changed files with 80 additions and 16 deletions.
28 changes: 28 additions & 0 deletions src/main/java/seedu/address/commons/util/DateTimeUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,13 @@
*/
public class DateTimeUtil {

public static final int UPCOMING_EVENT = 0;
public static final int ONGOING_EVENT = 1;
public static final int COMPLETED_EVENT = 2;
public static final int INVALID_STATUS = 3;

public static final String[] STATUS = { "Upcoming", "Ongoing", "Completed" };

/**
* Returns a friendly date string of an Event Date object.
*/
Expand Down Expand Up @@ -38,4 +45,25 @@ public static String getFriendlyTimeFromEventTime(Time time) {
return time.value;
}
}

public static int getEventStatus(Date startDate, Time startTime, Date endDate, Time endTime) {
SimpleDateFormat inf = new SimpleDateFormat("dd-MM-yyyy HH:mm");

try {
java.util.Date start = inf.parse(startDate + " " + startTime);
java.util.Date end = inf.parse(endDate + " " + endTime);
java.util.Date now = new java.util.Date();

if (now.compareTo(start) < 0) {
return UPCOMING_EVENT;
} else if (now.compareTo(start) >= 0 && now.compareTo(end) <= 0) {
return ONGOING_EVENT;
} else {
return COMPLETED_EVENT;
}

} catch (ParseException e) {
return INVALID_STATUS;
}
}
}
8 changes: 8 additions & 0 deletions src/main/java/seedu/address/ui/EventCard.java
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,14 @@ public EventCard(Event event, int displayedIndex) {
endTime.setText("");
}

int status = DateTimeUtil.getEventStatus(event.getStartDate(), event.getStartTime(),
event.getEndDate(), event.getEndTime());
if (status != DateTimeUtil.INVALID_STATUS) {
Label statusLabel = new Label(DateTimeUtil.STATUS[status]);
statusLabel.getStyleClass().add(DateTimeUtil.STATUS[status]);
tags.getChildren().add(statusLabel);
}

event.getTags().forEach(tag -> tags.getChildren().add(new Label(tag.tagName)));
}

Expand Down
17 changes: 13 additions & 4 deletions src/main/java/seedu/address/ui/EventPanel.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public class EventPanel extends UiPart<Region> {
@FXML
private Label eventDescriptionLabel;
@FXML
private FlowPane tagsLabel;
private FlowPane tags;

private ObservableList<Record> recordList;

Expand Down Expand Up @@ -75,8 +75,17 @@ private void setLabelText(Event event) {
+ String.valueOf(recordList.filtered(new RecordContainsEventIdPredicate(event.getEventId())).size()));
eventDescriptionLabel.setText(event.getDescription().description);

tagsLabel.getChildren().clear();
event.getTags().forEach(tag -> tagsLabel.getChildren().add(new Label(tag.tagName)));
tags.getChildren().clear();

int status = DateTimeUtil.getEventStatus(event.getStartDate(), event.getStartTime(),
event.getEndDate(), event.getEndTime());
if (status != DateTimeUtil.INVALID_STATUS) {
Label statusLabel = new Label(DateTimeUtil.STATUS[status]);
statusLabel.getStyleClass().add(DateTimeUtil.STATUS[status]);
tags.getChildren().add(statusLabel);
}

event.getTags().forEach(tag -> tags.getChildren().add(new Label(tag.tagName)));
}

@Subscribe
Expand All @@ -98,7 +107,7 @@ public void clearDetails() {
eventEndTimeLabel.setText("");
eventDescriptionLabel.setText("");

tagsLabel.getChildren().clear();
tags.getChildren().clear();
}

}
41 changes: 30 additions & 11 deletions src/main/resources/view/Custom.css
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@

-font-: #98a6ad;
-background-: #323b44;
-experimental-: #4c5667;
-card-1-: #36404a;
-card-2-: #474f57;
-table-border-: #98a6ad;
Expand All @@ -19,6 +20,12 @@
-blue-primary-: #0336FF;
-red-primary-: #FF0266;

-red-1-: #ef5350;
-purple-1-: #7266ba;
-green-1-: #00b19d;
-blue-t-: #42A5F5;
-amber-1-: #f7931e;

-blue-1-: #004ba0;
-blue-2-: #1976d2;
-blue-3-: #63a4ff;
Expand Down Expand Up @@ -88,10 +95,11 @@
#contextIndicator {
-fx-font-family: "Open Sans";
-fx-background-color: -blue-2-;
-fx-padding: 10 10 10 10;
-fx-padding: 10;
}

#contextIndicator .label {
-fx-text-alignment: left;
-fx-font-size: 1.5em;
-fx-padding: 5 5 5 8;
-fx-text-fill: white;
Expand Down Expand Up @@ -254,19 +262,30 @@
-fx-padding: 0 0 5 0;
}

#tagsLabel {
-fx-hgap: 7;
-fx-vgap: 3;
-fx-padding: 0 0 20 0;
}

#tagsLabel .label {
#tags .label {
-fx-text-fill: white;
-fx-background-color: #3e7b91;
-fx-padding: 1 3 1 3;
-fx-background-color: -blue-2-;
-fx-padding: 2 5 2 5;
-fx-border-radius: 2;
-fx-background-radius: 2;
-fx-font-size: 11;
-fx-font-size: 11.5;
-fx-font-family: "Open Sans"
}

#tags .Upcoming {
-fx-background-color: -amber-1-;
}

#tags .Ongoing {
-fx-background-color: -green-1-;
}

#tags .Completed {
-fx-background-color: -red-1-;
}

#eventDateBox {
-fx-padding: 20 0 0 0;
}

#eventDescriptionLabel {
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/view/EventPanel.fxml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<VBox fx:id="eventPanel" styleClass="browser-panel" xmlns="http://javafx.com/javafx/8.0.121" xmlns:fx="http://javafx.com/fxml/1">
<VBox alignment="CENTER_LEFT">
<Label fx:id="eventNameLabel" styleClass="event-name" />
<FlowPane fx:id="tagsLabel" />
<FlowPane fx:id="tags" />
<HBox fx:id="eventDateBox" alignment="CENTER_LEFT">
<Label fx:id="eventStartDateLabel" styleClass="detail" />
<Label fx:id="eventEndDateLabel" styleClass="detail" />
Expand Down

0 comments on commit 3fc05f2

Please sign in to comment.