package net.bible.android.control.email;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import net.bible.android.control.ApplicationScope;
import net.bible.android.view.activity.base.CurrentActivityHolder;
import org.apache.commons.lang3.StringUtils;
import javax.inject.Inject;
/**
* Jump straight to email program with subject, body, recipient, etc
*/
@ApplicationScope
public class EmailerImpl implements Emailer {
@Inject
public EmailerImpl() {
}
/* (non-Javadoc)
* @see net.bible.android.control.report.Email#send(java.lang.String, java.lang.String, java.lang.String)
*/
@Override
public void send(String emailDialogTitle, String subject, String text) {
send(emailDialogTitle, null, subject, text);
}
/* (non-Javadoc)
* @see net.bible.android.control.report.Email#send(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
*/
@Override
public void send(String emailDialogTitle, String recipient, String subject, String body) {
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SENDTO);
if (StringUtils.isNotBlank(recipient)) {
emailIntent.setData(Uri.fromParts("mailto", recipient, null));
}
emailIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, body);
Activity activity = CurrentActivityHolder.getInstance().getCurrentActivity();
activity.startActivity(emailIntent);
}
}