summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java')
-rw-r--r--app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java74
1 files changed, 31 insertions, 43 deletions
diff --git a/app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java b/app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java
index c08cb9cb7..27b0878d4 100644
--- a/app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java
+++ b/app/src/main/java/app/fedilab/android/fragments/DisplayAdminReportsFragment.java
@@ -14,10 +14,9 @@ package app.fedilab.android.fragments;
* You should have received a copy of the GNU General Public License along with Fedilab; if not,
* see <http://www.gnu.org/licenses>. */
-import android.app.AlertDialog;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.LayoutInflater;
@@ -27,24 +26,27 @@ import android.widget.RelativeLayout;
import android.widget.Toast;
import androidx.annotation.NonNull;
+import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.DividerItemDecoration;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import org.jetbrains.annotations.NotNull;
+
import java.util.ArrayList;
import java.util.List;
import app.fedilab.android.R;
import app.fedilab.android.activities.LoginActivity;
import app.fedilab.android.asynctasks.PostAdminActionAsyncTask;
-import app.fedilab.android.asynctasks.RetrieveAccountsAsyncTask;
import app.fedilab.android.client.API;
import app.fedilab.android.client.APIResponse;
import app.fedilab.android.client.Entities.AdminAction;
import app.fedilab.android.client.Entities.Report;
import app.fedilab.android.drawers.ReportsListAdapter;
+import app.fedilab.android.helper.Helper;
import app.fedilab.android.interfaces.OnAdminActionInterface;
import es.dmoral.toasty.Toasty;
@@ -59,9 +61,7 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
private Context context;
private AsyncTask<Void, Void, Void> asyncTask;
private ReportsListAdapter reportsListAdapter;
- private String max_id;
private List<Report> reports;
- private RetrieveAccountsAsyncTask.Type type;
private RelativeLayout mainLoader, nextElementLoader, textviewNoAction;
private boolean firstLoad;
private SwipeRefreshLayout swipeRefreshLayout;
@@ -82,7 +82,6 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
if (bundle != null) {
unresolved = bundle.getBoolean("unresolved", true);
}
- max_id = null;
firstLoad = true;
flag_loading = true;
swiped = false;
@@ -109,7 +108,7 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
mLayoutManager = new LinearLayoutManager(context);
lv_reports.setLayoutManager(mLayoutManager);
lv_reports.addOnScrollListener(new RecyclerView.OnScrollListener() {
- public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
+ public void onScrolled(@NotNull RecyclerView recyclerView, int dx, int dy) {
if (dy > 0) {
int visibleItemCount = mLayoutManager.getChildCount();
int totalItemCount = mLayoutManager.getItemCount();
@@ -129,18 +128,14 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
}
});
- swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
- @Override
- public void onRefresh() {
- max_id = null;
- reports = new ArrayList<>();
- firstLoad = true;
- flag_loading = true;
- swiped = true;
- AdminAction adminAction = new AdminAction();
- adminAction.setUnresolved(unresolved);
- asyncTask = new PostAdminActionAsyncTask(context, API.adminAction.GET_REPORTS, null, adminAction, DisplayAdminReportsFragment.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
- }
+ swipeRefreshLayout.setOnRefreshListener(() -> {
+ reports = new ArrayList<>();
+ firstLoad = true;
+ flag_loading = true;
+ swiped = true;
+ AdminAction adminAction = new AdminAction();
+ adminAction.setUnresolved(unresolved);
+ asyncTask = new PostAdminActionAsyncTask(context, API.adminAction.GET_REPORTS, null, adminAction, DisplayAdminReportsFragment.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
});
AdminAction adminAction = new AdminAction();
@@ -155,15 +150,8 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
}
- /**
- * Refresh report in list
- */
- public void refreshFilter() {
- reportsListAdapter.notifyDataSetChanged();
- }
-
@Override
- public void onAttach(Context context) {
+ public void onAttach(@NotNull Context context) {
super.onAttach(context);
this.context = context;
}
@@ -191,22 +179,24 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
//Admin right not granted through the API?
if (apiResponse.getError().getStatusCode() == 403) {
AlertDialog.Builder builderInner;
- builderInner = new AlertDialog.Builder(context, R.style.AppThemeDark);
+ SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, android.content.Context.MODE_PRIVATE);
+ int theme = sharedpreferences.getInt(Helper.SET_THEME, Helper.THEME_DARK);
+ int style;
+ if (theme == Helper.THEME_DARK) {
+ style = R.style.DialogDark;
+ } else if (theme == Helper.THEME_BLACK) {
+ style = R.style.DialogBlack;
+ } else {
+ style = R.style.Dialog;
+ }
+ builderInner = new AlertDialog.Builder(context, style);
builderInner.setTitle(R.string.reconnect_account);
builderInner.setMessage(R.string.reconnect_account_message);
- builderInner.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- dialog.dismiss();
- }
- });
- builderInner.setPositiveButton(R.string.validate, new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- Intent intent = new Intent(context, LoginActivity.class);
- intent.putExtra("admin", true);
- context.startActivity(intent);
- }
+ builderInner.setNegativeButton(R.string.cancel, (dialog, which) -> dialog.dismiss());
+ builderInner.setPositiveButton(R.string.validate, (dialog, which) -> {
+ Intent intent = new Intent(context, LoginActivity.class);
+ intent.putExtra("admin", true);
+ context.startActivity(intent);
});
builderInner.show();
} else {
@@ -226,8 +216,6 @@ public class DisplayAdminReportsFragment extends Fragment implements OnAdminActi
else
textviewNoAction.setVisibility(View.GONE);
- max_id = apiResponse.getMax_id();
-
if (swiped) {
reportsListAdapter = new ReportsListAdapter(this.reports);
lv_reports.setAdapter(reportsListAdapter);