예제 #1
0
        private async Task AuthenticateSucceed(AbpAuthenticateResultModel result)
        {
            AuthenticateResultModel = result;

            if (AuthenticateResultModel.ShouldResetPassword)
            {
                await UserDialogs.Instance.AlertAsync(L.Localize("ChangePasswordToLogin"), L.Localize("LoginFailed"), L.Localize("Ok"));

                return;
            }

            if (AuthenticateResultModel.RequiresTwoFactorVerification)
            {
                await _navigationService.SetMainPage <SendTwoFactorCodeView>(AuthenticateResultModel);

                return;
            }

            if (!AbpAuthenticateModel.IsTwoFactorVerification)
            {
                await _dataStorageService.StoreAuthenticateResultAsync(AuthenticateResultModel);
            }

            AbpAuthenticateModel.Password = null;
            await SetCurrentUserInfoAsync();

            await UserConfigurationManager.GetAsync();

            await _navigationService.SetMainPage <MainView>(clearNavigationHistory : true);
        }
        private async Task AuthenticateSucceed(AbpAuthenticateResultModel result)
        {
            AuthenticateResultModel = result;
            if (AuthenticateResultModel.ShouldResetPassword)
            {
                await UserDialogs.Instance.AlertAsync(L.Localize("ChangePasswordToLogin"), L.Localize("LoginFailed"),
                                                      L.Localize("Ok"));

                return;
            }

            if (AuthenticateResultModel.RequiresTwoFactorVerification)
            {
                //await _navigationService.SetMainPage<SendTwoFactorCodeView>(AuthenticateResultModel);
                return;
            }

            if (string.IsNullOrEmpty(AbpAuthenticateModel.TwoFactorVerificationCode))
            {
                await SaveCredentialsAsync(result);
            }

            await SetCurrentUserInfoAsync();

            //await UserConfigurationManager.GetAsync();
            await UserConfigurationManager.GetIfNeedsAsync();
        }
예제 #3
0
        public override async void OnDialogOpened(IDialogParameters parameters)
        {
            await SetBusyAsync(async() =>
            {
                await Task.Delay(1000);

                //加载本地的缓存信息
                DisplayText = LocalTranslationHelper.Localize("Initializing");

                accessTokenManager.AuthenticateResult = dataStorageService.RetrieveAuthenticateResult();
                applicationContext.Load(dataStorageService.RetrieveTenantInfo(), dataStorageService.RetrieveLoginInfo());

                //加载系统资源
                DisplayText = LocalTranslationHelper.Localize("LoadResource");
                await UserConfigurationManager.GetIfNeedsAsync();

                //如果本地授权存在,直接进入系统首页
                if (accessTokenManager.IsUserLoggedIn)
                {
                    OnDialogClosed();
                }
                else
                {
                    OnDialogClosed(ButtonResult.No);
                }
            });
        }
예제 #4
0
        private static T InternalGetFolderConfiguration <T>(MailboxSession mailboxSession, StoreId folderId, string configName, UserConfigurationTypes configType, Func <UserConfigurationManager, string, UserConfigurationTypes, StoreId, T> getter, Func <UserConfigurationManager, string, UserConfigurationTypes, StoreId, bool, T> recreator, bool createIfNonexisting, bool saveIfNonexisting = false) where T : class, IReadableUserConfiguration
        {
            if (folderId == null)
            {
                throw new InvalidOperationException();
            }
            UserConfigurationManager userConfigurationManager = mailboxSession.UserConfigurationManager;
            T result = default(T);

            try
            {
                result = getter(userConfigurationManager, configName, configType, folderId);
            }
            catch (ObjectNotFoundException)
            {
                if (createIfNonexisting)
                {
                    try
                    {
                        result = recreator(userConfigurationManager, configName, configType, folderId, saveIfNonexisting);
                    }
                    catch (ObjectExistedException)
                    {
                        result = getter(userConfigurationManager, configName, configType, folderId);
                    }
                }
            }
            return(result);
        }
