11/* Copyright© 2000 - 2023 SuperMap Software Co.Ltd. All rights reserved.*/
2+ var exampleNameList = [ ] ;
3+
24$ ( document ) . ready ( function ( ) {
35 window . initI18N ( function ( ) {
6+ generateExampleNameList ( ) ;
47 initPage ( ) ;
58 bindEvents ( ) ;
69 sidebarScrollFix ( ) ;
710} ) ;
811} ) ;
9-
1012var aceEditor ;
1113var containExamples = true ;
1214
@@ -16,6 +18,17 @@ function initPage() {
1618 screenResize ( ) ;
1719}
1820
21+ function generateExampleNameList ( ) {
22+ var config = window . exampleConfig ;
23+ Object . keys ( config ) . forEach ( ( menuItem ) => {
24+ config [ menuItem ] . content && Object . keys ( config [ menuItem ] . content ) . forEach ( ( secondMenuItem ) => {
25+ config [ menuItem ] . content [ secondMenuItem ] . content && config [ menuItem ] . content [ secondMenuItem ] . content . forEach ( ( exampleInfo ) => {
26+ exampleNameList . push ( exampleInfo . fileName ) ;
27+ } ) ;
28+ } ) ;
29+ } ) ;
30+ }
31+
1932
2033//获取示例页面的配置信息
2134function getActiveExampleConfig ( ) {
@@ -89,21 +102,26 @@ function loadExampleHtml() {
89102 if ( ! locationParam ) {
90103 return ;
91104 }
105+ if ( exampleNameList . indexOf ( locationParam ) === - 1 ) {
106+ window . location . href = window . location . origin + '/web/404.html' ;
107+ return ;
108+ }
92109 var href = window . location . toString ( ) ;
93110 var mapUrl = href . substr ( 0 , href . lastIndexOf ( '/' ) + 1 ) ;
94111 mapUrl = mapUrl + locationParam + ".html" ;
95112 if ( ! mapUrl ) {
96113 return ;
97114 }
98115 var isError = false ;
99- var html = $ . ajax ( {
116+ var response = $ . ajax ( {
100117 url : mapUrl ,
101118 async : false ,
102119 error : function ( error ) {
103120 alert ( resources . editor . envTips ) ;
104121 isError = true ;
105122 }
106- } ) . responseText ;
123+ } ) ;
124+ var html = response . responseText ;
107125 if ( html && html != "" && ! isError ) {
108126 $ ( '#editor' ) . val ( html ) ;
109127 loadPreview ( html ) ;
0 commit comments