Iron Speed Technical Forums
Sign up Latest Topics
 
 
 


Reply
  Author   Comment  
janthony

Registered:
Posts: 138
Reply with quote  #1 
Hi,

I have a client who after a security audit wants me to update to the current version of the AjaxControlToolkit in and ISD 12.2 application that is in VS2015.

Doing so breaks the application, some shared pages reference the HTML editor and there are many references to the ToolkitScriptManager. 

Has anyone successfully been able to update to the current AjaxControlToolkit and still been able to regenerate the application in ISD?

I updated the static shared pages to use the updated HTML editor, but I have been unable to find all references to the ToolkitScriptManager to change the reference to ScriptManager in ISD generated pages. I have changed master pages and different XML files that are used for page generation. I can now get the application to compile, but it won't run it gets an error looking for the ToolkitScriptManager in the generated aspx page. 

The offending code inserted at the bottom of the page is 

 

Code:

<body id="Body1" runat="server" style="margin:0px; " >

<form id="Form1" method="post" runat="server"><BaseClasses:ScrollCoordinates id="ScrollCoordinates" runat="server"></BaseClasses:ScrollCoordinates>
<BaseClasses:BasePageSettings id="PageSettings" runat="server"></BaseClasses:BasePageSettings>
<script language="JavaScript" type="text/javascript"></script>
<asp:ToolkitScriptManager ID="scriptManager1" runat="server" EnablePartialRendering="True" EnablePageMethods="True" EnableScriptGlobalization="True" EnableScriptLocalization="True" />
<asp:UpdateProgress runat="server" id="UpdateProgress1" AssociatedUpdatePanelID="UpdatePanel1">
<ProgressTemplate>
<div class="ajaxUpdatePanel"></div>
<div style=" position:absolute; padding:30px;">
<img src="../Images/updating.gif" alt="Updating"/>
</div>
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel runat="server" id="UpdatePanel1" UpdateMode="Conditional">
<ContentTemplate>

<asp:IncludeComponent runat="server" id="Include"></asp:IncludeComponent>

</ContentTemplate>
</asp:UpdatePanel>

<div id="detailPopup" class="detailRolloverPopup" onmouseout="detailRolloverPopupClose();" onmouseover="clearTimeout(gPopupTimer);"></div>
<asp:ValidationSummary id="ValidationSummary1" ShowMessageBox="true" ShowSummary="false" runat="server"></asp:ValidationSummary>
</form>
</body>



Does anyone recognize which of the ISD code templates or XML files this code is generating from, so that I could go edit the file? 

Thanks, 

Jim



Chris8

Registered:
Posts: 12
Reply with quote  #2 

Hi Jim,
After I saw your post I did some research and found there is a vulnerability in the AjaxToolKit used in ISD.

So I did some more research and found this information about the upgrade:
https://github.com/DevExpress/AjaxControlToolkit/wiki/Upgrading-from-v7.x-and-below#toolkitscriptmanager-removed-in-v151-use-scriptmanager

I am going to try this upgrade soon, but havent started yet.
If this helps - here are the steps that I plan to do:

First, Backup your IronSpped program files directory.
e.g. C:\Program Files\Iron Speed\Designer v12.2.0\

Second, get yourself a text editor that can "Search & Replace" in multiple files in multiple directories
e.g. PilotEdit.

Search and replace the text below, in these directories:
C:\Program Files\Iron Speed\Designer v12.2.0\BaseClasses\
C:\Program Files\Iron Speed\Designer v12.2.0\ExtractorTemplates\
C:\Program Files\Iron Speed\Designer v12.2.0\ProjectTemplates\

1. Change AjaxControlToolkit.ToolkitScriptManager. to ScriptManager.
2. Change AjaxControlToolkit.HTMLEditor to AjaxControlToolkit.HtmlEditor.
3. Change AjaxControlToolkit.HTMLEditor.ToolbarButton to AjaxControlToolkit.HtmlEditor.ToolbarButtons.
4. Change <asp:ToolkitScriptManager to <asp:ScriptManager
5. Change </asp:ToolkitScriptManager to </asp:ScriptManager
6. Change CombineScripts="False" to <blank> - REMOVE this text

Base Classes Project
7. Copy the BasesClasses project out of ISD to a Project Diretory
8. Update the AjaxControlToolkit
PM > Install-Package AjaxControlToolkit -Version 18.1.0
9. Recompile the Base Classes with the new & copy the BaseClasses.dll to your project bin directory.

Your Project:
10. In web.config => comment out this line:
<!--<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />-->
11. Update the AjaxControlToolkit .
PM > Install-Package AjaxControlToolkit -Version 18.1.0
12. Rebuild All & Recompile your project.

I think that's it! Will let you know how I go.

Cheers,
Chris.

janthony

Registered:
Posts: 138
Reply with quote  #3 
Thank you Chris for a detailed and thoughtful reply. I will give them this a try and I also look forward to your results. 
Jim

Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.

Download Iron Speed Designer

Terms of Service Privacy Statement