예제 #5
0
        public ActionResult Index(GlobalSettingsModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    if (Directory.Exists(model.RepositoryPath))
                    {
                        System.Security.AccessControl.DirectorySecurity ds = Directory.GetAccessControl(model.RepositoryPath);

                        UserConfigurationManager.AllowAnonymousPush          = model.AllowAnonymousPush;
                        UserConfigurationManager.Repositories                = model.RepositoryPath;
                        UserConfigurationManager.AllowAnonymousRegistration  = model.AllowAnonymousRegistration;
                        UserConfigurationManager.AllowUserRepositoryCreation = model.AllowUserRepositoryCreation;
                        UserConfigurationManager.Save();

                        ViewBag.UpdateSuccess = true;
                    }
                    else
                    {
                        ModelState.AddModelError("RepositoryPath", Resources.Settings_RepositoryPathNotExists);
                    }
                }
                catch (UnauthorizedAccessException)
                {
                    ModelState.AddModelError("RepositoryPath", Resources.Settings_RepositoryPathNotExists);
                }
            }

            return(View(model));
        }
예제 #6
0
        /// <summary>
        ///  Performing some startup work that takes a bit of time
        /// </summary>
        private async Task StartApplication()
        {
            App.LoadPersistedSession();

            await UserConfigurationManager.GetIfNeedsAsync();

            StartActivity(new Intent(Application.Context, typeof(MainActivity)));
        }
예제 #7
0
        /// <summary>
        ///  Performing some startup work that takes a bit of time
        /// </summary>
        private async Task StartApplication()
        {
            DebugServerIpAddresses.Current = "10.0.2.2";

            App.LoadPersistedSession();

            await UserConfigurationManager.GetIfNeedsAsync();

            StartActivity(new Intent(Application.Context, typeof(MainActivity)));
        }
예제 #8
0
        public void Initialize(UserConfigurationManager config, UnityReferenceMaster unityReferenceMaster)
        {
            _cameraTransform = unityReferenceMaster.Camera.transform;
            _audio = GetComponent<AudioSource>();

            _config = config;
            _unityReferenceMaster = unityReferenceMaster;
            _unityReferenceMaster.OnGamePausedChangedEvent += OnGamePausedChanged;
            _config.OnGameVolumeChangedEvent += OnGameVolumeChanged;
            _config.OnMusicVolumeChangedEvent += OnMusicVolumeChanged;

            MarkAsInitialized();
        }
예제 #9
0
        public void Initialize(UserConfigurationManager config, UnityReferenceMaster unityReferenceMaster)
        {
            _cameraTransform = unityReferenceMaster.Camera.transform;
            _audio           = GetComponent <AudioSource>();

            _config = config;
            _unityReferenceMaster = unityReferenceMaster;
            _unityReferenceMaster.OnGamePausedChangedEvent += OnGamePausedChanged;
            _config.OnGameVolumeChangedEvent  += OnGameVolumeChanged;
            _config.OnMusicVolumeChangedEvent += OnMusicVolumeChanged;

            MarkAsInitialized();
        }
예제 #10
0
        protected override async void OnStart()
        {
            base.OnStart();

            if (Device.RuntimePlatform == Device.iOS)
            {
                SetInitialScreenForIos();
                await UserConfigurationManager.GetIfNeedsAsync();
            }

            await DependencyResolver.Resolve <INavigationService>().InitializeAsync();

            OnResume();
        }
        protected UserConfiguration GetMailboxConfiguration(CoreFolder folder)
        {
            UserConfigurationManager userConfigurationManager = ((MailboxSession)folder.Session).UserConfigurationManager;
            UserConfiguration        result;

            try
            {
                result = userConfigurationManager.GetFolderConfiguration("OlcCalendarFolderSettings", UserConfigurationTypes.Dictionary, folder.Id);
            }
            catch (ObjectNotFoundException)
            {
                result = userConfigurationManager.CreateFolderConfiguration("OlcCalendarFolderSettings", UserConfigurationTypes.Dictionary, folder.Id);
            }
            return(result);
        }
예제 #12
0
        private void butEditStyle_Click(object sender, EventArgs e)
        {
            UserConfigurationManager ucm     = app.UserConfigurationManager;
            IConfigurationSection    ics     = ucm.OpenCurrentProfile();
            IConfigurationSection    general = ics.OpenSubsection("General");
            string path = (string)general.ReadProperty(
                "PrinterStyleSheetDir",
                string.Empty
                );
            string styleName;

            styleName = (string)cboStyle.Items[cboStyle.SelectedIndex];
            path      = path + "\\" + styleName;
            System.Diagnostics.Process.Start(path);
        }
예제 #13
0
        /// <summary>
        ///  Performing some startup work that takes a bit of time
        /// </summary>
        private async Task StartApplication()
        {
            /*
             * If you are using Genymotion Emulator, set DebugServerIpAddresses.Current = "10.0.3.2".
             * If you are using a real Android device, set it as your computer's local IP and
             *   make sure your Android device and your computer is connecting to the internet via your local Wi-Fi.
             */
            DebugServerIpAddresses.Current = "10.0.2.2";

            App.LoadPersistedSession();

            await UserConfigurationManager.GetIfNeedsAsync();

            StartActivity(new Intent(Application.Context, typeof(MainActivity)));
        }
        /// <summary>
        ///     Load user configuration from disk.
        /// </summary>
        public void LoadUserConfiguration()
        {
            BreakTimer configuration = UserConfigurationManager.Load <BreakTimer>();

            if (configuration == null)
            {
                BreakTimer defaultConfiguration = new BreakTimer {
                    Frequency = 0, Length = 0, IdleResetTime = 0
                };
                BreakTimer = defaultConfiguration;
            }
            else
            {
                BreakTimer = configuration;
            }
        }
예제 #15
0
        public PoolingAudioPlayer(Logger logger, UserConfigurationManager config, UnityReferenceMaster unityReferenceMaster, GameObject audioSourcePrefab)
        {
            _logger = logger;
            _config = config;

            _sourceParent      = Object.Instantiate(new GameObject());
            _sourceParent.name = "audio_source_parent";

            _sources = new PooledAudioSource[NumberOfSources];

            for (var i = 0; i < NumberOfSources; i++)
            {
                _sources[i] = Object.Instantiate(audioSourcePrefab).GetComponent <PooledAudioSource>();
                _sources[i].transform.SetParent(_sourceParent.transform);
                _sources[i].Initialize(config, unityReferenceMaster);
            }
        }
예제 #16
0
        public PoolingAudioPlayer(Logger logger, UserConfigurationManager config, UnityReferenceMaster unityReferenceMaster, GameObject audioSourcePrefab)
        {
            _logger = logger;
            _config = config;

            _sourceParent = Object.Instantiate(new GameObject());
            _sourceParent.name = "audio_source_parent";

            _sources = new PooledAudioSource[NumberOfSources];

            for (var i = 0; i < NumberOfSources; i++)
            {
                _sources[i] = Object.Instantiate(audioSourcePrefab).GetComponent<PooledAudioSource>();
                _sources[i].transform.SetParent(_sourceParent.transform);
                _sources[i].Initialize(config, unityReferenceMaster);
            }
        }
예제 #17
0
        public async Task GetUserChatConfigurationAsyncTest()
        {
            var mockPartnerRepository = new Mock <IPartnerRepository>();
            var mockContactRepository = new Mock <IContactRepository>();

            var userId = _rnd.Next(111, 1000);

            var user          = EntityModellers.CreateUserEntity(userId);
            var partner       = EntityModellers.CreatePartnerEntity();
            var chatUser      = EntityModellers.CreateChatUserEntity();
            var userRights    = EntityModellers.GetUserRights();
            var userRightsFor = new[] { "SendBroadcast" };

            mockPartnerRepository.Setup(x => x.GetUser(userId)).Returns(user);
            mockPartnerRepository.Setup(x => x.GetPartnerDetail()).Returns(partner);
            mockContactRepository.Setup(x => x.GetChatUserAsync(user.Id, partner.PartnerId)).ReturnsAsync(chatUser);
            mockPartnerRepository.Setup(x => x.GetPermissions(userId, userRights)).Returns(userRightsFor);

            var userConfiguration = new UserConfigurationDto
            {
                LoggedUserDetail = new LoggedUserDetailDto
                {
                    UserId                      = user.Id,
                    ChatUserId                  = chatUser.ChatUserId,
                    UserName                    = $"{user.FirstName} {user.LastName}",
                    UserRole                    = user.UserRole,
                    IsEnableChat                = user.IsEnableChat,
                    IsBroadcastEnable           = userRightsFor.Contains("SendBroadcast"),
                    IsAdmin                     = user.ProfileCode.Equals("ADMIN"),
                    IsHighImportanceEnable      = user.IsHighImportanceEnable,
                    IsChatAllTeams              = userRightsFor.Contains("ChatAllTeams"),
                    IsEmployeeMessageLogViewAll = userRightsFor.Contains(""),
                    IsAppointmentArrivalMessage = userRightsFor.Contains(""),
                    IsSendEmpMessage            = userRightsFor.Contains(""),
                    UserStatus                  = chatUser.Status ?? UserStatus.Available.ToString()
                },
                Partner = partner
            };

            var expected           = userConfiguration;
            var chatServiceManager = new UserConfigurationManager(mockPartnerRepository.Object, mockContactRepository.Object);
            var actual             = await chatServiceManager.GetUserChatConfigurationAsync(userId);

            Assert.Equal(expected, actual, new LogicEqualityComparer <UserConfigurationDto>());
        }
