/// <summary> /// Constructor parses parameters and applies properties as directed. /// </summary> /// <param name="control">Pass "this" from the user control</param> /// <param name="applyProperties">Set user control properties corresponding to parameter names to parameter values.</param> public SublayoutParamHelper(System.Web.UI.UserControl control, bool applyProperties) { _sublayout = control.Parent as Sitecore.Web.UI.WebControls.Sublayout; //Sitecore.Links.LinkManager.GetItemUrl // Parse parameters passed to the sc:sublayout control. if (_sublayout != null) { _params = Sitecore.Web.WebUtil.ParseUrlParameters(_sublayout.Parameters); if (applyProperties) { foreach (string key in _params.Keys) { Sitecore.Reflection.ReflectionUtil.SetProperty(control, key, _params[key]); } if (_dataSource != null) { Sitecore.Reflection.ReflectionUtil.SetProperty(control, "datasource", DataSourceItem.Paths.FullPath); Sitecore.Reflection.ReflectionUtil.SetProperty(control, "datasourceitem", DataSourceItem); } } } }
/// <summary> /// Constructor parses parameters and applies properties as directed. /// </summary> /// <param name="control">Pass "this" from the user control</param> /// <param name="applyProperties">Set user control properties corresponding to parameter names to parameter values.</param> public SublayoutParamHelper(System.Web.UI.UserControl control, bool applyProperties ) { _sublayout = control.Parent as Sitecore.Web.UI.WebControls.Sublayout; // Parse parameters passed to the sc:sublayout control. if (_sublayout != null) { _params = Sitecore.Web.WebUtil.ParseUrlParameters(_sublayout.Parameters); if (applyProperties) { foreach (string key in _params.Keys) { Sitecore.Reflection.ReflectionUtil.SetProperty(control, key, _params[key]); } if (_dataSource != null) { Sitecore.Reflection.ReflectionUtil.SetProperty(control, "datasource", DataSourceItem.Paths.FullPath); Sitecore.Reflection.ReflectionUtil.SetProperty(control, "datasourceitem", DataSourceItem); } } } }
void lvArticles_ItemDataBound(object sender, ListViewItemEventArgs e) { if (e.Item.ItemType == ListViewItemType.DataItem) { DefaultArticlePageItem article = (DefaultArticlePageItem)e.Item.DataItem; Sitecore.Web.UI.WebControls.Sublayout sbArticleEntry = (Sitecore.Web.UI.WebControls.Sublayout)e.Item.FindControl("sbArticleEntry"); sbArticleEntry.DataSource = article.ID.ToString(); } }
private void Page_Load(object sender, EventArgs e) { // Put user code to initialize the page here Sitecore.Data.Items.Item MyItem = null; Sitecore.Web.UI.WebControls.Sublayout myLayout = ((Sitecore.Web.UI.WebControls.Sublayout) this.Parent); if (String.IsNullOrEmpty(myLayout.DataSource) || myLayout.DataSource.Equals("RedirectDataNewDataSource")) { MyItem = HealthIS.Apps.Util.createDatasourceItem("User Defined/Sublayouts/RedirectData", "RedirectDataNewDataSource", "_RD"); //Response.Write("<script type='text/javascript'>setTimeout(function(){location.reload();},3000);</script>"); } else { MyItem = Sitecore.Context.Database.GetItem(myLayout.DataSource); } if (MyItem == null) { Response.Write("No DatasourceDefined"); return; } if (Sitecore.Context.PageMode.IsPageEditorEditing) { loc.Item = MyItem; sc.Item = MyItem; } else { string urlEnding = MyItem.Fields["New Location"].Value.ToString(); /*if (HealthIS.Apps.Util.isOnProduction()) * { * Response.Redirect(urlEnding, false); * * } * else * { * Response.Redirect( urlEnding, false); * }*/ Response.Redirect(urlEnding, false); Response.StatusCode = System.Convert.ToInt16(MyItem.Fields["Status Code"].Value.ToString()); Response.End(); Response.Write("url:" + urlEnding); } }
private void Page_Load(object sender, EventArgs e) { // Put user code to initialize the page here Sitecore.Data.Items.Item MyItem = null; Sitecore.Web.UI.WebControls.Sublayout myLayout = ((Sitecore.Web.UI.WebControls.Sublayout) this.Parent); int statusCode = 302; bool handled = false; if (String.IsNullOrEmpty(myLayout.DataSource) || myLayout.DataSource.Equals("RedirectDataPersonIDNewDataSource")) { MyItem = HealthIS.Apps.Util.createDatasourceItem("User Defined/Sublayouts/RedirectDataPersonID", "RedirectDataPersonIDNewDataSource", "_RD"); //Response.Write("<script type='text/javascript'>setTimeout(function(){location.reload();},3000);</script>"); } else { MyItem = Sitecore.Context.Database.GetItem(myLayout.DataSource); } if (MyItem == null) { Response.Write("No DatasourceDefined"); return; } if (Sitecore.Context.PageMode.IsPageEditorEditing) { loc.Item = MyItem; sc.Item = MyItem; QueryStringField.Item = MyItem; NewBaseLocation.Item = MyItem; } else { try { statusCode = System.Convert.ToInt16(MyItem.Fields["Status Code"].Value); string pid = Request.QueryString[MyItem.Fields["queryStringVariable"].Value.ToString()].ToString(); if (pid != null && pid.Trim() != "") { //statusCode = 302; HealthIS.Apps.Util.person p = HealthIS.Apps.Util.getFacultyBasicInfo(pid); string fname = p.first_name.Trim().Replace(' ', '-'); string lname = p.last_name.Trim().Replace(' ', '-'); string urlEnding = MyItem.Fields["New Base Location"].Value.ToString() + pid.Trim() + "/" + fname + '-' + lname + ".aspx"; if (HealthIS.Apps.Util.isOnProduction()) { Response.Redirect("http://health.usf.edu" + urlEnding, false); } else { Response.Redirect("http://sitecoreqa2.hscnet.hsc.usf.edu" + urlEnding, false); } } else { Response.Redirect(MyItem.Fields["New Default Location"].Value, false); } handled = true; } catch (Exception ex) { //Response.StatusCode = 404; //Response.End(); //Response.Redirect("http://health.usf.edu/doctors/dermatology/cosmetics/providers"); Response.Write("<div style='width:100%; height:500px; background:#000; color:#FFF'>There was an error with your request." + ex.Message + "<br/>" + ex.StackTrace + "</div>"); } if (!handled) { statusCode = System.Convert.ToInt16(MyItem.Fields["Status Code"].Value); Response.Redirect(MyItem.Fields["New Default Location"].Value, false); } Response.StatusCode = statusCode; Response.End(); } /* Sitecore.Data.Items.Item MyItem = null; * Sitecore.Web.UI.WebControls.Sublayout myLayout = ((Sitecore.Web.UI.WebControls.Sublayout)this.Parent); * * * * if (String.IsNullOrEmpty(myLayout.DataSource) || myLayout.DataSource.Equals("SublayoutContentAreaNewDataSource")) * MyItem = HealthIS.Apps.Util.createDatasourceItem("User Defined/Sublayouts/RedirectData", "SublayoutContentAreaNewDataSource", "_RD"); * else * MyItem = Sitecore.Context.Database.GetItem(myLayout.DataSource); * if (MyItem == null){ * Response.Write(myLayout.DataSource+"Had problems getting settings object"); * return; * } * * if (Sitecore.Context.PageMode.IsPageEditorEditing) * showPageEditorView(MyItem); * else * showPageNormalView(MyItem);*/ }
public SublayoutParamHelper(Sitecore.Web.UI.WebControls.Sublayout sublayout) { _sublayout = sublayout; }