package Ġcom . gmail . e amos se . imdb . ui . extension Ċ Ċ import Ġandroid . icu . text . SimpleDateFormat Ċ import Ġandroid . widget . TextView Ċ import Ġcom . gmail . e amos se . idb data . api . response . Category Response Ċ import Ġorg . w 3 c . dom . Text Ċ import Ġjava . util .* Ċ Ċ fun ĠTextView . bind Movie Categories ( categories : ĠList < Category Response . Genre > ){ ĊĊĠĠĠ Ġval Ġmax Num Of Categories Ġ= Ġ 3 ĊĠĠĠ Ġvar Ġtext Ġ= Ġ"" ĊĠĠĠ Ġval Ġappend Text Ġ= Ġ" Ġ/ Ġ" ĊĊĠĠĠ Ġval Ġloop Count Ġ= Ġif Ġ( categories . size Ġ<= Ġmax Num Of Categories ) Ġcategories . size Ġelse Ġmax Num Of Categories ĊĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġloop Count ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġtext Ġ+ Ġcategories [ i ]. name Ġ+ Ġappend Text ĊĠĠĠ Ġ} ĊĠĠĠ Ġthis . text Ġ= Ġtext . drop Last ( append Text . length ) Ċ } Ċ Ċ fun ĠTextView . bind Date ( date : ĠString ){ ĊĠĠĠ Ġval ĠstartIndex Ġ= Ġ 0 ĊĠĠĠ Ġval Ġend Index Ġ= Ġ 4 ĊĠĠĠ Ġval Ġyear Ġ= Ġdate . sub Sequence ( startIndex , end Index ) ĊĠĠĠ Ġthis . text Ġ= Ġyear Ċ } Ċ Ċ fun ĠTextView . bind Language ( language Code : ĠString ){ ĊĠĠĠ Ġthis . text Ġ= ĠLocale ( language Code ). getDisplay Language ( Locale (" en ")) Ċ } Ċ Ċ fun ĠTextView . bind Time Movie ( time : ĠInt ){ ĊĠĠĠ Ġval Ġminutes Ġ= Ġtime % 6 0 ĊĠĠĠ Ġval Ġhours : ĠInt Ġ= Ġtime / 6 0 ĊĠĠĠ Ġthis . text ="$ hours Ġh Ġ$ minutes " Ċ } Ċ Ċ fun ĠTextView . bind DateFormat ( date : ĠString ){ ĊĠĠĠ Ġif Ġ( date . isNull Or Blank ()) Ġreturn ĊĠĠĠ Ġval Ġdate Ġ= ĠSimpleDateFormat (" yyyy - MM - dd "). parse ( date ) ĊĠĠĠ Ġval Ġpat Ġ= ĠSimpleDateFormat (). to Localized Pattern (). replace ("\\ W ?[ Hh K kms Sz ZX a ]+ \\ W ? ". to Regex (), Ġ"") ĊĠĠĠ Ġval Ġlocal Formatter Ġ= ĠSimpleDateFormat ( pat , ĠLocale . getDefault ()) ĊĠĠĠ Ġthis . text Ġ= Ġlocal Formatter . format ( date ) Ċ }