Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0Creating a role programatically in 4.3.1Creating a role programatically in 4.3.1
Previous
 
Next
New Post
6/28/2006 8:46 AM
 

Hello,


I posted this in the Benefactors forum but I think it needs to be opened up to the floor as it is rather urgent as it breaks sites that are using my HomePage module when upgrading to 4.3.1:


I used to have method that created a new role:

            RoleInfo roleInfo = new RoleInfo();
            roleInfo.PortalID = portalID;
            roleInfo.RoleID = Null.NullInteger;
            roleInfo.RoleName = HomePageEditRole;
            roleInfo.Description = "Smart-Thinker HomePage Role - Do not edit/delete!";
            roleInfo.ServiceFee = 0;
            roleInfo.BillingPeriod = 0;
            roleInfo.BillingFrequency = "";
            roleInfo.TrialFee = 0;
            roleInfo.TrialPeriod = 0;
            roleInfo.TrialFrequency = "";
            roleInfo.IsPublic = false;
            roleInfo.AutoAssignment = false;
            roleInfo.RoleID = roleController.AddRole(roleInfo, false);
            return roleInfo;

According to the documentation, the AddRole method with the Synchronisation param has been deprecated, so I replaced it with this:

            RoleInfo roleInfo = new RoleInfo();
            roleInfo.PortalID = portalID;
            roleInfo.RoleID = Null.NullInteger;
            roleInfo.RoleName = HomePageEditRole;
            roleInfo.Description = "Smart-Thinker HomePage Role - Do not edit/delete!";
            roleInfo.ServiceFee = 0;
            roleInfo.BillingPeriod = 0;
            roleInfo.BillingFrequency = "";
            roleInfo.TrialFee = 0;
            roleInfo.TrialPeriod = 0;
            roleInfo.TrialFrequency = "";
            roleInfo.IsPublic = false;
            roleInfo.AutoAssignment = false;
            roleInfo.RoleID = roleController.AddRole(roleInfo);
            return roleInfo;

But the role is not created for some reason. RoleID is -1, and the role is not in the database. Can anyone see what I am doing wrong? Are there any caveats to bear in mind when doing programatic role/user manipulation (my HomePage module creates a new role and tab and has stopped working so I am trying to convert all my methods but I am not having much luck)

Thanks


Entrepreneur

PokerDIY Tournament Manager - PokerDIY Tournament Manager<
PokerDIY Game Finder - Mobile Apps powered by DNN
PokerDIY - Connecting Poker Players

 
New Post
6/28/2006 12:03 PM
 

Try setting the RoleGroupId to -1 or Null.NullInteger => "GlobalRoles"

Otherwise you are doing exactly like the core does, so it should work

 

EDIT: let me know if it works, I just realized I will need to add roles programmtically tomorow in my project


Edit your Skin.xml and Container.xml files with:
Yannick's SXE
 
New Post
6/28/2006 7:25 PM
 
PurpleBox- well done - Set RoleGroup =1 worked...

Thanks a lot - this really was causing me headaches!



Entrepreneur

PokerDIY Tournament Manager - PokerDIY Tournament Manager<
PokerDIY Game Finder - Mobile Apps powered by DNN
PokerDIY - Connecting Poker Players

 
New Post
6/29/2006 7:45 AM
 

I also noticed you may not want to forget to call this:

DataCache.RemoveCache("GetRoles")

 

resulted in some funny behaviour otherwise


Edit your Skin.xml and Container.xml files with:
Yannick's SXE
 
Previous
 
Next
HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0Creating a role programatically in 4.3.1Creating a role programatically in 4.3.1


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out