static public AssessmentResults LoadSavedAssessmentResults( Person person )
{
AssessmentResults savedScores = new AssessmentResults();
person.LoadAttributes();
var discAttributes = person.Attributes.Values.Where( a => a.Categories.Any( c => c.Guid == new Guid( "0B187C81-2106-4875-82B6-FBF1277AE23B" ) ) ).Select( a => a.Key );
foreach ( string attrib in discAttributes )
{
switch ( attrib )
{
case AttributeKeys.AdaptiveD:
savedScores.AdaptiveBehaviorD = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.AdaptiveI:
savedScores.AdaptiveBehaviorI = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.AdaptiveS:
savedScores.AdaptiveBehaviorS = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.AdaptiveC:
savedScores.AdaptiveBehaviorC = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.NaturalD:
savedScores.NaturalBehaviorD = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.NaturalI:
savedScores.NaturalBehaviorI = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.NaturalS:
savedScores.NaturalBehaviorS = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.NaturalC:
savedScores.NaturalBehaviorC = AttributeValueLookup( person, attrib );
break;
case AttributeKeys.PersonalityType:
savedScores.PersonalityType = person.AttributeValues[attrib].Value;
break;
case AttributeKeys.LastSaveDate:
DateTime lastAssessmentDate = DateTime.MinValue;
bool bCatch = DateTime.TryParse( person.AttributeValues[attrib].Value, out lastAssessmentDate );
savedScores.LastSaveDate = lastAssessmentDate;
break;
}
}
return savedScores;
}