package com.thankcreate.care.lab;
import com.markupartist.android.widget.ActionBar;
import com.markupartist.android.widget.ActionBar.Action;
import com.thankcreate.care.BaseActivity;
import com.thankcreate.care.R;
import com.thankcreate.care.R.layout;
import com.thankcreate.care.R.menu;
import com.thankcreate.care.status.StatusPostActivity;
import com.thankcreate.care.tool.misc.BlessHelper;
import com.thankcreate.care.tool.misc.BlessHelper.PostBlessItemListener;
import com.thankcreate.care.tool.misc.MiscTool;
import com.thankcreate.care.tool.misc.StringTool;
import com.thankcreate.care.tool.ui.ToastHelper;
import com.thankcreate.care.viewmodel.EntryType;
import com.umeng.analytics.MobclickAgent;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.text.Editable;
import android.text.InputFilter;
import android.text.TextWatcher;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
public class LabBlessPostActivity extends BaseActivity {
private ActionBar actionBar;
private EditText editTextName;
private EditText editTextContent;
private TextView textCount;
private int maxCount = 60;
private BlessHelper blessHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lab_bless_post);
initActionBar();
initControl();
}
private void initActionBar() {
actionBar = (ActionBar) findViewById(R.id.actionbar);
actionBar.setTitle("发布");
actionBar.addActionRight(new Action() {
@Override
public void performAction(View view) {
sendClick();
MobclickAgent.onEvent(LabBlessPostActivity.this, "PostBless");
}
@Override
public int getDrawable() {
return R.drawable.thumb_send;
}
});
addActionBarBackButton(actionBar);
}
private void initControl() {
editTextName = (EditText) findViewById(R.id.lab_bless_post_name_input);
String myName = MiscTool.getMyName();
if(StringTool.isNullOrEmpty(myName))
{
myName = "匿名";
}
editTextName.setText(myName);
editTextContent = (EditText) findViewById(R.id.lab_bless_post_content_input);
editTextContent.addTextChangedListener(mOnTextChanged);
editTextContent.requestFocus();
InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(maxCount);
editTextContent.setFilters(FilterArray);
textCount = (TextView) findViewById(R.id.bless_post_count_left);
textCount.setText(String.valueOf(maxCount));
}
private void sendClick() {
new AlertDialog.Builder(this)
.setIcon(R.drawable.thumb_send)
.setTitle("确认提交?")
.setPositiveButton("确认", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
sendInternal();
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
}
})
.create().show();
}
private void sendInternal()
{
String content = editTextContent.getText().toString();
if(StringTool.isNullOrEmpty(content))
{
ToastHelper.show("只有智商超过250才能看见大人写的字么?",true);
return;
}
if(blessHelper == null)
blessHelper = new BlessHelper();
actionBar.getProgressBar().post(new Runnable() {
@Override
public void run() {
actionBar.setProgressBarVisibility(View.VISIBLE);
}
});
blessHelper.postBlessItem(editTextName.getText().toString(),
editTextContent.getText().toString(),
mPostBlessItemListener);
}
private PostBlessItemListener mPostBlessItemListener = new PostBlessItemListener()
{
@Override
public void postComplete() {
ToastHelper.show("发送成功", true);
actionBar.getProgressBar().post(new Runnable() {
@Override
public void run() {
actionBar.setProgressBarVisibility(View.GONE);
}
});
finish();
}
};
private TextWatcher mOnTextChanged = new TextWatcher(){
@Override
public void afterTextChanged(Editable s) {
int length = s.toString().length();
textCount.setText(String.valueOf(maxCount - length));
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
}
};
}