public void CloneTo(UserDef user) { this.ID = user.ID; this.Username = user.Username; this.Password = user.Password; this.Role = user.Role; this.ProFlag = user.ProFlag; this.Name = user.Name; this.Surname = user.Surname; this.Email = user.Email; }
public static bool UserCan(UserDef user, ActionDef action) { switch (action) { case ActionDef.CRUDProfile: { return (user._role == RoleDef.Administrator); } case ActionDef.CRUDDataset: case ActionDef.CRUDSchema: case ActionDef.CRUDDomain: { return (user._role == RoleDef.Administrator || user.ProFlag); } case ActionDef.DefaultProc: { return (user._role == RoleDef.Administrator || user._role == RoleDef.Operator); } } return false; }
public Client(UserDef user) { _user = user; _path="~/Temp/" + ((_user != null) ? _user.Username : "******"); _fileToDownload = string.Empty; }
public static List<object> GetDomains(UserDef loggedUser, bool stub, BuilderProcedure builder = null) { /* try {*/ if (builder == null) builder = BuilderProcedure.Create(); List<object> _result = new List<object>(); // Get all themes List<CategoryScheme> _themes = builder.GetCategoryScheme(); List<Category> _themesUser = (loggedUser.Role == UserDef.RoleDef.Administrator) ? ISTAT.DBDAL.DataAccess.Get_Themes() : ISTAT.DBDAL.DataAccess.Get_Themes(loggedUser.ID); List<string> cacheCategoryScheme = new List<string>(); if (_themes != null) { foreach (CategoryScheme catScheme in _themes) { Dictionary<string, object> _rowScheme = new Dictionary<string, object>(); _rowScheme.Add("id", catScheme.Id); _rowScheme.Add("parent", "#"); _rowScheme.Add("text", string.Format(" [ {0} ] - {1} ", catScheme.Id, ISTAT.ENTITY.TextTypeWrapper.GetStringLocale( catScheme.Names, ISTAT.DBDAL.DataAccess.CurrentCultureInfo))); _rowScheme.Add("type", "categoryScheme"); _rowScheme.Add("icon", "img/cat_sch.png"); _result.Add(_rowScheme); catScheme.Categories.ForEach(cat => { Dictionary<string, object> _row = new Dictionary<string, object>(); _row.Add("id", cat.IDCategory); _row.Add("parent", (cat.IDParentCategory.ToString() != "0") ? cat.IDParentCategory : catScheme.Id); _row.Add("text", string.Format(" [ {0} ] - {1} ", cat.Code, ISTAT.ENTITY.TextTypeWrapper.GetStringLocale( cat.Names, ISTAT.DBDAL.DataAccess.CurrentCultureInfo))); _row.Add("type", "category"); _row.Add("icon", "img/cat.png"); if (_themesUser != null) { IEnumerable<Category> query = from Category catUser in _themesUser where catUser.IDCategory.ToString().Trim() == cat.Code.ToString() select catUser; Dictionary<string, object> _status = new Dictionary<string, object>(); int nRes = query.Count<Category>(); _status.Add("selected", (query != null && nRes > 0)); _row.Add("state", _status); } _result.Add(_row); }); } Dictionary<string, object> uncategorized = new Dictionary<string, object>(); uncategorized.Add("id", "0"); uncategorized.Add("parent", "#"); uncategorized.Add("text", "Uncategorized"); uncategorized.Add("type", "categoryScheme"); uncategorized.Add("icon", "img/cat_sch.png"); _result.Add(uncategorized); } if (stub == false) { List<DataStructure> _structures = ISTAT.DBDAL.DataAccess.Get_DataStructures(); List<DataStructure> _structuresUser = ISTAT.DBDAL.DataAccess.Get_DataStructures(loggedUser.ID); foreach (DataStructure structure in (loggedUser.Role == UserDef.RoleDef.Administrator) ? _structures : _structuresUser) { Dictionary<string, object> _row = new Dictionary<string, object>(); _row.Add("id", "ds_" + structure.IDSet); //TODO: MODIFICARE //string urn = ISTAT.DBDAL.DataAccess.Get_Theme_Urn(structure.IDCat); string urn = structure.IDCat.ToString(); bool inProduction = ISTAT.DBDAL.DataSDMX.Get_DataflowProduction(structure.IDFlow); _row.Add("parent", (urn != "") ? urn : "#"); _row.Add("text", string.Format(" [ {0} ] - {1} ", structure.Code, ISTAT.ENTITY.TextTypeWrapper.GetStringLocale( structure.Names, ISTAT.DBDAL.DataAccess.CurrentCultureInfo))); _row.Add("type", "dataset"); Dictionary<string, object> data = new Dictionary<string, object>(); data.Add("inProduction", inProduction); _row.Add("data", data); _row.Add("icon", (inProduction) ? "img/cube_red.png" : "img/cube.png"); // With LINQ match a list themes for user end current theme IEnumerable<DataStructure> query = from DataStructure structureUser in _structuresUser where structureUser.IDSet == structure.IDSet select structureUser; Dictionary<string, object> _status = new Dictionary<string, object>(); int nRes = query.Count(); _status.Add("selected", (query != null && nRes > 0)); _row.Add("state", _status); _result.Add(_row); } } if (_result.Count == 1) _result.Clear(); return _result; /* } catch (Exception ex) { throw ex; }*/ }
public string InsertProfile(int id, string username, string password, int role, bool pro, string name, string surname, string email) { // Retrive Logged user SDMX_Dataloader.Engine.Client client = null; try { client = HttpContext.Current.Session[UserDef.UserSessionKey] as SDMX_Dataloader.Engine.Client; if (client == null) throw new Exception("Session Expiried"); } catch (Exception ex) { return JsonMessage.SessionExpired; } try { if (!UserDef.UserCan(client.LoggedUser, UserDef.ActionDef.CRUDProfile)) return JsonMessage.GetError(Resources.Notification.err_action_denied); if (username.Trim() != string.Empty && password.Trim() != string.Empty) { if (!SDMX_Dataloader.Main.Class.Util.IsValidEmail(email.Trim())) return JsonMessage.GetError(Resources.Notification.err_email_empty); UserDef newUser = new UserDef { ID = id, Username = username.Trim(), Password = SDMX_Dataloader.Engine.Utility.EncriptMD5(password.Trim()), Role = (UserDef.RoleDef)role, ProFlag = pro, Name = name.Trim(), Surname = surname.Trim(), Email = email.Trim() }; int idUser; if ((idUser = ISTAT.DBDAL.DataAccess.Insert_User(newUser)) > 0) { Dictionary<string, object> _result = new Dictionary<string, object>(); _result.Add("ID", idUser); _result.Add("Name", newUser.Name); _result.Add("Surname", newUser.Surname); _result.Add("Username", newUser.Username); _result.Add("ProFlag", newUser.ProFlag); _result.Add("Role", newUser.Role.ToString()); _result.Add("Email", newUser.Email); return JsonMessage.GetData(_result); } } return JsonMessage.ErrorOccured; } catch (Exception ex) { Logger.Error(ex.Message); return JsonMessage.ErrorOccured; } }
public static bool Update_User(UserDef user) { DataWrapper dtw = new DataWrapper(DataWrapper.ECONNECTIONTYPE.SQL, DataAccess.SQLConnString_DB.ConnectionString); if (dtw.TestConnection()) { dtw.DBConnection.Open(); try { //////////////////////// System.Data.IDbCommand cmd = dtw.DBConnection.CreateCommand(); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.CommandText = "dbo.proc_UPDATE_USER"; if (user.ID != -1) { System.Data.IDbDataParameter _id_user = cmd.CreateParameter(); _id_user.DbType = System.Data.DbType.Int32; _id_user.ParameterName = "id_user"; _id_user.Value = user.ID; cmd.Parameters.Add(_id_user); } if (user.Username != string.Empty) { System.Data.IDbDataParameter _username = cmd.CreateParameter(); _username.DbType = System.Data.DbType.String; _username.ParameterName = "username"; _username.Value = user.Username; cmd.Parameters.Add(_username); } if (user.Password != string.Empty) { System.Data.IDbDataParameter _password = cmd.CreateParameter(); _password.DbType = System.Data.DbType.String; _password.ParameterName = "password"; _password.Value = user.Password; cmd.Parameters.Add(_password); } if (user.Name != string.Empty) { System.Data.IDbDataParameter _name = cmd.CreateParameter(); _name.DbType = System.Data.DbType.String; _name.ParameterName = "name"; _name.Value = user.Name; cmd.Parameters.Add(_name); } if (user.Surname != string.Empty) { System.Data.IDbDataParameter _surname = cmd.CreateParameter(); _surname.DbType = System.Data.DbType.String; _surname.ParameterName = "surname"; _surname.Value = user.Surname; cmd.Parameters.Add(_surname); } if (user.Email != string.Empty) { System.Data.IDbDataParameter _email = cmd.CreateParameter(); _email.DbType = System.Data.DbType.String; _email.ParameterName = "email"; _email.Value = user.Email; cmd.Parameters.Add(_email); } // Enum no null value System.Data.IDbDataParameter _id_role = cmd.CreateParameter(); _id_role.DbType = System.Data.DbType.Int32; _id_role.ParameterName = "id_role"; _id_role.Value = (int)user.Role; cmd.Parameters.Add(_id_role); // Bool no null value System.Data.IDbDataParameter _proFlag = cmd.CreateParameter(); _proFlag.DbType = System.Data.DbType.Boolean; _proFlag.ParameterName = "proFlag"; _proFlag.Value = user.ProFlag; cmd.Parameters.Add(_proFlag); cmd.ExecuteNonQuery(); //////////////////////// dtw.DBConnection.Close(); return true; } catch { dtw.DBConnection.Close(); return false; } } return false; }
public static int Insert_User(UserDef user) { DataWrapper dtw = new DataWrapper(DataWrapper.ECONNECTIONTYPE.SQL, DataAccess.SQLConnString_DB.ConnectionString); if (dtw.TestConnection()) { dtw.DBConnection.Open(); try { //////////////////////// System.Data.IDbCommand cmd = dtw.DBConnection.CreateCommand(); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.CommandText = "dbo.proc_INSERT_USER"; System.Data.IDbDataParameter _username = cmd.CreateParameter(); _username.DbType = System.Data.DbType.String; _username.ParameterName = "username"; _username.Value = user.Username; cmd.Parameters.Add(_username); System.Data.IDbDataParameter _password = cmd.CreateParameter(); _password.DbType = System.Data.DbType.String; _password.ParameterName = "password"; _password.Value = user.Password; cmd.Parameters.Add(_password); System.Data.IDbDataParameter _id_role = cmd.CreateParameter(); _id_role.DbType = System.Data.DbType.String; _id_role.ParameterName = "id_role"; _id_role.Value = (int)user.Role; cmd.Parameters.Add(_id_role); System.Data.IDbDataParameter _name = cmd.CreateParameter(); _name.DbType = System.Data.DbType.String; _name.ParameterName = "name"; _name.Value = user.Name; cmd.Parameters.Add(_name); System.Data.IDbDataParameter _surname = cmd.CreateParameter(); _surname.DbType = System.Data.DbType.String; _surname.ParameterName = "surname"; _surname.Value = user.Surname; cmd.Parameters.Add(_surname); System.Data.IDbDataParameter _proFlag = cmd.CreateParameter(); _proFlag.DbType = System.Data.DbType.String; _proFlag.ParameterName = "proFlag"; _proFlag.Value = user.ProFlag; cmd.Parameters.Add(_proFlag); System.Data.IDbDataParameter _email = cmd.CreateParameter(); _email.DbType = System.Data.DbType.String; _email.ParameterName = "email"; _email.Value = user.Email; cmd.Parameters.Add(_email); int idUser = (int)cmd.ExecuteScalar(); //////////////////////// dtw.DBConnection.Close(); return idUser; } catch { dtw.DBConnection.Close(); return -1; } } return -1; }
public static List<UserDef> Get_Users() { DataWrapper dtw = new DataWrapper(DataWrapper.ECONNECTIONTYPE.SQL, DataAccess.SQLConnString_DB.ConnectionString); if (dtw.TestConnection()) { // Access on db with the stored proc TryLogin dtw.DBConnection.Open(); System.Data.IDbCommand cmd = dtw.DBConnection.CreateCommand(); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.CommandText = "dbo.proc_GET_USERS"; System.Data.IDataReader _reader = cmd.ExecuteReader(); List<UserDef> _users = new List<UserDef>(); while (_reader.Read()) { UserDef _user = new UserDef(); _user.ID = _reader.GetInt32(_reader.GetOrdinal("ID_USER")); _user.Username = _reader.GetString(_reader.GetOrdinal("USERNAME")); _user.Password = _reader.GetString(_reader.GetOrdinal("PWD")); _user.Role = ((UserDef.RoleDef)_reader.GetInt32(_reader.GetOrdinal("ID_ROLE"))); _user.Name = _reader.GetString(_reader.GetOrdinal("NAME")); _user.Surname = _reader.GetString(_reader.GetOrdinal("SURNAME")); _user.ProFlag = _reader.GetBoolean(_reader.GetOrdinal("PROFLAG")); _user.Email = (_reader.GetValue(_reader.GetOrdinal("EMAIL")) != DBNull.Value) ? _reader.GetString(_reader.GetOrdinal("EMAIL")) : string.Empty; _users.Add(_user); } dtw.DBConnection.Close(); return (_users.Count == 0) ? null : _users; } return null; }
public static UserDef Get_User(string username, string password) { DataWrapper dtw = new DataWrapper(DataWrapper.ECONNECTIONTYPE.SQL, DataAccess.SQLConnString_DB.ConnectionString); if (dtw.TestConnection()) { // Access on db with the stored proc TryLogin dtw.DBConnection.Open(); System.Data.IDbCommand cmd = dtw.DBConnection.CreateCommand(); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.CommandText = "dbo.proc_TRY_LOGIN"; System.Data.IDbDataParameter _username = cmd.CreateParameter(); _username.DbType = System.Data.DbType.String; _username.ParameterName = "username"; _username.Value = username; cmd.Parameters.Add(_username); System.Data.IDbDataParameter _password = cmd.CreateParameter(); _password.DbType = System.Data.DbType.String; _password.ParameterName = "password"; _password.Value = password; cmd.Parameters.Add(_password); System.Data.IDataReader _reader = cmd.ExecuteReader(); UserDef _user = new UserDef(); if (_reader.Read()) { _user.ID = _reader.GetInt32(_reader.GetOrdinal("ID_USER")); _user.Username = username; _user.Password = password; _user.Role = ((UserDef.RoleDef)_reader.GetInt32(_reader.GetOrdinal("ID_ROLE"))); _user.ProFlag = (_reader.GetBoolean(_reader.GetOrdinal("PROFLAG"))); _user.Name = _reader.GetString(_reader.GetOrdinal("NAME")); _user.Surname = _reader.GetString(_reader.GetOrdinal("SURNAME")); _user.Email = (_reader.GetValue(_reader.GetOrdinal("EMAIL")) != DBNull.Value) ? _reader.GetString(_reader.GetOrdinal("EMAIL")) : string.Empty; } else { _user = null; } dtw.DBConnection.Close(); return _user; } return null; }