From: Dion O. <dol...@us...> - 2005-11-10 21:00:52
|
Update of /cvsroot/magicajax/MagicAjax NET 1.1 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19241/MagicAjax NET 1.1 Modified Files: AssemblyInfo.cs CallBackHelper.cs MagicAjaxModule.cs Added Files: MagicAjax NET 2.0.csproj Log Message: - Added .NET 2.0 MagicAjax project (with preprocessor directive NET_2_0 defined) - Added 3 lines of .NET 2.0 specific code in MagicAjaxModule.cs (using the NET_2_0 preprocessor directive) Index: CallBackHelper.cs =================================================================== RCS file: /cvsroot/magicajax/MagicAjax NET 1.1/CallBackHelper.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** CallBackHelper.cs 10 Nov 2005 12:53:08 -0000 1.4 --- CallBackHelper.cs 10 Nov 2005 21:00:40 -0000 1.5 *************** *** 392,395 **** --- 392,396 ---- public static string EncodeString(string str) { + //TODO: use 1 regular expression (faster) System.Text.StringBuilder sb = new System.Text.StringBuilder(str); sb.Replace("\\", "\\\\"); --- NEW FILE: MagicAjax NET 2.0.csproj --- (This appears to be a binary file; contents omitted.) Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/magicajax/MagicAjax NET 1.1/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 24 Oct 2005 23:41:39 -0000 1.1 --- AssemblyInfo.cs 10 Nov 2005 21:00:40 -0000 1.2 *************** *** 17,21 **** [assembly: AssemblyCopyright("© 2005 MagicAjax.NET Project Team")] [assembly: AssemblyTrademark("")] ! [assembly: AssemblyCulture("")] // --- 17,26 ---- [assembly: AssemblyCopyright("© 2005 MagicAjax.NET Project Team")] [assembly: AssemblyTrademark("")] ! [assembly: AssemblyCulture("")] ! ! #if NET_2_0 ! //Webresources ! [assembly: WebResourceAttribute("MagicAjax.script.CallBackObject.js", "text/javascript")] ! #endif // Index: MagicAjaxModule.cs =================================================================== RCS file: /cvsroot/magicajax/MagicAjax NET 1.1/MagicAjaxModule.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** MagicAjaxModule.cs 10 Nov 2005 12:53:08 -0000 1.4 --- MagicAjaxModule.cs 10 Nov 2005 21:00:40 -0000 1.5 *************** *** 156,168 **** if (location == null) { using (System.IO.StreamReader reader = new System.IO.StreamReader(typeof(MagicAjaxModule).Assembly.GetManifestResourceStream("MagicAjax.script.CallBackObject.js"))) { ! includeScript = "<script language=\"javascript\" type=\"text/javascript\">\r\n<!--\r\n" + reader.ReadToEnd() + "\r\n//-->\r\n</script>"; } } else { // Point to external script source file ! includeScript = String.Format("<script language=\"javascript\" src=\"{0}/{1}\"></script>", location, "CallBackObject.js"); } page.RegisterClientScriptBlock( "CALLBACK_FOR_AJAX", includeScript ); --- 156,174 ---- if (location == null) { + #if NET_2_0 + //use the webresource url for CallBackObject.js + includeScript = String.Format("<script type=\"text/javascript\" src=\"{0}\"></script>", page.ClientScript.GetWebResourceUrl(typeof(MagicAjaxModule), "MagicAjax.script.CallBackObject.js")); + #else + //read and output the embedded CallBackObject.js file from the manifest using (System.IO.StreamReader reader = new System.IO.StreamReader(typeof(MagicAjaxModule).Assembly.GetManifestResourceStream("MagicAjax.script.CallBackObject.js"))) { ! includeScript = String.Format("<script type=\"text/javascript\">\r\n<!--\r\n{0}\r\n//-->\r\n</script>", reader.ReadToEnd()); } + #endif } else { // Point to external script source file ! includeScript = String.Format("<script type=\"text/javascript\" src=\"{0}/{1}\"></script>", location, "CallBackObject.js"); } page.RegisterClientScriptBlock( "CALLBACK_FOR_AJAX", includeScript ); *************** *** 375,378 **** --- 381,389 ---- _response = _context.Response; + if (!(_context.Handler is Page)) + { + return; //if this wasn't a .aspx request, don't process + } + string pageKey = _request.QueryString["__AJAX_PAGEUNLOAD"]; if (pageKey != null) *************** *** 389,392 **** --- 400,409 ---- Page requestPage = (Page) _context.Handler; + #if NET_2_0 + // For ASP.NET 2.0, disable event validation on the page + requestPage.EnableEventValidation = false; + //TODO: check if there is another way to avoid the event-validation exceptions in the controls + #endif + // Continue only if it is a postback or a callback if ( "GET" == _request.HttpMethod ) *************** *** 410,414 **** --- 427,433 ---- string vsValue = _filter.GetViewStateFieldValue(); if (vsValue != null && _form["__VIEWSTATE"] != vsValue) + { CallBackHelper.WriteSetFieldScript("__VIEWSTATE", vsValue); + } CallBackHelper.End(); *************** *** 742,746 **** --- 761,769 ---- public string GetViewStateFieldValue() { + #if NET_2_0 + string search = "<input type=\"hidden\" name=\"__VIEWSTATE\" id=\"__VIEWSTATE\" value=\""; + #else string search = "<input type=\"hidden\" name=\"__VIEWSTATE\" value=\""; + #endif string html = GetHtmlPage(); int si = html.IndexOf(search); |