package com.example.slidingmenu.yujing.client.activity.broadcast;
import org.json.JSONException;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.AsyncTask.Status;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import com.example.slidingmenu.R;
import com.example.slidingmenu.yujing.client.application.ClientApplication;
import com.example.slidingmenu.yujing.client.network.Request;
import com.example.slidingmenu.yujing.client.network.mode.RequestParam;
import com.example.slidingmenu.yujing.client.network.mode.ResponseParam;
public class SendBroadCastActivity extends Activity{
private EditText content;
private SendTopicTask mSendTopicTask;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.send_broadcast_layout);
content = (EditText) findViewById(R.id.edit_broad);
}
public void onSendClick(View view) {
ClientApplication capp = (ClientApplication) this.getApplication();
SharedPreferences shared = capp.getLoginUserInfo();
String contents = content.getText().toString();
if(TextUtils.isEmpty(contents)) {
content.setError(getText(R.string.empty_content));
return;
}
String uid = shared.getString(RequestParam.USER_NAME, "");
String time = String.valueOf((int)(System.currentTimeMillis()/1000));
String[] params = new String[] {
contents,
time,
shared.getString(RequestParam.NAME, uid),
"baidu.com",
};
RequestParam sp = new RequestParam();
sp.setUserName(uid);
sp.setPassword(shared.getString(RequestParam.PASSWORD, ""));
sp.setRandomKey("1234");
sp.setRequestType(RequestParam.ADD_TOPIC);
sp.setParams(params);
mSendTopicTask = new SendTopicTask();
mSendTopicTask.execute(sp);
}
@Override
protected void onDestroy() {
if(mSendTopicTask != null && mSendTopicTask.getStatus()==Status.RUNNING) {
mSendTopicTask.cancel(false);
}
super.onDestroy();
}
public class SendTopicTask extends AsyncTask<RequestParam, Integer, Integer>{
ProgressDialog dialog;
@Override
protected void onPreExecute() {
dialog = ProgressDialog.show(SendBroadCastActivity.this,
"",
getText(R.string.waiting));
super.onPreExecute();
}
@Override
protected Integer doInBackground(RequestParam... params) {
RequestParam requestParam = params[0];
String res = Request.request(requestParam.getJSON());
if ("".equals(res)) {
return -1;
}
try {
ResponseParam response = new ResponseParam(res);
System.out.println("返回参数:"+response.toString());
if (response.getResult() != ResponseParam.RESULT_SUCCESS) {
return -1;
}
} catch (JSONException e) {
e.printStackTrace();
}
return 0;
}
@Override
protected void onPostExecute(Integer result) {
dialog.dismiss();
if(result != ResponseParam.RESULT_SUCCESS) {
Toast.makeText(SendBroadCastActivity.this, getText(R.string.add_topic_fail), 0).show();
} else {
Toast.makeText(SendBroadCastActivity.this, getText(R.string.add_topic_succ), 0).show();
setResult(RESULT_OK);
finish();
}
super.onPostExecute(result);
}
}
}