Fix redirect when add\change IP address in the edit server page and in IP list page with paging
This commit is contained in:
parent
c150c997a6
commit
8f22fea5f4
5 changed files with 38 additions and 7 deletions
|
@ -46,7 +46,7 @@ namespace WebsitePanel.Portal
|
|||
/// <summary>
|
||||
/// Summary description for Utils.
|
||||
/// </summary
|
||||
public class Utils
|
||||
public static class Utils
|
||||
{
|
||||
public const string ModuleName = "WebsitePanel";
|
||||
|
||||
|
@ -335,7 +335,7 @@ namespace WebsitePanel.Portal
|
|||
/// <param name="paramName">Name of the parameter to add.</param>
|
||||
/// <param name="paramValue">Value for the parameter to add.</param>
|
||||
/// <returns>Url with added parameter.</returns>
|
||||
public static Uri AddParameterToUrl(Uri url, string paramName, string paramValue)
|
||||
public static Uri AddParameter(this Uri url, string paramName, string paramValue)
|
||||
{
|
||||
var uriBuilder = new UriBuilder(url);
|
||||
var query = HttpUtility.ParseQueryString(uriBuilder.Query);
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
</asp:TemplateField>
|
||||
<asp:TemplateField SortExpression="ExternalIP" HeaderText="gvIPAddressesExternalIP">
|
||||
<ItemTemplate>
|
||||
<asp:hyperlink NavigateUrl='<%# EditUrl("AddressID", DataBinder.Eval(Container.DataItem, "AddressID").ToString(), "edit_ip") %>' runat="server" ID="Hyperlink2">
|
||||
<asp:hyperlink NavigateUrl='<%# EditUrl("AddressID", DataBinder.Eval(Container.DataItem, "AddressID").ToString(), "edit_ip", "ReturnUrl=" + GetReturnUrl()) %>' runat="server" ID="Hyperlink2">
|
||||
<%# Eval("ExternalIP") %>
|
||||
</asp:hyperlink>
|
||||
</ItemTemplate>
|
||||
|
|
|
@ -45,6 +45,8 @@ namespace WebsitePanel.Portal
|
|||
gvIPAddresses.PageSize = UsersHelper.GetDisplayItemsPerPage();
|
||||
ddlItemsPerPage.SelectedValue = gvIPAddresses.PageSize.ToString();
|
||||
|
||||
gvIPAddresses.PageIndex = PageIndex;
|
||||
|
||||
// pool
|
||||
if (!String.IsNullOrEmpty(PanelRequest.PoolId))
|
||||
ddlPools.SelectedValue = PanelRequest.PoolId;
|
||||
|
@ -69,6 +71,7 @@ namespace WebsitePanel.Portal
|
|||
bool vps = ddlPools.SelectedIndex > 1;
|
||||
gvIPAddresses.Columns[3].Visible = vps;
|
||||
}
|
||||
|
||||
protected void odsIPAddresses_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||
{
|
||||
if (e.Exception != null)
|
||||
|
@ -84,10 +87,23 @@ namespace WebsitePanel.Portal
|
|||
return PortalUtils.GetSpaceHomePageUrl(spaceId);
|
||||
}
|
||||
|
||||
public string GetReturnUrl()
|
||||
{
|
||||
var returnUrl = Request.Url.AddParameter("Page", gvIPAddresses.PageIndex.ToString());
|
||||
return Uri.EscapeDataString("~" + returnUrl.PathAndQuery);
|
||||
}
|
||||
|
||||
public int PageIndex
|
||||
{
|
||||
get
|
||||
{
|
||||
return PanelRequest.GetInt("Page", 0);
|
||||
}
|
||||
}
|
||||
|
||||
protected void btnAddItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
Response.Redirect(EditUrl("PoolID", ddlPools.SelectedValue, "add_ip"), true);
|
||||
Response.Redirect(EditUrl("PoolID", ddlPools.SelectedValue, "add_ip", "ReturnUrl=" + GetReturnUrl()), true);
|
||||
}
|
||||
|
||||
protected void ddlItemsPerPage_SelectedIndexChanged(object sender, EventArgs e)
|
||||
|
|
|
@ -43,6 +43,18 @@ namespace WebsitePanel.Portal
|
|||
{
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
gvIPAddresses.PageIndex = PageIndex;
|
||||
}
|
||||
}
|
||||
|
||||
public int PageIndex
|
||||
{
|
||||
get
|
||||
{
|
||||
return PanelRequest.GetInt("IpAddressesPage", 0);
|
||||
}
|
||||
}
|
||||
|
||||
public string EditModuleUrl(string key, string keyVal, string ctrlKey)
|
||||
|
@ -57,7 +69,10 @@ namespace WebsitePanel.Portal
|
|||
|
||||
public string GetReturnUrl()
|
||||
{
|
||||
var returnUrl = Utils.AddParameterToUrl(Request.Url, "IpAddressesCollapsed", "False");
|
||||
var returnUrl = Request.Url
|
||||
.AddParameter("IpAddressesCollapsed", "False")
|
||||
.AddParameter("IpAddressesPage", gvIPAddresses.PageIndex.ToString());
|
||||
|
||||
return Uri.EscapeDataString("~" + returnUrl.PathAndQuery);
|
||||
}
|
||||
|
||||
|
|
|
@ -58,10 +58,10 @@ namespace WebsitePanel.Portal
|
|||
ShowErrorMessage("SERVER_GET_SERVER", ex);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
IPAddressesHeader.IsCollapsed = IsIpAddressesCollapsed;
|
||||
}
|
||||
}
|
||||
|
||||
private void BindTools()
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue