protected void Page_Load(object sender, System.EventArgs e) { // initialize necessary variables _messageHelper = _siteApi.EkMsgRef; _appImgPath = _siteApi.AppImgPath; _pageAction = Request.QueryString["action"].ToLower(); // register CSS Css.RegisterCss(this, Css.ManagedStyleSheet.EktronWorkareaCss); Css.RegisterCss(this, Css.ManagedStyleSheet.EktronWorkareaIeCss, Css.BrowserTarget.AllIE); // populate any text variables as needed lblCMSContent.Text = _messageHelper.GetMessage("generic cms Content"); // Get the term info if needed ISuggestedResults suggestedResults = ObjectFactory.GetSuggestedResults(); SuggestedResultSet suggestedResultSet = null; if (!string.IsNullOrEmpty(Request.QueryString["termID"]) && Guid.TryParse(Request.QueryString["termID"], out setId)) { suggestedResultSet = suggestedResults.GetItem(setId); ViewToolBar(suggestedResultSet.Name); } else { suggestedResultSet = new SuggestedResultSet(); ViewToolBar(string.Empty); } RenderAddEditViewToolBar(); // figure out what mode we're in _pageMode = Request.Form["addsuggestedresult$submitMode"]; if (Page.IsPostBack && _pageMode == "0" && (_pageAction == "addsuggestedresult" || _pageAction == "editsuggestedresult")) { // if we've made it this far, add the NEW suggested results SaveSuggestedResult(); } else if (!Page.IsPostBack && _pageAction == "editsuggestedresult") { // if we're editing an existing set of Suggested Results, // let's get them and output them to the array if (!string.IsNullOrEmpty(suggestedResultSet.Name)) { hdnOriginalPhrase.Value = suggestedResultSet.Id.ToString(); txtPhrase.Text = suggestedResultSet.Name; if (suggestedResultSet.Phrases != null) { foreach (string synonym in suggestedResultSet.Phrases) { if (!string.IsNullOrEmpty(txtSynonyms.Text)) { txtSynonyms.Text += ";"; } txtSynonyms.Text += synonym; } } StringBuilder jsBuilder = new StringBuilder(); if (suggestedResultSet.SuggestedResults != null) { int suggestedResultIndex = 1; foreach (SuggestedResult suggestedResult in suggestedResultSet.SuggestedResults) { jsBuilder.Append("var existingSuggestedResultObject = new suggestedResultObject("); jsBuilder.Append("\'" + suggestedResult.Title.Replace("\'", "\\\'") + "\',"); jsBuilder.Append("\'" + suggestedResult.Title.Replace("\'", "\\\'") + "\',"); jsBuilder.Append("\'" + suggestedResult.Url.Replace("\'", "\\\'") + "\',"); jsBuilder.Append("\'" + suggestedResult.Description.Replace("\'", "\\\'").Replace("\r", " ").Replace("\n", " ") + "\',"); jsBuilder.Append(0 + ","); jsBuilder.Append(suggestedResultIndex.ToString()); jsBuilder.Append(");" + "\r\n"); jsBuilder.Append("arrSuggestedResults.push(existingSuggestedResultObject);" + "\r\n" + "\r\n"); suggestedResultIndex++; } } javaScriptSRObjects.Text = jsBuilder.ToString(); } else { // Redirect back to main screen? Should never get here. } } HtmlEditor1.AllowFonts = true; }
private void ViewToolBar(SuggestedResultSet suggestedResultSet) { System.Text.StringBuilder result = new System.Text.StringBuilder(); txtTitleBar.InnerHtml = _styleHelper.GetTitleBar(string.Format(_messageHelper.GetMessage("msg edit-delete suggested results"), "\"" + suggestedResultSet.Name + "\"")); result.Append("<table><tr>"); result.Append( _styleHelper.GetButtonEventsWCaption( _appImgPath + "../UI/Icons/back.png", "javascript:history.back(1);", _messageHelper.GetMessage("alt back button text"), _messageHelper.GetMessage("btn back"), string.Empty, StyleHelper.BackButtonCssClass, true)); result.Append( _styleHelper.GetButtonEventsWCaption( _appImgPath + "../UI/Icons/contentEdit.png", "suggestedresults.aspx?action=EditSuggestedResult&termID=" + suggestedResultSet.Id.ToString(), _messageHelper.GetMessage("msg edit suggested result"), _messageHelper.GetMessage("generic edit title"), string.Empty, StyleHelper.EditButtonCssClass, true)); result.Append( _styleHelper.GetButtonEventsWCaption( _appImgPath + "../UI/Icons/delete.png", "suggestedresults.aspx?action=DeleteSuggestedResult&termID=" + suggestedResultSet.Id.ToString(), _messageHelper.GetMessage("alt delete suggested results button text"), _messageHelper.GetMessage("generic delete title"), "OnClick=\"javascript:return VerifyDeleteSuggestedResultSet();\"", StyleHelper.DeleteButtonCssClass)); result.Append(StyleHelper.ActionBarDivider); result.Append("<td>"); result.Append(_styleHelper.GetHelpButton("editsuggestedresults", string.Empty)); result.Append("</td>"); result.Append("</tr></table>"); // output the result string to the htmToolBar htmToolBar.InnerHtml = result.ToString(); }
private void SaveSuggestedResult() { SuggestedResultSet suggestedResultSet = new SuggestedResultSet(); // Set suggested result set title. suggestedResultSet.Name = Request.Form["addsuggestedresult$txtPhrase"]; // Apply suggested result set synonyms. if (!string.IsNullOrEmpty(Request.Form["addsuggestedresult$txtSynonyms"])) { string[] synonyms = Request.Form["addsuggestedresult$txtSynonyms"].Split( new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); foreach (string synonym in synonyms) { suggestedResultSet.Phrases.Add(synonym.Trim().ToLowerInvariant()); } } // Apply "best bet" items to the suggested result set. int suggestedResultCount; if (int.TryParse(Request.Form["numSuggestedResults"], out suggestedResultCount) && suggestedResultCount > 0) { for (int i = 0; i < suggestedResultCount; i++) { SuggestedResult suggestedResult = new SuggestedResult(); suggestedResult.Title = Request.Form["suggestedResult_Title_" + i.ToString()]; suggestedResult.Description = Request.Form["suggestedResult_Summary_" + i.ToString()]; suggestedResult.Url = Request.Form["suggestedResult_Link_" + i.ToString()]; suggestedResultSet.SuggestedResults.Add(suggestedResult); } } try { ISuggestedResults suggestedResults = ObjectFactory.GetSuggestedResults(); if (_pageAction == "addsuggestedresult") { suggestedResults.Add(suggestedResultSet); } else if (_pageAction == "editsuggestedresult") { suggestedResultSet.Id = setId; suggestedResults.Update(suggestedResultSet); } Response.Redirect("suggestedresults.aspx?action=ViewSuggestedResults", false); } catch (Exception ex) { Utilities.ShowError(ex.Message); } }