Nach einen erneuten Login wird der Nutzer nun auf das FRAGMENT weitergeleitet, das er vor der Aktualisierung gesehen hat. Allerdings beim Kalender auf das Aktuelle Datum und bei einem Modul immer zur Modul Übersicht.
Deutsche Strings für Kantine erweitert
This commit is contained in:
@@ -54,6 +54,10 @@ public class MainActivity extends AppCompatActivity
|
|||||||
private static final int FRAGMENT_CANTEENS_DETAILS = 6;
|
private static final int FRAGMENT_CANTEENS_DETAILS = 6;
|
||||||
private static final int FRAGMENT_PREFERENCES = 7;
|
private static final int FRAGMENT_PREFERENCES = 7;
|
||||||
|
|
||||||
|
//zum speichern des angezeigten FRAGMENTs bei einem erneuten login (z.B. Cookies abgelaufen)
|
||||||
|
private int last_Fragment = FRAGMENT_NONE;
|
||||||
|
private String last_Fragment_id = "";
|
||||||
|
|
||||||
private static final String ARG_FRAGMENT_PAGE = "fragment_page";
|
private static final String ARG_FRAGMENT_PAGE = "fragment_page";
|
||||||
private static final String ARG_FRAGMENT_STATUS = "fragment_status";
|
private static final String ARG_FRAGMENT_STATUS = "fragment_status";
|
||||||
|
|
||||||
@@ -162,7 +166,6 @@ public class MainActivity extends AppCompatActivity
|
|||||||
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
||||||
// Handle navigation view item clicks here.
|
// Handle navigation view item clicks here.
|
||||||
int id = item.getItemId();
|
int id = item.getItemId();
|
||||||
|
|
||||||
switch (id) {
|
switch (id) {
|
||||||
case R.id.nav_modules:
|
case R.id.nav_modules:
|
||||||
changeFragment(FRAGMENT_MODULES);
|
changeFragment(FRAGMENT_MODULES);
|
||||||
@@ -192,8 +195,8 @@ public class MainActivity extends AppCompatActivity
|
|||||||
this.toLogoutState();
|
this.toLogoutState();
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
|
}
|
||||||
DrawerLayout drawer = findViewById(R.id.drawer_layout);
|
DrawerLayout drawer = findViewById(R.id.drawer_layout);
|
||||||
drawer.closeDrawer(GravityCompat.START);
|
drawer.closeDrawer(GravityCompat.START);
|
||||||
|
|
||||||
@@ -245,7 +248,22 @@ public class MainActivity extends AppCompatActivity
|
|||||||
}
|
}
|
||||||
|
|
||||||
private int getDefaultFragmentAfterLogin() {
|
private int getDefaultFragmentAfterLogin() {
|
||||||
return FRAGMENT_MODULES;
|
return getDefaultFragmentAfterLogin(new String[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getDefaultFragmentAfterLogin(String[] id) {
|
||||||
|
//log.d("Cookies last_Fragment", last_Fragment);
|
||||||
|
if (last_Fragment == FRAGMENT_NONE){
|
||||||
|
id[0]="";
|
||||||
|
return FRAGMENT_MODULES;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//log.d("changeFragment last_Fragment_id gesetzt", last_Fragment_id);
|
||||||
|
id[0] = last_Fragment_id;
|
||||||
|
return last_Fragment;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void toLogoutState() {
|
private void toLogoutState() {
|
||||||
@@ -277,7 +295,12 @@ public class MainActivity extends AppCompatActivity
|
|||||||
toLogoutState();
|
toLogoutState();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.getKVV().login(credentials.getUsername(), credentials.getPassword(), success -> toLoginState(success, getDefaultFragmentAfterLogin(), ""),
|
String[] id = new String[1];
|
||||||
|
id[0] = "";
|
||||||
|
|
||||||
|
int fragment = getDefaultFragmentAfterLogin(id);
|
||||||
|
//log.d("changeFragment in checkAndDoLogin:", fragment, id[0]);
|
||||||
|
this.getKVV().login(credentials.getUsername(), credentials.getPassword(), success -> toLoginState(success, fragment , id[0]),
|
||||||
error -> {
|
error -> {
|
||||||
log.e(error);
|
log.e(error);
|
||||||
toLogoutState();
|
toLogoutState();
|
||||||
@@ -290,32 +313,45 @@ public class MainActivity extends AppCompatActivity
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void changeFragment(int newFragment, String newData) {
|
private void changeFragment(int newFragment, String newData) {
|
||||||
|
//log.d("changeFragment: ", newFragment, newData);
|
||||||
onTitleTextChange(R.string.courses);
|
onTitleTextChange(R.string.courses);
|
||||||
Fragment fragment;
|
Fragment fragment;
|
||||||
switch (newFragment) {
|
switch (newFragment) {
|
||||||
case FRAGMENT_MODULES:
|
case FRAGMENT_MODULES:
|
||||||
fragment = ModulesFragment.newInstance();
|
fragment = ModulesFragment.newInstance();
|
||||||
|
last_Fragment = FRAGMENT_MODULES;
|
||||||
|
last_Fragment_id = "";
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_MODULES_DETAILS:
|
case FRAGMENT_MODULES_DETAILS:
|
||||||
fragment = ModDetailFragment.newInstance(newData);
|
fragment = ModDetailFragment.newInstance(newData);
|
||||||
|
last_Fragment = FRAGMENT_MODULES_DETAILS;
|
||||||
|
last_Fragment_id = newData;
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_LOGIN:
|
case FRAGMENT_LOGIN:
|
||||||
fragment = LoginFragment.newInstance();
|
fragment = LoginFragment.newInstance();
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_SCHEDULE:
|
case FRAGMENT_SCHEDULE:
|
||||||
fragment = ScheduleFragment.newInstance();
|
fragment = ScheduleFragment.newInstance();
|
||||||
|
last_Fragment = FRAGMENT_SCHEDULE;
|
||||||
|
last_Fragment_id = "";
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_CANTEENS:
|
case FRAGMENT_CANTEENS:
|
||||||
fragment = CanteensFragment.newInstance();
|
fragment = CanteensFragment.newInstance();
|
||||||
|
last_Fragment = FRAGMENT_CANTEENS;
|
||||||
|
last_Fragment_id = "";
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_CANTEENS_DETAILS:
|
case FRAGMENT_CANTEENS_DETAILS:
|
||||||
fragment = DaySwitcherFragment.newInstance(Integer.parseInt(newData));
|
fragment = DaySwitcherFragment.newInstance(Integer.parseInt(newData));
|
||||||
|
last_Fragment = FRAGMENT_NONE;
|
||||||
|
last_Fragment_id = newData;
|
||||||
break;
|
break;
|
||||||
case FRAGMENT_PREFERENCES:
|
case FRAGMENT_PREFERENCES:
|
||||||
fragment = PrefsFragment.newInstance();
|
fragment = PrefsFragment.newInstance();
|
||||||
|
//last_Fragment = FRAGMENT_NONE;
|
||||||
break;
|
break;
|
||||||
default: // FRAGMENT_STARTUP
|
default: // FRAGMENT_STARTUP
|
||||||
fragment = StartupFragment.newInstance();
|
fragment = StartupFragment.newInstance();
|
||||||
|
//last_Fragment = FRAGMENT_NONE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -46,4 +46,12 @@
|
|||||||
<string name="pref_price_group_title">Kantinenpreisgruppe</string>
|
<string name="pref_price_group_title">Kantinenpreisgruppe</string>
|
||||||
<string name="pref_price_group_summary">Zeige nur Preise einer Gruppe</string>
|
<string name="pref_price_group_summary">Zeige nur Preise einer Gruppe</string>
|
||||||
<string name="pref_price_group_dialog">Preisgruppe</string>
|
<string name="pref_price_group_dialog">Preisgruppe</string>
|
||||||
|
<string name="meals">Hauptgerichte</string>
|
||||||
|
<string name="special_meals">Spezial Gerichte</string>
|
||||||
|
<string name="side_dishes">Beilagen</string>
|
||||||
|
<string name="desserts">Nachtisch</string>
|
||||||
|
<string name="salats">Salate</string>
|
||||||
|
<string name="soups">Suppen</string>
|
||||||
|
<string name="starters">Vorspeisen</string>
|
||||||
|
<string name="others">Sonstiges</string>
|
||||||
</resources>
|
</resources>
|
||||||
Reference in New Issue
Block a user