private void updateALCBox(final CacheDetailActivity activity) {
            final boolean isLabListing = CacheUtils.isLabAdventure(cache);
            final boolean isEnabled = isLabListing || (cache.getType() == CacheType.MYSTERY && CacheUtils.findAdvLabUrl(cache) != null);
            binding.alcBox.setVisibility(isEnabled ? View.VISIBLE : View.GONE);
            binding.alcText.setText(CacheUtils.isLabPlayerInstalled(activity) ? (isLabListing ? R.string.cache_alc_start : R.string.cache_alc_related_start) : R.string.cache_alc_install);
            if (isEnabled) {
                CacheUtils.setLabLink(activity, binding.sendToAlc, isLabListing ? cache.getUrl() : CacheUtils.findAdvLabUrl(cache));
            }
        }
Show/hide buttons, set text in favorite line and box
main/src/main/java/cgeo/geocaching/CacheDetailActivity.java