<rss version="2.0"><channel><title>burstmode.de burstmode.de - extensions for My Web Pages Starter Kit (MWPSK)</title><item><title><![CDATA[MWPSKex.#008 - Codebase updated accordingly to MWPSK V1.2.2]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=7125691b-551a-4b90-bef1-c7b1423f5798#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>A new release of MWPSK has been published as of November 26th, 2008. Have a look here: <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit/Release/ProjectReleases.aspx?ReleaseId=19890">MWPSK homepage</a>.</p>
<p>With the release of MWPSKex.#008 all changes are now available with this extended version of MWPSK that you can download from here: <a href="http://www.burstmode.de/mwpskex_downloads.aspx">burstmode.de Download page</a>.</p>
<p>These files have been updated:</p>
<ul>
    <li>/web.config</li>
    <li>/site.master</li>
    <li>/SectionControls/ContactForm.ascx</li>
    <li>/SectionControls/ContactForm.ascx.cs</li>
    <li>/SectionControls/Guestbook.ascx.cs</li>
</ul>
<p>Existing users of MWPSKex can easily update to the #008 release: Just copy the affected files from the downloadable archive over the existing #007 files. <strong>But be sure you have a backup at your hands before you begin to make any changes / updates!</strong></p>
<p>Merry Xmas and a wonderful new year for all the MWPSK/MWPSKex users out there!</p>]]></description></item><item><title><![CDATA[MWPSKex.#007 - Raimy´s HitCounter2 And 2 Blog Extensions]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=385aa3f7-7596-4064-9027-89c60cf7d323#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>MWPSKex.#007 is now available for download. Three additions have found their way into it:</p>
<ul>
    <li><strong>Raimy´s HitCounter2 EasyControl </strong>is now included. Please visit <a target="_blank" href="http://raimundo.dotnethost.at/">Raimy´s homepage </a>to read further information about it.<br />
     </li>
    <li>The "<strong>EMail On New Comment</strong>" extension for MWPSK´s default blog module will allow you to get an Email message each time somebody adds a new comment to your blog. This Email will contain the whole text of the new comment. This way you can decide instantly wether it contains information that will need rework in any way. The credentials of the default mail server will be used when sending the Email (same as for the contact form). You will be able to supply a specific recipient Email address as well as the subject line for that Email.<br />
     </li>
    <li>"<strong>Prevent New Comments</strong>" is another extension to MWPSK´s default blog module. This one will allow you to prevent users to add new comments to your blog. This can be useful when you´ll be away from your computer for a longer time (vacation or so) and you therefore cannot monitor new comments.</li>
</ul>
<p><strong>!!! Important update instructions !!!<br />
</strong>For the blog extensions to work some new settings had to be added to a blog´s configuration data. If you already have a (MWPSK default) blog and intend to update to this MWPSKex version then you´ll have to update your blog´s configuration data! This is how you can do it: After installing the complete MWPSKex.#007 package or just the desired files (see below) log in as administrator. Go to your blog, choose edit mode, edit configuration and click "Save". This way the new columns will be added to the configuration data. If you have several blogs within your website, you´ll have to repeat this for every blog!<br />
<u><em><strong>If you do not update your configuration data as described then MWPSKex will throw an exception every time somebody will try to view old comments or add a new comment.</strong></em></u></p>
<p>All of the new blog settings can be set up in a blog´s configuration data.</p>
<p>The following list enumerates all the files that had to be changed to get the Blog extensions running. HitCounter2 is an EasyControl - see <a target="_blank" href="http://raimundo.dotnethost.at/">Raimy´s homepage</a> for installation instructions if you don´t intend to use the whole MWPSKex.#007 package.</p>
<p>"EMail On New Comment" extension requires the following files to be modified (watch out for "MWPSKex.BlogEx.#001.I" comments in the source files):</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/Sections/Blog.cs</li>
    <li>http://www.burstmode.de:80//SectionControls/Blog.ascx</li>
    <li>http://www.burstmode.de:80//SectionControls/Blog.ascx.cs</li>
    <li>New resource keys: MWPSKex_BlogEx_ctl_EmailOnNewComment, MWPSKex_BlogEx_ctl_EmailRecipientOnNewComment, MWPSKex_BlogEx_ctl_EmailSubjectOnNewComment</li>
</ul>
<p>"Prevent New Comments" extension requires the following files to be modified (watch out for "MWPSKex.BlogEx.#001.II" comments in the source files):</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/Sections/Blog.cs</li>
    <li>http://www.burstmode.de:80//SectionControls/Blog.ascx</li>
    <li>http://www.burstmode.de:80//SectionControls/Blog.ascx.cs</li>
    <li>New resource keys: MWPSKex_BlogEx_ctl_PreventNewComments</li>
</ul>]]></description></item><item><title><![CDATA[MWPSKex.#006 - FCKEditor updated: new version is V2.6.3]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=689b5024-f267-421e-acff-b4f6ca6fc5c9#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>This release of MWPSKex includes all previous modifications plus the most up-to-date version of FCKEditor: V2.6.3.</p>
<p>You can download the whole project from my <a href="http://burstmode.de/mwpskex_downloads.aspx">download page</a>.</p>
<p>You can also update your installation manually: The update procedure is pretty much the same as described here: <a href="http://burstmode.de/BlogSearch.aspx?tag=MWPSKex.%23001">MWPSKex.#001</a>.</p>
<p>Have fun!</p>]]></description></item><item><title><![CDATA[Users of MWPSKex.#005 and MWPSKex.#004 please update!]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=0c3390aa-349e-4b62-9252-fb2b8f3fdb8d#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>First releases of MWPSKex.#004 and MWPSKex.#005 contained a bug, that might hit you at some point. See this discussion at codeplex:</p>
<p><a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit/Thread/View.aspx?ThreadId=28781">http://www.codeplex.com/MyWebPagesStarterKit/Thread/View.aspx?ThreadId=28781</a></p>
<p>Please update file http://www.burstmode.de:80//App_Code/Controls/TemplatedContent.cs as described in that discussion or download the complete solution again.</p>
<p>You will have to make function CreateChildControls() look like this:</p>
<p><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">protected</span></span><span style="font-size: 13px"> </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">override</span></span><span style="font-size: 13px"> </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">void</span></span><span style="font-size: 13px"> CreateChildControls()<br />
{<br />
    </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">if</span></span><span style="font-size: 13px"> (_template != </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">null</span></span><span style="font-size: 13px">)<br />
    {<br />
        </span><span style="font-size: 13px; color: #2b91af"><span style="font-size: 13px; color: #2b91af">PlaceHolder</span></span><span style="font-size: 13px"> ctl = </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">new</span></span><span style="font-size: 13px"> </span><span style="font-size: 13px; color: #2b91af"><span style="font-size: 13px; color: #2b91af">PlaceHolder</span></span><span style="font-size: 13px">();<br />
        _template.InstantiateIn(ctl);<br />
        </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">try<br />
        </span></span><span style="font-size: 13px">{<br />
            Controls.Add(ctl);<br />
        }<br />
        </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">catch<br />
        </span></span><span style="font-size: 13px">{<br />
            ctl.EnableViewState = </span><span style="font-size: 13px; color: #0000ff"><span style="font-size: 13px; color: #0000ff">false</span></span><span style="font-size: 13px">;<br />
            Controls.Add(ctl);<br />
        }<br />
    }<br />
} </span></p>]]></description></item><item><title><![CDATA[MWPSKex.#004 - "PageTheme Selector" extension]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=13ad4c4f-a3ac-494a-9505-f7f47d6d5323#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>Sometimes it can be essential to have different layout or even different overall look & feel for special pages in a website.</p>
<p>By default "<a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">My Web Pages Starter Kit</a>" (MWPSK) Version 1.2.1 offers the ability to set a theme at website level. This theme will apply to all pages forming the website.</p>
<p>With the release of MWPSKex.#004 you will be able to set the desired theme at page level. If you wish to you could assign a different theme for every single page in your site. "Theme" in that context means layout and look & feel.</p>
<p>MWPSK Version 1.2.1 ships with 16 different themes out of the box. You will be able to choose from them instantly. If you have developed your own themes you will also be able to select one of those for your page(s).</p>
<p>Take a look at the new <a href="http://burstmode.de/mwpskex_demo.aspx">MWPSKex Demo page</a>. For that page I changed the default "SwishBlue" theme to "SwishViolet". You will notice the difference ;)</p>
<p>You can download the whole project from my <a href="http://burstmode.de/mwpskex_downloads.aspx">download page</a> and use it as it comes with all the other extensions. Alternatively you can just have a look at the files that had to be modified and update your running site. Take care though if you opt to do so: you should really compare my files to yours with a tool like WinMerge (see <a href="http://burstmode.de/mwpsk_links.aspx">links page</a>). There are some other modifications in those files due to older extensions I decided to include. And of course: Always have a backup at hand prior to making any changes ;)</p>
<p>These files have been modified:</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/Controls/PageBaseClass.cs</li>
    <li>http://www.burstmode.de:80//App_Code/Controls/TemplatedContent.cs</li>
    <li>http://www.burstmode.de:80//App_Code/WebPage.cs</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx.cs</li>
</ul>
<p>Additionally in file http://www.burstmode.de:80//App_GlobalResources/StringsRes.resx take care to add these new entries:</p>
<ul>
    <li>MWPSKex_adm_Navigation_CurrentPageTheme<br />
    (fieldlabel to display currently selected page theme)</li>
    <li>MWPSKex_adm_Navigation_ResetPageTheme<br />
    (caption for reset button)</li>
</ul>
<p>Hope you have fun with that extension! Feel free to let me know how it works for you.</p>
<p>What will be up next? ... Some time ago Rickard Magnusson offered an extension he called "<a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit/Thread/View.aspx?ThreadId=20013">PageThemeAdmin</a>". At first look it seems this is much the same like my "PageTheme Selector". But there are some differences. Rickard would not change the default theme that would have been selected at website level. Instead he opted to change the underlying master file and thereby applying different SkinIDs. I like this approach too for this reason: It allows you to stay with the default theme of the website which certainly has a certain look & feel. All the CSS resources and images get served from the same set of files. No need to duplicate them. In one of the next releases of MWPSKex I will take care of something that will be based upon his PageThemeAdmin extension.</p>]]></description></item><item><title><![CDATA[MWPSKex.#005 - "Custom sidebar HTML" and "Hide from authenticated users"]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=f744f9d1-cc73-4ebd-a253-abdeaf65ccbd#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>Two more extensions come with the release of MWPSKex.#005: "Custom sidebar HTML" and "Hide from authenticated users". Both of them have been part of the <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit/WorkItem/View.aspx?WorkItemId=13162">original extension pack offered by TBPrince</a> for an older version of MWPSK.</p>
<p>I put a little work in it and got them running with my tribe of the "My Web Pages Starter Kit" cms system that is based upon version 1.2.1. (official release version of MWPSK at the time of writing)</p>
<p>The "Custom sidebar HTML" extension is a nice one: It allows you to add custom HTML fragments in the sidebar container. This custom HTML can be supplied at page-level. As an addon I extended the original code of TBPrince: with my version you will be able to add HTML above and/or below the default sidebar container. This might turn out to be useful at times. And I was able to make it work with the homepage too.<br />
To get more control over position and appearance of the HTML fragments you can define CSS classes "sidebarTopHTML" and "sidebarBottomHTML" in a file like "http://www.burstmode.de:80//App_Themes/<your_theme></your_theme>/PageLayout.css".</p>
<p>The "Hide from authenticated users" extension is pretty much the same as the original one posted by TBPrince. It will prevent pages from showing up as soon as a user has logged in. Administrators and Power-Users will still be able to see these pages. This extension can be useful for dedicated login pages for example. (One doesn´t need to see a login form anymore after the login procedure has been completed successfully.)</p>
<p>You can download MWPSKex.#005 - which is a complete project containing all modifications incorporated so far - at <a href="http://www.burstmode.de">www.burstmode.de</a>. Alternatively you can have a look at these files with a tool like WinMerge to see what has been modified:</p>
<p>To follow the "Custom sidebar HTML" extension see these files and watch out in the source files for marks "MWPSKex.#005.I":</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/WepPage.cs</li>
    <li>http://www.burstmode.de:80//App_Code/Controls/SidebarControl.cs</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx.cs</li>
    <li>You´ll also have to extend file http://www.burstmode.de:80//App_GlobalResources/StringsRes.resx. Be sure to add valid descriptions for keys "MWPSKex_adm_SidebarTopHTMLContent" and "MWPSKex_adm_SidebarBottomHTMLContent".</li>
