Example #1
0
		protected void Page_Load( object sender, System.EventArgs e )
		{
			if ( User == null )
			{
				YafBuildLink.AccessDenied();
			}

			if ( !IsPostBack )
			{
				// get user data...
				MembershipUser user = UserMembershipHelper.GetMembershipUser( UserID );

				if ( user == null )
				{
					YafBuildLink.AccessDenied(/*No such user exists*/);
				}

				PageLinks.AddLink( PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.forum ) );
				PageLinks.AddLink( user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID ) );
				PageLinks.AddLink( GetText( "TITLE" ), "" );

				// get full user data...
				YafCombinedUserData userData = new YafCombinedUserData( user, UserID );

				Msg.NavigateUrl = string.Format( "aim:goim?screenname={0}&message=Hi.+Are+you+there?", userData.Profile.AIM );
				Buddy.NavigateUrl = string.Format( "aim:addbuddy?screenname={0}", userData.Profile.AIM );
			}
		}
		private void BindData()
		{
			Groups.DataSource = YAF.Classes.Data.DB.usergroup_list( PageContext.PageUserID );

			// Bind			
			DataBind();

			YafCombinedUserData userData = new YafCombinedUserData( PageContext.PageUserID );

			//TitleUserName.Text = HtmlEncode( userData.Membership.UserName );
			AccountEmail.Text = userData.Membership.Email;
			Name.Text = HtmlEncode( userData.Membership.UserName );
			Joined.Text = YafDateTime.FormatDateTime( userData.Joined );
			NumPosts.Text = String.Format( "{0:N0}", userData.NumPosts );

			if ( PageContext.BoardSettings.AvatarUpload && userData.HasAvatarImage )
			{
				AvatarImage.ImageUrl = String.Format( "{0}resource.ashx?u={1}", YafForumInfo.ForumRoot, PageContext.PageUserID );
			}
			else if ( !String.IsNullOrEmpty( userData.Avatar ) ) // Took out PageContext.BoardSettings.AvatarRemote
			{
				AvatarImage.ImageUrl = String.Format( "{3}resource.ashx?url={0}&width={1}&height={2}",
					Server.UrlEncode( userData.Avatar ),
					PageContext.BoardSettings.AvatarWidth,
					PageContext.BoardSettings.AvatarHeight,
					YafForumInfo.ForumRoot );
			}
			else
			{
				AvatarImage.Visible = false;
			}
		}
Example #3
0
		protected void Page_Load( object sender, EventArgs e )
		{
			if ( User == null )
			{
				YafBuildLink.AccessDenied();
			}

			if ( !IsPostBack )
			{
				// get user data...
				MembershipUser user = UserMembershipHelper.GetMembershipUser( UserID );

				if ( user == null )
				{
					YafBuildLink.AccessDenied(/*No such user exists*/);
				}

				PageLinks.AddLink( PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.forum ) );
				PageLinks.AddLink( user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID ) );
				PageLinks.AddLink( GetText( "TITLE" ), "" );

				// get full user data...
				YafCombinedUserData userData = new YafCombinedUserData( user, UserID );

				Msg.NavigateUrl = string.Format( "skype:{0}?call", userData.Profile.Skype );
				Msg.Attributes.Add( "onclick", "return skypeCheck();" );
				Img.Src = string.Format( "http://mystatus.skype.com/bigclassic/{0}", userData.Profile.Skype );
			}
		}
Example #4
0
		protected void Page_Load( object sender, System.EventArgs e )
		{
			if ( User == null )
				YafBuildLink.AccessDenied();

			if ( !IsPostBack )
			{
				Send.Text = GetText( "SEND" );
				From.Text = PageContext.User.UserName;
				Email.Text = PageContext.User.Email;

				// get user data...
				MembershipUser user = UserMembershipHelper.GetMembershipUser( UserID );

				if ( user == null )
				{
					YafBuildLink.AccessDenied(/*No such user exists*/);
				}

				PageLinks.AddLink( PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.forum ) );
				PageLinks.AddLink( user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID ) );
				PageLinks.AddLink( GetText( "TITLE" ), "" );

				// get full user data...
				YafCombinedUserData userData = new YafCombinedUserData( user, UserID );

				ViewState ["to"] = userData.Profile.ICQ;
				Status.Src = string.Format( "http://web.icq.com/whitepages/online?icq={0}&img=5", userData.Profile.ICQ );
			}
		}
Example #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (User == null)
            {
                YafBuildLink.AccessDenied();
            }

            if (!IsPostBack)
            {
                // get user data...
                MembershipUser user = UserMembershipHelper.GetMembershipUser(UserID);

                if (user == null)
                {
                    YafBuildLink.AccessDenied(/*No such user exists*/);
                }

                PageLinks.AddLink(PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.forum));
                PageLinks.AddLink(user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID));
                PageLinks.AddLink(GetText("TITLE"), "");

                // get full user data...
                YafCombinedUserData userData = new YafCombinedUserData(user, UserID);

                Msg.NavigateUrl = string.Format("skype:{0}?call", userData.Profile.Skype);
                Msg.Attributes.Add("onclick", "return skypeCheck();");
                Img.Src = string.Format("http://mystatus.skype.com/bigclassic/{0}", userData.Profile.Skype);
            }
        }
Example #6
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (User == null)
            {
                YafBuildLink.AccessDenied();
            }

            if (!IsPostBack)
            {
                Send.Text  = GetText("SEND");
                From.Text  = PageContext.User.UserName;
                Email.Text = PageContext.User.Email;

                // get user data...
                MembershipUser user = UserMembershipHelper.GetMembershipUser(UserID);

                if (user == null)
                {
                    YafBuildLink.AccessDenied(/*No such user exists*/);
                }

                PageLinks.AddLink(PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.forum));
                PageLinks.AddLink(user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID));
                PageLinks.AddLink(GetText("TITLE"), "");

                // get full user data...
                YafCombinedUserData userData = new YafCombinedUserData(user, UserID);

                ViewState ["to"] = userData.Profile.ICQ;
                Status.Src       = string.Format("http://web.icq.com/whitepages/online?icq={0}&img=5", userData.Profile.ICQ);
            }
        }
Example #7
0
		protected void Page_Load( object sender, System.EventArgs e )
		{
			if ( User == null )
				YafBuildLink.AccessDenied();

			if ( !IsPostBack )
			{
				// get user data...
				MembershipUser user = UserMembershipHelper.GetMembershipUser( UserID );

				if ( user == null )
				{
					YafBuildLink.AccessDenied(/*No such user exists*/);
				}

				PageLinks.AddLink( PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.forum ) );
				PageLinks.AddLink( user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID ) );
				PageLinks.AddLink( GetText( "TITLE" ), "" );

				// get full user data...
				YafCombinedUserData userData = new YafCombinedUserData( user, UserID );

				Img.Src = string.Format( "http://opi.yahoo.com/online?u={0}&m=g&t=2", userData.Profile.YIM );
				Msg.NavigateUrl = string.Format( "http://edit.yahoo.com/config/send_webmesg?.target={0}&.src=pg", userData.Profile.YIM );
			}
		}
Example #8
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (User == null)
            {
                YafBuildLink.AccessDenied();
            }

            if (!IsPostBack)
            {
                // get user data...
                MembershipUser user = UserMembershipHelper.GetMembershipUser(UserID);

                if (user == null)
                {
                    YafBuildLink.AccessDenied(/*No such user exists*/);
                }

                PageLinks.AddLink(PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.forum));
                PageLinks.AddLink(user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID));
                PageLinks.AddLink(GetText("TITLE"), "");

                // get full user data...
                YafCombinedUserData userData = new YafCombinedUserData(user, UserID);

                Img.Src         = string.Format("http://opi.yahoo.com/online?u={0}&m=g&t=2", userData.Profile.YIM);
                Msg.NavigateUrl = string.Format("http://edit.yahoo.com/config/send_webmesg?.target={0}&.src=pg", userData.Profile.YIM);
            }
        }
Example #9
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            if (User == null)
            {
                YafBuildLink.AccessDenied();
            }

            if (!IsPostBack)
            {
                // get user data...
                MembershipUser user = UserMembershipHelper.GetMembershipUser(UserID);

                if (user == null)
                {
                    YafBuildLink.AccessDenied(/*No such user exists*/);
                }

                PageLinks.AddLink(PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.forum));
                PageLinks.AddLink(user.UserName, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.profile, "u={0}", UserID));
                PageLinks.AddLink(GetText("TITLE"), "");

                // get full user data...
                YafCombinedUserData userData = new YafCombinedUserData(user, UserID);

                Msg.NavigateUrl   = string.Format("aim:goim?screenname={0}&message=Hi.+Are+you+there?", userData.Profile.AIM);
                Buddy.NavigateUrl = string.Format("aim:addbuddy?screenname={0}", userData.Profile.AIM);
            }
        }
Example #10
0
        private void BindData()
        {
            Groups.DataSource = YAF.Classes.Data.DB.usergroup_list(PageContext.PageUserID);

            // Bind
            DataBind();

            YafCombinedUserData userData = new YafCombinedUserData(PageContext.PageUserID);

            //TitleUserName.Text = HtmlEncode( userData.Membership.UserName );
            AccountEmail.Text = userData.Membership.Email;
            Name.Text         = HtmlEncode(userData.Membership.UserName);
            Joined.Text       = YafDateTime.FormatDateTime(userData.Joined);
            NumPosts.Text     = String.Format("{0:N0}", userData.NumPosts);

            if (PageContext.BoardSettings.AvatarUpload && userData.HasAvatarImage)
            {
                AvatarImage.ImageUrl = String.Format("{0}resource.ashx?u={1}", YafForumInfo.ForumRoot, PageContext.PageUserID);
            }
            else if (!String.IsNullOrEmpty(userData.Avatar))                 // Took out PageContext.BoardSettings.AvatarRemote
            {
                AvatarImage.ImageUrl = String.Format("{3}resource.ashx?url={0}&width={1}&height={2}",
                                                     Server.UrlEncode(userData.Avatar),
                                                     PageContext.BoardSettings.AvatarWidth,
                                                     PageContext.BoardSettings.AvatarHeight,
                                                     YafForumInfo.ForumRoot);
            }
            else
            {
                AvatarImage.Visible = false;
            }
        }
        private void BindData()
        {
            TimeZones.DataSource    = YafStaticData.TimeZones();
            Theme.DataSource        = YafStaticData.Themes();
            Theme.DataTextField     = "Theme";
            Theme.DataValueField    = "FileName";
            Language.DataSource     = YafStaticData.Languages();
            Language.DataTextField  = "Language";
            Language.DataValueField = "FileName";

            DataBind();

            // get an instance of the combined user data class.
            YafCombinedUserData userData = new YafCombinedUserData(CurrentUserID);

            Location.Text                 = userData.Profile.Location;
            HomePage.Text                 = userData.Profile.Homepage;
            Email.Text                    = userData.Email;
            Realname.Text                 = userData.Profile.RealName;
            Occupation.Text               = userData.Profile.Occupation;
            Interests.Text                = userData.Profile.Interests;
            Weblog.Text                   = userData.Profile.Blog;
            WeblogUrl.Text                = userData.Profile.BlogServiceUrl;
            WeblogID.Text                 = userData.Profile.BlogServicePassword;
            WeblogUsername.Text           = userData.Profile.BlogServiceUsername;
            MSN.Text                      = userData.Profile.MSN;
            YIM.Text                      = userData.Profile.YIM;
            AIM.Text                      = userData.Profile.AIM;
            ICQ.Text                      = userData.Profile.ICQ;
            Skype.Text                    = userData.Profile.Skype;
            PMNotificationEnabled.Checked = userData.PMNotification;
            Gender.SelectedIndex          = userData.Profile.Gender;

            ListItem timeZoneItem = TimeZones.Items.FindByValue(userData.TimeZone.ToString());

            if (timeZoneItem != null)
            {
                timeZoneItem.Selected = true;
            }

            OverrideForumThemeRow.Visible = PageContext.BoardSettings.AllowUserTheme;

            if (PageContext.BoardSettings.AllowUserTheme)
            {
                // Allows to use different per-forum themes,
                // While "Allow User Change Theme" option in hostsettings is true
                string themeFile = PageContext.BoardSettings.Theme;
                if (userData.ThemeFile != null)
                {
                    themeFile = userData.ThemeFile;
                }

                ListItem themeItem = Theme.Items.FindByValue(themeFile);
                if (themeItem != null)
                {
                    themeItem.Selected = true;
                }

                OverrideDefaultThemes.Checked = userData.OverrideDefaultThemes;
            }

            if (PageContext.BoardSettings.AllowUserLanguage)
            {
                string languageFile = PageContext.BoardSettings.Language;
                if (userData.LanguageFile != string.Empty)
                {
                    languageFile = userData.LanguageFile;
                }

                ListItem foundItem = Language.Items.FindByValue(languageFile);
                if (foundItem != null)
                {
                    foundItem.Selected = true;
                }
            }
        }
