Guest User

Untitled

a guest
Nov 23rd, 2018
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 3.62 KB | None | 0 0
  1. class AuthActivity : AppCompatActivity() {
  2.     lateinit var tlTabs: TabLayout
  3.     lateinit var vpPager: ViewPager
  4.     lateinit var tabReg: Fragment
  5.     lateinit var tabAuth: Fragment
  6.  
  7.     var savedLogin: String
  8.         get() {
  9.             return getPreferences(Context.MODE_PRIVATE).getString(PREF_LOGIN, "")!!
  10.         }
  11.         set(value) {
  12.             val sPref = getPreferences(Context.MODE_PRIVATE)
  13.             val ed = sPref.edit()
  14.             ed.putString(PREF_LOGIN, value)
  15.             ed.apply()
  16.         }
  17.     var savedPass: String
  18.         get() {
  19.             return getPreferences(Context.MODE_PRIVATE).getString(PREF_PASS, "")!!
  20.         }
  21.         set(value) {
  22.             val sPref = getPreferences(Context.MODE_PRIVATE)
  23.             val ed = sPref.edit()
  24.             ed.putString(PREF_PASS, value)
  25.             ed.apply()
  26.         }
  27.  
  28.     override fun onCreate(savedInstanceState: Bundle?) {
  29.         super.onCreate(savedInstanceState)
  30.         configViews()
  31.     }
  32.  
  33.     private fun configViews() {
  34.         setContentView(R.layout.activity_auth)
  35.  
  36.         tlTabs = find(R.id.tlTabs)
  37.         vpPager = find(R.id.vpPager)
  38.         tabReg = TabReg()
  39.         tabAuth = TabAuth()
  40.         val vpAdapter = ViewPagerAdapter(supportFragmentManager)
  41.         vpAdapter.addFragment(tabReg, "Регистрация")
  42.         vpAdapter.addFragment(tabAuth, "Вход")
  43.         vpPager.adapter = vpAdapter
  44.         tlTabs.setupWithViewPager(vpPager)
  45.     }
  46.  
  47.     override fun onResume() {
  48.         super.onResume()
  49.  
  50.         tabReg.find<Button>(R.id.btnReg).setOnClickListener {
  51.             with (tabReg) {
  52.                 val login = find<EditText>(R.id.etLoginReg).text.toString()
  53.                 val pass = find<EditText>(R.id.etPassReg).text.toString()
  54.                 val pass2 = find<EditText>(R.id.etPassReg2).text.toString()
  55.  
  56.                 if (login.length == 10 && pass.length in 6..20 && pass == pass2) {
  57.                     savedLogin = login
  58.                     savedPass = pass
  59.                     Log.d(TAG, "saved/updated $savedLogin $savedPass")
  60.                 } else {
  61.                     when {
  62.                         login.length != 10 -> Toast.makeText(this@AuthActivity, "Номер введен неверно", Toast.LENGTH_SHORT).show()
  63.                         pass.length < 6 -> Toast.makeText(this@AuthActivity, "Пароль слишком короткий", Toast.LENGTH_SHORT).show()
  64.                         pass.length > 20 -> Toast.makeText(this@AuthActivity, "Пароль слишком длинный", Toast.LENGTH_SHORT).show()
  65.                         pass2 != pass -> Toast.makeText(this@AuthActivity, "Повторите пароль", Toast.LENGTH_SHORT).show()
  66.                         else -> Toast.makeText(this@AuthActivity, "Введите логин (номер телефона 10 цифр) и пароль", Toast.LENGTH_SHORT).show()
  67.                     }
  68.                     Log.d(TAG, "not saved/not updated (login:$login, pass:$pass, pass2:$pass2)")
  69.                 }
  70.             }
  71.         }
  72.         tabAuth.find<Button>(R.id.btnEnter).setOnClickListener {
  73.             with (tabAuth) {
  74.                 if (savedLogin.isNotEmpty() && savedPass.isNotEmpty()) {
  75.                     find<EditText>(R.id.etLoginEnter).setText(savedLogin)
  76.                     find<EditText>(R.id.etPassEnter).setText(savedPass)
  77.                 }
  78.             }
  79.             Log.d(TAG, "taken $savedLogin $savedPass")
  80.         }
  81.     }
  82.  
  83.     companion object {
  84.         private const val TAG = "AuthActivity"
  85.         private const val PREF_LOGIN = "s_login"
  86.         private const val PREF_PASS = "s_pass"
  87.     }
  88. }
Advertisement
Add Comment
Please, Sign In to add comment