appIM.js 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. layout.addReady(function(){
  2. (function(layout){
  3. debugger;
  4. var uri = new URI(window.location.href);
  5. var appNames = uri.getData("app");
  6. var optionsStr = uri.getData("option");
  7. var statusStr = uri.getData("status");
  8. var options = (optionsStr) ? JSON.decode(optionsStr) : null;
  9. var statusObj = (statusStr) ? JSON.decode(statusStr) : null;
  10. var _load = function(){
  11. //o2.require("MWF.xDesktop.MessageMobile", function(){
  12. // layout.message = new MWF.xDesktop.MessageMobile();
  13. // layout.message.load();
  14. //}.bind(this));
  15. layout.apps = [];
  16. //layout.node = $("layout");
  17. layout.node = $("layout") || $("appContent") || document.body;
  18. var appName=appNames, m_status=statusObj, option=options;
  19. var topWindow = window.opener;
  20. if (topWindow){
  21. try{
  22. if (!appName) appName = topWindow.layout.desktop.openBrowserApp;
  23. if (!m_status) m_status = topWindow.layout.desktop.openBrowserStatus;
  24. if (!option) option = topWindow.layout.desktop.openBrowserOption;
  25. }catch(e){}
  26. }
  27. MWF.require("MWF.xDesktop.WebSocket", function(){
  28. if (!layout.desktop) {
  29. layout.desktop = {}
  30. }
  31. layout.desktop.socket = new MWF.xDesktop.WebSocket();
  32. layout.openApplication(null, appName, option||{}, m_status);
  33. }.bind(this));
  34. if (layout.session.user.name === "anonymous"){
  35. o2.loadCss("../o2_core/o2/xDesktop/$Default/blue/style-skin.css");
  36. }else{
  37. o2.xDesktop.getUserLayout(function(){
  38. var style = layout.userLayout.flatStyle;
  39. o2.loadCss("../o2_core/o2/xDesktop/$Default/"+style+"/style-skin.css");
  40. });
  41. }
  42. };
  43. if (layout.session && layout.session.user){
  44. _load();
  45. }else{
  46. if (layout.sessionPromise){
  47. layout.sessionPromise.then(function(){
  48. _load();
  49. },function(){});
  50. }
  51. }
  52. //_load();
  53. })(layout);
  54. });