mirror of
https://github.com/pierre42100/ComunicAndroid
synced 2024-11-30 09:16:36 +00:00
Conversations can be deleted
This commit is contained in:
parent
eee570993a
commit
2c29b49c24
@ -155,6 +155,28 @@ public class ConversationsListHelper {
|
|||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete a conversation specified by its ID
|
||||||
|
*
|
||||||
|
* @param convID The ID of the conversation to delete
|
||||||
|
* @return True in case of success / false else
|
||||||
|
*/
|
||||||
|
public boolean delete(int convID){
|
||||||
|
|
||||||
|
//Delete the conversation on the API
|
||||||
|
APIRequestParameters params = new APIRequestParameters(mContext, "conversations/delete");
|
||||||
|
params.addParameter("conversationID", ""+convID);
|
||||||
|
|
||||||
|
try {
|
||||||
|
new APIRequest().exec(params);
|
||||||
|
} catch (Exception e){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Success
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get online (download) the list of all the conversations
|
* Get online (download) the list of all the conversations
|
||||||
*
|
*
|
||||||
|
@ -111,23 +111,8 @@ public class ConversationsListFragment extends Fragment implements AdapterView.O
|
|||||||
//Get progress bar wheel
|
//Get progress bar wheel
|
||||||
progressBar = view.findViewById(R.id.fragment_conversationslist_progressbar);
|
progressBar = view.findViewById(R.id.fragment_conversationslist_progressbar);
|
||||||
|
|
||||||
//Get the list of conversations
|
//Refresh conversations list
|
||||||
new AsyncTask<Void, Void, ArrayList<ConversationsInfo>>(){
|
refresh_conversations_list();
|
||||||
@Override
|
|
||||||
protected ArrayList<ConversationsInfo> doInBackground(Void... params) {
|
|
||||||
|
|
||||||
//Get the list of conversations
|
|
||||||
ArrayList<ConversationsInfo> list = conversationsListHelper.get();
|
|
||||||
process_conversations_list(list);
|
|
||||||
return list;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onPostExecute(ArrayList<ConversationsInfo> list) {
|
|
||||||
display_conversations_list(list);
|
|
||||||
}
|
|
||||||
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
|
||||||
|
|
||||||
//Set the open conversation listener
|
//Set the open conversation listener
|
||||||
try {
|
try {
|
||||||
@ -150,6 +135,34 @@ public class ConversationsListFragment extends Fragment implements AdapterView.O
|
|||||||
.setSelectedNavigationItem(R.id.main_bottom_navigation_conversations);
|
.setSelectedNavigationItem(R.id.main_bottom_navigation_conversations);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Refresh the list of conversations
|
||||||
|
*/
|
||||||
|
private void refresh_conversations_list(){
|
||||||
|
|
||||||
|
//Display loading wheel
|
||||||
|
progressBar.setVisibility(View.VISIBLE);
|
||||||
|
|
||||||
|
//Get the list of conversations
|
||||||
|
new AsyncTask<Void, Void, ArrayList<ConversationsInfo>>(){
|
||||||
|
@Override
|
||||||
|
protected ArrayList<ConversationsInfo> doInBackground(Void... params) {
|
||||||
|
|
||||||
|
//Get the list of conversations
|
||||||
|
ArrayList<ConversationsInfo> list = conversationsListHelper.get();
|
||||||
|
process_conversations_list(list);
|
||||||
|
return list;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onPostExecute(ArrayList<ConversationsInfo> list) {
|
||||||
|
display_conversations_list(list);
|
||||||
|
}
|
||||||
|
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Process the conversation list
|
* Process the conversation list
|
||||||
*
|
*
|
||||||
@ -157,7 +170,7 @@ public class ConversationsListFragment extends Fragment implements AdapterView.O
|
|||||||
*
|
*
|
||||||
* @param list The list of conversations
|
* @param list The list of conversations
|
||||||
*/
|
*/
|
||||||
public void process_conversations_list(ArrayList<ConversationsInfo> list){
|
private void process_conversations_list(ArrayList<ConversationsInfo> list){
|
||||||
|
|
||||||
//Check if got the list
|
//Check if got the list
|
||||||
if(list == null){
|
if(list == null){
|
||||||
@ -361,7 +374,19 @@ public class ConversationsListFragment extends Fragment implements AdapterView.O
|
|||||||
*
|
*
|
||||||
* @param convID The ID of the conversation to delete
|
* @param convID The ID of the conversation to delete
|
||||||
*/
|
*/
|
||||||
private void delete_conversation(int convID){
|
private void delete_conversation(final int convID){
|
||||||
Toast.makeText(getActivity(), "Delete conversation: " + convID, Toast.LENGTH_SHORT).show();
|
new AsyncTask<Void, Void, Void>(){
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Void doInBackground(Void... params) {
|
||||||
|
conversationsListHelper.delete(convID);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onPostExecute(Void aVoid) {
|
||||||
|
refresh_conversations_list();
|
||||||
|
}
|
||||||
|
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -72,4 +72,5 @@
|
|||||||
<string name="popup_deleteconversation_messsage">Are you sure do you want to remove this conversation ? All the messages you posted will be deleted. If you are the owner of the conversation, all the messages will be removed.</string>
|
<string name="popup_deleteconversation_messsage">Are you sure do you want to remove this conversation ? All the messages you posted will be deleted. If you are the owner of the conversation, all the messages will be removed.</string>
|
||||||
<string name="popup_deleteconversation_confirm">Delete</string>
|
<string name="popup_deleteconversation_confirm">Delete</string>
|
||||||
<string name="popup_deleteconversation_cancel">Cancel</string>
|
<string name="popup_deleteconversation_cancel">Cancel</string>
|
||||||
|
<string name="fragment_conversationslist_err_del_conversation">Could not delete conversation !</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
Loading…
Reference in New Issue
Block a user