Esempio n. 1
0
        /// <summary>
        /// Some minor housekeeping on the message before we get into the heavy lifting.
        /// </summary>
        public async Task <InputModels.ProcessedMessageInput> PreProcess(InputModels.ProcessedMessageInput processedMessage)
        {
            processedMessage.DisplayBody = processedMessage.DisplayBody.Trim();

            if (string.IsNullOrEmpty(processedMessage.DisplayBody))
            {
                throw new ArgumentException("Message body is empty.");
            }

            var smileys = await SmileyRepository.Records();

            // Ensures the smileys are safe from other HTML processing.
            for (var i = 0; i < smileys.Count(); i++)
            {
                var pattern     = $@"(^|[\r\n\s]){Regex.Escape(smileys[i].Code)}(?=$|[\r\n\s])";
                var replacement = $"$1SMILEY_{i}_INDEX";
                processedMessage.DisplayBody = Regex.Replace(processedMessage.DisplayBody, pattern, replacement, RegexOptions.Singleline);
            }

            processedMessage.DisplayBody = BBCParser.ToHtml(processedMessage.DisplayBody);

            return(processedMessage);
        }
Esempio n. 2
0
		public void ParseBBC(InputModels.ProcessedMessageInput processedMessageInput) {
			processedMessageInput.DisplayBody = BBCParser.ToHtml(processedMessageInput.DisplayBody);
		}