[Back]

//
// DotNetNuke - http:'www.dotnetnuke.com
// Copyright (c) 2002-2009
// by DotNetNuke Corporation
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 
// documentation files (the "Software"), to deal in the Software without restriction, including without limitation 
// the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and 
// to permit persons to whom the Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in all copies or substantial portions 
// of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
// TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 
// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF 
// CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
// DEALINGS IN THE SOFTWARE.
//

using System;
using DotNetNuke;
using DotNetNuke.Common;
using DotNetNuke.Security.Roles;
using System.Collections.Generic;
using System.Web.Mail;
using System.Web.UI.WebControls;
using System.Collections;
using DotNetNuke.Services.Exceptions;

namespace DotNetNuke.Modules.DNNSilverlightChat
{
    public partial class Settings : DotNetNuke.Entities.Modules.ModuleSettingsBase
    {
        DotNetNuke.Entities.Modules.ModuleController objModules = new DotNetNuke.Entities.Modules.ModuleController();

        #region LoadSettings
        public override void LoadSettings()
        {
            try
            {
                if (!Page.IsPostBack)
                {
                    if ((((string)(ModuleSettings["SilverlightChat_MaxUsers"])) != null))
                    {
                        txtMaxUsers.Text = ((string)(ModuleSettings["SilverlightChat_MaxUsers"]));
                    }
                    else
                    {
                        txtMaxUsers.Text = "3";
                        objModules.UpdateModuleSetting(ModuleId, "SilverlightChat_MaxUsers", "3");
                    }
                    if ((((string)(ModuleSettings["SilverlightChat_Refresh"])) != null))
                    {
                        txtRefresh.Text = ((string)(ModuleSettings["SilverlightChat_Refresh"]));
                    }
                    else
                    {
                        txtRefresh.Text = "5";
                        objModules.UpdateModuleSetting(ModuleId, "SilverlightChat_Refresh", "5");
                    }
                }
            }
            catch (Exception exc)
            {
                // Module failed to load
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        } 
        #endregion

        #region UpdateSettings
        public override void UpdateSettings()
        {
            try
            {
                int intMaxUsers;
                int intRefresh;
                try
                {
                    intMaxUsers = Convert.ToInt32(txtMaxUsers.Text);
                    objModules.UpdateModuleSetting(ModuleId, "SilverlightChat_MaxUsers", intMaxUsers.ToString());
                }
                catch (Exception ex)
                {
                    ex.ToString();
                }

                try
                {
                    intRefresh = Convert.ToInt32(txtRefresh.Text);
                    if (intRefresh > 30)
                    {
                        intRefresh = 30;
                    }

                    objModules.UpdateModuleSetting(ModuleId, "SilverlightChat_Refresh", intRefresh.ToString());
                }
                catch (Exception ex)
                {
                    ex.ToString();
                }
            }
            catch (Exception exc)
            {
                // Module failed to load
                Exceptions.ProcessModuleLoadException(this, exc);
            }
        } 
        #endregion
    }
}