Onload.js 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557
  1. //------------------------------------------------------------------------------------用户桌面和程序数据初始化区域----------------------------------------------------------------------------------------------------------------
  2. Namespace.register("U.MD.D"); //桌面onload和桌面总控的命名空间
  3. /*
  4. window.onload的流程:
  5. 1、自由属性的设置,例如:页面识别id。允许浏览器多页面浏览www.1473.cn
  6. 2、加载各种事件绑定,如:页面大小监视,不允许选择桌面文字,ie7以下浏览器页面提示
  7. 3、加载桌面图标。
  8. 4、加载跨域设置,如果没有跨域,首页数据无法获取
  9. 4、加载首页
  10. 5、加载广告,QQ登录等外链。
  11. UD和UC区别 uc是框架函数 ud为操作系统原壳 这里的简化的目标很简单 只要有人应用ud 就会引用一个web操作系统 提供操作系统的功能应用
  12. 难题 :
  13. 1、命名和用户冲突 会导致原web系统不可使用
  14. 2、函数冲突 如 用户自带window.resize这样的函数 我们提供了接口 但是这个接口的的暴露性可见性体现出文档的重要 宣传文档也就是文宣的重要性高了
  15. 3、有参数注释的都为暴露接口类型 其他都为内部使用 更好的体现方式
  16. */
  17. //#region 配置区域,相当于全局变量定义
  18. U.MD.D.IsUseStudio = true;
  19. //本地存储类
  20. U.MD.D.LocalStorage = null;
  21. //#endregion
  22. //#region onload处理
  23. /**
  24. * 系统初始化处理
  25. *
  26. * @param {function} 在外部项目应用该项目的时候 可以传入cb这个参数,如果传入了这个参数在回调跨域main.1473.cn加载成功会就会直接回调
  27. */
  28. window.onload = function () {
  29. U.MD.D.Load();
  30. U.MD.U.L.login();
  31. //U.MD.D.isLogin();
  32. // U.MD.D.fullscreen();
  33. U.MD.D.stopSafari();
  34. // window.addEventListener('resize', () => {
  35. // var realHeight = window.innerHeight
  36. // var realWidth = window.innerWidth
  37. // initViewport(realHeight, realWidth);
  38. // // window.location.reload();
  39. // })
  40. }
  41. US.Config = {
  42. server: '//beta.api.cocorobo.cn/api/',
  43. api: '//beta.api.cocorobo.cn/',
  44. chat: "//chat.api.cocorobo.cn/",
  45. edu: '//api.edu.cocorobo.cn/edu/',
  46. origin: '//cocorobo.cn',
  47. pbl: "//pbl.cocorobo.cn/api/pbl/",
  48. // pbl: "http://localhost:7003/api/pbl/",
  49. basename: '',
  50. }
  51. /**
  52. * 供外部调用的window.onload函数云端系统启动项
  53. *
  54. * @param {function} 在外部项目应用该项目的时候 可以传入cb这个参数,如果传入了这个参数在回调跨域main.1473.cn加载成功会就会直接回调
  55. */
  56. U.MD.D.Load = U.MD.D.FLoad = function (cb) {
  57. //这里判断是如果是www.1473.cn 或者 www.boomyun.com项目的时候 或者是 通过ufrom的跨域函数加载成功页面时候可以执行window.onload, 添加判断的目的主要是反正 其他项目引用uformd的时候自动执行window.onload报错。
  58. //当引用云端硬盘,好友模块时需要在自己的js文件中添加window.onload入口函数,否则会触发云端的window.onload,导致系统报错,
  59. //初始化桌面,如果是1473主站点那么初始化桌面系统,否则外部引入1473不加载桌面
  60. //系统初始化、第一个就是加载桌面,然后初始化全局变量、绑定事件、最后加载数据(加载数据需要跨域加载,因为项目分离的原因,我们有disk.1473.cn、user.1473.cn、firend.1473.cn里面有静态数据,还有动态的后台)
  61. if (U.MD.D.IsUseStudio) {
  62. //桌面初始化弹出
  63. U.selectEl("#UD_Dtop")[0].style.display = "block";
  64. //桌面做为一个置底的窗体
  65. new U.UF.UI.form(false, U.selectEl("#UD_Dtop")[0], { onresize: true, style: { "cssText": "width:100%;height:100%;padding:0;border:0;border-radius:0;box-shadow:0;position:static;" }, "className": "" }, { istop: false, isdrag: false, isdrag: false, isstretching: false, isenlarge: false, isnarrow: false, isclose: false }, null, { style: { "padding": "0" } });
  66. }
  67. //这里加判断的原因是怕有开发者开发的过程中直接调用uformd.js没有写跨域加载,没有写window.onload导致再运行的过程中找不到元素报错
  68. if ($("#U_MD_Home")[0]) {
  69. //设置页面大小等的全局变量
  70. U.MD.D.settingGlobalVariables();
  71. //浏览器事件监视及处理
  72. U.MD.D.addEvents();
  73. //var _browserinfo = U.UF.CI.getBrowser(); //获取浏览器
  74. ////ie7以下的浏览器弹出不兼容的处理
  75. //if (_browserinfo["browser"] == "msie" && parseInt(_browserinfo["ver"]) < 7) {
  76. // //弹出不兼容的处理
  77. // U.MD.D.A.browserCompatibleForm();
  78. //}
  79. }
  80. //跨域加载
  81. U.MD.D.crossDomain(cb); //跨域初始化,里面包含了用户登录
  82. }
  83. /**
  84. * 设置当前使用页面大小
  85. */
  86. U.MD.D.settingGlobalVariables = function () {
  87. //获取页面的大小
  88. var _size = U.selectEl("body").getElementInfo();
  89. US.height = _size["CH"]; //获取高度
  90. US.width = _size["CW"]; //获取宽度
  91. //1473的登录识别id
  92. US.systemId = 1;
  93. //页面识别id 页面唯一的识别 作为用户访问1473的唯一识别码,在之前用户获取聊天室的信息的唯一识别码
  94. US.pageId = Guid.newGuid();
  95. }
  96. /**
  97. * 系统监视
  98. */
  99. U.MD.D.addEvents = function () {
  100. //页面活动状态监视,失焦的时候停止五秒刷新,聚焦的时候开始刷新
  101. U.UF.EV.IsActivity(U.MD.D.focus, U.MD.D.blur);
  102. //监视页面的点击 使得窗体点击为顶部
  103. U.UF.F.clickTopWindow();
  104. //页面大小变化监视
  105. U.MD.D.reSize();
  106. window.onresize = U.MD.D.reSize;
  107. //如果是云端1473则屏蔽菜单和错误弹框
  108. if (U.MD.D.IsUseStudio) {
  109. if (window.print) { //判断是否有右键菜单
  110. document.oncontextmenu = U.UF.EV.stopDefault; //阻止桌面右键默认菜单
  111. }
  112. document.onselectstart = U.UF.C.shieldedSelect; //禁止文本选择处理
  113. U.UF.EV.addElementEvent("keydown", document, U.UF.C.shieldedBackspace); //禁止浏览器回退
  114. //window.onerror = U.MD.D.error; //错误提示屏蔽
  115. }
  116. //允许错误提示和右键菜单
  117. else {
  118. window.onerror = null;
  119. }
  120. //页面路由事件处理
  121. U.UF.N.route(U.MD.N.urlGuide);
  122. }
  123. /**
  124. * 页面大小变化时,需要重新排列图标及任务栏大小的变化.
  125. */
  126. U.MD.D.reSize = function () {
  127. //页面变化处理
  128. //获取页面的大小
  129. // US.height = window.innerHeight > window.innerWidth ? window.innerWidth : window.innerHeight;
  130. // US.width = window.innerHeight > window.innerWidth ? window.innerHeight : window.innerWidth;
  131. var _size = U.selectEl("html").getElementInfo();
  132. if (_size["CH"] > 500) {
  133. //处理窗体区域 随着页面大小变化而变化
  134. U.UF.UI.form.windowResize();
  135. // var _size = U.selectEl("body").getElementInfo();
  136. US.height = _size["CH"]; //获取高度
  137. US.width = _size["CW"]; //获取宽度;
  138. document.body.style.width = US.width + 'px';
  139. document.body.style.height = US.height + 'px';
  140. //任务栏处理
  141. if ($("#U_MD_D_RW")) {
  142. U.selectEl("#U_MD_D_RW").css("width", US.width - 165 + "px");
  143. U.MD.D.T.taskbar.multitask($("#U_MD_D_RW")[0]);
  144. //桌面图标处理
  145. U.MD.D.iconPostion($("#U_MD_D_K").Child());
  146. }
  147. }
  148. }
  149. /**
  150. * 跨域引入1473
  151. * @param {function} 跨域加载成功后的回调函数
  152. */
  153. U.MD.D.crossDomain = function (cb) {
  154. U.MD.D.loadApplication(cb);
  155. ////跨域加载,如果是1473的跨域,那么则添加跨域的iframe处理
  156. //if (document.domain == "1473.cn") {
  157. // U.UF.CD.loadAjaxCrossDomain(function () {
  158. // U.MD.D.loadApplication(cb);
  159. // });
  160. //}
  161. ////如果是非1473的跨域,添加跨域的iframe
  162. //else {
  163. // U.UF.CD.thirdPartyLoadAjaxCrossDomain(function () {
  164. // U.MD.D.loadApplication(cb);
  165. // });
  166. //}
  167. }
  168. /**
  169. * 加载user 、 friend 、disk的js
  170. */
  171. U.MD.D.loadApplication = function (cb) {
  172. //U.UF.CD.loadApplication(function () {
  173. // U.MD.D.asynCrossDomain(cb);
  174. //});
  175. U.MD.D.asynCrossDomain(cb);
  176. }
  177. /**
  178. * 域名加载成功后异步 此处可正式获取数据
  179. * @param {function} 跨域加载成功后的回调函数
  180. */
  181. U.MD.D.asynCrossDomain = function (cb) {
  182. ////初始化url的处理
  183. //U.MD.N.urlGuide();
  184. ////通过cookie登录
  185. //U.MD.U.L.cookieLogin();
  186. ////如果是1473则弹出1473的首页
  187. //if (U.MD.D.IsUseStudio) {
  188. // U.MD.D.I.openApplication("boomYun");
  189. //}
  190. ////其它模块加载处理
  191. //U.MD.D.otherModularLoad();
  192. ////添加用户访问记录
  193. //U.UF.CI.getUserLocation(U.MD.D.visitLog);
  194. //桌面开始点,起始函数
  195. if ($("#UD_Dtop")[0]) {
  196. U.MD.D.I.init();
  197. }
  198. //如果其他站点进入1473,这里是引入成功的回调处理
  199. if (U.UF.C.isFunction(cb)) {
  200. cb(); //回调处理
  201. }
  202. setInterval(function () {
  203. U.MD.D.getuser(); //用户登录
  204. }, 2000)
  205. }
  206. /**
  207. * 其它模块的加载
  208. */
  209. U.MD.D.otherModularLoad = function () {
  210. //计时器消息初始化 每个3秒刷一次消息
  211. U.MD.C.T.onesetInterval();
  212. //加载如广告 各模块加载
  213. U.MD.D.thirdPartyLoad(); //页面插件加载
  214. //html5本地存储,暂时用来完成本地页面交互消息 作用共享页面信息,还未完善。
  215. //U.MD.D.record();
  216. }
  217. /**
  218. * 第三方广告和登录加载处理
  219. */
  220. U.MD.D.thirdPartyLoad = function () {
  221. //阿里巴巴广告加载
  222. // U.UF.DL.C.AD.alimama([
  223. // { pid: "mm_32325420_3265865_24254681", appkey: "", unid: "" },
  224. // { pid: "mm_32325420_3265865_14752067", appkey: "", unid: "" },
  225. // { pid: "mm_32325420_3265865_24246760", appkey: "", unid: "" },
  226. // { pid: "mm_32325420_3265865_24254681", appkey: "", unid: ""}]);
  227. //qq登录加载按钮
  228. // U.MD.U.OT.qqLoadJs({ btnId: "U_MD_U_L_login_O_T_app_QQ", size: "C_S" });
  229. //微博登录加载按钮
  230. // U.MD.U.OT.weiboLoadJs({ id: "U_MD_U_L_login_O_T_app_I", type: "3,2", show_head: false, show_name: false, show_cancel: false,
  231. // callback: { login: U.MD.U.OT.weiboLoginCallBack }
  232. // });
  233. //百度统计加载
  234. // U.UF.DL.C.AD.onloadBaiduJs("1fce47ee7e8655ddd108fca7116f0752");
  235. // U.UF.DL.C.AD.onloadBaiduJs("f0ececeb4f687bc4d4ffb7719f4cf6a7");
  236. }
  237. /**
  238. * 写入访问用户信息
  239. */
  240. U.MD.D.visitLog = function () {
  241. U.A.Request(US.USER, ["AddToLoginLog", US.userInfo.UserId || US.EMPTYGUID, US.city.userAllLocation || ""], function () { }); //访问日志添加消息
  242. }
  243. //#endregion
  244. //#region 页面事件处理
  245. //关闭页面处理 把页面的活动数-1
  246. window.onunload = function () {
  247. try {
  248. var _userinfo = US.userInfo;
  249. if (U.MD.D.LocalStorage) {
  250. var _count = U.MD.D.LocalStorage.get("ati") || 0;
  251. if (_count > 0) { _count-- };
  252. U.MD.D.LocalStorage.set("ati", _count); //这是活动用户-1
  253. }
  254. if (_userinfo.UserId && U.A) { //在状态中让这个活动用户下线
  255. U.A.Request(US.USER, ["UserOffline", _userinfo.UserId], function () { }, []);
  256. }
  257. } catch (e) { }
  258. }
  259. //错误处理,前端错误需要在控制台输出,同时提交到错误数据库
  260. //window.onerror = function(sMessage,sUrl,sLine,columnNumber,errorObj){};
  261. //onerror函数的五个参数用于确定错误确切的信息,代表的意思依次为:
  262. //* @param {String} errorMessage errorMessage 错误信息
  263. //* @param {String} scriptURI 出错的文件
  264. //* @param {Long} lineNumber 出错代码的行号
  265. //* @param {Long} columnNumber 出错代码的列号
  266. //* @param {Object} errorObj 错误的详细信息,Anything
  267. U.MD.D.error = function (errorMessage, scripturi, linenumber, columnnumber, errorobj) {
  268. errorobj = errorobj || {}; //屏蔽js错误
  269. U.A.Request(US.USER, ["SetError", 0, (event.errorMessage || event || errorMessage), (scripturi || event.filename || event.errorUr) + "。行号:" + (linenumber || event.lineno || event.errorLine)], function () { }, []); //错误消息发送到数据库
  270. U.UF.C.console(event.errorMessage || event || errorobj); //console 输出错误信息
  271. return true; //不让浏览器弹出错误报告,浏览器会弹出一个comfirm的错误。
  272. }
  273. /**
  274. * 用户登录处理
  275. */
  276. U.MD.D.getuser = function () {
  277. var userInfo = US.userInfo;
  278. if (Object.keys(userInfo).length === 0) {
  279. var _cookie = U.UF.Cookie.get("cocorobo");
  280. if (Object.keys(userInfo).length === 0 && _cookie) {
  281. U.A.Request(US.Config.server + "getcookieuserid", [], function (res) {
  282. if (res.value && res.value[0] && res.value[0][0]) {
  283. var _user = res.value[0][0];
  284. U.A.Request(US.Config.edu + "admin/userinfo/userinfoById/" + _user.userid, [], function (res) {
  285. if (res.value && res.value[0] && res.value[0][0]) {
  286. US.userInfo = res.value[0][0]; //记录用户数据
  287. US.userInfo.userid = _user.userid;
  288. if ($("#U_MD_HomeC_Pop")[0]) {
  289. $("#U_MD_HomeC_Pop")[0].close(); //关闭登陆
  290. }
  291. U.A.Request(US.Config.pbl + "selectUser?userid=" + _user.userid, [], function (res) { //US.userInfo.userid
  292. if (res.value == null || res.value[0].length == 0) {
  293. // U.MD.D.I.openApplication("my")
  294. let _name = US.userInfo.alias ? US.userInfo.alias : US.userInfo.username
  295. let _type = US.userInfo == 1 ? 2 : 1
  296. // US.Config.pbl
  297. // "http://localhost:7003/api/pbl/"
  298. U.A.Request(US.Config.pbl + "updatePblMessage", [_user.userid, _name, _type, '45facc0a-1211-11ec-80ad-005056b86db5', '', '', "0"], function (res) {
  299. window.location.reload();
  300. }, [], { "type": "POST", "withCredentials": true });
  301. } else {
  302. if (res.value[0][0].organizeid == '91305d49-01ba-11ed-8c78-005056b86db4') {
  303. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/mingdeBg.png")'
  304. } else if (res.value[0][0].organizeid == 'c7df0bd4-6e75-401a-a137-4e163aa62263') {
  305. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/zhongshanBg.png")'
  306. } else if (res.value[0][0].organizeid == '580aac24-a939-49f7-a75a-40a7b5af3a17') {
  307. // $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/longweiBg.png")'
  308. } else if (res.value[0][0].organizeid == 'b1095a3c-1d06-4ac8-854f-7c0d97f4ab41') {
  309. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/yunhaiBg.png")'
  310. } else if (res.value[0][0].organizeid == '857af1c7-c8ee-4b04-85b5-fd182903adb7') {
  311. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/beijingBg.png")'
  312. } else if (res.value[0][0].organizeid == '69893dca-1d47-11ed-8c78-005056b86db5') {
  313. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/weilaiBg.png")'
  314. } else if (res.value[0][0].organizeid == 'efdef564-4064-11ed-8c78-005056b86db5') {
  315. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/pz.jpg")'
  316. } else if (res.value[0][0].organizeid == 'd9db3320-503a-11ed-8c78-005056b86db5') {
  317. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/hzBg.png")'
  318. } else if (res.value[0][0].organizeid == 'ccb9754d-59c1-11ed-8c78-005056b86db5') {
  319. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/nanfangBg.png")'
  320. } else if (res.value[0][0].organizeid == 'f30a6615-5379-11ed-8c78-005056b86db5') {
  321. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/longhuaBg.png")'
  322. } else if (res.value[0][0].organizeid == '4787cc87-6588-11ed-8c78-005056b86db5') {
  323. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/nanfangBg.png")'
  324. } else if (res.value[0][0].organizeid == '9f888eae-7558-11ed-8c78-005056b86db5') {
  325. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/song.png")'
  326. } else if (res.value[0][0].organizeid == '2b9ceb66-a1dd-11ed-b13d-005056b86db5') {
  327. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/gmxxBg.png")'
  328. } else if (res.value[0][0].organizeid == '1c3b9def-8fbe-11ed-b13d-005056b86db5') {
  329. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/wankeBg.png")'
  330. }
  331. if (res.value[0][0].org == 'eb2af5e9-ac3d-46b6-9fe3-3c1c364f018d') {
  332. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/yantianOrgBg.png")'
  333. } else if (res.value[0][0].org == '7ada499f-4ec7-11ed-8c78-005056b86db5') {
  334. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/csteamBg.png")'
  335. } else if (res.value[0][0].org == 'eb2af5e9-ac3d-46b6-9fe3-3c1c364f0217') {
  336. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/gm/bg.png")'
  337. U.MD.D.getNotice();
  338. } else if (res.value[0][0].org == '97c4ee8b-d010-4042-986d-e9d3c217264f') {
  339. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/zhoujia.jpg")'
  340. } else if (res.value[0][0].org == '150e3120-9195-11ed-b13d-005056b86db5') {
  341. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/tencentBg.jpg")'
  342. U.MD.D.getNotice();
  343. }
  344. US.userInfo = res.value[0][0];
  345. $(".avatar")[0].style.display = "block";
  346. }
  347. $(".login")[0].style.display = "none";
  348. $(".register")[0].style.display = "none";
  349. $(".userName")[0].style.display = "block";
  350. $(".userName")[0].innerHTML = US.userInfo.username || US.userInfo.alias;
  351. $(".exit")[0].style.display = "block";
  352. U.MD.D.I.initDesktopIcons($("#U_MD_D_K")[0]);
  353. U.MD.O.P.connect(); //登录成功后连接socket服务同步协同编辑
  354. }, [], { "type": "GET", "withCredentials": true });
  355. }
  356. }, [], { "type": "GET", "withCredentials": true });
  357. }
  358. }, [], { "type": "GET", "withCredentials": true });
  359. }
  360. } else {
  361. if (userInfo.organizeid == '91305d49-01ba-11ed-8c78-005056b86db4') {
  362. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/mingdeBg.png")'
  363. } else if (userInfo.organizeid == 'c7df0bd4-6e75-401a-a137-4e163aa62263') {
  364. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/zhongshanBg.png")'
  365. } else if (userInfo.organizeid == '580aac24-a939-49f7-a75a-40a7b5af3a17') {
  366. // $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/longweiBg.png")'
  367. } else if (userInfo.organizeid == 'b1095a3c-1d06-4ac8-854f-7c0d97f4ab41') {
  368. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/yunhaiBg.png")'
  369. } else if (userInfo.organizeid == '857af1c7-c8ee-4b04-85b5-fd182903adb7') {
  370. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/beijingBg.png")'
  371. } else if (userInfo.organizeid == '69893dca-1d47-11ed-8c78-005056b86db5') {
  372. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/weilaiBg.png")'
  373. } else if (userInfo.organizeid == 'efdef564-4064-11ed-8c78-005056b86db5') {
  374. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/pz.jpg")'
  375. } else if (userInfo.organizeid == 'd9db3320-503a-11ed-8c78-005056b86db5') {
  376. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/hzBg.png")'
  377. } else if (userInfo.organizeid == 'ccb9754d-59c1-11ed-8c78-005056b86db5') {
  378. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/nanfangBg.png")'
  379. } else if (userInfo.organizeid == 'f30a6615-5379-11ed-8c78-005056b86db5') {
  380. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/longhuaBg.png")'
  381. } else if (userInfo.organizeid == '4787cc87-6588-11ed-8c78-005056b86db5') {
  382. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/nanfangBg.png")'
  383. } else if (userInfo.organizeid == '9f888eae-7558-11ed-8c78-005056b86db5') {
  384. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/song.png")'
  385. } else if (userInfo.organizeid == '2b9ceb66-a1dd-11ed-b13d-005056b86db5') {
  386. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/gmxxBg.png")'
  387. } else if (userInfo.organizeid == '1c3b9def-8fbe-11ed-b13d-005056b86db5') {
  388. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/wankeBg.png")'
  389. }
  390. if (userInfo.org == 'eb2af5e9-ac3d-46b6-9fe3-3c1c364f018d') {
  391. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/yantianOrgBg.png")'
  392. } else if (userInfo.org == '7ada499f-4ec7-11ed-8c78-005056b86db5') {
  393. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/csteamBg.png")'
  394. } else if (userInfo.org == 'eb2af5e9-ac3d-46b6-9fe3-3c1c364f0217') {
  395. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/gm/bg.png")'
  396. U.MD.D.getNotice();
  397. } else if (userInfo.org == '97c4ee8b-d010-4042-986d-e9d3c217264f') {
  398. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/zhoujia.jpg")'
  399. } else if (userInfo.org == '150e3120-9195-11ed-b13d-005056b86db5') {
  400. if (!$("#tc_desktop_css")[0]) {
  401. const link = document.createElement("link");
  402. link.rel = "stylesheet";
  403. link.href =
  404. "./css/tencent/Desktop.css";
  405. link.id = "tc_desktop_css"
  406. document.body.appendChild(link);
  407. $(".avatar")[0].onclick= function(){
  408. U.MD.D.I.openApplication('tcData')
  409. }
  410. }
  411. $("#U_MD_D_BG")[0].style.backgroundImage = 'url("/img/icon/tencentBg.jpg")'
  412. U.MD.D.getNotice();
  413. }
  414. }
  415. }
  416. //#endregion
  417. //#region 获取ifram下的html
  418. //U.MD.D.getIfraemHtml = function (src) {
  419. // var _iframe = $$("iframe", { src: src, style: { display: "none"} });
  420. // //跨域回调设置
  421. // U.UF.DL.iframeLoad(_iframe, function () {
  422. // var _html = _iframe.contentWindow.document.body.innerHTML;
  423. // console.log(_html);
  424. // U.selectEl(_iframe).remove();
  425. // });
  426. // U.selectEl(_iframe).appendTo($('body')[0]);
  427. //};
  428. //#endregion
  429. U.MD.D.fullscreen = function () {
  430. //if (document.body.offsetWidth < 1025) {
  431. U.UF.C.fullScreen()
  432. //}
  433. document.body.addEventListener('dblclick', () => {
  434. U.UF.C.fullScreen()
  435. // const isFullScreen = document.fullscreenElement
  436. // if (isFullScreen) {
  437. // U.UF.C.cancelfullScreen()
  438. // } else {
  439. // U.UF.C.fullScreen()
  440. // }
  441. })
  442. }
  443. U.MD.D.stopSafari = function () {
  444. //阻止safari浏览器双击放大功能
  445. let lastTouchEnd = 0 //更新手指弹起的时间
  446. document.documentElement.addEventListener("touchstart", function (event) {
  447. //多根手指同时按下屏幕,禁止默认行为
  448. if (event.touches.length > 1) {
  449. event.preventDefault();
  450. }
  451. });
  452. document.documentElement.addEventListener("touchend", function (event) {
  453. let now = (new Date()).getTime();
  454. if (now - lastTouchEnd <= 300) {
  455. //当两次手指弹起的时间小于300毫秒,认为双击屏幕行为
  456. event.preventDefault();
  457. } else { // 否则重新手指弹起的时间
  458. lastTouchEnd = now;
  459. }
  460. }, false);
  461. //阻止双指放大页面
  462. document.documentElement.addEventListener("gesturestart", function (event) {
  463. event.preventDefault();
  464. });
  465. }
  466. U.MD.D.noticeBlock = '1'
  467. U.MD.D.OpenNotice = function () {
  468. let box = $('.U_MD_D_BD_notice')[0]
  469. box.style.display = 'block'
  470. }
  471. U.MD.D.cancelNotice = function () {
  472. U.UF.EV.stopBubble();
  473. let box = $('.U_MD_D_BD_notice')[0]
  474. box.style.display = 'none'
  475. U.MD.D.noticeBlock = '2'
  476. }
  477. U.MD.D.getNotice = function () {
  478. // a77e9404-efec-11e9-96f9-028edca3b798&oid=45facc0a-1211-11ec-80ad-005056b86db5&org=undefined&role=1
  479. var uid = US.userInfo.userid,
  480. oid = US.userInfo.organizeid,
  481. org = US.userInfo.org;
  482. U.A.Request(US.Config.pbl + "selectNotice?uid=" + uid + "&oid=" + oid + "&org=" + org + "&page=1", [], function (res) {
  483. if (res.value && res.value[0].length > 0) {
  484. let box = $('.U_MD_D_BD_noticeBox_box')[0]
  485. let _res = res.value[0]
  486. if (U.MD.D.noticeBlock == '1') {
  487. $('.U_MD_D_BD_notice')[0].style.display = 'block'
  488. }
  489. $('.U_MD_D_BD_notice_img')[0].style.display = 'block'
  490. box.innerHTML = ''
  491. var num = _res.length > 3 ? 3 : _res.length
  492. for (var i = 0; i < num; i++) {
  493. var _box = $$('div', { className: 'U_MD_D_BD_noticeBox' }, box)
  494. var _title = $$('div', { className: 'U_MD_D_BD_noticeBox_title' }, _box)
  495. // $$('span', { innerHTML: '消息通知' }, _title)
  496. $$('span', { innerHTML: _res[i].title }, _title)
  497. var _content = $$('div', { className: 'U_MD_D_BD_noticeBox_content' }, _box)
  498. $$('span', { innerHTML: _res[i].content.replace(/<[^>]*>/g, "") }, _content)
  499. var _time = $$('div', { className: 'U_MD_D_BD_noticeBox_time' }, _box)
  500. $$('span', { innerHTML: _res[i].creatTime }, _time)
  501. }
  502. } else {
  503. $('.U_MD_D_BD_notice')[0].style.display = 'none'
  504. $('.U_MD_D_BD_notice_img')[0].style.display = 'none'
  505. }
  506. // setTimeout(() => {
  507. // U.MD.D.getNotice();
  508. // }, 5000);
  509. }, [], { "type": "GET", "withCredentials": true });
  510. }