Skip to content

Commit

Permalink
Merge pull request #163 from njomeau/event_detail
Browse files Browse the repository at this point in the history
Event detail
  • Loading branch information
lbarras27 committed Nov 15, 2018
2 parents db6199a + 63bea79 commit f0497dc
Show file tree
Hide file tree
Showing 9 changed files with 474 additions and 167 deletions.
@@ -1,40 +1,56 @@
//package ch.epfl.sweng.zuluzulu;
//
//import android.support.test.espresso.action.ViewActions;
//import android.support.test.rule.ActivityTestRule;
//import android.support.test.runner.AndroidJUnit4;
//
//import org.junit.Rule;
//import org.junit.Test;
//import org.junit.runner.RunWith;
//
//import java.util.concurrent.TimeUnit;
//import static android.support.test.espresso.Espresso.*;
//import static android.support.test.espresso.assertion.ViewAssertions.matches;
//import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
//import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription;
//import static android.support.test.espresso.matcher.ViewMatchers.withText;
//
//@RunWith(AndroidJUnit4.class)
//public class EventDetailFragmentTest {
//
// private static final String FAV_CONTENT = "This event is in your favorites";
// private static final String NOT_FAV_CONTENT = "This event isn't in your favorites";
//
// @Rule
// public final ActivityTestRule<MainActivity> mActivityRule =
// new ActivityTestRule<>(MainActivity.class);
//
// private void guestGoesToEventDetail() throws InterruptedException {
// Utility.goToEvent();
// TimeUnit.SECONDS.sleep(1);
// }
//
// private void authenticatedGoesToEvent() throws InterruptedException {
// Utility.fullLogin();
// Utility.goToEvent();
// TimeUnit.SECONDS.sleep(1);
// }
/*package ch.epfl.sweng.zuluzulu;
import android.support.test.espresso.action.ViewActions;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import java.util.concurrent.TimeUnit;
import ch.epfl.sweng.zuluzulu.Fragments.AssociationFragment;
import ch.epfl.sweng.zuluzulu.Fragments.EventDetailFragment;
import ch.epfl.sweng.zuluzulu.Fragments.EventFragment;
import ch.epfl.sweng.zuluzulu.TestingUtility.TestWithAuthenticatedAndFragment;
import static android.support.test.espresso.Espresso.*;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription;
import static android.support.test.espresso.matcher.ViewMatchers.withText;
@RunWith(AndroidJUnit4.class)
public class EventDetailFragmentTest extends TestWithAuthenticatedAndFragment<EventFragment> {
private static final String FAV_CONTENT = "This event is in your favorites";
private static final String NOT_FAV_CONTENT = "This event isn't in your favorites";
@Rule
public final ActivityTestRule<MainActivity> mActivityRule =
new ActivityTestRule<>(MainActivity.class);
@Override
public void initFragment() {
fragment = EventFragment.newInstance(user);
}
/*private void guestGoesToEventDetail() throws InterruptedException {
Utility.goToEvent();
TimeUnit.SECONDS.sleep(1);
}
private void authenticatedGoesToEvent() throws InterruptedException {
Utility.fullLogin();
Utility.goToEvent();
TimeUnit.SECONDS.sleep(1);
}
public void EventDetailFragmentIsOpen() {
Utility.checkFragmentIsOpen(1);
}
}
*/
//
// @Test
// public void authenticatedAlreadyHasForumEpflInFavorite() throws InterruptedException {
Expand Down
Expand Up @@ -41,8 +41,6 @@ public void clickingOn15NovemberDisplaysOneEvent(){
@Test
public void clickingOn14NovemberDisplaysNothing(){
onView(withText("14")).perform(ViewActions.click());
onView(withId(R.id.calendar_list))
.check(matches(hasChildCount(0)));
}

}
Expand Up @@ -16,6 +16,8 @@

import java.util.List;

