<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://forums.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>DotNetNuke</title><link>http://www.dotnetnuke.com/tabid/795/Default.aspx</link><description>Discussions of DotNetNuke for ASP.NET 1.x and above.  &lt;a href="http://www.dotnetnuke.com/" target="_blank"&gt;DNN Home&lt;/a&gt; &lt;a href="http://aspadvice.com/SignUp/list.aspx?l=105&amp;c=25" target="_blank"&gt;Email List&lt;/a&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/392953.aspx</link><pubDate>Thu, 13 Nov 2003 14:34:17 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:392953</guid><dc:creator>mbrandon</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/392953.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=392953</wfw:commentRss><description>There are a couple more things you can do to make it work a little nicer:
&lt;br /&gt;
(set all of these properties within the (page not postback) IF block)
&lt;br /&gt;

&lt;br /&gt;
If you don't want RAD injecting your changes into the .aspx page (and forcing you to hit RAD's update button, and then DNN's)
&lt;br /&gt;

&lt;br /&gt;
   ftbDesktopText.SubmitControl = &amp;quot;cmdUpdate&amp;quot;
&lt;br /&gt;
   ftbDesktopText.Editable = True
&lt;br /&gt;

&lt;br /&gt;
If you want to be able to browse the portal file dir for content, set these three properties
&lt;br /&gt;

&lt;br /&gt;
   ftbDesktopText.ImagesPaths 
&lt;br /&gt;
   ftbDesktopText.MediaPaths
&lt;br /&gt;
   ftbDesktopText.FlashPaths 
&lt;br /&gt;

&lt;br /&gt;
If you want to be able to upload through RAD as well:
&lt;br /&gt;

&lt;br /&gt;
   ftbDesktopText.UploadImagesPaths 
&lt;br /&gt;
   ftbDesktopText.UploadMediaPaths 
&lt;br /&gt;
   ftbDesktopText.UploadFlashPaths 
&lt;br /&gt;

&lt;br /&gt;
Setting the six above to:
&lt;br /&gt;
   = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;

&lt;br /&gt;
Will point it to the current portal's upload dir.
&lt;br /&gt;

&lt;br /&gt;
Also, if you would like to not have the add the radControl subdir to every portalAlias,
&lt;br /&gt;
you can add the following in the GetDomainName function (in globals.vb):
&lt;br /&gt;

&lt;br /&gt;
Change:
&lt;br /&gt;
   Case &amp;quot;admin&amp;quot;, &amp;quot;controls&amp;quot;, &amp;quot;desktopmodules&amp;quot;, &amp;quot;mobilemodules&amp;quot;, &amp;quot;premiummodules&amp;quot;
&lt;br /&gt;
To:
&lt;br /&gt;
Case &amp;quot;admin&amp;quot;, &amp;quot;controls&amp;quot;, &amp;quot;desktopmodules&amp;quot;, &amp;quot;mobilemodules&amp;quot;, &amp;quot;premiummodules&amp;quot;, &amp;quot;radcontrols&amp;quot;
&lt;br /&gt;

&lt;br /&gt;
This will allow any page/control in the radcontrols subdir to load.
&lt;br /&gt;

&lt;br /&gt;
BTW -  While you are there - you can change the IF in the case else below:
&lt;br /&gt;

&lt;br /&gt;
' check if filename or trace
&lt;br /&gt;
  If (InStr(1, URL(intURL), &amp;quot;.aspx&amp;quot;) = 0) And (InStr(1, URL(intURL), &amp;quot;.axd&amp;quot;) = 0) Then
&lt;br /&gt;

&lt;br /&gt;
Then you can use application tracing by browsing to &amp;quot;appdir/trace.axd&amp;quot; (after setting trace enabled in the system.web section of web.config)
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
One last warning about the RAD editor: it was written in C#. If you are using Visual Studio, **DON'T** include the .aspx pages in you project- VS sometimes changes the @page language to .vb from .cs, and things start breaking!</description></item><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/248903.aspx</link><pubDate>Mon, 16 Jun 2003 23:41:52 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:248903</guid><dc:creator>gsc4</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/248903.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=248903</wfw:commentRss><description>Hi,
&lt;br /&gt;

&lt;br /&gt;
I don't have any experience with the Telerik Rad Menu but I have integrated the ASPnetMenu into DNN v1.0.9. The ASPnetMenu works differently to the Solpart menu included with DNN and therefore proved to be a little challenging to get working. The biggest problem I had was being able to add child menu items using the TabStripDetails and TabSettings collections (as DNN does for Solpart).
&lt;br /&gt;

&lt;br /&gt;
If you come across similar problems my code may help.
&lt;br /&gt;

&lt;br /&gt;
see: http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&amp;amp;PostID=248025 
&lt;br /&gt;
or: http://dotnetnuke.daikyo.com.au</description></item><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/246496.aspx</link><pubDate>Fri, 13 Jun 2003 14:43:36 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:246496</guid><dc:creator>terziev</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/246496.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=246496</wfw:commentRss><description>To implement the telerik r.a.d.editor control in DotNetNuke you have to make the following
&lt;br /&gt;
steps:
&lt;br /&gt;

&lt;br /&gt;
1) Update the PortalAlias field in the Portals table
&lt;br /&gt;
e.g.
&lt;br /&gt;
from:
&lt;br /&gt;
localhost/DotNetNuke
&lt;br /&gt;
to:
&lt;br /&gt;
localhost/DotNetNuke,localhost/DotNetNuke/RadControls
&lt;br /&gt;

