From dc062523251d13af3875b94b7a031d5e7a1072da Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Wed, 29 Apr 2020 17:14:13 +0000 Subject: [PATCH] --- source/Plugins/AyaNova.Plugin.V8/V8.cs | 32 +++++++++++++++++++++++- source/Plugins/AyaNova.Plugin.V8/util.cs | 1 + 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/source/Plugins/AyaNova.Plugin.V8/V8.cs b/source/Plugins/AyaNova.Plugin.V8/V8.cs index 575c509..1025511 100644 --- a/source/Plugins/AyaNova.Plugin.V8/V8.cs +++ b/source/Plugins/AyaNova.Plugin.V8/V8.cs @@ -360,7 +360,37 @@ namespace AyaNova.PlugIn.V8 UserPickList pl = UserPickList.GetList(false); - progress.Append("Dumping " + pl.Count.ToString() + " Users"); + progress.Append("Exporting " + pl.Count.ToString() + " Users"); + + #region Export administrator wiki and attached files if present + User admin = User.GetItem(User.AdministratorID); + + //wiki page + var adminWiki = GetWikiContent(new TypeAndID(RootObjectTypes.User, admin.ID)); + string adminCustomFields = null; + //Custom fields? + if (ShouldExportCustom) + { + adminCustomFields = CustomFieldData(admin, DateCustomFields); + } + + //check if we need to do anything with the manager account + if (adminWiki != null || adminCustomFields != null) + { + //yes, so fetch it and modify it and put it back again + var a = await util.GetAsync("User/1"); + dynamic d = a.ObjectResponse["data"]; + d.wiki = adminWiki; + d.customFields = CustomFieldData(admin, DateCustomFields); + await util.PutAsync("User/1", d.ToString()); + } + + //Attachments + if (adminWiki != null) + await ExportAttachments(new TypeAndID(RootObjectTypes.User, User.AdministratorID)); + #endregion admin export + + foreach (UserPickList.UserPickListInfo i in pl) { List tags = new List(); diff --git a/source/Plugins/AyaNova.Plugin.V8/util.cs b/source/Plugins/AyaNova.Plugin.V8/util.cs index d03ede1..48703c8 100644 --- a/source/Plugins/AyaNova.Plugin.V8/util.cs +++ b/source/Plugins/AyaNova.Plugin.V8/util.cs @@ -141,6 +141,7 @@ namespace AyaNova.PlugIn.V8 return new ApiResponse() { HttpResponse = response, ObjectResponse = Parse(responseAsString) }; } + // public async static Task PostAsync(string route, string postJson = null) {