private void refreshTrackable() {
        showProgress(true);

        // create trackable connector
        connector = ConnectorFactory.getTrackableConnector(geocode, brand);
        loggingManager = connector.getTrackableLoggingManager(geocode);

        if (loggingManager == null) {
            showToast(res.getString(R.string.err_tb_not_loggable));
            finish();
        }

        // Initialize the UI
        init();

        createDisposables.add(AndroidRxUtils.bindActivity(this, ConnectorFactory.loadTrackable(geocode, null, null, brand))
                .toSingle()
                .subscribe(newTrackable -> {
                    if (trackingCode != null) {
                        newTrackable.setTrackingcode(trackingCode);
                    }
                    startLoader(newTrackable);
                }, throwable -> {
                    Log.e("cannot load trackable " + geocode, throwable);
                    showProgress(false);

                    if (StringUtils.isNotBlank(geocode)) {
                        showToast(res.getString(R.string.err_tb_not_found, geocode));
                    } else {
                        showToast(res.getString(R.string.err_tb_find_that));
                    }

                    setResult(RESULT_CANCELED);
                    finish();
                }));
    }
How many times the warning popup for geocode not set should be displayed
main/src/main/java/cgeo/geocaching/log/LogTrackableActivity.java