--- android/TrainInfo/src/dk/thoerup/traininfo/DepartureList.java 2011/04/21 05:51:25 1372 +++ android/TrainInfo/src/dk/thoerup/traininfo/DepartureList.java 2011/04/23 08:01:57 1373 @@ -431,7 +431,7 @@ pgDialog.dismiss(); //TODO: differentiate whether it was a communication error with my backend //or that the backend failed because bane.dk was unavailable - if (departures != null) { + if (departures != null && departures.errorCode == null) { commFailCounter = 0; DepartureList.this.getListView().setVisibility(View.GONE); //Experimental, inspired by http://osdir.com/ml/Android-Developers/2010-04/msg01198.html adapter.setDepartures(departures.entries); @@ -459,9 +459,16 @@ } } else { // communication or parse error commFailCounter++; - AlertDialog.Builder builder = new AlertDialog.Builder(DepartureList.this); - builder.setMessage("Error finding departures"); + AlertDialog.Builder builder = new AlertDialog.Builder(DepartureList.this); + + if (departures != null && departures.errorCode != null ) { //got an error xml back + commFailCounter = 10; + builder.setMessage( getString(R.string.no_backend) ); + } else { + builder.setMessage( getString(R.string.departurelist_fetcherror) ); + } builder.setCancelable(true); + if (commFailCounter < 3) { builder.setPositiveButton(getString(generic_retry), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) {