package de.stephanlindauer.criticalmaps.utils;
import android.app.Application;
import android.app.Notification;
import android.app.PendingIntent;
import android.content.Intent;
import android.support.v4.app.NotificationCompat;
import de.stephanlindauer.criticalmaps.Main;
import de.stephanlindauer.criticalmaps.R;
public class TrackingInfoNotificationBuilder {
//const
public static final int NOTIFICATION_ID = 12456;
private static final int INTENT_CLOSE_ID = 176456;
private static final int INTENT_OPEN_ID = 133256;
public static Notification getNotification(Application application) {
Intent openIntent = new Intent(application, Main.class);
openIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
openIntent.putExtra("shouldClose", false);
PendingIntent openPendingIntent = PendingIntent.getActivity(application, INTENT_OPEN_ID, openIntent, PendingIntent.FLAG_UPDATE_CURRENT);
Intent closeIntent = new Intent(application, Main.class);
closeIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
closeIntent.putExtra("shouldClose", true);
PendingIntent closePendingIntent = PendingIntent.getActivity(application, INTENT_CLOSE_ID, closeIntent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder builder = new NotificationCompat.Builder(application)
.setSmallIcon(R.drawable.ic_logo)
.setContentTitle(application.getString(R.string.notification_tracking_title))
.setContentText(application.getString(R.string.notification_tracking_text))
.setStyle(new NotificationCompat.BigTextStyle().bigText(application.getString(R.string.notification_tracking_text)))
.setPriority(NotificationCompat.PRIORITY_MAX)
.setContentIntent(openPendingIntent)
.addAction(R.drawable.ic_gps_fixed_white_24dp, application.getString(R.string.notification_tracking_open), openPendingIntent)
.addAction(R.drawable.ic_clear_white_24dp, application.getString(R.string.notification_tracking_close), closePendingIntent);
return builder.build();
}
}