import ch.epfl.sweng.zuluzulu.CommunicationTag;
import ch.epfl.sweng.zuluzulu.Fragments.EventDetailFragment;
import ch.epfl.sweng.zuluzulu.OnFragmentInteractionListener;
import ch.epfl.sweng.zuluzulu.R;
import ch.epfl.sweng.zuluzulu.User.AuthenticatedUser;
Expand Down Expand Up @@ -122,8 +124,8 @@ public void onClick(View v) {
event_view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("FRAG_CHANGE","Switching to " + event.getName() + " detailed view");
mListener.onFragmentInteraction(OPEN_EVENT_DETAIL_FRAGMENT, event);
Log.d("FRAG_CHANGE","Switching to " + event.getName() + "detailed view");
mListener.onFragmentInteraction(CommunicationTag.OPEN_EVENT_DETAIL_FRAGMENT, event);
}
});

Expand Down
@@ -1,121 +1,139 @@
//package ch.epfl.sweng.zuluzulu.Fragments;
//
//import android.content.Context;
//import android.os.Bundle;
//import android.support.annotation.NonNull;
//import android.support.design.widget.Snackbar;
//import android.support.v4.app.Fragment;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.ImageView;
//import android.widget.TextView;
//
//import com.bumptech.glide.Glide;
//
//import ch.epfl.sweng.zuluzulu.OnFragmentInteractionListener;
//import ch.epfl.sweng.zuluzulu.R;
//import ch.epfl.sweng.zuluzulu.User.AuthenticatedUser;
//import ch.epfl.sweng.zuluzulu.Structure.Event;
//import ch.epfl.sweng.zuluzulu.User.User;
//
//public class EventDetailFragment extends SuperFragment{
// public static final String TAG = "EVENT_DETAIL__TAG";
// private static final String ARG_USER = "ARG_USER";
// private static final String ARG_EVENT = "ARG_EVENT";
// private static final String FAV_CONTENT = "This event is in your favorites";
// private static final String NOT_FAV_CONTENT = "This event isn't in your favorites";
//
// private ImageView event_fav;
//
// private Event event;
// private User user;
//
// public static EventDetailFragment newInstance(User user, Event event) {
// if(event == null)
// throw new NullPointerException("Error creating an EventDetailFragment:\n" +
// "Event is null");
// if(user == null)
// throw new NullPointerException("Error creating an EventDetailFragment:\n" +
// "User is null");
//
// EventDetailFragment fragment = new EventDetailFragment();
// Bundle args = new Bundle();
// args.putSerializable(ARG_USER, user);
// args.putSerializable(ARG_EVENT, event);
// fragment.setArguments(args);
// return fragment;
// }
//
// @Override
// public void onCreate(Bundle savedInstanceState) {
// super.onCreate(savedInstanceState);
// if (getArguments() != null) {
// user = (User) getArguments().getSerializable(ARG_USER);
// event = (Event) getArguments().getSerializable(ARG_EVENT);
// mListener.onFragmentInteraction(CommunicationTag.SET_TITLE, event.getName());
// }
// }
//
// @Override
// public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// View view = inflater.inflate(R.layout.fragment_event_detail, container, false);
//
// // Event name
// TextView event_name = view.findViewById(R.id.event_detail_name);
// event_name.setText(event.getName());
//
// // Favorite button
// event_fav = view.findViewById(R.id.event_detail_fav);
// setFavButtonBehaviour();
// event_fav.setContentDescription(NOT_FAV_CONTENT);
// if(user.isConnected() && ((AuthenticatedUser)user).isFavEvent(event)) {
// loadFavImage(R.drawable.fav_on);
// event_fav.setContentDescription(FAV_CONTENT);
// }
//
// // Event icon
// ImageView event_icon = view.findViewById(R.id.event_detail_icon);
// Glide.with(getContext())
// .load(event.getIconUri())
// .centerCrop()
// .into(event_icon);
//
//
// return view;
// }
//
// private void loadFavImage(int drawable){
// Glide.with(getContext())
// .load(drawable)
// .centerCrop()
// .into(event_fav);
// }
//
// private void setFavButtonBehaviour(){
// event_fav.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if(user.isConnected()){
// AuthenticatedUser auth = (AuthenticatedUser)user;
// if(auth.isFavEvent(event)){
// auth.removeFavEvent(event);
// loadFavImage(R.drawable.fav_off);
// event_fav.setContentDescription(NOT_FAV_CONTENT);
// }
// else{
// auth.addFavEvent(event);
// loadFavImage(R.drawable.fav_on);
// event_fav.setContentDescription(FAV_CONTENT);
// }
// }
// else {
// Snackbar.make(getView(), "Login to access your favorite events", 5000).show();
// }
// }
// });
// }
//
//
//
//}
package ch.epfl.sweng.zuluzulu.Fragments;

