package com.athena.asm.util.task;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.widget.Toast;
import com.athena.asm.data.Post;
import com.athena.asm.viewmodel.PostListViewModel;
public class ForwardPostToMailTask extends AsyncTask<String, Integer, String> {
private ProgressDialog pdialog;
private PostListViewModel m_viewModel;
private Post m_post;
private boolean m_result;
private Context m_context;
private int m_type;
private String m_emailOrID;
public static int FORWARD_TO_SELF = 0;
public static int FORWARD_TO_EMAIL = 1;
public static int FORWARD_TO_EMAIL_GROUP = 2;
public ForwardPostToMailTask(Context ctx, PostListViewModel viewModel, Post post, int type, String recipient) {
m_viewModel = viewModel;
m_context = ctx;
pdialog = new ProgressDialog(ctx);
m_post = post;
m_type = type;
m_emailOrID = recipient;
}
@Override
protected void onPreExecute() {
pdialog.setMessage("转寄中...");
pdialog.show();
}
@Override
protected String doInBackground(String... params) {
if (m_type == FORWARD_TO_SELF) {
m_result = m_viewModel.getSmthSupport().forwardPostToMailBox(m_post);
} else if (m_type == FORWARD_TO_EMAIL) {
m_result = m_viewModel.getSmthSupport().forwardPostToExternalMail(m_post, m_emailOrID);
} else {
m_result = m_viewModel.getSmthSupport().forwardGroupPostToExternalMail(m_post, m_emailOrID);
}
pdialog.cancel();
return null;
}
@Override
protected void onPostExecute(String result) {
if (m_emailOrID == null || m_emailOrID == "") {
m_emailOrID = "自己";
}
if (m_result) {
Toast.makeText(m_context, "转寄成功! (To:" + m_emailOrID + ")", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(m_context, "转寄失败.. (To:" + m_emailOrID + ")", Toast.LENGTH_SHORT).show();
}
}
}