private static string GetElementKey(Label label) { var key = label.UUID; if (string.IsNullOrEmpty(key)) key = GetLabelUUID(label.Category, label.Name); return key; }
public virtual ActionResult Delete(string[] docs, string[] folders) { var data = new JsonResultData(ModelState); data.RunWithTry((resultData) => { var category = ControllerContext.RequestContext.GetRequestValue("Category"); if (docs != null) { foreach (var uuid in docs) { var label = new Label() { Site = Site, UUID = uuid }; Remove(label); } } if (folders != null) { foreach (var c in folders) { Manager.RemoveCategory(Site, c); } } resultData.ReloadPage = true; }); return Json(data); }
public void Add(Label item, bool @override) { var categoryFile = GetLabelFile(item.Site, item.Category); var storage = GetStorage(categoryFile); storage.Add(item, @override); }
public void Add(Site site, Label label) { if (string.IsNullOrEmpty(label.UUID)) { label.UUID = Kooboo.UniqueIdGenerator.GetInstance().GetBase32UniqueId(10); } this._labelProvider.Add(label); }
/// <summary> /// compatibility reason. /// </summary> /// <param name="label">The label.</param> /// <returns></returns> private static Label ResetLabelUUID(Label label) { if (label != null) { //if (string.IsNullOrEmpty(label.UUID)) label.UUID = GetLabelUUID(label.Category, label.Name); } return label; }
private void InsertOrUpdateLabel(Label @new, Label old) { var entity = _dbContext.Labels .Where(it => it.SiteName == @new.Site.FullName && it.Name == @new.Name && it.Category == (@new.Category ?? "")) .FirstOrDefault(); if (entity != null) { entity.Value = @new.Value; } else { if (!string.IsNullOrEmpty(@new.Category)) { AddCategory(@new.Site, @new.Category); } entity = new LabelEntity(@new.Site.FullName, @new.Name, @new.Value, @new.Category); entity.UUID = @new.UUID; entity.UtcCreationDate = @new.UtcCreationDate; _dbContext.Labels.Add(entity); } entity.LastestEditor = @new.LastestEditor; entity.UtcLastestModificationDate = @new.UtcLastestModificationDate; _dbContext.SaveChanges(); }
private IQueryable<LabelEntity> GetLabelEntity(DbSet<LabelEntity> labels, Label label) { if (!string.IsNullOrEmpty(label.Name)) { return labels.Where(it => it.SiteName == label.Site.FullName && it.Name == label.Name && it.Category == (label.Category ?? "")); } else { return labels.Where(it => it.SiteName == label.Site.FullName && it.UUID == label.UUID); } }
public void Update(Label @new, Label old) { InsertOrUpdateLabel(@new, old); }
public void Remove(Label item) { var entity = GetLabelEntity(_dbContext.Labels, item).FirstOrDefault(); if (entity != null) { _dbContext.Labels.Remove(entity); _dbContext.SaveChanges(); } }
private void InsertOrUpdateLabel(Label @new, Label old) { if (!string.IsNullOrEmpty(@new.Category)) { AddCategory(@new.Site, @new.Category); } @new = ResetLabelUUID(@new); var key = GetElementKey(@new); DataHelper.StoreObject(@new.Site, @new, key, ModelExtensions.LabelDataType); }
public void Export(string category, string[] docs, string[] folders) { var fileName = GetZipFileName(); Response.AttachmentHeader(fileName); IEnumerable<Label> labels = new Label[0]; if (docs != null) { labels = docs.Select(it => new Label(Site, it) { Category = category }); } Manager.Export(Site, labels, folders, Response.OutputStream); }
public void Remove(Label item) { var key = GetElementKey(item); DataHelper.DeleteItemByKey(item.Site, ModelExtensions.GetBucketDocumentKey(ModelExtensions.LabelDataType, key)); }
protected virtual void Remove(Label model) { Manager.Remove(Site, model); }
public void Add(Label item) { InsertOrUpdateLabel(item, item); }
public void Add(Label item) { Add(item, true); }
public void Update(Label @new, Label old) { var categoryFile = GetLabelFile(@new.Site, @new.Category); var storage = GetStorage(categoryFile); storage.Update(@new, old); }
public void Remove(Label item) { var categoryFile = GetLabelFile(item.Site, item.Category); var storage = GetStorage(categoryFile); storage.Remove(item); }
private static string LabelValue(string defaultValue, string key, string category, Site site) { if (string.IsNullOrEmpty(key) && string.IsNullOrEmpty(category)) { return defaultValue; } string editor = null; if (HttpContext.Current != null) { editor = HttpContext.Current.User.Identity.Name; } var labelManager = ServiceFactory.LabelManager; var label = labelManager.Get(site, category, key); string value = defaultValue; if (label == null) { label = new Label(site, category, key, defaultValue) { UtcCreationDate = DateTime.UtcNow, LastestEditor = editor }; labelManager.Add(site, label); } else { value = label.Value; } return value; }
public Label Get(Label dummy) { var labelEntity = GetLabelEntity(_dbContext.Labels, dummy) .FirstOrDefault(); if (labelEntity != null) { return labelEntity.ToLabel(dummy); } return null; }
public Label Get(Label dummy) { var categoryFile = GetLabelFile(dummy.Site, dummy.Category); var storage = GetStorage(categoryFile); return storage.Get(dummy); }
protected virtual void Update(Label model) { var newModel = Manager.Get(Site, model.Category, model.Name); newModel.UtcLastestModificationDate = DateTime.UtcNow; newModel.LastestEditor = User.Identity.Name; newModel.Value = model.Value; Manager.Update(Site, newModel, newModel); }
public virtual void Remove(Site site, Label label) { this._labelProvider.Remove(label); }
public virtual ActionResult Edit(Label model, string @return) { var data = new JsonResultData(ModelState); data.RunWithTry((resultData) => { Update(model); resultData.RedirectUrl = @return; }); return Json(data); }
public virtual void Update(Site site, Label @new, Label old) { if (@new.Site == null) { @new.Site = site; } //renew the UUID when UUID is null if (string.IsNullOrEmpty(@new.UUID)) { @new.UUID = Kooboo.UniqueIdGenerator.GetInstance().GetBase32UniqueId(10); } this._labelProvider.Update(@new, old); }
public Label ToLabel(Label dummy) { var label = new Label() { UUID = this.UUID, Name = this.Name, Category = this.Category, Value = this.Value, UtcCreationDate = this.UtcCreationDate, UtcLastestModificationDate = this.UtcLastestModificationDate, LastestEditor = this.LastestEditor }; ((IPersistable)label).Init(dummy); return label; }
public Label Get(Label dummy) { var key = GetElementKey(dummy); key = ModelExtensions.GetBucketDocumentKey(ModelExtensions.LabelDataType, key); return ResetLabelUUID(DataHelper.QueryByKey<Label>(dummy.Site, key, createModel)); }