protected void Page_Load(object sender, EventArgs e) { AvatarInfo ai = null; if (mValue > 0) { ai = AvatarInfoProvider.GetAvatarInfo(mValue); } if (ai == null) { DefaultAvatarTypeEnum defAvatar = DefaultAvatarTypeEnum.User; UserGenderEnum gender = (UserGenderEnum)ValidationHelper.GetInteger(Form.GetFieldValue("UserGender"), 0); switch (gender) { case UserGenderEnum.Female: defAvatar = DefaultAvatarTypeEnum.Female; break; case UserGenderEnum.Male: defAvatar = DefaultAvatarTypeEnum.Male; break; } ai = AvatarInfoProvider.GetDefaultAvatar(defAvatar); // Avatar not specified for current gender, get user default avatar if (ai == null) { ai = AvatarInfoProvider.GetDefaultAvatar(DefaultAvatarTypeEnum.User); } } if (ai != null) { imgAvatar.ImageUrl = ResolveUrl("~/CMSModules/Avatars/CMSPages/GetAvatar.aspx?avatarguid=" + ai.AvatarGUID + "&maxsidesize=" + MaxSideSize); imgAvatar.AlternateText = GetString("general.avatar"); return; } imgAvatar.Visible = false; }
protected void Page_Load(object sender, EventArgs e) { AvatarInfo ai = null; int userID = 0; UserInfo userInfo = null; // Load avatar type setting string aType = DataHelper.GetNotEmpty(SettingsKeyProvider.GetStringValue(CMSContext.CurrentSiteName + ".CMSAvatarType"), AvatarInfoProvider.AVATAR); if (aType == AvatarInfoProvider.USERCHOICE) { // Get userID from FormEngine if (this.Data != null) { userID = ValidationHelper.GetInteger(this.Data["UserID"], 0); } userInfo = UserInfoProvider.GetUserInfo(userID); // Set user avatar type if (userInfo != null) { aType = userInfo.UserSettings.UserAvatarType; } else { aType = AvatarInfoProvider.GRAVATAR; } } switch (aType) { case AvatarInfoProvider.AVATAR: if (mValue > 0) { ai = AvatarInfoProvider.GetAvatarInfo(mValue); } if (ai == null) { DefaultAvatarTypeEnum defAvatar = DefaultAvatarTypeEnum.User; UserGenderEnum gender = (UserGenderEnum)ValidationHelper.GetInteger(Form.GetFieldValue("UserGender"), 0); switch (gender) { case UserGenderEnum.Female: defAvatar = DefaultAvatarTypeEnum.Female; break; case UserGenderEnum.Male: defAvatar = DefaultAvatarTypeEnum.Male; break; } ai = AvatarInfoProvider.GetDefaultAvatar(defAvatar); // Avatar not specified for current gender, get user default avatar if (ai == null) { ai = AvatarInfoProvider.GetDefaultAvatar(DefaultAvatarTypeEnum.User); } } if (ai != null) { imgAvatar.ImageUrl = ResolveUrl("~/CMSModules/Avatars/CMSPages/GetAvatar.aspx?avatarguid=" + ai.AvatarGUID + "&maxsidesize=" + MaxSideSize); imgAvatar.AlternateText = GetString("general.avatar"); return; } imgAvatar.Visible = false; break; case AvatarInfoProvider.GRAVATAR: if (userInfo == null) { // Get userID from FormEngine if (this.Data != null) { userID = ValidationHelper.GetInteger(this.Data["UserID"], 0); } userInfo = UserInfoProvider.GetUserInfo(userID); } if (userInfo != null) { imgAvatar.ImageUrl = AvatarInfoProvider.CreateGravatarLink(userInfo.Email, userInfo.UserSettings.UserGender, ResolveUrl("~/CMSModules/Avatars/CMSPages/GetAvatar.aspx?maxsidesize=" + MaxSideSize + "&avatarguid="), MaxSideSize, CMSContext.CurrentSiteName); imgAvatar.AlternateText = GetString("general.avatar"); } else { imgAvatar.Visible = false; } break; } }
/// <summary> /// Sets image url, width and height. /// </summary> protected void SetImage() { Visible = false; // Only if display picture is allowed if (DisplayPicture) { string imageUrl = ResolveUrl("~/CMSModules/Avatars/CMSPages/GetAvatar.aspx?avatarguid="); // Is user id set? => Get user info if (mUserId > 0) { // Get user info UserInfo ui = UserInfoProvider.GetUserInfo(mUserId); if (ui != null) { AvatarID = ui.UserAvatarID; if (AvatarID <= 0) // Backward compatibility { if (ui.UserPicture != "") { // Get picture filename string filename = ui.UserPicture.Remove(ui.UserPicture.IndexOf('/')); string ext = Path.GetExtension(filename); imageUrl += filename.Substring(0, (filename.Length - ext.Length)); imageUrl += "&extension=" + ext; Visible = true; } else if (UseDefaultAvatar) { DefaultAvatarTypeEnum defAvatar = DefaultAvatarTypeEnum.User; // Get default avatar type according to user gender UserGenderEnum gender = (UserGenderEnum)ValidationHelper.GetInteger(ui.GetValue("UserGender"), 0); switch (gender) { case UserGenderEnum.Female: defAvatar = DefaultAvatarTypeEnum.Female; break; case UserGenderEnum.Male: defAvatar = DefaultAvatarTypeEnum.Male; break; } AvatarInfo ai = AvatarInfoProvider.GetDefaultAvatar(defAvatar); // Avatar not specified for current gender, get user default avatar if (ai == null) { ai = AvatarInfoProvider.GetDefaultAvatar(DefaultAvatarTypeEnum.User); } if (ai != null) { AvatarID = ai.AvatarID; } } } } } // Is group id set? => Get group info if (mGroupId > 0) { // Get group info trough module commands GeneralizedInfo gi = ModuleCommands.CommunityGetGroupInfo(mGroupId); if (gi != null) { AvatarID = ValidationHelper.GetInteger(gi.GetValue("GroupAvatarID"), 0); } if ((AvatarID <= 0) && UseDefaultAvatar) { AvatarInfo ai = AvatarInfoProvider.GetDefaultAvatar(DefaultAvatarTypeEnum.Group); if (ai != null) { AvatarID = ai.AvatarID; } } } if (AvatarID > 0) { AvatarInfo ai = AvatarInfoProvider.GetAvatarInfoWithoutBinary(AvatarID); if (ai != null) { imageUrl += ai.AvatarGUID.ToString(); Visible = true; } } // If item was found if (Visible) { if (KeepAspectRatio) { imageUrl += "&maxsidesize=" + (Width > Height ? Width : Height); } else { imageUrl += "&width=" + Width + "&height=" + Height; } imageUrl = URLHelper.EncodeQueryString(imageUrl); ltlImage.Text = "<img alt=\"" + GetString("general.avatar") + "\" src=\"" + imageUrl + "\" />"; // Render outer div with specific CSS class if (RenderOuterDiv) { ltlImage.Text = "<div class=\"" + OuterDivCSSClass + "\">" + ltlImage.Text + "</div>"; } } } }