package com.parttime.IM.activitysetting; import android.os.Bundle; import android.text.Editable; import android.text.TextUtils; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; import com.android.volley.RequestQueue; import com.easemob.chat.EMGroup; import com.easemob.chat.EMGroupManager; import com.easemob.chatuidemo.activity.BaseActivity; import com.parttime.common.head.ActivityHead; import com.parttime.constants.ActivityExtraAndKeys; import com.parttime.net.DefaultCallback; import com.parttime.net.GroupSettingRequest; import com.parttime.utils.SharePreferenceUtil; import com.parttime.utils.ValidateUtils; import com.qingmu.jianzhidaren.R; import com.quark.jianzhidaren.ApplicationControl; import com.quark.volley.VolleySington; public class SendAdmitToEmailActivity extends BaseActivity implements View.OnClickListener { private final String EMAIL_KEY = "send_to_email"; private final String LAST_SEND_TIME = "last_send_email_time"; private EditText email; private Button done; private String groupId; private String emailValue; private SharePreferenceUtil sp = SharePreferenceUtil.getInstance(ApplicationControl.getInstance()); protected RequestQueue queue = VolleySington.getInstance().getRequestQueue(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_send_admit_to_email); ActivityHead headView = new ActivityHead(this); headView.setCenterTxt1(R.string.send_approve_username_to_email); email = (EditText)findViewById(R.id.email); done = (Button)findViewById(R.id.done); groupId = getIntent().getStringExtra(ActivityExtraAndKeys.GroupSetting.GROUPID); emailValue = sp.loadStringSharedPreference(EMAIL_KEY); if(! TextUtils.isEmpty(emailValue)){ email.setText(emailValue); } done.setOnClickListener(this); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } @Override public void onClick(View v) { switch (v.getId()){ case R.id.done: v.setEnabled(false); Editable emailStr = email.getText(); sendAdmitUserToEmail(emailStr.toString()); break; } } private void sendAdmitUserToEmail(String emailStr) { if(! ValidateUtils.isEmail(emailStr)){ Toast.makeText(getApplicationContext(), getString(R.string.format_error), Toast.LENGTH_SHORT).show(); done.setEnabled(true); return ; } long lastTime = sp.loadLongSharedPreference(LAST_SEND_TIME); //5分钟之内不能对同一个邮箱重复发 if(emailStr.equals(emailValue) && System.currentTimeMillis() - lastTime < 5 * 60 * 1000){ Toast.makeText(getApplicationContext(), getString(R.string.send_times_tips), Toast.LENGTH_SHORT).show(); done.setEnabled(true); return ; } sp.saveSharedPreferences(EMAIL_KEY,emailStr); EMGroup emGroup = EMGroupManager.getInstance().getGroup(groupId); String groupName ; if(emGroup != null){ groupName = emGroup.getGroupName(); }else { groupName = "temp"; } new GroupSettingRequest().sendAdmitUserToEmail(emailStr,groupId,groupName, queue , new DefaultCallback(){ @Override public void success(Object obj) { super.success(obj); done.setEnabled(true); sp.saveSharedPreferences(LAST_SEND_TIME, System.currentTimeMillis()); Toast.makeText(SendAdmitToEmailActivity.this, R.string.already_send_to_email,Toast.LENGTH_SHORT).show(); } @Override public void failed(Object obj) { super.failed(obj); done.setEnabled(true); Toast.makeText(SendAdmitToEmailActivity.this, R.string.send_to_email_failed ,Toast.LENGTH_SHORT).show(); } }); } }