package Ġcom . zo os um zo os um . zo os um x 2 . menu Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . zo os um zo os um . zo os um x 2 .* Ċ import Ġcom . zo os um zo os um . zo os um x 2 . dialog . Mission Reject Dialog Ċ import Ġcom . google . firebase . auth . Firebase Auth Ċ import Ġcom . google . firebase . firestore . Firebase Fire store Ċ import Ġkotlinx . android . synt hetic . main . fragment _ mission .* Ċ Ċ class ĠMis sion Fragment Ġ: ĠFragment (){ ĊĊĠĠĠ Ġvar Ġfb Auth : ĠFirebase Auth ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġfb Fire store : ĠFirebase Fire store ? Ġ= Ġnull ĊĊĊĠĠĠ Ġfun Ġnew Instance (): Mission Fragment { ĊĠĠĠĠĠĠĠ Ġval Ġargs = Bundle () ĊĊĠĠĠĠĠĠĠ Ġval Ġfrag = Mission Fragment () ĊĠĠĠĠĠĠĠ Ġfrag . arguments = args ĊĊĠĠĠĠĠĠĠ Ġreturn Ġfrag ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġlayout Ġfor Ġthis Ġfragment ĊĠĠĠĠĠĠĠ Ġreturn Ġ Ġinflater . inflate ( R . layout . fragment _ mission , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġfb Auth Ġ= ĠFirebase Auth . getInstance () ĊĠĠĠĠĠĠĠ Ġfb Fire store Ġ= ĠFirebase Fire store . getInstance () ĊĊĠĠĠĠĠĠĠ Ġ// Ġfire store ìĹĲìĦľ Ġëį°ìĿ´íĦ° Ġê°Ģ ìł¸ ìĻĢ ìĦľ Ġë ¯¸ ìħĺ ĠìĪĺ íĸī ê°Ģ ëĬ¥ ìĹ¬ ë¶Ģ Ġê²° ìłķ íķĺê¸° ĊĠĠĠĠĠĠĠ Ġfb Fire store ?. collection (" users ") ?. document ( fb Auth ?. uid . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . collection (" mission ") ?. document ( fb Auth ?. uid . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ? . add Snapshot Listener Ġ{ Ġdocument Snapshot , Ġfirebase Fire store Exception Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( document Snapshot Ġ== Ġnull ) Ġreturn @ add Snapshot Listener ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmission M aking Quiz Flag Ġ= Ġdocument Snapshot . data ?. get (" mission M aking Quiz "). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmission Re cycle Flag Ġ= Ġdocument Snapshot . data ?. get (" mission Re cycle "). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmission Sense Quiz Flag Ġ= Ġdocument Snapshot . data ?. get (" mission Sense Quiz "). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmission User Quiz Flag Ġ= Ġdocument Snapshot . data ?. get (" mission User Quiz "). toString () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfb Fire store ?. collection (" users ") ?. document ( fb Auth ?. uid . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . collection (" mission ") ?. document ( fb Auth ?. uid . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . collection (" mission Detail ") ?. document (" recycle ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . add Snapshot Listener { Ġdocument Snapshot 2 , Ġfirebase Fire store Exception 2 Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// if ( document Snapshot 2 Ġ== Ġnull ) Ġreturn @ add Snapshot Listener ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġapproved Wait Flag Ġ= Ġdocument Snapshot 2 ?. data ?. get (" is Approved "). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsend K ak ao Flag Ġ= Ġdocument Snapshot 2 ?. data ?. get (" send K ak ao "). toString () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mission Re cycle Flag Ġ== Ġ" true " Ġ&& Ġsend K ak ao Flag Ġ!= Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( approved Wait Flag Ġ!= Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ wait ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. text Ġ= Ġ" ëĮĢ ê¸° ì¤ĳ " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ complete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. text Ġ= Ġ" ìĻ Ħ ë£Į " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( mission Re cycle Flag Ġ== Ġ" true " Ġ&& Ġsend K ak ao Flag Ġ== Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ complete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. text Ġ= Ġ" ìĻ Ħ ë£Į " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ challenge ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconfirm _ recycle _ banner ?. text Ġ= Ġ" ëıĦ ìłĦ " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( mission User Quiz Flag Ġ== Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuser _ quiz _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ complete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġuser _ quiz _ banner ?. text Ġ= Ġ" ìĻ Ħ ë£Į " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( mission M aking Quiz Flag Ġ== Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmaking _ quiz _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ complete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmaking _ quiz _ banner ?. text Ġ= Ġ" ìĻ Ħ ë£Į " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( mission Sense Quiz Flag Ġ== Ġ" true ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrandom _ quiz _ banner ?. setBackground Resource ( R . drawable . mission _ card _ banner _ complete ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrandom _ quiz _ banner ?. text Ġ= Ġ" ìĻ Ħ ë£Į " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmission _ confirm _ recycle ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mission Re cycle Flag Ġ== Ġ" false ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context , ĠConfirm Re cycle Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ëĭ¤ ìĿ´ ìĸ ¼ ë¡ľ ê·¸ Ġíĺ¸ì¶ľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdlg Ġ= ĠMis sion Reject Dialog ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdlg . start () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmission _ user _ quiz ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mission User Quiz Flag Ġ== Ġ" false ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context , ĠRes ident Quiz Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ëĭ¤ ìĿ´ ìĸ ¼ ë¡ľ ê·¸ Ġíĺ¸ì¶ľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdlg Ġ= ĠMis sion Reject Dialog ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdlg . start () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmission _ making _ quiz ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mission M aking Quiz Flag Ġ== Ġ" false ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context , ĠMake quiz Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ëĭ¤ ìĿ´ ìĸ ¼ ë¡ľ ê·¸ Ġíĺ¸ì¶ľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdlg Ġ= ĠMis sion Reject Dialog ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdlg . start () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmission _ random _ quiz ?. setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mission Sense Quiz Flag Ġ== Ġ" false ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( context , ĠRandom Quiz Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ëĭ¤ ìĿ´ ìĸ ¼ ë¡ľ ê·¸ Ġíĺ¸ì¶ľ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdlg Ġ= ĠMis sion Reject Dialog ( require Context ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdlg . start () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }