Ejemplo n.º 1
0
 public ActionResult UpdateNewSerOrgNotifyEmail(GeneralSettingsModel model)
 {
     if (!string.IsNullOrEmpty(model.NewSerOrgNotifyEmail))
     {
         string regexEmail = @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*";
         //string regexEmails = @"^([a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+),?)+$";
         var invalidList = model.NewSerOrgNotifyEmail.Split('@');
         if (model.NewSerOrgNotifyEmail.Contains(","))
         {
             foreach (var email in model.NewSerOrgNotifyEmail.Split(','))
             {
                 if (!Regex.IsMatch(email, regexEmail))
                 {
                     return(RedirectToAction("Index", new { errorMsg = "One of the email's format is not valid", errorKey = "NewSerOrgNotifyEmail" }));
                 }
             }
         }
         else if (invalidList.Count() > 2)
         {
             return(RedirectToAction("Index", new { errorMsg = "Please enter email addresses separated by comma", errorKey = "NewSerOrgNotifyEmail" }));
         }
         else if (!Regex.IsMatch(model.NewSerOrgNotifyEmail, regexEmail))
         {
             return(RedirectToAction("Index", new { errorMsg = "Email format is not valid", errorKey = "NewSerOrgNotifyEmail" }));
         }
         GlobalDbSettings.Set(GlobalDbSettings.GlobalStringNames.NewSerOrgNotifyEmail, model.NewSerOrgNotifyEmail);
         return(RedirectToAction("Index", new { successMessage = "Updated Successfully" }));
     }
     return(RedirectToAction("Index", new { errorMsg = "Please enter an email address", errorKey = "NewSerOrgNotifyEmail" }));
 }
Ejemplo n.º 2
0
        private void ShowSplashScreen(GeneralSettingsModel generalSettingsModel)
        {
            var splashWindow = new SplashWindow
            {
                DataContext = new SplashWindowViewModel()
            };

            SplashScreen = splashWindow;

            if (generalSettingsModel.RememberScreenPosition)
            {
                var positionsInfo = new WindowPositionsInfo
                {
                    Width           = splashWindow.Width,
                    Height          = splashWindow.Height,
                    DisplaySettings = generalSettingsModel.DisplaySettings,
                    StartupLocation = WindowStartupLocation.CenterScreen
                };

                if (positionsInfo.DisplaySettings != null)
                {
                    positionsInfo.DisplaySettings.Maximized = false;
                }

                WindowPositionsService.SetPosition(splashWindow, positionsInfo);
            }

            splashWindow.Show();

            ResetSplashCreated.Set();
            Dispatcher.Run();
        }
Ejemplo n.º 3
0
        private void InitializeApplication(GeneralSettingsModel generalSettingsModel)
        {
            AppDomain.CurrentDomain.UnhandledException += CurrentDomainUnhandledException;

            Version = Assembly.GetExecutingAssembly().GetName().Version;

            LogProvider.Log.Info(string.Format("---------------=============== Initialize DriveHUD (v.{0}) ===============---------------", Version));
            LogProvider.Log.Info(string.Format("OsVersion: {0}", Environment.OSVersion));
            LogProvider.Log.Info(string.Format("Current Culture: {0}", Thread.CurrentThread.CurrentCulture));
            LogProvider.Log.Info(string.Format("Current UI Culture: {0}", Thread.CurrentThread.CurrentUICulture));

            ValidateLicenseAssemblies();

            if (generalSettingsModel.IsAutomaticallyDownloadUpdates)
            {
                CheckUpdates();
            }

            VisualStudio2013Palette.LoadPreset(VisualStudio2013Palette.ColorVariation.Dark);

            LogCleaner.ClearLogsFolder();

            /* Without this user won't be able to input decimal point for float bindings if UpdateSourceTrigger set to PropertyChanged */
            System.Windows.FrameworkCompatibilityPreferences.KeepTextBoxDisplaySynchronizedWithTextProperty = false;
        }
Ejemplo n.º 4
0
        public ActionResult General(GeneralSettingsModel model)
        {
            var generalSettings = model.ToEntity();

            _settingService.SaveSetting(generalSettings);
            SuccessNotification(_localizationService.GetResource("Record.Saved"));
            return(new NullJsonResult());
        }
Ejemplo n.º 5
0
        private void GeneralSettingsChangedEvent_Handler(GeneralSettingsModel settings)
        {
            _shellView.Topmost = settings.TopMost;

            Accent   accent = SettingsFactory.GetAccent(settings.ThemeAccent);
            AppTheme theme  = SettingsFactory.GetTheme(settings.ThemeBase);

            ThemeManager.ChangeAppStyle(_themeResources, accent, theme);
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> Index()
        {
            var model = new GeneralSettingsModel
            {
                VideoViewPercentage = await _generalSettingsRepository.GetVideoViewPercentage()
            };

            return(View(model));
        }
Ejemplo n.º 7
0
        public async Task <IActionResult> Save(GeneralSettingsModel model)
        {
            if (model.VideoViewPercentage >= 0 && model.VideoViewPercentage <= 100)
            {
                await _generalSettingsRepository.SetVideoViewPercentage(model.VideoViewPercentage);
            }

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 8
0
        private void InitSplashScreen(GeneralSettingsModel generalSettingsModel)
        {
            ResetSplashCreated = new ManualResetEvent(false);

            SplashThread = new Thread(() => ShowSplashScreen(generalSettingsModel));
            SplashThread.SetApartmentState(ApartmentState.STA);
            SplashThread.IsBackground = true;
            SplashThread.Start();

            ResetSplashCreated.WaitOne();
        }
Ejemplo n.º 9
0
        public async Task <IActionResult> Set([FromBody] GeneralSettingsPostModel model)
        {
            var isNew    = false;
            var settings = Db.GeneralSettings.FirstOrDefault();

            if (settings == null)
            {
                settings = new GeneralSettingsModel();
                isNew    = true;
            }

            if (!model.Password.IsEmpty())
            {
                if (model.CurrentPassword.IsEmpty() || !Hashing.CompareStringToHash(model.CurrentPassword, settings.PasswordHash))
                {
                    return(BadRequest(ErrorModel.BadRequest("invalid current password")));
                }

                settings.PasswordHash = Hashing.CreatePasswordHash(model.Password);
            }

            if (!model.DefaultRedirect.IsEmpty())
            {
                if (model.DefaultRedirect.Equals("__RESET__"))
                {
                    settings.DefaultRedirect = null;
                }
                else
                {
                    if (!await URIValidation.Validate(model.DefaultRedirect))
                    {
                        return(BadRequest(ErrorModel.BadRequest("invalid defautl redirect url")));
                    }
                    settings.DefaultRedirect = model.DefaultRedirect;
                }
            }

            if (isNew)
            {
                Db.GeneralSettings.Add(settings);
            }
            else
            {
                Db.GeneralSettings.Update(settings);
            }

            await Db.SaveChangesAsync();

            return(Ok(settings));
        }
        public ActionResult GeneralSettings(int id, GeneralSettingsModel model)
        {
            var game = new TCAdmin.GameHosting.SDK.Objects.Game(id);

            var settings = GetSettingsForGame(game);

            settings.GeneralSettingsModel = model;
            SaveBannerSettingsToGame(game, settings);

            return(new JsonHttpStatusResult(new
            {
                Message = "Saved Successfully"
            }, HttpStatusCode.OK));
        }
Ejemplo n.º 11
0
 public ActionResult UpdateDailyDigestFireHour(GeneralSettingsModel model)
 {
     if (model.CfsDailyDigestFireHour.HasValue)
     {
         GlobalDbSettings.Set(GlobalDbSettings.GlobalStringNames.CfsDailyDigestFireHour, model.CfsDailyDigestFireHour);
         var jobKey = new JobKey("CfsDailyDigestJob");
         var job    = Schedule.GetJobDetailByJobKey(jobKey);
         if (job != null)
         {
             Schedule.DeleteJob(jobKey);
         }
         Schedule.RegisterCfsDailyDigestJob();
     }
     return(RedirectToAction("Index", new { cfsDailyDigestSuccessMessage = "CFS Daily Digest Fire Hour saved successfully" }));
 }
Ejemplo n.º 12
0
        public void Version_ChangeValue_CompareViewToFile()
        {
            var settingsHandler      = new SettingsHandler();
            var settingsProvider     = new SettingsProvider();
            var generalSettingsModel = new GeneralSettingsModel
            {
                Version = "5.0.0"
            };

            settingsProvider.SetGeneralSettingsModel(generalSettingsModel);
            settingsHandler.SaveSettings();
            settingsHandler.ResetSettings();
            settingsHandler.LoadSettings();

            Assert.Equal(generalSettingsModel.Version, settingsProvider.GetGeneralSettingsModel().Version);
        }
Ejemplo n.º 13
0
        public ActionResult GeneralCommon(GeneralSettingsModel model)
        {
            var general = _settingService.LoadSetting <GeneralSettings>();

            general = model.ToEntity(general);

            _settingService.SaveSetting(general, x => x.SiteTitle, false);
            _settingService.SaveSetting(general, x => x.Separator, false);
            _settingService.SaveSetting(general, x => x.MetaTitle, false);
            _settingService.SaveSetting(general, x => x.MetaKeywords, false);
            _settingService.SaveSetting(general, x => x.MetaDescription, false);

            SuccessNotification("保存成功");

            return(RedirectToAction("GeneralCommon"));
        }
Ejemplo n.º 14
0
        public IHttpActionResult Post(GeneralSettingsModel entityModel)
        {
            var generalSettings = new GeneralSettings()
            {
                ApplicationApiRoot      = entityModel.ApplicationApiRoot,
                ApplicationCookieDomain = entityModel.ApplicationCookieDomain,
                ApplicationUiDomain     = entityModel.ApplicationUiDomain,
                VideoServerDomain       = entityModel.VideoServerDomain,
                ImageServerDomain       = entityModel.ImageServerDomain,
                DefaultTimeZoneId       = entityModel.DefaultTimeZoneId
            };

            //save it and respond
            _settingService.Save(generalSettings);
            VerboseReporter.ReportSuccess("Settings saved successfully", "post_setting");
            return(RespondSuccess(new { GeneralSettings = generalSettings.ToModel() }));
        }
Ejemplo n.º 15
0
        public GeneralSettings()
        {
            this.RequiresAuthentication();
            Get("/generalsettings", args =>
            {
                var model = new GeneralSettingsModel();
                return(View["GeneralSettings", model]);
            });

            Post("/generalsettings", args =>
            {
                var body       = new StreamReader(Request.Body).ReadToEnd();
                var parameters = HttpUtility.ParseQueryString(body);

                FUTSettings.Instance.RoundsPerMinuteMin       = int.Parse(parameters["rpmMin"]);
                FUTSettings.Instance.RoundsPerMinuteMax       = int.Parse(parameters["rpmMax"]);
                FUTSettings.Instance.RoundsPerMinuteMinSearch = int.Parse(parameters["rpmMinSearch"]);
                FUTSettings.Instance.RoundsPerMinuteMaxSearch = int.Parse(parameters["rpmMaxSearch"]);
                FUTSettings.Instance.PauseBetweenRelogs       = int.Parse(parameters["pauseRelogs"]);
                FUTSettings.Instance.TradepileCheck           = int.Parse(parameters["tradepileCheckTimes"]);
                FUTSettings.Instance.Counter = int.Parse(parameters["counterBase"]);
                FUTSettings.Instance.PriceCorrectionPercentage   = int.Parse(parameters["priceCorrectionPercentage"]);
                FUTSettings.Instance.PriceCheckTimes             = int.Parse(parameters["pricecheckTime"]);
                FUTSettings.Instance.MinimumPlayersForPriceCheck = int.Parse(parameters["minimumPlayersForPriceCheck"]);
                FUTSettings.Instance.EnableBuy          = parameters["enableBuy"] != null;
                FUTSettings.Instance.EnableSell         = parameters["enableSell"] != null;
                FUTSettings.Instance.RelistWithOldPrice = parameters["relistWithOldPrice"] != null;
                FUTSettings.Instance.DiscardEverything  = parameters["discardEverything"] != null;
                FUTSettings.Instance.LoginMethod        = parameters["currentLoginMethod"] == "web"
                    ? LoginMethod.Web
                    : parameters["currentLoginMethod"] == "ios"
                        ? LoginMethod.IOS
                        : LoginMethod.Android;
                FUTSettings.Instance.UseBidSwitch       = parameters["useBidSwitch"] != null;
                FUTSettings.Instance.UseRandomRequests  = parameters["useRandomRequests"] != null;
                FUTSettings.Instance.OneParallelLogin   = parameters["oneParallelLogin"] != null;
                FUTSettings.Instance.WatchlistCheck     = int.Parse(parameters["watchlistCheckTimes"]);
                FUTSettings.Instance.ExpiredTimer       = int.Parse(parameters["expiredTimer"]);
                FUTSettings.Instance.WaitAfterBuy       = int.Parse(parameters["waitAfterBuy"]);
                FUTSettings.Instance.MaxCardsPerDay     = int.Parse(parameters["maxCardsPerDay"]);
                FUTSettings.Instance.UseLastPriceChecks = int.Parse(parameters["useLastPriceChecks"]);
                FUTSettings.Instance.SaveChanges();

                return(Response.AsRedirect("/generalsettings"));
            });
        }
        public static GeneralSettingsModel ToModel(this GeneralSettings generalSettings)
        {
            var model = new GeneralSettingsModel()
            {
                ApplicationApiRoot      = generalSettings.ApplicationApiRoot,
                VideoServerDomain       = generalSettings.VideoServerDomain,
                ApplicationUiDomain     = generalSettings.ApplicationUiDomain,
                ApplicationCookieDomain = generalSettings.ApplicationCookieDomain,
                ImageServerDomain       = generalSettings.ImageServerDomain,
                DefaultTimeZoneId       = generalSettings.DefaultTimeZoneId,
                AvailableTimeZones      = ServerHelper.GetAvailableTimezones().Select(x =>
                {
                    dynamic tzObject     = new ExpandoObject();
                    tzObject.Id          = x.Id;
                    tzObject.DisplayName = x.DisplayName;
                    return(tzObject);
                }).ToList()
            };

            return(model);
        }
Ejemplo n.º 17
0
        //
        // GET: /Admin/GeneralSettings/

        public ActionResult Index(string errorMsg, string errorKey, string successMessage, string cfsExportSuccessMessage, string cfsDailyDigestSuccessMessage)
        {
            var model = new GeneralSettingsModel();

            model.NewSerOrgNotifyEmail     = GlobalDbSettings.GetString(GlobalDbSettings.GlobalStringNames.NewSerOrgNotifyEmail);
            model.CfsDailyLastDate         = GlobalDbSettings.GetString(GlobalDbSettings.GlobalStringNames.CfsDailyDigestLastDateTime);
            model.CfsRecordsExportDateTime = GlobalDbSettings.GetString(GlobalDbSettings.GlobalStringNames.ExportCfsClientRecordsDateTime);
            var hour = GlobalDbSettings.GetString(GlobalDbSettings.GlobalStringNames.CfsDailyDigestFireHour);
            int h;

            if (!string.IsNullOrEmpty(hour) && int.TryParse(hour, out h))
            {
                model.CfsDailyDigestFireHour = h;
            }
            if (string.IsNullOrEmpty(model.CfsDailyLastDate))
            {
                model.CfsDailyLastDate = "N/A";
            }
            if (string.IsNullOrEmpty(model.CfsRecordsExportDateTime))
            {
                model.CfsRecordsExportDateTime = "N/A";
            }
            if (!string.IsNullOrEmpty(errorMsg))
            {
                ModelState.AddModelError(errorKey ?? "", errorMsg);
            }
            if (!string.IsNullOrEmpty(successMessage))
            {
                ViewBag.SuccessMessage = successMessage;
            }
            if (!string.IsNullOrEmpty(cfsExportSuccessMessage))
            {
                ViewBag.CfsRecordsExportSuccessMessage = cfsExportSuccessMessage;
            }
            if (!string.IsNullOrEmpty(cfsDailyDigestSuccessMessage))
            {
                ViewBag.CfsDailyDigestSuccessMessage = cfsDailyDigestSuccessMessage;
            }
            return(View(model));
        }
Ejemplo n.º 18
0
 public IActionResult SaveSettings(GeneralSettingsModel generalSettings)
 {
     SaveSetting(generalSettings);
     return(R.Success.Result);
 }
Ejemplo n.º 19
0
        public static SettingsModel GetDefaultSettings()
        {
            GeneralSettingsModel general = new GeneralSettingsModel()
            {
                ThemeBase = new ThemeBaseModel
                {
                    Name        = "BaseLight",
                    DisplayName = "Light",
                    SourceUri   = "pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml"
                },
                ThemeAccent = new ThemeAccentModel
                {
                    Name      = "Cobalt",
                    ColorCode = "#FF0050EF",
                    SourceUri = "pack://application:,,,/MahApps.Metro;component/Styles/Accents/Cobalt.xaml"
                },
                TopMost = false
            };

            AlertSettingsModel alerts = new AlertSettingsModel()
            {
                BuyTypeColor                = media.Brushes.Green,
                SellTypeColor               = media.Brushes.Red,
                OtherTypesColor             = media.Brushes.Yellow,
                PriceColor                  = media.Brushes.SlateGray,
                SymbolColor                 = media.Brushes.DarkGoldenrod,
                TriggeredByColor            = media.Brushes.DeepPink,
                TimeFrameColor              = media.Brushes.DarkMagenta,
                TimeColor                   = media.Brushes.DimGray,
                MaxAlertNumber              = 100,
                MaxPriceDecimalPlacesNumber = 5,
                CommentFontModel            = new FontModel()
                {
                    Family = media.Fonts.SystemFontFamilies.FirstOrDefault(family => family.Source.Equals("Arial",
                                                                                                          StringComparison.InvariantCultureIgnoreCase)),
                    WeightModel = new FontWeightModel()
                    {
                        Name = "Normal", Weight = windows.FontWeights.Normal
                    },
                    StyleModel = new FontStyleModel()
                    {
                        Name = "Normal", Style = windows.FontStyles.Normal
                    },
                    Size = 20
                },
                TimeFormat = TimeFormat.TwentyFourHour,
                TimeZone   = TimeZoneInfo.GetSystemTimeZones().FirstOrDefault(tz => tz.BaseUtcOffset.Equals(DateTimeOffset.Now.Offset)),
            };

            SoundSettingsModel sound = new SoundSettingsModel();

            EmailSettingsModel email = new EmailSettingsModel()
            {
                Template        = GetDefaultEmailTemplate(),
                DefaultTemplate = GetDefaultEmailTemplate(),
            };

            TelegramSettingsModel telegram = new TelegramSettingsModel()
            {
                DefaultMessageTemplate = GetDefaultTelegramMessageTemplate(),
                MessageTemplate        = GetDefaultTelegramMessageTemplate(),
                Conversations          = new ObservableCollection <TelegramConversation>()
            };

            SettingsModel Settings = new SettingsModel()
            {
                General  = general,
                Alerts   = alerts,
                Sound    = sound,
                Email    = email,
                Telegram = telegram
            };

            return(Settings);
        }
Ejemplo n.º 20
0
 public static GeneralSettings ToEntity(this GeneralSettingsModel model, GeneralSettings destination)
 {
     return(model.MapTo(destination));
 }
Ejemplo n.º 21
0
 public void SetGeneralSettingsModel(GeneralSettingsModel model)
 {
     generalSettingsModel = model;
 }