'
' DotNetNukeŽ - http://www.dotnetnuke.com
' Copyright (c) 2002-2009
' by DotNetNuke Corporation
'
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
' documentation files (the "Software"), to deal in the Software without restriction, including without limitation
' the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
' to permit persons to whom the Software is furnished to do so, subject to the following conditions:
'
' The above copyright notice and this permission notice shall be included in all copies or substantial portions
' of the Software.
'
' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
' TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
' THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
' CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
' DEALINGS IN THE SOFTWARE.
'
Imports DotNetNuke.Entities.Modules
Imports DotNetNuke.Entities.Modules.Actions
Imports DotNetNuke.Entities.Profile
Imports DotNetNuke.Modules.Admin.Security
Imports DotNetNuke.Security.Profile
Imports DotNetNuke.Services.Localization
Imports DotNetNuke.Services.Mail
Imports DotNetNuke.Security.Membership
Imports DotNetNuke.UI.Skins.Controls.ModuleMessage
Imports DotNetNuke.UI.Utilities
Imports DotNetNuke.UI.WebControls
Namespace DotNetNuke.Modules.Admin.Users
''' -----------------------------------------------------------------------------
'''
''' The ViewProfile UserModuleBase is used to view a Users Profile
'''
'''
''' [cnurse] 05/02/2006 Created
'''
''' -----------------------------------------------------------------------------
Partial Class ViewProfile
Inherits UserModuleBase
#Region "Event Handlers"
''' -----------------------------------------------------------------------------
'''
''' Page_Init runs when the control is initialised
'''
'''
'''
'''
''' [cnurse] 03/01/2006
'''
''' -----------------------------------------------------------------------------
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
' get userid from encrypted ticket
UserId = Null.NullInteger
If Not Context.Request.QueryString("userticket") Is Nothing Then
UserId = Int32.Parse(UrlUtils.DecryptParameter(Context.Request.QueryString("userticket")))
End If
ctlProfile.ID = "Profile"
ctlProfile.UserId = UserId
End Sub
''' -----------------------------------------------------------------------------
'''
''' Page_Load runs when the control is loaded
'''
'''
'''
'''
''' [cnurse] 03/01/2006
'''
''' -----------------------------------------------------------------------------
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
'Before we bind the Profile to the editor we need to "update" the visibility data
Dim properties As ProfilePropertyDefinitionCollection = ctlProfile.UserProfile.ProfileProperties
Dim visibleCount As Integer = 0
For Each profProperty As ProfilePropertyDefinition In properties
If profProperty.Visible Then
'Check Visibility
If profProperty.Visibility = UserVisibilityMode.AdminOnly Then
'Only Visible if Admin (or self)
profProperty.Visible = (IsAdmin Or IsUser)
ElseIf profProperty.Visibility = UserVisibilityMode.MembersOnly Then
'Only Visible if Is a Member (ie Authenticated)
profProperty.Visible = Request.IsAuthenticated
End If
End If
If profProperty.Visible Then visibleCount += 1
Next
'Bind the profile information to the control
ctlProfile.DataBind()
If visibleCount = 0 Then
lblNoProperties.Visible = True
End If
Catch exc As Exception 'Module failed to load
ProcessModuleLoadException(Me, exc)
End Try
End Sub
#End Region
End Class
End Namespace