include-web.js 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. /* Copyright© 2000 - 2021 SuperMap Software Co.Ltd. All rights reserved.*/
  2. (function () {
  3. var r = new RegExp("(^|(.*?\\/))(include-web\.js)(\\?|$)"),
  4. s = document.getElementsByTagName('script'), targetScript;
  5. for (var i = 0; i < s.length; i++) {
  6. var src = s[i].getAttribute('src');
  7. if (src) {
  8. var m = src.match(r);
  9. if (m) {
  10. targetScript = s[i];
  11. break;
  12. }
  13. }
  14. }
  15. function inputScript(url) {
  16. var script = '<script type="text/javascript" src="' + url + '"><' + '/script>';
  17. document.writeln(script);
  18. }
  19. function inputCSS(url) {
  20. var css = '<link rel="stylesheet" href="' + url + '">';
  21. document.writeln(css);
  22. }
  23. function inArray(arr, item) {
  24. for (i in arr) {
  25. if (arr[i] == item) {
  26. return true;
  27. }
  28. }
  29. return false;
  30. }
  31. //加载类库资源文件
  32. function load() {
  33. var includes = (targetScript.getAttribute('include') || "").split(",");
  34. var excludes = (targetScript.getAttribute('exclude') || "").split(",");
  35. inputScript("../js/tokengenerator.js");
  36. var jQueryInclude = false;
  37. if (!inArray(excludes, 'example-i18n')) {
  38. inputScript("https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js");
  39. inputScript("https://cdn.bootcss.com/i18next/10.0.7/i18next.min.js");
  40. inputScript("https://cdn.bootcss.com/jquery-i18next/1.2.1/jquery-i18next.min.js");
  41. inputScript("../js/utils.js");
  42. inputScript("../js/localization.js");
  43. document.writeln("<script>Localization.initializeI18N('../', function () {Localization.localize();Localization.initGlobal();}); </script>");
  44. jQueryInclude = true;
  45. }
  46. if (inArray(includes, 'jquery') && !jQueryInclude) {
  47. inputScript("https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js");
  48. }
  49. if (inArray(includes, 'bootstrap-css')) {
  50. inputCSS("https://cdn.bootcss.com/twitter-bootstrap/3.3.7/css/bootstrap.min.css")
  51. }
  52. if (inArray(includes, 'bootstrap-js')) {
  53. inputScript("https://cdn.bootcss.com/twitter-bootstrap/3.3.7/js/bootstrap.min.js");
  54. }
  55. if (inArray(includes, 'jquery-ui')) {
  56. inputCSS("https://cdn.bootcss.com/jqueryui/1.12.1/jquery-ui.css");
  57. inputScript("https://cdn.bootcss.com/jqueryui/1.12.1/jquery-ui.min.js");
  58. }
  59. if (inArray(includes, 'template')) {
  60. inputScript("https://iclient.supermap.io/web/libs/art-template/template-web.js");
  61. }
  62. if (inArray(includes, 'randomcolor')) {
  63. inputScript("https://cdn.bootcss.com/randomcolor/0.5.2/randomColor.min.js");
  64. }
  65. if (inArray(includes, 'papaparse')) {
  66. inputScript("https://cdn.bootcss.com/PapaParse/4.3.2/papaparse.min.js");
  67. }
  68. if (inArray(includes, 'moment')) {
  69. inputScript("https://cdn.bootcss.com/moment.js/2.18.1/moment.min.js");
  70. inputScript("https://cdn.bootcss.com/moment.js/2.18.1/locale/zh-cn.js");
  71. }
  72. if (inArray(includes, 'bootstrap-datetimepicker')) {
  73. inputCSS("https://cdn.bootcss.com/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css");
  74. inputScript("https://cdn.bootcss.com/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js");
  75. }
  76. if (inArray(includes, 'bootstrap-select')) {
  77. inputCSS("https://cdn.bootcss.com/bootstrap-select/1.12.2/css/bootstrap-select.min.css");
  78. inputScript("https://cdn.bootcss.com/bootstrap-select/1.12.2/js/bootstrap-select.min.js");
  79. }
  80. if (inArray(includes, 'geohash')) {
  81. inputScript("https://iclient.supermap.io/web/libs/geohash/geohash.js");
  82. }
  83. if (inArray(includes, 'dat-gui')) {
  84. inputScript("https://cdn.bootcss.com/dat-gui/0.7.6/dat.gui.js");
  85. datGuiI18N();
  86. }
  87. if (inArray(includes, 'admin-lte')) {
  88. inputCSS("https://iclient.supermap.io/web/libs/admin-lte/css/AdminLTE.min.css");
  89. inputCSS("https://iclient.supermap.io/web/libs/admin-lte/css/skins/skin-blue.min.css");
  90. inputCSS("https://iclient.supermap.io/web/libs/font-awesome/css/font-awesome.min.css");
  91. inputScript("https://iclient.supermap.io/web/libs/admin-lte/js/app.min.js");
  92. }
  93. if (inArray(includes, 'jquery.scrollto')) {
  94. inputScript("https://iclient.supermap.io/web/libs/jquery.scrollto/jquery.scrollTo.min.js");
  95. }
  96. if (inArray(includes, 'ace')) {
  97. inputScript("https://cdn.bootcss.com/ace/1.2.6/ace.js");
  98. }
  99. if (inArray(includes, 'widgets.alert')) {
  100. inputScript("../js/widgets.js");
  101. }
  102. if (inArray(includes, 'widgets')) {
  103. inputCSS("https://cdn.bootcss.com/css-loader/2.2.0/css-loader.css");
  104. inputScript("../js/widgets.js");
  105. }
  106. if (inArray(includes, 'zTree')) {
  107. inputCSS("https://cdn.bootcss.com/zTree.v3/3.5.29/css/zTreeStyle/zTreeStyle.min.css");
  108. inputScript("https://cdn.bootcss.com/zTree.v3/3.5.29/js/jquery.ztree.all.min.js");
  109. }
  110. if (inArray(includes, 'jquery-scontextMenu')) {
  111. inputCSS("https://cdn.bootcss.com/jquery-contextmenu/2.6.3/jquery.contextMenu.min.css");
  112. inputScript("https://cdn.bootcss.com/jquery-contextmenu/2.6.3/jquery.contextMenu.min.js");
  113. }
  114. if (inArray(includes, 'colorpicker')) {
  115. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/jquery.js");
  116. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/jquery.colorpicker.js");
  117. }
  118. if (inArray(includes, 'fileupLoad')) {
  119. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/jquery.js");
  120. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/fileupLoad.js");
  121. }
  122. if (inArray(includes, 'sticklr')) {
  123. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/css/jquery-sticklr.css");
  124. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/css/icon.css");
  125. }
  126. if (inArray(includes, 'responsive')) {
  127. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/css/bootstrap-responsive.min.css");
  128. }
  129. if (inArray(includes, 'lazyload')) {
  130. inputScript("https://cdn.bootcss.com/jquery_lazyload/1.9.7/jquery.lazyload.min.js");
  131. }
  132. if (inArray(includes, 'i18n')) {
  133. inputScript("https://cdn.bootcss.com/i18next/10.0.7/i18next.min.js");
  134. inputScript("https://cdn.bootcss.com/jquery-i18next/1.2.1/jquery-i18next.min.js");
  135. }
  136. if (inArray(includes, 'react')) {
  137. inputScript("https://iclient.supermap.io/web/libs/react/16.4.2/react.production.min.js");
  138. inputScript("https://iclient.supermap.io/web/libs/react/16.4.2/react-dom.production.min.js");
  139. inputScript("https://cdn.bootcss.com/babel-standalone/6.26.0/babel.min.js");
  140. }
  141. if (inArray(includes, 'vue')) {
  142. inputScript("https://iclient.supermap.io/web/libs/vue/2.5.17/vue.min.js");
  143. }
  144. if (inArray(includes, 'ionRangeSlider')) {
  145. inputCSS("https://cdn.bootcss.com/ion-rangeslider/2.2.0/css/ion.rangeSlider.css");
  146. inputCSS("https://cdn.bootcss.com/normalize/8.0.0/normalize.css");
  147. inputCSS("https://cdn.bootcss.com/ion-rangeslider/2.2.0/css/ion.rangeSlider.skinHTML5.css");
  148. inputScript("https://cdn.bootcss.com/ion-rangeslider/2.2.0/js/ion.rangeSlider.min.js");
  149. }
  150. if (inArray(includes, 'plottingPanel')) {
  151. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/zTree/jquery.ztree.core.js");
  152. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/zTree/css/zTreeStyle.css");
  153. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/jquery-easyui-1.4.4/jquery.easyui.min.js");
  154. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/jquery-easyui-1.4.4/css/easyui.css");
  155. inputScript("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/colorpicker/js/colorpicker.js");
  156. inputCSS("https://iclient.supermap.io/web/libs/iclient8c/examples/js/plottingPanel/colorpicker/css/colorpicker.css");
  157. }
  158. }
  159. function datGuiI18N() {
  160. document.writeln("<script>function registerEventListener(evt,fn){" +
  161. "if(window.attachEvent){window.attachEvent('on'+evt,fn);}" +
  162. "else{window.addEventListener(evt,fn,false);}" +
  163. "}</script>");
  164. document.writeln("<script>registerEventListener('load',function() { " +
  165. "dat.GUI.TEXT_CLOSED=resources.text_close;dat.GUI.TEXT_OPEN=resources.text_open;" +
  166. "})</script>")
  167. }
  168. load();
  169. window.isLocal = false;
  170. window.server = document.location.toString().match(/file:\/\//) ? "http://localhost:9000" : document.location.protocol + "//" + document.location.host;
  171. window.version = "10.1.1";
  172. window.preRelease = "";
  173. })();