/// <summary> /// Add parameter to URL /// </summary> /// <param name="key"></param> /// <param name="value"></param> public void AddParameter(string key, string value) { // Check that the value do not contain illegal characters if (!QuerystringManager.CheckValue(value)) { return; } switch (key) { case LANGUAGE_KEY: Language = System.Web.HttpUtility.UrlDecode(value); break; case DB_KEY: Database = System.Web.HttpUtility.UrlDecode(value); break; case PATH_KEY: Path = System.Web.HttpUtility.UrlDecode(value); break; case TABLE_KEY: Table = System.Web.HttpUtility.UrlDecode(value); break; case LAYOUT_KEY: Layout = System.Web.HttpUtility.UrlDecode(value); break; default: _params.Add(new KeyValuePair <string, string>(key, value)); break; } }
/// <summary> /// Initializes the table /// </summary> private void InitializeTable() { // Presentation.General settings Table1.PromptForMandatoryFootnotes = PXWeb.Settings.Current.Presentation.PromptMandatoryFootnotes; // Presentation.Table settings switch (QuerystringManager.GetQuerystringParameter("tablelayout")) { case "layout1": Table1.Layout = TableLayoutType.Layout1; break; case "layout2": Table1.Layout = TableLayoutType.Layout2; break; default: Table1.Layout = PXWeb.Settings.Current.Presentation.Table.DefaultLayout; break; } Table1.TableTransformation = PXWeb.Settings.Current.Presentation.Table.TableTransformation; Table1.MaxColumns = PXWeb.Settings.Current.Presentation.Table.MaxColumns; Table1.MaxRows = PXWeb.Settings.Current.Presentation.Table.MaxRows; Table1.TitleVisible = PXWeb.Settings.Current.Presentation.Table.TitleVisible; Table1.DisplayCellInformation = PXWeb.Settings.Current.Presentation.Table.Attributes.DisplayAttributes; Table1.DisplayDefaultAttributes = PXWeb.Settings.Current.Presentation.Table.Attributes.DisplayDefaultAttributes; // General.Global settings Table1.DataNotePlacement = PXWeb.Settings.Current.General.Global.DataNotePlacement; Table1.UseUpperCase = PXWeb.Settings.Current.General.Global.Uppercase; }
protected void Page_PreRender(object sender, EventArgs e) { if (!IsPostBack) { // Show mandatory footnotes? if (Table1.PromptForMandatoryFootnotes && (Request.Browser.EcmaScriptVersion.Major >= 1)) { List <FootnoteListItem> lstMandatoryFootnotes = FootnoteList.GetFootnoteList(PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel.Meta, true); if (lstMandatoryFootnotes != null) { if (lstMandatoryFootnotes.Count > 0) { if (!MandatoryFootnotesDisplayed()) { ShowFootnoteDialog(true, false); // Remember that mandatory footnotes have been displayed for this table if (!string.IsNullOrEmpty(QuerystringManager.GetQuerystringParameter("px_tableid"))) { Session["promptmandatoryfootnotes"] = QuerystringManager.GetQuerystringParameter("px_tableid"); } } } } } } }
protected void AddToQueries(Dictionary <string, string> queries, string key) { if (Page.RouteData.Values[key] != null) { if (queries.ContainsKey(key)) { queries[key] = ValidationManager.GetValue(Page.RouteData.Values[key].ToString()); } else { queries.Add(key, ValidationManager.GetValue(Page.RouteData.Values[key].ToString())); } } else if (QuerystringManager.GetQuerystringParameter(key) != null) { if (queries.ContainsKey(key)) { queries[key] = QuerystringManager.GetQuerystringParameter(key); } else { queries.Add(key, QuerystringManager.GetQuerystringParameter(key)); } } }
/// <summary> /// This method handles if the language for the saved query is overridden in the URL /// </summary> private void HandleChangedLanguage() { string lang = QuerystringManager.GetQuerystringParameter("lang"); if (lang != null) { _language = lang; } }
/// <summary> /// Is the selected chart type Column-Line? /// </summary> /// <param name="context">Http context</param> /// <returns>Returns true if selected charttype is Column-Line, else false</returns> private bool IsColumnLine(HttpContext context) { if (QuerystringManager.GetQuerystringParameter(context, ChartParameters.CHARTTYPE) == Plugins.Views.CHART_COLUMNLINE) { return(true); } else { return(false); } }
protected void Page_Load(object sender, EventArgs e) { _database = PxUrl.Database; _language = PxUrl.Language; _dbi = PXWeb.Settings.Current.General.Databases.GetDatabase(_database); if (!Page.IsPostBack) { _searchQuery = QuerystringManager.GetQuerystringParameter("searchquery"); Master.SetBreadcrumb(PCAxis.Web.Controls.Breadcrumb.BreadcrumbMode.MenuSubPage, "Search"); Master.SetH1TextDatabase(); Master.SetNavigationFlowMode(PCAxis.Web.Controls.NavigationFlow.NavigationFlowMode.First); Master.SetNavigationFlowVisibility(PXWeb.Settings.Current.Navigation.ShowNavigationFlow); PCAxis.Web.Core.Management.PaxiomManager.Clear(); if (!string.IsNullOrEmpty(_searchQuery)) { pxSearch.SearchText = _searchQuery; } pxSearch.RedirectOnSearch = false; } else { _searchQuery = pxSearch.SearchText; } chkCodes.Enabled = !rbAll.Checked; chkTitle.Enabled = !rbAll.Checked; chkValues.Enabled = !rbAll.Checked; if (PXWeb.Settings.Current.Features.General.SearchEnabled == false) { pxSearch.Visible = false; lblSearchResult.Visible = false; repSearchResult.Visible = false; return; } string error; if (!PXWeb.Misc.InputValidation.ValidateNoIllegalCharcters(_searchQuery, out error)) { //Return and let SearchControl.ascx print the error message return; } if (!string.IsNullOrEmpty(_searchQuery)) { DoSearch(); } }
/// <summary> /// Get show legend /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>If legend shall be displayed in chart or not</returns> private bool GetLegend(HttpContext context, ChartSettings settings) { bool showLegend; if (bool.TryParse(QuerystringManager.GetQuerystringParameter(context, ChartParameters.LEGEND), out showLegend)) { return(showLegend); } else { return(settings.ShowLegend); } }
/// <summary> /// Get title /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart title</returns> private string GetTitle(HttpContext context, ChartSettings settings) { if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel.Data.Model.Meta.DescriptionDefault) { return(PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel.Data.Model.Meta.Description); } if (QuerystringManager.GetQuerystringParameter(context, ChartParameters.TITLE) != null) { return(HttpUtility.UrlDecode(QuerystringManager.GetQuerystringParameter(context, ChartParameters.TITLE))); } return(""); }
/// <summary> /// Get legend height /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart legend height</returns> private int GetLegendHeight(HttpContext context, ChartSettings settings) { int height = 0; if (int.TryParse(QuerystringManager.GetQuerystringParameter(context, ChartParameters.LEGENDHEIGHT), out height)) { if (height > 0) { return(height); } } return(settings.LegendHeight); }
/// <summary> /// Get Line thickness /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart line thickness</returns> private int GetLineThickness(HttpContext context, ChartSettings settings) { int thickness = 0; if (int.TryParse(QuerystringManager.GetQuerystringParameter(context, ChartParameters.LINE_THICKNESS), out thickness)) { if (thickness > 0) { return(thickness); } } return(settings.LineThickness); }
public void ProcessRequest(HttpContext context) { string language = null; string database = null; string table = null; List <LinkManager.LinkItem> queryParams = new List <LinkManager.LinkItem>(); // Fetch the route data var routeData = context.Items["RouteData"] as RouteData; if (routeData.Values[PxUrl.LANGUAGE_KEY] != null) { language = ValidationManager.GetValue(routeData.Values[PxUrl.LANGUAGE_KEY].ToString()); } if (routeData.Values[PxUrl.DB_KEY] != null) { database = ValidationManager.GetValue(routeData.Values[PxUrl.DB_KEY].ToString()); } if (routeData.Values[PxUrl.TABLE_KEY] != null) { table = ValidationManager.GetValue(routeData.Values[PxUrl.TABLE_KEY].ToString()); } if ((!string.IsNullOrEmpty(language)) && (!string.IsNullOrEmpty(database)) && (!string.IsNullOrEmpty(table))) { SearchStatusType status; List <SearchResultItem> result = SearchManager.Current.Search(database, language, table, out status, SearchConstants.SEARCH_FIELD_SEARCHID); if (result.Count == 1) { DatabaseInfo dbi = PXWeb.Settings.Current.General.Databases.GetDatabase(database); foreach (String key in HttpContext.Current.Request.QueryString.AllKeys) { // queryParams.Add(new LinkManager.LinkItem(key, QuerystringManager.GetQuerystringParameter(key))); } string url = SearchHelper.GetSearchResultUrl(result[0], dbi, language, queryParams); context.Response.Redirect(url); } else { // If table is not found redirect to menu page context.Response.Redirect(LinkManager.CreateLink("Menu.aspx")); } context.Response.Redirect(LinkManager.CreateLink("Default.aspx")); } }
/// <summary> /// Get chart type /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart type</returns> private SeriesChartType GetChartType(HttpContext context, ChartSettings settings) { switch (QuerystringManager.GetQuerystringParameter(context, ChartParameters.CHARTTYPE)) { case Plugins.Views.CHART_LINE: return(SeriesChartType.Line); case Plugins.Views.CHART_BAR: return(SeriesChartType.Bar); case Plugins.Views.CHART_COLUMN: return(SeriesChartType.Column); case Plugins.Views.CHART_PIE: return(SeriesChartType.Pie); case Plugins.Views.CHART_POPULATIONPYRAMID: return(SeriesChartType.Pyramid); case Plugins.Views.CHART_COLUMNSTACKED: return(SeriesChartType.StackedColumn); case Plugins.Views.CHART_BARSTACKED: return(SeriesChartType.StackedBar); case Plugins.Views.CHART_COLUMNSTACKED100: return(SeriesChartType.StackedColumn100); case Plugins.Views.CHART_BARSTACKED100: return(SeriesChartType.StackedBar100); case Plugins.Views.CHART_AREA: return(SeriesChartType.Area); case Plugins.Views.CHART_AREASTACKED: return(SeriesChartType.StackedArea); case Plugins.Views.CHART_AREASTACKED100: return(SeriesChartType.StackedArea100); case Plugins.Views.CHART_POINT: return(SeriesChartType.Point); case Plugins.Views.CHART_RADAR: return(SeriesChartType.Radar); } return(settings.ChartType); }
private void SetDisplayModeOnPanels() { if (!string.IsNullOrEmpty(QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL))) { if (QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL).Equals("chartsettings")) { pnlSettings.Style.Add("display", "inline-block"); lnkShowChartSettings.NavigateUrl = PanelLink.BuildLink(""); imgSettingsExpander.CssClass = "px-settings-collapseimage"; return; } } pnlSettings.Style.Add("display", "none"); lnkShowChartSettings.NavigateUrl = PanelLink.BuildLink("chartsettings"); imgSettingsExpander.CssClass = "px-settings-expandimage"; }
private void SetSaveQueryLinks() { if (this.Visible) { if (!string.IsNullOrEmpty(QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL))) { if (QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL).Equals("savequery1")) { lnkSaveQueryInformation.NavigateUrl = PanelLink.BuildLink(""); imgShowSaveQueryExpander.CssClass = "px-settings-collapseimage"; return; } } lnkSaveQueryInformation.NavigateUrl = PanelLink.BuildLink("savequery1"); imgShowSaveQueryExpander.CssClass = "px-settings-expandimage"; } }
/// <summary> /// Depending on which link the user clicks on the panels will be set to visible or not. /// Used if the script is disabled. /// </summary> private void SetDisplayModeOnPanels() { if (this.Visible) { if (!string.IsNullOrEmpty(QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL))) { //Hide first panel and show the second panel, //includes choice of time period and how the query should be saved if (QuerystringManager.GetQuerystringParameter(PanelLink.DISPLAY_PANEL).Equals("savequery1")) { pnl2_SaveQuerySelection.Style.Add("display", "inline-block"); pnl3_ShowSaveQueryUrl.Style.Add("display", "none"); return; } } pnl2_SaveQuerySelection.Style.Add("display", "none"); pnl3_ShowSaveQueryUrl.Style.Add("display", "none"); } }
/// <summary> /// Get label orientation /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart label orientation</returns> private ChartSettings.OrientationType GetLabelOrientation(HttpContext context, ChartSettings settings) { if (QuerystringManager.GetQuerystringParameter(context, ChartParameters.LABELORIENTATION) != null) { switch (QuerystringManager.GetQuerystringParameter(context, ChartParameters.LABELORIENTATION).ToLower()) { case "horizontal": return(ChartSettings.OrientationType.Horizontal); case "vertical": return(ChartSettings.OrientationType.Vertical); default: break; } } return(settings.LabelOrientation); }
/// <summary> /// Determines if mandatory footnotes have already been displayed or not /// </summary> /// <returns>True if mandatory footnotes have been displayed, else false</returns> private bool MandatoryFootnotesDisplayed() { if (Session["promptmandatoryfootnotes"] == null) { return(false); } if (string.IsNullOrEmpty(QuerystringManager.GetQuerystringParameter("px_tableid"))) { return(false); } if (Session["promptmandatoryfootnotes"].ToString().Equals(QuerystringManager.GetQuerystringParameter("px_tableid"))) { return(true); } else { return(false); } }
/// <summary> /// Get guidelines /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart guidelines</returns> private ChartSettings.GuidelinesType GetGuidelines(HttpContext context, ChartSettings settings) { ChartSettings.GuidelinesType guidelines = ChartSettings.GuidelinesType.None; if ((QuerystringManager.GetQuerystringParameter(context, ChartParameters.GUIDELINES_HORIZONTAL) != null) || (QuerystringManager.GetQuerystringParameter(context, ChartParameters.GUIDELINES_VERTICAL) != null)) { if (QuerystringManager.GetQuerystringParameter(context, ChartParameters.GUIDELINES_HORIZONTAL).ToLower() == "true") { guidelines = guidelines | ChartSettings.GuidelinesType.Horizontal; } if (QuerystringManager.GetQuerystringParameter(context, ChartParameters.GUIDELINES_VERTICAL).ToLower() == "true") { guidelines = guidelines | ChartSettings.GuidelinesType.Vertical; } return(guidelines); } return(settings.Guidelines); }
protected void Page_Load(object sender, EventArgs e) { PCAxis.Web.Core.Management.PaxiomManager.PaxiomModelBuilder = null; PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel = null; PCAxis.Web.Controls.VariableSelector.SelectedVariableValues.Clear(); ((PxWeb)this.Master).FooterText = "Menu"; Master.HeadTitle = PCAxis.Web.Core.Management.LocalizationManager.GetLocalizedString("PxWebTitleMenu"); if (!Page.IsPostBack) { Master.SetBreadcrumb(PCAxis.Web.Controls.Breadcrumb.BreadcrumbMode.Menu); Master.SetNavigationFlowMode(PCAxis.Web.Controls.NavigationFlow.NavigationFlowMode.First); Master.SetNavigationFlowVisibility(PXWeb.Settings.Current.Navigation.ShowNavigationFlow); Master.SetH1TextDatabase(); string msg = QuerystringManager.GetQuerystringParameter("msg"); if (!string.IsNullOrWhiteSpace(msg)) { dialogModal.Visible = true; dialogModal.Attributes["title"] = Master.GetLocalizedString(msg + "Title"); lblMsg.Text = Master.GetLocalizedString(msg + "Message"); if (PXWeb.Settings.Current.Menu.MenuMode == MenuModeType.TreeViewWithFiles) { //Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "ShowModalDialog", "<script type='text/javascript'> jQuery(function() {var offset = jQuery('.AspNet-TreeView-Collapse:first').offset().top; jQuery('#" + dialogModal.ClientID + "').dialog({ width: 480, height: 200, modal: true, position: ['top', offset], buttons: {" + Master.GetLocalizedString("PxWebPopupDialogClose") + ": function () {jQuery(this).dialog('close');} } }); });</script> "); Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "ShowModalDialog", "<script type='text/javascript'> jQuery(function() {var offset = jQuery('.AspNet-TreeView-Collapse:first').offset(); jQuery('#" + dialogModal.ClientID + "').dialog({ width: 480, height: 200, modal: true, position: ['top', offset], buttons: {" + Master.GetLocalizedString("PxWebPopupDialogClose") + ": function () {jQuery(this).dialog('close');} } }); });</script> "); } else { Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "ShowModalDialog", "<script type='text/javascript'> jQuery(function() { jQuery('#" + dialogModal.ClientID + "').dialog({ width: 480, height: 200, modal: true, buttons: {" + Master.GetLocalizedString("PxWebPopupDialogClose") + ": function () {jQuery(this).dialog('close');} } }); });</script> "); } } PCAxis.Web.Core.Management.PaxiomManager.Clear(); InitializeTableOfContent(); InitializeTableList(); InitializeSearch(); SetLocalizedTexts(); } }
/// <summary> /// Get width /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart width</returns> private int GetWidth(HttpContext context, ChartSettings settings) { int width = 0; if (int.TryParse(QuerystringManager.GetQuerystringParameter(context, ChartParameters.WIDTH), out width)) { if (width > 0) { if (width > PXWeb.Settings.Current.Features.Charts.MaxWidth) { return(PXWeb.Settings.Current.Features.Charts.MaxWidth); } else { return(width); } } } return(settings.Width); }
/// <summary> /// Get height /// </summary> /// <param name="context">Http context</param> /// <param name="settings">Chart settings object</param> /// <returns>Chart height</returns> private int GetHeight(HttpContext context, ChartSettings settings) { int height = 0; if (int.TryParse(QuerystringManager.GetQuerystringParameter(context, ChartParameters.HEIGHT), out height)) { if (height > 0) { if (height > PXWeb.Settings.Current.Features.Charts.MaxHeight) { return(PXWeb.Settings.Current.Features.Charts.MaxHeight); } else { return(height); } } } return(settings.Height); }
/// <summary> /// Get querystring or routedata value depending on if user friendly URL:s are used or not /// </summary> /// <param name="key">parameter key</param> /// <returns>Parameter value</returns> public static string GetParameter(string key) { if (PXWeb.Settings.Current.Features.General.UserFriendlyUrlsEnabled) { System.Web.UI.Page page = HttpContext.Current.Handler as System.Web.UI.Page; if (page != null) { if (page.RouteData.Values[key] != null) { return(ValidationManager.GetValue(page.RouteData.Values[key].ToString())); } } } else { if (QuerystringManager.GetQuerystringParameter(key) != null) { return(QuerystringManager.GetQuerystringParameter(key)); } } return(null); }
protected void Page_Load(object sender, EventArgs e) { //Path for selection should always contain tableid and not table name if (RouteInstance.RouteExtender != null && RouteInstance.RouteExtender.DoesSelectionPathContainTableName(this)) { var linkItems = new List <LinkManager.LinkItem>(); linkItems.Add(new LinkManager.LinkItem(PXWeb.PxUrl.TABLE_KEY, PxUrl.Table)); string redirectLink = LinkManager.CreateLinkMethod("Selection.aspx", false, linkItems.ToArray()); Response.Redirect(redirectLink, true); } if (RouteInstance.RouteExtender != null) { var tableId = RouteInstance.RouteExtender.GetTableIdByName(PxUrl.Table); bool hasTableData = RouteInstance.RouteExtender.HasTableData(tableId); if (!hasTableData) { Response.Redirect(RouteInstance.RouteExtender.GetRedirectNoDataPath(tableId), true); } } ((PxWeb)this.Master).FooterText = "Selection"; string lang = PxUrl.Language; string db = PxUrl.Database; string path = PxUrl.Path; string table = PxUrl.Table; string partTable = ""; //Check if the queryStrings contains partTable if (QuerystringManager.GetQuerystringParameter("partTable") != null) { partTable = QuerystringManager.GetQuerystringParameter("partTable"); } // Bug 273 // If we have no builder the groupings should be reloaded if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModelBuilder == null) { VariableSelector1.ReloadGroupings = true; } if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel != null) { _previousModel = PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel; } PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel = PXWeb.Management.PxContext.GetPaxiomForSelection(db, path, table, lang); if (!IsPostBack) { Master.HeadTitle = PCAxis.Web.Core.Management.LocalizationManager.GetLocalizedString("PxWebTitleSelection"); imgShowInformationExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif"); imgShowFootnotesExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif"); imgShowMetadataExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif"); Master.SetBreadcrumb(PCAxis.Web.Controls.Breadcrumb.BreadcrumbMode.Selection); Master.SetNavigationFlowMode(PCAxis.Web.Controls.NavigationFlow.NavigationFlowMode.Second); Master.SetNavigationFlowVisibility(PXWeb.Settings.Current.Navigation.ShowNavigationFlow); InitializeVariableSelector(); InitializeTableInformation(); InitializeMetatags(); InitializeMetadata(path); //Check if the queryStrings contains partTable and the database type is CNMM //if so download subtable variables if (!string.IsNullOrEmpty(partTable)) { DatabaseInfo dbi = PXWeb.Settings.Current.General.Databases.GetDatabase(db); if (dbi.Type == PCAxis.Web.Core.Enums.DatabaseType.CNMM) { SetValuesFromPartTable(partTable); } } } DisplayTableMetadataLinks(); VariableSelector1.PxActionEvent += new PCAxis.Web.Controls.PxActionEventHandler(HandlePxAction); VariableSelector1.MetadataInformationSelected += new VariableSelector.MetadataInformationSelectedEventHandler(HandleMetaDataInformationAction); if (_previousModel != null && _previousModel.IsComplete && !IsPostBack) { VariableSelector1.InitializeSelectedValuesetsAndGroupings(_previousModel); } }