SHARE
TWEET

Untitled

a guest Nov 19th, 2019 86 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. class FormActivity : AppCompatActivity(){
  2.  
  3.     override fun onCreate(savedInstanceState: Bundle?) {
  4.         super.onCreate(savedInstanceState)
  5.         setContentView(R.layout.activity_form)
  6.  
  7.         supportActionBar?.setDisplayHomeAsUpEnabled(true)
  8.  
  9.  
  10.         btnSimpan.setOnClickListener {
  11.  
  12.             simpan()
  13.  
  14.         }
  15.  
  16.     }
  17.  
  18.     override fun onCreateOptionsMenu(menu: Menu?): Boolean {
  19.         menuInflater.inflate(R.menu.save ,menu )
  20.         return super.onCreateOptionsMenu(menu)
  21.     }
  22.  
  23.     override fun onOptionsItemSelected(item: MenuItem): Boolean {
  24.         if (item.itemId == R.id.item_save){
  25.             simpan()
  26.         }
  27.         return super.onOptionsItemSelected(item)
  28.     }
  29.  
  30.     fun validateNamaDepan() : Boolean{
  31.         var namaDepan = inputNamaDepan.text.toString()
  32.         if (namaDepan.isEmpty()){
  33.             inputNamaDepan.setError("Required")
  34.             inputNamaDepan.requestFocus()
  35.             return false
  36.         }
  37.  
  38.         if (isContainSpecialChar(namaDepan)){
  39.             inputNamaDepan.setError("Special not allowed")
  40.             inputNamaDepan.requestFocus()
  41.             return false
  42.         }
  43.  
  44.         return true
  45.     }
  46.  
  47.     private fun getSelectedGender(): String {
  48.         var gender = ""
  49.         if (rbPria.isChecked)
  50.         {
  51.             //lakukan ini
  52.             gender = "Pria"
  53.         }
  54.         else {
  55.             //kalau tidak lakukan yang ini
  56.             gender = "Wanita"
  57.         }
  58.  
  59.         return gender
  60.  
  61.     }
  62.  
  63.  
  64.     fun isValidateAll(): Boolean{
  65.         if (validateNamaDepan() &&
  66.             validateNamaBelakang() &&
  67.             validateNoHp() && validateAlamat()){
  68.             return true
  69.         }
  70.  
  71.         return false
  72.     }
  73.  
  74.     fun validateNamaBelakang() : Boolean{
  75.         var namaDepan = inputNamaBelakang.text.toString()
  76.         if (namaDepan.isEmpty()){
  77.             inputNamaBelakang.setError("Required")
  78.             inputNamaBelakang.requestFocus()
  79.             return false
  80.         }
  81.  
  82.         if (isContainSpecialChar(namaDepan)){
  83.             inputNamaBelakang.setError("Special not allowed")
  84.             inputNamaBelakang.requestFocus()
  85.             return false
  86.         }
  87.  
  88.  
  89.         return true
  90.     }
  91.  
  92.     fun validateAlamat() : Boolean{
  93.         var alamat= inputAlamat.text.toString()
  94.         if (alamat.isEmpty()){
  95.             inputAlamat.setError("Required")
  96.             inputAlamat.requestFocus()
  97.             return false
  98.         }
  99.  
  100.         return true
  101.     }
  102.  
  103.     fun validateNoHp() : Boolean{
  104.         var nohp= inputNoHp.text.toString()
  105.         if (nohp.isEmpty()){
  106.             inputNoHp.setError("Required")
  107.             inputNoHp.requestFocus()
  108.             return false
  109.         }
  110.  
  111.         return true
  112.     }
  113.  
  114.     private fun getSelectedHobi(): String {
  115.         var listHobi = ArrayList<String>()
  116.  
  117.         if (cbMembaca.isChecked) listHobi.add("Membaca")
  118.  
  119.         if (cbMenulis.isChecked) listHobi.add("Menulis")
  120.         if (cbMenggambar.isChecked) listHobi.add("Menggambar")
  121.  
  122.         var hobi = TextUtils.join(", ", listHobi)
  123.         return hobi
  124.  
  125.     }
  126.  
  127.     fun isContainSpecialChar(text : String): Boolean {
  128.         var forbid = "@!#$%&*^"
  129.  
  130.  
  131.         for (i in forbid.indices){
  132.  
  133.             if (text.contains(forbid[i])){
  134.                 return true
  135.             }
  136.         }
  137.  
  138.         return false
  139.  
  140.     }
  141.  
  142.     fun simpan() {
  143.  
  144.         if (!isValidateAll()){
  145.             return
  146.         }
  147.  
  148.         var siswa = getInput()
  149.         var dataSource = SiswaDataSource(this)
  150.         dataSource.insertStudent(siswa)
  151.  
  152.         Toast.makeText(this, "Berhasil menyimpan data",
  153.             Toast.LENGTH_SHORT).show()
  154.  
  155.         finish()
  156.  
  157.  
  158.     }
  159.  
  160.     private fun getInput(): Siswa {
  161.  
  162.         var namaDepan = inputNamaDepan.text.toString()
  163.         var namaBelakang = inputNamaBelakang.text.toString()
  164.         var nohp = inputNoHp.text.toString()
  165.         var alamat = inputAlamat.text.toString()
  166.         var jenjang = spinner.selectedItem.toString()
  167.         var hobi = getSelectedHobi()
  168.  
  169.         var gender = getSelectedGender()
  170.  
  171.         var siswa = Siswa()
  172.         siswa.namad = namaDepan
  173.         siswa.namab = namaBelakang
  174.         siswa.alamat= alamat
  175.         siswa.gender = gender
  176.         siswa.jenjang= jenjang
  177.         siswa.hobi = hobi
  178.         siswa.noHp = nohp
  179.  
  180.         return siswa
  181.  
  182.     }
  183.  
  184. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top