Пример #1
0
        public lm.Comol.Core.DomainModel.Languages.ItemObjectTranslation NotificationGetTemplatePreview(
            Boolean isHtml,
            lm.Comol.Core.DomainModel.Languages.ItemObjectTranslation content,
            Domain.DTO.DTO_NotificationSettings settings, Domain.DTO.DTO_NotificationData fullData,
            ModuleTicket.MailSenderActionType Action)
        {
            Domain.DTO.DTO_NotificationData Data = new Domain.DTO.DTO_NotificationData
            {
                Action   = null,
                Answer   = null,
                Category = null,
                Ticket   = null,
                User     = null
            };

            //Creato l'oggetto "DATA" secondo i casi:
            switch (Action)
            {
            case ModuleTicket.MailSenderActionType.externalPasswordChanged:
                Data.User = fullData.User;
                break;

            case ModuleTicket.MailSenderActionType.externalRecover:
                Data.User = fullData.User;
                break;

            case ModuleTicket.MailSenderActionType.externalRegistration:
                Data.User = fullData.User;
                break;


                //////////////////////////case ModuleTicket.MailSenderActionType.addAnswer:
                //////////////////////////    Data.Ticket = fullData.Ticket;
                //////////////////////////    Data.Action = fullData.Action;
                //////////////////////////    break;
                //////////////////////////case ModuleTicket.MailSenderActionType.assignmentChange:
                //////////////////////////    Data.Ticket = fullData.Ticket;
                //////////////////////////    Data.Action = fullData.Action;
                //////////////////////////    break;
                //////////////////////////case ModuleTicket.MailSenderActionType.statusChange:
                //////////////////////////    Data.Ticket = fullData.Ticket;
                //////////////////////////    Data.Action = fullData.Action;
                //////////////////////////    break;
                //////////////////////////case ModuleTicket.MailSenderActionType.categoryChange:
                //////////////////////////    Data.Category = fullData.Category;
                //////////////////////////    Data.Action = fullData.Action;
                //////////////////////////    break;
                //////////////////////////case ModuleTicket.MailSenderActionType.categoryAssignedChange:
                //////////////////////////    Data.Category = fullData.Category;
                //////////////////////////    Data.Action = fullData.Action;
                //////////////////////////    break;
            }

            return(NotificationAnalyzeContent(
                       isHtml,
                       content,
                       settings,
                       Data));
        }
Пример #2
0
        /// <summary>
        /// Invio notifiche automatiche
        /// </summary>
        /// <param name="NotificationType">Tipo notifica</param>
        /// <param name="OtherParameters">Altri parametri da definire...</param>
        /// <returns></returns>
        /// <remarks>
        /// ATTENZIONE! Sarà necessario creare funzioni "ad hoc" con relativi parametri necessari.
        /// </remarks>
        public bool NotificationSend(
            ModuleTicket.MailSenderActionType ActionType,
            Domain.DTO.DTO_NotificationSettings Settings,
            Domain.DTO.DTO_NotificationData Data,
            String Address)
        {
            //Recupero messaggio
            lm.Comol.Core.Notification.Domain.dtoNotificationMessage msg =
                ServiceTemplate.GetNotificationMessage(
                    Data.User.LanguageCode,
                    ModuleTicket.UniqueCode,
                    (Int64)ModuleTicket.MailSenderActionType.externalRegistration);

            if (msg == null)
            {
                return(false);
            }

            // Invio Mail.
            return(NotificationSendMail(Settings, Data, msg, Address));
        }
