Exemple #1
0
        public static ICollection <String> GetAllFields(this PwDatabase pwDatabase, bool includeCustomFieldsFromKPTemplates)
        {
            var fields = new Collection <String>();

            foreach (var pwEntry in pwDatabase.RootGroup.GetEntries(true))
            {
                foreach (var str in pwEntry.Strings.GetKeys())
                {
                    // Filter template header fields generated by KPEntryTemplates plugin.
                    // https://github.com/cristianst85/QuickConnectPlugin/issues/10
                    if (!fields.Contains(str) && !str.StartsWith("_etm_"))
                    {
                        fields.Add(str);
                    }
                }
            }
            if (includeCustomFieldsFromKPTemplates)
            {
                foreach (var customField in pwDatabase.GetCustomFieldsFromKPTemplates())
                {
                    if (!fields.Contains(customField))
                    {
                        fields.Add(customField);
                    }
                }
            }
            return(fields);
        }