onemapinit.html 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=9,chrome=1"/>
  6. <title>地图初始化</title>
  7. <script type="text/javascript" src="config/config.js"></script>
  8. <script type="text/javascript" src="scripts/vendor/cryptoJS/cryptoJS.js"></script>
  9. <script type="text/javascript" src="scripts/vendor/jquery/jquery-1.9.0.js"></script>
  10. </head>
  11. <body>
  12. <button id="btnSetting" type="button">初始化地图设置</button>
  13. <hr/>
  14. <button id="btnGetSetting" type="button">获取地图设置</button><br/><br/>
  15. <textarea rows="5" style="width: 90%;display: none" name="settingValue" id="settingValue"></textarea><br/>
  16. <button id="btnSetSetting" style="display: none" type="button">设置地图设置</button>
  17. <script>
  18. //系统初始化离线或在线
  19. if(map23DConfig.netType == 1){
  20. $.each(map23DConfigIntranet,function(i,t){
  21. map23DConfig[i] = t
  22. })
  23. $.each(onemapUrlConfigIntranet,function(i,t){
  24. onemapUrlConfig[i] = t
  25. })
  26. }else{
  27. $.each(map23DConfigNetwork,function(i,t){
  28. map23DConfig[i]= t
  29. })
  30. $.each(onemapUrlConfigNetwork,function(i,t){
  31. onemapUrlConfig[i] = t
  32. })
  33. }
  34. /**
  35. * 获取url参数
  36. * @param {[type]} name [description]
  37. * @return {[type]} [description]
  38. */
  39. function getQueryString(name) {
  40. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  41. var r = window.location.search.substr(1).match(reg);
  42. if (r != null) return decodeURI(r[2]);
  43. return '';
  44. };
  45. /**
  46. * 加密解密 调用 CryptoJS库
  47. * @exports encryptionControl
  48. * @type {Object}
  49. */
  50. encryptionControl = {
  51. /**
  52. * BASE64加密
  53. * @type {Function}
  54. * @param str {String} 加密前的文本
  55. * @returns {String} 加密后的文本
  56. */
  57. enCode: function(str) {
  58. return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(str));
  59. },
  60. /**
  61. * BASE64解密
  62. * @type {Function}
  63. * @param str {String} 解密前的文本
  64. * @returns {String} 解密后的明文
  65. */
  66. deCode: function(str) {
  67. return CryptoJS.enc.Base64.parse(str).toString(CryptoJS.enc.Utf8);
  68. }
  69. };
  70. /**
  71. * cookie管理
  72. * @exports ONEMAP.C.cookie
  73. * @type {Object}
  74. */
  75. cookieControl = {
  76. /**
  77. * 设置cookie
  78. * @type {Function}
  79. * @param name {String} 名称
  80. * @param value {String} 值
  81. * @param days {Number} 过期时间(天)
  82. * @example
  83. * ONEMAP.C.cookie.set('cookieName','cookieValue',20);
  84. */
  85. set: function(name, value, days) {
  86. document.cookie = encryptionControl.enCode(name) + "=" + encryptionControl.enCode(escape(value));
  87. },
  88. /**
  89. * 获取cookie
  90. * @type {Function}
  91. * @param name {String} 名称
  92. * @returns {null|String} 返回值
  93. * @example
  94. * ONEMAP.C.cookie.get('cookieName');
  95. */
  96. get: function(name) {
  97. var arr, reg = new RegExp("(^| )" + encryptionControl.enCode(name) + "=([^;]*)(;|$)");
  98. arr = document.cookie.match(reg);
  99. if (arr) {
  100. return encryptionControl.deCode(unescape(arr[2]));
  101. } else {
  102. return null;
  103. }
  104. },
  105. /**
  106. * 删除cookie
  107. * @type {Function}
  108. * @param name {String} 名称
  109. * @example
  110. * ONEMAP.C.cookie.del('cookieName');
  111. */
  112. del: function(name) {
  113. var exp = new Date();
  114. exp.setTime(exp.getTime() - 1);
  115. var cval = this.get(name);
  116. if (cval !== null) document.cookie = encryptionControl.enCode(name) + "=" + cval + ";expires=" + exp.toGMTString();
  117. }
  118. };
  119. function login(){
  120. // if(onemapUrlConfig.accessType == 'oauth'){
  121. // var jumpUrl = onemapUrlConfig.ssoServiceUrl + '/oauth/login?service=' + onemapUrlConfig.siteUrl+'/onemapinit.html';
  122. // window.location.replace(jumpUrl);
  123. // }
  124. // if(onemapUrlConfig.accessType == 'sso'){
  125. // var jumpUrl = onemapUrlConfig.ssoServiceUrl + '/login?service=' + onemapUrlConfig.siteUrl+'/onemapinit.html';
  126. // window.location.replace(jumpUrl);
  127. // }
  128. }
  129. $(function(){
  130. if(getQueryString('ticket').length>0){
  131. cookieControl.set('ticket',getQueryString('ticket'));
  132. }
  133. if(!cookieControl.get('ticket')){
  134. //没有ticket 跳转到登录
  135. login();
  136. return false;
  137. }
  138. $('#btnSetting').bind('click',function(){
  139. if(!cookieControl.get('ticket')){
  140. //没有ticket 跳转到登录
  141. login();
  142. return false;
  143. }
  144. //先判断是否有数据,没数据更新初始化数据
  145. $.ajax({
  146. type: "get",
  147. dataType: 'json',
  148. url: onemapUrlConfig.storageServiceUrl + '/storage/mapSetting?ticket=' + cookieControl.get('ticket'),
  149. success: function(data) {
  150. if(!data['data']){
  151. $.ajax({
  152. url: onemapUrlConfig.storageServiceUrl + '/storage?ticket=' + cookieControl.get('ticket'),
  153. type: 'POST',
  154. data: {
  155. mapSetting: JSON.stringify(onemapUrlConfig.defaultGlobalSettingData)
  156. }
  157. })
  158. .done(function(data2) {
  159. if(data2['code'] == 0){
  160. alert('设置成功!')
  161. }else {
  162. alert(data2['message']);
  163. }
  164. });
  165. }else {
  166. alert('已经初始化过了。')
  167. }
  168. }
  169. });
  170. });
  171. $('#btnGetSetting').bind('click',function(){
  172. if(!cookieControl.get('ticket')){
  173. //没有ticket 跳转到登录
  174. login();
  175. return false;
  176. }
  177. //
  178. $.ajax({
  179. type: "get",
  180. dataType: 'json',
  181. url: onemapUrlConfig.storageServiceUrl + '/storage/mapSetting?ticket=' + cookieControl.get('ticket'),
  182. success: function(data) {
  183. if(data['data']){
  184. $('#settingValue').val(data['data']).show();
  185. $('#btnSetSetting').show();
  186. }else {
  187. alert(data['message'])
  188. }
  189. }
  190. });
  191. })
  192. $('#btnSetSetting').bind('click',function(){
  193. if(!cookieControl.get('ticket')){
  194. //没有ticket 跳转到登录
  195. login();
  196. return false;
  197. }
  198. $.ajax({
  199. url: onemapUrlConfig.storageServiceUrl + '/storage?ticket=' + cookieControl.get('ticket'),
  200. type: 'POST',
  201. data: {
  202. mapSetting: $('#settingValue').val()
  203. }
  204. })
  205. .done(function(data) {
  206. if(data['code'] == 0){
  207. alert('设置成功!')
  208. }else {
  209. alert(data['message']);
  210. }
  211. });
  212. })
  213. })
  214. </script>
  215. </body>
  216. </html>