&lt;br /&gt;
2) Open the DesktopModules/HTML/EditHtml.ascx file and replace the FreeTextBox control with r.a.d.editor. e.g. &amp;lt;radE:RadEditor ID=&amp;quot;editor1&amp;quot; Runat=&amp;quot;server&amp;quot; SubmitControl=&amp;quot;cmdUpdate&amp;quot; ......../&amp;gt;
&lt;br /&gt;

&lt;br /&gt;
3) Open the DesktopModules/HTML/EditHtml.ascx.vb(cs). Declare &amp;quot;Telerik.RadEditor.RadEditor editor1&amp;quot; instead of &amp;quot;FreeTextBoxControls.FreeTextBox ftbDesktopText&amp;quot; in the beginning. Then replace &amp;quot;ftbDesktopText.Text&amp;quot; with &amp;quot;editor1.Value&amp;quot; throughout the code. (Comment the lines where the &amp;quot;ImageGalleryPath&amp;quot; and &amp;quot;HelperFilesParameters&amp;quot; properties are set)
&lt;br /&gt;

&lt;br /&gt;
4) Open the Components/Configuration.vb(cs) file and in the constructor of the PortalSettings class put the &amp;quot;Me.UploadDirectory = ....&amp;quot; (vb)/&amp;quot;this.UploadDirectory = ....&amp;quot; (cs) line in a try/catch statement.
&lt;br /&gt;

&lt;br /&gt;
5) Open DesktopModules/HTML/HtmlModel.ascx.vb(cs)
&lt;br /&gt;
Replace the following line:
&lt;br /&gt;
HtmlHolder.Controls.Add(New LiteralControl(ManageUploadDirectory(content, _portalSettings.UploadDirectory)))
&lt;br /&gt;
with:
&lt;br /&gt;
HtmlHolder.Controls.Add(New LiteralControl(content))
&lt;br /&gt;

&lt;br /&gt;
as the ManageUploadDirectory function puts additional path info before each image src attribute
&lt;br /&gt;</description></item><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/245444.aspx</link><pubDate>Thu, 12 Jun 2003 15:54:57 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:245444</guid><dc:creator>Bennyvi</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/245444.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=245444</wfw:commentRss><description>ok,
&lt;br /&gt;

&lt;br /&gt;
i think i found solution in this thread:
&lt;br /&gt;
http://www.asp.net/Forums/ShowPost.aspx?tabindex=1&amp;amp;PostID=192112
&lt;br /&gt;

&lt;br /&gt;
will try it out tonight when get home...but i believe this to be the fix!
&lt;br /&gt;

&lt;br /&gt;</description></item><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/245009.aspx</link><pubDate>Thu, 12 Jun 2003 06:02:34 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:245009</guid><dc:creator>Bennyvi</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/245009.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=245009</wfw:commentRss><description>i am having trouble with displaying the aspx pages in the RadControls folder...did you get this to work?  if so what did you do?</description></item><item><title>Re: Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/240200.aspx</link><pubDate>Fri, 06 Jun 2003 19:02:56 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:240200</guid><dc:creator>mbrandon</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/240200.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=240200</wfw:commentRss><description>I have the editor working. I haven't spent the time to tightly couple it, though, so you have to first use telerik's update to save from the editor to DNN's edit page, and the use DNN's update to post changes to the database.
&lt;br /&gt;

