package Ġcom . x plo re . groups . requests Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Toast Ċ import Ġcom . squareup . pic asso . Pic asso Ċ import Ġcom . x plo re . General Ċ import Ġcom . x plo re . util . Image Util Ċ import Ġcom . x plo re . R Ċ import Ġkotlinx . android . synt hetic . main . received _ join _ request _ list _ item . view .* Ċ import Ġkotlinx . android . synt hetic . main . request _ list .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠN ika oto Ġon Ġ 8 / 8 / 2 0 1 7 . Ċ Ġ* Ċ Ġ* Ġ áĥĲáĥ ¦ áĥ ¬ áĥĶáĥ ł áĥĲ : Ċ Ġ* Ġ áĥĲáĥ ¥ áĥĶáĥ ĵ áĥĲáĥ ľ Ġáĥ ¨ áĥ £ áĥ « áĥ ļ áĥĺ áĥĲ Ġáĥ ļ áĥĺáĥ ĵ áĥĶáĥ ł áĥ ¡ Ġáĥ ł áĥ Ŀ áĥ Ľ Ġáĥ Ľ áĥ Ŀ áĥĲáĥ ¬ áĥĶáĥ ¡ áĥ ł áĥĺáĥ Ĵ áĥ Ŀ áĥ ¡ Ġáĥ ® áĥĲáĥ ļ áĥ ® áĥĺáĥ ¡ áĥĲáĥ ľ Ġáĥ Ľ áĥĺáĥ ¦ áĥĶáĥ ĳ áĥ £ áĥ ļ áĥĺ Ġ áĥĲáĥ Ľ Ġáĥ Ĵ áĥ £ áĥ ľ áĥ ĵ áĥ ¨ áĥĺ Ġáĥ Ĵ áĥĲáĥ ¬ áĥĶáĥ ķ áĥ ł áĥĺ áĥĲáĥ ľ áĥĶáĥ ĳ áĥĺáĥ ¡ Ġáĥ Ĺ áĥ ® áĥ Ŀ áĥ ķ áĥ ľ áĥĶáĥ ĳ áĥĺ Ċ Ġ* Ċ Ġ* ĠDescription : Ċ Ġ* ĠFrom Ġhere , Ġthe Ġleader Ġcan Ġmanage Ġreceived Ġjoin Ġrequests Ġfrom Ġother Ġusers Ġfor Ġhis Ġgroup Ċ Ġ* Ċ Ġ*/ Ċ Ċ class ĠReceived Requests Fragment () Ġ: ĠRequest List Fragment () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( groupId : ĠString , Ġuser Ids : ĠArrayList < String >): ĠReceived Requests Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠReceived Requests Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ( ARG _ GROUP _ ID , ĠgroupId ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . putString ArrayList ( ARG _ USER _ IDS , Ġuser Ids ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ /* Ġ ĠTODO Ġtest Ġloading Ġwith Ġon Attach ĊĠĠĠ Ġoverride Ġfun Ġon Attach ( context : ĠContext ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( context ) ĊĠĠĠ Ġ}*/ ĊĊĠĠĠ Ġoverride Ġfun Ġdisplay Cards () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . display Cards () ĊĠĠĠĠĠĠĠ Ġuser Card RecyclerView . adapter Ġ= ĠReceived Request Adapter () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinner Ġclass ĠReceived Request Adapter ĊĠĠĠĠĠĠĠ Ġ: ĠRecyclerView . Adapter < Received Request Adapter . Received Request ViewHolder >() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġinner Ġclass ĠReceived Request ViewHolder ( item View : ĠView ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġval Ġuser ImageView Ġ= ĠitemView . user ImageView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġval Ġuser FullName Ġ= ĠitemView . user FullName TextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġval Ġuser Re putation Ġ= ĠitemView . user Combined Re putation TextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġval Ġaccept Button Ġ= ĠitemView . accept Button ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġval Ġreject Button Ġ= ĠitemView . reject Button ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠReceived Request ViewHolder ( LayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . received _ join _ request _ list _ item , Ġparent , Ġfalse )) ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠReceived Request ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcurrent Card Ġ= Ġuser Cards [ position ] ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Profile Ġpicture ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPic asso . with ( activity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( current Card . profile _ picture _ url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. transform ( Image Util . small Circle ( activity )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( holder . user ImageView ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . user ImageView . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGeneral . open UserProfile ( activity , Ġcurrent Card . id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Full Ġname ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . user FullName . text Ġ= Ġcurrent Card . get FullName () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Re putation ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . user Re putation . text Ġ= Ġcurrent Card . get Combined Re putation Text ( activity ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Accept Ġjoin Ġrequest Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . accept Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaccept Request ( current Card . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġremove Card At ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Reject Ġjoin Ġrequest Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . reject Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreject Request ( current Card . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġremove Card At ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġaccept Request ( userId : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Removing Ġjoin Ġrequest Ġfrom Ġgroup ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Group Ref . child ( F _ INV IT ED _ MEMBER _ IDS ). child ( userId ). remove Value () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Adding Ġuser Ġto Ġgroup 's Ġjoined Ġmembers ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Group Ref . child ( F _ MEMBER _ IDS ). child ( userId ). setValue ( false ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Removing Ġjoin Ġrequest Ġfrom Ġuser ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusers Ref . child ( userId ). child ( F _ INV IT ED _ GROUP _ IDS ). child ( groupId ). remove Value () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Adding ĠgroupId Ġto Ġuser Ġjoined Ġgroups ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusers Ref . child ( userId ). child ( F _ GROUP _ IDS ). child ( groupId ). setValue ( false ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( activity , ĠR . string . member _ added , ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġreject Request ( userId : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Removing Ġjoin Ġrequest Ġfrom Ġgroup ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Group Ref . child ( F _ INV IT ED _ MEMBER _ IDS ). child ( userId ). remove Value () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Removing Ġjoin Ġrequest Ġfrom Ġuser ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusers Ref . child ( userId ). child ( F _ INV IT ED _ GROUP _ IDS ). child ( groupId ). remove Value () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġuser Cards . size ĊĠĠĠ Ġ} Ċ }