package com.partynetwork.iparty.login;
import com.partynetwork.dataprovider.DataProvider.IJsonResultListener;
import com.partynetwork.dataprovider.json.NetworkEntity;
import com.partynetwork.dataprovider.json.struct.Login_loginResetRequest;
import com.partynetwork.dataprovider.util.StringUtil;
import com.partynetwork.dataprovider.util.T;
import com.partynetwork.iparty.R;
import com.partynetwork.iparty.app.AppContext;
import com.partynetwork.iparty.info.RegisterUserInfo;
import com.partynetwork.myview.mytoast.LoadingDialog;
import com.baidu.mobstat.StatService;
import com.lidroid.xutils.ViewUtils;
import com.lidroid.xutils.view.annotation.ViewInject;
import com.lidroid.xutils.view.annotation.event.OnClick;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
/**
* 密码界面
*
* @author sys
* @version 1.0
* @since 2013.09.27
*/
public class RegisterThreeActivity extends Activity implements
IJsonResultListener {
/* 控件声明注册 */
// 返回按钮
@ViewInject(R.id.head_left_tv)
TextView back_tv;
// 输入密码
@ViewInject(R.id.register_password_tv)
EditText passWord;
// 确认密码
@ViewInject(R.id.register_password_confirm_tv)
EditText confirm;
// 下一步按钮
@ViewInject(R.id.head_right_tv)
TextView next_tv;
// 存储用户注册信息
private RegisterUserInfo user;
// 重置密码进度提示框
private LoadingDialog dialog;
// 注册类型
private int registerType;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register_three);
ViewUtils.inject(this);
init();
}
private void init() {
dialog = new LoadingDialog(this);
user = getIntent().getParcelableExtra("user");
initType();
}
private void initType() {
registerType = getIntent().getIntExtra("registerType", 0);
if (registerType == 2) {
next_tv.setText("完成");
} else if (registerType == 3) {
next_tv.setText("完成");
}
}
@OnClick({ R.id.head_left_tv, R.id.head_right_tv })
public void btnClick(View v) {
switch (v.getId()) {
case R.id.head_left_tv:
finish();
// 界面消失动画
overridePendingTransition(R.anim.animation_enterfromleft,
R.anim.animation_fadefromright);
break;
case R.id.head_right_tv:
toNext();
break;
default:
break;
}
}
/**
* 跳转到下一界面
*/
private void toNext() {
/* 判断当前验证码是否正确 */
// 验证密码是否为制定格式
String pw = passWord.getText().toString();
String cf = confirm.getText().toString();
if (StringUtil.filterPassword(pw)) {
if (pw.equals(cf)) {
user.setUserPassword(pw);
if (registerType == 2) {
Login_loginResetRequest resetRequest = new Login_loginResetRequest();
resetRequest.setPassword(user.getUserPassword());
resetRequest.setResetType(0);
resetRequest.setResetContent(user.getUserPhone());
AppContext.getInstance().getmDataProvider().getJsonFromNetwork(
resetRequest, RegisterThreeActivity.this);
dialog.show();
} else if (registerType == 3) {
Login_loginResetRequest resetRequest = new Login_loginResetRequest();
resetRequest.setPassword(user.getUserPassword());
resetRequest.setResetType(1);
resetRequest.setResetContent(user.getUserEmail());
AppContext.getInstance().getmDataProvider().getJsonFromNetwork(
resetRequest, RegisterThreeActivity.this);
dialog.show();
} else {
Intent intent = new Intent(RegisterThreeActivity.this,
Register4.class);
intent.putExtra("user", user);
startActivity(intent);
// 设置界面出现动画
overridePendingTransition(R.anim.animation_enterfromright,
R.anim.animation_fadefromleft);
}
} else {
T.showShort(this, "对不起,你输入的两次密码不一致!");
}
} else {
T.showShort(this, "对不起,你输入的密码格式有误!");
}
}
public void onNetworkRequest() {
}
public void onResultSuccess(NetworkEntity entity) {
if (entity.getRequest().getAction()
.equals(new Login_loginResetRequest().getAction())) {
if (dialog != null && dialog.isShowing()) {
dialog.dismiss();
}
Intent intent = new Intent(RegisterThreeActivity.this,
Login.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
T.showTips(this, R.drawable.tips_success, "密码修改成功,请重新登陆!");
finish();
}
}
public void onResultFail(String resutlt) {
if (dialog != null && dialog.isShowing()) {
dialog.dismiss();
}
T.showTips(this, R.drawable.tips_error, resutlt);
}
@Override
protected void onResume() {
StatService.onResume(this);
super.onResume();
}
@Override
public void onPause() {
StatService.onPause(this);
super.onResume();
}
}