Changes following the mail correspondence with Omar, changing the paging on the
home page of the customer to a dropdownlist.
This commit is contained in:
parent
9584fb2dd7
commit
a810e3c78b
11 changed files with 96 additions and 203 deletions
2
WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/chosen.min.css
vendored
Normal file
2
WebsitePanel/Sources/WebsitePanel.WebPortal/App_Themes/Default/Styles/chosen.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
Binary file not shown.
After Width: | Height: | Size: 538 B |
|
@ -162,13 +162,4 @@
|
|||
<data name="litFileManagerEditableExtensions.Text" xml:space="preserve">
|
||||
<value>(One (1) extension per line)</value>
|
||||
</data>
|
||||
<data name="lclPackageDisplaySettings.Text" xml:space="preserve">
|
||||
<value>Package Display Settings</value>
|
||||
</data>
|
||||
<data name="lclPackagePackagesPerPage.Text" xml:space="preserve">
|
||||
<value>Display packages per page</value>
|
||||
</data>
|
||||
<data name="lclPackageUsePaging" xml:space="preserve">
|
||||
<value>Use paging on package overview</value>
|
||||
</data>
|
||||
</root>
|
|
@ -181,6 +181,16 @@ namespace WebsitePanel.Portal
|
|||
return ret;
|
||||
}
|
||||
|
||||
public DataSet GetMyPackage(int packageid) {
|
||||
DataSet ret = new DataSet();
|
||||
DataTable table = ES.Services.Packages.GetRawMyPackages(PanelSecurity.SelectedUserId).Tables[0];
|
||||
if(table.Rows.Count > 0) {
|
||||
DataTable t = table.Select("PackageID = " + packageid).CopyToDataTable();
|
||||
ret.Tables.Add(t);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
#region Packages Paged ODS Methods
|
||||
DataSet dsPackagesPaged;
|
||||
|
||||
|
|
|
@ -41,22 +41,6 @@
|
|||
</table>
|
||||
</asp:Panel>
|
||||
|
||||
|
||||
<wsp:CollapsiblePanel id="lclPackageDisplaySettings" runat="server"
|
||||
TargetControlID="PackageDisplaySettings" meta:resourcekey="lclPackageDisplaySettings" Text="Package Display Settings"/>
|
||||
<asp:Panel ID="PackageDisplaySettings" runat="server" Height="0" style="overflow:hidden;">
|
||||
<table>
|
||||
<tr>
|
||||
<td class="SubHead" style="width:200px;"><asp:Localize runat="server" meta:resourcekey="lclPackageUsePaging" /></td>
|
||||
<td><asp:CheckBox runat="server" ID="chkPackageUsePaging" /></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="SubHead" style="width:200px;"><asp:Localize runat="server" meta:resourcekey="lclPackagePackagesPerPage" /></td>
|
||||
<td><asp:TextBox runat="server" ID="txtPackagePackagesPerPage" Width="80px" /></td>
|
||||
</tr>
|
||||
</table>
|
||||
</asp:Panel>
|
||||
|
||||
<wsp:CollapsiblePanel id="lclWpiSettings" runat="server"
|
||||
TargetControlID="WpiPanel" meta:resourcekey="lclWpiSettings" Text="Web Platform Installer Settings"/>
|
||||
|
||||
|
|
|
@ -50,8 +50,6 @@ namespace WebsitePanel.Portal
|
|||
public const string SMTP_PASSWORD = "SmtpPassword";
|
||||
public const string SMTP_ENABLE_SSL = "SmtpEnableSsl";
|
||||
public const string BACKUPS_PATH = "BackupsPath";
|
||||
public const string PACKAGE_USE_PAGING = "PackageUsePaging";
|
||||
public const string PACKAGES_PER_PAGE = "PackagesPerPage";
|
||||
public const string FILE_MANAGER_EDITABLE_EXTENSIONS = "EditableExtensions";
|
||||
|
||||
/*
|
||||
|
@ -97,15 +95,6 @@ namespace WebsitePanel.Portal
|
|||
txtBackupsPath.Text = settings["BackupsPath"];
|
||||
}
|
||||
|
||||
// PACKAGE DISPLAY
|
||||
settings = ES.Services.System.GetSystemSettings(
|
||||
WSP.SystemSettings.PACKAGE_DISPLAY_SETTINGS);
|
||||
|
||||
if(settings != null)
|
||||
{
|
||||
chkPackageUsePaging.Checked = Utils.ParseBool(settings[PACKAGE_USE_PAGING], false);
|
||||
txtPackagePackagesPerPage.Text = settings[PACKAGES_PER_PAGE];
|
||||
}
|
||||
|
||||
// WPI
|
||||
settings = ES.Services.System.GetSystemSettings(WSP.SystemSettings.WPI_SETTINGS);
|
||||
|
@ -185,17 +174,6 @@ namespace WebsitePanel.Portal
|
|||
return;
|
||||
}
|
||||
|
||||
settings = new WSP.SystemSettings();
|
||||
settings[PACKAGE_USE_PAGING] = chkPackageUsePaging.Checked.ToString();
|
||||
settings[PACKAGES_PER_PAGE] = txtPackagePackagesPerPage.Text;
|
||||
|
||||
result = ES.Services.System.SetSystemSettings(
|
||||
WSP.SystemSettings.PACKAGE_DISPLAY_SETTINGS, settings);
|
||||
|
||||
if(result < 0) {
|
||||
ShowResultMessage(result);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
// WPI
|
||||
|
|
|
@ -111,42 +111,6 @@ namespace WebsitePanel.Portal {
|
|||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.TextBox txtBackupsPath;
|
||||
|
||||
/// <summary>
|
||||
/// lclPackageDisplaySettings control.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Auto-generated field.
|
||||
/// To modify move field declaration from designer file to code-behind file.
|
||||
/// </remarks>
|
||||
protected global::WebsitePanel.Portal.CollapsiblePanel lclPackageDisplaySettings;
|
||||
|
||||
/// <summary>
|
||||
/// PackageDisplaySettings 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.Panel PackageDisplaySettings;
|
||||
|
||||
/// <summary>
|
||||
/// chkPackageUsePaging 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.CheckBox chkPackageUsePaging;
|
||||
|
||||
/// <summary>
|
||||
/// txtPackagePackagesPerPage 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.TextBox txtPackagePackagesPerPage;
|
||||
|
||||
/// <summary>
|
||||
/// lclWpiSettings control.
|
||||
/// </summary>
|
||||
|
|
|
@ -5,69 +5,66 @@
|
|||
<%@ Register Src="UserOrganization.ascx" TagName="UserOrganization" TagPrefix="wsp" %>
|
||||
<%@ Import Namespace="WebsitePanel.Portal" %>
|
||||
|
||||
<script src="/JavaScript/jquery-1.4.4.min.js" type="text/javascript"></script>
|
||||
<script src="/JavaScript/chosen.min.js" type="text/javascript"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(function () {
|
||||
$(".chosen-select").chosen({ width: "200px" });
|
||||
});
|
||||
</script>
|
||||
|
||||
<asp:Panel id="ButtonsPanel" runat="server" class="FormButtonsBar UserSpaces">
|
||||
<asp:Button ID="btnAddItem" runat="server" meta:resourcekey="btnAddItem" Text="Create Hosting Space" CssClass="Button3" OnClick="btnAddItem_Click" />
|
||||
<asp:Button ID="btnAddItem" runat="server" meta:resourcekey="btnAddItem" Text="Create Hosting Space" CssClass="Button3" OnClick="btnAddItem_Click" />
|
||||
</asp:Panel>
|
||||
|
||||
|
||||
|
||||
<asp:Panel ID="UserPackagesPanel" runat="server" Visible="false">
|
||||
<asp:Repeater ID="PackagesList" runat="server" EnableViewState="false">
|
||||
<ItemTemplate>
|
||||
<div class="IconsBlock">
|
||||
<div class="IconsTitle">
|
||||
<asp:hyperlink id="lnkEdit" runat="server" NavigateUrl='<%# GetSpaceHomePageUrl((int)Eval("PackageID")) %>'>
|
||||
<%# Eval("PackageName") %>
|
||||
</asp:hyperlink>
|
||||
</div>
|
||||
<div>
|
||||
<div class="IconsBlock">
|
||||
<div class="IconsTitle">
|
||||
<asp:DropDownList ID="ddlPackageSelect" OnSelectedIndexChanged="openSelectedPackage" AutoPostBack="true" CssClass="chosen-select" runat="server" Visible="false" />
|
||||
</div>
|
||||
<asp:Repeater ID="PackagesList" runat="server" EnableViewState="false">
|
||||
<ItemTemplate>
|
||||
<div>
|
||||
<asp:Repeater ID="PackageGroups" runat="server" DataSource='<%# GetIconsDataSource((int)Eval("PackageID")) %>' >
|
||||
<ItemTemplate>
|
||||
|
||||
<asp:Repeater ID="PackageGroups" runat="server" DataSource='<%# GetIconsDataSource((int)Eval("PackageID")) %>' >
|
||||
<ItemTemplate>
|
||||
<asp:Label ID="lblGroup" runat="server" CssClass="LinkText" Text='<%# Eval("Text") %>' />
|
||||
|
||||
<asp:Label ID="lblGroup" runat="server" CssClass="LinkText" Text='<%# Eval("Text") %>' />
|
||||
<asp:DataList ID="PackageIcons" runat="server" DataSource='<%# GetIconMenuItems(Eval("ChildItems")) %>'
|
||||
CellSpacing="1" RepeatColumns="5" RepeatDirection="Horizontal">
|
||||
<ItemTemplate>
|
||||
<asp:Panel ID="IconPanel" runat="server" CssClass="Icon">
|
||||
<asp:HyperLink ID="imgLink" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><asp:Image ID="imgIcon" runat="server" ImageUrl='<%# Eval("ImageUrl") %>' /></asp:HyperLink>
|
||||
<br />
|
||||
<asp:HyperLink ID="lnkIcon" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><%# Eval("Text") %></asp:HyperLink>
|
||||
</asp:Panel>
|
||||
<asp:Panel ID="IconMenu" runat="server" CssClass="IconMenu" Visible='<%# IsIconMenuVisible(Eval("ChildItems")) %>'>
|
||||
<ul>
|
||||
<asp:Repeater ID="MenuItems" runat="server" DataSource='<%# GetIconMenuItems(Eval("ChildItems")) %>'>
|
||||
<ItemTemplate>
|
||||
<li><asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><%# Eval("Text") %></asp:HyperLink></li>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</ul>
|
||||
</asp:Panel>
|
||||
<ajaxToolkit:HoverMenuExtender TargetControlID="IconPanel" PopupControlID="IconMenu" runat="server"
|
||||
PopupPosition="Right" HoverCssClass="Icon Hover"></ajaxToolkit:HoverMenuExtender>
|
||||
</ItemTemplate>
|
||||
</asp:DataList>
|
||||
|
||||
<asp:DataList ID="PackageIcons" runat="server" DataSource='<%# GetIconMenuItems(Eval("ChildItems")) %>'
|
||||
CellSpacing="1" RepeatColumns="5" RepeatDirection="Horizontal">
|
||||
<ItemTemplate>
|
||||
<asp:Panel ID="IconPanel" runat="server" CssClass="Icon">
|
||||
<asp:HyperLink ID="imgLink" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><asp:Image ID="imgIcon" runat="server" ImageUrl='<%# Eval("ImageUrl") %>' /></asp:HyperLink>
|
||||
<br />
|
||||
<asp:HyperLink ID="lnkIcon" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><%# Eval("Text") %></asp:HyperLink>
|
||||
</asp:Panel>
|
||||
<asp:Panel ID="IconMenu" runat="server" CssClass="IconMenu" Visible='<%# IsIconMenuVisible(Eval("ChildItems")) %>'>
|
||||
<ul>
|
||||
<asp:Repeater ID="MenuItems" runat="server" DataSource='<%# GetIconMenuItems(Eval("ChildItems")) %>'>
|
||||
<ItemTemplate>
|
||||
<li><asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("NavigateURL") %>'><%# Eval("Text") %></asp:HyperLink></li>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</ul>
|
||||
</asp:Panel>
|
||||
<ajaxToolkit:HoverMenuExtender TargetControlID="IconPanel" PopupControlID="IconMenu" runat="server"
|
||||
PopupPosition="Right" HoverCssClass="Icon Hover"></ajaxToolkit:HoverMenuExtender>
|
||||
</ItemTemplate>
|
||||
</asp:DataList>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</div>
|
||||
<asp:Panel ID="OrgPanel" runat="server" Visible='<%# IsOrgPanelVisible((int)Eval("PackageID")) %>'>
|
||||
<wsp:UserOrganization ID="UserOrganization" runat="server" PackageId='<%# (int)Eval("PackageID") %>' />
|
||||
</asp:Panel>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<asp:Panel ID="OrgPanel" runat="server" Visible='<%# IsOrgPanelVisible((int)Eval("PackageID")) %>'>
|
||||
<wsp:UserOrganization ID="UserOrganization" runat="server" PackageId='<%# (int)Eval("PackageID") %>' />
|
||||
</asp:Panel>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
<asp:Repeater ID="packagePaging" runat="server" Visible="false">
|
||||
<ItemTemplate>
|
||||
<asp:LinkButton ID="lnkPage" runat="server" Text='<%#Eval("Text") %>' CommandArgument='<%# Eval("Value") %>'
|
||||
CssClass='<%# (Convert.ToBoolean(Eval("Enabled"))) ? "pageBlock" : "activePageBlock" %>'
|
||||
OnClick="Page_Changed" OnClientClick='<%# !Convert.ToBoolean(Eval("Enabled")) ? "return false;" : "" %>'>
|
||||
</asp:LinkButton>
|
||||
</ItemTemplate>
|
||||
</asp:Repeater>
|
||||
<asp:Panel ID="EmptyPackagesList" runat="server" Visible="false" CssClass="FormBody">
|
||||
<asp:Literal ID="litEmptyList" runat="server" EnableViewState="false"></asp:Literal>
|
||||
</asp:Panel>
|
||||
|
|
|
@ -47,21 +47,9 @@ namespace WebsitePanel.Portal
|
|||
public partial class UserSpaces : WebsitePanelModuleBase
|
||||
{
|
||||
XmlNodeList xmlIcons = null;
|
||||
|
||||
bool UsePaging = false;
|
||||
int PackagesPerPage;
|
||||
int currentPage = 1;
|
||||
|
||||
DataSet myPackages;
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
// PACKAGE DISPLAY SETTINGS
|
||||
WSP.SystemSettings settings = ES.Services.System.GetSystemSettings(
|
||||
WSP.SystemSettings.PACKAGE_DISPLAY_SETTINGS);
|
||||
if(Utils.ParseBool(settings[SystemSettings.PACKAGE_USE_PAGING], false))
|
||||
{
|
||||
UsePaging = true;
|
||||
PackagesPerPage = Utils.ParseInt(settings[SystemSettings.PACKAGES_PER_PAGE]);
|
||||
}
|
||||
|
||||
// check for user
|
||||
bool isUser = PanelSecurity.SelectedUser.Role == UserRole.User;
|
||||
|
@ -71,24 +59,27 @@ namespace WebsitePanel.Portal
|
|||
|
||||
if (isUser && xmlIcons != null)
|
||||
{
|
||||
|
||||
if(!IsPostBack)
|
||||
{
|
||||
myPackages = new PackagesHelper().GetMyPackages();
|
||||
ddlPackageSelect.DataSource = myPackages.Tables[0].DefaultView;
|
||||
ddlPackageSelect.DataTextField = myPackages.Tables[0].Columns[2].ColumnName;
|
||||
ddlPackageSelect.DataValueField = myPackages.Tables[0].Columns[0].ColumnName;
|
||||
ddlPackageSelect.DataBind();
|
||||
}
|
||||
// USER
|
||||
UserPackagesPanel.Visible = true;
|
||||
if(!UsePaging)
|
||||
if(!IsPostBack)
|
||||
{
|
||||
PackagesList.DataSource = new PackagesHelper().GetMyPackages();
|
||||
PackagesList.DataBind();
|
||||
if (PackagesList.Items.Count == 0)
|
||||
{
|
||||
if(ddlPackageSelect.Items.Count == 0) {
|
||||
litEmptyList.Text = GetLocalizedString("gvPackages.Empty");
|
||||
EmptyPackagesList.Visible = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!IsPostBack)
|
||||
{
|
||||
ListPackagesWithPaging();
|
||||
packagePaging.Visible = true;
|
||||
} else {
|
||||
ddlPackageSelect.Visible = true;
|
||||
myPackages = new PackagesHelper().GetMyPackage(int.Parse(ddlPackageSelect.SelectedValue));
|
||||
PackagesList.DataSource = myPackages;
|
||||
PackagesList.DataBind();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -248,35 +239,9 @@ namespace WebsitePanel.Portal
|
|||
return node.Attributes[name] != null ? node.Attributes[name].Value : null;
|
||||
}
|
||||
|
||||
private void ListPackagesWithPaging()
|
||||
{
|
||||
Hashtable ht = new PackagesHelper().GetMyPackages(currentPage, PackagesPerPage);
|
||||
PackagesList.DataSource = ht["DataSet"];
|
||||
public void openSelectedPackage(Object sender, EventArgs e) {
|
||||
PackagesList.DataSource = new PackagesHelper().GetMyPackage(int.Parse(ddlPackageSelect.SelectedValue));
|
||||
PackagesList.DataBind();
|
||||
if(PackagesList.Items.Count == 0) {
|
||||
litEmptyList.Text = GetLocalizedString("gvPackages.Emtpy");
|
||||
EmptyPackagesList.Visible = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
int pageCount = (int)Math.Ceiling(Convert.ToDecimal(ht["RowCount"]) / Convert.ToDecimal(PackagesPerPage));
|
||||
List<ListItem> pages = new List<ListItem>();
|
||||
if(pageCount > 0)
|
||||
{
|
||||
for(int i = 1; i <= pageCount; i++)
|
||||
{
|
||||
pages.Add(new ListItem(i.ToString(), i.ToString(), i != currentPage));
|
||||
}
|
||||
}
|
||||
packagePaging.DataSource = pages;
|
||||
packagePaging.DataBind();
|
||||
}
|
||||
}
|
||||
|
||||
public void Page_Changed(Object sender, EventArgs e)
|
||||
{
|
||||
currentPage = Utils.ParseInt(((LinkButton)sender).CommandArgument);
|
||||
ListPackagesWithPaging();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -39,6 +39,15 @@ namespace WebsitePanel.Portal {
|
|||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Panel UserPackagesPanel;
|
||||
|
||||
/// <summary>
|
||||
/// ddlPackageSelect 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 ddlPackageSelect;
|
||||
|
||||
/// <summary>
|
||||
/// PackagesList control.
|
||||
/// </summary>
|
||||
|
@ -48,15 +57,6 @@ namespace WebsitePanel.Portal {
|
|||
/// </remarks>
|
||||
protected global::System.Web.UI.WebControls.Repeater PackagesList;
|
||||
|
||||
/// <summary>
|
||||
/// packagePaging 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.Repeater packagePaging;
|
||||
|
||||
/// <summary>
|
||||
/// EmptyPackagesList control.
|
||||
/// </summary>
|
||||
|
|
2
WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/chosen.min.js
vendored
Normal file
2
WebsitePanel/Sources/WebsitePanel.WebPortal/JavaScript/chosen.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue