package Ġcom . pop ov . e ge answers Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . card view . widget . Card View Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Image Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . google . firebase . analytics . Firebase Analytics Ċ import Ġcom . pop ov . e ge answers . model . Variant UI Ċ import Ġcom . pop ov . e ge answers . ui . O GE Variant Activity Ċ import Ġjava . text . SimpleDateFormat Ċ import Ġjava . util .* Ċ Ċ class ĠO GE Variants Adapter ( private Ġval Ġfragment : ĠFragment , Ġprivate Ġvar Ġitems : ĠMutable List < Variant UI >) Ġ: ĠRecyclerView . Adapter < O GE Variants Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġfirebase Analytics Ġ= ĠFirebase Analytics . getInstance ( fragment . context !! ) ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġitems . size ĊĊĠĠĠ Ġ// ĠIn fl ates Ġthe Ġitem Ġviews ĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠViewHolder ( LayoutInflater . from ( parent . context ). inflate ( R . layout . variant _ item , Ġparent , Ġfalse )) ĊĊĠĠĠ Ġ// ĠBind s Ġeach Ġanswer Ġin Ġthe ĠList Ġto Ġa Ġview ĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvariant Ġ= Ġitems [ position ] ĊĠĠĠĠĠĠĠ Ġholder . variant Name TextView . text Ġ= Ġfragment . getString ( R . string . variant _ o ge ) Ġ+ Ġvariant . number . toString () ĊĠĠĠĠĠĠĠ Ġholder . publication Date TextView . text Ġ= ĠSimpleDateFormat /* dd . MM .*/ (" yyyy ", ĠLocale . US ). format ( variant . publication Date ) ĊĠĠĠĠĠĠĠ Ġif Ġ( variant . is Offline ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . download Button . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Image Resource ( R . drawable . ic _ offline _ pin _ grey _ 6 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . download Button . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/* setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . alert ( R . string . delete _ confirmation ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpositive Button ( android . R . string . yes ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( variant . delete ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . toast ( context . getString ( R . string . deletion _ successful )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . download Button . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġcontext . toast ( context . getString ( R . string . deletion _ failed )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnegative Button ( android . R . string . no ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġholder . download Button . visibility Ġ= ĠView . GONE ĊĊĠĠĠĠĠĠĠ Ġholder . card View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Int ( Firebase Analytics . Param . ITEM _ ID , Ġvariant . number ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString ( Firebase Analytics . Param . CONTENT _ TYPE , Ġ" o ge ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfirebase Analytics . log Event ( Firebase Analytics . Event . SELECT _ CONTENT , Ġbundle ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( fragment . context , ĠO GE Variant Activity :: class . java ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" var Number ", Ġvariant . number ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra (" var Year ", Ġvariant . year ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . startActivity For Result ( intent , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcard View : ĠCard View Ġ= Ġview . findViewById ( R . id . card View ) ĊĠĠĠĠĠĠĠ Ġval Ġvariant Name TextView : ĠTextView Ġ= Ġview . findViewById ( R . id . variant Name TextView ) ĊĠĠĠĠĠĠĠ Ġval Ġpublication Date TextView : ĠTextView Ġ= Ġview . findViewById ( R . id . publication Date TextView ) ĊĠĠĠĠĠĠĠ Ġval Ġdownload Button : ĠImage Button Ġ= Ġview . findViewById ( R . id . download Button ) ĊĠĠĠ Ġ} Ċ }