package net.micode.notes.ui;

import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import net.micode.notes.R;

//继承自 Activity 类，提供用户界面删除已设置的密码
public class DeletingPassword extends Activity {
    //定义 EditText 成员变量获取用户输入的密码
    EditText Dt_password;
    //定义 Button 成员变量，用户点击后确认删除密码
    Button Acknowledged;
    // Activity 的 onCreate()方法
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //设置当前 Activity 使用的布局文件
        setContentView(R.layout.activity_delete_password);
        //设置软键盘行为
        getWindow().setSoftInputMode(
                WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE
                        | WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
        //关联至布局文件中的 EditText 组件(用于输入密码)
        Dt_password=(EditText) findViewById(R.id.thepassword);
        //关联至布局文件中的 Button 组件(确认删除按钮)
        Acknowledged=(Button)findViewById(R.id.Dt_Acknowledged);
        //设置确认删除按钮的点击监听器
        Acknowledged.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //获取用户输入的密码
                String text02 = Dt_password.getText().toString();
                //检查密码是否为空
                if(text02.equals("")==true) {
                    Toast.makeText(DeletingPassword.this, "密码不能为空", Toast.LENGTH_SHORT).show();
                    return; //为空则直接返回不进行后续操作
                }
                //获取 SharedPreferences 中保存的密码
                SharedPreferences pref=getSharedPreferences("user management",MODE_PRIVATE);
                String password = pref.getString("password","");
                //如果存储密码不为空，且与用户输入密码匹配
                if(password.equals("")==false&&password.equals(text02)==true){
                    //获取 SharedPreferences 编辑器以删除密码
                    SharedPreferences.Editor editor=getSharedPreferences("user management", MODE_PRIVATE).edit();
                    editor.putBoolean("user",false);//false 表示登录密码已被设置
                    editor.putString("password",""); //清除密码
                    editor.apply();  //应用更改
                    //显示已删除登录密码的提示信息
                    Toast.makeText(DeletingPassword.this, "已经删除登录密码", Toast.LENGTH_SHORT).show();
                    //跳回便签列表界面
                    Intent intent=new Intent(DeletingPassword.this,NotesListActivity.class);
                    startActivity(intent);
                    finish(); //结束当前 Activity
                }
                else{
                    //如果输入的密码不正确，显示错误信息
                    Toast.makeText(DeletingPassword.this, "密码错误",
                            Toast.LENGTH_SHORT).show();
                    Dt_password.setText("");//把密码框内输入过的错误密码清空
                }
            }
        });
    }

    //重写 onBackPressed 方法，用于用户按下返回键的行为
    @Override
    public void onBackPressed() {
        Intent intent=new Intent(DeletingPassword.this,NotesListActivity.class);
        startActivity(intent);
        finish();
    }
}