package Ġcom . m jm ur tag . profile creation app . fragments Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . activity ViewModels Ċ import Ġandroidx . view pager 2 . widget . ViewPager 2 Ċ import Ġcom . m jm ur tag . profile creation app . R Ċ import Ġcom . m jm ur tag . profile creation app . adapters . CONFIRM ATION _ PAGE _ INDEX Ċ import Ġcom . m jm ur tag . profile creation app . databinding . Login Fragment Binding Ċ import Ġcom . m jm ur tag . profile creation app . models . Login Page ViewModel Ċ Ċ class ĠLogin Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠLogin Fragment Binding ĊĠĠĠ Ġprivate Ġvar Ġvalid Email Input : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġprivate Ġvar Ġvalid Password Input : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġval ĠviewModel : ĠLogin Page ViewModel Ġby Ġactivity ViewModels () ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance () Ġ= ĠLogin Fragment () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠLogin Fragment Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġbinding . viewModel Ġ= ĠviewModel ĊĠĠĠĠĠĠĠ Ġbinding . submit Form . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnavigate To Confirmation Page () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġobserve Input () ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Input () Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding . viewModel ?. email ?. observe ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview Lifecycle Owner , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalid Email Input Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġbinding . viewModel ?. password ?. observe ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview Lifecycle Owner , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalid Password Input Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġnavigate To Confirmation Page () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( valid Email Input Ġ&& Ġvalid Password Input ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Activity (). findViewById < ViewPager 2 >( R . id . view _ pager ). currentItem Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCON FIRM ATION _ PAGE _ INDEX ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