&lt;br /&gt;
Here are my files: (This assumes you have the RadControls dir in the host root... I'm not sure the best place to put it. This does force you to add a alias to the portalalias table to get image inserts)
&lt;br /&gt;

&lt;br /&gt;
Caveat's: I made a change to the HTML module so that it doesn't inject the path to image files as it renders. Rather, I let R.A.D. code that into the html stream, and thus the database.
&lt;br /&gt;
So any existing html with src= would have to change.
&lt;br /&gt;

&lt;br /&gt;
I think these are the only changes I needed. I can't swear to it. YMMV. :)
&lt;br /&gt;

&lt;br /&gt;
All changes is .vb should be tagged with -MBRANDON. I didn't tag all my changes in .aspx... I think it's just in the panel that displays the FTB.
&lt;br /&gt;

&lt;br /&gt;
Finally, I am still on 1.0.8, as I haven't had the time to start patching .9 with my enhancements.
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
-Mark
&lt;br /&gt;
mbrandon@installed.net
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
EditHTML.ascx:
&lt;br /&gt;
 
&lt;br /&gt;
 &amp;lt;%@ Register TagPrefix=&amp;quot;radE&amp;quot; Namespace=&amp;quot;Telerik.RadEditor&amp;quot; Assembly=&amp;quot;RadEditor&amp;quot; %&amp;gt;
&lt;br /&gt;
&amp;lt;%@ Control language=&amp;quot;vb&amp;quot; Inherits=&amp;quot;DotNetNuke.EditHtml&amp;quot; CodeBehind=&amp;quot;EditHtml.ascx.vb&amp;quot; AutoEventWireup=&amp;quot;false&amp;quot; Explicit=&amp;quot;True&amp;quot; %&amp;gt;
&lt;br /&gt;
&amp;lt;%@ Register TagPrefix=&amp;quot;Portal&amp;quot; TagName=&amp;quot;Title&amp;quot; Src=&amp;quot;~/controls/DesktopModuleTitle.ascx&amp;quot;%&amp;gt;
&lt;br /&gt;
&amp;lt;% 'MBRANDON: Switch to RAD from ftb %&amp;gt;
&lt;br /&gt;
&amp;lt;% '@ Register TagPrefix=&amp;quot;ftb&amp;quot; Namespace=&amp;quot;FreeTextBoxControls&amp;quot; Assembly=&amp;quot;FreeTextBox&amp;quot; %&amp;gt;
&lt;br /&gt;
&amp;lt;portal:title runat=&amp;quot;server&amp;quot; id=&amp;quot;Title1&amp;quot; /&amp;gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;
&lt;br /&gt;
&amp;lt;table cellspacing=&amp;quot;2&amp;quot; cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;0&amp;quot;&amp;gt;
&lt;br /&gt;
	&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;
&lt;br /&gt;
		&amp;lt;td&amp;gt;&amp;amp;nbsp;&amp;lt;/td&amp;gt;
&lt;br /&gt;
		&amp;lt;td align=&amp;quot;middle&amp;quot;&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:RadioButtonList ID=&amp;quot;optView&amp;quot; Runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;NormalTextBox&amp;quot; RepeatDirection=&amp;quot;Horizontal&amp;quot; AutoPostBack=&amp;quot;True&amp;quot;&amp;gt;
&lt;br /&gt;
				&amp;lt;asp:ListItem Value=&amp;quot;B&amp;quot;&amp;gt;Basic Text Box&amp;lt;/asp:ListItem&amp;gt;
&lt;br /&gt;
				&amp;lt;asp:ListItem Value=&amp;quot;R&amp;quot;&amp;gt;Rich Text Editor&amp;lt;/asp:ListItem&amp;gt;
&lt;br /&gt;
			&amp;lt;/asp:RadioButtonList&amp;gt;
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
	&amp;lt;/tr&amp;gt;
&lt;br /&gt;
	&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;
&lt;br /&gt;
		&amp;lt;td class=&amp;quot;SubHead&amp;quot;&amp;gt;
&lt;br /&gt;
			Desktop Content:
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
		&amp;lt;td&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:Panel ID=&amp;quot;pnlBasicTextBox&amp;quot; Runat=&amp;quot;server&amp;quot; Visible=&amp;quot;False&amp;quot;&amp;gt;
&lt;br /&gt;
				&amp;lt;asp:TextBox id=&amp;quot;txtDesktopHTML&amp;quot; runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;NormalTextBox&amp;quot; columns=&amp;quot;75&amp;quot; width=&amp;quot;600&amp;quot; rows=&amp;quot;12&amp;quot; textmode=&amp;quot;multiline&amp;quot;&amp;gt;&amp;lt;/asp:TextBox&amp;gt;
&lt;br /&gt;
				&amp;lt;BR&amp;gt;
&lt;br /&gt;
				&amp;lt;asp:RadioButtonList id=&amp;quot;optRender&amp;quot; AutoPostBack=&amp;quot;True&amp;quot; RepeatDirection=&amp;quot;Horizontal&amp;quot; CssClass=&amp;quot;NormalTextBox&amp;quot; Runat=&amp;quot;server&amp;quot;&amp;gt;
&lt;br /&gt;
					&amp;lt;asp:ListItem Value=&amp;quot;T&amp;quot;&amp;gt;Text&amp;lt;/asp:ListItem&amp;gt;
&lt;br /&gt;
					&amp;lt;asp:ListItem Value=&amp;quot;H&amp;quot;&amp;gt;HTML&amp;lt;/asp:ListItem&amp;gt;
&lt;br /&gt;
				&amp;lt;/asp:RadioButtonList&amp;gt;
&lt;br /&gt;
			&amp;lt;/asp:Panel&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:Panel ID=&amp;quot;pnlRichTextBox&amp;quot; Runat=&amp;quot;server&amp;quot; Visible=&amp;quot;False&amp;quot;&amp;gt;
&lt;br /&gt;
				&amp;lt;radE:RadEditor id=&amp;quot;ftbDesktopText&amp;quot; Runat=&amp;quot;server&amp;quot; LicenseFile=&amp;quot;~/RadControls/LicenseFile.xml&amp;quot;&amp;gt;&amp;lt;/radE:RadEditor&amp;gt;
&lt;br /&gt;
			&amp;lt;/asp:Panel&amp;gt;
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
	&amp;lt;/tr&amp;gt;
&lt;br /&gt;
	&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;
&lt;br /&gt;
		&amp;lt;td class=&amp;quot;SubHead&amp;quot;&amp;gt;
&lt;br /&gt;
			Mobile Summary&amp;lt;br&amp;gt;
&lt;br /&gt;
			(Optional):
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
		&amp;lt;td&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:TextBox id=&amp;quot;txtMobileSummary&amp;quot; runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;NormalTextBox&amp;quot; columns=&amp;quot;75&amp;quot; width=&amp;quot;600&amp;quot; rows=&amp;quot;3&amp;quot; textmode=&amp;quot;multiline&amp;quot; /&amp;gt;
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
	&amp;lt;/tr&amp;gt;
&lt;br /&gt;
	&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;
&lt;br /&gt;
		&amp;lt;td class=&amp;quot;SubHead&amp;quot;&amp;gt;
&lt;br /&gt;
			Mobile Details&amp;lt;br&amp;gt;
&lt;br /&gt;
			(Optional):
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
		&amp;lt;td&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:TextBox id=&amp;quot;txtMobileDetails&amp;quot; runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;NormalTextBox&amp;quot; columns=&amp;quot;75&amp;quot; width=&amp;quot;600&amp;quot; rows=&amp;quot;5&amp;quot; textmode=&amp;quot;multiline&amp;quot; /&amp;gt;
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
	&amp;lt;/tr&amp;gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;
&lt;br /&gt;
	&amp;lt;asp:LinkButton id=&amp;quot;cmdUpdate&amp;quot; Text=&amp;quot;Update&amp;quot; runat=&amp;quot;server&amp;quot; class=&amp;quot;CommandButton&amp;quot; BorderStyle=&amp;quot;none&amp;quot; /&amp;gt;
&lt;br /&gt;
	&amp;amp;nbsp;
&lt;br /&gt;
	&amp;lt;asp:LinkButton id=&amp;quot;cmdCancel&amp;quot; Text=&amp;quot;Cancel&amp;quot; CausesValidation=&amp;quot;False&amp;quot; runat=&amp;quot;server&amp;quot; class=&amp;quot;CommandButton&amp;quot; BorderStyle=&amp;quot;none&amp;quot; /&amp;gt;
&lt;br /&gt;
	&amp;amp;nbsp;
&lt;br /&gt;
	&amp;lt;asp:LinkButton id=&amp;quot;cmdPreview&amp;quot; Text=&amp;quot;Preview&amp;quot; CausesValidation=&amp;quot;False&amp;quot; runat=&amp;quot;server&amp;quot; class=&amp;quot;CommandButton&amp;quot; BorderStyle=&amp;quot;none&amp;quot; /&amp;gt;
&lt;br /&gt;
	&amp;amp;nbsp;
&lt;br /&gt;
&amp;lt;/p&amp;gt;
&lt;br /&gt;
&amp;lt;table width=&amp;quot;750&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot;&amp;gt;
&lt;br /&gt;
	&amp;lt;tr valign=&amp;quot;top&amp;quot;&amp;gt;
&lt;br /&gt;
		&amp;lt;td&amp;gt;
&lt;br /&gt;
			&amp;lt;asp:Label ID=&amp;quot;lblPreview&amp;quot; Runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;Normal&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;
&lt;br /&gt;
		&amp;lt;/td&amp;gt;
&lt;br /&gt;
	&amp;lt;/tr&amp;gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;
&lt;br /&gt;

&lt;br /&gt;
 EditHTML.ascx.vb:
&lt;br /&gt;

&lt;br /&gt;
'
&lt;br /&gt;
' DotNetNuke -  http://www.dotnetnuke.com
&lt;br /&gt;
' Copyright (c) 2002-2003
&lt;br /&gt;
' by Shaun Walker ( sales@perpetualmotion.ca ) of Perpetual Motion Interactive Systems Inc. ( http://www.perpetualmotion.ca )
&lt;br /&gt;
'
&lt;br /&gt;
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 
&lt;br /&gt;
' documentation files (the &amp;quot;Software&amp;quot;), to deal in the Software without restriction, including without limitation 
&lt;br /&gt;
' the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and 
&lt;br /&gt;
' to permit persons to whom the Software is furnished to do so, subject to the following conditions:
&lt;br /&gt;
'
&lt;br /&gt;
' The above copyright notice and this permission notice shall be included in all copies or substantial portions 
&lt;br /&gt;
' of the Software.
&lt;br /&gt;
'
&lt;br /&gt;
' THE SOFTWARE IS PROVIDED &amp;quot;AS IS&amp;quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
&lt;br /&gt;
' TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 
&lt;br /&gt;
' THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF 
&lt;br /&gt;
' CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
&lt;br /&gt;
' DEALINGS IN THE SOFTWARE.
&lt;br /&gt;
'
&lt;br /&gt;

&lt;br /&gt;
Imports FreeTextBoxControls
&lt;br /&gt;

&lt;br /&gt;
Namespace DotNetNuke
&lt;br /&gt;

&lt;br /&gt;
    Public Class EditHtml
&lt;br /&gt;
        Inherits DotNetNuke.PortalModuleControl
&lt;br /&gt;

&lt;br /&gt;
        Protected WithEvents optView As System.Web.UI.WebControls.RadioButtonList
&lt;br /&gt;
        Protected WithEvents pnlBasicTextBox As System.Web.UI.WebControls.Panel
&lt;br /&gt;

&lt;br /&gt;
        Protected WithEvents pnlRichTextBox As System.Web.UI.WebControls.Panel
&lt;br /&gt;
        Protected WithEvents txtDesktopHTML As System.Web.UI.WebControls.TextBox
&lt;br /&gt;
        Protected WithEvents optRender As System.Web.UI.WebControls.RadioButtonList
&lt;br /&gt;

&lt;br /&gt;
        'MBRANDON: Change ftb to RAD - also change all instance of .text to .value for RAD
&lt;br /&gt;
        'Protected WithEvents ftbDesktopText As FreeTextBoxControls.FreeTextBox
&lt;br /&gt;
        Protected WithEvents ftbDesktopText As Telerik.RadEditor.RadEditor
&lt;br /&gt;

&lt;br /&gt;
        Protected WithEvents txtMobileSummary As System.Web.UI.WebControls.TextBox
&lt;br /&gt;
        Protected WithEvents txtMobileDetails As System.Web.UI.WebControls.TextBox
&lt;br /&gt;
        Protected WithEvents cmdUpdate As System.Web.UI.WebControls.LinkButton
&lt;br /&gt;
        Protected WithEvents cmdCancel As System.Web.UI.WebControls.LinkButton
&lt;br /&gt;
        Protected WithEvents cmdPreview As System.Web.UI.WebControls.LinkButton
&lt;br /&gt;
        Protected WithEvents lblPreview As System.Web.UI.WebControls.Label
&lt;br /&gt;

&lt;br /&gt;
#Region &amp;quot; Web Form Designer Generated Code &amp;quot;
&lt;br /&gt;

&lt;br /&gt;
        'This call is required by the Web Form Designer.
&lt;br /&gt;
        &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
        Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
&lt;br /&gt;
            'CODEGEN: This method call is required by the Web Form Designer
&lt;br /&gt;
            'Do not modify it using the code editor.
&lt;br /&gt;
            InitializeComponent()
&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
#End Region
&lt;br /&gt;

&lt;br /&gt;
        '****************************************************************
&lt;br /&gt;
        '
&lt;br /&gt;
        ' The Page_Load event on this Page is used to obtain the ModuleId
&lt;br /&gt;
        ' of the xml module to edit.
&lt;br /&gt;
        '
&lt;br /&gt;
        ' It then uses the DotNetNuke.HtmlTextDB() data component
&lt;br /&gt;
        ' to populate the page's edit controls with the text details.
&lt;br /&gt;
        '
&lt;br /&gt;
        '****************************************************************
&lt;br /&gt;

&lt;br /&gt;
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
&lt;br /&gt;

&lt;br /&gt;
            ' Obtain PortalSettings from Current Context
&lt;br /&gt;
            Dim _portalSettings As PortalSettings = CType(HttpContext.Current.Items(&amp;quot;PortalSettings&amp;quot;), PortalSettings)
&lt;br /&gt;

&lt;br /&gt;
            ' Get settings from the database 
&lt;br /&gt;
            Dim settings As Hashtable = PortalSettings.GetModuleSettings(ModuleId)
&lt;br /&gt;

&lt;br /&gt;
            Dim DesktopView As String = CType(settings(&amp;quot;desktopview&amp;quot;), String)
&lt;br /&gt;
            Dim LastDesktopView As String = DesktopView
&lt;br /&gt;

&lt;br /&gt;
            If optView.SelectedIndex &amp;lt;&amp;gt; -1 Then
&lt;br /&gt;
                DesktopView = optView.SelectedItem.Value
&lt;br /&gt;
                Dim admin As New AdminDB()
&lt;br /&gt;
                admin.UpdateModuleSetting(ModuleId, &amp;quot;desktopview&amp;quot;, DesktopView)
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            If DesktopView &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then
&lt;br /&gt;
                optView.Items.FindByValue(DesktopView).Selected = True
&lt;br /&gt;
            Else
&lt;br /&gt;
                optView.SelectedIndex = 0
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            Dim TextRender As String = CType(settings(&amp;quot;textrender&amp;quot;), String)
&lt;br /&gt;

&lt;br /&gt;
            If optRender.SelectedIndex &amp;lt;&amp;gt; -1 Then
&lt;br /&gt;
                TextRender = optRender.SelectedItem.Value
&lt;br /&gt;
                Dim admin As New AdminDB()
&lt;br /&gt;
                admin.UpdateModuleSetting(ModuleId, &amp;quot;textrender&amp;quot;, TextRender)
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            If TextRender &amp;lt;&amp;gt; &amp;quot;&amp;quot; Then
&lt;br /&gt;
                optRender.Items.FindByValue(TextRender).Selected = True
&lt;br /&gt;
            Else
&lt;br /&gt;
                optRender.SelectedIndex = 0
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            If optView.SelectedItem.Value = &amp;quot;B&amp;quot; Then
&lt;br /&gt;
                pnlBasicTextBox.Visible = True
&lt;br /&gt;
                pnlRichTextBox.Visible = False
&lt;br /&gt;
            Else
&lt;br /&gt;
                pnlBasicTextBox.Visible = False
&lt;br /&gt;
                pnlRichTextBox.Visible = True
&lt;br /&gt;
                'MBRANDON: change to RAD paths
&lt;br /&gt;
                ftbDesktopText.ImagesPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;
                ftbDesktopText.MediaPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;
                ftbDesktopText.FlashPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;

&lt;br /&gt;
                ftbDesktopText.UploadImagesPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;
                ftbDesktopText.UploadMediaPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;
                ftbDesktopText.UploadFlashPaths = New String() {_portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))}
&lt;br /&gt;

&lt;br /&gt;
                ftbDesktopText.AllowCustomColors = True
&lt;br /&gt;

&lt;br /&gt;
                'ftbDesktopText.ImageGalleryPath = _portalSettings.UploadDirectory.Substring(_portalSettings.UploadDirectory.IndexOf(&amp;quot;/Portals/&amp;quot;))
&lt;br /&gt;
                'MBRANDON: NOT needed for RAD
&lt;br /&gt;
                'ftbDesktopText.HelperFilesParameters = &amp;quot;tabid=&amp;quot; &amp;amp; TabId
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            If Page.IsPostBack = False Then
&lt;br /&gt;

&lt;br /&gt;
                ' Obtain a single row of text information
&lt;br /&gt;
                Dim objHTML As New HtmlTextDB()
&lt;br /&gt;
                Dim dr As SqlDataReader = objHTML.GetHtmlText(ModuleId)
&lt;br /&gt;

&lt;br /&gt;
                If dr.Read() Then
&lt;br /&gt;

&lt;br /&gt;
                    If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                        txtDesktopHTML.Text = FormatText(CType(dr(&amp;quot;DesktopHtml&amp;quot;), String))
&lt;br /&gt;
                    Else
&lt;br /&gt;
                        txtDesktopHTML.Text = Server.HtmlDecode(CType(dr(&amp;quot;DesktopHtml&amp;quot;), String))
