package Ġcom . example . vehicle contact ing . Tab Fragment Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroidx . view pager 2 . widget . ViewPager 2 Ċ import Ġcom . example . vehicle contact ing .* Ċ import Ġcom . example . vehicle contact ing . Activity . Chat Box Activity Ċ import Ġcom . example . vehicle contact ing . Activity . Create Activity Ċ import Ġcom . example . vehicle contact ing . Activity . Dis cuss Activity Ċ import Ġcom . example . vehicle contact ing . Activity . Login Activity Ċ import Ġcom . example . vehicle contact ing . Adapter . Community ViewPager Fragment State Adapter Ċ import Ġcom . example . vehicle contact ing . Repository . Activity Collector Ċ import Ġcom . example . vehicle contact ing . Repository . Anim Repository Ċ import Ġcom . example . vehicle contact ing . Repository . Info Repository Ċ import Ġcom . example . vehicle contact ing . Repository . Status Repository Ċ import Ġcom . example . vehicle contact ing . Web . Dis cuss Controller . Dis cuss Repository Ċ import Ġcom . example . vehicle contact ing . Widget . Community Card View Ċ import Ġkotlinx . android . synt hetic . main . fragment _ community .* Ċ import Ġkotlinx . android . synt hetic . main . fragment _ recommend .* Ċ import Ġkotlinx . android . synt hetic . main . view _ community title .* Ċ Ċ class ĠCommunity Fragment : ĠFragment () Ġ{ ĊĊĠĠĠ Ġvar Ġparent Context : ĠContext ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ community , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġparent Context Ġ= Ġcontext ?. application Context ĊĠĠĠĠĠĠĠ Ġinit Widget () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Widget () Ġ{ ĊĠĠĠĠĠĠĠ Ġtab Event () ĊĠĠĠĠĠĠĠ Ġvp Event () ĊĠĠĠĠĠĠĠ Ġadd Event () ĊĠĠĠĠĠĠĠ Ġchat Box Event () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġchat Box Event () Ġ{ ĊĠĠĠĠĠĠĠ Ġcommunity _ chat Box . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Info Repository . login Status . status ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchat Intent Ġ= ĠIntent ( parent Context !! , ĠChat Box Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( chat Intent , ĠActivity Collector . ACTIVITY _ CHAT _ BOX ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogin Intent Ġ= ĠIntent ( parent Context !! , ĠLogin Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( login Intent , ĠActivity Collector . ACTIVITY _ LOGIN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtab Event () Ġ{ ĊĠĠĠĠĠĠĠ Ġcommunity _ recommend . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Status Repository . community Tab Status Ġ!= ĠStatus Repository . Community Tab . RE COMM END ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text En lar ged Click Anim ( it Ġas ĠTextView , Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text Reduc ed Click Anim ( community _ follow , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . community Tab Status Ġ= ĠStatus Repository . Community Tab . RE COMM END ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommunity _ view pager . currentItem Ġ= ĠStatus Repository . PAGE _ RE COMM END ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcommunity _ follow . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Status Repository . community Tab Status Ġ!= ĠStatus Repository . Community Tab . FOLLOW ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text En lar ged Click Anim ( it Ġas ĠTextView , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text Reduc ed Click Anim ( community _ recommend , Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . community Tab Status Ġ= ĠStatus Repository . Community Tab . FOLLOW ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommunity _ view pager . currentItem Ġ= ĠStatus Repository . PAGE _ FOLLOW ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġvp Event () Ġ{ ĊĠĠĠĠĠĠĠ Ġcommunity _ view pager . adapter Ġ= ĠCommunity ViewPager Fragment State Adapter ( activity Ġas ĠAppCompatActivity , Ġ 2 ) ĊĠĠĠĠĠĠĠ Ġcommunity _ view pager . register On Page Change Callback ( object Ġ: ĠView Pager 2 . On Page Change Callback () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Selected ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Page Selected ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( position ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . PAGE _ FOLLOW Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text En lar ged Click Anim ( community _ follow , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text Reduc ed Click Anim ( community _ recommend , Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . community Tab Status Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . Community Tab . FOLLOW ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommunity _ view pager . currentItem Ġ= ĠStatus Repository . PAGE _ FOLLOW ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . PAGE _ RE COMM END Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text En lar ged Click Anim ( community _ recommend , Ġ- 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Text Reduc ed Click Anim ( community _ follow , Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . community Tab Status Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStatus Repository . Community Tab . RE COMM END ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcommunity _ view pager . currentItem Ġ= ĠStatus Repository . PAGE _ RE COMM END ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġ( community _ view pager . getChild At ( 0 ) Ġas ĠRecyclerView ). over Scroll Mode Ġ= ĠRecyclerView . OVER _ SCROLL _ NE VER ĊĠĠĠĠĠĠĠ Ġ// Ġcommunity _ view pager . is User Input Enabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ// Ġè®¾ç½® æĹłæ³ķ æ»ĳ åĬ¨ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Event () Ġ{ ĊĠĠĠĠĠĠĠ Ġcommunity _ add . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Info Repository . login Status . status ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAnim Repository . play Add Article Click Anim ( it Ġas ĠImageView ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcreate Intent Ġ= ĠIntent ( parent Context , ĠCreate Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( create Intent , ĠActivity Collector . ACTIVITY _ CREATE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogin Intent Ġ= ĠIntent ( parent Context , ĠLogin Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( login Intent , ĠActivity Collector . ACTIVITY _ LOGIN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Result ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== ĠActivity . RESULT _ OK ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( request Code ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠActivity Collector . ACTIVITY _ DIS CU SS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdelete Ġ= Ġdata ?. getBoolean Extra (" update ", Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delete Ġ== Ġtrue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDis cuss Repository . dis cuss List . clear () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrecommend _ cards . removeAll Views () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDis cuss Repository . get Dis cuss ( 1 0 , Ġ 1 , Ġ 1 , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( parent Context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( dis cuss Ġin ĠDis cuss Repository . dis cuss List ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠCommunity Card View ( parent Context !! , Ġdiscuss . title , Ġdiscuss . user Photo , Ġdiscuss . username , dis cuss . description , dis cuss . photo , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdiscuss . like Counts , dis cuss . comment Counts ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Info Repository . login Status . status ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDis cuss Repository . getFirst Dis cuss ( Info Repository . user !!. id , Ġ 3 0 , Ġdiscuss . number ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDis cuss Repository . getFirst Dis cuss ( 3 0 , Ġdiscuss . number ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdiscuss Intent Ġ= ĠIntent ( parent Context , ĠDis cuss Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdiscuss Intent . putExtra (" owner Comment ", ĠDis cuss Repository . owner Comment ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdiscuss Intent . putExtra (" comments ", ĠDis cuss Repository . comment List ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( dis cuss Intent , ĠActivity Collector . ACTIVITY _ DIS CU SS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrecommend _ cards . addView ( view ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata . putExtra (" update ", Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }