diff --git a/mobile/com.sap.sailing.android.tracking.app/res/menu/options_menu_with_checkout.xml b/mobile/com.sap.sailing.android.tracking.app/res/menu/options_menu_with_checkout.xml index 7cf322ee94e..f2dca64bee3 100644 --- a/mobile/com.sap.sailing.android.tracking.app/res/menu/options_menu_with_checkout.xml +++ b/mobile/com.sap.sailing.android.tracking.app/res/menu/options_menu_with_checkout.xml @@ -14,4 +14,8 @@ android:title="@string/options_menu_checkout" app:showAsAction=""/> + \ No newline at end of file diff --git a/mobile/com.sap.sailing.android.tracking.app/res/values-de/strings.xml b/mobile/com.sap.sailing.android.tracking.app/res/values-de/strings.xml index f8c4a9ce7c5..90e41b318a4 100644 --- a/mobile/com.sap.sailing.android.tracking.app/res/values-de/strings.xml +++ b/mobile/com.sap.sailing.android.tracking.app/res/values-de/strings.xml @@ -7,6 +7,8 @@ SAP Sailing Tracking App Einstellungen Checkout + Team Foto hinzufügen + Team Foto ersetzen Andere Einstellungen Der QR-Code befindet sich auf Ihrer Teilnahmebestätigung Geräte-ID diff --git a/mobile/com.sap.sailing.android.tracking.app/res/values/strings.xml b/mobile/com.sap.sailing.android.tracking.app/res/values/strings.xml index 95858e89c69..2994ecfe555 100644 --- a/mobile/com.sap.sailing.android.tracking.app/res/values/strings.xml +++ b/mobile/com.sap.sailing.android.tracking.app/res/values/strings.xml @@ -5,6 +5,8 @@ SAP Sailing Tracking App Settings Checkout + Add Team Photo + Replace Team Photo Other Settings Device Identifier SAP Sailing Tracker started diff --git a/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/activities/RegattaActivity.java b/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/activities/RegattaActivity.java index a565ea4b0cf..ba01fa1c885 100644 --- a/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/activities/RegattaActivity.java +++ b/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/activities/RegattaActivity.java @@ -59,8 +59,9 @@ public class RegattaActivity extends BaseActivity { public EventInfo event; public CompetitorInfo competitor; public LeaderboardInfo leaderboard; - - + + private boolean hasPicture; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -91,8 +92,7 @@ public class RegattaActivity extends BaseActivity { getSupportActionBar().setTitle(leaderboard.name); getSupportActionBar().setSubtitle(event.name); } - - replaceFragment(R.id.content_frame, new RegattaFragment()); + replaceFragment(R.id.content_frame, new RegattaFragment()); } @Override @@ -111,7 +111,21 @@ public class RegattaActivity extends BaseActivity { inflater.inflate(R.menu.options_menu_with_checkout, menu); return true; } - + + @Override + public boolean onPrepareOptionsMenu(Menu menu) { + MenuItem teamPhotoItem = menu.findItem(R.id.options_menu_add_team_image); + if(hasPicture) + { + teamPhotoItem.setTitle(getString(R.string.options_replace_team_photo)); + } + else + { + teamPhotoItem.setTitle(getString(R.string.options_add_team_photo)); + } + return super.onPrepareOptionsMenu(menu); + } + @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { @@ -123,6 +137,10 @@ public class RegattaActivity extends BaseActivity { ExLog.i(this, TAG, "Clicked CHECKOUT."); checkout(); return true; + case R.id.options_menu_add_team_image: + ExLog.i(this, TAG, "Clicked ADD TEAM IMAGE"); + getRegattaFragment().showChooseExistingPictureOrTakeNewPhotoAlert(); + return true; default: return super.onOptionsItemSelected(item); } @@ -136,11 +154,12 @@ public class RegattaActivity extends BaseActivity { runOnUiThread(new Runnable() { @Override public void run() { + hasPicture = true; LinearLayout addTeamPhotoTextView = (LinearLayout) findViewById(R.id.add_photo); addTeamPhotoTextView.setVisibility(View.INVISIBLE); getRegattaFragment().setChangePhotoButtonHidden(false); - } + } }); } @@ -160,7 +179,7 @@ public class RegattaActivity extends BaseActivity { TextView sailIdTextView = (TextView)findViewById(R.id.sail_id); sailIdTextView.setText(competitor.sailId); - + // ImageView flagImageView = (ImageView)findViewById(R.id.flag_image); //String flagStr = String.format("%s.png", countryCode); // String uri = "@drawable/" + competitor.countryCode.toLowerCase(Locale.getDefault()); @@ -179,7 +198,6 @@ public class RegattaActivity extends BaseActivity { ImageView imageView = (ImageView) findViewById(R.id.userImage); Bitmap storedImage = getStoredImage(getLeaderboardImageFileName(leaderboard.name)); - if (storedImage == null) { if (event.imageUrl != null) diff --git a/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/fragments/RegattaFragment.java b/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/fragments/RegattaFragment.java index c17cadb582c..a59ab41b11f 100644 --- a/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/fragments/RegattaFragment.java +++ b/mobile/com.sap.sailing.android.tracking.app/src/com/sap/sailing/android/tracking/app/ui/fragments/RegattaFragment.java @@ -193,7 +193,7 @@ public class RegattaFragment extends BaseFragment implements OnClickListener { /** * Ask user if he wants to take a new picture or select an existing one. */ - private void showChooseExistingPictureOrTakeNewPhotoAlert() { + public void showChooseExistingPictureOrTakeNewPhotoAlert() { AlertDialog dialog = new AlertDialog.Builder(getActivity()) .setTitle(R.string.add_photo_select) .setMessage(