public long getRuntimeTicks() { switch (type) { case LiveTvRecording: case BaseItem: return baseItem.getRunTimeTicks() != null ? baseItem.getRunTimeTicks() : 0; case Person: break; case Server: break; case User: break; case Chapter: break; case SearchHint: break; case LiveTvChannel: break; case GridButton: break; case LiveTvProgram: return ((baseItem.getStartDate() != null) && (baseItem.getEndDate() != null)) ? (baseItem.getEndDate().getTime() - (baseItem.getStartDate().getTime() * 10000)) : 0; } return 0; }
public String getSubText() { switch (type) { case BaseItem: return Utils.GetSubName(baseItem); case Person: return person.getRole(); case Chapter: Long pos = chapterInfo.getStartPositionTicks() / 10000; return Utils.formatMillis(pos.intValue()); case Server: return serverInfo.getLocalAddress().substring(7); case LiveTvChannel: return channelInfo.getNumber(); case LiveTvProgram: Calendar start = Calendar.getInstance(); start.setTime(Utils.convertToLocalDate(baseItem.getStartDate())); int day = start.get(Calendar.DAY_OF_YEAR); return baseItem.getChannelName() + " - " + (baseItem.getEpisodeTitle() != null ? baseItem.getEpisodeTitle() : "") + " " + ((day != Calendar.getInstance().get(Calendar.DAY_OF_YEAR) ? new SimpleDateFormat("d MMM").format(start.getTime()) + " " : "") + android.text.format.DateFormat.getTimeFormat(TvApp.getApplication()) .format(start.getTime()) + "-" + android.text.format.DateFormat.getTimeFormat(TvApp.getApplication()) .format(Utils.convertToLocalDate(baseItem.getEndDate()))); case LiveTvRecording: return (baseItem.getChannelName() != null ? baseItem.getChannelName() + " - " : "") + (baseItem.getEpisodeTitle() != null ? baseItem.getEpisodeTitle() : "") + " " + new SimpleDateFormat("d MMM") .format(Utils.convertToLocalDate(baseItem.getStartDate())) + " " + (android.text.format.DateFormat.getTimeFormat(TvApp.getApplication()) .format(Utils.convertToLocalDate(baseItem.getStartDate())) + "-" + android.text.format.DateFormat.getTimeFormat(TvApp.getApplication()) .format(Utils.convertToLocalDate(baseItem.getEndDate()))); case User: Date date = user.getLastActivityDate(); return date != null ? DateUtils.getRelativeTimeSpanString(Utils.convertToLocalDate(date).getTime()) .toString() : TvApp.getApplication().getString(R.string.lbl_never); case SearchHint: return searchHint.getType(); } return ""; }