예제 #18
0
        private static UserConfiguration RecreateFolderConfiguration(UserConfigurationManager configManager, string configName, UserConfigurationTypes configType, StoreId folderId, bool saveIfNonexisting)
        {
            UserConfiguration userConfiguration = configManager.CreateFolderConfiguration(configName, configType, folderId);

            if (saveIfNonexisting)
            {
                bool flag = false;
                try
                {
                    userConfiguration.Save();
                    flag = true;
                }
                finally
                {
                    if (!flag && userConfiguration != null)
                    {
                        userConfiguration.Dispose();
                        userConfiguration = null;
                    }
                }
            }
            return(userConfiguration);
        }
예제 #19
0
        public void Start()
        {
            /* RESOURCE LIST CREATION */
#if UNITY_EDITOR
            AssetDatabase.Refresh();
            FileServices.CreateResourcesList("Assets/Resources/resourceslist.txt");
#endif
            FileServices.LoadResourcesList("resourceslist");

            #region LOAD RESOURCES
            // logger and ioc
            _logger   = new Logger("info.log", false);
            _resolver = new IoCResolver(_logger);
            _resolver.RegisterItem(_logger);

            _config = new UserConfigurationManager(new UserConfigurationData
            {
                GameVolume  = 1f,
                MusicVolume = 1f
            });
            _resolver.RegisterItem(_config);

            // messager
            _messager = new Messager();
            _resolver.RegisterItem(_messager);

            // unity reference master
            _unity = GetComponent <UnityReferenceMaster>();
            _unity.DebugModeActive = false;
            _resolver.RegisterItem(_unity);

            // player
            var player = new UserAccountManager();
            _resolver.RegisterItem(player);

            // material provider
            var materialProvider = new MaterialProvider(_logger);
            MaterialLoader.LoadMaterial(materialProvider, "Materials");
            _resolver.RegisterItem(materialProvider);

            // texture provider
            var textureProvider = new TextureProvider(_logger);
            var spriteProvider  = new SpriteProvider(_logger);
            TextureLoader.LoadTextures(textureProvider, spriteProvider, "Textures");
            _resolver.RegisterItem(textureProvider);
            _resolver.RegisterItem(spriteProvider);

            // sound provider
            var soundProvider = new SoundProvider(_logger);
            SoundLoader.LoadSounds(_logger, soundProvider, "Sounds");
            _resolver.RegisterItem(soundProvider);

            // prefab provider
            var prefabProvider = new PrefabProvider(_logger);
            PrefabLoader.LoadPrefabs(prefabProvider);
            _resolver.RegisterItem(prefabProvider);

            // pooling
            var poolingObjectManager = new PoolingObjectManager(_logger, prefabProvider);
            _resolver.RegisterItem(poolingObjectManager);

            var soundPoolManager = new PoolingAudioPlayer(_logger, _config, _unity, prefabProvider.GetPrefab("audio_source_prefab"));
            _resolver.RegisterItem(soundPoolManager);

            _particles = new PoolingParticleManager(_resolver);
            _resolver.RegisterItem(_particles);

            // canvas provider
            var canvasProvider = new CanvasProvider(_logger);
            _unity.LoadCanvases(canvasProvider);
            _resolver.RegisterItem(canvasProvider);

            // data provider
            var gameDataProvider = new GameDataProvider(_logger);

            /* DATA GOES HERE */

            _resolver.RegisterItem(gameDataProvider);
            #endregion

            _uiManager = new UiManager();
            _resolver.RegisterItem(_uiManager);

            // lock the resolver (stop any new items being registered)
            _resolver.Lock();

            /* BEGIN STATE */
            _currentState = new MenuState(_resolver);
            _currentState.Initialize();

            /* SUBSCRIBE FOR GAME END */
            _onExit = _messager.Subscribe <ExitMessage>(OnExit);
        }
