//Eliminacion del archivo fisico y en la BD public static File delete_file(string id) { rekursosEntities db = new rekursosEntities(); File result = new File(); result.status = true; try { var file_result = db.files.Where(w => w.id == id).SingleOrDefault(); if (file_result != null) { _unlink_file(file_result); db.files.Remove(file_result); db.SaveChanges(); result.message = file_result.name + " ha sido eliminado"; result.status = true; } } catch (Exception ex) { result.status = false; result.message = ex.Message.ToString(); } return(result); }
public static File SaveCamera(string image, int folder_id) { File result = new File(); result.status = false; if (image != null) { rekursosEntities db = new rekursosEntities(); files insert = new files(); image = image.Replace("data:image/png;base64,", ""); byte[] data = Convert.FromBase64String(image); MD5 md5 = MD5.Create(); insert.filename = GetMd5Hash(md5, GetUniqID()) + ".png"; insert.name = "camera_" + insert.filename; var destinationImgPath = Path.Combine(HttpContext.Current.Server.MapPath("~/Uploads"), insert.filename); System.IO.File.WriteAllBytes(destinationImgPath, data); if (System.IO.File.Exists(destinationImgPath)) { DateTime now = DateTime.Now; var info = new System.IO.FileInfo(destinationImgPath); // var dto = new DateTimeOffset(DateTime.Now); insert.filesize = (int)info.Length; insert.mimetype = "image/png"; insert.folder_id = folder_id; insert.extension = ".png"; insert.type = "i"; insert.date_added = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; System.Drawing.Image myImage = System.Drawing.Image.FromFile(destinationImgPath); insert.width = myImage.Width; insert.height = myImage.Height; string id = GetMd5Hash(md5, insert.filename); insert.id = id.Substring(0, 15); db.files.Add(insert); db.SaveChanges(); result.status = true; result.message = "El archivo se ha subido correctamente"; result.data = insert; } } return(result); }
public static void SetLastLogin(int id) { rekursosEntities db = new rekursosEntities(); users user = db.users.Find(id); user.last_login = DateTime.Now; db.Entry(user).State = EntityState.Modified; db.SaveChanges(); }
public static int GetSequence(string table = "") { rekursosEntities db = new rekursosEntities(); try { var result = db.Database.SqlQuery <int>("SELECT NEXT VALUE FOR " + table + "_sequence"); return(result.SingleOrDefault()); } catch (System.Data.SqlClient.SqlException ex) { SetSequence(table); return(1); } }
public static void Add(string to, string from, string subject, string body, int priority = 1) { rekursosEntities db = new rekursosEntities(); notifications notification = new notifications(); notification.from = from; notification.to = to; notification.subject = subject; notification.body = body; notification.created_on = DateTime.Now; notification.priority = priority; db.notifications.Add(notification); db.SaveChanges(); }
public static users GetUser(string username, bool group = true) { rekursosEntities db = new rekursosEntities(); if (username != null) { users user = db.users.Where(w => w.username == username).FirstOrDefault(); if (group) { user.groups = db.groups.Find(user.group_id); } return(user); } return(null); }
public static string Get(string slug) { rekursosEntities db = new rekursosEntities(); var settings = db.settings.Where(w => w.slug == slug).SingleOrDefault(); if (settings != null) { string value = settings.@default; if (settings.value != null) { value = settings.value; } return(value); } return(""); }
public static bool Login(string username = "", string password = "") { rekursosEntities db = new rekursosEntities(); var result_user = db.users.Where(w => w.username == username || w.email == username) .Join(db.groups, u => u.group_id, g => g.id, (u, g) => new { u, g }).SingleOrDefault(); if (result_user != null) { if (result_user.u.password == Sha1.SHA1HashStringForUTF8String(password)) { SetLastLogin(result_user.u.id); return(true); } return(false); } return(false); }
public static Dictionary <string, string[]> GetGroup(int group_id) { rekursosEntities db = new rekursosEntities(); Dictionary <string, string[]> permissions = new Dictionary <string, string[]>(); var result = db.permissions.Where(w => w.group_id == group_id) .ToList(); if (result != null) { foreach (var permission in result) { var roles = permission.roles == null ? new string[] { } : JsonConvert.DeserializeObject <string[]>(permission.roles); permissions.Add(permission.module, roles); } } return(permissions); }
public static File get_file(string id) { File file = new File(); rekursosEntities db = new rekursosEntities(); var file_result = db.files.Where(w => w.id == id).SingleOrDefault(); if (file_result == null) { file.status = false; file.message = "El archivo no existe"; } else { file.status = true; file.data = file_result; } return(file); }
public static File upload(HttpPostedFileBase file, int folder_id) { rekursosEntities db = new rekursosEntities(); files insert = new files(); File result = new File(); result.status = false; try { var file_name = Path.GetFileName(file.FileName); var extension = Path.GetExtension(file.FileName); //Extraemos mime,type y extension _check_ext(file); MD5 md5 = MD5.Create(); DateTime now = DateTime.Now; // var dto = new DateTimeOffset(DateTime.Now); insert.filename = GetMd5Hash(md5, GetUniqID()) + extension; insert.name = file_name; insert.filesize = file.ContentLength; insert.mimetype = file.ContentType; insert.folder_id = folder_id; insert.extension = _ext; insert.type = _type; insert.date_added = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds; insert.user_id = null; insert.width = null; insert.height = null; if (System.Web.HttpContext.Current.User != null) { /*var user = Cobacam.Security.Ion_Auth.GetUser(System.Web.HttpContext.Current.User.Identity.Name); * * if (user != null) * { * file_m.user_id = user.id; * }*/ } string id = GetMd5Hash(md5, insert.filename); insert.id = id.Substring(0, 15); if (IsImage(file.ContentType)) { System.Drawing.Image myImage = System.Drawing.Image.FromStream(file.InputStream); insert.width = myImage.Width; insert.height = myImage.Height; } db.files.Add(insert); db.SaveChanges(); var path = Path.Combine(HttpContext.Current.Server.MapPath("~/Uploads"), insert.filename); file.SaveAs(path); result.status = true; result.message = "El archivo se ha subido correctamente"; result.data = insert; } catch (Exception ex) { result.status = false; result.message = ex.Message.ToString(); } return(result); }
public static void RestartSequence(string table = "", string restart = "1") { //alter SEQUENCE empleados_sequence restart with 1 rekursosEntities db = new rekursosEntities(); var result = db.Database.ExecuteSqlCommand("alter SEQUENCE " + table + "_sequence restart with " + restart); }
public static void SetSequence(string table = "") { rekursosEntities db = new rekursosEntities(); var result = db.Database.ExecuteSqlCommand("create SEQUENCE " + table + "_sequence AS int start with 2 increment by 1 minvalue 0 no maxvalue"); }
// // GET: /Admin/ public AdminController(string section = "", string icon = "") { rekursosEntities db = new rekursosEntities(); System.Web.HttpContext HttpContext = System.Web.HttpContext.Current; var type = this.GetType(); ViewBag.Type = type; Dictionary <string, List <Menu> > MenuItems = new Dictionary <string, List <Menu> >(); if (HttpContext.User.Identity.IsAuthenticated) { var User = Ion_Auth.GetUser(HttpContext.User.Identity.Name); ViewBag.UserCurrent = User; Dictionary <string, string[]> ListPermissions = PermissionModel.GetGroup((int)User.group_id); foreach (var module in db.modules.Where(w => w.menu != "0" && w.is_backend == 1).Where(w => w.installed == 1).ToList()) { if (ListPermissions.ContainsKey(module.slug) || User.groups.name == "admin") { if (MenuItems.ContainsKey(module.menu) == false) { MenuItems.Add(module.menu, new List <Menu>()); } MenuItems[module.menu].Add(new Menu { slug = module.slug, name = module.name }); } } } Module ModuleDetails = new Module() { icon = "", description = "", name = "" }; if (section != "") { var module = db.modules.Where(w => w.slug == section).SingleOrDefault(); if (module != null) { //ModuleDetails.ShortCuts = new List<ShortCuts>(); switch (module.slug) { /*case "viaticos": * ModuleDetails.icon = "ion-card"; * break; * case "comisiones": * ModuleDetails.icon = "ion-android-list"; * break; * * case "empleados": * ModuleDetails.icon = "ion-ios-people"; * break; * case "settings": * ModuleDetails.icon = "ion-gear-b"; * break; * case "liquidaciones": * ModuleDetails.icon = "ion-cash"; * break;*/ default: //ModuleDetails.icon = icon; break; } ModuleDetails.name = module.name; ModuleDetails.description = module.description; ///ModuleDetails.ShortCuts.Add(new ShortCuts { Name = "Agregar localidad", Class = "btn btn-success", Uri = "localidades/Create" }); } else { ModuleDetails.icon = "ion-help"; ModuleDetails.name = "NA"; ModuleDetails.description = "Sin descripción del módulo."; } } ViewBag.MenuItems = MenuItems; ViewBag.ModuleDetails = ModuleDetails; }