public List <RawEntry> RawEntries() { lock (editLock) { if (group == null) { group = Group.FindGroup(ID); } if (group != null && !string.IsNullOrEmpty(QuantApp.Kernel.User.ContextUser.ID) && group.List(QuantApp.Kernel.User.CurrentUser, typeof(QuantApp.Kernel.User), false).Count > 0) { var permission = group.PermissionContext(); if (permission == AccessType.Denied) { return(new List <RawEntry>()); } } var entries = singularity.ToList(); var res = new List <RawEntry>(); foreach (var entry in entries) { var rawentry = new RawEntry(); rawentry.ID = this.ID; rawentry.EntryID = entry.Key; rawentry.Type = singularity_type.ContainsKey(entry.Key) ? singularity_type[entry.Key] : entry.Value.GetType().ToString(); rawentry.Assembly = singularity_assembly.ContainsKey(entry.Key) ? singularity_assembly[entry.Key] : entry.Value.GetType().Assembly.GetName().Name; if (rawentry.Type.ToLower() == "system.string" || rawentry.Type.ToLower() == "newtonsoft.json.linq.jobject" || (entry.Value is string)) { string filtered_string = entry.Value.ToString().Replace((char)27, '"').Replace((char)26, '\''); if (filtered_string.StartsWith("\"") && filtered_string.EndsWith("\"")) { filtered_string = filtered_string.Substring(1, filtered_string.Length - 2).Replace("\\\"", "\""); } rawentry.Entry = filtered_string; } else { rawentry.Entry = Newtonsoft.Json.JsonConvert.SerializeObject(entry.Value); } res.Add(rawentry); } return(res); } }
public List <RawEntry> RawEntries() { lock (editLock) { var entries = singularity.ToList(); var res = new List <RawEntry>(); foreach (var entry in entries) { var rawentry = new RawEntry(); rawentry.ID = this.ID; rawentry.EntryID = entry.Key; rawentry.Type = singularity_type.ContainsKey(entry.Key) ? singularity_type[entry.Key] : entry.Value.GetType().ToString(); rawentry.Assembly = singularity_assembly.ContainsKey(entry.Key) ? singularity_assembly[entry.Key] : entry.Value.GetType().Assembly.GetName().Name; if (rawentry.Type.ToLower() == "system.string" || rawentry.Type.ToLower() == "newtonsoft.json.linq.jobject" || (entry.Value is string)) { string filtered_string = entry.Value.ToString().Replace((char)27, '"').Replace((char)26, '\''); if (filtered_string.StartsWith("\"") && filtered_string.EndsWith("\"")) { filtered_string = filtered_string.Substring(1, filtered_string.Length - 2).Replace("\\\"", "\""); } rawentry.Entry = filtered_string; } else { rawentry.Entry = Newtonsoft.Json.JsonConvert.SerializeObject(entry.Value); } res.Add(rawentry); } return(res); } }