diff --git a/app/src/main/java/com/example/nemophila/MapsActivity.java b/app/src/main/java/com/example/nemophila/MapsActivity.java index 0702432..43eb9b0 100644 --- a/app/src/main/java/com/example/nemophila/MapsActivity.java +++ b/app/src/main/java/com/example/nemophila/MapsActivity.java @@ -52,6 +52,7 @@ ShopsViewModel shopsViewModel; FriendViewModel friendViewModel; DialogFragment filterDialog; + MapsFragment mapsFragment; private Handler handler; //private HashMap NameToId; @@ -281,6 +282,10 @@ return false; } + public void setMapsFragment(MapsFragment mapsFragment) { + this.mapsFragment = mapsFragment; + } + // 内部クラス private class MyAdapter extends ArrayAdapter { private LayoutInflater layoutInflater; @@ -355,42 +360,47 @@ for (Shop shop : shops) { Marker setMarker = shopsViewModel.getMarker(shop); - //場合分け - //フィルターを一切かけていないとき - if(nemophila.getSelectGenres().isEmpty() && nemophila.getSelectFriends().isEmpty()){ - setMarker.setVisible(true); - } - //ジャンルのみフィルターをかけているとき - else if(nemophila.getSelectFriends().isEmpty()) { - for(String genre : nemophila.getSelectGenres()) { - if(shop.getGenreSet().contains(genre)) { - setMarker.setVisible(true); - } else { - setMarker.setVisible(false); - } + //自分とそのフレンド以外の投稿は確認しない + if (shop.getUserIdSet().contains(nemophila.getUid()) || shop.getUserIdSet().contains(friendsData)) { + //場合分け + //フィルターを一切かけていないとき + if(nemophila.getSelectGenres().isEmpty() && nemophila.getSelectFriends().isEmpty()){ + setMarker.setVisible(true); } - } - //フレンドのみフィルターをかけているとき - else if(nemophila.getSelectGenres().isEmpty()) { - for(String friendId : nemophila.getSelectFriends()) { - if(shop.getUserIdSet().contains(friendId)) { - setMarker.setVisible(true); - } else { - setMarker.setVisible(false); - } - } - } - //どちらもフィルターをかけているとき - else { - for(String genre : nemophila.getSelectGenres()) { - for(String friendId : nemophila.getSelectFriends()) { - if (shop.getGenreSet().contains(genre) && shop.getUserIdSet().contains(friendId)) { + //ジャンルのみフィルターをかけているとき + else if(nemophila.getSelectFriends().isEmpty()) { + for(String genre : nemophila.getSelectGenres()) { + if(shop.getGenreSet().contains(genre)) { setMarker.setVisible(true); } else { setMarker.setVisible(false); } } } + //フレンドのみフィルターをかけているとき + else if(nemophila.getSelectGenres().isEmpty()) { + for(String friendId : nemophila.getSelectFriends()) { + if(shop.getUserIdSet().contains(friendId)) { + setMarker.setVisible(true); + } else { + setMarker.setVisible(false); + } + } + } + //どちらもフィルターをかけているとき + else { + for(String genre : nemophila.getSelectGenres()) { + for(String friendId : nemophila.getSelectFriends()) { + if (shop.getGenreSet().contains(genre) && shop.getUserIdSet().contains(friendId)) { + setMarker.setVisible(true); + } else { + setMarker.setVisible(false); + } + } + } + } + } else { + setMarker.setVisible(false); } } }