&lt;br /&gt;
                    End If
&lt;br /&gt;
                    ftbDesktopText.Value = Server.HtmlDecode(CType(dr(&amp;quot;DesktopHtml&amp;quot;), String))
&lt;br /&gt;
                    txtMobileSummary.Text = Server.HtmlDecode(CType(dr(&amp;quot;MobileSummary&amp;quot;), String))
&lt;br /&gt;
                    txtMobileDetails.Text = Server.HtmlDecode(CType(dr(&amp;quot;MobileDetails&amp;quot;), String))
&lt;br /&gt;

&lt;br /&gt;
                Else
&lt;br /&gt;

&lt;br /&gt;
                    ftbDesktopText.Value = &amp;quot;Add Content...&amp;quot;
&lt;br /&gt;
                    txtDesktopHTML.Text = &amp;quot;Add Content...&amp;quot;
&lt;br /&gt;
                    txtMobileSummary.Text = &amp;quot;&amp;quot;
&lt;br /&gt;
                    txtMobileDetails.Text = &amp;quot;&amp;quot;
&lt;br /&gt;

&lt;br /&gt;
                End If
&lt;br /&gt;

&lt;br /&gt;
                dr.Close()
&lt;br /&gt;

&lt;br /&gt;
                ' Store URL Referrer to return to portal
