diff --git a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java index f5153fd7..bd7f4b35 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/activity/MainActivity.java @@ -397,6 +397,7 @@ public class MainActivity extends ThemedActivity navMenu.findItem(R.id.nav_profile).setVisible(appSettings.isVisibleInNavProfile()); navMenu.findItem(R.id.nav_public).setVisible(appSettings.isVisibleInNavPublic_activities()); navMenu.findItem(R.id.nav_stream).setVisible(true); + navMenu.findItem(R.id.nav_reports).setVisible(appSettings.isVisibleInNavReports()); // Hide whole group (for logged in use) if no pod was selected @@ -1027,8 +1028,8 @@ public class MainActivity extends ThemedActivity } else { snackbarNoInternet.show(); } - break; } + break; case R.id.nav_public: { if (WebHelper.isOnline(MainActivity.this)) { @@ -1036,14 +1037,24 @@ public class MainActivity extends ThemedActivity } else { snackbarNoInternet.show(); } - break; } + break; + + case R.id.nav_reports: { + AppLog.d(this, "NAV_REPORTS!"); + if(WebHelper.isOnline(MainActivity.this)) { + openDiasporaUrl(urls.getReportsUrl()); + } else { + snackbarNoInternet.show(); + } + } + break; case R.id.nav_exit: { moveTaskToBack(true); finish(); - break; } + break; case R.id.nav_settings: { startActivity(new Intent(this, SettingsActivity.class)); diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java index bb7ffac4..be0844f3 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/AppSettings.java @@ -380,6 +380,10 @@ public class AppSettings { return getBoolean(prefApp, R.string.pref_key__visibility_nav__contacts, false); } + public boolean isVisibleInNavReports() { + return getBoolean(prefApp, R.string.pref_key__visibility_nav__reports, false); + } + public void setPrimaryColorSettings(int base, int shade) { setInt(prefApp, R.string.pref_key__primary_color_base, base); setInt(prefApp, R.string.pref_key__primary_color_shade, shade); diff --git a/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java b/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java index 7eea373a..ce312a6d 100644 --- a/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java +++ b/app/src/main/java/com/github/dfa/diaspora_android/util/DiasporaUrlHelper.java @@ -60,6 +60,7 @@ public class DiasporaUrlHelper { public static final String SUBURL_NOTIFICATIONS_MENTIONED = "/notifications?type=mentioned"; public static final String SUBURL_NOTIFICATIONS_RESHARED = "/notifications?type=reshared"; public static final String SUBURL_NOTIFICATIONS_STARTED_SHARING = "/notifications?type=started_sharing"; + public static final String SUBURL_REPORTS = "/reports"; public DiasporaUrlHelper(AppSettings settings) { this.settings = settings; @@ -273,6 +274,16 @@ public class DiasporaUrlHelper { return getPodUrl() + SUBURL_MANAGE_CONTACTS; } + /** + * Return a url that points to the report page of the pod. + * Note: Only admins/moderators do have access to that url. + * + * @return https://(pod-domain.tld)/reports + */ + public String getReportsUrl() { + return getPodUrl() + SUBURL_REPORTS; + } + public String getSuburlNotificationsAlsoCommentedUrl() { return getPodUrl() + SUBURL_NOTIFICATIONS_ALSO_COMMENTED; } diff --git a/app/src/main/res/drawable/ic_report_black_48px.xml b/app/src/main/res/drawable/ic_report_black_48px.xml new file mode 100644 index 00000000..7777c6b4 --- /dev/null +++ b/app/src/main/res/drawable/ic_report_black_48px.xml @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/main__navdrawer.xml b/app/src/main/res/menu/main__navdrawer.xml index 7e863176..c57c38ee 100644 --- a/app/src/main/res/menu/main__navdrawer.xml +++ b/app/src/main/res/menu/main__navdrawer.xml @@ -53,6 +53,11 @@ android:icon="@drawable/ic_public_black_48px" android:title="@string/nav_public_activities" /> + + pref_catkey__visibility_navslider + General pref_key__visibility_navslider__exit pref_key__visibility_nav__help_license pref_key__visibility_nav__public_activities @@ -45,6 +46,8 @@ pref_key__visibility_nav__followed_tags pref_key__visibility_nav__profile pref_key__visibility_nav__contacts + Admin + pref_key__visibility_nav__report podUserProfile_avatar diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 25119cba..ed1e9193 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -70,6 +70,7 @@ Followed Tags Public activities @string/contacts + Report Share link as text Share screenshot of webpage diff --git a/app/src/main/res/xml/preferences__sub_navslider_vis.xml b/app/src/main/res/xml/preferences__sub_navslider_vis.xml index 0579a6be..9388ba22 100644 --- a/app/src/main/res/xml/preferences__sub_navslider_vis.xml +++ b/app/src/main/res/xml/preferences__sub_navslider_vis.xml @@ -1,54 +1,64 @@ - + - - - - - - - - - - - + + + + + + + + + + + - + + + + + + + \ No newline at end of file