| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- using InABox.Core;
 
- using InABox.Database;
 
- namespace PRS.Shared;
 
- /// <summary>
 
- /// Updating Wpf and Timebench fields to use Platform.DesktopVersion and Platform.MobileVersion
 
- /// </summary>
 
- public class Update_7_14 : DatabaseUpdateScript
 
- {
 
-     public override VersionNumber Version => new (7, 14);
 
-     
 
-     public override bool Update()
 
-     {
 
-         Logger.Send(LogType.Information, "", "Converting User.Wpf, User.Timebench -> User.Platform.DesktopVersion, User.Platform.MobileVersion");
 
-         Logger.Send(LogType.Information, "", "Loading Wpf, Timebench properties");
 
-         var props = DbFactory.NewProvider(Logger.Main).Query<CustomProperty>(new Filter<CustomProperty>(x => x.Name).InList("Wpf", "TimeBench"))
 
-             .Rows.Select(x => x.ToObject<CustomProperty>()).ToArray();
 
-         DatabaseSchema.Load(props);
 
-         var columns = Columns.None<User>().Add(x => x.ID);
 
-         columns.Add("Wpf", "TimeBench");
 
-         var users = DbFactory.NewProvider(Logger.Main).Query<User>(
 
-             new Filter<User>().All(),
 
-             columns).ToObjects<User>().ToList();
 
-         foreach(var user in users)
 
-         {
 
-             if(user.UserProperties.Dictionary.TryGetValue("Wpf", out var wpf))
 
-             {
 
-                 user.Platform.DesktopVersion = wpf?.Value?.ToString() ?? "";
 
-             }
 
-             if (user.UserProperties.Dictionary.TryGetValue("TimeBench", out var timebench))
 
-             {
 
-                 user.Platform.MobileVersion = timebench?.Value?.ToString() ?? "";
 
-             }
 
-         }
 
-         DbFactory.NewProvider(Logger.Main).Save<User>(users);
 
-         Logger.Send(LogType.Information, "", "Finished updating user versions");
 
-         return true;
 
-     }
 
-     
 
- }
 
 
  |