&lt;br /&gt;
                If Not Request.UrlReferrer Is Nothing Then
&lt;br /&gt;
                    ViewState(&amp;quot;UrlReferrer&amp;quot;) = Request.UrlReferrer.ToString()
&lt;br /&gt;
                Else
&lt;br /&gt;
                    ViewState(&amp;quot;UrlReferrer&amp;quot;) = &amp;quot;&amp;quot;
&lt;br /&gt;
                End If
&lt;br /&gt;
            Else
&lt;br /&gt;
                If (LastDesktopView &amp;lt;&amp;gt; optView.SelectedItem.Value) And (Not LastDesktopView Is Nothing) Then
&lt;br /&gt;
                    If optView.SelectedItem.Value = &amp;quot;B&amp;quot; Then
&lt;br /&gt;
                        If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                            txtDesktopHTML.Text = FormatText(ftbDesktopText.Value)
&lt;br /&gt;
                        Else
&lt;br /&gt;
                            txtDesktopHTML.Text = ftbDesktopText.Value
&lt;br /&gt;
                        End If
&lt;br /&gt;
                    Else
&lt;br /&gt;
                        If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                            ftbDesktopText.Value = FormatHTML(txtDesktopHTML.Text)
&lt;br /&gt;
                        Else
&lt;br /&gt;
                            ftbDesktopText.Value = txtDesktopHTML.Text
&lt;br /&gt;
                        End If
&lt;br /&gt;
                    End If
&lt;br /&gt;
                Else
&lt;br /&gt;
                    If optView.SelectedItem.Value = &amp;quot;B&amp;quot; Then
&lt;br /&gt;
                        If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                            txtDesktopHTML.Text = FormatText(txtDesktopHTML.Text)
&lt;br /&gt;
                        Else
&lt;br /&gt;
                            txtDesktopHTML.Text = FormatHTML(txtDesktopHTML.Text)
&lt;br /&gt;
                        End If
&lt;br /&gt;
                    End If
&lt;br /&gt;
                End If
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
        Private Function FormatText(ByVal strHTML As String) As String
&lt;br /&gt;

&lt;br /&gt;
            Dim strText As String = strHTML
&lt;br /&gt;

&lt;br /&gt;
            strText = Replace(strText, &amp;quot;&amp;lt;br&amp;gt;&amp;quot;, ControlChars.Lf)
&lt;br /&gt;
            strText = Replace(strText, &amp;quot;&amp;lt;BR&amp;gt;&amp;quot;, ControlChars.Lf)
&lt;br /&gt;
            strText = Server.HtmlDecode(strText)
&lt;br /&gt;

&lt;br /&gt;
            Return strText
&lt;br /&gt;

&lt;br /&gt;
        End Function
&lt;br /&gt;

&lt;br /&gt;
        Private Function FormatHTML(ByVal strText As String) As String
&lt;br /&gt;

&lt;br /&gt;
            Dim strHTML As String = strText
&lt;br /&gt;

&lt;br /&gt;
            strHTML = Replace(strHTML, Chr(13), &amp;quot;&amp;quot;)
&lt;br /&gt;
            strHTML = Replace(strHTML, ControlChars.Lf, &amp;quot;&amp;lt;br&amp;gt;&amp;quot;)
&lt;br /&gt;

&lt;br /&gt;
            Return strHTML
&lt;br /&gt;

&lt;br /&gt;
        End Function
&lt;br /&gt;

&lt;br /&gt;
        '****************************************************************
&lt;br /&gt;
        '
&lt;br /&gt;
        ' The cmdUpdate_Click event handler on this Page is used to save
&lt;br /&gt;
        ' the text changes to the database.
&lt;br /&gt;
        '
&lt;br /&gt;
        '****************************************************************
&lt;br /&gt;

&lt;br /&gt;
        Private Sub cmdUpdate_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdUpdate.Click
&lt;br /&gt;

&lt;br /&gt;
            Dim objHTML As New HtmlTextDB()
