package de.tum.in.tumcampusapp.cards; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.support.v7.widget.RecyclerView; import android.text.format.DateUtils; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import java.util.Date; import de.tum.in.tumcampusapp.R; import de.tum.in.tumcampusapp.auxiliary.NetUtils; import de.tum.in.tumcampusapp.cards.generic.Card; import de.tum.in.tumcampusapp.cards.generic.StickyCard; import de.tum.in.tumcampusapp.managers.CardManager; import de.tum.in.tumcampusapp.services.DownloadService; /** * Card that informs that no internet connection is available */ public class NoInternetCard extends StickyCard { public NoInternetCard(Context context) { super(CardManager.CARD_NO_INTERNET, context); } public static Card.CardViewHolder inflateViewHolder(ViewGroup parent) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_no_internet, parent, false); return new Card.CardViewHolder(view); } @Override public void updateViewHolder(RecyclerView.ViewHolder viewHolder) { super.updateViewHolder(viewHolder); View v = viewHolder.itemView; TextView lastUpdate = (TextView) v.findViewById(R.id.card_last_update); Date lastUpdated = new Date(DownloadService.lastUpdate(mContext)); final String time = DateUtils.getRelativeTimeSpanString(lastUpdated.getTime(), System.currentTimeMillis(), DateUtils.SECOND_IN_MILLIS).toString(); lastUpdate.setText(String.format(mContext.getString(R.string.last_updated),time)); } @Override protected boolean shouldShow(SharedPreferences prefs) { return !NetUtils.isConnected(mContext); } @Override public Intent getIntent() { return null; } @Override public int getId() { return 0; } }