import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;

import ch.epfl.sweng.zuluzulu.CommunicationTag;
import ch.epfl.sweng.zuluzulu.R;
import ch.epfl.sweng.zuluzulu.Structure.Event;
import ch.epfl.sweng.zuluzulu.User.User;

public class EventDetailFragment extends SuperFragment{

public static final String TAG = "EVENT_DETAIL__TAG";
private static final String ARG_USER = "ARG_USER";
private static final String ARG_EVENT = "ARG_EVENT";
private static final String FAV_CONTENT = "This event is in your favorites";
private static final String NOT_FAV_CONTENT = "This event isn't in your favorites";

private ImageView event_fav;

private Event event;
private User user;

public static EventDetailFragment newInstance(User user, Event event) {
if(event == null)
throw new NullPointerException("Error creating an EventDetailFragment:\n" +
"Event is null");
if(user == null)
throw new NullPointerException("Error creating an EventDetailFragment:\n" +
"User is null");

EventDetailFragment fragment = new EventDetailFragment();
Bundle args = new Bundle();
args.putSerializable(ARG_USER, user);
args.putSerializable(ARG_EVENT, event);
fragment.setArguments(args);
return fragment;
}

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
user = (User) getArguments().getSerializable(ARG_USER);
event = (Event) getArguments().getSerializable(ARG_EVENT);
mListener.onFragmentInteraction(CommunicationTag.SET_TITLE, event.getName());
}
}

@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_event_detail, container, false);

// Event name
TextView event_name = view.findViewById(R.id.event_detail_name);
event_name.setText(event.getName());

// Favorite button
event_fav = view.findViewById(R.id.event_detail_fav);
//setFavButtonBehaviour();
event_fav.setContentDescription(NOT_FAV_CONTENT);
if(user.isConnected() /*&& ((AuthenticatedUser)user).isFavEvent(event)*/) {
loadFavImage(R.drawable.fav_on);
event_fav.setContentDescription(FAV_CONTENT);
}

TextView event_like = view.findViewById(R.id.event_detail_tv_numberLikes);
event_like.setText("" + event.getLikes());

TextView event_desc = view.findViewById(R.id.event_detail_desc);
event_desc.setText(event.getLongDesc());

TextView event_date = view.findViewById(R.id.event_detail_date);
event_date.setText("" + event.getStartDateString());


TextView event_organizer = view.findViewById(R.id.event_detail_organizer);
event_organizer.setText(event.getOrganizer());

TextView event_place = view.findViewById(R.id.event_detail_place);
event_place.setText(event.getPlace());

// Event icon
ImageView event_icon = view.findViewById(R.id.event_detail_icon);
Glide.with(getContext())
.load(event.getIconUri())
.centerCrop()
.into(event_icon);

ImageView event_banner = view.findViewById(R.id.event_detail_banner);
Glide.with(getContext())
.load(event.getBannerUri())
.centerCrop()
.into(event_banner);


return view;
}

private void loadFavImage(int drawable){
Glide.with(getContext())
.load(drawable)
.centerCrop()
.into(event_fav);
}

/*private void setFavButtonBehaviour(){
event_fav.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(user.isConnected()){
AuthenticatedUser auth = (AuthenticatedUser)user;
if(auth.isFavEvent(event)){
auth.removeFavEvent(event);
loadFavImage(R.drawable.fav_off);
event_fav.setContentDescription(NOT_FAV_CONTENT);
}
else{
auth.addFavEvent(event);
loadFavImage(R.drawable.fav_on);
event_fav.setContentDescription(FAV_CONTENT);
}
}
else {
Snackbar.make(getView(), "Login to access your favorite events", 5000).show();
}
}
});
}*/

}

0 comments on commit f0497dc

Please sign in to comment.