private void ExtendedField(int userID, ExtendedFieldCollection fields, ExtendedFieldListTemplate temlate) { User user = null; foreach (ExtendedField field in fields) { if (user == null && userID != 0) { user = UserBO.Instance.GetUser(userID); } if (user == null) { temlate(field, UserBO.Instance.GetExtendedFieldType(field.FieldTypeName), null, 0, null); continue; } UserExtendedValue extendedValue = user.ExtendedFields.GetValue(field.Key); int privacyType = 0; string userValue; if (extendedValue != null) { privacyType = (int)extendedValue.PrivacyType; userValue = extendedValue.Value; } else { privacyType = (int)field.DisplayType; userValue = string.Empty; } temlate(field, UserBO.Instance.GetExtendedFieldType(field.FieldTypeName), extendedValue, privacyType, userValue); } }
public bool UserNeedCompleteInfo(User user) { if (Version != string.Empty && user.ExtendedFieldVersion != null && Version != user.ExtendedFieldVersion) { ExtendedField[] fields = FieldsWithPassport.ToArray(); foreach (ExtendedField field in fields) { if (field.IsRequired) { UserExtendedValue extendedValue = user.ExtendedFields.GetValue(field.Key); if (extendedValue == null || string.IsNullOrEmpty(extendedValue.Value)) { return(true); } } } UserBO.Instance.UpdateExtendedFieldVersion(user.UserID, Version); return(false); } return(false); }
public static UserExtendedValueProxy GetUserExtendedValueProxy(UserExtendedValue userExtendedValue) { if (userExtendedValue == null) { return(null); } UserExtendedValueProxy proxy = new UserExtendedValueProxy(); proxy.ExtendedFieldID = userExtendedValue.ExtendedFieldID; proxy.PrivacyType = (int)userExtendedValue.PrivacyType; proxy.UserID = userExtendedValue.UserID; proxy.Value = userExtendedValue.Value; return(proxy); }
public List <string> GetNeedCompleteInfoNames(User user) { List <string> result = new List <string>(); if (Version != string.Empty && user.ExtendedFieldVersion != null && Version != user.ExtendedFieldVersion) { ExtendedField[] fields = FieldsWithPassport.ToArray(); foreach (ExtendedField field in fields) { if (field.IsRequired) { UserExtendedValue extendedValue = user.ExtendedFields.GetValue(field.Key); if (extendedValue == null || string.IsNullOrEmpty(extendedValue.Value)) { result.Add(field.Name); } } } } return(result); }
public static UserExtendedValueProxy GetUserExtendedValueProxy(UserExtendedValue userExtendedValue) { if (userExtendedValue == null) return null; UserExtendedValueProxy proxy = new UserExtendedValueProxy(); proxy.ExtendedFieldID = userExtendedValue.ExtendedFieldID; proxy.PrivacyType = (int)userExtendedValue.PrivacyType; proxy.UserID = userExtendedValue.UserID; proxy.Value = userExtendedValue.Value; return proxy; }
protected void UpdateUserProfile() { MessageDisplay msgDisplay; string signature; short birthYear; short birthMonth, birthday; int genderValue; Gender gender; UserExtendedValueCollection extendedFileds; float timeZone; genderValue = _Request.Get <int>("gender", Method.Post, 0); birthYear = _Request.Get <short>("birthYear", Method.Post, 0); birthMonth = _Request.Get <short>("birthMonth", Method.Post, 0); birthday = _Request.Get <short>("birthday", Method.Post, 0); gender = (Gender)genderValue; timeZone = _Request.Get <float>("timezone", Method.Post, 8.0f); signature = _Request.Get("signature", Method.Post, string.Empty, false); List <string> fieldNames = new List <string>(); ExtendedField[] fields = AllSettings.Current.ExtendedFieldSettings.FieldsWithPassport.ToArray(); foreach (ExtendedField field in fields) { fieldNames.Add(field.Key); } msgDisplay = CreateMessageDisplay(fieldNames.ToArray()); extendedFileds = UserBO.Instance.LoadExtendedFieldValues(); CatchError <ErrorInfo>(delegate(ErrorInfo error) { msgDisplay.AddError(error); }); ExtendedFieldCollection settingFields = AllSettings.Current.ExtendedFieldSettings.FieldsWithPassport; bool success = false; if (!msgDisplay.HasAnyError()) { foreach (ExtendedField field in settingFields) { if (field.IsRequired) { UserExtendedValue temp = extendedFileds.GetValue(field.Key); if (temp == null || string.IsNullOrEmpty(temp.Value)) { msgDisplay.AddError(field.Key, "必须填写此项"); break; } } } if (!msgDisplay.HasAnyError()) { success = UserBO.Instance.UpdateUserProfile( My , gender , birthYear , birthMonth , birthday , signature , timeZone , extendedFileds); if (success == false) { CatchError <ErrorInfo>(delegate(ErrorInfo error) { msgDisplay.AddError(error); }); } else { BbsRouter.JumpToCurrentUrl("success=1"); } } } }