public static string Update(SiteSettings ss, int groupId) { var groupModel = new GroupModel(ss, groupId, setByForm: true); var invalid = GroupValidators.OnUpdating(ss, groupModel); switch (invalid) { case Error.Types.None: break; default: return(invalid.MessageJson()); } if (groupModel.AccessStatus != Databases.AccessStatuses.Selected) { return(Messages.ResponseDeleteConflicts().ToJson()); } var error = groupModel.Update(ss); if (error.Has()) { return(error == Error.Types.UpdateConflicts ? Messages.ResponseUpdateConflicts(groupModel.Updator.Name).ToJson() : new ResponseCollection().Message(error.Message()).ToJson()); } else { var res = new GroupsResponseCollection(groupModel); return(ResponseByUpdate(res, ss, groupModel) .PrependComment( ss, ss.GetColumn("Comments"), groupModel.Comments, groupModel.VerType) .ToJson()); } }
public static string Delete(SiteSettings ss, int groupId) { var groupModel = new GroupModel(ss, groupId); var invalid = GroupValidators.OnDeleting(ss, groupModel); switch (invalid) { case Error.Types.None: break; default: return(invalid.MessageJson()); } var error = groupModel.Delete(ss); if (error.Has()) { return(error.MessageJson()); } else { Sessions.Set("Message", Messages.Deleted(groupModel.Title.Value).Html); var res = new GroupsResponseCollection(groupModel); res .SetMemory("formChanged", false) .Href(Locations.Index("Groups")); return(res.ToJson()); } }
private static ResponseCollection ResponseByUpdate( GroupsResponseCollection res, SiteSettings ss, GroupModel groupModel) { return(res .Ver() .Timestamp() .Val("#VerUp", false) .Disabled("#VerUp", false) .Html("#HeaderTitle", groupModel.Title.Value) .Html("#RecordInfo", new HtmlBuilder().RecordInfo( baseModel: groupModel, tableName: "Groups")) .SetMemory("formChanged", false) .Message(Messages.Updated(groupModel.Title.Value)) .Comment(ss, groupModel.Comments, groupModel.DeleteCommentId) .ClearFormData()); }
public static string Restore(SiteSettings ss, int groupId) { var groupModel = new GroupModel(); var invalid = GroupValidators.OnRestoring(); switch (invalid) { case Error.Types.None: break; default: return(invalid.MessageJson()); } var error = groupModel.Restore(ss, groupId); if (error.Has()) { return(error.MessageJson()); } else { var res = new GroupsResponseCollection(groupModel); return(res.ToJson()); } }