</ul>
<p>To follow the "Hide from authenticated users" extension see these files and watch out in the source files for marks "MWPSKex.#005.II":</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/WepPage.cs</li>
    <li>http://www.burstmode.de:80//App_Code/SitemapEditor.cs</li>
    <li>http://www.burstmode.de:80//App_Code/Providers/CustomXmlSitemapProvider.cs</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx.cs</li>
    <li>You´ll also have to extend file http://www.burstmode.de:80//App_GlobalResources/StringsRes.resx. Be sure to add valid descriptions for key "MWPSKex_adm_Navigation_HideToAuthenticated".</li>
</ul>
<p>Hope you have fun with that!</p>
<p><strong>And remember to list your MWPSK website at </strong><a href="http://www.burstmode.de"><strong>www.burstmode.de</strong></a><strong> so others can get an idea of what is possible with this beautiful and leightweight open source cms system!</strong></p>]]></description></item><item><title><![CDATA[MWPSKex.#003 - "Visible in Menu" extension]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=a8489330-81ff-43ea-ba64-e0163aa96319#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p><a target="_blank" href="http://www.codeplex.com/WorkItem/View.aspx?ProjectName=MyWebPagesStarterKit&WorkItemId=11268">Rickard Magnusson</a> and <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit/WorkItem/View.aspx?WorkItemId=13162">TBPrince</a> developed a neat extension for "My Web Pages Starter Kit" (MWPSK) CMS. It allows for hiding pages from the navigation menu while it is still possible to set a direct link to those pages.</p>
<p>Since I´ll need that feature for our new company website too, I decided to add it to MWPSKex which led to it´s current release MWPSKex.#003. Take a look at the <a href="http://www.burstmode.de/mwpskex_downloads.aspx">dowload page </a>at <a href="http://www.burstmode.de/">www.burstmode.de</a>. You will find a complete solution there.</p>
<p>These files had to be modified:</p>
<ul>
    <li>http://www.burstmode.de:80//App_Code/WebPage.cs</li>
    <li>http://www.burstmode.de:80//App_Code/SitemapEditor.cs</li>
    <li>http://www.burstmode.de:80//App_Code/Providers/CustomSitemapDataSource.cs</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx</li>
    <li>http://www.burstmode.de:80//Administration/Navigation.aspx.cs</li>
</ul>
<p>Additionally in the default resource file "http://www.burstmode.de:80//App_GlobalResources/StringsRes.resx" a new key "MWPSKex_adm_Navigation_VisibleInMenu" with a value of "Visible in menu" had to be added.</p>
<p>Finally in (all) of the skin files in folder "http://www.burstmode.de:80//App_Themes/":</p>
<ul>
    <li>add this directive: Register TagPrefix="cc3" Namespace="MyWebPagesStarterKit.Providers"<!--Register TagPrefix="cc3" Namespace="MyWebPagesStarterKit.Providers"--></li>
    <li>and replace the default sitemap datasource with our custom one: cc3:CustomSiteMapDataSource runat="server" ID="menuDataSource" ShowStartingNode="false"<cc3:customsitemapdatasource id=""menuDataSource"" showstartingnode=""false"" runat=""server""></cc3:customsitemapdatasource></li>
</ul>
<p>Hope this will be useful to anybody...</p>]]></description></item><item><title><![CDATA[Show your MWPSK website!]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=4c0afbb3-a6cb-42e2-8db2-1e424e43f953#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>At <a href="http://www.burstmode.de">www.burstmode.de</a> I added a new page where webmasters can post a link to their website. This way people can get an idea of what can be done with this beautiful and leightweight open source CMS system.</p>
<p>Just use the contact form to tell me the URL you´d like to see listed there. Any additional information about your website will be very welcome!</p>
<p>I will not list any websites that contain illegal or offending content.</p>]]></description></item><item><title><![CDATA[MWPSKex.#002 - imgmap Online Image Map Editor plugged in]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=2ce34706-7519-4a97-88c4-609472624065#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>With this release of MWPSKex the fabulous FCKEditor plugin "<strong>imgmap</strong>" becomes available to users of <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">My Web Pages Starter Kit (MWPSK)</a>.</p>
<p>So what is "imgmap"? In short words it is "a browser-based, javascript powered image map editor". This brief description was taken from it´s homepage: <a target="_blank" href="http://www.maschek.hu/imagemap/index">http://www.maschek.hu/imagemap/index</a>. Adam Maschek produced a great piece of code that allows us to edit <a target="_blank" href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.6.1">HTML client side image maps</a> in the blink of an eye! imgmap not only is a <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> plugin. Numerous projects use it to do the same job. Alfonso Martínez de Lizarrondo did some great work to get the <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> plugin working.</p>
<p>So maybe you like to have a look at these sites:<br />
<a target="_blank" href="http://www.maschek.hu/imagemap/index">imgmap home page</a><br />
<a target="_blank" href="http://code.google.com/p/imgmap/">imgmap project page</a><br />
<a target="_blank" href="http://martinezdelizarrondo.com/fckplugins/imgmap/docs/install.html">imgmap FCKEditor plugin homepage</a></p>
<p>In this post I´m gonna describe what to do to get imgmap working in a MWPSK environment. If you like to use imgmap as well then you can decide: follow each step of this description or just download the MWPSKex.#002 package from my <a href="http://www.burstmode.de/mwpskex_downloads.aspx">download page</a>. MWPSKex.#001 is a fully functional MWPSK V1.2.1 setup that includes version 2.6.2 of FCKEditor and the imgmap plugin. The included version of imgmap is V2.0beta6.</p>
<p>Have a look at Alfonso´s page: <a href="http://martinezdelizarrondo.com/fckplugins/imgmap/docs/install.html">http://martinezdelizarrondo.com/fckplugins/imgmap/docs/install.html</a><br />
This is a general description of how to install the FCKEditor plugin.</p>
<p>Here are the steps with some specific hints for MWPSK:</p>
<ol>
    <li><strong>Make sure you have a backup of your site prior to modify it!<br />
    </strong><br />
     </li>
    <li>Download the imgmap editor V2.0beta6 from it´s project page. The zipped archive contains another set of zip archives - one of them being Alfonso´s plugin.<br />
    <br />
     </li>
    <li>Extract and copy all files of the included subarchive "plugin_fck78.zip" to folder http://www.burstmode.de:80//FCKEditor/editor/plugins/imgmap/<br />
    <br />
     </li>
    <li>From the main archive copy at least files "excanvas.js", "imgmap.js" and the desired language files to folder http://www.burstmode.de:80//FCKEditor/editor/plugins/imgmap/<br />
    <br />
     </li>
    <li>Modify file "http://www.burstmode.de:80//FCKEditor/fckconfig.js": Find the section where plugins should be loaded - search for "FCKConfig.Plugins.Add". Here append this line of code: "FCKConfig.Plugins.Add( 'imgmap', 'en') ;"<br />
    <br />
     </li>
    <li>Now you have to extend FCKEditor´s toolbar(s): MWPSK by default uses a toolbar named "customized". In file "http://www.burstmode.de:80//FCKEditor/fckconfig.js" look for something like FCKConfig.ToolbarSets["customized"]. In that assignment add the 'imgmapPopup' option like Alfonso described on <a target="_blank" href="http://martinezdelizarrondo.com/fckplugins/imgmap/docs/install.html">his page</a>.</li>
</ol>
<p>So far except the toolbar modification (which should be done to toolbar "customized" instead of "Basic") is pretty much the same as any "normal" imgmap plugin setup. At this point you can see the imgmap button in MWPSK´s FCKEditor when you select an image. You can also use right mouse button and choose from the popup menu.</p>
<p>But you will notice that when the imgmap editor gets invoked you won´t see the image you selected beforehand in FCKEditor. You will just see that annoying little icon of a broken image url. Why is that?</p>
<p>When you inspect that image url with a tool like FireBug or DebugBar (have a look at <a target="_blank" href="http://www.burstmode.de/mwpsk_links.aspx">my links page</a>) you will find that the broken image url reads something like that: "/ImageHandler.ashx?UploadedFile=true&amp;pg=%7D0%7D&amp;image=/App_Data/UserImages/image/myimage.jpg?1216749922281"</p>
<p>What happened here? MWPSK serves images out of the App_Data folder by using an ASP.NET HTTP handler: ImageHandler.ashx in this case. By doing so one has more control over the "how" and "to whom" pictures get served. The actual location of the desired image is supplied via the "image" parameter. The part that poses a problem to the default MWPSK ImageHandler is that last part of the url starting with the interrogation mark: "?1216749922281".</p>
<p>the imgmap online editor appends the current time of day to any image url supplied to prevent browsers from caching it. Have a look at file "http://www.burstmode.de:80//FCKEditor/editor/plugins/imgmap/imgmap.js". There you will find a line reading "this.pic.src = img + '? '+ (new Date().getTime());". This is where the time-string gets appended.</p>
<p>Now there are at least two possible solutions to our problem:</p>
<p>#1 would be to replace that line simply by "this.pic.src = img;". If you decide to do so, your default ImageHandler will be fine to serve the image and you can use imgmap editor instantly. (Just pay attention: there comes another "packed" version of the "imgmap.js" file with the default release: "imgmap_packed.js". Be sure to modify this file too if you copied it in the imgmap directory and if you opted to use solution #1.)</p>
<p>However, I prefer solution #2: Modify MWPSK´s ImageHandler. I don´t like to remove the imgmap no-cache trick since there will be a reason why Adam has choosen to do it like this. And since MWPSK is open source we can modify the handler without problems:</p>
<p>Modify file "http://www.burstmode.de:80//ImageHandler.ashx": after the line of code that reads "string path = string.Empty;" append these instructions:</p>
<p>string urlParams = string.Empty;<br />
if (!string.IsNullOrEmpty(file))<br />
{<br />
  int parPos = file.IndexOf('?');<br />
  if (parPos > -1)<br />
  {<br />
    urlParams = file.Substring(parPos + 1);<br />
    file = file.Substring(0, parPos);<br />
  }<br />
}</p>
<p>this little piece of code will strip the parts causing problems from the name of our image. It saves the stripped value(s) in an (so far) unused variable in case we will need them in a later version of MWPSKex. One never knows ...</p>
<p>So after these lines of code the remaining parts of the MWPSK´s ImageHandler just serve the image as if imgmap had never appended anything to the filename. And this it why it now works :)</p>
<p>Hope this was intersting for you too. For me it was! And many thanks to Adam Maschek who supplied me some hints about FCKEditor´s version strings ;)</p>
<p>Remember that you can download the complete MWPSKex.#002 package from <a href="http://www.burstmode.de/mwpskex_downloads.aspx">my download page</a>. It contains the newer FCKEditor version that was introduced by MWPSKex.#001 and also the imgmap plugin described in this post. All the rest of it´s code is from the default MWPSK V1.2.1 release.</p>
<p><strong>Note: </strong>If you consider to use the imgmap plugin then you should update the FCKEditor that ships with MWPSK V1.2.1 to a newer version. See my prior post on that topic: MWPSKex.#001. The downloadable package MWPSKex.#002 includes all required modifications.</p>]]></description></item><item><title><![CDATA[MWPSKex.#001 - Newer version of FCKEditor for MWPSK]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=913e1810-d314-412a-b1a7-db488d9e0fa7#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>Maybe you´ve read my previous posts: my short-term goal is to get the <a target="_blank" href="http://www.maschek.hu/imagemap">imgmap online editor</a> for <a target="_blank" href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.6.1">HTML client side image maps </a>to work with <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">My Web Pages Starter Kit </a>(MWPSK).</p>
<p>To achieve this, first step is to integrate a more current version of <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a>. (Preliminary tests have shown that one will get into trouble when trying to use the outdated version of <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> that currently ships with <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">MWPSK</a>.)</p>
<p>So let´s talk about versions first: At the time of writing current version of <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">MWPSK</a> is V1.2.1. It ships with <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> version 2.3.1. Most current (stable) version of <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> is 2.6.2. A major bug that affects the use of <a target="_blank" href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.6.1">HTML client side image maps</a> was addressed with <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> version 2.5 (see <a target="_blank" href="http://dev.fckeditor.net/ticket/1496">here</a>).</p>
<p>What follows is a brief description of what to do to get the newer version running. If you´re starting from scratch with <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">MWPSK</a> you might want to take a look at my <a href="http://www.burstmode.de/mwpskex_downloads.aspx">MWPSKex download page</a>. I took a snaphot of my project with all modifications described here already done.<br />
However, if you have done your own modifications to <a target="_blank" href="http://www.codeplex.com/MyWebPagesStarterKit">MWPSK</a>, or if you´re just interested in where to make the changes for a newer <a target="_blank" href="http://www.fckeditor.net/">FCKEditor</a> version, then you can read on:<br />
 </p>
<ol>
    <li>If you have made any changes to your FCKEditor setup then <strong>make sure you have a backup! </strong><br />
    <br />
     </li>
    <li>Download version 2.6.2 of FCKEditor along with version 2.5 of the associated FCKEditor.Net ASP.Net control. You will find both of them on the FCKEditor homepage. (If you use other versions then this description might not be suitable for you.) <br />
    <br />
     </li>
    <li>Delete these two folders from your MWPSK project: http://www.burstmode.de:80//App_Code/FCKEditor/ <br />
    http://www.burstmode.de:80//FCKEditor/ <br />
    <br />
     </li>
    <li>Extract the FCKEditor.Net ASP.Net control (version 2.5) to folder<br />
    http://www.burstmode.de:80//App_Code/FCKEditor/ <br />
    <br />
     </li>
    <li>Extract the FCKEditor (version 2.6.2) to a temporary directory. From there copy subdirectory "editor", both .js-files and all .xml-files to folder<br />
    http://www.burstmode.de:80//FCKEditor/ <br />
    <br />
     </li>
    <li> Edit file "fcconfig.js": Copy the customized toolbar sets "customized" and "customized2" from your backup copy below the "Default" and "Basic" sets. (MWPSK by default uses the "customized" set.) <br />
    <br />
     </li>
    <li>Again in file "fcconfig.js" make sure you set variables "_FileBrowserLanguage" and "_QuickUploadLanguage" to "aspx". <br />
    <br />
     </li>
    <li>In directory "http://www.burstmode.de:80//App_Code/FCKEditor/" either delete the .snk-file or make sure this file can be found at runtime by editing file "AssemblyInfo.cs" in same directory. (I just deleted it since I see no reason to use strong names here in a web application.) <br />
    <br />
     </li>
    <li>Edit file http://www.burstmode.de:80//FCKEditor/editor/filemanager/connectors/aspx/config.ascx: You have to take care that only users with appropriate access rights can use the filemanager. I changed function "CheckAuthentication" to return true or false according to this:<br />
    return ((HttpContext.Current.User.IsInRole(RoleNames.Administrators.ToString())) || <br />
                (HttpContext.Current.User.IsInRole(RoleNames.PowerUsers.ToString()))) ? true : false; <br />
    <br />
     </li>
    <li>In file http://www.burstmode.de:80//App_Code/FCKEditor/FileBrowser/FileWorkerBase.cs change function "FileUpload": right before the call to<br />
    this.SendFileUploadResponse( iErrorNumber, isQuickUpload, sFileUrl, sFileName );<br />
    add<br />
    string pageId = "{0}";<br />
    sFileUrl = ResolveUrl("http://www.burstmode.de:80//ImageHandler.ashx?UploadedFile=true&pg=" + pageId + "&image=" + sFileUrl); <br />
    <br />
     </li>
    <li>In file http://www.burstmode.de:80//App_Code/FCKEditor/FileBrowser/Connector.cs change function "GetUrlFromPath": replace<br />
    return this.Config.TypeConfig[ resourceType ].GetFilesPath().TrimEnd( '/' ) + folderPath;<br />
    by<br />
    string pageId = "{0}";<br />
    return ResolveUrl("http://www.burstmode.de:80//ImageHandler.ashx?UploadedFile=true&pg=" + pageId + "&image=" + this.Config.TypeConfig[resourceType].GetFilesPath().TrimEnd('/') + folderPath);</li>
</ol>
<p>Ok, this should be it. Again: if you don´t like to make all the changes yourself you can download the complete MWPSKex.#001 solution from my <a href="http://www.burstmode.de/mwpskex_downloads.aspx">download page</a>.</p>
<p>I hope this was useful to you. If you find any errors with these modifications then please let me know.</p>]]></description></item><item><title><![CDATA[imgmap - very nice FCKEditor plugin with some impacts to MWPSK]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=c0f71132-0956-4e21-a6bc-da439365de1a#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p><font face="Arial">So what what´s the deal? ... installing the imgmap plugin for FCKEditor to use with My Web Pages Starter Kit (MWPSK)</font></p>
<p><font face="Arial">When you download current release of MWPSK V1.2.1 from the project´s homepage, you will get a nice and small and simple to use file based cms system. Webpages in this cms are comprised of so called "sections" which you can add to the pages.</font></p>
<p><font face="Arial">Out of the box there are several useful types of sections. A very popular one is the "HTML section". This one allows for editing fragments of HTML code using a very popular online HTML editor: FCKEditor.</font></p>
<p><font face="Arial">When I started to evaluate MWPSK for maybe becoming the new platform for our company´s homepage I soon realized that the included FCKEditor is not from newest builds. It must be something like V2.3.1 - at the time of writing current release is V2.6.2. At first I didn´t bother about that - but this was a thing to change soon...</font></p>
<p><font face="Arial">With our new company homepage we like to be able to use html client side image maps. (See <a target="_blank" href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.6.1">http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.6.1</a> for further reference.)</font></p>
<p><font face="Arial">With the included version of FCKEditor your only choice would be to switch to source view and edit the HTML fragment around the <IMG> tags manualy. This works but is not too easy to use for people not so confident with HTML. Furthermore, placing the areas at exact positions can become very cumbersome.</font></p>
<p><font face="Arial">So as many times before: ask Google. Soon I found links to these imgmap websites: <a target="_blank" href="http://www.maschek.hu/imagemap">http://www.maschek.hu/imagemap</a> and <a target="_blank" href="http://martinezdelizarrondo.com/imagemaps/">http://martinezdelizarrondo.com/imagemaps/</a>. Installing this plugin should enable anyone to create and maintain image maps with FCKEditor.</font></p>
<p><font face="Arial">I downloaded the plugin, followed the instructions on how to setup, tried to edit a map on one of my pictures ... and failed.</font></p>
<p><font face="Arial">There are quite a few issues that will strike you when trying to get it to work with MWPSK. These ones I figured out so far and in a series of posts I will try to fix them:</font></p>
<ol>
    <li><font face="Arial">The included FCKEditor version that ships with MWPSK 1.2.1 is far too outdated. One issue that will hit you when tryin to use it in the context described can be looked up here: <font face="Arial"><a target="_blank" href="http://dev.fckeditor.net/ticket/1496">http://dev.fckeditor.net/ticket/1496</a></font><br />
    <br />
    </font></li>
    <li><font face="Arial">There seems to be a JavaScript error in the .js files. Firebug and DebugBar both report a "is not an object" error when it comes to loading language modules. Maybe there´s still an error with my setup, but I will investigate that later and show results here.<br />
    <br />
    </font></li>
    <li><font face="Arial">The imgmap currently uses a litlle trick to prevent images from being cached. The way it is done poses a problem to MWPSK´s image handler. As a result you won´t be able to load an image into the imgmap editor at first. But there are several ways to fix that one.</font> </li>
</ol>
<p><font face="Arial">So there´s some work to do to get everything running: intall new FCKEditor + make necessary customizations, fix imgmap JavaScript error, build workaround for imgmap no-cache trick.</font></p>
<p><font face="Arial">Stay tuned if you´re interested to see if I´ll manage to do that.</font></p>]]></description></item><item><title><![CDATA[MWPSK Windows Server 2003 deployment]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=5c9cf908-5557-45be-b129-c988befa706f#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>Just a short note to remember when deploying MWPSK to another machine: If that machine runs Windows Server 2003 (Web Edition) one should grant write access to subdirectory "App_Data" for the network service account.</p>
<p>At least this should be true if the ASP.NET worker process (w3wp.exe) runs under this account.</p>]]></description></item><item><title><![CDATA[burstmode.de - a blog to focus on extending My Web Pages Starter Kit (MWPSK)]]></title><link><![CDATA[http://www.burstmode.de:80//Default.aspx?pg=deb53614-d1d9-49fd-8cfc-228f362a0938&detail=5b5927e2-80ac-463f-a4c1-f6e8b3808c04#fc7fe166-dfe5-4adf-95c8-9e4da47e4d2d]]></link><description><![CDATA[<p>Ok, games are open - <strong>blog officially started.</strong></p>
<p>First blog post will be kind of a roadmap for what work will focus on these days.</p>
<p>Maybe you´ve read the notes at burstmode.de homepage: Since we´re planning to build our company´s new homepage with MWPSK there have to be some modifications to be done to it´s current release (V1.2.1).</p>
<p>We need to be able to use html image maps with our new homepage and - of course - we want to edit these image maps online inside our little cms.</p>
<p>MWPSK these days ships without the ability to do this. There is however a html section that allows for the placement of images using FCKEditor. One can switch to source code and add the image maps by coding html - but that´s not what we want. There´s a great FCKEditor plugin called "imgmap". This will allow you to draw the maps using your computer´s mouse and edit all the properties through dialogs.</p>
<p>I did run some preliminary tests to simply install the imgmap plugin to FCKEditor that ships with MWPSK. But there are some problems when one tries to do that. So here´s our first roadmap:</p>
<ol>
    <li>Description of the errors that will occur when simply trying to install the imgmap plugin. This will also include a description of the steps I have in mind on how to get around these errors.<br />
    </li>
    <li>Project for getting current release of FCKEditor to work with MWPSK<br />
    </li>
    <li>Project to install imgmap plugin for FCKEditor to use with MWPSK </li>
</ol>
<p>These will be first steps of my work with MWPSK. Stay tuned if that is of interest for you too ...</p>
<p>Note: have a look at <a href="http://www.burstmode.de/mwpsk_links.aspx">burstmode.de linkpage for MWPSK tools</a>. There you´ll find some links to open source projects related to this work.</p>]]></description></item></channel></rss>
