Björn Olsson
Nov 22, 2011
  3359
(1 votes)

Quick Publishing bug (page guides)

I noticed that the edit-panel-iframe overflows the body with about 40px, when creating a page using page guides. This prevents the browser from displaying the last 40px of the iframe-content (in my case, two dropdown properties). You’ll not notice anything as long as all properties is visible without scrolling. This can be reproduced in both IE and FF.

Capture1

I also noticed that quick-edit and “quick-create” (right-click –> new page) was working as expected, every property is visible, since your able to scroll down to the bottom without any overflow. I had to resolve this issue, since page guides is important in this project. So i did some browsing in the reflector as usual, and found out the following:

The page guides uses a masterpage called PageGuide.Master:

<%@ Register TagPrefix="EPiServerEdit" TagName="EditFrameworkHeader" Src="EditFrameworkHeader.ascx"%>
<asp:Content ID="Content1" ContentPlaceHolderID="FullRegion" runat="server">
    <div>
        <EPiServerEdit:EditFrameworkHeader runat="server" MenuSelectionPath=""/>
    </div>
    <div>
        <EPiServerUI:SystemIFrame ID="SystemIFrame1" runat="server" AutoAppendQueryString="true" SourceFile="EditPanel.aspx" Name="EditPanel" />
    </div>
</asp:Content>

The other modes is using QuickEdit.master

<%@ Register TagPrefix="EPiServerEdit" TagName="EditFrameworkHeader" Src="EditFrameworkHeader.ascx"%>
<asp:Content ContentPlaceHolderID="FullRegion" runat="server">
    <table cellpadding="0" cellspacing="0" width="100%" height="100%">
        <tr>
            <td style="height: 4.4em;">
                <EPiServerEdit:EditFrameworkHeader runat="server" />
            </td>
        </tr>
        <tr>
            <td>
                <EPiServerUI:SystemIFrame ID="SystemIFrame1" runat="server" AutoAppendQueryString="true" SourceFile="EditPanel.aspx" Name="EditPanel" />
            </td>
        </tr>
    </table>
</asp:Content>

The only thing that differs in these two master pages is the wrapping table in the markup. The inherited classes doesn’t contain any logic. So I basically just replaced the markup in PageGuide.master with the markup from QuickEdit.master, and everything ended up working as expected. I hope this will be resolved in the next release of EPiServer CMS, but this is a easy hotfix. I haven’t discovered any problems with this hack so far. You could probably use a virtual path mapping if you don’t won’t to change the “original” master page for the whole server, as i did.

Nov 22, 2011

Comments

Please login to comment.
Latest blogs
Copy Optimizely SaaS CMS Settings to ENV Format Via Bookmarklet

Do you work with multiple Optimizely SaaS CMS instances? Use a bookmarklet to automatically copy them to your clipboard, ready to paste into your e...

Daniel Isaacs | Dec 22, 2024 | Syndicated blog

Increase timeout for long running SQL queries using SQL addon

Learn how to increase the timeout for long running SQL queries using the SQL addon.

Tomas Hensrud Gulla | Dec 20, 2024 | Syndicated blog

Overriding the help text for the Name property in Optimizely CMS

I recently received a question about how to override the Help text for the built-in Name property in Optimizely CMS, so I decided to document my...

Tomas Hensrud Gulla | Dec 20, 2024 | Syndicated blog

Resize Images on the Fly with Optimizely DXP's New CDN Feature

With the latest release, you can now resize images on demand using the Content Delivery Network (CDN). This means no more storing multiple versions...

Satata Satez | Dec 19, 2024