diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser
index 027bd40..0471557 100644
Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
deleted file mode 100644
index 96cc43e..0000000
--- a/.idea/compiler.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
deleted file mode 100644
index e7bedf3..0000000
--- a/.idea/copyright/profiles_settings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index ad53516..4e024a8 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,11 +5,12 @@
@@ -24,26 +25,5 @@
-
-
-
-
-
-
-
-
-
-
- 1.8
-
-
-
-
-
-
-
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
index 62306f1..bee9e70 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,7 +2,7 @@
-
+
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
index 94a25f7..8306744 100644
--- a/.idea/vcs.xml
+++ b/.idea/vcs.xml
@@ -1,6 +1,7 @@
+
\ No newline at end of file
diff --git a/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java b/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java
index 2c14419..560790f 100644
--- a/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java
+++ b/app/src/main/java/de/sebse/fuplanner/fragments/ModulesFragment.java
@@ -14,6 +14,7 @@ import android.view.ViewGroup;
import de.sebse.fuplanner.MainActivity;
import de.sebse.fuplanner.R;
import de.sebse.fuplanner.services.KVV.Modules;
+import de.sebse.fuplanner.tools.logging.Logger;
import de.sebse.fuplanner.tools.network.NetworkCallback;
import de.sebse.fuplanner.tools.network.NetworkError;
import de.sebse.fuplanner.tools.network.NetworkErrorCallback;
@@ -30,6 +31,7 @@ public class ModulesFragment extends Fragment {
//private static final String ARG_COLUMN_COUNT = "column-count";
// TODO: Customize parameters
private OnModulesFragmentInteractionListener mListener;
+ private Logger log = new Logger(this);
/**
* Mandatory empty constructor for the fragment manager to instantiate the
@@ -76,6 +78,7 @@ public class ModulesFragment extends Fragment {
((MainActivity) getActivity()).getKVV().getModuleList(new NetworkCallback() {
@Override
public void onResponse(@NonNull Modules success) {
+ log.d(success);
adapter.setModules(success);
}
}, new NetworkErrorCallback() {
diff --git a/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java b/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java
index 13130c5..5415f10 100644
--- a/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java
+++ b/app/src/main/java/de/sebse/fuplanner/fragments/moddetails/ModDetailOverviewFragment.java
@@ -73,7 +73,7 @@ public class ModDetailOverviewFragment extends Fragment {
View view = inflater.inflate(R.layout.fragment_mod_detail_overview, container, false);
if (activity != null) {
KVV kvv = activity.getKVV();
- kvv.getModuleDetails(mItemPos, new NetworkCallback() {
+ /*kvv.getModuleDetails(mItemPos, new NetworkCallback() {
@Override
public void onResponse(@NonNull Modules.UpgradeModule success) {
log.d(success);
@@ -84,7 +84,7 @@ public class ModDetailOverviewFragment extends Fragment {
public void onError(NetworkError error) {
log.e(error);
}
- });
+ });*/
}
return view;
}
diff --git a/app/src/main/java/de/sebse/fuplanner/services/GoogleAuth/GoogleAuth.java b/app/src/main/java/de/sebse/fuplanner/services/GoogleAuth/GoogleAuth.java
index 6956702..cef6b6f 100644
--- a/app/src/main/java/de/sebse/fuplanner/services/GoogleAuth/GoogleAuth.java
+++ b/app/src/main/java/de/sebse/fuplanner/services/GoogleAuth/GoogleAuth.java
@@ -94,6 +94,7 @@ public class GoogleAuth {
// This means only a hint is available, but we are handling that
// elsewhere so no need to act here.
} else {
+ credentialsListener.onCredentials(null);
Log.w(TAG, "Unexpected status code: " + ae.getStatusCode());
}
}
diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java
index 6a07a5a..fb35568 100644
--- a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java
+++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVV.java
@@ -56,7 +56,7 @@ public class KVV {
});
}
- public void getModuleDetails(final int index, final NetworkCallback callback, final NetworkErrorCallback error) {
+ /*public void getModuleDetails(final int index, final NetworkCallback callback, final NetworkErrorCallback error) {
this.getLastToken(new LastTokenCallback() {
@Override
public void onReceived(LoginToken token) {
@@ -68,7 +68,7 @@ public class KVV {
modules.getModuleDetails(index, callback, error);
}
});
- }
+ }*/
private void getLastToken(LastTokenCallback lastTokenCallback) {
if (this.isUpdating) {
diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java
index 5d538ec..51f9a73 100644
--- a/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java
+++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/KVVModuleList.java
@@ -146,7 +146,7 @@ public class KVVModuleList extends HTTPService {
});
}
*/
- public void getModuleList(NetworkCallback callback, final NetworkErrorCallback errorCallback) {
+ public void getModuleList(final NetworkCallback callback, final NetworkErrorCallback errorCallback) {
get("https://kvv.imp.fu-berlin.de/direct/site.json", token.getCookies(), new Response.Listener() {
@Override
public void onResponse(Result response) {
@@ -155,24 +155,27 @@ public class KVVModuleList extends HTTPService {
errorCallback.onError(new NetworkError(101101, 403, "No module list retreived!"));
return;
}
+ Modules modules = new Modules();
try {
JSONObject json = new JSONObject(body);
JSONArray sites = json.getJSONArray("site_collection");
for (int i = 0; i < sites.length(); i++) {
JSONObject site = sites.getJSONObject(i);
- moduleList = new Modules();
String semester = site.getJSONObject("props").getString("term_eid");
HashSet lvNumbers = new HashSet<>();
- for (MatchResult matchResult: allMatches("[0-9]*", site.getJSONObject("props").getString("kvv_lvnumbers"))) {
+ for (MatchResult matchResult : allMatches(Pattern.compile("[0-9]+"), site.getJSONObject("props").getString("kvv_lvnumbers"))) {
lvNumbers.add(matchResult.group());
}
- String title = site.getJSONObject("props").getString("entityTitle");
+ String title = site.getString("entityTitle");
HashSet lecturers = new HashSet<>();
for (String lecturer : site.getJSONObject("props").getString("kvv_lecturers").split("#")) {
- lecturers.add(new Lecturer(lecturer));
+ if (lecturer.length() > 2)
+ lecturers.add(new Lecturer(lecturer));
}
- moduleList.addModule(semester, lvNumbers, title, lecturers, "", "");
+ String type = site.getJSONObject("props").getString("kvv_coursetype");
+ String id = site.getString("id");
+ modules.addModule(semester, lvNumbers, title, lecturers, type, id);
}
} catch (JSONException e) {
errorCallback.onError(new NetworkError(101102, 403, "Cannot parse module list!"));
@@ -181,6 +184,8 @@ public class KVVModuleList extends HTTPService {
errorCallback.onError(new NetworkError(101103, 403, "Cannot parse module list!"));
return;
}
+ moduleList = modules;
+ callback.onResponse(moduleList);
}
}, new Response.ErrorListener() {
@Override
@@ -192,7 +197,7 @@ public class KVVModuleList extends HTTPService {
- public void getModuleDetails(final int index, final NetworkCallback callback, final NetworkErrorCallback errorCallback) {
+ /*public void getModuleDetails(final int index, final NetworkCallback callback, final NetworkErrorCallback errorCallback) {
queueModuleDetails.add(new AsyncQueue.AsyncQueueCallback() {
@Override
public void run() {
@@ -225,7 +230,7 @@ public class KVVModuleList extends HTTPService {
private void upgradeModule(Modules.SimpleModule module, final NetworkCallback callback, final NetworkErrorCallback errorCallback) {
callback.onResponse("cool ID");
- }
+ }*/
diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/Lecturer.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/Lecturer.java
index 0fbb8c9..e5da409 100644
--- a/app/src/main/java/de/sebse/fuplanner/services/KVV/Lecturer.java
+++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/Lecturer.java
@@ -30,4 +30,11 @@ class Lecturer {
public String getMail() {
return mail;
}
+
+ @Override
+ public String toString() {
+ return "First name: "+getFirstname()+
+ "\nSurname: "+getSurname()+
+ "\nMail: "+getMail();
+ }
}
diff --git a/app/src/main/java/de/sebse/fuplanner/services/KVV/Modules.java b/app/src/main/java/de/sebse/fuplanner/services/KVV/Modules.java
index f23ebaf..c8d6337 100644
--- a/app/src/main/java/de/sebse/fuplanner/services/KVV/Modules.java
+++ b/app/src/main/java/de/sebse/fuplanner/services/KVV/Modules.java
@@ -1,7 +1,6 @@
package de.sebse.fuplanner.services.KVV;
import android.support.annotation.NonNull;
-import android.util.Pair;
import java.util.ArrayList;
import java.util.HashSet;
@@ -14,37 +13,22 @@ import de.sebse.fuplanner.tools.Triplet;
* Created by sebastian on 29.10.17.
*/
-public class Modules extends EventEmitter>> implements Iterable {
+public class Modules /*extends EventEmitter>>*/ implements Iterable {
private final ArrayList list;
Modules() {
this.list = new ArrayList<>();
}
- Module addModule(String semester, HashSet lvNumber, String title, HashSet lecturer, String type, String upgradeURI) {
- Module m = new SimpleModule(semester, lvNumber, title, lecturer, type, upgradeURI);
+ Module addModule(String semester, HashSet lvNumber, String title, HashSet lecturer, String type, String ID) {
+ Module m = new Module(semester, lvNumber, title, lecturer, type, ID);
this.list.add(m);
return m;
}
- UpgradeModule upgradeItem(int index, String moduleID) {
- Module sm = list.get(index);
- if (sm instanceof SimpleModule) {
- UpgradeModule um = new UpgradeModule((SimpleModule) sm, moduleID);
- list.set(index, um);
- return um;
- } else {
- return (UpgradeModule) sm;
- }
- }
-
- public void setDescription(int index, String description) {
- Module entry = this.list.get(index);
- if (!(entry instanceof UpgradeModule)) {
- return;
- }
- ((UpgradeModule) entry).description = description;
- emit(new Triplet<>(index, ((UpgradeModule) entry), new ArrayList()));
+ @Override
+ public String toString() {
+ return this.list.toString();
}
@NonNull
@@ -77,19 +61,20 @@ public class Modules extends EventEmitter lvNumber;
public final String title;
- public final HashSet lecturer;
+ public final HashSet lecturer;
public final String type;
+ private final String ID;
/*private Module() {
this(null, null, null, null, null);
throw new AssertionError("Do not use this constructor!");
}*/
- private Module(String semester, HashSet lvNumber, String title, HashSet lecturer, String type) {
+ private Module(String semester, HashSet lvNumber, String title, HashSet lecturer, String type, String ID) {
semester = semester.replace("Sommersemester", "SS").replace("Wintersemester", "WS");
semester = semester.replaceAll("[0-9]{2}([0-9]{2})", "$1");
@@ -98,6 +83,7 @@ public class Modules extends EventEmitter lvNumber, String title, HashSet lecturer, String type, String upgradeURI) {
- super(semester, lvNumber, title, lecturer, type);
- this.upgradeURI = upgradeURI;
- }
-
- @Override
- public String toString() {
- return super.toString()+
- "\nupgradeURI: "+upgradeURI;
- }
- }
-
- public class UpgradeModule extends Module {
- final String moduleID;
- public String description = null;
-
- private UpgradeModule(SimpleModule module, String moduleID) {
- super(module.semester, module.lvNumber, module.title, module.lecturer, module.type);
- this.moduleID = moduleID;
- }
-
- @Override
- public String toString() {
- return super.toString()+
- "\nmoduleID: "+moduleID+
- "\ndescription: "+description;
+ "\ntype: "+type+
+ "\nID: "+ID;
}
}
}