/// <summary>
        /// Name: SendMailInvitations
        /// Description: Method to send email invitation for user
        /// </summary>
        /// <param name="collectionInvitations">Collection invitations</param>
        /// <param name="event">Event</param>
        public void SendMailInvitations(IEnumerable <Invitation> collectionInvitations, Event @event)
        {
            // Define email client
            Client emailClient = Client.GetInstance(this.EmailConfig);
            // Create message
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_INVITATION, @event.Name, ConfigurationManager.AppSettings["JSPOT::FRONTEND:URL"]));
            // Define address book
            Message.Email.Address addressBook = new Message.Email.Address();
            // Loop
            foreach (Invitation invitation in collectionInvitations)
            {
                // Define address
                addressBook.To.Add(invitation.Email);
            }
            // Send the email
            emailClient.SendMailList(addressBook, string.Format(".:: {0} - JSpot - Invitación ::.", @event.Name), this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);

            /*// Create address book
             * Message.Email.Address addressBook = new Message.Email.Address();
             * // Loop in invitations
             * foreach (Invitation invitation in collectionInvitations)
             * {
             *  addressBook.BCC.Add(invitation.Email);
             * }
             * // Place holders
             * Dictionary<string, string> placeDicc = new Dictionary<string, string>();
             * placeDicc.Add("@@message", string.Format(EMAIL_INVITATION, @event.Name, ConfigurationManager.AppSettings["JSPOT::FRONTEND:URL"]));
             * // Send the email
             * Client emailClient = Client.GetInstance(this.EmailConfig);
             * emailClient.SendMailList(addressBook, ".:: JSpot - Invitación ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);*/
        }
        /// <summary>
        /// Name: SendMailRemoveAsOwner
        /// Description: Method to send email when user is removed as owner
        /// </summary>
        /// <param name="user"></param>
        /// <param name="event"></param>
        public void SendMailRemoveAsOwner(User user, Event @event)
        {
            Message.Email.Address addressBook = new Message.Email.Address();
            addressBook.To.Add(user.Email);
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_REMOVE_AS_OWNER, @event.Name, string.Format("{0} {1} ({2})", user.Name, user.Lastname, @event.Name)));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Evento ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailTransportFull
        /// Description: Method to send email to owner transport when tranposrt is full
        /// </summary>
        /// <param name=""></param>
        /// <param name=""></param>
        /// <param name=""></param>
        public void SendMailTransportFull(User user, Transport transport, Event @event)
        {
            // Create address book
            Message.Email.Address addressBook = new Message.Email.Address();
            addressBook.To.Add(user.Email);
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_TRANSPORT_FULL, string.Format("{0} {1}", user.Name, user.Lastname), string.Format("{0} - {1}", transport.Car.Model, transport.Car.Brand), @event.Name));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Transporte Completo ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailTransportPassengerConfirmation
        /// Description: Method to send email of confirmation for passenger added
        /// </summary>
        /// <param name="email">Email</param>
        /// <param name="name">Name</param>
        /// <param name="lastname">Lastname</param>
        /// <param name="transport">Transport</param>
        /// <param name="event">Event</param>
        public void SendMailTransportPassengerConfirmation(string email, string name, string lastname, Transport transport, Event @event)
        {
            // Create address book
            Message.Email.Address addressBook = new Message.Email.Address();
            addressBook.To.Add(email);
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_TRANSPORT_CONFIRMATION, string.Format("{0} {1}", name, lastname), string.Format("{0} - {1}", transport.Car.Model, transport.Car.Brand), @event.Name));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Transporte ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailSignIn
        /// Description: Method to SendMailSignIn
        /// </summary>
        /// <param name="eventGroup"></param>
        /// <param name="email"></param>
        /// <param name="name"></param>
        /// <param name="lastname"></param>
        public void SendMailSignIn(EventGroup eventGroup, Event @event, string email, string name, string lastname)
        {
            // Create address book
            Message.Email.Address addressBook = new Message.Email.Address();
            addressBook.To.Add(email);
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_SIGNIN, string.Format("{0} {1}", name, lastname), eventGroup.Name, @event.Name));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Inscripción ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailNewUser
        /// Description: Method to send email to new user register in the application
        /// </summary>
        /// <param name="user">User</param>
        public void SendMailInvitationReject(IEnumerable <User> collectionUser, string rejectedUserName, string rejectedUserLastname, string rejectedUserEmail, Event @event)
        {
            Message.Email.Address addressBook = new Message.Email.Address();
            foreach (User user in collectionUser)
            {
                addressBook.To.Add(user.Email);
            }
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_INVITATION_REJECT, @event.Name, string.Format("{0} {1} ({2})", rejectedUserName, rejectedUserLastname, rejectedUserEmail)));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Invitación Rechazada ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailGroupFull
        /// Description: Method to send mail when group is full
        /// </summary>
        /// <param name="eventGroup"></param>
        /// <param name="event"></param>
        public void SendMailGroupFull(EventGroup eventGroup, Event @event, IEnumerable <Assistant> collectionAssistant)
        {
            // Create address book
            Message.Email.Address addressBook = new Message.Email.Address();
            foreach (Assistant assistant in collectionAssistant)
            {
                addressBook.To.Add(assistant.User.Email);
            }
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_GROUP_FULL, @event.Name, eventGroup.Name));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Grupo Completo ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }
        /// <summary>
        /// Name: SendMailSignInOwners
        /// Description: Method to send mail of sign in to owners
        /// </summary>
        /// <param name="eventGroup"></param>
        /// <param name="assistant"></param>
        public void SendMailSignInOwners(EventGroup eventGroup, Event @event, string email, string name, string lastname, IEnumerable <Assistant> collectionAssistant)
        {
            // Create address book
            Message.Email.Address addressBook = new Message.Email.Address();
            foreach (Assistant assistant in collectionAssistant)
            {
                addressBook.To.Add(assistant.User.Email);
            }
            // Place holders
            Dictionary <string, string> placeDicc = new Dictionary <string, string>();

            placeDicc.Add("@@message", string.Format(EMAIL_SIGNIN_NOTICE, @event.Name, string.Format("{0} {1}", name, lastname), email, eventGroup.Name));
            // Send the email
            Client emailClient = Client.GetInstance(this.EmailConfig);

            emailClient.SendMailList(addressBook, ".:: JSpot - Aviso ::.", this.EmailTemplate, ImgInMail: this.ImageDictionary, PlaceHolders: placeDicc);
        }