Example #12
0
		private void BindData()
		{
			int userID = ( int )Security.StringToLongOrRedirect( Request.QueryString ["u"] );

			MembershipUser user = UserMembershipHelper.GetMembershipUser( userID );

			if ( user == null )
			{
				YafBuildLink.AccessDenied(/*No such user exists*/);
			}

			YafCombinedUserData userData = new YafCombinedUserData( user, userID );

			// populate user information controls...
			UserName.Text = HtmlEncode( userData.Membership.UserName );
			Name.Text = HtmlEncode( userData.Membership.UserName );
			Joined.Text = String.Format( "{0}", YafDateTime.FormatDateLong( Convert.ToDateTime( userData.Joined ) ) );
			LastVisit.Text = YafDateTime.FormatDateTime( userData.LastVisit );
			Rank.Text = userData.RankName;
			Location.Text = HtmlEncode( General.BadWordReplace( userData.Profile.Location ) );
			RealName.InnerHtml = HtmlEncode( General.BadWordReplace( userData.Profile.RealName ) );
			Interests.InnerHtml = HtmlEncode( General.BadWordReplace( userData.Profile.Interests ) );
			Occupation.InnerHtml = HtmlEncode( General.BadWordReplace( userData.Profile.Occupation ) );
			Gender.InnerText = GetText( "GENDER" + userData.Profile.Gender );

			PageLinks.Clear();
			PageLinks.AddLink( PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.forum ) );
			PageLinks.AddLink( GetText( "MEMBERS" ), YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.members ) );
			PageLinks.AddLink( userData.Membership.UserName, "" );

			double dAllPosts = 0.0;
            if (SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPostsForum"]) > 0)
                dAllPosts = 100.0 * SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPosts"]) / SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPostsForum"]);

			Stats.InnerHtml = String.Format( "{0:N0}<br/>[{1} / {2}]",
				userData.DBRow ["NumPosts"],
				String.Format( GetText( "NUMALL" ), dAllPosts ),
                String.Format(GetText("NUMDAY"), (double)SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPosts"]) / SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumDays"]))
				);

			// private messages
            ///CHANGED THIS ON 12/1/2010
            //PM.Visible = !userData.IsGuest && User != null && PageContext.BoardSettings.AllowPrivateMessages;
			PM.Visible = false;

			PM.NavigateUrl = YafBuildLink.GetLinkNotEscaped( YAF.Classes.Utils.ForumPages.pmessage, "u={0}", userData.UserID );

			// email link
			Email.Visible = !userData.IsGuest && User != null && PageContext.BoardSettings.AllowEmailSending;
			Email.NavigateUrl = YafBuildLink.GetLinkNotEscaped( YAF.Classes.Utils.ForumPages.im_email, "u={0}", userData.UserID );
			if ( PageContext.IsAdmin ) Email.TitleNonLocalized = userData.Membership.Email;

			// homepage link
			Home.Visible = !String.IsNullOrEmpty( userData.Profile.Homepage );
			SetupThemeButtonWithLink( Home, userData.Profile.Homepage );

			// blog link
			Blog.Visible = !String.IsNullOrEmpty( userData.Profile.Blog );
			SetupThemeButtonWithLink( Blog, userData.Profile.Blog );

			MSN.Visible = ( User != null && !String.IsNullOrEmpty( userData.Profile.MSN ) );
			MSN.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.im_email, "u={0}", userData.UserID );

			YIM.Visible = ( User != null && !String.IsNullOrEmpty( userData.Profile.YIM ) );
			YIM.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.im_yim, "u={0}", userData.UserID );

			AIM.Visible = ( User != null && !String.IsNullOrEmpty( userData.Profile.AIM ) );
			AIM.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.im_aim, "u={0}", userData.UserID );

			ICQ.Visible = ( User != null && !String.IsNullOrEmpty( userData.Profile.ICQ ) );
			ICQ.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.im_icq, "u={0}", userData.UserID );

			Skype.Visible = ( User != null && !String.IsNullOrEmpty( userData.Profile.Skype ) );
			Skype.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink( YAF.Classes.Utils.ForumPages.im_skype, "u={0}", userData.UserID );

			// localize tab titles...
			AboutTab.HeaderText = GetText( "ABOUT" );
			StatisticsTab.HeaderText = GetText( "STATISTICS" );
			AvatarTab.HeaderText = GetText( "AVATAR" );
			Last10PostsTab.HeaderText = GetText( "LAST10" );

			if ( PageContext.BoardSettings.AvatarUpload && userData.HasAvatarImage )
			{
				Avatar.ImageUrl = YafForumInfo.ForumRoot + "resource.ashx?u=" + ( userID );
			}
			else if ( !String.IsNullOrEmpty( userData.Avatar ) ) // Took out PageContext.BoardSettings.AvatarRemote
			{
				Avatar.ImageUrl = String.Format( "{3}resource.ashx?url={0}&width={1}&height={2}",
					Server.UrlEncode( userData.Avatar ),
					PageContext.BoardSettings.AvatarWidth,
					PageContext.BoardSettings.AvatarHeight,
					YafForumInfo.ForumRoot );
			}
			else
			{
				Avatar.Visible = false;
				AvatarTab.Visible = false;
			}

			Groups.DataSource = Roles.GetRolesForUser( UserMembershipHelper.GetUserNameFromID( userID ) );

			//EmailRow.Visible = PageContext.IsAdmin;
			ModerateTab.Visible = PageContext.IsAdmin || PageContext.IsForumModerator;
			AdminUserButton.Visible = PageContext.IsAdmin;

			if ( LastPosts.Visible )
			{
				LastPosts.DataSource = YAF.Classes.Data.DB.post_last10user( PageContext.PageBoardID, Request.QueryString ["u"], PageContext.PageUserID );
				SearchUser.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLinkNotEscaped( YAF.Classes.Utils.ForumPages.search,
				                                                                           "postedby={0}",
				                                                                           userData.Membership.UserName );
			}

			DataBind();
		}
