Esempio n. 1
0
    /// <summary>
    /// Gets and updates page template. Called when the "Get and update template" button is pressed.
    /// Expects the CreatePageTemplate method to be run first.
    /// </summary>
    private bool GetAndUpdatePageTemplate()
    {
        // Get the page template
        PageTemplateInfo updateTemplate = PageTemplateInfoProvider.GetPageTemplateInfo("MyNewTemplate");

        if (updateTemplate != null)
        {
            // Update the properties
            updateTemplate.DisplayName = updateTemplate.DisplayName.ToLower();

            // Save the changes
            PageTemplateInfoProvider.SetPageTemplateInfo(updateTemplate);

            return(true);
        }

        return(false);
    }
Esempio n. 2
0
    /// <summary>
    /// Handles the Load event of the Page control.
    /// </summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        lblTemplateHeader.Text = GetString("pagetemplate_header.addheader");
        btnOk.Text             = GetString("General.OK");

        // Get page template id from url
        templateId = QueryHelper.GetInteger("templateid", 0);

        if (!RequestHelper.IsPostBack())
        {
            // Load data to form
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if (pti != null)
            {
                txtTemplateHeader.Text = pti.PageTemplateHeader;
            }
        }
    }
Esempio n. 3
0
    /// <summary>
    /// Adds page template to site. Called when the "Add template to site" button is pressed.
    /// Expects the CreatePageTemplate method to be run first.
    /// </summary>
    private bool AddPageTemplateToSite()
    {
        // Get the page template
        PageTemplateInfo template = PageTemplateInfoProvider.GetPageTemplateInfo("MyNewTemplate");

        if (template != null)
        {
            int templateId = template.PageTemplateId;
            int siteId     = SiteContext.CurrentSiteID;

            // Save the binding
            PageTemplateSiteInfoProvider.AddPageTemplateToSite(templateId, siteId);

            return(true);
        }

        return(false);
    }
    private void EnsureAdHocTemplate(DocumentManagerEventArgs e)
    {
        var pti = PageTemplateInfoProvider.GetPageTemplateInfo(formElem.DefaultPageTemplateID);

        // Ensure ad-hoc template as default
        if ((pti != null) && pti.IsReusable && pti.PageTemplateCloneAsAdHoc)
        {
            // Create ad-hoc template (display name is created automatically)
            var adHocTemplate = PageTemplateInfoProvider.CloneTemplateAsAdHoc(pti, null, SiteContext.CurrentSiteID, e.Node.NodeGUID);
            PageTemplateInfoProvider.SetPageTemplateInfo(adHocTemplate);
            formElem.DefaultPageTemplateID = adHocTemplate.PageTemplateId;

            if (SiteContext.CurrentSite != null)
            {
                PageTemplateInfoProvider.AddPageTemplateToSite(adHocTemplate.PageTemplateId, SiteContext.CurrentSiteID);
            }
        }
    }
Esempio n. 5
0
    protected void Page_Load(object sender, EventArgs e)
    {
        pageTemplateId = QueryHelper.GetInteger("templateid", 0);
        if (pageTemplateId > 0)
        {
            pt = PageTemplateInfoProvider.GetPageTemplateInfo(pageTemplateId);
        }

        bool keep = QueryHelper.GetBoolean("assign", true);

        if (!keep)
        {
            chkKeep.Enabled = false;
            chkKeep.Checked = false;
        }

        // Check the authorization per UI element
        CurrentUserInfo currentUser = CMSContext.CurrentUser;

        if (!currentUser.IsAuthorizedPerUIElement("CMS.Content", new string[] { "Properties", "Properties.Template", "Template.SaveAsNew" }, CMSContext.CurrentSiteName))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Properties;Properties.Template;Template.SaveAsNew");
        }

        CurrentMaster.Title.TitleText  = GetString("PortalEngine.SaveNewPageTemplate.PageTitle");
        CurrentMaster.Title.TitleImage = GetImageUrl("CMSModules/CMS_Content/Template/save.png");

        btnOk.Text     = GetString("general.ok");
        btnCancel.Text = GetString("general.cancel");

        // Preset category
        if (!RequestHelper.IsPostBack())
        {
            if (pt != null)
            {
                categorySelector.Value = pt.CategoryID.ToString();
                if (pt.IsReusable)
                {
                    plcKeep.Visible = false;
                }
            }
        }
    }
    /// <summary>
    /// PreInit event handler
    /// </summary>
    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);

        // When displaying an existing variant of a web part, get the variant mode for its original web part
        if ((variantId > 0) || (zoneVariantId > 0))
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if ((pti != null) && ((pti.TemplateInstance != null)))
            {
                // Get the original webpart and retrieve its variant mode
                WebPartInstance webpartInstance = pti.TemplateInstance.GetWebPart(instanceGuid, zoneVariantId, 0);
                if (webpartInstance != null)
                {
                    variantMode = webpartInstance.VariantMode;
                }
            }
        }
    }
