More granularity to the available roles:
Available roles now in the platform: Administrator, Reseller, User, PlatformCSR, PlatformHelpdesk, ResellerCSR, ResellerHelpdesk. The platform CSR and Helpdesk are peer accounts on platform root level. The names can be used within the websitepanel_pages.config on Page and Module level. On module level the roles can be specified on the viewRoles attribute and readOnlyRoles attribute. When specifying the later all controls will be disabled within the Modile, the viewRoles just show the page or not. When nothing specified the page is just shown
This commit is contained in:
parent
da0966657b
commit
37af5eceac
21 changed files with 423 additions and 127 deletions
|
@ -62,6 +62,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
public const int ERROR_USER_WRONG_USERNAME = -109;
|
||||
public const int ERROR_USER_WRONG_PASSWORD = -110;
|
||||
public const int ERROR_INVALID_USER_NAME = -111;
|
||||
public const int ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS = -112;
|
||||
#endregion
|
||||
|
||||
#region Packages
|
||||
|
|
|
@ -38,6 +38,10 @@ namespace WebsitePanel.EnterpriseServer
|
|||
NotDemo = 0x1,
|
||||
IsActive = 0x2,
|
||||
IsAdmin = 0x4,
|
||||
IsReseller = 0x8
|
||||
IsReseller = 0x8,
|
||||
IsPlatformCSR = 0x10,
|
||||
IsPlatformHelpdesk = 0x20,
|
||||
IsResellerCSR = 0x40,
|
||||
IsResellerHelpdesk = 0x80,
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,6 +37,10 @@ namespace WebsitePanel.EnterpriseServer
|
|||
{
|
||||
Administrator = 1,
|
||||
Reseller = 2,
|
||||
User = 3
|
||||
User = 3,
|
||||
ResellerCSR = 4,
|
||||
PlatformCSR = 5,
|
||||
ResellerHelpdesk = 6,
|
||||
PlatformHelpdesk = 7
|
||||
}
|
||||
}
|
||||
|
|
|
@ -45,6 +45,10 @@ namespace WebsitePanel.EnterpriseServer
|
|||
public const string ROLE_ADMINISTRATOR = "Administrator";
|
||||
public const string ROLE_RESELLER = "Reseller";
|
||||
public const string ROLE_USER = "User";
|
||||
public const string ROLE_PLATFORMCSR = "PlatformCSR";
|
||||
public const string ROLE_PLATFORMHELPDESK = "PlatformHelpdesk";
|
||||
public const string ROLE_RESELLERCSR = "ResellerCSR";
|
||||
public const string ROLE_RESELLERHELPDESK = "ResellerHelpdesk";
|
||||
|
||||
public const string CONTEXT_USER_INFO = "CONTEXT_USER_INFO";
|
||||
|
||||
|
@ -62,8 +66,26 @@ namespace WebsitePanel.EnterpriseServer
|
|||
// set roles array
|
||||
List<string> roles = new List<string>();
|
||||
roles.Add(SecurityContext.ROLE_USER);
|
||||
|
||||
if (user.Role == UserRole.Reseller || user.Role == UserRole.Administrator ||
|
||||
user.Role == UserRole.PlatformHelpdesk || user.Role == UserRole.ResellerHelpdesk)
|
||||
roles.Add(SecurityContext.ROLE_RESELLERHELPDESK);
|
||||
|
||||
if (user.Role == UserRole.Reseller || user.Role == UserRole.Administrator ||
|
||||
user.Role == UserRole.PlatformCSR || user.Role == UserRole.ResellerCSR)
|
||||
roles.Add(SecurityContext.ROLE_RESELLERCSR);
|
||||
|
||||
if (user.Role == UserRole.Reseller || user.Role == UserRole.Administrator ||
|
||||
user.Role == UserRole.PlatformHelpdesk)
|
||||
roles.Add(SecurityContext.ROLE_PLATFORMHELPDESK);
|
||||
|
||||
if (user.Role == UserRole.Reseller || user.Role == UserRole.Administrator ||
|
||||
user.Role == UserRole.PlatformCSR)
|
||||
roles.Add(SecurityContext.ROLE_PLATFORMCSR);
|
||||
|
||||
if (user.Role == UserRole.Reseller || user.Role == UserRole.Administrator)
|
||||
roles.Add(SecurityContext.ROLE_RESELLER);
|
||||
|
||||
if (user.Role == UserRole.Administrator)
|
||||
roles.Add(SecurityContext.ROLE_ADMINISTRATOR);
|
||||
|
||||
|
@ -152,9 +174,40 @@ namespace WebsitePanel.EnterpriseServer
|
|||
{
|
||||
// should make a check if the account has Admin role
|
||||
if (!User.IsInRole(ROLE_RESELLER))
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_SHOULD_BE_RESELLER;
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS;
|
||||
}
|
||||
|
||||
if ((demand & DemandAccount.IsPlatformCSR) == DemandAccount.IsPlatformCSR)
|
||||
{
|
||||
// should make a check if the account has Admin role
|
||||
if (!User.IsInRole(ROLE_PLATFORMCSR))
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS;
|
||||
}
|
||||
|
||||
if ((demand & DemandAccount.IsPlatformHelpdesk) == DemandAccount.IsPlatformHelpdesk)
|
||||
{
|
||||
// should make a check if the account has Admin role
|
||||
if (!User.IsInRole(ROLE_PLATFORMHELPDESK))
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS;
|
||||
}
|
||||
|
||||
|
||||
if ((demand & DemandAccount.IsResellerHelpdesk) == DemandAccount.IsResellerHelpdesk)
|
||||
{
|
||||
// should make a check if the account has Admin role
|
||||
if (!User.IsInRole(ROLE_RESELLERHELPDESK))
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS;
|
||||
}
|
||||
|
||||
|
||||
if ((demand & DemandAccount.IsResellerCSR) == DemandAccount.IsResellerCSR)
|
||||
{
|
||||
// should make a check if the account has Admin role
|
||||
if (!User.IsInRole(ROLE_RESELLERCSR))
|
||||
return BusinessErrorCodes.ERROR_USER_ACCOUNT_NOT_ENOUGH_PERMISSIONS;
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -399,7 +399,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
// check account
|
||||
result.Result = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive
|
||||
| DemandAccount.IsReseller);
|
||||
| DemandAccount.IsResellerCSR);
|
||||
if (result.Result < 0) return result;
|
||||
|
||||
// check if domain exists
|
||||
|
@ -652,7 +652,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
{
|
||||
// check account
|
||||
result.Result = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive
|
||||
| DemandAccount.IsReseller);
|
||||
| DemandAccount.IsResellerCSR);
|
||||
if (result.Result < 0) return result;
|
||||
|
||||
int packageId = -1;
|
||||
|
|
|
@ -9,25 +9,25 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="LoggedUserDetails" roles="Administrator,Reseller,User" hidden="True" skin="Edit.ascx">
|
||||
<Page name="LoggedUserDetails" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="Edit.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="LoggedUserDetails" title="LoggedUserDetails" icon="user_write_48.png" container="Edit.ascx" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SearchUsers" roles="Administrator,Reseller,User" hidden="True" skin="Browse1.ascx">
|
||||
<Page name="SearchUsers" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="Browse1.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="SearchUsers" title="SearchUsers" icon="user_zoom_48.png" container="Edit.ascx" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SearchSpaces" roles="Administrator,Reseller,User" hidden="True" skin="Browse1.ascx">
|
||||
<Page name="SearchSpaces" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="Browse1.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="SearchSpaces" title="SearchSpaces" icon="sphere_zoom_48.png" container="Edit.ascx" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="Home" roles="Administrator,Reseller,User" skin="Browse3.ascx">
|
||||
<Page name="Home" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" skin="Browse3.ascx">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
|
@ -35,27 +35,19 @@
|
|||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="UserCustomersSummary" title="UserCustomersSummary" container="Browse.ascx" icon="group_48.png"/>
|
||||
<Module moduleDefinitionID="UserSpaces" title="UserSpaces" container="Browse.ascx" roles="Administrator,Reseller" icon="sphere_48.png">
|
||||
<Module moduleDefinitionID="UserSpaces" title="UserSpaces" container="Browse.ascx" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" icon="sphere_48.png">
|
||||
<ModuleData ref="SpaceIcons"/>
|
||||
</Module>
|
||||
<Module moduleDefinitionID="UserNotes" title="UserNotes" container="Browse.ascx" roles="Administrator,Reseller" icon="notes_48.png" />
|
||||
<!--Module moduleDefinitionID="TextHTML" title="Test Text Module" container="Clear.ascx" roles="Administrator,Reseller">
|
||||
<ModuleData>
|
||||
<Content resourcekey="" template="true">
|
||||
<![CDATA[<div class="Normal">Hello #user.FirstName#!</div>]]>
|
||||
</Content>
|
||||
</ModuleData>
|
||||
</Module-->
|
||||
<Module moduleDefinitionID="UserNotes" title="UserNotes" container="Browse.ascx" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" icon="notes_48.png" />
|
||||
</Content>
|
||||
<Content id="RightPane">
|
||||
<Module moduleDefinitionID="UserDetails" title="UserDetails" container="Clear.ascx" />
|
||||
<Module moduleDefinitionID="UserResellerSettings" title="UserResellerSettings" container="Clear.ascx" roles="Administrator,Reseller" />
|
||||
<!--Module moduleDefinitionID="UserTools" title="UserTools" container="Clear.ascx" /-->
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<!-- User Account Menu Pages -->
|
||||
<Page name="UserCustomers" roles="Administrator,Reseller" hidden="True">
|
||||
<Page name="UserCustomers" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
|
@ -66,62 +58,62 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="UserSpaces" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="UserSpaces" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx" >
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="UserSpaces" title="UserSpaces" icon="sphere_48.png" readOnlyRoles="PlatformHelpdesk,ResellerHelpdesk,User" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="UserPeers" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="UserSpaces" title="UserSpaces" icon="sphere_48.png" />
|
||||
<Module moduleDefinitionID="UserPeers" title="UserPeers" icon="motion_blur_48.png" readOnlyRoles="PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="UserPeers" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="HostingPlans" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="UserPeers" title="UserPeers" icon="motion_blur_48.png" />
|
||||
<Module moduleDefinitionID="HostingPlans" title="HostingPlans" icon="inventory_48.png" readOnlyRoles="PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="HostingPlans" roles="Administrator,Reseller" hidden="True">
|
||||
<Page name="HostingAddons" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="HostingPlans" title="HostingPlans" icon="inventory_48.png" />
|
||||
<Module moduleDefinitionID="HostingAddons" title="HostingAddons" icon="inventory_add_48.png" readOnlyRoles="PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="HostingAddons" roles="Administrator,Reseller" hidden="True">
|
||||
<Page name="UserTasks" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="HostingAddons" title="HostingAddons" icon="inventory_add_48.png" />
|
||||
<Module moduleDefinitionID="Tasks" title="Tasks" icon="hourglass_48.png" readOnlyRoles="PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="UserTasks" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="Tasks" title="Tasks" icon="hourglass_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="AuditLog" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="AuditLog" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="UserAccountMenu" title="UserMenu" container="Clear.ascx">
|
||||
<ModuleData ref="UserMenu"/>
|
||||
|
@ -133,7 +125,7 @@
|
|||
</Page>
|
||||
|
||||
<!-- Space Home Page -->
|
||||
<Page name="SpaceHome" roles="Administrator,Reseller,User" hidden="True" skin="Browse3.ascx">
|
||||
<Page name="SpaceHome" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="Browse3.ascx">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -141,18 +133,18 @@
|
|||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="SpaceQuotas" title="SpaceQuotas" container="Browse.ascx" icon="stadistics_48.png" />
|
||||
<Module moduleDefinitionID="SpaceNestedSpacesSummary" title="SpaceNestedSpacesSummary" container="Browse.ascx" roles="Administrator,Reseller" icon="sphere_down_48.png" />
|
||||
<Module moduleDefinitionID="SpaceNestedSpacesSummary" title="SpaceNestedSpacesSummary" container="Browse.ascx" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" icon="sphere_down_48.png" />
|
||||
<Module moduleDefinitionID="SpaceNotes" title="SpaceNotes" container="Browse.ascx" roles="Administrator,Reseller" icon="notes_48.png" />
|
||||
</Content>
|
||||
<Content id="RightPane">
|
||||
<Module moduleDefinitionID="SpaceDetails" title="SpaceDetails" container="Clear.ascx" />
|
||||
<Module moduleDefinitionID="SpaceSettings" title="SpaceSettings" container="Clear.ascx" roles="Administrator,Reseller" />
|
||||
<Module moduleDefinitionID="SpaceSettings" title="SpaceSettings" container="Clear.ascx" roles="Administrator,Reseller"/>
|
||||
<Module moduleDefinitionID="SpaceTools" title="SpaceTools" container="Clear.ascx" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<!-- Nested Spaces Page -->
|
||||
<Page name="NestedSpaces" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="NestedSpaces" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -165,7 +157,7 @@
|
|||
|
||||
|
||||
|
||||
<Page name="SpaceOrganizationHostedSharePoint" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceOrganizationHostedSharePoint" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="HostedSolutionMenu" title="HostedSolutionMenu" container="Clear.ascx">
|
||||
<ModuleData ref="HostedSolutionMenu"/>
|
||||
|
@ -176,18 +168,18 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceDomains" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceDomains" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
</Module>
|
||||
</Content>
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="Domains" title="Domains" icon="world_48.png" />
|
||||
<Module moduleDefinitionID="Domains" title="Domains" icon="world_48.png" readOnlyRoles="PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceWeb" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceWeb" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -198,7 +190,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceWebSites" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceWebSites" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -209,7 +201,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceWebIPAddresses" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceWebIPAddresses" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -220,7 +212,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceFtpAccounts" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceFtpAccounts" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -230,8 +222,10 @@
|
|||
<Module moduleDefinitionID="FtpAccounts" title="FtpAccounts" icon="folder_up_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMail" roles="*" hidden="True"/>
|
||||
<Page name="SpaceMailAccounts" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMail" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True"/>
|
||||
|
||||
<Page name="SpaceMailAccounts" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -241,7 +235,8 @@
|
|||
<Module moduleDefinitionID="MailAccounts" title="MailAccounts" icon="accounting_mail_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMailForwardings" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMailForwardings" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -251,7 +246,8 @@
|
|||
<Module moduleDefinitionID="MailForwardings" title="MailForwardings" icon="safe-mail_next_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMailGroups" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMailGroups" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -261,7 +257,8 @@
|
|||
<Module moduleDefinitionID="MailGroups" title="MailGroups" icon="contacts_mail_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMailLists" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMailLists" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -271,7 +268,8 @@
|
|||
<Module moduleDefinitionID="MailLists" title="MailLists" icon="discussion_group_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMailDomains" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMailDomains" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -281,8 +279,10 @@
|
|||
<Module moduleDefinitionID="MailDomains" title="MailDomains" icon="web_mail_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceDatabases" roles="*" hidden="True"/>
|
||||
<Page name="SpaceMsSql2000" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceDatabases" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True"/>
|
||||
|
||||
<Page name="SpaceMsSql2000" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -301,7 +301,8 @@
|
|||
</Module>
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMsSql2005" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMsSql2005" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -321,7 +322,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceMsSql2008" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceMsSql2008" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -341,7 +342,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceMsSql2012" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceMsSql2012" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -361,7 +362,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceMySql4" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceMySql4" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -380,7 +381,8 @@
|
|||
</Module>
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceMySql5" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceMySql5" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -399,7 +401,8 @@
|
|||
</Module>
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceSharedSSL" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceSharedSSL" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -409,7 +412,8 @@
|
|||
<Module moduleDefinitionID="SharedSSL" title="SharedSSL" icon="world_lock_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceAdvancedStatistics" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceAdvancedStatistics" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -419,7 +423,8 @@
|
|||
<Module moduleDefinitionID="AdvancedStatistics" title="AdvancedStatistics" icon="stadistics_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceOdbc" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceOdbc" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -429,7 +434,8 @@
|
|||
<Module moduleDefinitionID="ODBC" title="ODBC" icon="export_db_back_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceScheduledTasks" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceScheduledTasks" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -439,7 +445,8 @@
|
|||
<Module moduleDefinitionID="ScheduledTasks" title="ScheduledTasks" icon="calendar_month_2_clock_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceFileManager" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceFileManager" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -450,7 +457,7 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceWebApplicationsGallery" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceWebApplicationsGallery" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -462,8 +469,9 @@
|
|||
</Page>
|
||||
|
||||
|
||||
<Page name="SpaceSharePoint" roles="Administrator,Reseller,User" hidden="True"/>
|
||||
<Page name="SpaceSharePointSites" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="SpaceSharePoint" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True"/>
|
||||
|
||||
<Page name="SpaceSharePointSites" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="HostedSolutionMenu" title="HostedSolutionMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -473,7 +481,8 @@
|
|||
<Module moduleDefinitionID="SharePointSites" title="SharePointSites" icon="colors_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="SpaceSharePointUsers" roles="Administrator,Reseller,User" hidden="True">
|
||||
|
||||
<Page name="SpaceSharePointUsers" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="SpaceMenu" title="SpaceMenu" container="Clear.ascx">
|
||||
<ModuleData ref="SpaceMenu"/>
|
||||
|
@ -485,47 +494,47 @@
|
|||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="Backup" roles="Administrator,Reseller,User" hidden="True">
|
||||
<Page name="Backup" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True">
|
||||
<!-- Do not remove this stub page -->
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceExchangeServer" roles="Administrator,Reseller,User" hidden="True" skin="Exchange.ascx" adminskin="Exchange.ascx">
|
||||
<Page name="SpaceExchangeServer" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="Exchange.ascx" adminskin="Exchange.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="ExchangeServer" title="ExchangeServer" icon="" container="Exchange.ascx" admincontainer="Exchange.ascx"/>
|
||||
<Module moduleDefinitionID="ExchangeServer" title="ExchangeServer" icon="" container="Exchange.ascx" admincontainer="Exchange.ascx" readOnlyRoles="ResellerCSR"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceVPS" roles="Administrator,Reseller,User" hidden="True" skin="VPS.ascx" adminskin="VPS.ascx">
|
||||
<Page name="SpaceVPS" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="VPS.ascx" adminskin="VPS.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="VPS" title="VirtualPrivateServers" icon="" container="VPS.ascx" admincontainer="VPS.ascx"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="SpaceVPSForPC" roles="Administrator,Reseller,User" hidden="True" skin="VPS.ascx" adminskin="VPS.ascx">
|
||||
<Page name="SpaceVPSForPC" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" hidden="True" skin="VPS.ascx" adminskin="VPS.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="VPSForPC" title="VirtualPrivateServersForPrivateCloud" icon="" container="VPSForPC.ascx" admincontainer="VPSForPC.ascx"/>
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
|
||||
<Page name="OverusageReport" roles="Administrator,Reseller" hidden="True" skin="Browse1.ascx">
|
||||
<Page name="OverusageReport" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk" hidden="True" skin="Browse1.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="OverusageReport" title="OverusageReport" container="Edit.ascx" icon="table_zoom_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
|
||||
<Page name="Reporting" roles="Administrator,Reseller,User" enabled="false">
|
||||
<Page name="Reporting" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" enabled="false">
|
||||
<Content id="LeftPane">
|
||||
<Module moduleDefinitionID="User" title="User" container="Clear.ascx" />
|
||||
<Module moduleDefinitionID="HostingSpace" title="HostingSpace" container="Clear.ascx" />
|
||||
</Content>
|
||||
<Pages>
|
||||
<Page name="DiskspaceReport" roles="Administrator,Reseller,User" skin="Browse1.ascx">
|
||||
<Page name="DiskspaceReport" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" skin="Browse1.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="DiskspaceReport" title="DiskspaceReport" container="Edit.ascx" icon="table_zoom_48.png" />
|
||||
</Content>
|
||||
</Page>
|
||||
<Page name="BandwidthReport" roles="Administrator,Reseller,User" skin="Browse1.ascx">
|
||||
<Page name="BandwidthReport" roles="Administrator,Reseller,PlatformCSR,ResellerCSR,PlatformHelpdesk,ResellerHelpdesk,User" skin="Browse1.ascx">
|
||||
<Content id="ContentPane">
|
||||
<Module moduleDefinitionID="BandwidthReport" title="BandwidthReport" container="Edit.ascx" icon="table_zoom_48.png" />
|
||||
</Content>
|
||||
|
|
|
@ -44,6 +44,7 @@ namespace WebsitePanel.WebPortal
|
|||
private string adminContainerSrc;
|
||||
private List<string> viewRoles = new List<string>();
|
||||
private List<string> editRoles = new List<string>();
|
||||
private List<string> readOnlyRoles = new List<string>();
|
||||
private Hashtable settings = new Hashtable();
|
||||
private XmlDocument xmlModuleData = new XmlDocument();
|
||||
private PortalPage page;
|
||||
|
@ -82,6 +83,12 @@ namespace WebsitePanel.WebPortal
|
|||
get { return this.editRoles; }
|
||||
}
|
||||
|
||||
public List<string> ReadOnlyRoles
|
||||
{
|
||||
get { return this.readOnlyRoles; }
|
||||
}
|
||||
|
||||
|
||||
public Hashtable Settings
|
||||
{
|
||||
get { return this.settings; }
|
||||
|
|
|
@ -343,6 +343,10 @@ namespace WebsitePanel.WebPortal
|
|||
else
|
||||
module.ViewRoles.AddRange(xmlModule.Attributes["viewRoles"].Value.Split(ROLES_DELIMITERS.ToCharArray()));
|
||||
|
||||
if (xmlModule.Attributes["readOnlyRoles"] != null)
|
||||
module.ReadOnlyRoles.AddRange(xmlModule.Attributes["readOnlyRoles"].Value.Split(ROLES_DELIMITERS.ToCharArray()));
|
||||
|
||||
|
||||
if (xmlModule.Attributes["editRoles"] == null)
|
||||
module.EditRoles.Add("*");
|
||||
else
|
||||
|
|
|
@ -112,10 +112,10 @@
|
|||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="btnAddItem.Text" xml:space="preserve">
|
||||
<value>Create Peer Account</value>
|
||||
|
@ -135,4 +135,7 @@
|
|||
<data name="usersListUsername.Header" xml:space="preserve">
|
||||
<value>Username</value>
|
||||
</data>
|
||||
<data name="usersListRole.Header" xml:space="preserve">
|
||||
<value>Role</value>
|
||||
</data>
|
||||
</root>
|
|
@ -112,10 +112,10 @@
|
|||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="btnCancel.Text" xml:space="preserve">
|
||||
<value>Cancel</value>
|
||||
|
@ -180,4 +180,7 @@
|
|||
<data name="btnDelete.OnClientClick" xml:space="preserve">
|
||||
<value>return confirm('Are you sure you want to delete this peer account?');</value>
|
||||
</data>
|
||||
<data name="lblRole.Text" xml:space="preserve">
|
||||
<value>Role</value>
|
||||
</data>
|
||||
</root>
|
|
@ -326,6 +326,9 @@ namespace WebsitePanel.Portal
|
|||
// localize grid viewes
|
||||
LocalizeGridViews(this);
|
||||
|
||||
//if (PanelSecurity.LoggedUser != null)
|
||||
//if (PanelSecurity.LoggedUser.Role == UserRole.CSR) DisableControls = false;
|
||||
|
||||
// call base handler
|
||||
base.OnLoad(e);
|
||||
}
|
||||
|
@ -335,6 +338,43 @@ namespace WebsitePanel.Portal
|
|||
// localize all controls
|
||||
LocalizeModuleControls(this);
|
||||
|
||||
|
||||
string role = string.Empty;
|
||||
if (PanelSecurity.LoggedUser != null)
|
||||
{
|
||||
switch (PanelSecurity.LoggedUser.Role)
|
||||
{
|
||||
case UserRole.Administrator:
|
||||
role = "Administrator";
|
||||
break;
|
||||
case UserRole.Reseller:
|
||||
role = "Reseller";
|
||||
break;
|
||||
case UserRole.User:
|
||||
role = "User";
|
||||
break;
|
||||
case UserRole.PlatformCSR:
|
||||
role = "PlatformCSR";
|
||||
break;
|
||||
case UserRole.PlatformHelpdesk:
|
||||
role = "PlatformHelpdesk";
|
||||
break;
|
||||
case UserRole.ResellerCSR:
|
||||
role = "ResellerCSR";
|
||||
break;
|
||||
case UserRole.ResellerHelpdesk:
|
||||
role = "ResellerHelpdesk";
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (Module != null)
|
||||
{
|
||||
if (Module.ReadOnlyRoles != null)
|
||||
if (Module.ReadOnlyRoles.Contains(role))
|
||||
DisableControls = true;
|
||||
}
|
||||
|
||||
// disable controls (if required)
|
||||
if (DisableControls)
|
||||
DisableFormControls(this, ExcludeDisableControls.ToArray());
|
||||
|
|
|
@ -46,6 +46,7 @@ namespace WebsitePanel.Portal
|
|||
|
||||
private const string DEFAULT_ADMIN_ROLE = "WebsitePanel Administrators";
|
||||
private const string DEFAULT_RESELLER_ROLE = "WebsitePanel Resellers";
|
||||
private const string DEFAULT_CSR_ROLE = "CSR";
|
||||
private const string DEFAULT_USER_ROLE = "WebsitePanel Users";
|
||||
|
||||
#region Users ODS Methods (for Selected User)
|
||||
|
|
|
@ -10,11 +10,16 @@
|
|||
<Columns>
|
||||
<asp:TemplateField SortExpression="Username" HeaderText="usersListUsername">
|
||||
<ItemTemplate>
|
||||
<asp:hyperlink id=lnkEdit runat="server" NavigateUrl='<%# EditUrl("PeerID", Eval("UserID").ToString(), "edit_peer", "UserID=" + PanelSecurity.SelectedUserId.ToString()) %>'>
|
||||
<asp:hyperlink id="lnkEdit" runat="server" NavigateUrl='<%# EditUrl("PeerID", Eval("UserID").ToString(), "edit_peer", "UserID=" + PanelSecurity.SelectedUserId.ToString()) %>'>
|
||||
<%# Eval("Username") %>
|
||||
</asp:hyperlink>
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:TemplateField HeaderText="usersListRole" SortExpression="RoleID">
|
||||
<ItemTemplate>
|
||||
<asp:Label runat="server" ID="lblRole" Text='<%# GetRoleName((int) Eval("RoleID")) %>' />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:BoundField DataField="FullName" SortExpression="FullName" HeaderText="usersListName">
|
||||
<ItemStyle Wrap="False" Width="50%" />
|
||||
</asp:BoundField>
|
||||
|
|
|
@ -37,15 +37,16 @@ using System.Web.UI.WebControls;
|
|||
using System.Web.UI.WebControls.WebParts;
|
||||
using System.Web.UI.HtmlControls;
|
||||
|
||||
using WebsitePanel.EnterpriseServer;
|
||||
|
||||
namespace WebsitePanel.Portal
|
||||
{
|
||||
public partial class Peers : WebsitePanelModuleBase
|
||||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
// set display preferences
|
||||
usersList.PageSize = UsersHelper.GetDisplayItemsPerPage();
|
||||
|
||||
// set display preferences
|
||||
usersList.PageSize = UsersHelper.GetDisplayItemsPerPage();
|
||||
}
|
||||
|
||||
protected void odsUserPeers_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
|
@ -62,5 +63,28 @@ namespace WebsitePanel.Portal
|
|||
{
|
||||
Response.Redirect(EditUrl("UserID", PanelSecurity.SelectedUserId.ToString(), "edit_peer"));
|
||||
}
|
||||
|
||||
protected string GetRoleName(int roleID)
|
||||
{
|
||||
switch (roleID)
|
||||
{
|
||||
case 1:
|
||||
return "Administrator";
|
||||
case 2:
|
||||
return "Reseller";
|
||||
case 3:
|
||||
return "User";
|
||||
case 4:
|
||||
return "CSR";
|
||||
case 5:
|
||||
return "CSR";
|
||||
case 6:
|
||||
return "Helpdesk";
|
||||
case 7:
|
||||
return "Helpdesk";
|
||||
default:
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,18 +1,42 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:2.0.50727.42
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace WebsitePanel.Portal {
|
||||
|
||||
|
||||
public partial class Peers {
|
||||
protected System.Web.UI.WebControls.Button btnAddItem;
|
||||
protected System.Web.UI.WebControls.GridView usersList;
|
||||
protected System.Web.UI.WebControls.ObjectDataSource odsUserPeers;
|
||||
|
||||
/// <summary>
|
||||
/// btnAddItem control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Button btnAddItem;
|
||||
|
||||
/// <summary>
|
||||
/// usersList control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.GridView usersList;
|
||||
|
||||
/// <summary>
|
||||
/// odsUserPeers control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.ObjectDataSource odsUserPeers;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,15 @@
|
|||
<tr>
|
||||
<td class="Normal"> </td>
|
||||
</tr>
|
||||
<tr id="rowRole" runat="server">
|
||||
<td class="SubHead" valign="top">
|
||||
<asp:Label ID="lblRole" runat="server" meta:resourcekey="lblRole" Text="Role:"></asp:Label>
|
||||
</td>
|
||||
<td class="NormalBold" valign="top">
|
||||
<asp:DropDownList id="role" runat="server" resourcekey="role" AutoPostBack="true" CssClass="NormalTextBox">
|
||||
</asp:DropDownList>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="SubHead">
|
||||
<asp:Label ID="lblFirstName" runat="server" meta:resourcekey="lblFirstName" Text="First name:"></asp:Label>
|
||||
|
@ -69,8 +78,7 @@
|
|||
<asp:Label ID="lblEmail" runat="server" meta:resourcekey="lblEmail" Text="E-mail:"></asp:Label>
|
||||
</td>
|
||||
<td class="Normal">
|
||||
<uc2:EmailControl id="txtEmail" runat="server">
|
||||
</uc2:EmailControl>
|
||||
<uc2:EmailControl id="txtEmail" runat="server"></uc2:EmailControl>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -78,8 +86,7 @@
|
|||
<asp:Label ID="lblSecondaryEmail" runat="server" meta:resourcekey="lblSecondaryEmail" Text="Secondary e-mail:"></asp:Label>
|
||||
</td>
|
||||
<td class="Normal">
|
||||
<uc2:EmailControl id="txtSecondaryEmail" runat="server" RequiredEnabled="false">
|
||||
</uc2:EmailControl>
|
||||
<uc2:EmailControl id="txtSecondaryEmail" runat="server" RequiredEnabled="false"></uc2:EmailControl>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -105,8 +112,7 @@
|
|||
</table>
|
||||
|
||||
<wsp:CollapsiblePanel id="headContact" runat="server" IsCollapsed="true"
|
||||
TargetControlID="pnlContact" meta:resourcekey="secContact" Text="Contact">
|
||||
</wsp:CollapsiblePanel>
|
||||
TargetControlID="pnlContact" meta:resourcekey="secContact" Text="Contact"></wsp:CollapsiblePanel>
|
||||
<asp:Panel ID="pnlContact" runat="server" Height="0" style="overflow:hidden;">
|
||||
<dnc:usercontact id="contact" runat="server"></dnc:usercontact>
|
||||
</asp:Panel>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (c) 2012, Outercurve Foundation.
|
||||
// Copyright (c) 2011, Outercurve Foundation.
|
||||
// All rights reserved.
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without modification,
|
||||
|
@ -60,15 +60,52 @@ namespace WebsitePanel.Portal
|
|||
{
|
||||
userPassword.SetUserPolicy(PanelSecurity.SelectedUserId, UserSettings.WEBSITEPANEL_POLICY, "PasswordPolicy");
|
||||
userPassword.ValidationGroup = "";
|
||||
|
||||
if (PanelSecurity.SelectedUser.RoleId == (int)UserRole.Administrator)
|
||||
{
|
||||
role.Items.Add("CSR");
|
||||
role.Items.Add("Helpdesk");
|
||||
role.Items.Add("Administrator");
|
||||
}
|
||||
else
|
||||
if (PanelSecurity.SelectedUser.RoleId == (int)UserRole.Reseller)
|
||||
{
|
||||
role.Items.Add("CSR");
|
||||
role.Items.Add("Helpdesk");
|
||||
role.Items.Add("Reseller");
|
||||
}
|
||||
else
|
||||
rowRole.Visible = false;
|
||||
|
||||
return; // it's a new user
|
||||
}
|
||||
|
||||
if (PanelSecurity.LoggedUser.IsPeer && PanelSecurity.LoggedUserId == PanelRequest.PeerID)
|
||||
btnDelete.Visible = false; // peer can't delete his own account
|
||||
|
||||
|
||||
UserInfo user = UsersHelper.GetUser(PanelRequest.PeerID);
|
||||
if (user != null)
|
||||
{
|
||||
if ((PanelSecurity.SelectedUser.RoleId == (int)UserRole.Administrator)|
|
||||
(PanelSecurity.SelectedUser.RoleId == (int)UserRole.PlatformCSR)|
|
||||
(PanelSecurity.SelectedUser.RoleId == (int)UserRole.PlatformHelpdesk))
|
||||
{
|
||||
role.Items.Add("CSR");
|
||||
role.Items.Add("Helpdesk");
|
||||
role.Items.Add("Administrator");
|
||||
}
|
||||
else
|
||||
if ((PanelSecurity.SelectedUser.RoleId == (int)UserRole.Reseller)|
|
||||
(PanelSecurity.SelectedUser.RoleId == (int)UserRole.ResellerCSR)|
|
||||
(PanelSecurity.SelectedUser.RoleId == (int)UserRole.ResellerHelpdesk))
|
||||
{
|
||||
role.Items.Add("CSR");
|
||||
role.Items.Add("Helpdesk");
|
||||
role.Items.Add("Reseller");
|
||||
}
|
||||
else
|
||||
rowRole.Visible = false;
|
||||
|
||||
userPassword.SetUserPolicy(PanelSecurity.SelectedUserId, UserSettings.WEBSITEPANEL_POLICY, "PasswordPolicy");
|
||||
userPassword.ValidationGroup = "NewPassword";
|
||||
|
||||
|
@ -82,8 +119,15 @@ namespace WebsitePanel.Portal
|
|||
lblUsername.Text = user.Username;
|
||||
chkDemo.Checked = user.IsDemo;
|
||||
|
||||
if (user.RoleId == (int)UserRole.ResellerCSR) role.SelectedIndex = 0;
|
||||
if (user.RoleId == (int)UserRole.PlatformCSR) role.SelectedIndex = 0;
|
||||
if (user.RoleId == (int)UserRole.PlatformHelpdesk) role.SelectedIndex = 1;
|
||||
if (user.RoleId == (int)UserRole.ResellerHelpdesk) role.SelectedIndex = 1;
|
||||
if (user.RoleId == (int)UserRole.Reseller) role.SelectedIndex = 2;
|
||||
if (user.RoleId == (int)UserRole.Administrator) role.SelectedIndex = 2;
|
||||
|
||||
// contact info
|
||||
contact.CompanyName = user.CompanyName;
|
||||
contact.CompanyName = user.CompanyName;
|
||||
contact.Address = user.Address;
|
||||
contact.City = user.City;
|
||||
contact.Country = user.Country;
|
||||
|
@ -111,8 +155,31 @@ namespace WebsitePanel.Portal
|
|||
// gather data from form
|
||||
UserInfo user = new UserInfo();
|
||||
user.UserId = PanelRequest.PeerID;
|
||||
user.RoleId = owner.RoleId;
|
||||
|
||||
if (PanelSecurity.SelectedUser.RoleId == (int)UserRole.Administrator)
|
||||
{
|
||||
if (role.SelectedIndex == 0)
|
||||
user.RoleId = (int)UserRole.PlatformCSR;
|
||||
if (role.SelectedIndex == 1)
|
||||
user.RoleId = (int)UserRole.PlatformHelpdesk;
|
||||
if (role.SelectedIndex == 2)
|
||||
user.RoleId = (int)UserRole.Administrator;
|
||||
}
|
||||
else
|
||||
if (PanelSecurity.SelectedUser.RoleId == (int)UserRole.Reseller)
|
||||
{
|
||||
if (role.SelectedIndex == 0)
|
||||
user.RoleId = (int)UserRole.ResellerCSR;
|
||||
if (role.SelectedIndex == 1)
|
||||
user.RoleId = (int)UserRole.ResellerHelpdesk;
|
||||
if (role.SelectedIndex == 2)
|
||||
user.RoleId = (int)UserRole.Reseller;
|
||||
}
|
||||
else
|
||||
user.RoleId = owner.RoleId;
|
||||
|
||||
user.StatusId = owner.StatusId;
|
||||
|
||||
user.OwnerId = owner.UserId;
|
||||
user.IsDemo = owner.IsDemo;
|
||||
user.IsPeer = true;
|
||||
|
@ -128,7 +195,7 @@ namespace WebsitePanel.Portal
|
|||
user.IsDemo = chkDemo.Checked;
|
||||
|
||||
// contact info
|
||||
user.CompanyName = contact.CompanyName;
|
||||
user.CompanyName = contact.CompanyName;
|
||||
user.Address = contact.Address;
|
||||
user.City = contact.City;
|
||||
user.Country = contact.Country;
|
||||
|
@ -147,7 +214,7 @@ namespace WebsitePanel.Portal
|
|||
try
|
||||
{
|
||||
//int userId = UsersHelper.AddUser(log, PortalId, user);
|
||||
int userId = PortalUtils.AddUserAccount(log, user, false);
|
||||
int userId = PortalUtils.AddUserAccount(log, user, false);
|
||||
|
||||
if (userId < 0)
|
||||
{
|
||||
|
@ -177,7 +244,7 @@ namespace WebsitePanel.Portal
|
|||
try
|
||||
{
|
||||
//int result = UsersHelper.UpdateUser(PortalId, user);
|
||||
int result = PortalUtils.UpdateUserAccount(user);
|
||||
int result = PortalUtils.UpdateUserAccount(user);
|
||||
|
||||
if (result < 0)
|
||||
{
|
||||
|
@ -202,7 +269,7 @@ namespace WebsitePanel.Portal
|
|||
try
|
||||
{
|
||||
//int result = UsersHelper.DeleteUser(PortalId, PanelRequest.UserID);
|
||||
int result = PortalUtils.DeleteUserAccount(PanelRequest.PeerID);
|
||||
int result = PortalUtils.DeleteUserAccount(PanelRequest.PeerID);
|
||||
|
||||
if (result < 0)
|
||||
{
|
||||
|
@ -228,7 +295,7 @@ namespace WebsitePanel.Portal
|
|||
try
|
||||
{
|
||||
//int result = UsersHelper.ChangeUserPassword(PortalId, PanelRequest.UserID, userPassword.Password);
|
||||
int result = PortalUtils.ChangeUserPassword(PanelRequest.PeerID, userPassword.Password);
|
||||
int result = PortalUtils.ChangeUserPassword(PanelRequest.PeerID, userPassword.Password);
|
||||
|
||||
if (result < 0)
|
||||
{
|
||||
|
|
|
@ -1,10 +1,9 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:2.0.50727.3074
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
@ -139,6 +138,33 @@ namespace WebsitePanel.Portal {
|
|||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Button cmdChangePassword;
|
||||
|
||||
/// <summary>
|
||||
/// rowRole control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.HtmlControls.HtmlTableRow rowRole;
|
||||
|
||||
/// <summary>
|
||||
/// lblRole control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Label lblRole;
|
||||
|
||||
/// <summary>
|
||||
/// role control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.DropDownList role;
|
||||
|
||||
/// <summary>
|
||||
/// lblFirstName control.
|
||||
/// </summary>
|
||||
|
|
|
@ -88,8 +88,10 @@ namespace WebsitePanel.Portal
|
|||
lnkEditSpaceDetails.Visible = (PanelSecurity.PackageId > 1 && !ownSpace);
|
||||
|
||||
lnkDelete.NavigateUrl = EditUrl(PortalUtils.SPACE_ID_PARAM, PanelSecurity.PackageId.ToString(), "delete");
|
||||
lnkDelete.Visible = ((PanelSecurity.SelectedUserId != PanelSecurity.EffectiveUserId)
|
||||
&& (PanelSecurity.PackageId > 1));
|
||||
if (PanelSecurity.LoggedUser.Role != UserRole.Reseller)
|
||||
lnkDelete.Visible = false;
|
||||
else
|
||||
lnkDelete.Visible = ((PanelSecurity.SelectedUserId != PanelSecurity.EffectiveUserId) && (PanelSecurity.PackageId > 1));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -97,7 +97,8 @@ namespace WebsitePanel.Portal
|
|||
lnkChangePassword.Visible = !((PanelSecurity.SelectedUserId == PanelSecurity.EffectiveUserId) && PanelSecurity.LoggedUser.IsPeer);
|
||||
|
||||
lnkDelete.NavigateUrl = EditUrl("UserID", PanelSecurity.SelectedUserId.ToString(), "delete");
|
||||
lnkDelete.Visible = (PanelSecurity.SelectedUserId != PanelSecurity.EffectiveUserId);
|
||||
if (PanelSecurity.LoggedUser.Role != UserRole.Reseller) lnkDelete.Visible = false;
|
||||
else lnkDelete.Visible = (PanelSecurity.SelectedUserId != PanelSecurity.EffectiveUserId);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -64,18 +64,30 @@ namespace WebsitePanel.WebPortal
|
|||
|
||||
string[] roles = null;
|
||||
|
||||
switch (roleName)
|
||||
{
|
||||
case "Administrator":
|
||||
roles = new string[] { "Administrator", "Reseller", "User" };
|
||||
break;
|
||||
case "Reseller":
|
||||
roles = new string[] { "Reseller", "User" };
|
||||
break;
|
||||
default:
|
||||
roles = new string[] { "User" };
|
||||
break;
|
||||
}
|
||||
switch (roleName)
|
||||
{
|
||||
case "Administrator":
|
||||
roles = new string[] { "Administrator", "PlatformHelpdesk", "PlatformCSR", "Reseller", "ResellerCSR", "ResellerHelpdesk", "User" };
|
||||
break;
|
||||
case "Reseller":
|
||||
roles = new string[] { "Reseller", "ResellerCSR", "ResellerHelpdesk", "User" };
|
||||
break;
|
||||
case "PlatformCSR":
|
||||
roles = new string[] { "PlatformCSR", "ResellerCSR", "ResellerHelpdesk", "User" };
|
||||
break;
|
||||
case "PlatformHelpdesk":
|
||||
roles = new string[] { "PlatformHelpdesk", "ResellerHelpdesk", "User" };
|
||||
break;
|
||||
case "ResellerCSR":
|
||||
roles = new string[] { "ResellerCSR", "User" };
|
||||
break;
|
||||
case "ResellerHelpdesk":
|
||||
roles = new string[] { "ResellerHelpdesk", "User" };
|
||||
break;
|
||||
default:
|
||||
roles = new string[] { "User" };
|
||||
break;
|
||||
}
|
||||
|
||||
HttpContext.Current.User = new GenericPrincipal(HttpContext.Current.User.Identity, roles);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue