One more thing to try... Defining the Fusion variable outside of the functions, by adding:
var Fusion = GetFusionWindow().Fusion; just above the line: var mapWidgetId = 'Map'; This should hopefully define the Fusion variable in the correct scope so that it can be picked up by Fusion.Tool.Canvas.prototype.getMap at line 172. It should also allow you to remove the individual var Fusion = ... lines from all the functions. Chris. From: [email protected] [mailto:[email protected]] On Behalf Of Arnaud De Groof Sent: Wednesday, February 11, 2009 8:56 AM To: MapGuide Users Mail List Subject: RE: [mapguide-users] RE: Fusion javascript (phpviewersample) Effectively, I try to launch the script in a new window. According to your remarks, I have changed in MapGuideViewerApi.js, the var "Fusion = window.top.Fusion" by" var Fusion = GetFusionWindow().Fusion" and I have added the function "GetFusionWindow()", unfornutely the same errors are observed: Fusion is not defined MapGuideViewerApi.js() MapGuideViewerApi.js (line172) Fusion.Tool.Canvas.prototype.getMap = function() Fusion is undefined Refresh() MapGuideViewerApi.js (line 33) OnApplyThemeReadyStateChange() Regards, Arnaud De Groof ________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of Chris Claydon Sent: mercredi 11 février 2009 16:19 To: MapGuide Users Mail List Subject: [mapguide-users] RE: Fusion javascript (phpviewersample) Looking at MapGuideViewerApi.js, it tries to reference Fusion using: var Fusion = window.top.Fusion. This *should* work provided that the script is running in the task pane, and that the top level window contains the Fusion template. If you're running the template in a frame, or if you launch the script in a popup window, it would probably fail. You could try something like this to provide a more robust means of locating Fusion... Please let me know if this helps! var Fusion = GetFusionWindow().Fusion; function GetFusionWindow() { var curWindow = window; while(!curWindow.Fusion) { if(curWindow.parent && curWindow != curWindow.parent) { curWindow = curWindow.parent; } else if(curWindow.opener) { curWindow = curWindow.opener; } else { break; } } return curWindow; } From: [email protected] [mailto:[email protected]] On Behalf Of Arnaud De Groof Sent: Wednesday, February 11, 2009 6:34 AM To: MapGuide Users Mail List Subject: [mapguide-users] Fusion javascript (phpviewersample) Hi, I have migrated different applications ('theme layer' and 'query') onto fusion. The following lines of the javascript code encounter errors: ? parent.parent.Refresh(); ? parent.parent.mapFrame.ZoomToView(feature.centerX, feature.centerY, scale, true); ? parent.parent.mapFrame.SetSelectionXML(TrimString(selectionXml)); For the "theme layer" application, I have referenced the "MapGuideViewerApi.js" in the script and I have changed the "parent.parent.Refresh();" by "Refresh()" without success. Errors referenced in firebug: ? Fusion is not defined MapGuideViewerApi.js() MapGuideViewerApi.js (line172) Fusion.Tool.Canvas.prototype.getMap = function() ? Fusion is undefined Refresh() MapGuideViewerApi.js (line 33) OnApplyThemeReadyStateChange() For the "query" application, I have no solution. Could you help me to resolve these problems? Thanks, Arnaud De Groof ________________________________ E-MAIL DISCLAIMER The present message may contain confidential and/or legally privileged information. If you are not the intended addressee and in case of a transmission error, please notify the sender immediately and destroy this E-mail. Disclosure, reproduction or distribution of this document and its possible attachments is strictly forbidden. SPACEBEL denies all liability for incomplete, improper, inaccurate, intercepted, (partly) destroyed, lost and/or belated transmission of the current information given that unencrypted electronic transmission cannot currently be guaranteed to be secure or error free. Upon request or in conformity with formal, contractual agreements, an originally signed hard copy will be sent to you to confirm the information contained in this E-mail. SPACEBEL denies all liability where E-mail is used for private use. SPACEBEL cannot be held responsible for possible viruses that might corrupt this message and/or your computer system. ________________________________ ________________________________ E-MAIL DISCLAIMER The present message may contain confidential and/or legally privileged information. If you are not the intended addressee and in case of a transmission error, please notify the sender immediately and destroy this E-mail. Disclosure, reproduction or distribution of this document and its possible attachments is strictly forbidden. SPACEBEL denies all liability for incomplete, improper, inaccurate, intercepted, (partly) destroyed, lost and/or belated transmission of the current information given that unencrypted electronic transmission cannot currently be guaranteed to be secure or error free. Upon request or in conformity with formal, contractual agreements, an originally signed hard copy will be sent to you to confirm the information contained in this E-mail. SPACEBEL denies all liability where E-mail is used for private use. SPACEBEL cannot be held responsible for possible viruses that might corrupt this message and/or your computer system. ________________________________
_______________________________________________ mapguide-users mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/mapguide-users
