aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java10
-rw-r--r--src/main/res/menu/muc_details_context.xml4
-rw-r--r--src/main/res/values/strings.xml8
3 files changed, 16 insertions, 6 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java b/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java
index 5272c922..2185c3af 100644
--- a/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java
@@ -245,6 +245,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
MenuItem giveAdminPrivileges = menu.findItem(R.id.give_admin_privileges);
MenuItem removeAdminPrivileges = menu.findItem(R.id.remove_admin_privileges);
MenuItem removeFromRoom = menu.findItem(R.id.remove_from_room);
+ MenuItem banFromConference = menu.findItem(R.id.ban_from_conference);
startConversation.setVisible(true);
if (self.getAffiliation().ranks(MucOptions.Affiliation.ADMIN) &&
self.getAffiliation().outranks(user.getAffiliation())) {
@@ -254,13 +255,15 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
} else {
removeMembership.setVisible(true);
}
+ banFromConference.setVisible(true);
+ } else {
+ removeFromRoom.setVisible(true);
}
if (user.getAffiliation() != MucOptions.Affiliation.ADMIN) {
giveAdminPrivileges.setVisible(true);
} else {
removeAdminPrivileges.setVisible(true);
}
- removeFromRoom.setVisible(true);
}
}
@@ -289,6 +292,9 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
case R.id.remove_from_room:
removeFromRoom(mSelectedUser);
return true;
+ case R.id.ban_from_conference:
+ xmppConnectionService.changeAffiliationInConference(mConversation,mSelectedUser.getJid(), MucOptions.Affiliation.OUTCAST,this);
+ return true;
default:
return super.onContextItemSelected(item);
}
@@ -299,7 +305,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
xmppConnectionService.changeAffiliationInConference(mConversation,user.getJid(), MucOptions.Affiliation.NONE,this);
} else {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
- builder.setTitle(R.string.ban_user_from_conference);
+ builder.setTitle(R.string.ban_from_conference);
builder.setMessage(getString(R.string.removing_from_public_conference,user.getName()));
builder.setNegativeButton(R.string.cancel,null);
builder.setPositiveButton(R.string.ban_now,new DialogInterface.OnClickListener() {
diff --git a/src/main/res/menu/muc_details_context.xml b/src/main/res/menu/muc_details_context.xml
index ad9f174a..dc0f5d3e 100644
--- a/src/main/res/menu/muc_details_context.xml
+++ b/src/main/res/menu/muc_details_context.xml
@@ -22,6 +22,10 @@
android:title="@string/remove_membership"
android:visible="false"/>
<item
+ android:id="@+id/ban_from_conference"
+ android:title="@string/ban_from_conference"
+ android:visible="false" />
+ <item
android:id="@+id/remove_from_room"
android:title="@string/remove_from_room"
android:visible="false"/>
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index c8e84d75..651fa234 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -412,12 +412,12 @@
<string name="member">Member</string>
<string name="advanced_mode">Advanced mode</string>
<string name="grant_membership">Grant membership</string>
- <string name="remove_membership">Remove membership</string>
+ <string name="remove_membership">Revoke membership</string>
<string name="grant_admin_privileges">Grant admin privileges</string>
- <string name="remove_admin_privileges">Remove admin privileges</string>
- <string name="remove_from_room">Remove from room</string>
+ <string name="remove_admin_privileges">Revoke admin privileges</string>
+ <string name="remove_from_room">Remove from conference</string>
<string name="could_not_change_affiliation">Could not change affiliation</string>
- <string name="ban_user_from_conference">Ban user from conference</string>
+ <string name="ban_from_conference">Ban from conference</string>
<string name="removing_from_public_conference">You are trying to remove %s from a public conference. The only way to do that is to ban that user for ever.</string>
<string name="ban_now">Ban now</string>
</resources>