/// <summary>
        /// Send the email to the email server for processing
        /// </summary>
        /// <param name="from"></param>
        /// <param name="to"></param>
        /// <param name="subject"></param>
        /// <param name="properties">Email properties. Each property is defined as a key/value item. A property can for instance be body/{value] and then that will be parsed into the layout at the place of the %body% tag</param>
        /// <param name="layout">The layout name. For available names, open the database and look inside the table RDN_EmailServer_EmailLayouts</param>
        /// <param name="priority"></param>
        public static bool SendEmail(string from, string displayNameFrom, string to, string subject, Dictionary<string, string> properties, EmailServerLayoutsEnum layout = EmailServerLayoutsEnum.Default, EmailPriority priority = EmailPriority.Important)
        {
            try
            {
                var dc = new ManagementContext();

                if (layout == EmailServerLayoutsEnum.TextMessage)
                    priority = EmailPriority.Important;

                var email = new EmailSendItem(priority);
                email.EmailLayout = layout.ToString();
                email.From = from;
                email.DisplayNameFrom = displayNameFrom;
                email.Reciever = to;
                email.Subject = subject;
                foreach (var property in properties)
                    email.Properties.Add(new EmailProperty { Key = property.Key, Value = property.Value });

                if (!String.IsNullOrEmpty(email.Reciever))
                    dc.EmailServer.Add(email);

                int c = dc.SaveChanges();
                return c > 0;
            }
            catch (Exception exception)
            {
                ErrorDatabaseManager.AddException(exception, exception.GetType(), additionalInformation: to);
            }
            return false;
        }
        /// <summary>
        /// Send the email to the email server for processing
        /// </summary>
        /// <param name="from"></param>
        /// <param name="to"></param>
        /// <param name="subject"></param>
        /// <param name="body"></param>
        /// <param name="priority"></param>
        public static void SendEmail(string from, string displayNameFrom, string to, string subject, string body, EmailPriority priority = EmailPriority.Important)
        {
            try
            {
                var dc = new ManagementContext();

                var email = new EmailSendItem(priority);
                email.EmailLayout = "Default";
                email.From = from;
                email.DisplayNameFrom = displayNameFrom;
                email.Reciever = to;
                email.Subject = subject;
                email.Properties.Add(new EmailProperty { Key = "body", Value = body });
                if (!String.IsNullOrEmpty(email.Reciever))
                    dc.EmailServer.Add(email);
                dc.SaveChanges();
            }
            catch (Exception exception)
            {
                ErrorDatabaseManager.AddException(exception, exception.GetType());
            }
        }