package Ġcom . example . work out comp anion . activities . profile ĊĊ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . Editable Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . core . view . isVisible Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . example . work out comp anion . R Ċ import Ġcom . example . work out comp anion . activities . home . MainActivity Ċ import Ġcom . squareup . pic asso . Pic asso Ċ import Ġkotlinx . android . synt hetic . main . first _ fragment _ profile .* Ċ import Ġkotlinx . android . synt hetic . main . first _ fragment _ profile . view .* ĊĊ Ċ class ĠFirst Fragment Profile Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcom u : Com unic ator ĊĠĠĠ Ġval Ġimage of User Ġ= ĠMainActivity . currentUser ĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġ Ġinflater . inflate ( R . layout . first _ fragment _ profile , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġcom u Ġ= Ġactivity Ġas ĠCom unic ator ĊĊĠĠĠĠĠĠĠ Ġview . Save _ btn . isVisible Ġ= false ĊĠĠĠĠĠĠĠ Ġview . Cancel _ btn . isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠ Ġview . user _ Text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġview . Phone _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġview . height _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġview . weight _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġview . gender _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġview . age _ text . isEnabled Ġ= Ġfalse ĊĊĊĠĠĠĠĠĠĠ Ġview . user _ Text . text Ġ= Ġ ĠMainActivity . currentUser ?. username ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . Phone _ text . text Ġ= ĠMainActivity . currentUser ?. phone ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . height _ text . text Ġ= ĠMainActivity . currentUser ?. height ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . weight _ text . text Ġ= ĠMainActivity . currentUser ?. weight ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . gender _ text . text Ġ= ĠMainActivity . currentUser ?. gender ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . age _ text . text Ġ= ĠMainActivity . currentUser ?. age ?. to Editable () ĊĠĠĠĠĠĠĠ Ġview . text _ Email . text Ġ= ĠMainActivity . currentUser ?. email ĊĊĠĠĠĠĠĠĠ ĠPic asso . get (). load ( image of User ?. profile Imag ). into ( view . image _ user ) ĊĊĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠString . to Editable (): ĠEdit able Ġ= Ġ ĠEdit able . Factory . getInstance (). new Editable ( this ) ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠLog . d (" User From Profile "," ${ image of User ?. age } Ġ.. Ġ${ image of User ?. gender }") ĊĊĊĊĠĠĠĠĠĠĠ ĠSave _ btn . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Check Fields Profile ()){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage of User ?. profile Imag ?. let Ġ{ Ġit 1 Ġ-> Ġcom u . update _ User ro datab se ( it 1 ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCancel _ btn . isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUpdate _ btn . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSave _ btn . isVisible Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . user _ Text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . Phone _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . height _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . weight _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . gender _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . age _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( context ," Info ĠSaved ", Toast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( Phone _ text . text . toString (). length ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else Ġif Ġ( Phone _ text . text . toString (). length Ġ!= Ġ 1 0 ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( context ," Phone ĠNumber Ġshould Ġcontain Ġ 1 0 Ġdigits ", Toast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} else Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( context ," Please Ġfill - In Ġfields Ġproperly ", Toast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠCancel _ btn . setOnClickListener Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . user _ Text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . Phone _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . height _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . weight _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . gender _ text . isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . age _ text . isEnabled Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG Et U Ser Info Fresh () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSave _ btn . isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUpdate _ btn . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCancel _ btn . isVisible Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠUpdate _ btn . setOnClickListener Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . user _ Text . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . Phone _ text . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . height _ text . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . weight _ text . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . gender _ text . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . age _ text . isEnabled Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠSave _ btn . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCancel _ btn . isVisible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUpdate _ btn . isVisible Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠS igh n _ Out _ btn . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠ Ġcom u . Sign _ out () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠCheck Fields Profile (): Boolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġuser _ Text . text . isNotEmpty () Ġ&& ĠPhone _ text . text . isNotEmpty () Ġ&& Ġage _ text . text . isNotEmpty () Ġ&& Ġheight _ text . text . isNotEmpty () Ġ&& Ġweight _ text . text . isNotEmpty () Ġ&& Ġgender _ text . text . isNotEmpty () Ġ&& ĠPhone _ text . text . toString (). length Ġ== Ġ 1 0 ĊĊĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ// Function Ġthat ĠC An cel Ġthe Ġsaving Ġand Ġre Show Ġdefault Ġdata ĊĠĠĠ Ġprivate Ġfun ĠG Et U Ser Info Fresh (){ ĊĠĠĠĠĠĠĠ Ġuser _ Text . text Ġ= Ġ ĠMainActivity . currentUser ?. username ?. to Editable () ĊĠĠĠĠĠĠĠ ĠPhone _ text . text Ġ= ĠMainActivity . currentUser ?. phone ?. to Editable () ĊĠĠĠĠĠĠĠ Ġheight _ text . text Ġ= ĠMainActivity . currentUser ?. height ?. to Editable () ĊĠĠĠĠĠĠĠ Ġweight _ text . text Ġ= ĠMainActivity . currentUser ?. weight ?. to Editable () ĊĠĠĠĠĠĠĠ Ġgender _ text . text Ġ= ĠMainActivity . currentUser ?. gender ?. to Editable () ĊĠĠĠĠĠĠĠ Ġage _ text . text Ġ= ĠMainActivity . currentUser ?. age ?. to Editable () ĊĠĠĠ Ġ} Ċ }