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
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue