protected void Page_Load(object sender, EventArgs e) { SetPropertyTab(TAB_URLS); // Set where condition - show nothing when nodeId is zero UniGridAlias.WhereCondition = "AliasNodeID = " + NodeID; if (Node != null) { if (Node.NodeAliasPath == "/") { valAlias.Visible = false; } // Check modify permissions if ((MembershipContext.AuthenticatedUser.IsAuthorizedPerDocument(Node, NodePermissionsEnum.Modify) == AuthorizationResultEnum.Denied)) { pnlAlias.Enabled = false; menuElem.Enabled = false; UniGridAlias.GridView.Enabled = false; btnNewAlias.Enabled = false; chkCustomExtensions.Enabled = false; ctrlURL.Enabled = false; } else { ltlScript.Text = ScriptHelper.GetScript("var node = " + NodeID + "; \n var deleteMsg = '" + GetString("DocumentAlias.DeleteMsg") + "';"); UniGridAlias.OnAction += UniGridAlias_OnAction; UniGridAlias.OnExternalDataBound += UniGridAlias_OnExternalDataBound; btnNewAlias.OnClientClick = "window.location.replace('" + URLHelper.ResolveUrl("Alias_Edit.aspx?nodeid=" + NodeID) + "'); return false;"; } chkCustomExtensions.Text = GetString("GeneralProperties.UseCustomExtensions"); valAlias.ErrorMessage = GetString("GeneralProperties.RequiresAlias"); lblExtensions.Text = GetString("doc.urls.urlextensions") + ResHelper.Colon; if (!isRoot) { txtAlias.Enabled = !TreePathUtils.AutomaticallyUpdateDocumentAlias(SiteContext.CurrentSiteName); } if (!RequestHelper.IsPostBack()) { ReloadData(); } ctrlURL.AutomaticURLPath = TreePathUtils.GetUrlPathFromNamePath(Node.DocumentNamePath, Node.NodeLevel, SiteContext.CurrentSiteName); // Reflect processing action pnlPageContent.Enabled = DocumentManager.AllowSave; } }
private void DocumentManager_OnSaveData(object sender, DocumentManagerEventArgs e) { aliasChanged = false; // ALIAS group is displayed if (!pnlUIAlias.IsHidden) { if (!String.IsNullOrEmpty(txtAlias.Text.Trim()) || mIsRoot) { string nodeAlias = txtAlias.Text.Trim(); aliasChanged = (Node.NodeAlias != nodeAlias); mOldAliasPath = Node.NodeAliasPath; Node.NodeAlias = nodeAlias; } else { e.IsValid = false; e.ErrorMessage = GetString("general.errorvalidationerror"); return; } } // PATH group is displayed if (!pnlUIPath.IsHidden) { // Validate URL path if (!ctrlURL.IsValid()) { e.IsValid = false; e.ErrorMessage = ctrlURL.ValidationError; return; } aliasChanged |= (ctrlURL.URLPath != Node.DocumentUrlPath); Node.DocumentUseNamePathForUrlPath = !ctrlURL.IsCustom; Node.DocumentUrlPath = Node.DocumentUseNamePathForUrlPath ? TreePathUtils.GetUrlPathFromNamePath(Node) : TreePathUtils.GetSafeUrlPath(ctrlURL.URLPath, Node.NodeSiteName); } // EXTENDED group is displayed if (!pnlUIExtended.IsHidden) { Node.DocumentUseCustomExtensions = chkCustomExtensions.Checked; if (Node.DocumentUseCustomExtensions) { Node.DocumentExtensions = txtExtensions.Text; } } }
private void DocumentManager_OnSaveData(object sender, DocumentManagerEventArgs e) { bool aliasChanged = false; // ALIAS group is displayed if (!pnlUIAlias.IsHidden) { if (!String.IsNullOrEmpty(txtAlias.Text.Trim()) || isRoot) { string nodeAlias = txtAlias.Text.Trim(); aliasChanged = (Node.NodeAlias != nodeAlias); oldAliasPath = Node.NodeAliasPath; Node.NodeAlias = nodeAlias; } else { e.IsValid = false; e.ErrorMessage = GetString("general.errorvalidationerror"); return; } } // PATH group is displayed if (!pnlUIPath.IsHidden) { // Validate URL path if (!ctrlURL.IsValid()) { e.IsValid = false; e.ErrorMessage = ctrlURL.ValidationError; return; } aliasChanged |= (ctrlURL.URLPath != Node.DocumentUrlPath); Node.DocumentUseNamePathForUrlPath = !ctrlURL.IsCustom; if (Node.DocumentUseNamePathForUrlPath) { string urlPath = TreePathUtils.GetUrlPathFromNamePath(Node.DocumentNamePath, Node.NodeLevel, SiteContext.CurrentSiteName); Node.DocumentUrlPath = urlPath; } else { Node.DocumentUrlPath = TreePathUtils.GetSafeUrlPath(ctrlURL.URLPath, SiteContext.CurrentSiteName, true); } } if ((!pnlUIAlias.IsHidden || !pnlUIPath.IsHidden) && aliasChanged && (PortalContext.ViewMode == ViewModeEnum.EditLive)) { // Redirect the parent page to the new document alias string newAliasPath = string.Empty; if (Node.Parent != null) { newAliasPath = Node.Parent.NodeAliasPath.TrimEnd('/'); } newAliasPath += "/" + Node.NodeAlias; // Get the updated document url string url = URLHelper.ResolveUrl(DocumentURLProvider.GetUrl(newAliasPath, Node.DocumentUrlPath, Node.NodeSiteName, RequestContext.CurrentURLLangPrefix)); // Register redirect script string reloadScript = "if (parent.parent.frames['header'] != null) { parent.parent.frames['header'].reloadPageUrl =" + ScriptHelper.GetString(url) + "; }"; ScriptHelper.RegisterStartupScript(this, typeof(string), "reloadScript", reloadScript, true); } // EXTENDED group is displayed if (!pnlUIExtended.IsHidden) { Node.DocumentUseCustomExtensions = chkCustomExtensions.Checked; if (Node.DocumentUseCustomExtensions) { Node.DocumentExtensions = txtExtensions.Text; } } }
protected void Page_Load(object sender, EventArgs e) { UIContext.PropertyTab = PropertyTabEnum.URLs; // Set where condition - show nothing when nodeId is zero UniGridAlias.WhereCondition = "AliasNodeID = " + NodeID; if (Node != null) { imgNewAlias.ImageUrl = GetImageUrl("CMSModules/CMS_Content/Properties/adddocumentalias.png"); imgNewAlias.DisabledImageUrl = GetImageUrl("CMSModules/CMS_Content/Properties/adddocumentaliasdisabled.png"); if (Node.NodeAliasPath == "/") { valAlias.Visible = false; } // Check modify permissions if ((CMSContext.CurrentUser.IsAuthorizedPerDocument(Node, NodePermissionsEnum.Modify) == AuthorizationResultEnum.Denied)) { pnlAlias.Enabled = false; menuElem.Enabled = false; UniGridAlias.GridView.Enabled = false; lnkNewAlias.Disabled = true; imgNewAlias.Enabled = false; chkCustomExtensions.Enabled = false; ctrlURL.Enabled = false; } else { ltlScript.Text = ScriptHelper.GetScript("var node = " + NodeID + "; \n var deleteMsg = '" + GetString("DocumentAlias.DeleteMsg") + "';"); UniGridAlias.OnAction += UniGridAlias_OnAction; UniGridAlias.OnExternalDataBound += UniGridAlias_OnExternalDataBound; lnkNewAlias.HRef = URLHelper.ResolveUrl("Alias_Edit.aspx?nodeid=" + NodeID); } Literal ltl = new Literal(); ltl.Text = GetString("doc.urls.addnewalias"); lnkNewAlias.Controls.Add(ltl); ltl = new Literal(); ltl.Text = GetString("doc.urls.aliaslist"); lblAlias.Text = GetString("GeneralProperties.Alias"); chkCustomExtensions.Text = GetString("GeneralProperties.UseCustomExtensions"); valAlias.ErrorMessage = GetString("GeneralProperties.RequiresAlias"); lblExtensions.Text = GetString("doc.urls.urlextensions") + ResHelper.Colon; pnlURLPath.GroupingText = GetString("GeneralProperties.UrlPath"); pnlAlias.GroupingText = GetString("GeneralProperties.DocumentAlias"); pnlDocumentAlias.GroupingText = GetString("doc.urls.documentalias"); pnlExtended.GroupingText = GetString("doc.urls.extendedproperties"); if (!isRoot) { txtAlias.Enabled = !TreePathUtils.AutomaticallyUpdateDocumentAlias(CMSContext.CurrentSiteName); } if (!RequestHelper.IsPostBack()) { ReloadData(); } ctrlURL.AutomaticURLPath = TreePathUtils.GetUrlPathFromNamePath(Node.DocumentNamePath, Node.NodeLevel, CMSContext.CurrentSiteName); // Reflect processing action pnlPageContent.Enabled = DocumentManager.AllowSave; } }
protected void Page_Load(object sender, EventArgs e) { // Register the scripts ScriptHelper.RegisterProgress(Page); UIContext.PropertyTab = PropertyTabEnum.URLs; nodeId = QueryHelper.GetInteger("nodeid", 0); // Set where condition - show nothing when nodeId is zero UniGridAlias.WhereCondition = "AliasNodeID = " + nodeId; if (nodeId > 0) { // Get the node tree = new TreeProvider(CMSContext.CurrentUser); node = tree.SelectSingleNode(nodeId, CMSContext.PreferredCultureCode, false); // Redirect to page 'New culture version' in split mode. It must be before setting EditedDocument. if ((node == null) && displaySplitMode) { URLHelper.Redirect("~/CMSModules/Content/CMSDesk/New/NewCultureVersion.aspx" + URLHelper.Url.Query); } // Set edited document EditedDocument = node; if (node != null) { // Set IsRoot flag isRoot = (node.NodeClassName.ToLower() == "cms.root"); imgSave.DisabledImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/savedisabled.png"); imgSave.ImageUrl = GetImageUrl("CMSModules/CMS_Content/EditMenu/save.png"); imgNewAlias.ImageUrl = GetImageUrl("CMSModules/CMS_Content/Properties/adddocumentalias.png"); imgNewAlias.DisabledImageUrl = GetImageUrl("CMSModules/CMS_Content/Properties/adddocumentaliasdisabled.png"); if (node.NodeAliasPath == "/") { valAlias.Visible = false; } // Check read permissions if (CMSContext.CurrentUser.IsAuthorizedPerDocument(node, NodePermissionsEnum.Read) == AuthorizationResultEnum.Denied) { RedirectToAccessDenied(String.Format(GetString("cmsdesk.notauthorizedtoreaddocument"), node.NodeAliasPath)); } // Check modify permissions else if (CMSContext.CurrentUser.IsAuthorizedPerDocument(node, NodePermissionsEnum.Modify) == AuthorizationResultEnum.Denied) { UniGridAlias.GridView.Enabled = false; lnkNewAlias.Enabled = false; imgNewAlias.Enabled = false; chkCustomExtensions.Enabled = false; ctrlURL.Enabled = false; lblInfo.Visible = true; lblInfo.Text = String.Format(GetString("cmsdesk.notauthorizedtoeditdocument"), node.NodeAliasPath); // Disable save button lnkSave.Enabled = false; lnkSave.CssClass = "MenuItemEditDisabled"; } else { lblInfo.Visible = false; ltlScript.Text = ScriptHelper.GetScript("var node = " + nodeId + "; \n var deleteMsg = '" + GetString("DocumentAlias.DeleteMsg") + "';"); UniGridAlias.OnAction += UniGridAlias_OnAction; UniGridAlias.OnExternalDataBound += UniGridAlias_OnExternalDataBound; // Register Save Document script ScriptHelper.RegisterSaveShortcut(lnkSave, null, false); } lnkNewAlias.Text = GetString("doc.urls.addnewalias"); lnkNewAlias.NavigateUrl = "Alias_Edit.aspx?nodeid=" + nodeId; mSave = GetString("general.save"); lblAlias.Text = GetString("GeneralProperties.Alias"); chkCustomExtensions.Text = GetString("GeneralProperties.UseCustomExtensions"); valAlias.ErrorMessage = GetString("GeneralProperties.RequiresAlias"); lblExtensions.Text = GetString("doc.urls.urlextensions") + ResHelper.Colon; pnlURLPath.GroupingText = GetString("GeneralProperties.UrlPath"); pnlAlias.GroupingText = GetString("GeneralProperties.DocumentAlias"); pnlDocumentAlias.GroupingText = GetString("doc.urls.documentalias"); pnlExtended.GroupingText = GetString("doc.urls.extendedproperties"); if (!isRoot) { txtAlias.Enabled = !TreePathUtils.AutomaticallyUpdateDocumentAlias(CMSContext.CurrentSiteName); } if (!RequestHelper.IsPostBack()) { ReloadData(); } ctrlURL.AutomaticURLPath = TreePathUtils.GetUrlPathFromNamePath(node.DocumentNamePath, node.NodeLevel, CMSContext.CurrentSiteName); } // Register js synchronization script for split mode if (displaySplitMode) { RegisterSplitModeSync(true, false); } } }
protected void lnkSave_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(txtAlias.Text.Trim()) && !isRoot) { lblError.Visible = true; lblError.Text = GetString("general.errorvalidationerror"); } else { // Get the document if (node != null) { // Check modify permissions if (CMSContext.CurrentUser.IsAuthorizedPerDocument(node, NodePermissionsEnum.Modify) == AuthorizationResultEnum.Denied) { return; } // PATH group is displayed if (!this.pnlUIPath.IsHidden) { node.NodeAlias = txtAlias.Text.Trim(); node.DocumentUseNamePathForUrlPath = !ctrlURL.IsCustom; if (node.DocumentUseNamePathForUrlPath) { string urlPath = TreePathUtils.GetUrlPathFromNamePath(node.DocumentNamePath, node.NodeLevel, CMSContext.CurrentSiteName); node.DocumentUrlPath = urlPath; } else { node.DocumentUrlPath = TreePathUtils.GetSafeUrlPath(ctrlURL.URLPath, CMSContext.CurrentSiteName, true); } } // EXTENDED group is displayed if (!this.pnlUIExtended.IsHidden) { node.DocumentUseCustomExtensions = chkCustomExtensions.Checked; if (node.DocumentUseCustomExtensions) { node.DocumentExtensions = txtExtensions.Text; } } // Save the data node.Update(); // Update search index if ((node.PublishedVersionExists) && (SearchIndexInfoProvider.SearchEnabled)) { SearchTaskInfoProvider.CreateTask(SearchTaskTypeEnum.Update, PredefinedObjectType.DOCUMENT, SearchHelper.ID_FIELD, node.GetSearchID()); } txtAlias.Text = node.NodeAlias; // Load the URL path LoadURLPath(node); // Log synchronization DocumentSynchronizationHelper.LogDocumentChange(node, TaskTypeEnum.UpdateDocument, tree); lblInfo.Visible = true; lblInfo.Text = GetString("General.ChangesSaved"); UniGridAlias.ReloadData(); } } }