Esempio n. 1
0
        /// <summary>
        /// ExportMailTemplates method implementation
        /// </summary>
        public static bool ExportMailTemplates(MFAConfig config, int lcid, Dictionary <string, string> data)
        {
            bool done = false;

            try
            {
                WebAdminClient manager = new WebAdminClient();
                try
                {
                    manager.Initialize();
                    IWebAdminServices client = manager.Open();
                    try
                    {
                        done = client.ExportMailTemplates(GetServers(config), CFGReaderUtilities.GetCryptedConfig(config), lcid, data);
                    }
                    finally
                    {
                        manager.Close(client);
                    }
                }
                finally
                {
                    manager.UnInitialize();
                }

                if (done)
                {
                    char   sep      = Path.DirectorySeparatorChar;
                    string htmlpath = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) + sep + "MFA" + sep + "MailTemplates" + sep + lcid.ToString();

                    MailProvider mailprov = config.MailProvider;
                    if (!mailprov.MailOTPContent.Exists(c => c.LCID.Equals(lcid)))
                    {
                        mailprov.MailOTPContent.Add(new SendMailFileName(lcid, htmlpath + sep + "MailOTPContent.html"));
                    }
                    if (!mailprov.MailKeyContent.Exists(c => c.LCID.Equals(lcid)))
                    {
                        mailprov.MailKeyContent.Add(new SendMailFileName(lcid, htmlpath + sep + "MailKeyContent.html"));
                    }
                    if (!mailprov.MailAdminContent.Exists(c => c.LCID.Equals(lcid)))
                    {
                        mailprov.MailAdminContent.Add(new SendMailFileName(lcid, htmlpath + sep + "MailAdminContent.html"));
                    }
                    if (!mailprov.MailNotifications.Exists(c => c.LCID.Equals(lcid)))
                    {
                        mailprov.MailNotifications.Add(new SendMailFileName(lcid, htmlpath + sep + "MailNotifications.html"));
                    }
                }
                return(done);
            }
            catch
            {
                return(false);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// BroadcastNotification method implementation
        /// </summary>
        public static void BroadcastNotification(MFAConfig config, NotificationsKind kind, string message, bool local = true, bool dispatch = true)
        {
            WebAdminClient manager = new WebAdminClient();

            try
            {
                manager.Initialize();
                IWebAdminServices client = manager.Open();
                try
                {
                    client.BroadcastNotification(GetServers(config), CFGReaderUtilities.GetCryptedConfig(config), kind, message, local, dispatch);
                }
                finally
                {
                    manager.Close(client);
                }
            }
            finally
            {
                manager.UnInitialize();
            }
        }
Esempio n. 3
0
        /// <summary>
        /// InitSecurityFile method implementation
        /// </summary>
        protected void InitSecurityFile()
        {
            string         fqdn    = Dns.GetHostEntry("localhost").HostName;
            WebAdminClient manager = new WebAdminClient();

            manager.Initialize();
            try
            {
                MFAConfig         config = CFGReaderUtilities.ReadConfiguration();
                IWebAdminServices client = manager.Open();
                try
                {
                    SIDs.Clear();
                    SIDs.Assign(client.GetSIDsInformations(GetServers(config)));
                    SIDs.InternalUpdateDirectoryACLs(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles) + Path.DirectorySeparatorChar + "MFA");
                }
                catch (Exception ex)
                {
                    Log.WriteEntry(string.Format("Error on WebAdminService Service GetSIDsInformations method : {0} / {1}.", fqdn, ex.Message), EventLogEntryType.Error, 2010);
                    SIDs.Assign(new SIDsParametersRecord()
                    {
                        Loaded = false
                    });
                }
                finally
                {
                    manager.Close(client);
                }
            }
            catch (Exception e)
            {
                Log.WriteEntry(string.Format("Error on WebAdminService Service GetSIDsInformations method : {0} / {1}.", fqdn, e.Message), EventLogEntryType.Error, 2010);
            }
            finally
            {
                manager.UnInitialize();
            }
            return;
        }