Esempio n. 7
0
    /// <summary>
    /// Init event handler.
    /// </summary>
    protected override void OnInit(EventArgs e)
    {
        // When displaying an existing variant of a zone, get the variant mode for its original zone
        if (variantId > 0)
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if ((pti != null) && ((pti.TemplateInstance != null)))
            {
                // Get the original zone and retrieve its variant mode
                WebPartZoneInstance zoneInstance = pti.TemplateInstance.GetZone(zoneId);
                if ((zoneInstance != null) && (zoneInstance.VariantMode != VariantModeEnum.None))
                {
                    variantMode = zoneInstance.VariantMode;
                }
            }
        }

        base.OnInit(e);
    }
Esempio n. 8
0
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);

        dialog = (QueryHelper.GetBoolean("dialog", false) || QueryHelper.GetBoolean("isindialog", false));

        lblTemplateHeader.Text = GetString("pagetemplate_header.addheader");

        pnlObjectLocking.ObjectManager.OnSaveData    += ObjectManager_OnSaveData;
        pnlObjectLocking.ObjectManager.OnAfterAction += ObjectManager_OnAfterAction;

        pti = PageTemplateInfoProvider.GetPageTemplateInfo(PageTemplateID);
        UIContext.EditedObject = pti;

        if (!RequestHelper.IsPostBack())
        {
            // Load data to form
            LoadData();
        }
    }
Esempio n. 9
0
    /// <summary>
    /// Removes page template from site. Called when the "Remove template from site" button is pressed.
    /// Expects the AddPageTemplateToSite method to be run first.
    /// </summary>
    private bool RemovePageTemplateFromSite()
    {
        // Get the page template
        PageTemplateInfo removeTemplate = PageTemplateInfoProvider.GetPageTemplateInfo("MyNewTemplate");

        if (removeTemplate != null)
        {
            int siteId = CMSContext.CurrentSiteID;

            // Get the binding
            PageTemplateSiteInfo templateSite = PageTemplateSiteInfoProvider.GetPageTemplateSiteInfo(removeTemplate.PageTemplateId, siteId);

            // Delete the binding
            PageTemplateSiteInfoProvider.DeletePageTemplateSiteInfo(templateSite);

            return(true);
        }

        return(false);
    }
Esempio n. 10
0
    /// <summary>
    /// Page load.
    /// </summary>
    protected void Page_Load(object sender, EventArgs e)
    {
        // Initialize controls.
        lblWarning.Text  = GetString("PageTemplate_WebParts.Warning");
        lblWPConfig.Text = GetString("PageTemplate_WebParts.WebPartsConfiguration");
        btnOk.Text       = GetString("General.OK");

        // Get 'templateid' from querystring.
        templateId = QueryHelper.GetInteger("templateId", 0);

        if (!RequestHelper.IsPostBack())
        {
            // Get PageTemplateInfo of specified 'templateid'.
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if (pti != null)
            {
                txtWebParts.Text = HTMLHelper.ReformatHTML(pti.WebParts, "  ");
            }
        }
    }
    /// <summary>
    /// Returns template name of parent node.
    /// </summary>
    private string GetParentNodePageTemplate()
    {
        TreeProvider tree = new TreeProvider(CMSContext.CurrentUser);
        TreeNode     node = tree.SelectSingleNode(ParentNodeID, CMSContext.PreferredCultureCode, tree.CombineWithDefaultCulture, false);

        if (node != null)
        {
            string colName = node.GetUsedPageTemplateIdColumn();

            int  templateId = ValidationHelper.GetInteger(node.GetValue(colName), 0);
            bool inherited  = false;

            // May be inherited template
            if ((templateId == 0) && (node.NodeParentID > 0))
            {
                // Get inherited page template
                object currentPageTemplateId = node.GetValue(colName);
                node.SetValue(colName, DBNull.Value);
                node.LoadInheritedValues(new string[] { colName }, false);
                templateId = ValidationHelper.GetInteger(node.GetValue(colName), 0);
                node.SetValue(colName, currentPageTemplateId);
                inherited = true;
            }

            if (templateId > 0)
            {
                PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
                if (pti != null)
                {
                    string templateName = pti.DisplayName;
                    if (inherited)
                    {
                        templateName += " (inherited)";
                    }
                    return(templateName);
                }
            }
        }

        return(String.Empty);
    }
Esempio n. 12
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // Setup the filesystem browser
        int templateId = QueryHelper.GetInteger("templateid", 0);

        if (templateId > 0)
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            EditedObject = pti;

            if (pti != null)
            {
                // Ensure the theme folder
                themeElem.Path = pti.GetThemePath();
            }
        }
        else
        {
            EditedObject = null;
        }
    }
Esempio n. 13
0
    /// <summary>
    /// PreInit event handler.
    /// </summary>
    protected override void OnPreInit(EventArgs e)
    {
        base.OnPreInit(e);

        // Init the page components
        PageManager = manPortal;
        manPortal.SetMainPagePlaceholder(plc);

        int pageTemplateId = QueryHelper.GetInteger("templateid", 0);

        UIContext.EditedObject = PageTemplateInfoProvider.GetPageTemplateInfo(pageTemplateId);

        DocumentContext.CurrentPageInfo = PageInfoProvider.GetVirtualPageInfo(pageTemplateId);

        // Set the design mode
        PortalContext.SetRequestViewMode(ViewModeEnum.Design);
        RequestStockHelper.Add(CookieName.DisplayContentInDesignMode, "0", true);

        ManagersContainer    = plcManagers;
        ScriptManagerControl = manScript;
    }
 /// <summary>
 /// Get the Campaign Products Tempalte ID
 /// </summary>
 /// <returns>TemplateID</returns>
 public static int DocumentPageTemplate()
 {
     try
     {
         string templteName      = DIContainer.Resolve <IKenticoResourceService>().GetSettingsKey("KDA_CampaignProductsTemplateName");
         var    pageTemplateInfo = PageTemplateInfoProvider.GetPageTemplateInfo(templteName);
         if (!DataHelper.DataSourceIsEmpty(pageTemplateInfo))
         {
             return(pageTemplateInfo.PageTemplateId);
         }
         else
         {
             return(default(int));
         }
     }
     catch (Exception ex)
     {
         EventLogProvider.LogInformation("Get DocumentPage Tempate", "DocumentPageTemplate", ex.Message);
         return(default(int));;
     }
 }
Esempio n. 15
0
    protected void Page_Load(object sender, EventArgs e)
    {
        // Setup the filesystem browser
        int templateId = QueryHelper.GetInteger("templateid", 0);

        if (templateId > 0)
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            EditedObject = pti;

            if (pti != null)
            {
                // Ensure the theme folder
                themeElem.Path = "~/App_Themes/Components/PageTemplates/" + ValidationHelper.GetSafeFileName(pti.CodeName);
            }
        }
        else
        {
            EditedObject = null;
        }
    }
Esempio n. 16
0
    /// <summary>
    /// Handles the Click event of the btnOK control.
    /// </summary>
    protected void btnOK_Click(object sender, EventArgs e)
    {
        PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);

        if (pti != null)
        {
            pti.PageTemplateHeader = txtTemplateHeader.Text.Trim();
            try
            {
                // Save changes
                PageTemplateInfoProvider.SetPageTemplateInfo(pti);
                lblInfo.Text    = GetString("General.ChangesSaved");
                lblInfo.Visible = true;
            }
            catch (Exception ex)
            {
                lblError.Text    = ex.Message;
                lblError.Visible = true;
            }
        }
    }
Esempio n. 17
0
    protected void Page_Load(object sender, EventArgs e)
    {
        currentUser = CMSContext.CurrentUser;

        // Get current page template ID
        mPageTemplateId = QueryHelper.GetInteger("templateid", 0);
        pti             = PageTemplateInfoProvider.GetPageTemplateInfo(mPageTemplateId);
        if (pti != null)
        {
            if (pti.IsReusable)
            {
                filterDocuments.LoadSites = true;
            }
            else
            {
                filterDocuments.SitesPlaceHolder.Visible = false;
            }
        }
        docElem.UniGrid.OnBeforeDataReload += new OnBeforeDataReload(UniGrid_OnBeforeDataReload);
        docElem.UniGrid.OnAfterDataReload  += new OnAfterDataReload(UniGrid_OnAfterDataReload);

        string site = null;

        // Site selector is available for global admin
        if (currentUser.IsGlobalAdministrator)
        {
            site = filterDocuments.SelectedSite;
        }
        else
        {
            site = CMSContext.CurrentSiteName;
        }

        // For ad-hoc templates use all sites
        if (!pti.IsReusable)
        {
            site = TreeProvider.ALL_SITES;
        }
        docElem.SiteName = site;
    }
Esempio n. 18
0
    protected void Page_Load(object sender, EventArgs e)
    {
        pageTemplateId = QueryHelper.GetInteger("templateid", 0);
        if (pageTemplateId > 0)
        {
            pt = PageTemplateInfoProvider.GetPageTemplateInfo(pageTemplateId);
        }

        categorySelector.StartingPath = QueryHelper.GetString("startingpath", String.Empty);

        bool keep = QueryHelper.GetBoolean("assign", true);

        if (!keep)
        {
            chkKeep.Enabled = false;
            chkKeep.Checked = false;
        }

        // Check the authorization per UI element
        var currentUser = MembershipContext.AuthenticatedUser;

        if (!currentUser.IsAuthorizedPerUIElement("CMS.Content", new[] { "Properties", "Properties.Template", "Template.SaveAsNew" }, SiteContext.CurrentSiteName))
        {
            RedirectToUIElementAccessDenied("CMS.Content", "Properties;Properties.Template;Template.SaveAsNew");
        }

        PageTitle.TitleText = GetString("PortalEngine.SaveNewPageTemplate.PageTitle");
        // Preset category
        if (!RequestHelper.IsPostBack())
        {
            if (pt != null)
            {
                categorySelector.Value = pt.CategoryID.ToString();
                if (pt.IsReusable)
                {
                    plcKeep.Visible = false;
                }
            }
        }
    }
Esempio n. 19
0
    /// <summary>
    /// PreInit event handler
    /// </summary>
    protected override void OnPreInit(EventArgs e)
    {
        deviceProfile = CMSContext.CurrentDeviceProfile;
        templateId    = QueryHelper.GetInteger("templateid", 0);
        pti           = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);

        dialogMode = QueryHelper.GetBoolean("dialogmode", false);
        tabMode    = QueryHelper.GetBoolean("tabmode", false);

        // Page template dialog in CMS Desk
        if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Content", "Design.EditLayout"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Design.EditLayout");
        }

        if (dialogMode)
        {
            // Set proper master page for dialog mode
            MasterPageFile = "~/CMSMasterPages/UI/Dialogs/ModalSimplePage.master";

            if (!tabMode)
            {
                CurrentMaster.Title.TitleText        = GetTitleText();
                CurrentMaster.Title.TitleImage       = GetImageUrl("Objects/CMS_Layout/object.png");
                CurrentMaster.Title.TitleInformation = GetTitleInformation();

                CurrentMaster.Title.HelpTopicName = "CMS_Design_page_layout";
                CurrentMaster.Title.HelpName      = "helpTopic";
            }
        }

        int layoutId          = QueryHelper.GetInteger("layoutid", 0);
        int newSharedLayoutId = QueryHelper.GetInteger("newshared", -1);
        int oldSharedLayoutId = QueryHelper.GetInteger("oldshared", -1);
        int deviceProfileId   = (deviceProfile != null) ? deviceProfile.ProfileID : 0;

        CMSContext.EditedObject = GetEditedObject(templateId, layoutId, newSharedLayoutId, oldSharedLayoutId, deviceProfileId);

        base.OnPreInit(e);
    }
Esempio n. 20
0
    /// <summary>
    /// Creates blog. Called when the "Create blog" button is pressed.
    /// </summary>
    private bool CreateBlog()
    {
        TreeProvider tree = new TreeProvider(CMSContext.CurrentUser);

        // Get root document
        TreeNode root = tree.SelectSingleNode(CMSContext.CurrentSiteName, "/", null, true);

        if (root != null)
        {
            // Create a new document node
            TreeNode node = TreeNode.New("CMS.Blog", tree);

            // Set values
            node.DocumentName    = "MyNewBlog";
            node.DocumentCulture = CMSContext.PreferredCultureCode;
            node.SetValue("BlogName", "MyNewBlog");
            node.SetValue("BlogDescription", "My blog description");
            node.SetValue("BlogOpenCommentsFor", "##ALL##");
            node.SetValue("BlogAllowAnonymousComments", "true");
            node.SetValue("BlogModerateComments", "");
            node.SetValue("BlogOpenCommentsFor", "");
            node.SetValue("BlogUseCAPTCHAForComments", "");
            node.SetValue("BlogEnableSubscriptions", "true");

            // Get blog page template
            PageTemplateInfo pageTemplate = PageTemplateInfoProvider.GetPageTemplateInfo("cms.blog");
            if (pageTemplate != null)
            {
                node.DocumentPageTemplateID = pageTemplate.PageTemplateId;
            }

            // Create the blog
            DocumentHelper.InsertDocument(node, root.NodeID, tree);

            return(true);
        }

        return(false);
    }
Esempio n. 21
0
    /// <summary>
    /// Save layout.
    /// </summary>
    public bool SaveLayout()
    {
        PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);

        if (pti != null)
        {
            if (radShared.Checked)
            {
                // Shared layout
                pnlCheckOutInfo.Visible = false;
                pti.LayoutID            = ValidationHelper.GetInteger(selectShared.Value, 0);
                pti.PageTemplateLayout  = "";
                pti.PageTemplateCSS     = "";
            }
            else
            {
                LayoutTypeEnum layoutType = LayoutInfoProvider.GetLayoutTypeEnum(this.drpType.SelectedValue);

                if ((layoutType != LayoutTypeEnum.Ascx) || user.IsAuthorizedPerResource("CMS.Design", "EditCode"))
                {
                    // Custom layout
                    pnlCheckOutInfo.Visible    = true;
                    pti.LayoutID               = 0;
                    pti.PageTemplateLayoutType = layoutType;
                    pti.PageTemplateLayout     = txtCustom.Text;
                    pti.PageTemplateCSS        = txtCustomCSS.Text;
                }
            }

            PageTemplateInfoProvider.SetPageTemplateInfo(pti);

            lblInfo.Visible = true;
            lblInfo.Text    = GetString("General.ChangesSaved");

            return(true);
        }

        return(false);
    }
Esempio n. 22
0
    protected void Page_Load(object sender, EventArgs e)
    {
        pageTemplateId = QueryHelper.GetInteger("templateid", 0);
        if (pageTemplateId > 0)
        {
            pt = PageTemplateInfoProvider.GetPageTemplateInfo(pageTemplateId);
        }

        // Check the authorization per UI element
        CurrentUserInfo currentUser = CMSContext.CurrentUser;

        if (!currentUser.IsAuthorizedPerUIElement("CMS.Content", new string[] { "Properties", "Properties.Template", "Template.SaveAsNew" }, CMSContext.CurrentSiteName))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "Properties;Properties.Template;Template.SaveAsNew");
        }

        CurrentMaster.Title.TitleText  = GetString("PortalEngine.SaveNewPageTemplate.PageTitle");
        CurrentMaster.Title.TitleImage = GetImageUrl("CMSModules/CMS_Content/Template/save.png");

        lblTemplateDisplayName.Text = GetString("PortalEngine.SaveNewPageTemplate.DisplayName");
        lblTemplateDescription.Text = GetString("PortalEngine.SaveNewPageTemplate.Description");
        lblTemplateCategory.Text    = GetString("PortalEngine.SaveNewPageTemplate.Category");
        lblTemplateCodeName.Text    = GetString("PortalEngine.SaveNewPageTemplate.CodeName");

        btnOk.Text     = GetString("general.ok");
        btnCancel.Text = GetString("general.cancel");

        rfvTemplateDisplayName.ErrorMessage = GetString("PortalEngine.SaveNewPageTemplate.rfvDisplayNameMsg");
        rfvTemplateCodeName.ErrorMessage    = GetString("PortalEngine.SaveNewPageTemplate.rfvCodeNameMsg");

        // Preset category
        if (!RequestHelper.IsPostBack())
        {
            if (pt != null)
            {
                categorySelector.Value = pt.CategoryID.ToString();
            }
        }
    }
    /// <summary>
    /// Init event handler.
    /// </summary>
    protected override void OnInit(EventArgs e)
    {
        // When displaying an existing variant of a zone, get the variant mode for its original zone
        if (variantId > 0)
        {
            PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
            if ((pti != null) && ((pti.TemplateInstance != null)))
            {
                // Get the original zone and retrieve its variant mode
                WebPartZoneInstance zoneInstance = pti.TemplateInstance.GetZone(zoneId);
                if ((zoneInstance != null) && (zoneInstance.VariantMode != VariantModeEnum.None))
                {
                    variantMode = zoneInstance.VariantMode;
                }
            }
        }

        if (variantMode == VariantModeEnum.MVT)
        {
            // Display MVT edit dialog
            mvtEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(MVTVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            mvtEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PageTemplateInfo.OBJECT_TYPE, QueryHelper.GetInteger("templateid", 0));
            mvtEditElem.Visible = true;
            mvtEditElem.UIFormControl.SubmitButton.Visible = false;
            mvtEditElem.UIFormControl.ReloadData();
        }
        else if (variantMode == VariantModeEnum.ContentPersonalization)
        {
            // Display Content personalization edit dialog
            cpEditElem.UIFormControl.EditedObject = BaseAbstractInfoProvider.GetInfoById(ContentPersonalizationVariantInfo.OBJECT_TYPE, QueryHelper.GetInteger("variantid", 0));
            cpEditElem.UIFormControl.ParentObject = BaseAbstractInfoProvider.GetInfoById(PageTemplateInfo.OBJECT_TYPE, QueryHelper.GetInteger("templateid", 0));
            cpEditElem.Visible = true;
            cpEditElem.UIFormControl.SubmitButton.Visible = false;
            cpEditElem.UIFormControl.ReloadData();
        }

        base.OnInit(e);
    }
Esempio n. 24
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (RequestHelper.IsPostBack())
        {
            int currentId = ValidationHelper.GetInteger(this.hdnTemplateCode.Value, 0);
            pti = PageTemplateInfoProvider.GetPageTemplateInfo(currentId);
        }

        ScriptHelper.RegisterDialogScript(this.Page);
        WindowHelper.Add("ShowOnlySiteTemplates", ShowOnlySiteTemplates);

        ScriptHelper.RegisterClientScriptBlock(this, typeof(string), "SelectTemplate", ScriptHelper.GetScript(
                                                   "function OpenSelectTemplateDialog (selectorId){modalDialog('" + ResolveUrl("~/CMSModules/PortalEngine/UI/Layout/PageTemplateSelector.aspx") + "?selectorid=' + selectorId + '&selectedPageTemplateId=' + document.getElementById(selectorId + '_hdnTemplateCode').value, 'PageTemplateSelection', '90%', '85%'); return false;} \n" +
                                                   "function OnSelectPageTemplate(templateID, templateName, selectorId) { if (document.getElementById(selectorId + '_txtTemplate') != null) document.getElementById(selectorId + '_txtTemplate').value = templateName; if (document.getElementById(selectorId + '_hdnTemplateCode') != null) document.getElementById(selectorId + '_hdnTemplateCode').value = templateID; if ((templateName != null)&&(templateName != '')) setTimeout('BTN_Enable(\"' + selectorId + '_btnClear\");', 0);} \n" +
                                                   "function ClearTemplate(selectorId) { document.getElementById(selectorId + '_txtTemplate').value = ''; document.getElementById(selectorId + '_hdnTemplateCode').value = 0; return false;} \n"
                                                   ));

        btnSelect.OnClientClick = "return OpenSelectTemplateDialog('" + this.ClientID + "');";
        btnClear.Attributes.Add("onclick", "return ClearTemplate('" + this.ClientID + "');");

        btnSelect.Text = GetString("general.select");
        btnClear.Text  = GetString("general.clear");
    }
Esempio n. 25
0
    protected void btnInherit_Click(object sender, EventArgs e)
    {
        int pageTemplateId = 0;

        if ((node != null) && (node.NodeParentID > 0))
        {
            // Get inherited page template
            object currentPageTemplateId = node.GetValue("DocumentPageTemplateID");
            node.SetValue("DocumentPageTemplateID", DBNull.Value);
            node.LoadInheritedValues(new string[] { "DocumentPageTemplateID" }, false);
            pageTemplateId = ValidationHelper.GetInteger(node.GetValue("DocumentPageTemplateID"), 0);
            node.SetValue("DocumentPageTemplateID", currentPageTemplateId);
        }

        if (pageTemplateId > 0)
        {
            // Get the page template
            PageTemplateInfo pt = PageTemplateInfoProvider.GetPageTemplateInfo(pageTemplateId);
            if (pt != null)
            {
                txtTemplate.Text     = pt.DisplayName + " (inherited)";
                ltlScript.Text      += ScriptHelper.GetScript("pressedInherit(" + pageTemplateId + "); ShowButtons(" + pt.IsPortal.ToString().ToLower() + ", " + pt.IsReusable.ToString().ToLower() + ");");
                btnSaveOnClickScript = "modalDialog('" + ResolveUrl(PORTALENGINE_UI_LAYOUTPATH + "SaveNewPageTemplate.aspx") + "?templateid=' + document.getElementById('InheritedTemplateId').value + '&siteid=" + siteid + "', 'SaveNewTemplate', 480, 360);return false;";
            }
        }
        else
        {
            txtTemplate.Text = "";
            ltlScript.Text  += ScriptHelper.GetScript("pressedInherit(" + pageTemplateId + "); ShowButtons(false, false); ");
        }

        if (sender != null)
        {
            // Log the synchronization
            DocumentSynchronizationHelper.LogDocumentChange(node, TaskTypeEnum.UpdateDocument, tree);
        }
    }
Esempio n. 26
0
    /// <summary>
    /// Returns template name of parent node.
    /// </summary>
    private string GetParentNodePageTemplate()
    {
        TreeProvider tree = new TreeProvider(MembershipContext.AuthenticatedUser);
        TreeNode     node = tree.SelectSingleNode(ParentNodeID, LocalizationContext.PreferredCultureCode, tree.CombineWithDefaultCulture, false);

        if (node != null)
        {
            string colName = node.GetUsedPageTemplateIdColumn();

            int  templateId = ValidationHelper.GetInteger(node.GetValue(colName), 0);
            bool inherited  = false;

            // May be inherited template
            if ((templateId == 0) && (node.NodeParentID > 0))
            {
                // Get inherited page template
                templateId = ValidationHelper.GetInteger(node.GetInheritedValue(colName, node.NodeTemplateForAllCultures), 0);
                inherited  = true;
            }

            if (templateId > 0)
            {
                PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
                if (pti != null)
                {
                    string templateName = pti.DisplayName;
                    if (inherited)
                    {
                        templateName += " (inherited)";
                    }
                    return(templateName);
                }
            }
        }

        return(String.Empty);
    }
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);

        dialog = (QueryHelper.GetBoolean("dialog", false) || QueryHelper.GetBoolean("isindialog", false));

        // Initialize controls.
        ShowWarning(GetString("PageTemplate_WebParts.Warning"));
        lblWPConfig.Text = GetString("PageTemplate_WebParts.WebPartsConfiguration");

        // Get 'templateid' from querystring.
        templateId = QueryHelper.GetInteger("templateId", 0);

        pnlObjectLocking.ObjectManager.OnSaveData    += ObjectManager_OnSaveData;
        pnlObjectLocking.ObjectManager.OnAfterAction += ObjectManager_OnAfterAction;

        pti          = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
        EditedObject = pti;

        if (!RequestHelper.IsPostBack())
        {
            LoadData();
        }
    }
Esempio n. 28
0
    /// <summary>
    /// Reloads the controls on the page to the appropriate state
    /// </summary>
    protected void ReloadControls()
    {
        TreeNode node = DocumentManager.Node;

        if (node.NodeAliasPath == "/")
        {
            // For root, inherit option means no page template
            radInherit.ResourceString = "Template.NoTemplate";
        }

        // Get the template ID
        int    templateId = SelectedTemplateID;
        string suffix     = null;
        bool   inherit    = radInherit.Checked;

        plcUIClone.Visible = false;
        plcUIEdit.Visible  = false;
        plcUISave.Visible  = false;

        if (inherit)
        {
            // Inherited
            selectorEnabled = false;

            // Inherit
            templateId = GetInheritedPageTemplateId(node);

            if (templateId > 0)
            {
                suffix = " " + GetString("Template.Inherited");
            }
        }
        else
        {
            // Standard selection
            selectorEnabled = true;
        }

        // Set modal dialogs
        btnSave.OnClientClick = "modalDialog('" + ResolveUrl("~/CMSModules/PortalEngine/UI/Layout/SaveNewPageTemplate.aspx") + "?startingpath=/&templateId=" + templateId + "&siteid=" + SiteContext.CurrentSiteID + "', 'SaveNewTemplate', 720, 430); return false;";

        String url = UIContextHelper.GetElementDialogUrl("cms.design", "PageTemplate.EditPageTemplate", templateId, String.Format("aliaspath={0}", node.NodeAliasPath));

        btnEditTemplateProperties.OnClientClick = "modalDialog('" + url + "', 'Template edit', '95%', '95%');return false;";

        // Load the page template name
        pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateId);
        if (pti != null)
        {
            txtTemplate.Text = ResHelper.LocalizeString(pti.DisplayName);

            plcUISave.Visible  = true;
            plcUIEdit.Visible  = (!pti.IsReusable || currentUser.IsAuthorizedPerUIElement("CMS.Content", "Template.ModifySharedTemplates"));
            plcUIClone.Visible = pti.IsReusable || inherit;
        }
        else
        {
            txtTemplate.Text = GetString("Template.SelectorNoTemplate");
        }

        txtTemplate.Text += suffix;
    }
Esempio n. 29
0
    /// <summary>
    /// Ensures dashboard initialization.
    /// </summary>
    public void SetupDashboard()
    {
        // Register placeholder for context menu
        ICMSPage page = Page as ICMSPage;

        if (page != null)
        {
            page.ContextMenuContainer = plcCtx;
        }

        if (PortalPageInstance == null)
        {
            throw new Exception("[DashboardControl.SetupDashboard] Portal page instance must be set.");
        }

        // Default settings for drag and drop for dashboard
        manPortal.HighlightDropableAreas = HighlightDropableAreas;
        manPortal.ActivateZoneBorder     = ActivateZoneBorder;

        string dashboardName = QueryHelper.GetString("DashboardName", PersonalizationInfoProvider.UNDEFINEDDASHBOARD);

        // Set culture
        CultureInfo ci = CultureHelper.PreferredUICultureInfo;

        Thread.CurrentThread.CurrentCulture   = ci;
        Thread.CurrentThread.CurrentUICulture = ci;

        // Init the page components
        PortalPageInstance.PageManager = manPortal;
        manPortal.SetMainPagePlaceholder(plc);

        string templateName = QueryHelper.GetString("templatename", String.Empty);

        PageTemplateInfo pti = PageTemplateInfoProvider.GetPageTemplateInfo(templateName);

        if (pti != null)
        {
            if (pti.PageTemplateType != PageTemplateTypeEnum.Dashboard)
            {
                RedirectToAccessDenied("dashboard.invalidpagetemplate");
            }

            // Prepare virtual page info
            PageInfo pi = PageInfoProvider.GetVirtualPageInfo(pti.PageTemplateId);
            pi.DocumentNamePath = "/" + templateName;

            CMSContext.CurrentPageInfo = pi;

            // Set the design mode
            PortalContext.SetRequestViewMode(ViewModeEnum.DashboardWidgets);
            PortalContext.DashboardName = dashboardName;
            ContextHelper.Add("DisplayContentInDesignMode", "0", true, false, false, DateTime.MinValue);

            PortalPageInstance.ManagersContainer    = plcManagers;
            PortalPageInstance.ScriptManagerControl = manScript;
        }
        else
        {
            RedirectToInformation(GetString("dashboard.notemplate"));
        }
    }
Esempio n. 30
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CurrentUserInfo user = CMSContext.CurrentUser;

        // Check UIProfile
        if (!user.IsAuthorizedPerUIElement("CMS.Content", "MasterPage"))
        {
            RedirectToCMSDeskUIElementAccessDenied("CMS.Content", "MasterPage");
        }

        // Check "Design" permission
        if (!user.IsAuthorizedPerResource("CMS.Design", "Design"))
        {
            RedirectToAccessDenied("CMS.Design", "Design");
        }

        // Register the scripts
        ScriptHelper.RegisterProgress(this.Page);

        // Register the dialog script
        ScriptHelper.RegisterDialogScript(this.Page);

        // Save button
        MenuItem saveItem = null;

        saveItem                   = new CMS.skmMenuControl.MenuItem();
        saveItem.ToolTip           = GetString("EditMenu.Save");
        saveItem.JavascriptCommand = "SaveMasterPage();";
        saveItem.ImageAltText      = saveItem.ToolTip;
        saveItem.Text              = GetString("general.save");
        saveItem.Image             = GetImageUrl("CMSModules/CMS_Content/EditMenu/save.png");
        saveItem.MouseOverImage    = saveItem.Image;
        saveItem.MouseOverCssClass = "MenuItemEdit";
        saveItem.CssClass          = "MenuItemEdit";
        menuElem.Items.Add(saveItem);

        // Get document node
        int      nodeId = QueryHelper.GetInteger("nodeid", 0);
        TreeNode node   = DocumentHelper.GetDocument(nodeId, CMSContext.PreferredCultureCode, null);

        if (node != null)
        {
            PageTemplateInfo pt = PageTemplateInfoProvider.GetPageTemplateInfo(node.DocumentPageTemplateID);
            if (pt != null)
            {
                // Edit page properties button
                MenuItem editTemplate = null;

                editTemplate                   = new CMS.skmMenuControl.MenuItem();
                editTemplate.Text              = GetString("PageProperties.EditTemplateProperties");
                editTemplate.ToolTip           = editTemplate.Text;
                editTemplate.JavascriptCommand = "modalDialog('" + ResolveUrl("~/CMSModules/PortalEngine/UI/PageTemplates/PageTemplate_Edit.aspx") + "?templateid=" + pt.PageTemplateId + "&nobreadcrumbs=1&dialog=1', 'TemplateSelection', 850, 680, false);return false;";
                editTemplate.ImageAltText      = editTemplate.Text;
                editTemplate.Image             = GetImageUrl("CMSModules/CMS_Content/Template/edit.png");
                editTemplate.MouseOverImage    = editTemplate.Image;
                editTemplate.MouseOverCssClass = "MenuItemEdit";
                editTemplate.CssClass          = "MenuItemEdit";
                menuElem.Items.Add(editTemplate);
            }
        }

        this.menuElem.Layout = CMS.skmMenuControl.MenuLayout.Horizontal;
    }