/// <summary> /// Deletes all entries for a given DirectoryClassification /// </summary> /// <param name="directoryClassification"></param> /// <returns></returns> public bool DeleteAll(DirectoryClassification directory) { foreach (var dirField in repository.GetAll().Where(df => df.DirectoryClassificationId == directory.Id)) { Delete(dirField); } return(true); }
/// <summary> /// Saves an Array of allowed fieldtypes for a given DirectoryClassification /// </summary> /// <param name="fieldTypes">The allowed field types</param> /// <param name="notChosenFieldTypes">The not allowed field types</param> /// <param name="directoryClassification">The directory classification for which the field types are meant for</param> /// <returns></returns> public bool SaveFieldTypes(List <FieldType> fieldTypes, List <FieldType> notChosenFieldTypes, DirectoryClassification dirClassification) { var existingTypes = GetAll(); foreach (var type in notChosenFieldTypes) { var x = existingTypes.FirstOrDefault(ex => ex.DirectoryClassificationId == dirClassification.Id && ex.FieldTypeId == type.Id); if (x != null) { Delete(x); } } foreach (var type in fieldTypes) { var x = existingTypes.FirstOrDefault(ex => ex.DirectoryClassificationId == dirClassification.Id && ex.FieldTypeId == type.Id); if (x == null) { var dirField = new DirectoryClassificationField() { DirectoryClassificationId = dirClassification.Id, FieldTypeId = type.Id }; Save(dirField); } } return(true); }
/// <summary> /// Save the Directory classification /// </summary> /// <param name="obj">Directory classification instance</param> /// <returns>True if successfull</returns> public bool Save(DirectoryClassification obj) { return(repository.Save(obj)); }
/// <summary> /// Delete Directory classification /// </summary> /// <param name="obj">Classification instance</param> /// <returns>True if successfull</returns> public bool Delete(DirectoryClassification obj) { return(repository.Delete(obj)); }