Example #13
0
        private void BindData()
        {
            int userID = ( int )Security.StringToLongOrRedirect(Request.QueryString ["u"]);

            MembershipUser user = UserMembershipHelper.GetMembershipUser(userID);

            if (user == null)
            {
                YafBuildLink.AccessDenied(/*No such user exists*/);
            }

            YafCombinedUserData userData = new YafCombinedUserData(user, userID);

            // populate user information controls...
            UserName.Text        = HtmlEncode(userData.Membership.UserName);
            Name.Text            = HtmlEncode(userData.Membership.UserName);
            Joined.Text          = String.Format("{0}", YafDateTime.FormatDateLong(Convert.ToDateTime(userData.Joined)));
            LastVisit.Text       = YafDateTime.FormatDateTime(userData.LastVisit);
            Rank.Text            = userData.RankName;
            Location.Text        = HtmlEncode(General.BadWordReplace(userData.Profile.Location));
            RealName.InnerHtml   = HtmlEncode(General.BadWordReplace(userData.Profile.RealName));
            Interests.InnerHtml  = HtmlEncode(General.BadWordReplace(userData.Profile.Interests));
            Occupation.InnerHtml = HtmlEncode(General.BadWordReplace(userData.Profile.Occupation));
            Gender.InnerText     = GetText("GENDER" + userData.Profile.Gender);

            PageLinks.Clear();
            PageLinks.AddLink(PageContext.BoardSettings.Name, YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.forum));
            PageLinks.AddLink(GetText("MEMBERS"), YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.members));
            PageLinks.AddLink(userData.Membership.UserName, "");

            double dAllPosts = 0.0;

            if (SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPostsForum"]) > 0)
            {
                dAllPosts = 100.0 * SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPosts"]) / SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPostsForum"]);
            }

            Stats.InnerHtml = String.Format("{0:N0}<br/>[{1} / {2}]",
                                            userData.DBRow ["NumPosts"],
                                            String.Format(GetText("NUMALL"), dAllPosts),
                                            String.Format(GetText("NUMDAY"), (double)SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumPosts"]) / SqlDataLayerConverter.VerifyInt32(userData.DBRow["NumDays"]))
                                            );

            // private messages
            ///CHANGED THIS ON 12/1/2010
            //PM.Visible = !userData.IsGuest && User != null && PageContext.BoardSettings.AllowPrivateMessages;
            PM.Visible = false;

            PM.NavigateUrl = YafBuildLink.GetLinkNotEscaped(YAF.Classes.Utils.ForumPages.pmessage, "u={0}", userData.UserID);

            // email link
            Email.Visible     = !userData.IsGuest && User != null && PageContext.BoardSettings.AllowEmailSending;
            Email.NavigateUrl = YafBuildLink.GetLinkNotEscaped(YAF.Classes.Utils.ForumPages.im_email, "u={0}", userData.UserID);
            if (PageContext.IsAdmin)
            {
                Email.TitleNonLocalized = userData.Membership.Email;
            }

            // homepage link
            Home.Visible = !String.IsNullOrEmpty(userData.Profile.Homepage);
            SetupThemeButtonWithLink(Home, userData.Profile.Homepage);

            // blog link
            Blog.Visible = !String.IsNullOrEmpty(userData.Profile.Blog);
            SetupThemeButtonWithLink(Blog, userData.Profile.Blog);

            MSN.Visible     = (User != null && !String.IsNullOrEmpty(userData.Profile.MSN));
            MSN.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.im_email, "u={0}", userData.UserID);

            YIM.Visible     = (User != null && !String.IsNullOrEmpty(userData.Profile.YIM));
            YIM.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.im_yim, "u={0}", userData.UserID);

            AIM.Visible     = (User != null && !String.IsNullOrEmpty(userData.Profile.AIM));
            AIM.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.im_aim, "u={0}", userData.UserID);

            ICQ.Visible     = (User != null && !String.IsNullOrEmpty(userData.Profile.ICQ));
            ICQ.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.im_icq, "u={0}", userData.UserID);

            Skype.Visible     = (User != null && !String.IsNullOrEmpty(userData.Profile.Skype));
            Skype.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLink(YAF.Classes.Utils.ForumPages.im_skype, "u={0}", userData.UserID);

            // localize tab titles...
            AboutTab.HeaderText       = GetText("ABOUT");
            StatisticsTab.HeaderText  = GetText("STATISTICS");
            AvatarTab.HeaderText      = GetText("AVATAR");
            Last10PostsTab.HeaderText = GetText("LAST10");

            if (PageContext.BoardSettings.AvatarUpload && userData.HasAvatarImage)
            {
                Avatar.ImageUrl = YafForumInfo.ForumRoot + "resource.ashx?u=" + (userID);
            }
            else if (!String.IsNullOrEmpty(userData.Avatar))                 // Took out PageContext.BoardSettings.AvatarRemote
            {
                Avatar.ImageUrl = String.Format("{3}resource.ashx?url={0}&width={1}&height={2}",
                                                Server.UrlEncode(userData.Avatar),
                                                PageContext.BoardSettings.AvatarWidth,
                                                PageContext.BoardSettings.AvatarHeight,
                                                YafForumInfo.ForumRoot);
            }
            else
            {
                Avatar.Visible    = false;
                AvatarTab.Visible = false;
            }

            Groups.DataSource = Roles.GetRolesForUser(UserMembershipHelper.GetUserNameFromID(userID));

            //EmailRow.Visible = PageContext.IsAdmin;
            ModerateTab.Visible     = PageContext.IsAdmin || PageContext.IsForumModerator;
            AdminUserButton.Visible = PageContext.IsAdmin;

            if (LastPosts.Visible)
            {
                LastPosts.DataSource   = YAF.Classes.Data.DB.post_last10user(PageContext.PageBoardID, Request.QueryString ["u"], PageContext.PageUserID);
                SearchUser.NavigateUrl = YAF.Classes.Utils.YafBuildLink.GetLinkNotEscaped(YAF.Classes.Utils.ForumPages.search,
                                                                                          "postedby={0}",
                                                                                          userData.Membership.UserName);
            }

            DataBind();
        }
		private void BindData()
		{
			TimeZones.DataSource = YafStaticData.TimeZones();
			Theme.DataSource = YafStaticData.Themes();
			Theme.DataTextField = "Theme";
			Theme.DataValueField = "FileName";
			Language.DataSource = YafStaticData.Languages();
			Language.DataTextField = "Language";
			Language.DataValueField = "FileName";

			DataBind();

			// get an instance of the combined user data class.
			YafCombinedUserData userData = new YafCombinedUserData( CurrentUserID );

			Location.Text = userData.Profile.Location;
			HomePage.Text = userData.Profile.Homepage;
			Email.Text = userData.Email;
			Realname.Text = userData.Profile.RealName;
			Occupation.Text = userData.Profile.Occupation;
			Interests.Text = userData.Profile.Interests;
			Weblog.Text = userData.Profile.Blog;
			WeblogUrl.Text = userData.Profile.BlogServiceUrl;
			WeblogID.Text = userData.Profile.BlogServicePassword;
			WeblogUsername.Text = userData.Profile.BlogServiceUsername;
			MSN.Text = userData.Profile.MSN;
			YIM.Text = userData.Profile.YIM;
			AIM.Text = userData.Profile.AIM;
			ICQ.Text = userData.Profile.ICQ;
			Skype.Text = userData.Profile.Skype;
			PMNotificationEnabled.Checked = userData.PMNotification;
			Gender.SelectedIndex = userData.Profile.Gender;

			ListItem timeZoneItem = TimeZones.Items.FindByValue( userData.TimeZone.ToString() );
			if ( timeZoneItem != null ) timeZoneItem.Selected = true;

			OverrideForumThemeRow.Visible = PageContext.BoardSettings.AllowUserTheme;

			if ( PageContext.BoardSettings.AllowUserTheme )
			{
				// Allows to use different per-forum themes,
				// While "Allow User Change Theme" option in hostsettings is true
				string themeFile = PageContext.BoardSettings.Theme;
				if ( userData.ThemeFile != null ) themeFile = userData.ThemeFile;
				
				ListItem themeItem = Theme.Items.FindByValue( themeFile );
				if (themeItem != null) themeItem.Selected = true;

				OverrideDefaultThemes.Checked = userData.OverrideDefaultThemes;
			}

			if ( PageContext.BoardSettings.AllowUserLanguage )
			{
				string languageFile = PageContext.BoardSettings.Language;
				if ( userData.LanguageFile != string.Empty ) languageFile = userData.LanguageFile;

				ListItem foundItem = Language.Items.FindByValue( languageFile );
				if ( foundItem != null ) foundItem.Selected = true;
			}
		}