/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.cosmodas.pedidos;

import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;

/**
 * @author obper
 */
public class Email {

    private final String user = "pedidos@marlenlamur-es.com";
    private final String pass = "cosmodas";
    private String de;
    private final boolean tlsAl = false;
    private final String host = "mail.marlenlamur-es.com";
    private final String puerto = "25";

    public void imail(String para, String adjunto, String territorio, String dir, String correo) {

        this.de = correo;

        Properties pro = new Properties();

        pro.setProperty("mail.smtp.host", host);

        pro.setProperty("mail.smtp.port", puerto);
        pro.setProperty("mail.smtp.user", user);
        pro.setProperty("mail.smtp.auth", "true");
        //  pro.setProperty("mail.smtp.starttls.enable", "true"); //TLS

        // Obtenemos la sesión por defecto
        Session sesion = Session.getDefaultInstance(pro);

        try {
            // Creamos un objeto mensaje tipo MimeMessage por defecto.
            MimeMessage mensaje = new MimeMessage(sesion);

            // Asignamos el “de o from” al header del correo.
            mensaje.setFrom(new InternetAddress(de));

            // Asignamos el “para o to” al header del correo.
            mensaje.addRecipient(Message.RecipientType.TO,
                    new InternetAddress(para));

            // Asignamos el asunto
            mensaje.setSubject("Pedido territorio " + territorio);

            // Asignamos el mensaje como tal
            BodyPart texto = new MimeBodyPart();
            texto.setText("pedido de territorio" + territorio);
            BodyPart adj = new MimeBodyPart();
            adj.setDataHandler(new DataHandler(new FileDataSource(dir)));
            adj.setFileName(adjunto);
            MimeMultipart multiParte = new MimeMultipart();
            multiParte.addBodyPart(texto);
            multiParte.addBodyPart(adj);
            mensaje.setContent(multiParte);

            Transport transport = sesion.getTransport("smtp");
            transport.connect(user, pass);
            transport.sendMessage(mensaje, mensaje.getAllRecipients());
            transport.close();
            System.out.println("Mensaje enviado");
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

    public void imailReq(String para, String adjunto, String sala, String dir, String correo) {

        this.de = correo;

        Properties pro = new Properties();

        pro.setProperty("mail.smtp.host", host);

        pro.setProperty("mail.smtp.port", puerto);
        pro.setProperty("mail.smtp.user", user);
        pro.setProperty("mail.smtp.auth", "true");
        //    pro.setProperty("mail.smtp.starttls.enable", "true");

        // Obtenemos la sesión por defecto
        Session sesion = Session.getDefaultInstance(pro);

        try {
            // Creamos un objeto mensaje tipo MimeMessage por defecto.
            MimeMessage mensaje = new MimeMessage(sesion);

            // Asignamos el “de o from” al header del correo.
            mensaje.setFrom(new InternetAddress(de));

            // Asignamos el “para o to” al header del correo.
            mensaje.addRecipient(Message.RecipientType.TO,
                    new InternetAddress(para));

            // Asignamos el asunto
            mensaje.setSubject("Requsicion sala " + sala);

            // Asignamos el mensaje como tal
            BodyPart texto = new MimeBodyPart();
            texto.setText("Requsicion sala " + sala);
            BodyPart adj = new MimeBodyPart();
            adj.setDataHandler(new DataHandler(new FileDataSource(dir)));
            adj.setFileName(adjunto);
            MimeMultipart multiParte = new MimeMultipart();
            multiParte.addBodyPart(texto);
            multiParte.addBodyPart(adj);
            mensaje.setContent(multiParte);

            Transport transport = sesion.getTransport("smtp");
            transport.connect(user, pass);
            transport.sendMessage(mensaje, mensaje.getAllRecipients());
            transport.close();
            System.out.println("Mensaje enviado");
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

    public void imailRop(String para, String adjunto, String dir) {

        this.de = "info@marlenlamur-es.com";

        Properties pro = new Properties();

        pro.setProperty("mail.smtp.host", host);

        pro.setProperty("mail.smtp.port", puerto);
        pro.setProperty("mail.smtp.user", user);
        pro.setProperty("mail.smtp.auth", "true");
        // pro.setProperty("mail.smtp.starttls.enable", "true");

        // Obtenemos la sesión por defecto
        Session sesion = Session.getDefaultInstance(pro);

        try {
            // Creamos un objeto mensaje tipo MimeMessage por defecto.
            MimeMessage mensaje = new MimeMessage(sesion);

            // Asignamos el “de o from” al header del correo.
            mensaje.setFrom(new InternetAddress(de));

            // Asignamos el “para o to” al header del correo.
            mensaje.addRecipient(Message.RecipientType.TO,
                    new InternetAddress(para));

            // Asignamos el asunto
            mensaje.setSubject("Vieñetas de Ropa");

            // Asignamos el mensaje como tal
            BodyPart texto = new MimeBodyPart();
            texto.setText("Vieñetas de Ropa");
            BodyPart adj = new MimeBodyPart();
            adj.setDataHandler(new DataHandler(new FileDataSource(dir)));
            adj.setFileName(adjunto);
            MimeMultipart multiParte = new MimeMultipart();
            multiParte.addBodyPart(texto);
            multiParte.addBodyPart(adj);
            mensaje.setContent(multiParte);

            Transport transport = sesion.getTransport("smtp");
            transport.connect(user, pass);
            transport.sendMessage(mensaje, mensaje.getAllRecipients());
            transport.close();
            System.out.println("Mensaje enviado");
        } catch (MessagingException e) {
            e.printStackTrace();
        }
    }

}
