package Ġl up ed apps . com . k ied yw ol ne . activities Ċ Ċ import Ġandroid . app . DatePicker Dialog Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . support . v 7 . widget . Linear LayoutManager Ċ import Ġandroid . view . LayoutInflater Ċ import Ġcom . google . android . gms . ads . Ad Request Ċ import Ġcom . google . android . gms . ads . Mobile Ads Ċ import Ġkotlinx . android . synt hetic . main . action bar _ layout .* Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ import Ġl up ed apps . com . k ied yw ol ne . models . H oliday Item Ċ import Ġl up ed apps . com . k ied yw ol ne . models . H olidays DataSet Ċ import Ġl up ed apps . com . k ied yw ol ne . R Ċ import Ġl up ed apps . com . k ied yw ol ne . adapters . Main ListAdapter Ċ import Ġl up ed apps . com . k ied yw ol ne . helpers . Date Helper Ċ import Ġjava . util .* ĊĊ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĠĠĠĠĠĠĠ ĠMobile Ads . initialize ( this , Ġ" ca - app - pub - 1 2 1 7 9 0 8 8 0 4 2 7 1 0 2 1 ~ 7 9 9 5 8 2 0 3 4 6 ") ĊĠĠĠĠĠĠĠ Ġinit Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Views (){ ĊĠĠĠĠĠĠĠ Ġinit ActionBar () ĊĠĠĠĠĠĠĠ Ġinit Ad () ĊĠĠĠĠĠĠĠ Ġinit List () ĊĠĠĠĠĠĠĠ Ġinit Switch () ĊĠĠĠĠĠĠĠ Ġinit Text Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Text Views (){ ĊĠĠĠĠĠĠĠ Ġcurrent Year TextView . text Ġ= ĠDate Helper . current Year (). toString () ĊĠĠĠĠĠĠĠ Ġnext Year TextView . text Ġ= ĠDate Helper . next Year (). toString () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Switch (){ ĊĠĠĠĠĠĠĠ Ġyear Switch . setOn Checked ChangeListener { _, Ġis Checked Ġ-> Ġinit List ( isChecked ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Ad (){ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠAd Request . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġad View . load Ad ( request ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit List ( next Year Ġ: Boolean Ġ= Ġfalse ){ ĊĠĠĠĠĠĠĠ Ġval Ġitems Ġ: ĠArrayList < H oliday Item > Ġ= ĠH olidays DataSet ( next Year , Ġapplication ). h olidays ĊĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= ĠLinearLayoutManager ( this ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= ĠMain ListAdapter ( items , Ġ{ Ġitem : ĠH oliday Item Ġ-> Ġopen DatePicker ( item ) Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit ActionBar () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġaction Bar Ġ= Ġsupport ActionBar ĊĠĠĠĠĠĠĠ Ġaction Bar !!. set Display Show Home Enabled ( false ) ĊĠĠĠĠĠĠĠ Ġaction Bar . set Display Show Title Enabled ( false ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcustom Menu View Ġ= ĠLayoutInflater . from ( this ). inflate ( R . layout . action bar _ layout , Ġnull ) ĊĠĠĠĠĠĠĠ Ġaction Bar . custom View Ġ= Ġcustom Menu View ĊĠĠĠĠĠĠĠ Ġaction Bar . set Display Show Custom Enabled ( true ) ĊĠĠĠĠĠĠĠ Ġaction Bar . show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġopen DatePicker ( item Ġ: ĠH oliday Item ){ ĊĠĠĠĠĠĠĠ Ġval Ġcal Ġ= ĠCalendar . getInstance () ĊĠĠĠĠĠĠĠ Ġcal . time Ġ= Ġ Ġitem . date ĊĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= ĠDate Picker Dialog ( this , Ġnull Ġ, Ġcal . get ( Calendar . YEAR ), Ġcal . get ( Calendar . MONTH ), Ġcal . get ( Calendar . DAY _ OF _ MONTH )) ĊĠĠĠĠĠĠĠ Ġdialog . show () ĊĠĠĠ Ġ} Ċ } Ċ