package cn.fanfan.welcome; import org.apache.http.Header; import org.json.JSONException; import org.json.JSONObject; import com.loopj.android.http.AsyncHttpClient; import com.loopj.android.http.AsyncHttpResponseHandler; import com.loopj.android.http.RequestParams; import com.umeng.analytics.MobclickAgent; import cn.fanfan.common.Config; import cn.fanfan.common.MyProgressDialog; import cn.fanfan.main.R; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class RegisterActivity extends Activity { private EditText userNamEditText; private EditText maiEditText; private EditText passwdEditText; private EditText confirmPasswdEditText; private Button registerButton; private RegisterModel registerModel; private MyProgressDialog dialog; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.register); init(); } private void init() { // TODO Auto-generated method stub registerModel = new RegisterModel(); userNamEditText = (EditText) findViewById(R.id.register_username); maiEditText = (EditText) findViewById(R.id.register_mail); passwdEditText = (EditText) findViewById(R.id.register_passwd); confirmPasswdEditText = (EditText) findViewById(R.id.register_repasswd); registerButton = (Button) findViewById(R.id.register_ok); registerButton.setOnClickListener(new Click()); } private class Click implements OnClickListener { @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.register_ok: registerModel.setUserName(userNamEditText.getText().toString()); registerModel.setMail(maiEditText.getText().toString()); registerModel.setPasswd(passwdEditText.getText().toString()); registerModel.setConfirmPasswd(confirmPasswdEditText.getText() .toString()); if (!registerModel.getMail().matches("^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$")) { Toast.makeText(RegisterActivity.this, "�����ʽ����ȷ", Toast.LENGTH_SHORT).show(); return; } if (!registerModel.getPasswd().equals(registerModel.getConfirmPasswd())) { Toast.makeText(RegisterActivity.this, "�������벻һ��", Toast.LENGTH_SHORT).show(); return; } Login(); break; default: break; } } } private void Login() { RequestParams params = new RequestParams(); params.put("user_name", registerModel.getUserName()); params.put("email", registerModel.getMail()); params.put("password", registerModel.getPasswd()); AsyncHttpClient client = new AsyncHttpClient(); String url = Config.getValue("register"); client.post(url, params, new AsyncHttpResponseHandler() { @Override public void onStart() { // TODO Auto-generated method stub super.onStart(); dialog = new MyProgressDialog(RegisterActivity.this, "�����ύ", "���Ժ�...", true); dialog.show(); } @Override public void onSuccess(int arg0, Header[] arg1, byte[] arg2) { // TODO Auto-generated method stub String result = new String(arg2); JSONObject jsonObject; try { jsonObject = new JSONObject(result); String err = jsonObject.getString("error"); if (err.equals("")) { Toast.makeText(RegisterActivity.this, "ע��ɹ�,���¼!", Toast.LENGTH_SHORT).show(); finish(); }else { Toast.makeText(RegisterActivity.this, err, Toast.LENGTH_SHORT).show(); } } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } @Override public void onFailure(int arg0, Header[] arg1, byte[] arg2, Throwable arg3) { // TODO Auto-generated method stub Toast.makeText(RegisterActivity.this, "ע��ʧ��", Toast.LENGTH_SHORT).show(); } @Override public void onFinish() { // TODO Auto-generated method stub super.onFinish(); dialog.hideAndCancle(); } }); } public void onResume() { super.onResume(); MobclickAgent.onResume(this); } public void onPause() { super.onPause(); MobclickAgent.onPause(this); } }