/// <summary> /// Save the translation of the term /// </summary> private void BtnSave() { TermTranslation tt; using (tt = TermTranslation.GetByKey(termId, languageCode)) { if (tt == null) { #region new translation tt = new TermTranslation(termId, txtTermValue.Text.Trim(), languageCode, false, SessionState.User.Id, DateTime.UtcNow); #endregion } else { #region Update translation tt.UserId = SessionState.User.Id; tt.Value = txtTermValue.Text.Trim(); #endregion } int r = tt.Save(); #region Save result if (r > 0) { Page.ClientScript.RegisterStartupScript(this.GetType(), "reloadParent", "<script>ReloadParent();top.close();</script>"); } else { lbMessage.Text = TermTranslation.LastError; lbMessage.CssClass = "hc_error"; lbMessage.Visible = true; } #endregion } }
/// <summary> /// Display the selected term properties /// </summary> /// <param name="selTermId">TermId</param> void UpdateDataEdit(string selTermId) { Session["PageIndexTerm"] = dg.DisplayLayout.Pager.CurrentPageIndex; Session["TermType"] = DDL_TermTypeList.SelectedValue; Session["FilterTerm"] = txtFilter.Text; panelGrid.Visible = false; webTab.EnableViewState = false; webTab.Tabs.GetTab(0).ContentPane.TargetUrl = "./Termbase/Term_Properties.aspx?t=" + selTermId; if (selTermId == "-1") { #region New Term webTab.Tabs.GetTab(1).ContentPane.TargetUrl = ""; webTab.Tabs[1].Visible = false; webTab.Tabs.GetTab(2).ContentPane.TargetUrl = ""; webTab.Tabs[2].Visible = false; lbTitle.Text = "Term: New"; #endregion } else { #region Term selected using (Term HCTerm = Term.GetByKey(Convert.ToInt32(selTermId))) { string termValue = HCTerm.Value.ToString(); if (termValue.Length > 50) { termValue = termValue.Substring(0, 50) + "..."; } lbTitle.Text = "Term: " + termValue; webTab.Tabs.GetTab(1).ContentPane.TargetUrl = "./Termbase/Term_Translations.aspx?t=" + selTermId; webTab.Tabs.GetTab(2).ContentPane.TargetUrl = "./Termbase/Term_Containers.aspx?t=" + selTermId; HyperComponents.Data.dbAccess.Database dbObj = new HyperComponents.Data.dbAccess.Database(SessionState.CacheComponents["Crystal_DB"].ConnectionString); #region Translations Count TermTranslationList tlist; int TranslationsCount; using (tlist = TermTranslation.GetAll(Convert.ToInt32(selTermId), "TermTypeCode='" + HCTerm.TermTypeCode + "'")) { TranslationsCount = tlist.Count - HCTerm.TranslationsMissingCount; } #endregion webTab.Tabs.GetTab(1).Text = "Translations (" + TranslationsCount.ToString() + "/" + tlist.Count.ToString() + ")"; #region Containers Count webTab.Tabs.GetTab(2).Visible = false; using (ContainerList clist = HyperCatalog.Business.Container.GetAll("LabelId=" + selTermId)) { if (clist.Count > 0) { webTab.Tabs.GetTab(2).Text = "Containers (" + clist.Count + ")"; webTab.Tabs.GetTab(2).Visible = true; } } #endregion } #endregion } panelTabTerm.Visible = true; webTab.SelectedTabIndex = 0; }
protected void Page_Load(object sender, System.EventArgs e) { #region Check Capabilities if ((SessionState.User.IsReadOnly) || (!SessionState.User.HasCapability(CapabilitiesEnum.MANAGE_TERM_BASE))) { uwToolbar.Items.FromKeyButton("Save").Enabled = false; uwToolbar.Items.FromKeyButton("Delete").Enabled = false; } #endregion termId = Convert.ToInt64(Request["t"]); languageCode = Request["c"]; if (!Page.IsPostBack) { try { using (HyperCatalog.Business.Language currentLanguage = HyperCatalog.Business.Language.GetByKey(languageCode)) { string languageName = currentLanguage.Name; if (currentLanguage.Rtl) { txtTermValue.CssClass = "hc_rtledit"; } lbLanguage.Text = "[" + languageCode + "] " + languageName; using (Term t = Term.GetByKey(termId)) { if (t != null) { txtTermValueMaster.Text = t.Value; using (TermTranslation tt = TermTranslation.GetByKey(termId, languageCode)) { if (tt == null) { #region New translation uwToolbarTitle.Items.FromKeyLabel("Action").Text = "Creating"; hlCreator.Text = UITools.GetDisplayName(t.User.FullName); hlCreator.NavigateUrl = "mailto:" + UITools.GetDisplayEmail(t.User.Email) + Server.HtmlEncode("?subject=TermTranslation[#" + t.Id.ToString() + " - " + t.LanguageCode + "]");; lbOrganization.Text = t.User.OrgName; lbOrganization.Visible = hlCreator.Text == t.User.FullName; lbCreatedOn.Text = SessionState.User.FormatUtcDate(t.ModifyDate.Value, true, SessionState.User.FormatDate + ' ' + SessionState.User.FormatTime); UITools.HideToolBarButton(uwToolbar, "Delete"); UITools.HideToolBarSeparator(uwToolbar, "SepDelete"); #endregion } else { #region Update translation uwToolbarTitle.Items.FromKeyLabel("Action").Text = "Updating"; txtTermValue.Text = tt.Value; hlCreator.Text = tt.User.FullName; hlCreator.NavigateUrl = "mailto:" + UITools.GetDisplayEmail(tt.User.Email) + Server.HtmlEncode("?subject=TermTranslation");; lbOrganization.Text = tt.User.OrgName; lbCreatedOn.Text = SessionState.User.FormatUtcDate(tt.ModifyDate.Value, true, SessionState.User.FormatDate + ' ' + SessionState.User.FormatTime); UITools.ShowToolBarButton(uwToolbar, "Delete"); UITools.ShowToolBarSeparator(uwToolbar, "SepDelete"); #endregion } } } else { Response.Write("<script>alert('An error occurred when retrieving translation term [" + Request["t"] + "]' );window.close();</script>"); Response.End(); } } } } catch (Exception ex) { Response.Write("<script>alert('An error occurred when retrieving translation term:" + ex.Message + " [" + Request["t"] + "]' );window.close();</script>"); Response.End(); } } }