Foros

 
ForumForumForos DNNForos DNNDesarrolloDesarrolloSaber todos los Roles del PortalSaber todos los Roles del Portal
Anterior Anterior
 
Siguiente Siguiente
Nuevo Mensaje
 14/04/2009 18:28
 

Será basico pero no se que como recuperar el array que indica todos los roles del portal.

Lo que quiero es buscar uno en concreto y añadirselo a un usuario

En alguna pagina he visto Settings("PurchaseRoles") pero realmetne Settings esta vacio, no se si es de alguna version anterior

HE visto PortalSettings que tiene mucha info, incluso informacion fija del rol administrador y de clientes registrados, pero no una lista con todos los roles, los generados por el sistema y por mi.

Gracais SAludos

Nuevo Mensaje
 14/04/2009 19:03
 

dim pp as new DotNetNuke.Security.Roles.RoleController

pp.GetPortalRoles(PortalId)

Me devuelve un array con todos los roles, pero lo devuelve de una marena un poco estraña ya que no lo puedo asociar a un array de una dimension

Creo que es una matriz, pero de flipar, o mas bien es como una hastable, pero no de momento no la puedo recorrer

Nuevo Mensaje
 15/04/2009 13:46
 
 Modificado por abiacity abiacity  en 15/04/2009 13:47:49

No se si es de la manera mas fina, pero lo he hecho de esta manera.

Donde pone un "6" es el id del usuario que he modificado a pelo para probar, ahi lo que se tiene que poner es el id del usaurio a modificar.

Espero que les sirva

 Dim AddRol As Boolean = True

            'Roles del usuario
            Dim userRoles As String() = objRoleController.GetRolesByUser(6, PortalId)

            'REcuperar el Id del Rol que uno quiere del portal
            'Si sabes el nombre del rol pues no te hace falta recorrer los roles de sistema
            Dim idRole = objRoleController.GetRoleByName(1, "Cliente").RoleID

            'ArrayList de Roles del portal
            Dim rolesProtalArrayList As ArrayList = objRoleController.GetPortalRoles(PortalId)

            'REcorremos los Roles del portal en busca del Rol Cliente
            For i As Integer = 0 To rolesProtalArrayList.Count - 1

                If rolesProtalArrayList(i).RoleName = "Cliente" Then
                    'Comprobamos si el usuario no tiene ese rol

                    For j As Integer = 0 To userRoles.Length - 1
                        If userRoles(j) = "Cliente" Then
                            AddRol = False
                        End If
                    Next

                    If AddRol Then
                        objRoleController.AddUserRole(PortalId, 6, rolesProtalArrayList(i).RoleID, Nothing)

                        Exit For
                    End If

                End If

            Next 

Anterior Anterior
 
Siguiente Siguiente
ForumForumForos DNNForos DNNDesarrolloDesarrolloSaber todos los Roles del PortalSaber todos los Roles del Portal

En total, tenemos 1098 nuevo(s) hilo(s) y 5265 nuevo(s) mensaje(s)
Los hilos más populares han estado en ¿por que?
Los hilos más activos han estado en no veo el portal desde los pc's de la red

Más activos


UserTotalPosts
jmaldonadom 1101
anonymous 798
javier 488
Faco 395
hiunkeru 184
vitolo 182
Guillaume 168
ccolonia 159
dormio 157
elijo_otroo 138
sonsai 84
Dreamvk 67
tirillos 48
vte_torres 47
oskr226 46

Últimos Mensajes...