&lt;br /&gt;

&lt;br /&gt;
            Dim strDesktopHTML As String
&lt;br /&gt;

&lt;br /&gt;
            If pnlBasicTextBox.Visible Then
&lt;br /&gt;
                If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                    strDesktopHTML = FormatHTML(txtDesktopHTML.Text)
&lt;br /&gt;
                Else
&lt;br /&gt;
                    strDesktopHTML = txtDesktopHTML.Text
&lt;br /&gt;
                End If
&lt;br /&gt;
            Else
&lt;br /&gt;
                strDesktopHTML = Server.HtmlEncode(ftbDesktopText.Value)
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            ' Update the text within the HtmlText table
&lt;br /&gt;
            objHTML.UpdateHtmlText(ModuleId, strDesktopHTML, Server.HtmlEncode(txtMobileSummary.Text), Server.HtmlEncode(txtMobileDetails.Text))
&lt;br /&gt;

&lt;br /&gt;
            ' Redirect back to the portal home page
&lt;br /&gt;
            Response.Redirect(CType(ViewState(&amp;quot;UrlReferrer&amp;quot;), String))
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
        '****************************************************************
&lt;br /&gt;
        '
&lt;br /&gt;
        ' The cmdCancel_Click event handler on this Page is used to cancel
&lt;br /&gt;
        ' out of the page, and return the user back to the portal home
&lt;br /&gt;
        ' page.
&lt;br /&gt;
        '
&lt;br /&gt;
        '****************************************************************'
&lt;br /&gt;
        Private Sub cmdCancel_Click(ByVal sender As Object, ByVal e As EventArgs) Handles cmdCancel.Click
&lt;br /&gt;

&lt;br /&gt;
            ' Redirect back to the portal home page
&lt;br /&gt;
            Response.Redirect(CType(ViewState(&amp;quot;UrlReferrer&amp;quot;), String))
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;

&lt;br /&gt;
        Private Sub cmdPreview_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdPreview.Click
&lt;br /&gt;

&lt;br /&gt;
            ' Obtain PortalSettings from Current Context
&lt;br /&gt;
            Dim _portalSettings As PortalSettings = CType(HttpContext.Current.Items(&amp;quot;PortalSettings&amp;quot;), PortalSettings)
&lt;br /&gt;

&lt;br /&gt;
            Dim strDesktopHTML As String
&lt;br /&gt;

&lt;br /&gt;
            If pnlBasicTextBox.Visible Then
&lt;br /&gt;
                strDesktopHTML = Server.HtmlEncode(txtDesktopHTML.Text)
&lt;br /&gt;
                If optRender.SelectedItem.Value = &amp;quot;T&amp;quot; Then
&lt;br /&gt;
                    strDesktopHTML = Replace(strDesktopHTML, ControlChars.Lf, &amp;quot;&amp;lt;br&amp;gt;&amp;quot;)
&lt;br /&gt;
                End If
&lt;br /&gt;
            Else
&lt;br /&gt;
                strDesktopHTML = Server.HtmlEncode(ftbDesktopText.Value)
&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            lblPreview.Text = ManageUploadDirectory(Server.HtmlDecode(strDesktopHTML), _portalSettings.UploadDirectory)
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
    End Class
&lt;br /&gt;

&lt;br /&gt;
End Namespace
&lt;br /&gt;

&lt;br /&gt;
HTMLModule.ascx.vb:
&lt;br /&gt;

&lt;br /&gt;
'
&lt;br /&gt;
' DotNetNuke -  http://www.dotnetnuke.com
&lt;br /&gt;
' Copyright (c) 2002-2003
&lt;br /&gt;
' by Shaun Walker ( sales@perpetualmotion.ca ) of Perpetual Motion Interactive Systems Inc. ( http://www.perpetualmotion.ca )
&lt;br /&gt;
'
&lt;br /&gt;
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated 
&lt;br /&gt;
' documentation files (the &amp;quot;Software&amp;quot;), to deal in the Software without restriction, including without limitation 
&lt;br /&gt;
' the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and 
&lt;br /&gt;
' to permit persons to whom the Software is furnished to do so, subject to the following conditions:
&lt;br /&gt;
'
&lt;br /&gt;
' The above copyright notice and this permission notice shall be included in all copies or substantial portions 
&lt;br /&gt;
' of the Software.
&lt;br /&gt;
'
&lt;br /&gt;
' THE SOFTWARE IS PROVIDED &amp;quot;AS IS&amp;quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
&lt;br /&gt;
' TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 
&lt;br /&gt;
' THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF 
&lt;br /&gt;
' CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 
&lt;br /&gt;
' DEALINGS IN THE SOFTWARE.
&lt;br /&gt;
'
&lt;br /&gt;

&lt;br /&gt;
Namespace DotNetNuke
&lt;br /&gt;

&lt;br /&gt;
    Public MustInherit Class HtmlModule
&lt;br /&gt;
        Inherits DotNetNuke.PortalModuleControl
&lt;br /&gt;

&lt;br /&gt;
        Protected WithEvents HtmlHolder As System.Web.UI.HtmlControls.HtmlTableCell
&lt;br /&gt;

&lt;br /&gt;
#Region &amp;quot; Web Form Designer Generated Code &amp;quot;
&lt;br /&gt;

&lt;br /&gt;
        'This call is required by the Web Form Designer.
&lt;br /&gt;
        &amp;lt;System.Diagnostics.DebuggerStepThrough()&amp;gt; Private Sub InitializeComponent()
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
        Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
