/// <summary> /// Get a Training Load related custom parameter /// </summary> /// <param name="field"></param> /// <returns></returns> public static ICustomDataFieldDefinition GetCustomProperty(CSCustomFields field) { // All data types so far are numbers ICustomDataFieldDefinition fieldDef = null; ICustomDataFieldDataType dataType = CustomDataFieldDefinitions.StandardDataType(CustomDataFieldDefinitions.StandardDataTypes.NumberDataTypeId); ICustomDataFieldObjectType objType; Guid id; string name; string options = ""; switch (field) { case CSCustomFields.CourseScoreCycling: objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customCSCycling; name = Resources.Strings.Label_CourseScore + ": " + Resources.Strings.Label_Cycling; fieldDef = GetCustomProperty(dataType, objType, id, name); options = "2"; break; case CSCustomFields.CourseScoreRunning: objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customCSRunning; name = Resources.Strings.Label_CourseScore + ": " + Resources.Strings.Label_Running; fieldDef = GetCustomProperty(dataType, objType, id, name); break; case CSCustomFields.ScoreDistanceCycling: objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customCSCyclingDistance; name = Resources.Strings.Label_CourseScore + "/" + Length.LabelAbbr(PluginMain.GetApplication().SystemPreferences.DistanceUnits) + ": " + Resources.Strings.Label_Cycling; fieldDef = GetCustomProperty(dataType, objType, id, name); break; case CSCustomFields.ScoreDistanceRunning: objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customCSRunningDistance; name = Resources.Strings.Label_CourseScore + "/" + Length.LabelAbbr(PluginMain.GetApplication().SystemPreferences.DistanceUnits) + ": " + Resources.Strings.Label_Running; fieldDef = GetCustomProperty(dataType, objType, id, name); break; } return(fieldDef); }
/// <summary> /// Get a Training Load related custom parameter /// </summary> /// <param name="field"></param> /// <returns></returns> public static ICustomDataFieldDefinition GetCustomProperty(TLCustomFields field) { // All data types so far are numbers ICustomDataFieldDefinition fieldDef = null; ICustomDataFieldDataType dataType = CustomDataFieldDefinitions.StandardDataType(CustomDataFieldDefinitions.StandardDataTypes.NumberDataTypeId); ICustomDataFieldObjectType objType; Guid id; string name; switch (field) { case TLCustomFields.Trimp: if (customTrimp != null) { return(customTrimp); } objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customTrimp; name = "Trimp"; fieldDef = GetCustomProperty(dataType, objType, id, name); customTrimp = fieldDef; break; case TLCustomFields.TSS: if (customTSS != null) { return(customTSS); } objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customTSS; name = "TSS"; fieldDef = GetCustomProperty(dataType, objType, id, name); customTSS = fieldDef; break; case TLCustomFields.NormPwr: if (customNP != null) { return(customNP); } objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IActivity)); id = GUIDs.customNP; name = "NormPwr"; fieldDef = GetCustomProperty(dataType, objType, id, name); customNP = fieldDef; break; case TLCustomFields.FTPcycle: if (customFTPcycle != null) { return(customFTPcycle); } objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IAthleteInfoEntry)); id = GUIDs.customFTPcycle; name = "FTPcycle"; fieldDef = GetCustomProperty(dataType, objType, id, name); customFTPcycle = fieldDef; break; case TLCustomFields.FTPrun: if (customFTPrun != null) { return(customFTPrun); } objType = CustomDataFieldDefinitions.StandardObjectType(typeof(IAthleteInfoEntry)); id = GUIDs.customFTPrun; name = "FTPrun"; fieldDef = GetCustomProperty(dataType, objType, id, name); customFTPrun = fieldDef; break; } return(fieldDef); }