package Ġcom . trans co di um . tn sm oney Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . pm . Activity Info Ċ import Ġandroid . content . res . Configuration Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . os . Build Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . view .* Ċ import Ġandroidx . appcompat . app . ActionBar Drawer Toggle Ċ import Ġandroidx . appcompat . app . AppCompat Delegate Ċ import Ġandroidx . appcompat . widget . Toolbar Ċ import Ġandroidx . coordinator layout . widget . Coordinator Layout Ċ import Ġandroidx . core . view . Gravity Compat Ċ import Ġandroidx . drawer layout . widget . Drawer Layout Ċ import Ġcom . google . android . material . navigation . Navigation View Ċ import Ġcom . trans co di um . app . Drawer ListAdapter Ċ import Ġcom . trans co di um . app . Drawer ListModel Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroidx . core . graphics . Color Utils Ċ import Ġandroidx . core . graphics . alpha Ċ import Ġcom . trans co di um . tn sm oney . classes . Anim Ċ import Ġkotlinx . android . synt hetic . main . navigation _ drawer .* Ċ import Ġorg . jetbrains . ank o . with Alpha ĊĊ Ċ open Ġclass ĠDraw er Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĊĠĠĠ Ġval Ġm Activity Ġby Ġlazy { ĊĠĠĠĠĠĠĠ Ġthis ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// lazy Ġinit Ġvals ĊĠĠĠ Ġprivate Ġval Ġtoolbar : ĠToolbar Ġby Ġlazy { ĊĠĠĠĠĠĠĠ ĠfindViewById < Toolbar >( R . id . toolbar ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġval Ġdrawer Layout : ĠDraw er Layout Ġby Ġlazy { ĊĠĠĠĠĠĠĠ ĠfindViewById < Drawer Layout >( R . id . drawer _ layout ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġnav View Ġby Ġlazy { ĊĠĠĠĠĠĠĠ ĠfindViewById < Navigation View >( R . id . nav View ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġ Ġval Ġcontent View : ĠView Ġby Ġlazy { ĊĠĠĠĠĠĠĠ ĠfindViewById < Coordinator Layout >( R . id . content View ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġcontext : ĠContext Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġthis ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġdrawer Toggle : ĠAction Bar Drawer Toggle ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġcheck Ġif Ġuser Ġis Ġlogged Ġin , Ġsince ĊĠĠĠĠ Ġ* Ġthis Ġis Ġalmost Ġinherited Ġby Ġmost Ġactivities Ġrequiring Ġlogin ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġ Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĊĠĠĠĠĠĠĠ Ġ// go Ġto Ġlogin ĊĠĠĠĠĠĠĠ Ġ// if ( currentUser Ġ== Ġnull ){ ĊĠĠĠĠĠĠĠ Ġ// Ġ Ġstart Class Activity ( this , Login Activity :: class . java , true ) ĊĠĠĠĠĠĠĠ Ġ//} ĊĠĠĠ Ġ}// end Ġon Ġstart ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġrequested Orientation Ġ= ĠActivity Info . SCREEN _ OR IENTATION _ POR TRA IT ĊĊĠĠĠĠĠĠĠ Ġif ( Build . VERSION . SDK _ INT Ġ< ĠBuild . VERSION _ CODES . LO L LI POP ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġwindow . set Flags ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Manager . LayoutParams . FLAG _ TRANSL UC ENT _ STATUS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Manager . LayoutParams . FLAG _ TRANSL UC ENT _ STATUS ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// set Ġtoolbar Ġas Ġaction bar ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( toolbar ) ĊĊĠĠĠĠĠĠĠ Ġ// disable Ġaction bar Ġtitle ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. title Ġ= Ġ"" ĊĊĠĠĠĠĠĠĠ Ġ// remove Ġelevation ĊĠĠĠĠĠĠĠ Ġdrawer Layout . drawer Elevation Ġ= Ġ 0 f ĊĊĊĠĠĠĠĠĠĠ Ġ// set ĠHeader ĠInfo ĊĠĠĠĠĠĠĠ Ġset Drawer Header Info () ĊĊĠĠĠĠĠĠĠ Ġ// set Ġthe Ġs cri m Ġcolor Ġ( the Ġdark Ġoverlay Ġf ading Ġwhen Ġthe Ġdrawer Ġis Ġopened ) ĊĠĠĠĠĠĠĠ Ġdrawer Layout . set S cri m Color ( Color . TRANSP ARENT ) ĊĊĠĠĠĠĠĠĠ Ġvar Ġstatus Bar Color : ĠInt ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġ// drawer Ġoptions Ġand Ġevents ĊĠĠĠĠĠĠĠ Ġdrawer Toggle Ġ= Ġobject : ĠAction Bar Drawer Toggle ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawer Layout , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoolbar , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . drawer _ open , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . drawer _ close ĊĠĠĠĠĠĠĠ Ġ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// events ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġon Drawer Slide ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// push Ġcontent Ġon Ġdrawer Ġopen ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Drawer Slide ( drawer View : ĠView , Ġoffset : ĠFloat Ġ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent View . translation X Ġ= Ġ( offset Ġ* Ġdrawer View . width ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// if ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . LO L LI POP ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( status Bar Color Ġ== Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Bar Color Ġ= Ġwindow . status Bar Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// alpha ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġalpha Val Ġ= Ġ( 2 5 5 Ġ- Ġ(( offset Ġ/ Ġ 1 ) Ġ* Ġ 2 5 5 )). toInt () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstatus Bar Color Alpha Ġ= Ġstatus Bar Color !!. with Alpha ( alpha Val ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwindow . status Bar Color Ġ= Ġstatus Bar Color Alpha ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}// end Ġif ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Drawer Slide ( drawer View , Ġoffset ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}// end ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Drawer Closed ( drawer View : ĠView ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// if ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . LO L LI POP ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( status Bar Color Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwindow . status Bar Color Ġ= Ġstatus Bar Color !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Bar Color Ġ= Ġnull ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}// end ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Drawer Closed ( drawer View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}// end ĊĊĠĠĠĠĠĠĠ Ġ}// end Ġtoggle Ġ Ġoptions Ġand Ġevents ĊĊĠĠĠĠĠĠĠ Ġdrawer Toggle . drawer Arrow Drawable . color Ġ= ĠContext Compat . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . color . white ĊĠĠĠĠĠĠĠ Ġ) ĊĊĊĠĠĠĠĠĠĠ Ġ// lets Ġset Ġdrawer Ġlistener ĊĠĠĠĠĠĠĠ Ġdrawer Layout . add Drawer Listener ( drawer Toggle ) ĊĊĊĊĠĠĠĠĠĠĠ Ġ// lets Ġset Ġdrawer Ġitem Ġclick Ġlistener ĊĠĠĠĠĠĠĠ Ġnav View . set Navigation ItemSelected Listener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem : ĠMenuItem Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Nav ItemSelected ( item ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// menu Ġdata ĊĠĠĠĠĠĠĠ Ġval Ġlist Data Ġ= Ġmutable ListOf ( ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDraw er ListModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ settings _ white _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . setting ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAbout Activity :: class . java ), ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDraw er ListModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ email _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . support ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAbout Activity :: class . java ), ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDraw er ListModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ black _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . about ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAbout Activity :: class . java ), ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDraw er ListModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ to ys _ black _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . logout ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAbout Activity :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġ) // end Ġlist Ġdata ĊĊĠĠĠĠĠĠĠ Ġ// lets Ġcreate Ġpopulate Ġmenu Ġlist ĊĠĠĠĠĠĠĠ Ġdrawer ListView . adapter Ġ= ĠDraw er ListAdapter ( this , list Data ) ĊĠĠĠ Ġ}// end Ġon create ĊĊĊĊĠĠĠ Ġ// on ĠNav ItemSelected ĊĠĠĠ Ġfun Ġon Nav ItemSelected ( item : ĠMenuItem ): ĠBoolean { ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠ Ġval ĠitemId Ġ= Ġitem . itemId ĊĊĠĠĠĠĠĠĠ Ġval Ġitem Activity Ġ= Ġwhen ( itemId ){ ĊĠĠĠĠĠĠĠ ĠR . id . about Ġ-> Ġ ĠAbout Activity :: class . java ĊĠĠĠĠĠĠĠ ĠR . id . contact _ us Ġ-> ĠContact Activity :: class . java ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġ Ġcur Activity Name Ġ= Ġthis . java Class . name ĊĊĠĠĠĠĠĠĠ Ġ// is ĠSame Ġactivity ĊĠĠĠĠĠĠĠ Ġval Ġis Same Activity Ġ= Ġcur Activity Name Ġ== Ġitem Activity ?. name ĊĊĠĠĠĠĠĠĠ Ġ// if Ġitem Activity Ġis Ġnot Ġnull Ġor ĊĠĠĠĠĠĠĠ Ġ// not Ġthe Ġsame Ġactivity , Ġthen Ġopen Ġactivity ĊĠĠĠĠĠĠĠ Ġif (!( item Activity Ġ== Ġnull Ġ|| Ġis Same Activity Ġ )){ ĊĊĠĠĠĠĠĠĠ Ġ// Open Ġactivity ĊĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( application Context , item Activity )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ// close Ġdrawer ĊĠĠĠĠĠĠĠ Ġdrawer Layout . close Drawer ( Gravity Compat . START ) ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ}// end ĊĊĠĠĠ Ġ// on Option ItemSelected ĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): Boolean { ĊĊĠĠĠĠĠĠĠ Ġwhen ( item . itemId ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . id . home Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawer Layout . open Drawer ( Gravity Compat . START ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// if Ġitem ĊĠĠĠĠĠĠĠ Ġif ( drawer Toggle . on Options ItemSelected ( item )){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠ Ġ}// end ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġon Post Create ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġon Post Create ( savedInstanceState : ĠBundle ? ){ ĊĠĠĠĠĠĠĠ Ġsuper . on Post Create ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġ// sync Ġstate Ġof Ġtoggle ĊĠĠĠĠĠĠĠ Ġdrawer Toggle . sync State () ĊĠĠĠ Ġ}// end ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġon configuration Ġchange Ġtool .. Ġwe Ġshould ĊĠĠĠĠ Ġ* Ġchange Ġthe Ġtoggle ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġon Configuration Changed ( new Config : ĠConfiguration ){ ĊĠĠĠĠĠĠĠ Ġsuper . on Configuration Changed ( new Config ) ĊĊĠĠĠĠĠĠĠ Ġ// on Configuration Changed ĊĠĠĠĠĠĠĠ Ġdrawer Toggle . on Configuration Changed ( new Config ) ĊĠĠĠ Ġ}// end ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġon Cre at Options Menu ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( R . menu . toolbar _ menu , menu ) ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Options Menu ( menu ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ// set ĠHeader Ġinfo ĊĠĠĠ Ġprivate Ġfun Ġset Drawer Header Info (){ ĊĊĠĠĠĠĠĠĠ Ġ/* / lets Ġget Ġprofile Ġphot ĊĠĠĠĠĠĠĠ Ġval Ġphoto Url Ġ= ĠcurrentUser ?. photoUrl ĊĊĠĠĠĠĠĠĠ Ġ// if Ġnot Ġempty Ġlets Ġupdate Ġit ĊĠĠĠĠĠĠĠ Ġif ( photoUrl Ġ!= Ġnull ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// using Ġg lide Ġinsert Ġpic ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPic asso . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( photoUrl ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. placeholder ( R . drawable . ic _ user ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. error ( R . drawable . ic _ user ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. resize ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġphoto View Parent . layout Params . width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġphoto View Parent . layout Params . height ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( photo View ) ĊĠĠĠĠĠĠĠ Ġ}// end Ġif Ġphoto ĊĊĠĠĠĠĠĠĠ Ġ// get Ġuser ĠPhone ĊĠĠĠĠĠĠĠ Ġval Ġuser Phone No Ġ= ĠcurrentUser ?. phoneNumber ĊĊĠĠĠĠĠĠĠ Ġ// user Ġemail ĊĠĠĠĠĠĠĠ Ġval Ġuser Email Ġ= ĠcurrentUser ?. email ĊĊĠĠĠĠĠĠĠ Ġ// provider ĊĠĠĠĠĠĠĠ Ġval Ġprovider Ġ= ĠcurrentUser ?. providers ĊĊĠĠĠĠĠĠĠ Ġvar Ġemail Or Phone Ġ= Ġ"" ĊĊĠĠĠĠĠĠĠ Ġvar ĠdisplayName Ġ= ĠcurrentUser ?. displayName ĊĊĠĠĠĠĠĠĠ Ġ// set Ġdisplay Ġname ĊĠĠĠĠĠĠĠ Ġif ( displayName Ġ!= Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname View . text Ġ= ĠdisplayName ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif ( user Email Ġ!= Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemail Or Phone Ġ= Ġuser Email ĊĠĠĠĠĠĠĠ Ġ} else Ġif ( user Phone No Ġ!= Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemail Or Phone Ġ= Ġuser Phone No ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// set Ġthe ĠtextView ĊĠĠĠĠĠĠĠ Ġemail Or Phone View . text Ġ= Ġemail Or Phone ĊĊĠĠĠĠĠĠĠ Ġ// if Ġthe Ġprovider Ġis nt Ġempty ĊĠĠĠĠĠĠĠ Ġif ( provider Ġ!= Ġnull ){ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġprovider Name Ġ= Ġprovider [ 0 ]. capitalize () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// some times Ġthe Ġprovider Ġname Ġis Ġprovided Ġby Ġa Ġdomain ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// just Ġremove Ġthe Ġdomain Ġext ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprovider Name Ġ= Ġprovider Name . split (". ")[ 0 ] ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// auth Ġby ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġauth By Ġ= ĠgetString ( R . string . auth _ by ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġauth By View . text Ġ= Ġ"$ auth By Ġ$ provider Name " ĊĠĠĠĠĠĠĠ Ġ}// end ĊĊĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ}// end Ġset Ġheader Ġinfo ĊĊ Ċ } Ċ