package Ġedu . cm u . sport sm atch ing . ui . start match Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . Image Button Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġedu . cm u . sport sm atch ing . R Ċ import Ġedu . cm u . sport sm atch ing . data . model . Match Ċ import Ġedu . cm u . sport sm atch ing . databinding . Fragment Start match Binding Ċ import Ġedu . cm u . sport sm atch ing . databinding . Fragment Start match post Binding Ċ import Ġedu . cm u . sport sm atch ing . ui . archive . Archive Fragment Ċ Ċ class ĠStart Match Post Fragment ( var Ġarchive Match ViewModel : ĠArchive Match ViewModel , Ġvar Ġmatch : ĠMatch ) Ġ: ĊĠĠĠ ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠFragment Start match post Binding ĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠFragment Start match post Binding . inflate ( layout Inflater ) ĊĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv : ĠView Ġ= Ġinflater . inflate ( R . layout . fragment _ start match post , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġval Ġback Button : ĠImage Button Ġ= Ġv . findViewById ( R . id . post _ back ) ĊĠĠĠĠĠĠĠ Ġback Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Manager : ĠFragment Manager ? Ġ= Ġactivity ?. support FragmentManager ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( fragment Manager Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= Ġfragment Manager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . set Re ordering Allowed ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . replace ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . main _ fragment _ container , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStart Match Fragment ( archive Match ViewModel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . commit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . addTo Back Stack ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġpost Title : ĠEditText Ġ= Ġv . findViewById ( R . id . post _ title input ) ĊĠĠĠĠĠĠĠ Ġval Ġmain Text : ĠEditText Ġ= Ġv . findViewById ( R . id . post _ mult iline input ) ĊĠĠĠĠĠĠĠ Ġval Ġlocation : ĠEditText Ġ= Ġv . findViewById ( R . id . post _ location _ input ) ĊĊĠĠĠĠĠĠĠ Ġval Ġpost Button Ġ= Ġv . findViewById < Button >( R . id . post _ post ) ĊĠĠĠĠĠĠĠ Ġpost Button . setOnClickListener Ġ{ ĊĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( post Title . text . toString (). isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( activity , Ġ" Title Ġcannot Ġbe Ġempty !", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( main Text . text . toString (). isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( activity , Ġ" Text Ġcannot Ġbe Ġempty !", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( location . text . toString (). isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( activity , Ġ" Location Ġcannot Ġbe Ġempty !", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġimage Uri Ġ= Ġfind Image ( match . sport ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġcur Match : ĠMatch Ġ= ĠMatch ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġpost Title . text . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmain Text Ġ= Ġmain Text . text . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlocation Ġ= Ġlocation . text . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstarter Ġ= Ġ" Me ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Team Ġ= Ġmatch . current Team , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġs port Ġ= Ġmatch . sport , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġmatch . startTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġmatch . endTime , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Ġ= Ġmatch . date , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparticipants Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtotal Team Ġ= Ġmatch . current Team , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Uri Ġ= Ġimage Uri ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarchive Match ViewModel . add ( cur Match ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Manager : ĠFragment Manager ? Ġ= Ġactivity ?. support FragmentManager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( fragment Manager Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtransaction Ġ= Ġfragment Manager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . set Re ordering Allowed ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . replace ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . main _ fragment _ container , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMatch Create Fragment ( archive Match ViewModel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . commit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransaction . addTo Back Stack ( null ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġv ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġfind Image ( sport : ĠString ?): ĠInt Ġ{ ĊĊĠĠĠĠĠĠĠ Ġif Ġ( sport Ġ== Ġ" Table ĠT enn is ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . table _ ten nis ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sport Ġ== Ġ" Basket ball ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . basket ball _ on _ cour t ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sport Ġ== Ġ" Bad mint on ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . bad mint on ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sport Ġ== Ġ" T enn is ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . ten nis ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sport Ġ== Ġ" Che ss ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . chess ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( sport Ġ== Ġ" S oc cer ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . soc cer ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠR . drawable . sport s ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ }