/// <summary>
        /// Fixed:
        /// </summary>
        public UserModel(string loginId)
        {
            var ss = SiteSettingsUtilities.UsersSiteSettings();

            SetByForm(ss);
            Get(ss, where : Rds.UsersWhere().LoginId(loginId));
        }
Beispiel #2
0
 public static string SignIn(string returnUrl)
 {
     return(new UserModel(
                SiteSettingsUtilities.UsersSiteSettings(),
                setByForm: true)
            .Authenticate(returnUrl));
 }
        /// <summary>
        /// Fixed:
        /// </summary>
        public bool Authenticate()
        {
            var ret = false;

            switch (Parameters.Authentication.Provider)
            {
            case "LDAP":
                ret = Ldap.Authenticate(LoginId, Forms.Data("Users_Password"));
                if (ret)
                {
                    Get(SiteSettingsUtilities.UsersSiteSettings(),
                        where : Rds.UsersWhere().LoginId(LoginId));
                }
                break;

            case "Extension":
                var user = Extension.Authenticate(LoginId, Password);
                ret = user != null;
                if (ret)
                {
                    Get(SiteSettingsUtilities.UsersSiteSettings(),
                        where : Rds.UsersWhere()
                        .TenantId(user.TenantId)
                        .UserId(user.Id));
                }
                break;

            default:
                ret = GetByCredentials(LoginId, Password, Forms.Int("SelectedTenantId"));
                break;
            }
            return(ret);
        }
 /// <summary>
 /// Fixed:
 /// </summary>
 public UserModel(RdsUser.UserTypes userType)
 {
     OnConstructing();
     UserId = userType.ToInt();
     Get(SiteSettingsUtilities.UsersSiteSettings());
     OnConstructed();
 }
Beispiel #5
0
        public ActionResult Edit(int id)
        {
            var context = new Context();

            if (!Request.IsAjaxRequest())
            {
                var log  = new SysLogModel(context: context);
                var html = UserUtilities.Editor(
                    context: context,
                    ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                    userId: id,
                    clearSessions: true);
                ViewBag.HtmlBody = html;
                log.Finish(context: context, responseSize: html.Length);
                return(View());
            }
            else
            {
                var log  = new SysLogModel(context: context);
                var json = UserUtilities.EditorJson(
                    context: context,
                    ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                    userId: id);
                log.Finish(context: context, responseSize: json.Length);
                return(Content(json));
            }
        }
 public static string SignIn(Context context, string returnUrl)
 {
     return(new UserModel(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                setByForm: true)
            .Authenticate(context: context, returnUrl: returnUrl));
 }
Beispiel #7
0
 public static bool Try(Context context, string loginId, string password)
 {
     return(new UserModel(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                formData: context.Forms)
            .Authenticate(context: context));
 }
 public static bool Try(IContext context, string loginId, string password)
 {
     return(new UserModel(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                setByForm: true)
            .Authenticate(context: context));
 }
Beispiel #9
0
        public string DeleteApiKey()
        {
            var log  = new SysLogModel();
            var json = UserUtilities.DeleteApiKey(
                ss: SiteSettingsUtilities.UsersSiteSettings());

            log.Finish(json.Length);
            return(json);
        }
 /// <summary>
 /// Fixed:
 /// </summary>
 public bool GetByCredentials(string loginId, string password, int tenantId = 0)
 {
     Get(SiteSettingsUtilities.UsersSiteSettings(),
         where : Rds.UsersWhere()
         .LoginId(loginId)
         .Password(password)
         .Disabled(0));
     return(AccessStatus == Databases.AccessStatuses.Selected);
 }
Beispiel #11
0
        public ActionResult New(long id = 0)
        {
            var log  = new SysLogModel();
            var html = UserUtilities.EditorNew(
                SiteSettingsUtilities.UsersSiteSettings());

            ViewBag.HtmlBody = html;
            log.Finish(html.Length);
            return(View());
        }
Beispiel #12
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public ActionResult EditApi()
        {
            var log  = new SysLogModel();
            var html = UserUtilities.ApiEditor(
                ss: SiteSettingsUtilities.UsersSiteSettings());

            ViewBag.HtmlBody = html;
            log.Finish(html.Length);
            return(View());
        }
        public string Create(Context context)
        {
            var log  = new SysLogModel(context: context);
            var json = UserUtilities.Create(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
Beispiel #14
0
        public string DeleteComment(int id)
        {
            var log  = new SysLogModel();
            var json = UserUtilities.Update(
                ss: SiteSettingsUtilities.UsersSiteSettings(),
                userId: id);

            log.Finish(json.Length);
            return(json);
        }
Beispiel #15
0
        private void SetAnonymouseSession()
        {
            var userModel = new UserModel(
                SiteSettingsUtilities.UsersSiteSettings(),
                HttpContext.Current.User?.Identity.Name.ToInt() ?? 0);

            Session["Language"]  = userModel.Language;
            Session["RdsUser"]   = userModel.RdsUser();
            Session["Developer"] = userModel.Developer;
        }
        /// <summary>
        /// Fixed:
        /// </summary>
        public string OpenExportSelectorDialog(Context context)
        {
            var log  = new SysLogModel(context: context);
            var json = UserUtilities.OpenExportSelectorDialog(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
Beispiel #17
0
        public string History(int id)
        {
            var log  = new SysLogModel();
            var json = UserUtilities.History(
                ss: SiteSettingsUtilities.UsersSiteSettings(),
                userId: id);

            log.Finish(json.Length);
            return(json);
        }
        /// <summary>
        /// Fixed:
        /// </summary>
        public string EditApi(Context context)
        {
            var log  = new SysLogModel(context: context);
            var html = UserUtilities.ApiEditor(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: html.Length);
            return(html);
        }
Beispiel #19
0
        /// <summary>
        /// Fixed:
        /// </summary>
        public string DeleteMailAddresses(int id)
        {
            var log  = new SysLogModel();
            var json = UserUtilities.DeleteMailAddresses(
                ss: SiteSettingsUtilities.UsersSiteSettings(),
                userId: id);

            log.Finish(json.Length);
            return(json);
        }
Beispiel #20
0
        public string SelectSearchDropDown(Context context)
        {
            var log  = new SysLogModel(context: context);
            var json = Libraries.Models.DropDowns.SelectSearchDropDown(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
        public string New(IContext context, long id = 0)
        {
            var log  = new SysLogModel(context: context);
            var html = UserUtilities.EditorNew(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: html.Length);
            return(html);
        }
Beispiel #22
0
        public string DeleteApiKey()
        {
            var context = new Context();
            var log     = new SysLogModel(context: context);
            var json    = UserUtilities.DeleteApiKey(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
Beispiel #23
0
        private void InitializeSession()
        {
            Sessions.Set("StartTime", DateTime.Now);
            Sessions.Set("LastAccessTime", Sessions.Get <DateTime>("StartTime"));
            Sessions.Set("SessionGuid", Strings.NewGuid());
            if (Sessions.LoggedIn())
            {
                //TODO Ldap
                //if (Authentications.Windows())
                //{
                //    Ldap.UpdateOrInsert(HttpContext.Current.User.Identity.Name);
                //}
                var userId   = Sessions.UserId();
                var tenantId = Rds.ExecuteScalar_int(statements:
                                                     Rds.SelectUsers(
                                                         column: Rds.UsersColumn().TenantId(),
                                                         where : Rds.UsersWhere().UserId(userId)));
                Sessions.SetTenantId(tenantId);
                StatusesInitializer.Initialize(tenantId);
                var userModel = new UserModel(
                    SiteSettingsUtilities.UsersSiteSettings(),
                    userId);
                if (userModel.AccessStatus == Databases.AccessStatuses.Selected &&
                    !userModel.Disabled)
                {
                    userModel.SetSession();
                }
                else
                {
                    Authentications.SignOut();
                    SetAnonymouseSession();
                    var request = AspNetCoreHttpContext.Current.Request;
                    var url     = $"{request.Scheme}://{request.Host.Value}{request.Path.Value}{request.QueryString.Value}";
                    AspNetCoreHttpContext.Current.Response.Redirect(url);
                }
            }
            else
            {
                SetAnonymouseSession();
            }

            var @base = AspNetCoreHttpContext.Current.Request.PathBase;

            switch (@base.Value.ToLower())
            {
            case "~/backgroundtasks/do":
            case "~/reminderschedules/remind":
                break;

            default:
                new SysLogModel().Finish();
                break;
            }
        }
        public string OpenChangePasswordDialog()
        {
            var context = new Context();
            var log     = new SysLogModel(context: context);
            var json    = UserUtilities.OpenChangePasswordDialog(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
        /// <summary>
        /// Fixed:
        /// </summary>
        public string DeleteMailAddresses(Context context, int id)
        {
            var log  = new SysLogModel(context: context);
            var json = UserUtilities.DeleteMailAddresses(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                userId: id);

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
Beispiel #26
0
        public ActionResult New(long id = 0)
        {
            var context = new Context();
            var log     = new SysLogModel(context: context);
            var html    = UserUtilities.EditorNew(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context));

            ViewBag.HtmlBody = html;
            log.Finish(context: context, responseSize: html.Length);
            return(View());
        }
Beispiel #27
0
        public string History(int id)
        {
            var context = new Context();
            var log     = new SysLogModel(context: context);
            var json    = UserUtilities.History(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                userId: id);

            log.Finish(context: context, responseSize: json.Length);
            return(json);
        }
 /// <summary>
 /// Fixed:
 /// </summary>
 public Error.Types ChangePassword()
 {
     PasswordExpirationPeriod();
     Rds.ExecuteNonQuery(statements: Rds.UpdateUsers(
                             where : Rds.UsersWhereDefault(this),
                             param: Rds.UsersParam()
                             .Password(ChangedPassword)
                             .PasswordExpirationTime(PasswordExpirationTime.Value)
                             .PasswordChangeTime(raw: "getdate()")));
     Get(SiteSettingsUtilities.UsersSiteSettings());
     return(Error.Types.None);
 }
 private static UserModel GetUser(Context context)
 {
     return(new UserModel(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                dataRow: Rds.ExecuteTable(
                    context: context,
                    statements: Rds.SelectUsers(
                        column: Rds.UsersDefaultColumns(),
                        join: Rds.UsersJoinDefault(),
                        where : Rds.UsersWhere().LoginId(context.LoginId)))
                .AsEnumerable()
                .FirstOrDefault()));
 }
Beispiel #30
0
        /// <summary>
        /// Fixed:
        /// </summary>
        private static void Initialize(
            this DemoModel demoModel,
            Context context,
            Dictionary <string, long> idHash,
            string password)
        {
            demoModel.InitializeTimeLag();
            InitializeDepts(
                context: context,
                demoModel: demoModel,
                idHash: idHash);
            InitializeUsers(
                context: context,
                demoModel: demoModel,
                idHash: idHash,
                password: password);
            var userModel = new UserModel(
                context: context,
                ss: SiteSettingsUtilities.UsersSiteSettings(context: context),
                loginId: LoginId(demoModel, "User1"));

            userModel.SetSession();
            context.SetBySession();
            SiteInfo.Reflesh(context: context);
            InitializeSites(context: context, demoModel: demoModel, idHash: idHash);
            Def.DemoDefinitionCollection
            .Where(o => o.Type == "Sites")
            .OrderBy(o => o.Id)
            .ForEach(o =>
            {
                InitializeIssues(
                    context: context, demoModel: demoModel, parentId: o.Id, idHash: idHash);
                InitializeResults(
                    context: context, demoModel: demoModel, parentId: o.Id, idHash: idHash);
            });
            InitializeLinks(
                context: context,
                demoModel: demoModel,
                idHash: idHash);
            InitializePermissions(
                context: context,
                idHash: idHash);
            Rds.ExecuteNonQuery(
                context: context,
                statements: Rds.UpdateDemos(
                    param: Rds.DemosParam().Initialized(true),
                    where : Rds.DemosWhere().Passphrase(demoModel.Passphrase)));
            Libraries.Migrators.SiteSettingsMigrator.Migrate(context: context);
        }