Пример #3
0
        public static List <PlaceHoldersType> GetPlaceHoldersByType(ModuleTicket.MailSenderActionType ActionType)
        {
            List <PlaceHoldersType> PLHlist = new List <PlaceHoldersType>();

            PLHlist.Add(PlaceHoldersType.None);

            switch (ActionType)
            {
            case ModuleTicket.MailSenderActionType.externalPasswordChanged:
                PLHlist.Add(PlaceHoldersType.UserMail);
                PLHlist.Add(PlaceHoldersType.UserName);
                PLHlist.Add(PlaceHoldersType.UserSurname);
                PLHlist.Add(PlaceHoldersType.UserLanguageCode);
                PLHlist.Add(PlaceHoldersType.ExternalAccessUrl);
                break;

            case ModuleTicket.MailSenderActionType.externalRecover:
                PLHlist.Add(PlaceHoldersType.UserMail);
                PLHlist.Add(PlaceHoldersType.UserName);
                PLHlist.Add(PlaceHoldersType.UserSurname);
                PLHlist.Add(PlaceHoldersType.UserLanguageCode);
                PLHlist.Add(PlaceHoldersType.UserPassword);
                PLHlist.Add(PlaceHoldersType.ExternalAccessUrl);
                break;

            case ModuleTicket.MailSenderActionType.externalRegistration:
                PLHlist.Add(PlaceHoldersType.UserMail);
                PLHlist.Add(PlaceHoldersType.UserName);
                PLHlist.Add(PlaceHoldersType.UserSurname);
                PLHlist.Add(PlaceHoldersType.UserPassword);
                PLHlist.Add(PlaceHoldersType.UserLanguageCode);
                PLHlist.Add(PlaceHoldersType.UserToken);
                PLHlist.Add(PlaceHoldersType.UserTokenExpiration);
                PLHlist.Add(PlaceHoldersType.UserTokenUrl);
                PLHlist.Add(PlaceHoldersType.ExternalAccessUrl);
                break;

            //NUOVI
            case ModuleTicket.MailSenderActionType.TicketNewUser:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlUser);
                break;

            case ModuleTicket.MailSenderActionType.TicketSendMessageUser:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlUser);
                break;

            case ModuleTicket.MailSenderActionType.TicketModeratedUser:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlUser);
                break;

            case ModuleTicket.MailSenderActionType.TicketCategoryResetUser:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlUser);

                PLHlist.Add(PlaceHoldersType.CategoryName);
                PLHlist.Add(PlaceHoldersType.CategoryDescription);
                break;

            case ModuleTicket.MailSenderActionType.TicketOwnerChanged:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlUser);
                break;

            case ModuleTicket.MailSenderActionType.TicketNewMan:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);
                break;

            case ModuleTicket.MailSenderActionType.TicketSendMessageMan:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);
                break;

            case ModuleTicket.MailSenderActionType.TicketModeratedMan:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);
                break;

            case ModuleTicket.MailSenderActionType.TicketCategoryResetMan:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);

                PLHlist.Add(PlaceHoldersType.CategoryName);
                PLHlist.Add(PlaceHoldersType.CategoryDescription);
                break;

            case ModuleTicket.MailSenderActionType.TicketCategoryAdd:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);

                PLHlist.Add(PlaceHoldersType.CategoryName);
                PLHlist.Add(PlaceHoldersType.CategoryDescription);
                break;

            case ModuleTicket.MailSenderActionType.TicketAssignmentAddAssigner:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);
                break;

            case ModuleTicket.MailSenderActionType.TicketAssignmentAddManager:
                PLHlist.Add(PlaceHoldersType.TicketStatus);
                PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                PLHlist.Add(PlaceHoldersType.TicketAssigner);
                PLHlist.Add(PlaceHoldersType.TicketObject);
                PLHlist.Add(PlaceHoldersType.TicketPreview);
                PLHlist.Add(PlaceHoldersType.TicketLongText);
                PLHlist.Add(PlaceHoldersType.TicketSendDate);
                PLHlist.Add(PlaceHoldersType.TicketLanguage);
                PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                PLHlist.Add(PlaceHoldersType.TicketUrlManager);
                break;

            case ModuleTicket.MailSenderActionType.CategoryModified:
                PLHlist.Add(PlaceHoldersType.CategoryName);
                PLHlist.Add(PlaceHoldersType.CategoryDescription);

                PLHlist.Add(PlaceHoldersType.TicketUrlListManager);
                break;

            case ModuleTicket.MailSenderActionType.CategoryReorder:
                PLHlist.Add(PlaceHoldersType.TicketUrlListManager);
                break;
                //case ModuleTicket.MailSenderActionType.addAnswer:
                //    PLHlist.Add(PlaceHoldersType.TicketStatus);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                //    PLHlist.Add(PlaceHoldersType.TicketAssigner);
                //    PLHlist.Add(PlaceHoldersType.TicketObject);
                //    PLHlist.Add(PlaceHoldersType.TicketPreview);
                //    PLHlist.Add(PlaceHoldersType.TicketLongText);
                //    PLHlist.Add(PlaceHoldersType.TicketSendDate);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguage);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                //    PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                //    PLHlist.Add(PlaceHoldersType.ActionDisplayName);
                //    PLHlist.Add(PlaceHoldersType.ActionRole);

                //    PLHlist.Add(PlaceHoldersType.AnswerShortText);
                //    PLHlist.Add(PlaceHoldersType.AnswerFullText);
                //    break;

                //case ModuleTicket.MailSenderActionType.assignmentChange:
                //    PLHlist.Add(PlaceHoldersType.TicketStatus);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                //    PLHlist.Add(PlaceHoldersType.TicketAssigner);
                //    PLHlist.Add(PlaceHoldersType.TicketObject);
                //    PLHlist.Add(PlaceHoldersType.TicketPreview);
                //    PLHlist.Add(PlaceHoldersType.TicketLongText);
                //    PLHlist.Add(PlaceHoldersType.TicketSendDate);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguage);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                //    PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                //    PLHlist.Add(PlaceHoldersType.ActionDisplayName);
                //    PLHlist.Add(PlaceHoldersType.ActionRole);
                //    break;

                //case ModuleTicket.MailSenderActionType.statusChange:
                //    PLHlist.Add(PlaceHoldersType.TicketStatus);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
                //    PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
                //    PLHlist.Add(PlaceHoldersType.TicketAssigner);
                //    PLHlist.Add(PlaceHoldersType.TicketObject);
                //    PLHlist.Add(PlaceHoldersType.TicketPreview);
                //    PLHlist.Add(PlaceHoldersType.TicketLongText);
                //    PLHlist.Add(PlaceHoldersType.TicketSendDate);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguage);
                //    PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
                //    PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

                //    PLHlist.Add(PlaceHoldersType.ActionDisplayName);
                //    PLHlist.Add(PlaceHoldersType.ActionRole);
                //    break;


                //case ModuleTicket.MailSenderActionType.categoryChange:
                //    PLHlist.Add(PlaceHoldersType.ActionDisplayName);

                //    PLHlist.Add(PlaceHoldersType.CategoryName);
                //    PLHlist.Add(PlaceHoldersType.CategoryDescription);
                //    PLHlist.Add(PlaceHoldersType.CategoryLONGNameAndDescriptionLIST);
                //    PLHlist.Add(PlaceHoldersType.CategoryType);
                //    PLHlist.Add(PlaceHoldersType.CategoryLanguagesCodeList);
                //    break;

                //case ModuleTicket.MailSenderActionType.categoryAssignedChange:
                //    PLHlist.Add(PlaceHoldersType.ActionDisplayName);

                //    PLHlist.Add(PlaceHoldersType.CategoryName);
                //    PLHlist.Add(PlaceHoldersType.CategoryDescription);
                //    PLHlist.Add(PlaceHoldersType.CategoryNewAssignerDisplayName);
                //    break;
            }

            //FULL LIST

            //PLHlist.Add(PlaceHoldersType.None);
            //PLHlist.Add(PlaceHoldersType.UserMail);
            //PLHlist.Add(PlaceHoldersType.UserName);
            //PLHlist.Add(PlaceHoldersType.UserSureName);
            //PLHlist.Add(PlaceHoldersType.UserPassword);
            //PLHlist.Add(PlaceHoldersType.UserLanguageCode);
            //PLHlist.Add(PlaceHoldersType.UserToken);
            //PLHlist.Add(PlaceHoldersType.UserTokenExpiration);
            //PLHlist.Add(PlaceHoldersType.UserTokenUrl);
            //PLHlist.Add(PlaceHoldersType.ExternalAccessUrl);

            //PLHlist.Add(PlaceHoldersType.TicketStatus);
            //PLHlist.Add(PlaceHoldersType.TicketCategoryCurrent);
            //PLHlist.Add(PlaceHoldersType.TicketCategoryInitial);
            //PLHlist.Add(PlaceHoldersType.TicketAssigner);
            //PLHlist.Add(PlaceHoldersType.TicketObject);
            //PLHlist.Add(PlaceHoldersType.TicketPreview);
            //PLHlist.Add(PlaceHoldersType.TicketLongText);
            //PLHlist.Add(PlaceHoldersType.TicketSendDate);
            //PLHlist.Add(PlaceHoldersType.TicketLanguage);
            //PLHlist.Add(PlaceHoldersType.TicketLanguageCode);
            //PLHlist.Add(PlaceHoldersType.TicketCreatorDisplayName);

            //PLHlist.Add(PlaceHoldersType.ActionDisplayName);
            //PLHlist.Add(PlaceHoldersType.ActionRole);

            //PLHlist.Add(PlaceHoldersType.AnswerShortText);
            //PLHlist.Add(PlaceHoldersType.AsnwerFullText);

            //PLHlist.Add(PlaceHoldersType.CategoryName);
            //PLHlist.Add(PlaceHoldersType.CategoryDescription);
            //PLHlist.Add(PlaceHoldersType.CategoryLONGNameAndDescriptionLIST);
            //PLHlist.Add(PlaceHoldersType.CategoryType);
            //PLHlist.Add(PlaceHoldersType.CategoryLanguagesCodeList);
            //PLHlist.Add(PlaceHoldersType.CategoryNewAssignerDisplayName);



            //return (from t in Enum.GetValues(typeof(PlaceHoldersType)).Cast<PlaceHoldersType>()
            //        where t != PlaceHoldersType.None
            //        select t).ToList();

            return(PLHlist);
        }