예제 #20
0
        public void Start()
        {
            /* RESOURCE LIST CREATION */
            #if UNITY_EDITOR
            AssetDatabase.Refresh();
            FileServices.CreateResourcesList("Assets/Resources/resourceslist.txt");
            #endif
            FileServices.LoadResourcesList("resourceslist");

            #region LOAD RESOURCES
            // logger and ioc
            _logger = new Logger("info.log", false);
            _resolver = new IoCResolver(_logger);
            _resolver.RegisterItem(_logger);

            _config = new UserConfigurationManager(new UserConfigurationData
            {
                GameVolume = 1f,
                MusicVolume = 1f
            });
            _resolver.RegisterItem(_config);

            // messager
            _messager = new Messager();
            _resolver.RegisterItem(_messager);

            // unity reference master
            _unity = GetComponent<UnityReferenceMaster>();
            _unity.DebugModeActive = false;
            _resolver.RegisterItem(_unity);

            // player
            var player = new UserAccountManager();
            _resolver.RegisterItem(player);

            // material provider
            var materialProvider = new MaterialProvider(_logger);
            MaterialLoader.LoadMaterial(materialProvider,"Materials");
            _resolver.RegisterItem(materialProvider);

            // texture provider
            var textureProvider = new TextureProvider(_logger);
            var spriteProvider = new SpriteProvider(_logger);
            TextureLoader.LoadTextures(textureProvider, spriteProvider, "Textures");
            _resolver.RegisterItem(textureProvider);
            _resolver.RegisterItem(spriteProvider);

            // sound provider
            var soundProvider = new SoundProvider(_logger);
            SoundLoader.LoadSounds(_logger, soundProvider, "Sounds");
            _resolver.RegisterItem(soundProvider);

            // prefab provider
            var prefabProvider = new PrefabProvider(_logger);
            PrefabLoader.LoadPrefabs(prefabProvider);
            _resolver.RegisterItem(prefabProvider);

            // pooling
            var poolingObjectManager = new PoolingObjectManager(_logger, prefabProvider);
            _resolver.RegisterItem(poolingObjectManager);

            var soundPoolManager = new PoolingAudioPlayer(_logger, _config, _unity, prefabProvider.GetPrefab("audio_source_prefab"));
            _resolver.RegisterItem(soundPoolManager);

            _particles = new PoolingParticleManager(_resolver);
            _resolver.RegisterItem(_particles);

            // canvas provider
            var canvasProvider = new CanvasProvider(_logger);
            _unity.LoadCanvases(canvasProvider);
            _resolver.RegisterItem(canvasProvider);

            // data provider
            var gameDataProvider = new GameDataProvider(_logger);

            /* DATA GOES HERE */

            _resolver.RegisterItem(gameDataProvider);
            #endregion

            _uiManager = new UiManager();
            _resolver.RegisterItem(_uiManager);

            // lock the resolver (stop any new items being registered)
            _resolver.Lock();

            /* BEGIN STATE */
            _currentState = new MenuState(_resolver);
            _currentState.Initialize();

            /* SUBSCRIBE FOR GAME END */
            _onExit = _messager.Subscribe<ExitMessage>(OnExit);
        }
 /// <summary>
 ///     Save user configuration to disk.
 /// </summary>
 public void SaveUserConfiguration()
 {
     UserConfigurationManager.Save(BreakTimer);
 }