&lt;br /&gt;
            'CODEGEN: This method call is required by the Web Form Designer
&lt;br /&gt;
            'Do not modify it using the code editor.
&lt;br /&gt;
            InitializeComponent()
&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
#End Region
&lt;br /&gt;

&lt;br /&gt;
        '*******************************************************
&lt;br /&gt;
        '
&lt;br /&gt;
        ' The Page_Load event handler on this User Control is
&lt;br /&gt;
        ' used to render a block of HTML or text to the page.  
&lt;br /&gt;
        ' The text/HTML to render is stored in the HtmlText 
&lt;br /&gt;
        ' database table.  This method uses the DotNetNuke.HtmlTextDB()
&lt;br /&gt;
        ' data component to encapsulate all data functionality.
&lt;br /&gt;
        '
&lt;br /&gt;
        '*******************************************************
&lt;br /&gt;

&lt;br /&gt;
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
&lt;br /&gt;

&lt;br /&gt;
            ' Obtain PortalSettings from Current Context
&lt;br /&gt;
            Dim _portalSettings As PortalSettings = CType(HttpContext.Current.Items(&amp;quot;PortalSettings&amp;quot;), PortalSettings)
&lt;br /&gt;

&lt;br /&gt;
            ' Obtain the selected item from the HtmlText table
&lt;br /&gt;
            Dim objHTML As New HtmlTextDB()
&lt;br /&gt;
            Dim dr As SqlDataReader = objHTML.GetHtmlText(ModuleId)
&lt;br /&gt;

&lt;br /&gt;
            If dr.Read() Then
&lt;br /&gt;

&lt;br /&gt;
                ' Dynamically add the file content into the page
&lt;br /&gt;
                Dim content As String = Server.HtmlDecode(CType(dr(&amp;quot;DesktopHtml&amp;quot;), String))
&lt;br /&gt;

&lt;br /&gt;
                'MBRANDON - r.a.d. editor will inject Upload Dir.
&lt;br /&gt;
                'HtmlHolder.Controls.Add(New LiteralControl(ManageUploadDirectory(content, _portalSettings.UploadDirectory)))
&lt;br /&gt;
                HtmlHolder.Controls.Add(New LiteralControl(content))
&lt;br /&gt;

&lt;br /&gt;
            End If
&lt;br /&gt;

&lt;br /&gt;
            ' Close the datareader
&lt;br /&gt;
            dr.Close()
&lt;br /&gt;

&lt;br /&gt;
        End Sub
&lt;br /&gt;

&lt;br /&gt;
        'MBRANDON - Function no longer used.
&lt;br /&gt;
        'Private Function ManageUploadDirectory(ByVal strHTML As String, ByVal strUploadDirectory As String) As String
&lt;br /&gt;

&lt;br /&gt;
        '    Dim P As Integer
&lt;br /&gt;

&lt;br /&gt;
        '    P = InStr(1, strHTML.ToLower, &amp;quot;src=&amp;quot;&amp;quot;&amp;quot;)
&lt;br /&gt;
        '    While P &amp;lt;&amp;gt; 0
&lt;br /&gt;
        '        ManageUploadDirectory = ManageUploadDirectory &amp;amp; Left(strHTML, P + 4)
&lt;br /&gt;

&lt;br /&gt;
        '        strHTML = Mid(strHTML, P + 5)
&lt;br /&gt;

&lt;br /&gt;
        '        ' add uploaddirectory if we are linking internally
&lt;br /&gt;

&lt;br /&gt;
        '        Dim strSRC = Left(strHTML, InStr(1, strHTML, &amp;quot;&amp;quot;&amp;quot;&amp;quot;) - 1)
&lt;br /&gt;
        '        If InStr(1, strSRC, &amp;quot;://&amp;quot;) = 0 Then
&lt;br /&gt;
        '            strHTML = strUploadDirectory &amp;amp; strHTML
&lt;br /&gt;
        '        End If
&lt;br /&gt;

&lt;br /&gt;
        '        P = InStr(1, strHTML.ToLower, &amp;quot;src=&amp;quot;&amp;quot;&amp;quot;)
&lt;br /&gt;
        '    End While
&lt;br /&gt;

&lt;br /&gt;
        '    ManageUploadDirectory = ManageUploadDirectory &amp;amp; strHTML
&lt;br /&gt;

&lt;br /&gt;
        'End Function
&lt;br /&gt;

&lt;br /&gt;
    End Class
&lt;br /&gt;

&lt;br /&gt;
End Namespace
&lt;br /&gt;</description></item><item><title>Anyone successfully integrated Telerik products?</title><link>http://forums.asp.net/thread/237900.aspx</link><pubDate>Wed, 04 Jun 2003 21:08:15 GMT</pubDate><guid isPermaLink="false">4c671506-2930-414c-a40b-8bf57ded5924:237900</guid><dc:creator>Ronald.Ward</dc:creator><slash:comments>0</slash:comments><comments>http://forums.asp.net/thread/237900.aspx</comments><wfw:commentRss>http://forums.asp.net/commentrss.aspx?SectionID=90&amp;PostID=237900</wfw:commentRss><description>I would like to talk to anyone that has implemented Telerik's menu control in DNN as well as the editor. I am not anticipating any issues with the editor really, I have run into a couple of questions though regarding the menu control.
&lt;br /&gt;

&lt;br /&gt;
TIA,
&lt;br /&gt;
Ronald</description></item></channel></rss>