/// <summary> /// Map Enpass icon (from item) to HandySafe icon (in card) /// </summary> private static int MapIcon(EnpassModel.Item enpassItem) { int hsIcon = 5; // default if (enpassItem?.Icon?.Image?.File != null) { switch (enpassItem.Icon.Image.File) { case "misc/bank": case "misc/finance": hsIcon = 1; // money break; case "misc/user": //hsIcon = 6; // person hsIcon = 8; // identity card break; case "misc/secure_note": hsIcon = 17; // note break; case "misc/software_license": case "misc/driving_license_1": case "misc/driving_license_2": hsIcon = 21; // licence card break; case "misc/login": hsIcon = 19; // Key break; case "misc/passport": hsIcon = 25; // globe //hsIcon = 31; // Globe with Pin break; case "cc/others": //hsIcon = 32; // EC card hsIcon = 33; // VISA break; case "misc/briefcase": //hsIcon = 10; //folder hsIcon = 5; // lock break; } } return(hsIcon); }
/// <summary> /// Convert Enpass Item to HandySafe Card /// </summary> private static HandySafeModel.Card ConvertItemToCard(EnpassModel.Item enpassItem) { List <HandySafeModel.Field> hsFields = new List <HandySafeModel.Field>(); if (enpassItem.Fields != null) { foreach (EnpassModel.Field enpassField in enpassItem.Fields) { if (String.IsNullOrEmpty(enpassField.Value)) { continue; } HandySafeModel.Field hsField = new HandySafeModel.Field() { Name = enpassField.Label, Value = enpassField.Value }; int?fieldType = MapFieldType(enpassField); if (fieldType.HasValue) { hsField.Type = fieldType.ToString(); } hsFields.Add(hsField); } } int hsIcon = MapIcon(enpassItem); HandySafeModel.Card hsCard = new HandySafeModel.Card() { Name = enpassItem.Title, Icon = hsIcon.ToString(), Fields = hsFields }; // Add Note in enpassItem do hsCard and replace newline if (!String.IsNullOrEmpty(enpassItem.Note)) { hsCard.Note = enpassItem.Note;//.Replace("|", System.Environment.NewLine); hsCard.Note = enpassItem.Note.Replace(System.Environment.NewLine, " | "); } return(hsCard); }