Event URL pulling
This commit is contained in:
@@ -150,7 +150,7 @@ public class ModDetailOverviewAdapter extends RecyclerView.Adapter<RecyclerView.
|
||||
i.mTitle.setText(assignment.getTitle());
|
||||
i.mSubLeft.setText(assignment.getStatus());
|
||||
i.mSubRight.setText(Conversion.getModifiedDate(assignment.getDueDate()));
|
||||
i.mView.setOnClickListener(view -> log.d("Refeerence to:", SECTION_ASSIGNMENT, index));
|
||||
i.mView.setOnClickListener(view -> log.d("Reference to:", SECTION_ASSIGNMENT, index));
|
||||
break;
|
||||
case SECTION_EVENTS:
|
||||
Event event = mValue.events.get(index);
|
||||
@@ -160,11 +160,11 @@ public class ModDetailOverviewAdapter extends RecyclerView.Adapter<RecyclerView.
|
||||
Conversion.getModifiedDate(event.getStartDate()),
|
||||
Conversion.getModifiedDate(event.getEndDate())
|
||||
));
|
||||
i.mView.setOnClickListener(view -> log.d("Refeerence to:", SECTION_ASSIGNMENT, index));
|
||||
i.mView.setOnClickListener(view -> log.d("Reference to:", SECTION_ASSIGNMENT, index));
|
||||
}
|
||||
case TYPE_SHOW_MORE:
|
||||
CustomViewHolder c = (CustomViewHolder) holder;
|
||||
c.mView.setOnClickListener(view -> log.d("Refeerence to:", data.second, -1));
|
||||
c.mView.setOnClickListener(view -> log.d("Reference to:", data.second, -1));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,9 +4,17 @@ import java.util.Date;
|
||||
|
||||
public class Event {
|
||||
private final String id;
|
||||
private final String type;
|
||||
private final String title;
|
||||
private final long duration;
|
||||
private final long firstTime;
|
||||
|
||||
Event(String id) {
|
||||
Event(String id, String type, String title, long duration, long firstTime) {
|
||||
this.id = id;
|
||||
this.type = type;
|
||||
this.title = title;
|
||||
this.duration = duration;
|
||||
this.firstTime = firstTime;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
@@ -15,22 +23,25 @@ public class Event {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "ID: "+getId();
|
||||
return "ID: "+getId()+
|
||||
"\nType: "+getType()+
|
||||
"\nStart Date: "+getStartDate()+
|
||||
"\nEnd date: "+getEndDate();
|
||||
}
|
||||
|
||||
public String getTitle() {
|
||||
return "Event Title";
|
||||
return this.title;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return "Event Type";
|
||||
return this.type;
|
||||
}
|
||||
|
||||
public long getStartDate() {
|
||||
return (new Date()).getTime();
|
||||
return this.firstTime;
|
||||
}
|
||||
|
||||
public long getEndDate() {
|
||||
return (new Date()).getTime();
|
||||
return this.firstTime+this.duration;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -178,6 +178,33 @@ public class KVVModuleList extends HTTPService {
|
||||
}
|
||||
|
||||
private void getEventsUpgrade(String ID, final NetworkCallback<ArrayList<Event>> callback, final NetworkErrorCallback errorCallback) {
|
||||
callback.onResponse(new ArrayList<Event>());
|
||||
//https://kvv.imp.fu-berlin.de/direct/calendar/site/91c6e9cc-58eb-486d-ab99-a22a40997d1b.json
|
||||
get(String.format("https://kvv.imp.fu-berlin.de/direct/calendar/site/%s.json", ID), token.getCookies(), response -> {
|
||||
String body = response.getParsed();
|
||||
if (body == null) {
|
||||
errorCallback.onError(new NetworkError(101401, 403, "No calendar retrieved!"));
|
||||
return;
|
||||
}
|
||||
ArrayList<Event> events = new ArrayList<>();
|
||||
try {
|
||||
JSONObject json = new JSONObject(body);
|
||||
JSONArray sites = json.getJSONArray("calendar_collection");
|
||||
|
||||
for (int i = 0; i < sites.length(); i++) {
|
||||
log.d("CALENDAR ENTRY FOUND!", i);
|
||||
JSONObject site = sites.getJSONObject(i);
|
||||
String id = site.getString("eventId");
|
||||
String type = site.getString("type");
|
||||
String title = site.getString("title");
|
||||
long duration = site.getLong("duration");
|
||||
long firstTime = site.getJSONObject("firstTime").getLong("time");
|
||||
events.add(new Event(id, type, title, duration, firstTime));
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
errorCallback.onError(new NetworkError(101402, 403, "Cannot parse calendar entries!"));
|
||||
return;
|
||||
}
|
||||
callback.onResponse(events);
|
||||
}, error -> errorCallback.onError(new NetworkError(101403, error.networkResponse.statusCode, "Cannot get calendar entries!")));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user