/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠNew ĠVector ĠLtd Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġim . vector . ri ot x . features . login Ċ Ċ import Ġandroidx . core . view . isVisible Ċ import Ġbutter knife . OnClick Ċ import Ġim . vector . ri ot x . R Ċ import Ġim . vector . ri ot x . core . extensions . to Reduc ed Url Ċ import Ġkotlinx . android . synt hetic . main . fragment _ login _ signup _ signin _ selection .* Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠIn Ġthis Ġscreen , Ġthe Ġuser Ġis Ġasked Ġto Ġsign Ġup Ġor Ġto Ġsign Ġin Ġto Ġthe Ġhome server Ċ Ġ*/ Ċ class ĠLogin SignUp SignIn Selection Fragment Ġ@ Inject Ġconstructor () Ġ: ĠAbstract Login Fragment () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Res Id () Ġ= ĠR . layout . fragment _ login _ signup _ signin _ selection ĊĊĠĠĠ Ġprivate Ġvar Ġis S so SignIn : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Ui ( state : ĠLogin ViewState ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( state . server Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠServer Type . Matrix Org Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Server Icon . setImage Resource ( R . drawable . ic _ logo _ matrix _ org ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Server Icon . isVisible Ġ= Ġfalse Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Title . text Ġ= ĠgetString ( R . string . login _ connect _ to , Ġstate . home Server Url . to Reduc ed Url ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Title . text Ġ= ĠgetString ( R . string . login _ connect _ to _ 2 ); Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Text . text Ġ= ĠgetString ( R . string . login _ server _ matrix _ org _ text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Text . text Ġ= ĠgetString ( R . string . login _ server _ matrix _ org _ text _ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠServer Type . Mod ular ĠĠ Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Server Icon . setImage Resource ( R . drawable . ic _ logo _ mod ular ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Server Icon . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Title . text Ġ= ĠgetString ( R . string . login _ connect _ to _ mod ular ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Text . text Ġ= Ġstate . home Server Url . to Reduc ed Url () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠServer Type . Other ĠĠĠĠ Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Server Icon . isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Title . text Ġ= ĠgetString ( R . string . login _ server _ other _ title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Text . text Ġ= ĠgetString ( R . string . login _ connect _ to , Ġstate . home Server Url . to Reduc ed Url ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Buttons ( state : ĠLogin ViewState ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis S so SignIn Ġ= Ġstate . login Mode Ġ== ĠLogin Mode . S so ĊĊĠĠĠĠĠĠĠ Ġif Ġ( is S so SignIn ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Submit . text Ġ= ĠgetString ( R . string . login _ signin _ sso ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in SignIn . isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in Submit . text Ġ= ĠgetString ( R . string . login _ signup ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogin Signup Sign in SignIn . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ OnClick ( R . id . login Signup Sign in Submit ) ĊĠĠĠ Ġfun Ġsign Up () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( is S so SignIn ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsign In () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogin ViewModel . handle ( Login Action . Update Sign Mode ( Sign Mode . SignUp )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ OnClick ( R . id . login Signup Sign in SignIn ) ĊĠĠĠ Ġfun Ġsign In () Ġ{ ĊĠĠĠĠĠĠĠ Ġlogin ViewModel . handle ( Login Action . Update Sign Mode ( Sign Mode . SignIn )) ĊĠĠĠĠĠĠĠ Ġlogin Shared Action ViewModel . post ( Login Navigation . On Sign Mode Selected ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġreset ViewModel () Ġ{ ĊĠĠĠĠĠĠĠ Ġlogin ViewModel . handle ( Login Action . Reset Sign Mode ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate With State ( state : ĠLogin ViewState ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsetup Ui ( state ) ĊĠĠĠĠĠĠĠ Ġsetup Buttons ( state ) ĊĠĠĠ Ġ} Ċ } Ċ