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:
Christiaan Swiers 2015-01-13 17:39:35 +01:00
parent 9584fb2dd7
commit a810e3c78b
11 changed files with 96 additions and 203 deletions

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 538 B

View file

@ -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>

View file

@ -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;

View file

@ -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"/>

View file

@ -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

View file

@ -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>

View file

@ -5,24 +5,28 @@
<%@ 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: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>
<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>
@ -54,20 +58,13 @@
</asp:Repeater>
</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>
</div>
<asp:Panel ID="EmptyPackagesList" runat="server" Visible="false" CssClass="FormBody">
<asp:Literal ID="litEmptyList" runat="server" EnableViewState="false"></asp:Literal>
</asp:Panel>

View file

@ -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)
{
// USER
UserPackagesPanel.Visible = true;
if(!UsePaging)
{
PackagesList.DataSource = new PackagesHelper().GetMyPackages();
PackagesList.DataBind();
if (PackagesList.Items.Count == 0)
{
litEmptyList.Text = GetLocalizedString("gvPackages.Empty");
EmptyPackagesList.Visible = true;
}
}
else
{
if(!IsPostBack)
{
ListPackagesWithPaging();
packagePaging.Visible = true;
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(!IsPostBack)
{
if(ddlPackageSelect.Items.Count == 0) {
litEmptyList.Text = GetLocalizedString("gvPackages.Empty");
EmptyPackagesList.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();
}
}
}

View file

@ -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>

File diff suppressed because one or more lines are too long