From d0edd8437dee9bd64c5cf79cc17e8c7c4d9ecc0a Mon Sep 17 00:00:00 2001 From: tom79 Date: Sat, 22 Jun 2019 15:15:47 +0200 Subject: [PATCH] Fix pending --- .../activities/AccountReportActivity.java | 4 ++- .../java/app/fedilab/android/client/API.java | 6 ++++ .../android/client/Entities/AccountAdmin.java | 30 ++++++++++++++----- 3 files changed, 31 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/app/fedilab/android/activities/AccountReportActivity.java b/app/src/main/java/app/fedilab/android/activities/AccountReportActivity.java index 98478fceb..138eff264 100644 --- a/app/src/main/java/app/fedilab/android/activities/AccountReportActivity.java +++ b/app/src/main/java/app/fedilab/android/activities/AccountReportActivity.java @@ -73,6 +73,7 @@ public class AccountReportActivity extends BaseActivity implements OnAdminAction private Report report; private Group allow_reject_group; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -82,6 +83,7 @@ public class AccountReportActivity extends BaseActivity implements OnAdminAction report = null; AccountAdmin targeted_account = null; Bundle b = getIntent().getExtras(); + if (b != null) { account_id = b.getString("account_id", null); targeted_account = b.getParcelable("targeted_account"); @@ -206,7 +208,7 @@ public class AccountReportActivity extends BaseActivity implements OnAdminAction Toasty.error(getApplicationContext(), getString(R.string.toast_error), Toast.LENGTH_LONG).show(); return; } - if(!accountAdmin.isConfirmed()){ + if(!accountAdmin.isApproved()){ allow_reject_group.setVisibility(View.VISIBLE); } diff --git a/app/src/main/java/app/fedilab/android/client/API.java b/app/src/main/java/app/fedilab/android/client/API.java index 631fa4278..6cf1ed17b 100644 --- a/app/src/main/java/app/fedilab/android/client/API.java +++ b/app/src/main/java/app/fedilab/android/client/API.java @@ -19,6 +19,7 @@ import android.content.Intent; import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; +import android.util.Log; import androidx.localbroadcastmanager.content.LocalBroadcastManager; @@ -5200,6 +5201,11 @@ public class API { }else{ accountAdmin.setDisabled(false); } + if( !resobj.isNull("approved")) { + accountAdmin.setApproved(resobj.getBoolean("approved")); + }else{ + accountAdmin.setApproved(false); + } }catch (Exception ignored){} return accountAdmin; } diff --git a/app/src/main/java/app/fedilab/android/client/Entities/AccountAdmin.java b/app/src/main/java/app/fedilab/android/client/Entities/AccountAdmin.java index 978aabc9a..112567a7b 100644 --- a/app/src/main/java/app/fedilab/android/client/Entities/AccountAdmin.java +++ b/app/src/main/java/app/fedilab/android/client/Entities/AccountAdmin.java @@ -35,6 +35,7 @@ public class AccountAdmin implements Parcelable { private boolean disabled; private Account account; private API.adminAction action; + private boolean approved; public String getId() { return id; @@ -136,6 +137,22 @@ public class AccountAdmin implements Parcelable { this.domain = domain; } + public API.adminAction getAction() { + return action; + } + + public void setAction(API.adminAction action) { + this.action = action; + } + + public boolean isApproved() { + return approved; + } + + public void setApproved(boolean approved) { + this.approved = approved; + } + @Override public int describeContents() { return 0; @@ -155,6 +172,8 @@ public class AccountAdmin implements Parcelable { dest.writeByte(this.silenced ? (byte) 1 : (byte) 0); dest.writeByte(this.disabled ? (byte) 1 : (byte) 0); dest.writeParcelable(this.account, flags); + dest.writeInt(this.action == null ? -1 : this.action.ordinal()); + dest.writeByte(this.approved ? (byte) 1 : (byte) 0); } protected AccountAdmin(Parcel in) { @@ -171,6 +190,9 @@ public class AccountAdmin implements Parcelable { this.silenced = in.readByte() != 0; this.disabled = in.readByte() != 0; this.account = in.readParcelable(Account.class.getClassLoader()); + int tmpAction = in.readInt(); + this.action = tmpAction == -1 ? null : API.adminAction.values()[tmpAction]; + this.approved = in.readByte() != 0; } public static final Creator CREATOR = new Creator() { @@ -184,12 +206,4 @@ public class AccountAdmin implements Parcelable { return new AccountAdmin[size]; } }; - - public API.adminAction getAction() { - return action; - } - - public void setAction(API.adminAction action) { - this.action = action; - } }