package com.way.chat.activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import com.way.chat.common.bean.User;
import com.way.chat.common.tran.bean.TranObject;
import com.way.chat.common.tran.bean.TranObjectType;
import com.way.client.Client;
import com.way.client.ClientOutputThread;
import com.way.util.DialogHelp;
import com.way.util.Encode;
public class RegisterView extends SuperView implements OnClickListener {
private Button mBtnRegister;
private Button mRegBack;
private EditText mEmailEt, mNameEt, mPasswdEt, mPasswdEt2;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register);
initView();
}
public void initView() {
mBtnRegister = (Button) findViewById(R.id.register_btn);
mRegBack = (Button) findViewById(R.id.reg_back_btn);
mBtnRegister.setOnClickListener(this);
mRegBack.setOnClickListener(this);
mEmailEt = (EditText) findViewById(R.id.reg_email);
mNameEt = (EditText) findViewById(R.id.reg_name);
mPasswdEt = (EditText) findViewById(R.id.reg_password);
mPasswdEt2 = (EditText) findViewById(R.id.reg_password2);
}
private Dialog mDialog = null;
private void showRequestDialog() {
if (mDialog != null) {
mDialog.dismiss();
mDialog = null;
}
mDialog = DialogHelp.creatRequestDialog(this, "正在注册中...");
mDialog.show();
}
@Override
public void onBackPressed() {// 捕获返回键
// TODO Auto-generated method stub
toast(RegisterView.this);
}
// @Override
// public boolean onKeyDown(int keyCode, KeyEvent event) {
// switch (keyCode) {
// case KeyEvent.KEYCODE_BACK:
// toast(RegisterActivity.this);
// break;
//
// default:
// break;
// }
// return true;
// }
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.register_btn:
// showRequestDialog();
estimate();
break;
case R.id.reg_back_btn:
toast(RegisterView.this);
break;
default:
break;
}
}
private void toast(Context context) {
new AlertDialog.Builder(context).setTitle("QQ注册")
.setMessage("确定要退出本次注册吗?")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
finish();
}
}).setNegativeButton("取消", null).create().show();
}
private void estimate() {
String email = mEmailEt.getText().toString();
String name = mNameEt.getText().toString();
String passwd = mPasswdEt.getText().toString();
String passwd2 = mPasswdEt2.getText().toString();
if (email.equals("") || name.equals("") || passwd.equals("")
|| passwd2.equals("")) {
DialogHelp.ToastDialog(RegisterView.this, "QQ注册", "带*项不能为空");
} else {
if (passwd.equals(passwd2)) {
showRequestDialog();
// 提交注册信息
if (GetMsgService.isStart) {// 如果已连接上服务器
Client client = GetMsgService.client;
ClientOutputThread out = client.getClientOutputThread();
TranObject<User> o = new TranObject<User>(
TranObjectType.REGISTER);
User u = new User();
u.setEmail(email);
u.setName(name);
u.setPassword(Encode.getEncode("MD5", passwd));
o.setObject(u);
out.setMsg(o);
} else {
if (mDialog.isShowing())
mDialog.dismiss();
DialogHelp.ToastDialog(this, "QQ注册", "服务器未响应!");
}
} else {
DialogHelp.ToastDialog(RegisterView.this, "QQ注册",
"两次输入的密码不同");
}
}
}
@SuppressWarnings("rawtypes")
@Override
public void getMessage(TranObject msg) {
// TODO Auto-generated method stub
switch (msg.getType()) {
case REGISTER:
User u = (User) msg.getObject();
int id = u.getId();
if (id > 0) {
if (mDialog != null) {
mDialog.dismiss();
mDialog = null;
}
DialogHelp.ToastDialog(RegisterView.this, "QQ注册",
"请牢记您的登录QQ:" + id);
} else {
if (mDialog != null) {
mDialog.dismiss();
mDialog = null;
}
DialogHelp.ToastDialog(RegisterView.this, "QQ注册",
"对不起!注册失败!");
}
break;
default:
break;
}
}
}