mirror of
https://codeberg.org/tom79/Fedilab.git
synced 2025-09-15 08:20:18 +03:00
Codes for default quote policy in EditProfileActivity
This commit is contained in:
parent
a5fc536902
commit
05342b113a
3 changed files with 31 additions and 0 deletions
|
@ -197,6 +197,18 @@ public class EditProfileActivity extends BaseBarActivity {
|
|||
binding.visibilityGroup.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
String quotePolicy = Helper.getCurrentAccount(EditProfileActivity.this).mastodon_account.source.quotePolicy;
|
||||
if (quotePolicy != null) {
|
||||
switch (quotePolicy) {
|
||||
case "nobody" -> binding.quoteApprovalPolicyNoOne.setChecked(true);
|
||||
case "followers" -> binding.quoteApprovalPolicyFollowersOnly.setChecked(true);
|
||||
case "public" -> binding.quoteApprovalPolicyAnyone.setChecked(true);
|
||||
}
|
||||
} else {
|
||||
binding.quoteApprovalPolicyLabel.setVisibility(View.GONE);
|
||||
binding.quoteApprovalPolicyGroup.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
binding.bot.setChecked(Helper.getCurrentAccount(EditProfileActivity.this).mastodon_account.bot);
|
||||
binding.discoverable.setChecked(Helper.getCurrentAccount(EditProfileActivity.this).mastodon_account.discoverable);
|
||||
|
||||
|
@ -386,6 +398,17 @@ public class EditProfileActivity extends BaseBarActivity {
|
|||
return null;
|
||||
}
|
||||
|
||||
private String getQuotePolicy() {
|
||||
if (binding.quoteApprovalPolicyNoOne.isChecked()) {
|
||||
return "nobody";
|
||||
} else if (binding.quoteApprovalPolicyFollowersOnly.isChecked()) {
|
||||
return "followers";
|
||||
} else if (binding.quoteApprovalPolicyAnyone.isChecked()) {
|
||||
return "public";
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
LinkedHashMap<Integer, Field.FieldParams> getFields() {
|
||||
LinkedHashMap<Integer, Field.FieldParams> fields = new LinkedHashMap<>();
|
||||
for (int i = 0; i < binding.fieldsContainer.getChildCount(); i++) {
|
||||
|
@ -421,6 +444,7 @@ public class EditProfileActivity extends BaseBarActivity {
|
|||
binding.locked.isChecked(),
|
||||
getPrivacy(),
|
||||
binding.sensitive.isChecked(),
|
||||
getQuotePolicy(),
|
||||
null,
|
||||
getFields(),
|
||||
getFeaturedHashtags()
|
||||
|
|
|
@ -24,6 +24,8 @@ public class Source implements Serializable {
|
|||
public String privacy;
|
||||
@SerializedName("sensitive")
|
||||
public boolean sensitive;
|
||||
@SerializedName("quote_policy")
|
||||
public String quotePolicy;
|
||||
@SerializedName("language")
|
||||
public String language;
|
||||
@SerializedName("note")
|
||||
|
@ -40,5 +42,7 @@ public class Source implements Serializable {
|
|||
public boolean sensitive;
|
||||
@SerializedName("language")
|
||||
public String language;
|
||||
@SerializedName("quote_policy")
|
||||
public String quotePolicy;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -251,6 +251,7 @@ public class AccountsVM extends AndroidViewModel {
|
|||
* @param locked Whether manual approval of follow requests is required.
|
||||
* @param privacy Default post privacy for authored statuses.
|
||||
* @param sensitive Whether to mark authored statuses as sensitive by default.
|
||||
* @param quotePolicy Default value for who can quote statuses
|
||||
* @param language Default language to use for authored statuses. (ISO 6391)
|
||||
* @param fields Profile metadata name (By default, max 4 fields and 255 characters per property/value)
|
||||
* @param featuredHashtags Featured hashtags that will be displayed on the profile
|
||||
|
@ -264,6 +265,7 @@ public class AccountsVM extends AndroidViewModel {
|
|||
Boolean locked,
|
||||
String privacy,
|
||||
Boolean sensitive,
|
||||
String quotePolicy,
|
||||
String language,
|
||||
LinkedHashMap<Integer, Field.FieldParams> fields,
|
||||
List<String> featuredHashtags
|
||||
|
@ -286,6 +288,7 @@ public class AccountsVM extends AndroidViewModel {
|
|||
accountParams.source.privacy = privacy;
|
||||
accountParams.source.language = language;
|
||||
accountParams.source.sensitive = sensitive;
|
||||
accountParams.source.quotePolicy = quotePolicy;
|
||||
accountParams.fields = fields;
|
||||
Call<Account> accountCall = mastodonAccountsService.update_credentials(token, accountParams);
|
||||
// Call<Account> accountCall = mastodonAccountsService.update_credentials(token, discoverable, bot, displayName, note, locked, privacy, sensitive, language, fields);
|
||||
|
|
Loading…
Reference in a new issue