void EditForm_OnAfterSave(object sender, EventArgs e)
    {
        elementInfo = (UIElementInfo)EditForm.EditedObject;

        if (refreshTree)
        {
            RefreshTree();
        }

        // When template was changed, delete all adhoc templates assigned to current UI element (if adhoc template is not assigned).
        bool templateChanged = ValidationHelper.GetBoolean(EditForm.FieldControls["ElementPageTemplateID"].GetValue("TemplateChanged"), false);

        if (templateChanged)
        {
            bool delete = true;
            if (elementInfo.ElementType == UIElementTypeEnum.PageTemplate)
            {
                PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(elementInfo.ElementPageTemplateID);

                // Ad hoc template is assigned, do not delete
                if ((pti != null) && !pti.IsReusable)
                {
                    delete = false;
                }
            }

            if (delete)
            {
                PageTemplateInfoProvider.DeleteAdHocTemplates(elementInfo.ElementGUID);
            }
        }
    }
Esempio n. 2
0
    protected void btnDeleteElem_Click(object sender, EventArgs e)
    {
        GetHiddenValue();
        if ((ElementId > 0) && (ElementInfo.ElementParentID > 0))
        {
            ResourceInfo ri = ResourceInfoProvider.GetResourceInfo(ElementInfo.ElementResourceID);
            if ((ri != null) && !ri.ResourceIsInDevelopment)
            {
                ShowError(GetString("module.action.resourcenotindevelopment"));
                return;
            }

            // Delete all ad hoc templates for given ui element
            UIElementInfo ui = UIElementInfoProvider.GetUIElementInfo(ElementId);
            if (ui != null)
            {
                PageTemplateInfoProvider.DeleteAdHocTemplates(ui.ElementGUID);
            }

            UIElementInfoProvider.DeleteUIElementInfo(ElementId);
            AfterAction("delete", ElementInfo.ElementParentID);
        }
    }