Explorar o código

合并初始化js文件,减少载入请求数

huqi %!s(int64=5) %!d(string=hai) anos
pai
achega
9a4f76b7cd
Modificáronse 49 ficheiros con 1831 adicións e 25854 borrados
  1. 180 2
      o2web/gulpfile.js
  2. 3 2
      o2web/package.json
  3. 0 31
      o2web/source/o2_core/compatible.js
  4. 0 1169
      o2web/source/o2_core/init.js
  5. 0 24124
      o2web/source/o2_core/o2.all.js
  6. 1225 0
      o2web/source/o2_core/o2.js
  7. 33 13
      o2web/source/o2_core/o2/o2.core.js
  8. 1 1
      o2web/source/o2_core/o2/o2.more.js
  9. 0 15
      o2web/source/o2_core/o2/widget/Common.js
  10. 2 1
      o2web/source/x_component_Template/MPopupForm.js
  11. 5 1
      o2web/source/x_component_process_Work/Main.js
  12. 1 1
      o2web/source/x_component_process_Xform/Actionbar.js
  13. 31 0
      o2web/source/x_component_process_Xform/Common.js
  14. 4 0
      o2web/source/x_component_process_Xform/Div.js
  15. 1 1
      o2web/source/x_component_process_Xform/Form.js
  16. 5 40
      o2web/source/x_component_process_Xform/Html.js
  17. 52 0
      o2web/source/x_component_process_Xform/Image.js
  18. 7 136
      o2web/source/x_component_process_Xform/Package.js
  19. 1 0
      o2web/source/x_component_process_Xform/Source.js
  20. 2 2
      o2web/source/x_desktop/app.html
  21. 0 1
      o2web/source/x_desktop/appMobile.html
  22. 0 1
      o2web/source/x_desktop/cmsdocMobile.html
  23. 0 2
      o2web/source/x_desktop/cmspreview.html
  24. 0 1
      o2web/source/x_desktop/ddsso.html
  25. 0 1
      o2web/source/x_desktop/forum.html
  26. 0 1
      o2web/source/x_desktop/forumdocMobile.html
  27. 3 4
      o2web/source/x_desktop/index.html
  28. 83 96
      o2web/source/x_desktop/js/base.js
  29. 15 43
      o2web/source/x_desktop/js/base_bak.js
  30. 104 92
      o2web/source/x_desktop/js/base_simple.js
  31. 58 47
      o2web/source/x_desktop/js/base_simple_anonymous.js
  32. 0 1
      o2web/source/x_desktop/oauth.html
  33. 1 2
      o2web/source/x_desktop/oauth2.html
  34. 1 2
      o2web/source/x_desktop/portal.html
  35. 0 1
      o2web/source/x_desktop/portalmobile.html
  36. 1 2
      o2web/source/x_desktop/preview.html
  37. 1 2
      o2web/source/x_desktop/printWork.html
  38. 1 2
      o2web/source/x_desktop/printcmsdoc.html
  39. 0 1
      o2web/source/x_desktop/processViewer.html
  40. 0 1
      o2web/source/x_desktop/qiyeweixinsso.html
  41. 0 1
      o2web/source/x_desktop/qywxstartprocess.html
  42. 6 0
      o2web/source/x_desktop/res/config/config.json
  43. 0 1
      o2web/source/x_desktop/smapsso.html
  44. 0 1
      o2web/source/x_desktop/sso.html
  45. 0 1
      o2web/source/x_desktop/weixinsso.html
  46. 2 3
      o2web/source/x_desktop/work.html
  47. 2 3
      o2web/source/x_desktop/workmobile.html
  48. 0 1
      o2web/source/x_desktop/workmobilewithaction.html
  49. 0 1
      o2web/source/x_desktop/zhengwuDingdingSso.html

+ 180 - 2
o2web/gulpfile.js

@@ -12,6 +12,7 @@ var gulp = require('gulp'),
     JSFtp = require('jsftp'),
     gutil = require('gulp-util'),
     fs = require("fs");
+    concat = require('gulp-concat');
 //let uglify = require('gulp-uglify-es').default;
 var through2 = require('through2');
 
@@ -50,8 +51,9 @@ var options = {};
 setOptions(o_options, getEvOptions(o_options.ev));
 
 var appTasks = [];
-function getAppTask(path, isMin, thisOptions) {
-    return function (cb) {
+
+function createDefaultTask(path, isMin, thisOptions) {
+    gulp.task(path, function (cb) {
         //var srcFile = 'source/' + path + '/**/*';
         var option = thisOptions || options;
 
@@ -132,6 +134,182 @@ function getAppTask(path, isMin, thisOptions) {
                 .pipe(gulp.dest(dest))
                 .pipe(gutil.noop());
         }
+    });
+}
+
+function createXFormConcatTask(path, isMin, thisOptions) {
+    gulp.task(path+" : concat", function(){
+        var option = thisOptions || options;
+        var src = [
+            'source/' + path + '/Form.js',
+            'source/' + path + '/$Module.js',
+            'source/' + path + '/$Input.js',
+            'source/' + path + '/Div.js',
+            'source/' + path + '/Combox.js',
+            'source/' + path + '/DatagridMobile.js',
+            'source/' + path + '/DatagridPC.js',
+            'source/' + path + '/Textfield.js',
+            'source/' + path + '/Personfield.js',
+            'source/' + path + '/*.js',
+            '!source/' + path + '/Office.js'
+        ];
+        var dest = option.dest+'/' + path + '/';
+        return gulp.src(src)
+            .pipe(concat('$all.js'))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulp.dest(dest))
+            .pipe(uglify())
+            .pipe(rename({ extname: '.min.js' }))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulp.dest(dest))
+    });
+}
+
+function createO2ConcatTask(path, isMin, thisOptions) {
+    gulp.task(path+" : concat", function(){
+        var option = thisOptions || options;
+        var src = [
+            'source/o2_lib/mootools/mootools-1.6.0_all.js',
+            'source/' + path + '/o2.js'
+        ];
+        var dest = option.dest+'/' + path + '/';
+        return gulp.src(src)
+            .pipe(concat('o2.js'))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulp.dest(dest))
+            .pipe(uglify())
+            .pipe(rename({ extname: '.min.js' }))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path
+            })))
+            .pipe(gulp.dest(dest))
+    });
+
+    gulp.task(path+".xDesktop : concat", function(){
+        var option = thisOptions || options;
+        var src = [
+            'source/'+path+'/o2/widget/Common.js',
+            'source/'+path+'/o2/widget/Dialog.js',
+            'source/'+path+'/o2/widget/UUID.js',
+            'source/'+path+'/o2/xDesktop/Common.js',
+            'source/'+path+'/o2/xDesktop/Actions/RestActions.js',
+            'source/'+path+'/o2/xAction/RestActions.js',
+            'source/'+path+'/o2/xDesktop/Access.js',
+            'source/'+path+'/o2/xDesktop/Dialog.js',
+            'source/'+path+'/o2/xDesktop/Menu.js',
+            'source/'+path+'/o2/xDesktop/UserData.js',
+            'source/x_component_Template/MPopupForm.js',
+            'source/'+path+'/o2/xDesktop/Authentication.js',
+            'source/'+path+'/o2/xDesktop/Dialog.js',
+            'source/'+path+'/o2/xDesktop/Window.js',
+            'source/x_component_Common/Main.js'
+        ];
+        var dest = option.dest+'/' + path + '/o2/xDesktop/';
+        return gulp.src(src)
+            .pipe(concat('$all.js'))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/o2/xDesktop/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path+"/o2/xDesktop/"
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path+"/o2/xDesktop/"
+            })))
+            .pipe(gulp.dest(dest))
+            .pipe(uglify())
+            .pipe(rename({ extname: '.min.js' }))
+            .pipe(gulpif((option.upload == 'local' && option.location != ''), gulp.dest(option.location + path + '/o2/xDesktop/')))
+            .pipe(gulpif((option.upload == 'ftp' && option.host != ''), ftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || '@anonymous',
+                port: option.port || 21,
+                remotePath: (option.remotePath || '/') + path+"/o2/xDesktop/"
+            })))
+            .pipe(gulpif((option.upload == 'sftp' && option.host != ''), sftp({
+                host: option.host,
+                user: option.user || 'anonymous',
+                pass: option.pass || null,
+                port: option.port || 22,
+                remotePath: (option.remotePath || '/') + path+"/o2/xDesktop/"
+            })))
+            .pipe(gulp.dest(dest))
+    });
+}
+
+function getAppTask(path, isMin, thisOptions) {
+    if (path==="x_component_process_Xform"){
+        createDefaultTask(path, isMin, thisOptions);
+        createXFormConcatTask(path, isMin, thisOptions);
+        return gulp.series(path, path+" : concat");
+    }else if (path==="o2_core"){
+        createDefaultTask(path, isMin, thisOptions);
+        createO2ConcatTask(path, isMin, thisOptions);
+        return gulp.series(path, path+" : concat", path+".xDesktop : concat");
+    }else{
+        createDefaultTask(path, isMin, thisOptions);
+        return gulp.series(path);
     }
 }
 

+ 3 - 2
o2web/package.json

@@ -29,6 +29,7 @@
   "devDependencies": {
     "gulp": "^4.0.0",
     "gulp-changed": "^3.2.0",
+    "gulp-concat": "^2.6.1",
     "gulp-deleted": "^1.0.0",
     "gulp-ftp": "^1.1.0",
     "gulp-if": "^2.0.2",
@@ -38,7 +39,7 @@
     "gulp-tm-uglify": "3.0.1",
     "gulp-uglify-es": "^2.0.0",
     "merge-stream": "^1.0.1",
-    "readline-sync": "^1.4.10",
-    "minimist": "^1.2.0"
+    "minimist": "^1.2.0",
+    "readline-sync": "^1.4.10"
   }
 }

+ 0 - 31
o2web/source/o2_core/compatible.js

@@ -1,31 +0,0 @@
-o2.addReady(function(){
-    COMMON = {
-        "DOM":{},
-        "setContentPath": function(path){
-            COMMON.contentPath = path;
-        },
-        "JSON": o2.JSON,
-        "Browser": Browser,
-        "Class": o2.Class,
-        "XML": o2.xml,
-        "AjaxModule": {
-            "load": function(urls, callback, async, reload){
-                o2.load(urls, callback, reload, document);
-            },
-            "loadDom":  function(urls, callback, async, reload){
-                o2.load(urls, callback, reload, document);
-            },
-            "loadCss":  function(urls, callback, async, reload, sourceDoc){
-                o2.loadCss(urls, document.body, callback, reload, sourceDoc);
-            }
-        },
-        "Request": Request,
-        "typeOf": o2.typeOf
-    };
-    COMMON.Browser.Platform.isMobile = o2.session.isMobile;
-    COMMON.DOM.addReady = o2.addReady;
-    MWF = o2;
-    MWF.getJSON = o2.JSON.get;
-    MWF.getJSONP = o2.JSON.getJsonp;
-    MWF.defaultPath = o2.session.path;
-});

+ 0 - 1169
o2web/source/o2_core/init.js

@@ -1,1169 +0,0 @@
-/** ***** BEGIN LICENSE BLOCK *****
- * |------------------------------------------------------------------------------|
- * | O2OA 活力办公 创意无限    o2.js                                                 |
- * |------------------------------------------------------------------------------|
- * | Distributed under the AGPL license:                                          |
- * |------------------------------------------------------------------------------|
- * | Copyright © 2018, o2oa.net, o2server.io O2 Team                              |
- * | All rights reserved.                                                         |
- * |------------------------------------------------------------------------------|
- *
- *  This file is part of O2OA.
- *
- *  O2OA is free software: you can redistribute it and/or modify
- *  it under the terms of the GNU Affero General Public License as published by
- *  the Free Software Foundation, either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  O2OA is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU Affero General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with Foobar.  If not, see <https://www.gnu.org/licenses/>.
- *
- * ***** END LICENSE BLOCK ******/
-
-(function(){
-    var _href = window.location.href;
-    var _debug = (_href.indexOf("debugger")!==-1);
-    var _par = _href.substr(_href.lastIndexOf("?")+1, _href.length);
-    var _lp = "zh-cn";
-    if (_par){
-        var _parList = _par.split("&");
-        for (var i=0; i<_parList.length; i++){
-            var _v = _parList[i];
-            var _kv = _v.split("=");
-            if (_kv[0].toLowerCase()==="lg") _lp = _kv[1];
-        }
-    }
-    this.o2 = {
-        "version": {
-            "v": '2.1.0',
-            "build": "2018.11.22",
-            "info": "O2OA 活力办公 创意无限. Copyright © 2018, o2oa.net O2 Team All rights reserved."
-        },
-        "session": {
-            "isDebugger": _debug,
-            "path": "../o2_core/o2"
-        },
-        "language": _lp,
-        "splitStr": /\s*(?:,|;)\s*/
-    };
-
-    var _attempt = function(){
-        for (var i = 0, l = arguments.length; i < l; i++){
-            try {
-                arguments[i]();
-                return arguments[i];
-            } catch (e){}
-        }
-        return null;
-    };
-    var _typeOf = function(item){
-        if (item == null) return 'null';
-        if (item.$family != null) return item.$family();
-        if (item.constructor == window.Array) return "array";
-
-        if (item.nodeName){
-            if (item.nodeType == 1) return 'element';
-            if (item.nodeType == 3) return (/\S/).test(item.nodeValue) ? 'textnode' : 'whitespace';
-        } else if (typeof item.length == 'number'){
-            if (item.callee) return 'arguments';
-        }
-        return typeof item;
-    };
-    this.o2.typeOf = _typeOf;
-
-    var _addListener = function(dom, type, fn){
-        if (type == 'unload'){
-            var old = fn, self = this;
-            fn = function(){
-                _removeListener(dom, 'unload', fn);
-                old();
-            };
-        }
-        if (dom.addEventListener) dom.addEventListener(type, fn, !!arguments[2]);
-        else dom.attachEvent('on' + type, fn);
-    };
-    var _removeListener = function(dom, type, fn){
-        if (dom.removeEventListener) dom.removeEventListener(type, fn, !!arguments[2]);
-        else dom.detachEvent('on' + type, fn);
-    };
-
-    //http request class
-    var _request = (function(){
-        var XMLHTTP = function(){ return new XMLHttpRequest(); };
-        var MSXML2 = function(){ return new ActiveXObject('MSXML2.XMLHTTP'); };
-        var MSXML = function(){ return new ActiveXObject('Microsoft.XMLHTTP'); };
-        return _attempt(XMLHTTP, MSXML2, MSXML);
-    })();
-
-    var _returnBase = function(number, base) {
-        return (number).toString(base).toUpperCase();
-    };
-    var _getIntegerBits = function(val, start, end){
-        var base16 = _returnBase(val, 16);
-        var quadArray = new Array();
-        var quadString = '';
-        var i = 0;
-        for (i = 0; i < base16.length; i++) {
-            quadArray.push(base16.substring(i, i + 1));
-        }
-        for (i = Math.floor(start / 4); i <= Math.floor(end / 4); i++) {
-            if (!quadArray[i] || quadArray[i] == '')
-                quadString += '0';
-            else
-                quadString += quadArray[i];
-        }
-        return quadString;
-    };
-    var _rand = function(max) {
-        return Math.floor(Math.random() * (max + 1));
-    };
-    this.o2.addListener = _addListener;
-    this.o2.removeListener = _removeListener;
-
-    //uuid
-    var _uuid = function(){
-        var dg = new Date(1582, 10, 15, 0, 0, 0, 0);
-        var dc = new Date();
-        var t = dc.getTime() - dg.getTime();
-        var tl = _getIntegerBits(t, 0, 31);
-        var tm = _getIntegerBits(t, 32, 47);
-        var thv = _getIntegerBits(t, 48, 59) + '1';
-        var csar = _getIntegerBits(_rand(4095), 0, 7);
-        var csl = _getIntegerBits(_rand(4095), 0, 7);
-
-        var n = _getIntegerBits(_rand(8191), 0, 7)
-            + _getIntegerBits(_rand(8191), 8, 15)
-            + _getIntegerBits(_rand(8191), 0, 7)
-            + _getIntegerBits(_rand(8191), 8, 15)
-            + _getIntegerBits(_rand(8191), 0, 15);
-        return tl + tm + thv + csar + csl + n;
-    };
-    this.o2.uuid = _uuid;
-
-
-    var _runCallback = function(callback, key, par){
-        if (typeOf(callback).toLowerCase() === 'function'){
-            if (key.toLowerCase()==="success") callback.apply(callback, par);
-        }else{
-            if (typeOf(callback).toLowerCase()==='object'){
-                var name = ("on-"+key).camelCase();
-                if (callback[name]) callback[name].apply(callback, par);
-            }
-        }
-    };
-    this.o2.runCallback = _runCallback;
-
-
-    //load js, css, html adn all.
-    var _getAllOptions = function(options){
-        var doc = (options && options.doc) || document;
-        if (!doc.unid) doc.unid = _uuid();
-        return {
-            "noCache": !!(options && options.nocache),
-            "reload": !!(options && options.reload),
-            "sequence": !!(options && options.sequence),
-            "doc": doc,
-            "dom": (options && options.dom) || document.body,
-            "bind": (options && options.bind) || null,
-            "position": (options && options.position) || "beforeend" //'beforebegin' 'afterbegin' 'beforeend' 'afterend'
-        }
-    };
-    var _getCssOptions = function(options){
-        var doc = (options && options.doc) || document;
-        if (!doc.unid) doc.unid = _uuid();
-        return {
-            "noCache": !!(options && options.nocache),
-            "reload": !!(options && options.reload),
-            "sequence": !!(options && options.sequence),
-            "doc": doc,
-            "dom": (options && options.dom) || null
-        }
-    };
-    var _getJsOptions = function(options){
-        var doc = (options && options.doc) || document;
-        if (!doc.unid) doc.unid = _uuid();
-        return {
-            "noCache": !!(options && options.nocache),
-            "reload": !!(options && options.reload),
-            "sequence": (!(options && options.sequence == false)),
-            "doc": doc
-        }
-    };
-    var _getHtmlOptions = function(options){
-        var doc = (options && options.doc) || document;
-        if (!doc.unid) doc.unid = _uuid();
-        return {
-            "noCache": !!(options && options.nocache),
-            "reload": !!(options && options.reload),
-            "sequence": !!(options && options.sequence),
-            "doc": doc,
-            "dom": (options && options.dom) || null,
-            "bind": (options && options.bind) || null,
-            "position": (options && options.position) || "beforeend" //'beforebegin' 'afterbegin' 'beforeend' 'afterend'
-        }
-    };
-    var _xhr_get = function(url, success, failure, completed){
-        var xhr = new _request();
-        xhr.open("GET", url, true);
-
-        var _checkCssLoaded= function(_, err){
-            if (!(xhr.readyState == 4)) return;
-            if (err){
-                if (completed) completed(xhr);
-                return;
-            }
-
-            _removeListener(xhr, 'readystatechange', _checkCssLoaded);
-            _removeListener(xhr, 'load', _checkCssLoaded);
-            _removeListener(xhr, 'error', _checkCssErrorLoaded);
-
-            if (err) {failure(xhr); return}
-            var status = xhr.status;
-            status = (status == 1223) ? 204 : status;
-            if ((status >= 200 && status < 300))
-                success(xhr);
-            else if ((status >= 300 && status < 400))
-                failure(xhr);
-            else
-                failure(xhr);
-            if (completed) completed(xhr);
-        };
-        var _checkCssErrorLoaded= function(err){ _checkCssLoaded(err) };
-
-        if ("load" in xhr) _addListener(xhr, "load", _checkCssLoaded);
-        if ("error" in xhr) _addListener(xhr, "load", _checkCssErrorLoaded);
-        _addListener(xhr, "readystatechange", _checkCssLoaded);
-        xhr.send();
-    };
-
-    var _loadSequence = function(ms, cb, op, n, thisLoaded, loadSingle, uuid, fun){
-        loadSingle(ms[n], function(module){
-            if (module) thisLoaded.push(module);
-            n++;
-            if (fun) fun(module);
-            if (n===ms.length){
-                if (cb) cb(thisLoaded);
-            }else{
-                _loadSequence(ms, cb, op, n, thisLoaded, loadSingle, uuid, fun);
-            }
-        }, op, uuid);
-    };
-    var _loadDisarray = function(ms, cb, op, thisLoaded, loadSingle, uuid, fun){
-        var count=0;
-        for (var i=0; i<ms.length; i++){
-            loadSingle(ms[i], function(module){
-                if (module) thisLoaded.push(module);
-                count++;
-                if (fun) fun(module);
-                if (count===ms.length) if (cb) cb(thisLoaded);
-            }, op, uuid);
-        }
-    };
-
-    //load js
-    //use framework url
-    var _frameworks = {
-        "o2.core": ["../o2_core/o2/o2.core.js"],
-        "o2.more": ["../o2_core/o2/o2.more.js"],
-        "ie_adapter": ["../o2_lib/o2/ie_adapter.js"],
-        "jquery": ["../o2_lib/jquery/jquery.min.js"],
-        "mootools": ["../o2_lib/mootools/mootools-1.6.0_all.js"],
-        "ckeditor": ["../o2_lib/htmleditor/ckeditor4114/ckeditor.js"],
-        "ckeditor5": ["../o2_lib/htmleditor/ckeditor5-12-1-0/ckeditor.js"],
-        "raphael": ["../o2_lib/raphael/raphael.js"],
-        "d3": ["../o2_lib/d3/d3.min.js"],
-        "ace": ["../o2_lib/ace/src-noconflict/ace.js","../o2_lib/ace/src-noconflict/ext-language_tools.js"],
-        "JSBeautifier": ["../o2_lib/JSBeautifier/beautify.js"],
-        "JSBeautifier_css": ["../o2_lib/JSBeautifier/beautify-css.js"],
-        "JSBeautifier_html": ["../o2_lib/JSBeautifier/beautify-html.js"],
-        "JSONTemplate": ["../o2_lib/mootools/plugin/Template.js"],
-        "kity": ["../o2_lib/kityminder/kity/kity.min.js"],
-        "kityminder": ["../o2_lib/kityminder/core/dist/kityminder.core.js"]
-    };
-    var _loaded = {};
-    var _loadedCss = {};
-    var _loadedHtml = {};
-    var _loadCssRunning = {};
-    var _loadCssQueue = [];
-
-    var _loadSingle = function(module, callback, op){
-        var url = module;
-        var uuid = _uuid();
-        if (op.noCache) url = (url.indexOf("?")!==-1) ? url+"&v="+uuid : addr_uri+"?v="+uuid;
-        var key = encodeURIComponent(url+op.doc.unid);
-        if (!op.reload) if (_loaded[key]){
-            if (callback)callback(); return;
-        }
-
-        var head = (op.doc.head || op.doc.getElementsByTagName("head")[0] || op.doc.documentElement);
-        var s = op.doc.createElement('script');
-        head.appendChild(s);
-        s.id = uuid;
-        s.src = url;
-
-        var _checkScriptLoaded = function(_, isAbort, err){
-            if (isAbort || !s.readyState || s.readyState === "loaded" || s.readyState === "complete") {
-                var scriptObj = {"module": module, "id": uuid, "script": s, "doc": op.doc};
-                if (!err) _loaded[key] = scriptObj;
-                _removeListener(s, 'readystatechange', _checkScriptLoaded);
-                _removeListener(s, 'load', _checkScriptLoaded);
-                _removeListener(s, 'error', _checkScriptErrorLoaded);
-                if (!isAbort || err){
-                    if (err){
-                        if (s) head.removeChild(s);
-                        if (callback)callback();
-                    }else{
-                        //head.removeChild(s);
-                        if (callback)callback(scriptObj);
-                    }
-                }
-            }
-        };
-        var _checkScriptErrorLoaded = function(e, err){
-            console.log("Error: load javascript module: "+module);
-            _checkScriptLoaded(e, true, "error");
-        };
-
-        if ('onreadystatechange' in s) _addListener(s, 'readystatechange', _checkScriptLoaded);
-        _addListener(s, 'load', _checkScriptLoaded);
-        _addListener(s, 'error', _checkScriptErrorLoaded);
-    };
-
-    var _load = function(urls, options, callback){
-        var ms = (_typeOf(urls)==="array") ? urls : [urls];
-        var op =  (_typeOf(options)==="object") ? _getJsOptions(options) : _getJsOptions(null);
-        var cb = (_typeOf(options)==="function") ? options : callback;
-
-        var modules = [];
-        for (var i=0; i<ms.length; i++){
-            var url = ms[i];
-            var module = _frameworks[url] || url;
-            if (_typeOf(module)==="array"){
-                modules = modules.concat(module)
-            }else{
-                modules.push(module)
-            }
-        }
-        var thisLoaded = [];
-        if (op.sequence){
-            _loadSequence(modules, cb, op, 0, thisLoaded, _loadSingle);
-        }else{
-            _loadDisarray(modules, cb, op, thisLoaded, _loadSingle);
-        }
-    };
-    this.o2.load = _load;
-
-    //load css
-    var _loadSingleCss = function(module, callback, op, uuid){
-        var url = module;
-        var uid = _uuid();
-        if (op.noCache) url = (url.indexOf("?")!==-1) ? url+"&v="+uid : url+"?v="+uid;
-
-        var key = encodeURIComponent(url+op.doc.unid);
-        if (_loadCssRunning[key]){
-            _loadCssQueue.push(function(){
-                _loadSingleCss(module, callback, op, uuid);
-            });
-            return;
-        }
-
-        if (_loadedCss[key]) uuid = _loadedCss[key]["class"];
-        if (op.dom) _parseDom(op.dom, function(node){ if (node.className.indexOf(uuid) == -1) node.className += ((node.className) ? " "+uuid : uuid);}, op.doc);
-
-        var completed = function(){
-            if (_loadCssRunning[key]){
-                _loadCssRunning[key] = false;
-                delete _loadCssRunning[key];
-            }
-            if (_loadCssQueue && _loadCssQueue.length){
-                (_loadCssQueue.shift())();
-            }
-        };
-
-        if (_loadedCss[key])if (!op.reload){
-            if (callback)callback(_loadedCss[key]);
-            completed();
-            return;
-        }
-
-        var success = function(xhr){
-            var cssText = xhr.responseText;
-            try{
-                if (cssText){
-                    if (op.bind) cssText = cssText.bindJson(op.bind);
-                    if (op.dom){
-                        var rex = new RegExp("(.+)(?=\\{)", "g");
-                        var match;
-                        while ((match = rex.exec(cssText)) !== null) {
-                            var prefix = "." + uuid + " ";
-                            var rule = prefix + match[0];
-                            cssText = cssText.substring(0, match.index) + rule + cssText.substring(rex.lastIndex, cssText.length);
-                            rex.lastIndex = rex.lastIndex + prefix.length;
-                        }
-                    }
-                    var style = op.doc.createElement("style");
-                    style.setAttribute("type", "text/css");
-                    var head = (op.doc.head || op.doc.getElementsByTagName("head")[0] || op.doc.documentElement);
-                    head.appendChild(style);
-                    if(style.styleSheet){
-                        var setFunc = function(){
-                            style.styleSheet.cssText = cssText;
-                        };
-                        if(style.styleSheet.disabled){
-                            setTimeout(setFunc, 10);
-                        }else{
-                            setFunc();
-                        }
-                    }else{
-                        var cssTextNode = op.doc.createTextNode(cssText);
-                        style.appendChild(cssTextNode);
-                    }
-                }
-                style.id = uid;
-                var styleObj = {"module": module, "id": uid, "style": style, "doc": op.doc, "class": uuid};
-                _loadedCss[key] = styleObj;
-                if (callback) callback(styleObj);
-            }catch (e){
-                if (callback) callback();
-                return;
-            }
-        };
-        var failure = function(xhr){
-            console.log("Error: load css module: "+module);
-            if (callback) callback();
-        };
-
-        _loadCssRunning[key] = true;
-
-        _xhr_get(url, success, failure, completed);
-    };
-
-    var _parseDomString = function(dom, fn, sourceDoc){
-        var doc = sourceDoc || document;
-        var list = doc.querySelectorAll(dom);
-        if (list.length) for (var i=0; i<list.length; i++) _parseDomElement(list[i], fn);
-    };
-    var _parseDomElement = function(dom, fn){
-        if (fn) fn(dom);
-    };
-    var _parseDom = function(dom, fn, sourceDoc){
-        var domType = _typeOf(dom);
-        if (domType==="string") _parseDomString(dom, fn, sourceDoc);
-        if (domType==="element") _parseDomElement(dom, fn);
-        if (domType==="array") for (var i=0; i<dom.length; i++) _parseDom(dom[i], fn, sourceDoc);
-    };
-    var _loadCss = function(modules, options, callback){
-        var ms = (_typeOf(modules)==="array") ? modules : [modules];
-        var op =  (_typeOf(options)==="object") ? _getCssOptions(options) : _getCssOptions(null);
-        var cb = (_typeOf(options)==="function") ? options : callback;
-
-        var uuid = "css"+_uuid();
-        var thisLoaded = [];
-        if (op.sequence){
-            _loadSequence(ms, cb, op, 0, thisLoaded, _loadSingleCss, uuid);
-        }else{
-            _loadDisarray(ms, cb, op, thisLoaded, _loadSingleCss, uuid);
-        }
-    };
-    var _removeCss = function(modules, doc){
-        var thisDoc = doc || document;
-        var ms = (_typeOf(modules)==="array") ? modules : [modules];
-        for (var i=0; i<ms.length; i++){
-            var module = modules[i];
-
-            var k = encodeURIComponent(module+(thisDoc.unid||""));
-            var removeCss = _loadedCss[k];
-            if (!removeCss) for (key in _loadedCss){
-                if (_loadedCss[key].id==module){
-                    removeCss = _loadedCss[key];
-                    k = key;
-                    break;
-                }
-            }
-            if (removeCss){
-                delete _loadedCss[k];
-                var styleNode = removeCss.doc.getElementById(removeCss.id);
-                if (styleNode) styleNode.parentNode.removeChild(styleNode);
-                removeCss = null;
-            }
-        }
-    };
-    this.o2.loadCss = _loadCss;
-    this.o2.removeCss = _removeCss;
-    Element.prototype.loadCss = function(modules, options, callback){
-        var op =  (_typeOf(options)==="object") ? options : {};
-        var cb = (_typeOf(options)==="function") ? options : callback;
-        op.dom = this;
-        _loadCss(modules, op, cb);
-    };
-
-    //load html
-    _loadSingleHtml = function(module, callback, op){
-        var url = module;
-        var uid = _uuid();
-        if (op.noCache) url = (url.indexOf("?")!==-1) ? url+"&v="+uid : url+"?v="+uid;
-        var key = encodeURIComponent(url+op.doc.unid);
-        if (!op.reload) if (_loadedHtml[key]){ if (callback)callback(_loadedHtml[key]); return; }
-
-        var success = function(xhr){
-            var htmlObj = {"module": module, "id": uid, "data": xhr.responseText, "doc": op.doc};
-            _loadedHtml[key] = htmlObj;
-            if (callback) callback(htmlObj);
-        };
-        var failure = function(){
-            console.log("Error: load html module: "+module);
-            if (callback) callback();
-        };
-        _xhr_get(url, success, failure);
-    };
-
-    var _injectHtml = function(op, data){
-        if (op.bind) data = data.bindJson(op.bind);
-        if (op.dom) _parseDom(op.dom, function(node){ node.insertAdjacentHTML(op.position, data) }, op.doc);
-    };
-    var _loadHtml = function(modules, options, callback){
-        var ms = (_typeOf(modules)==="array") ? modules : [modules];
-        var op =  (_typeOf(options)==="object") ? _getHtmlOptions(options) : _getHtmlOptions(null);
-        var cb = (_typeOf(options)==="function") ? options : callback;
-
-        var thisLoaded = [];
-        if (op.sequence){
-            _loadSequence(ms, cb, op, 0, thisLoaded, _loadSingleHtml, null, function(html){ if (html) _injectHtml(op, html.data ); });
-        }else{
-            _loadDisarray(ms, cb, op, thisLoaded, _loadSingleHtml, null, function(html){ if (html) _injectHtml(op, html.data ); });
-        }
-    };
-    this.o2.loadHtml = _loadHtml;
-    Element.prototype.loadHtml = function(modules, options, callback){
-        var op =  (_typeOf(options)==="object") ? options : {};
-        var cb = (_typeOf(options)==="function") ? options : callback;
-        op.dom = this;
-        _loadHtml(modules, op, cb);
-    };
-
-    //load all
-    _loadAll = function(modules, options, callback){
-        //var ms = (_typeOf(modules)==="array") ? modules : [modules];
-        var op =  (_typeOf(options)==="object") ? _getAllOptions(options) : _getAllOptions(null);
-        var cb = (_typeOf(options)==="function") ? options : callback;
-
-        var ms, htmls, styles, sctipts;
-        var _htmlLoaded=(!modules.html), _cssLoaded=(!modules.css), _jsLoaded=(!modules.js);
-        var _checkloaded = function(){
-            if (_htmlLoaded && _cssLoaded && _jsLoaded) if (cb) cb(htmls, styles, sctipts);
-        };
-        if (modules.html){
-            _loadHtml(modules.html, op, function(h){
-                htmls = h;
-                _htmlLoaded = true;
-                _checkloaded();
-            });
-        }
-        if (modules.css){
-            _loadCss(modules.css, op, function(s){
-                styles = s;
-                _cssLoaded = true;
-                _checkloaded();
-            });
-        }
-        if (modules.js){
-            _load(modules.js, op, function(s){
-                sctipts = s;
-                _jsLoaded = true;
-                _checkloaded();
-            });
-        }
-    };
-    this.o2.loadAll = _loadAll;
-    Element.prototype.loadAll = function(modules, options, callback){
-        var op =  (_typeOf(options)==="object") ? options : {};
-        var cb = (_typeOf(options)==="function") ? options : callback;
-        op.dom = this;
-        _loadAll(modules, op, cb);
-    };
-
-    var _getIfBlockEnd = function(v){
-        var rex = /(\{\{if\s+)|(\{\{\s*end if\s*\}\})/gmi;
-        var rexEnd = /\{\{\s*end if\s*\}\}/gmi;
-        var subs = 1;
-        while ((match = rex.exec(v)) !== null) {
-            var fullMatch = match[0];
-            if (fullMatch.search(rexEnd)!==-1){
-                subs--;
-                if (subs==0) break;
-            }else{
-                subs++
-            }
-        }
-        if (match) return {"codeIndex": match.index, "lastIndex": rex.lastIndex};
-        return {"codeIndex": v.length-1, "lastIndex": v.length-1};
-    }
-    var _getEachBlockEnd = function(v){
-        var rex = /(\{\{each\s+)|(\{\{\s*end each\s*\}\})/gmi;
-        var rexEnd = /\{\{\s*end each\s*\}\}/gmi;
-        var subs = 1;
-        while ((match = rex.exec(v)) !== null) {
-            var fullMatch = match[0];
-            if (fullMatch.search(rexEnd)!==-1){
-                subs--;
-                if (subs==0) break;
-            }else{
-                subs++;
-            }
-        }
-        if (match) return {"codeIndex": match.index, "lastIndex": rex.lastIndex};
-        return {"codeIndex": v.length-1, "lastIndex": v.length-1};
-    }
-
-    var _parseHtml = function(str, json){
-        var v = str;
-        var rex = /(\{\{\s*)[\s\S]*?(\s*\}\})/gmi;
-
-        var match;
-        while ((match = rex.exec(v)) !== null) {
-            var fullMatch = match[0];
-            var offset = 0;
-
-            //if statement begin
-            if (fullMatch.search(/\{\{if\s+/i)!==-1){
-                //找到对应的end if
-                var condition = fullMatch.replace(/^\{\{if\s*/i, "");
-                condition = condition.replace(/\s*\}\}$/i, "");
-                var flag = _jsonText(json, condition, "boolean");
-
-                var tmpStr = v.substring(rex.lastIndex, v.length);
-                var endIfIndex = _getIfBlockEnd(tmpStr);
-                if (flag){ //if 为 true
-                    var parseStr = _parseHtml(tmpStr.substring(0, endIfIndex.codeIndex), json);
-                    var vLeft = v.substring(0, match.index);
-                    var vRight = v.substring(rex.lastIndex+endIfIndex.lastIndex, v.length);
-                    v = vLeft + parseStr + vRight;
-                    offset = parseStr.length - fullMatch.length;
-                }else{
-                    v = v.substring(0, match.index) + v.substring(rex.lastIndex+endIfIndex.lastIndex, v.length);
-                    offset = 0-fullMatch.length;
-                }
-            }else  if (fullMatch.search(/\{\{each\s+/)!==-1) { //each statement
-                var itemString = fullMatch.replace(/^\{\{each\s*/, "");
-                itemString = itemString.replace(/\s*\}\}$/, "");
-                var eachValue = _jsonText(json, itemString, "object");
-
-                var tmpEachStr = v.substring(rex.lastIndex, v.length);
-                var endEachIndex = _getEachBlockEnd(tmpEachStr);
-
-                var parseEachStr = tmpEachStr.substring(0, endEachIndex.codeIndex);
-                var eachResult = "";
-                if (eachValue && _typeOf(eachValue)==="array"){
-                    for (var i=0; i<eachValue.length; i++){
-                        eachValue[i]._ = json;
-                        eachResult += _parseHtml(parseEachStr, eachValue[i]);
-                    }
-                    var eLeft = v.substring(0, match.index);
-                    var eRight = v.substring(rex.lastIndex+endEachIndex.lastIndex, v.length);
-                    v = eLeft + eachResult + eRight;
-                    offset = eachResult.length - fullMatch.length;
-                }else{
-                    v = v.substring(0, match.index) + v.substring(rex.lastIndex+endEachIndex.lastIndex, v.length);
-                    offset = 0-fullMatch.length;
-                }
-
-            }else{ //text statement
-                var text = fullMatch.replace(/^\{\{\s*/, "");
-                text = text.replace(/\}\}\s*$/, "");
-                var value = _jsonText(json, text);
-                offset = value.length-fullMatch.length;
-                v = v.substring(0, match.index) + value + v.substring(rex.lastIndex, v.length);
-            }
-            rex.lastIndex = rex.lastIndex + offset;
-        }
-        return v;
-    };
-    var _jsonText = function(json, text, type){
-        try {
-            var $ = json;
-            var f = eval("(function($){\n return "+text+";\n})");
-            returnValue = f.apply(json, [$]);
-            if (returnValue===undefined) returnValue="";
-            if (type==="boolean") return (!!returnValue);
-            if (type==="object") return returnValue;
-            returnValue = returnValue.toString();
-            return returnValue || "";
-        }catch(e){
-            if (type==="boolean") return false;
-            if (type==="object") return null;
-            return "";
-        }
-    };
-
-    o2.bindJson = function(str, json){
-        return _parseHtml(str, json);
-    };
-    String.prototype.bindJson = function(json){
-        return _parseHtml(this, json);
-    };
-
-    //dom ready
-    var _dom = {
-        ready: false,
-        loaded: false,
-        checks: [],
-        shouldPoll: false,
-        timer: null,
-        testElement: document.createElement('div'),
-        readys: [],
-
-        domready: function(){
-            clearTimeout(_dom.timer);
-            if (_dom.ready) return;
-            _dom.loaded = _dom.ready = true;
-            _removeListener(document, 'DOMContentLoaded', _dom.checkReady);
-            _removeListener(document, 'readystatechange', _dom.check);
-            _dom.onReady();
-        },
-        check: function(){
-            for (var i = _dom.checks.length; i--;) if (_dom.checks[i]() && window.MooTools && o2.core && o2.more){
-                _dom.domready();
-                return true;
-            }
-            return false;
-        },
-        poll: function(){
-            clearTimeout(_dom.timer);
-            if (!_dom.check()) _dom.timer = setTimeout(_dom.poll, 10);
-        },
-
-        /*<ltIE8>*/
-        // doScroll technique by Diego Perini http://javascript.nwbox.com/IEContentLoaded/
-        // testElement.doScroll() throws when the DOM is not ready, only in the top window
-        doScrollWorks: function(){
-            try {
-                _dom.testElement.doScroll();
-                return true;
-            } catch (e){}
-            return false;
-        },
-        /*</ltIE8>*/
-
-        onReady: function(){
-            for (var i=0; i<_dom.readys.length; i++){
-                this.readys[i].apply(window);
-            }
-        },
-        addReady: function(fn){
-            if (_dom.loaded){
-                if (fn) fn.apply(window);
-            }else{
-                if (fn) _dom.readys.push(fn);
-            }
-            return _dom;
-        },
-        checkReady: function(){
-            _dom.checks.push(function(){return true});
-            _dom.check();
-        }
-    };
-    var _loadO2 = function(){
-        this.o2.load("o2.core", _dom.check);
-        this.o2.load("o2.more", _dom.check);
-    };
-
-    _addListener(document, 'DOMContentLoaded', _dom.checkReady);
-
-    /*<ltIE8>*/
-    // If doScroll works already, it can't be used to determine domready
-    //   e.g. in an iframe
-    if (_dom.testElement.doScroll && !_dom.doScrollWorks()){
-        _dom.checks.push(_dom.doScrollWorks);
-        _dom.shouldPoll = true;
-    }
-    /*</ltIE8>*/
-
-    if (document.readyState) _dom.checks.push(function(){
-        var state = document.readyState;
-        return (state == 'loaded' || state == 'complete');
-    });
-
-    if ('onreadystatechange' in document) _addListener(document, 'readystatechange', _dom.check);
-    else _dom.shouldPoll = true;
-
-    if (_dom.shouldPoll) _dom.poll();
-
-    if (!window.MooTools){
-        this.o2.load("mootools", function(){ _loadO2(); _dom.check(); });
-    }else{
-        _loadO2();
-    }
-    this.o2.addReady = function(fn){ _dom.addReady.call(_dom, fn); };
-})();
-
-layout = window.layout || {};
-layout.desktop = layout;
-var locate = window.location;
-layout.protocol = locate.protocol;
-layout.session = layout.session || {};
-layout.debugger = (locate.href.toString().indexOf("debugger")!==-1);
-o2.xApplication = o2.xApplication || {};
-
-o2.xDesktop = o2.xDesktop || {};
-o2.xDesktop.requireApp = function(module, clazz, callback, async){
-    o2.requireApp(module, clazz, callback, async);
-};
-o2.addReady(function(){
-    //兼容方法
-    Element.implement({
-        "makeLnk": function(options){}
-    });
-
-    //异步载入必要模块
-    layout.config = null;
-
-    var lp = o2.session.path+"/lp/"+o2.language+".js";
-    var modules = [ "MWF.xDesktop.Common", "MWF.xAction.RestActions",lp];
-    MWF.require(modules, function(){
-        if (layout.config) _getDistribute(function(){ _load(); });
-    });
-    o2.getJSON("../x_desktop/res/config/config.json", function(config){
-        layout.config = config;
-        if (MWF.xDesktop.getServiceAddress) _getDistribute(function(){ _load(); });
-    });
-
-
-    var _getDistribute = function(callback){
-        if (layout.config.app_protocol==="auto"){
-            layout.config.app_protocol = window.location.protocol;
-        }
-        MWF.xDesktop.getServiceAddress(layout.config, function(service, center){
-            layout.serviceAddressList = service;
-            layout.centerServer = center;
-            if (callback) callback();
-        }.bind(this));
-    };
-
-    var _load = function(){
-        //先判断用户是否登录
-        MWF.Actions.get("x_organization_assemble_authentication").getAuthentication(function(json){
-            //用户已经登录
-            layout.user = json.data;
-            layout.session = {};
-            layout.session.user = json.data;
-
-            (function(layout){
-                var _loadResource = function(callback){
-                    var isLoadedA = false;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-
-                    var modules = [
-                        "o2.xDesktop.Dialog",
-                        "MWF.xDesktop.UserData",
-                        "MWF.xDesktop.Access",
-                        "MWF.widget.UUID",
-                        "MWF.xDesktop.Menu",
-                        "MWF.xDesktop.shortcut",
-                        "MWF.widget.PinYin",
-                        "MWF.xDesktop.Access",
-                        "MWF.xDesktop.MessageMobile",
-                        "MWF.xScript.Macro"
-                    ];
-                    //MWF.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function(){ if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function(){isLoadedA = true; _check();});
-                    o2.require("MWF.widget.Common", function(){
-                        o2.require(modules, function(){
-                            o2.requireApp("Common", "", function(){isLoadedB = true; _check();})
-                        });
-                    });
-                };
-
-                var _loadContent =function(){
-                    _loadResource(function(){
-                        //this.Macro = new MWF.Macro["PageContext"](this);
-                        for (var i=0; i<layout.readys.length; i++){
-                            layout.readys[i].apply(window);
-                        }
-                    });
-                };
-
-                _loadContent();
-            })(layout);
-        }, function(){
-            //用户未经登录
-            //打开登录页面
-            var _loadResource = function(callback){
-                var isLoadedA = false;
-                var isLoadedB = false;
-                //var isLoadedC = false;
-
-               // var lp = o2.session.path+"/lp/"+o2.language+".js";
-                var modules = [
-                    "o2.xDesktop.Dialog",
-                    "MWF.xDesktop.UserData",
-                    "MWF.xDesktop.Access",
-                    "MWF.widget.UUID",
-                    "MWF.xDesktop.Menu",
-                    "MWF.xDesktop.shortcut",
-                    "MWF.widget.PinYin",
-                    "MWF.xDesktop.Access",
-                    "MWF.xDesktop.MessageMobile"
-                ];
-                //MWF.xDesktop.requireApp("Common", "", null, false);
-                var _check = function(){ if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function(){isLoadedA = true; _check();});
-                o2.require("MWF.widget.Common", function(){
-                    o2.require(modules, function(){
-                        o2.requireApp("Common", "", function(){isLoadedB = true; _check();})
-                    });
-                });
-            };
-            _loadResource(function(){
-                layout.openLogin();
-            });
-
-        });
-
-        layout.openLogin = function(){
-            MWF.require("MWF.widget.Common", null, false);
-            MWF.require("MWF.xDesktop.Authentication", function(){
-                var authentication = new MWF.xDesktop.Authentication({
-                    "onLogin": _load.bind(layout)
-                });
-                authentication.loadLogin(document.body);
-            });
-        };
-    };
-});
-
-(function(layout){
-    layout.readys = [];
-    layout.addReady = function(){
-        for (var i = 0; i<arguments.length; i++){
-            if (o2.typeOf(arguments[i])==="function") layout.readys.push(arguments[i]);
-        }
-    };
-    var _requireApp = function(appNames, callback, clazzName){
-        var appPath = appNames.split(".");
-        var baseObject = o2.xApplication;
-        appPath.each(function(path, i){
-            if (i<(appPath.length-1)){
-                baseObject[path] = baseObject[path] || {};
-            }else {
-                baseObject[path] = baseObject[path] || {"options": Object.clone(MWF.xApplication.Common.options)};
-            }
-            baseObject = baseObject[path];
-        }.bind(this));
-        if (!baseObject.options) baseObject.options = Object.clone(MWF.xApplication.Common.options);
-
-        var _lpLoaded = false;
-        MWF.xDesktop.requireApp(appNames, "lp."+o2.language, {
-            "failure": function(){
-                MWF.xDesktop.requireApp(appNames, "lp.zh-cn", null, false);
-            }.bind(this)
-        }, false);
-        MWF.xDesktop.requireApp(appNames, clazzName, function(){
-            if (callback) callback(baseObject);
-        });
-    };
-    var _createNewApplication = function(e, appNamespace, appName, options, statusObj){
-        var app = new appNamespace["Main"](this, options);
-        app.desktop = layout;
-        app.inBrowser = true;
-        app.status = statusObj;
-        app.load(true);
-
-        var appId = appName;
-        if (options.appId){
-            appId = options.appId;
-        }else{
-            if (appNamespace.options.multitask) appId = appId+"-"+(new MWF.widget.UUID());
-        }
-        app.appId = appId;
-        layout.app = app;
-        layout.desktop.currentApp = app;
-    };
-    var _openWorkAndroid = function(options){
-        if (window.o2android && window.o2android.openO2Work) {
-            if (options.workId) {
-                window.o2android.openO2Work(options.workId, "", title);
-            } else if (options.workCompletedId) {
-                window.o2android.openO2Work("", options.workCompletedId, title);
-            }
-            return true;
-        }
-        return false;
-    };
-    var _openWorkIOS = function(options){
-        if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2Work) {
-            if (options.workId) {
-                window.webkit.messageHandlers.openO2Work.postMessage({
-                    "work": options.workId,
-                    "workCompleted": "",
-                    "title": title
-                });
-            } else if (options.workCompletedId) {
-                window.webkit.messageHandlers.openO2Work.postMessage({
-                    "work": "",
-                    "workCompleted": options.workCompletedId,
-                    "title": title
-                });
-            }
-            return true;
-        }
-        return false;
-    };
-    var _openWorkHTML = function(options){
-        var uri = new URI(window.location.href);
-        var redirectlink = uri.getData("redirectlink");
-        if (!redirectlink) {
-            redirectlink = encodeURIComponent(locate.pathname + locate.search);
-        } else {
-            redirectlink = encodeURIComponent(redirectlink);
-        }
-        if (options.workId) {
-            window.location = "workmobilewithaction.html?workid=" + options.workId + "&redirectlink=" + redirectlink;
-        } else if (options.workCompletedId) {
-            window.location = "workmobilewithaction.html?workcompletedid=" + options.workCompletedId + "&redirectlink=" + redirectlink;
-        }
-    };
-    var _openWork = function(options){
-        if (!_openWorkAndroid(options)) if (!_openWorkIOS(options)) _openWorkHTML(options);
-    };
-    var _openDocument = function(appNames, options, statusObj){
-        var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-        if (window.o2android && window.o2android.openO2CmsDocument){
-            window.o2android.openO2CmsDocument(options.documentId, title);
-        }else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2CmsDocument){
-            window.webkit.messageHandlers.openO2CmsDocument.postMessage({"docId":options.documentId,"docTitle":title});
-        }else{
-            window.location = "appMobile.html?"+par;
-        }
-    };
-    var _openCms = function(appNames, options, statusObj){
-        var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-        if (window.o2android && window.o2android.openO2CmsApplication){
-            window.o2android.openO2CmsApplication(options.columnId, title);
-        }else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2CmsApplication){
-            window.webkit.messageHandlers.openO2CmsApplication.postMessage(options.columnId);
-        }else{
-            window.location = "appMobile.html?"+par;
-        }
-    };
-    var _openMeeting = function(appNames, options, statusObj){
-        var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-        if (window.o2android && window.o2android.openO2Meeting){
-            window.o2android.openO2Meeting("");
-        }else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2Meeting){
-            window.webkit.messageHandlers.openO2Meeting.postMessage("");
-        }else{
-            window.location = "appMobile.html?"+par;
-        }
-    };
-
-    var _openCalendar = function(appNames, options, statusObj){
-        var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-        if (window.o2android && window.o2android.openO2Calendar){
-            window.o2android.openO2Calendar("");
-        }else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2Calendar){
-            window.webkit.messageHandlers.openO2Calendar.postMessage("");
-        }else{
-            window.location = "appMobile.html?"+par;
-        }
-    };
-    var _openTaskCenter = function(appNames, options, statusObj){
-        var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-        var tab = ((options && options.navi) ? options.navi : "task").toLowerCase();
-        if (tab==="done") tab = "taskCompleted";
-        if (tab==="readed") tab = "readCompleted";
-
-        if (window.o2android && window.o2android.openO2WorkSpace){
-            window.o2android.openO2WorkSpace(tab);
-        }else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.openO2WorkSpace){
-            window.webkit.messageHandlers.openO2WorkSpace.postMessage(tab);
-        }else{
-            window.location = "appMobile.html?"+par;
-        }
-    };
-
-    var _openApplicationMobile = function(appNames, options, statusObj){
-        switch (appNames) {
-            case "process.Work":
-                _openWork(options);
-                break;
-            case "cms.Document":
-                _openDocument(appNames, options, statusObj);
-                break;
-            case "cms.Module":
-                _openCms(appNames, options, statusObj);
-                break;
-            case "Meeting":
-                _openMeeting(appNames, options, statusObj);
-                break;
-            case "Calendar":
-                _openCalendar(appNames, options, statusObj);
-                break;
-            case "process.TaskCenter":
-                _openTaskCenter(appNames, options, statusObj);
-                break;
-            default:
-                window.location = "appMobile.html?app="+appNames+"&option="+(optionsStr || "")+"&status="+(statusStr || "");
-        }
-    };
-
-    layout.openApplication = function(e, appNames, options, statusObj){
-        if (layout.app){
-            if (layout.mobile){
-                _openApplicationMobile(appNames, options, statusObj);
-            }else{
-                var par = "app="+encodeURIComponent(appNames)+"&status="+encodeURIComponent((statusObj)? JSON.encode(statusObj) : "")+"&option="+encodeURIComponent((options)? JSON.encode(options) : "");
-                return window.open("app.html?"+par, "_blank");
-            }
-        }else{
-            var appPath = appNames.split(".");
-            var appName = appPath[appPath.length-1];
-
-            _requireApp(appNames, function(appNamespace){
-                _createNewApplication(e, appNamespace, appName, options, statusObj);
-            }.bind(this));
-        }
-    };
-
-    layout.refreshApp = function(app){
-        var status = app.recordStatus();
-
-        var uri = new URI(window.location.href);
-        var appNames = uri.getData("app");
-        var optionsStr = uri.getData("option");
-        var statusStr = uri.getData("status");
-        if (status) statusStr = JSON.encode(status);
-
-        var port = uri.get("port");
-        window.location = uri.get("scheme") + "://" + uri.get("host") + ((port) ? ":" + port + "/" : "") + uri.get("directory ") + "?app=" + encodeURIComponent(appNames) + "&status=" + encodeURIComponent(statusStr) + "&option=" + encodeURIComponent((options) ? JSON.encode(options) : "");
-    };
-
-    layout.load =function(appNames, options, statusObj){
-        layout.message = new MWF.xDesktop.MessageMobile();
-        layout.message.load();
-
-        layout.apps = [];
-        layout.node = $("layout");
-        var appName=appNames, m_status=statusObj, option=options;
-
-        var topWindow = window.opener;
-        if (topWindow){
-            try{
-                if (!appName) appName = topWindow.layout.desktop.openBrowserApp;
-                if (!m_status) m_status = topWindow.layout.desktop.openBrowserStatus;
-                if (!option)  option = topWindow.layout.desktop.openBrowserOption;
-            }catch(e){}
-        }
-        layout.openApplication(null, appName, option||{}, m_status);
-    }
-
-})(layout);

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 24124
o2web/source/o2_core/o2.all.js


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1225 - 0
o2web/source/o2_core/o2.js


+ 33 - 13
o2web/source/o2_core/o2/o2.core.js

@@ -86,13 +86,20 @@
             var levels = module.split(".");
             if (levels[levels.length-1]==="*") levels[levels.length-1] = "package";
             levels.shift();
-
-            var jsPath = this.o2.session.path;
-            jsPath +="/"+levels.join("/")+".js";
-
-            var loadAsync = (async!==false);
-
-            _requireJs(jsPath, callback, loadAsync, compression, module);
+            var o = o2;
+            var i = 0;
+            while (o && i<levels.length){
+                o = o[levels[i]];
+                i++
+            }
+            if (!o){
+                var jsPath = this.o2.session.path;
+                jsPath +="/"+levels.join("/")+".js";
+                var loadAsync = (async!==false);
+                _requireJs(jsPath, callback, loadAsync, compression, module);
+            }else{
+                o2.runCallback(callback, "success", [module]);
+            }
         }
     };
     var _requireSequence = function(fun, module, thisLoaded, thisErrorLoaded, callback, async, compression){
@@ -160,12 +167,25 @@
         var module = modules[0];
         var clazz = modules[1];
         var levels = module.split(".");
-        //levels.shift();
-        var root = "x_component_"+levels.join("_");
-        var clazzName = clazz || "Main";
-        var path = "../"+root+"/"+clazzName.replace(/\./g, "/")+".js";
-        var loadAsync = (async!==false);
-        _requireJs(path, callback, loadAsync, compression);
+
+        var o = o2.xApplication;
+        var i = 0;
+        while (o && i<levels.length){
+            o = o[levels[i]];
+            i++
+        }
+        if (o) o = o[clazz || "Main"];
+
+        if (!o){
+            //levels.shift();
+            var root = "x_component_"+levels.join("_");
+            var clazzName = clazz || "Main";
+            var path = "../"+root+"/"+clazzName.replace(/\./g, "/")+".js";
+            var loadAsync = (async!==false);
+            _requireJs(path, callback, loadAsync, compression);
+        }else{
+            o2.runCallback(callback, "success");
+        }
     };
     var _requireApp = function(module, clazz, callback, async, sequence, compression){
         var type = typeOf(module);

+ 1 - 1
o2web/source/o2_core/o2/o2.more.js

@@ -1,6 +1,6 @@
 /** ***** BEGIN LICENSE BLOCK *****
  * |------------------------------------------------------------------------------|
- * | O2OA 活力办公 创意无限    o2.core.js                                            |
+ * | O2OA 活力办公 创意无限    o2.more.js                                            |
  * |------------------------------------------------------------------------------|
  * | Distributed under the AGPL license:                                          |
  * |------------------------------------------------------------------------------|

+ 0 - 15
o2web/source/o2_core/o2/widget/Common.js

@@ -26,21 +26,6 @@ o2.widget.Common = new Class({
                     alert(error + text);
                 }
             });
-            // var r = new Request({
-            //     url: this.cssPath,
-            //     secure: false,
-            //     async: false,
-            //     method: "get",
-            //     noCache: false,
-            //     onSuccess: function(responseText, responseXML){
-            //         var f = eval("(function(){return function(){\n return "+responseText+"\n}})();");
-            //         this.css = f.apply(this);
-            //         o2.widget.css[key] = this.css;
-            //     }.bind(this),
-            //     onError: function(text, error){
-            //         alert(error + text);
-            //     }
-            // });
             r.send();
         }
 	},

+ 2 - 1
o2web/source/x_component_Template/MPopupForm.js

@@ -1,4 +1,5 @@
-var MPopupForm = new Class({
+MWF.xApplication.Template = MWF.xApplication.Template || {};
+MWF.xApplication.Template.MPopupForm = MPopupForm = new Class({
     Extends: MWF.widget.Common,
     Implements: [Options, Events],
     options: {

+ 5 - 1
o2web/source/x_component_process_Work/Main.js

@@ -527,7 +527,11 @@ MWF.xApplication.process.Work.Main = new Class({
 
             this.formNode.empty();
             this.formNode.setStyles(this.css.formNode);
-            MWF.xDesktop.requireApp("process.Xform", "Form", function(){
+            var uri = window.location.href;
+            //var cl = (uri.indexOf("$all")!=-1) ? "$all" : "Form";
+            var cl = "$all";
+            MWF.xDesktop.requireApp("process.Xform", cl, function(){
+            //MWF.xDesktop.requireApp("process.Xform", "Form", function(){
                 this.appForm = new MWF.APPForm(this.formNode, this.form, {});
                 this.appForm.businessData = {
                     "data": this.data,

+ 1 - 1
o2web/source/x_component_process_Xform/Actionbar.js

@@ -1,4 +1,4 @@
-//MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
+MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
 //MWF.require("MWF.widget.Tree", null, false);
 //MWF.require("MWF.widget.Toolbar", null, false);
 MWF.xApplication.process.Xform.Actionbar = MWF.APPActionbar =  new Class({

+ 31 - 0
o2web/source/x_component_process_Xform/Common.js

@@ -0,0 +1,31 @@
+MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
+MWF.xApplication.process.Xform.Common = MWF.APPCommon =  new Class({
+    Extends: MWF.APP$Module,
+    _loadUserInterface: function(){
+        if (this.json.innerHTML){
+            var nodes = this.node.childNodes;
+            for (var i=0; i<nodes.length; i++){
+                if (nodes[i].nodeType===Node.ELEMENT_NODE){
+                    if (!nodes[i].get("MWFtype")){
+                        nodes[i].destroy();
+                        i--;
+                    }
+                }else{
+                    if (nodes[i].removeNode){
+                        nodes[i].removeNode();
+                    }else{
+                        nodes[i].parentNode.removeChild(nodes[i]);
+                    }
+                    i--;
+                    //nodes[i]
+                }
+            }
+            this.node.appendHTML(this.json.innerHTML);
+
+            // if (this.node.get("html") !== this.json.innerHTML){
+            //this.node.appendHTML(this.json.innerHTML);
+            // }
+        }
+        this.node.setProperties(this.json.properties);
+    }
+});

+ 4 - 0
o2web/source/x_component_process_Xform/Div.js

@@ -0,0 +1,4 @@
+MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
+MWF.xApplication.process.Xform.Div = MWF.APPDiv =  new Class({
+    Extends: MWF.APP$Module
+});

+ 1 - 1
o2web/source/x_component_process_Xform/Form.js

@@ -2,7 +2,7 @@ MWF.require(["MWF.widget.Common", "MWF.widget.Identity", "MWF.widget.O2Identity"
 MWF.xApplication.process = MWF.xApplication.process || {};
 MWF.xApplication.process.Xform = MWF.xApplication.process.Xform || {};
 MWF.xDesktop.requireApp("process.Xform", "lp." + MWF.language, null, false);
-MWF.xDesktop.requireApp("process.Xform", "Package", null, false);
+//MWF.xDesktop.requireApp("process.Xform", "Package", null, false);
 
 MWF.xApplication.process.Xform.Form = MWF.APPForm = new Class({
     Implements: [Options, Events],

+ 5 - 40
o2web/source/x_component_process_Xform/Html.js

@@ -1,43 +1,8 @@
 MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
 MWF.xApplication.process.Xform.Html = MWF.APPHtml =  new Class({
-	Extends: MWF.APP$Module,
-
-	load: function(){
-	    debugger;
-        this.source = this._getSource();
-        if (this.source){
-            this._loadJsonData();
-        }else{
-            debugger;
-            this.node.appendHTML(this.json.text, "after");
-            this.node.destory();
-        }
-	},
-    _getSource: function(){
-        var parent = this.node.getParent();
-        while(parent && (parent.get("MWFtype")!="source" && parent.get("MWFtype")!="subSource" && parent.get("MWFtype")!="subSourceItem")) parent = parent.getParent();
-        return (parent) ? parent.retrieve("module") : null;
-    },
-    _loadJsonData: function(){
-        this.node.set("html", "");
-        this.source = this._getSource();
-        if (this.source){
-            if (this.source.data){
-                this.template = new Template();
-                this.html = this.template.substitute("{"+this.json.text+"}", this.source.data);
-
-                this.node.set("html", this.html);
-            //    if (this.json.jsonText){
-            //        if (this.json.jsonText.code){
-            //            this.text = this.form.Macro.exec(this.json.jsonText.code, this);
-            //            this.node.set("text", this.text);
-            //        }else{
-            //            this.node.set("text", this.text);
-            //        }
-            //    }else{
-            //        this.node.set("text", this.text);
-            //    }
-            }
-        }
+    Extends: MWF.APP$Module,
+    load: function(){
+        this.node.insertAdjacentHTML("beforebegin", this.json.text);
+        this.node.destroy();
     }
-});
+});

+ 52 - 0
o2web/source/x_component_process_Xform/Image.js

@@ -0,0 +1,52 @@
+MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
+MWF.xApplication.process.Xform.Image = MWF.APPImage =  new Class({
+    Extends: MWF.APP$Module,
+    _loadUserInterface: function(){
+        if (this.json.properties && this.json.properties["src"]){
+            var value = this.json.properties["src"];
+            if ((value.indexOf("x_processplatform_assemble_surface")!=-1 || value.indexOf("x_portal_assemble_surface")!=-1 || value.indexOf("x_cms_assemble_control")!=-1)){
+                var host1 = MWF.Actions.getHost("x_processplatform_assemble_surface");
+                var host2 = MWF.Actions.getHost("x_portal_assemble_surface");
+                var host3 = MWF.Actions.getHost("x_cms_assemble_control");
+                if (value.indexOf("/x_processplatform_assemble_surface")!==-1){
+                    value = value.replace("/x_processplatform_assemble_surface", host1+"/x_processplatform_assemble_surface");
+                }else if (value.indexOf("x_processplatform_assemble_surface")!==-1){
+                    value = value.replace("x_processplatform_assemble_surface", host1+"/x_processplatform_assemble_surface");
+                }
+                if (value.indexOf("/x_portal_assemble_surface")!==-1){
+                    value = value.replace("/x_portal_assemble_surface", host2+"/x_portal_assemble_surface");
+                }else if (value.indexOf("x_portal_assemble_surface")!==-1){
+                    value = value.replace("x_portal_assemble_surface", host2+"/x_portal_assemble_surface");
+                }
+                if (value.indexOf("/x_cms_assemble_control")!==-1){
+                    value = value.replace("/x_cms_assemble_control", host3+"/x_cms_assemble_control");
+                }else if (value.indexOf("x_cms_assemble_control")!==-1){
+                    value = value.replace("x_cms_assemble_control", host3+"/x_cms_assemble_control");
+                }
+            }
+            try{
+                this.node.set("src", value);
+            }catch(e){}
+        }else if (this.json.srcfile && this.json.srcfile!="none"){
+            value = this.json.srcfile;
+            if (typeOf(value)==="object"){
+                var url = (value.portal) ? MWF.xDesktop.getPortalFileUr(value.id, value.portal) : MWF.xDesktop.getProcessFileUr(value.id, value.application);
+                this.node.set("src", url);
+            }else{
+                var host = MWF.Actions.getHost("x_portal_assemble_surface");
+                var action = MWF.Actions.get("x_portal_assemble_surface");
+                var uri = action.action.actions.readFile.uri;
+                uri = uri.replace("{flag}", value);
+                uri = uri.replace("{applicationFlag}", this.form.json.application);
+                value = host+"/x_portal_assemble_surface"+uri;
+                this.node.set("src", value);
+            }
+        }else if (typeOf(this.json.src)=="object"){
+            var src = MWF.xDesktop.getImageSrc( this.json.src.imageId );
+            this.node.set("src", src);
+        }
+    },
+    reset: function(){
+        this._loadUserInterface();
+    }
+});

+ 7 - 136
o2web/source/x_component_process_Xform/Package.js

@@ -1,10 +1,11 @@
 MWF.xApplication.process.Xform = MWF.xApplication.process.Xform || {};
+MWF.xApplication.process.Xform.Package = true;
 MWF.require("MWF.xScript.Macro", null, false);
 MWF.xDesktop.requireApp("process.Xform", "$Module", null, false);
 
 MWF.xApplication.process.Xform.require = function(callback){
     var modules = [
-        ["process.Xform", "Form"],
+       // ["process.Xform", "Form"],
         ["process.Xform", "Label"],
         ["process.Xform", "Textfield"],
         ["process.Xform", "Number"],
@@ -40,7 +41,11 @@ MWF.xApplication.process.Xform.require = function(callback){
         ["process.Xform", "Widget"],
         ["process.Xform", "Source"],
         ["process.Xform", "SourceText"],
-        ["process.Xform", "SubSource"]
+        ["process.Xform", "SubSource"],
+        ["process.Xform", "Div"],
+        ["process.Xform", "Common"],
+        ["process.Xform", "Image"],
+        ["process.Xform", "Html"],
     ];
     MWF.xDesktop.requireApp(modules, null, function(){
         if (callback) callback();
@@ -48,138 +53,4 @@ MWF.xApplication.process.Xform.require = function(callback){
 };
 
 
-// MWF.xDesktop.requireApp("process.Xform", "Label", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Textfield", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Number", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Personfield", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Orgfield", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Calendar", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Textarea", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Opinion", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Select", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Radio", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Checkbox", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Button", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Combox", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Address", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Table", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Datagrid", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Tab", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Tree", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Iframe", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Htmleditor", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Office", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Attachment", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Actionbar", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "sidebar", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Log", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Monitor", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "View", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "ViewSelector", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Stat", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "ImageClipper", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Subform", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "Source", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "SourceText", null, false);
-// MWF.xDesktop.requireApp("process.Xform", "SubSource", null, false);
-
-MWF.xApplication.process.Xform.Div = MWF.APPDiv =  new Class({
-	Extends: MWF.APP$Module
-});
-
-MWF.xApplication.process.Xform.Common = MWF.APPCommon =  new Class({
-    Extends: MWF.APP$Module,
-    _loadUserInterface: function(){
-        if (this.json.innerHTML){
-            var nodes = this.node.childNodes;
-            for (var i=0; i<nodes.length; i++){
-                if (nodes[i].nodeType===Node.ELEMENT_NODE){
-                    if (!nodes[i].get("MWFtype")){
-                        nodes[i].destroy();
-                        i--;
-                    }
-                }else{
-                    if (nodes[i].removeNode){
-                        nodes[i].removeNode();
-                    }else{
-                        nodes[i].parentNode.removeChild(nodes[i]);
-                    }
-                    i--;
-                    //nodes[i]
-                }
-            }
-            this.node.appendHTML(this.json.innerHTML);
-
-            // if (this.node.get("html") !== this.json.innerHTML){
-            //this.node.appendHTML(this.json.innerHTML);
-            // }
-        }
-        this.node.setProperties(this.json.properties);
-    }
-});
-//MWF.xApplication.process.Xform.Image = MWF.APPImage =  new Class({
-//	Extends: MWF.APP$Module
-//});
-MWF.xApplication.process.Xform.Image = MWF.APPImage =  new Class({
-    Extends: MWF.APP$Module,
-    _loadUserInterface: function(){
-        if (this.json.properties && this.json.properties["src"]){
-            var value = this.json.properties["src"];
-            if ((value.indexOf("x_processplatform_assemble_surface")!=-1 || value.indexOf("x_portal_assemble_surface")!=-1 || value.indexOf("x_cms_assemble_control")!=-1)){
-                var host1 = MWF.Actions.getHost("x_processplatform_assemble_surface");
-                var host2 = MWF.Actions.getHost("x_portal_assemble_surface");
-                var host3 = MWF.Actions.getHost("x_cms_assemble_control");
-                if (value.indexOf("/x_processplatform_assemble_surface")!==-1){
-                    value = value.replace("/x_processplatform_assemble_surface", host1+"/x_processplatform_assemble_surface");
-                }else if (value.indexOf("x_processplatform_assemble_surface")!==-1){
-                    value = value.replace("x_processplatform_assemble_surface", host1+"/x_processplatform_assemble_surface");
-                }
-                if (value.indexOf("/x_portal_assemble_surface")!==-1){
-                    value = value.replace("/x_portal_assemble_surface", host2+"/x_portal_assemble_surface");
-                }else if (value.indexOf("x_portal_assemble_surface")!==-1){
-                    value = value.replace("x_portal_assemble_surface", host2+"/x_portal_assemble_surface");
-                }
-                if (value.indexOf("/x_cms_assemble_control")!==-1){
-                    value = value.replace("/x_cms_assemble_control", host3+"/x_cms_assemble_control");
-                }else if (value.indexOf("x_cms_assemble_control")!==-1){
-                    value = value.replace("x_cms_assemble_control", host3+"/x_cms_assemble_control");
-                }
-            }
-            try{
-                this.node.set("src", value);
-            }catch(e){}
-        }else if (this.json.srcfile && this.json.srcfile!="none"){
-            value = this.json.srcfile;
-            if (typeOf(value)==="object"){
-                var url = (value.portal) ? MWF.xDesktop.getPortalFileUr(value.id, value.portal) : MWF.xDesktop.getProcessFileUr(value.id, value.application);
-                this.node.set("src", url);
-            }else{
-                var host = MWF.Actions.getHost("x_portal_assemble_surface");
-                var action = MWF.Actions.get("x_portal_assemble_surface");
-                var uri = action.action.actions.readFile.uri;
-                uri = uri.replace("{flag}", value);
-                uri = uri.replace("{applicationFlag}", this.form.json.application);
-                value = host+"/x_portal_assemble_surface"+uri;
-                this.node.set("src", value);
-            }
-        }else if (typeOf(this.json.src)=="object"){
-            var src = MWF.xDesktop.getImageSrc( this.json.src.imageId );
-            this.node.set("src", src);
-        }
-    },
-    reset: function(){
-        this._loadUserInterface();
-    }
-});
-
-
-
-MWF.xApplication.process.Xform.Html = MWF.APPHtml =  new Class({
-	Extends: MWF.APP$Module,
-	load: function(){
-	    debugger;
-		this.node.insertAdjacentHTML("beforebegin", this.json.text);
-		this.node.destroy();
-	}
-});
 

+ 1 - 0
o2web/source/x_component_process_Xform/Source.js

@@ -1,3 +1,4 @@
+MWF.xDesktop.requireApp("process.Xform", "Div", null, false);
 MWF.xApplication.process.Xform.Source = MWF.APPSource =  new Class({
 	Extends: MWF.APPDiv,
     options: {

+ 2 - 2
o2web/source/x_desktop/app.html

@@ -14,9 +14,9 @@
             <div id="loaddingArea" style="overflow: hidden;width:0px; height:2px; background-color:#4e82bd; position: absolute; top: 0; z-index: 100"></div>
         </div>
 
-        <script src="../o2_core/o2.all.js"></script>
+        <script src="../o2_core/o2.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
-        <script src="js/base_all.js"></script>
+        <script src="js/base.min.js"></script>
         <script src="js/app.min.js"></script>
     </body>
 </html>

+ 0 - 1
o2web/source/x_desktop/appMobile.html

@@ -7,7 +7,6 @@
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
         <script src="js/base.min.js"></script>
         <script src="js/o2m.api.js"></script>

+ 0 - 1
o2web/source/x_desktop/cmsdocMobile.html

@@ -8,7 +8,6 @@
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <!--<script src="res/framework/htmleditor/ckeditor451/ckeditor.js"></script>-->
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="js/o2m.api.js"></script>
     <script src="js/cmsDocMobile.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>

+ 0 - 2
o2web/source/x_desktop/cmspreview.html

@@ -5,9 +5,7 @@
     <link rel="stylesheet" type="text/css" href="css/style.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
-    <script src="../o2_lib/mootools/mootools-1.6.0.min.js"></script>
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 
     <title>FORM PREVIEW</title>

+ 0 - 1
o2web/source/x_desktop/ddsso.html

@@ -6,7 +6,6 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script type="text/javascript" src="/o2_lib/dingding/dingtalk.js"></script>
     <script src="js/ddsso.js"></script>
     <script src="../o2_lib/Decimal.js"></script>

+ 0 - 1
o2web/source/x_desktop/forum.html

@@ -6,7 +6,6 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
         <script src="js/forum.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
 

+ 0 - 1
o2web/source/x_desktop/forumdocMobile.html

@@ -7,7 +7,6 @@
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_lib/htmleditor/ckeditor/ckeditor.js"></script>
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="js/forumDocMobile.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 

+ 3 - 4
o2web/source/x_desktop/index.html

@@ -66,10 +66,9 @@
         }
     </script>
 
-    <script src="../o2_core/o2.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
-    <script src="js/base.js"></script>
-    <script src="js/x.js"></script>
+    <script src="../o2_core/o2.min.js"></script>
+    <script src="js/base.min.js"></script>
+    <script src="js/x.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 </body>
 </html>

+ 83 - 96
o2web/source/x_desktop/js/base.js

@@ -71,8 +71,6 @@ o2.xDesktop.requireApp = function (module, clazz, callback, async) {
                 layout.desktop.apps[app.appId] = app;
             }
 
-
-
             layout.desktop.appArr.push(app);
             layout.desktop.appCurrentList.push(app);
             if (!notCurrent) layout.desktop.currentApp = app;
@@ -338,7 +336,7 @@ o2.addReady(function () {
 
     var loadingNode = $("loaddingArea");
     var loadeds = 0;
-    var loadCount = 16;
+    var loadCount = 4;
     var size = document.body.getSize();
     var _closeLoadingNode = function () {
         if (loadingNode) {
@@ -372,22 +370,25 @@ o2.addReady(function () {
     o2.load(lp, function () {
         _loadProgressBar();
         lpLoaded = true;
-        if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-    });
-    var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
-    o2.require(modules, {
-        "onSuccess": function () {
-            commonLoaded = true;
-            if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-        },
-        "onEvery": function () {
-            _loadProgressBar();
-        }
+
+        var modules = ["o2.xDesktop.$all"];
+        o2.require(modules, {
+            "onSuccess": function () {
+                commonLoaded = true;
+                if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+            },
+            "onEvery": function () {
+                _loadProgressBar();
+            }
+        });
+
+        //if (configLoaded && lpLoaded && commonLoaded) _getDistribute(function () { _load(); });
     });
+
     o2.getJSON("../x_desktop/res/config/config.json", function (config) {
         _loadProgressBar();
         layout.config = config;
-        configLoaded = true
+        configLoaded = true;
         if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
     });
 
@@ -413,53 +414,47 @@ o2.addReady(function () {
             layout.session.user = json.data;
             layout.session.token = json.data.token;
             layout.desktop.session = layout.session;
-            (function (layout) {
-                var _loadResource = function (callback) {
-                    var isLoadedA = false;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-                    var modules = [
-                        "o2.xDesktop.Dialog",
-                        "o2.xDesktop.UserData",
-                        "o2.xDesktop.Access",
-                        "o2.widget.UUID",
-                        "o2.xDesktop.Menu",
-                        "o2.xDesktop.Authentication",
-                        // "o2.xDesktop.shortcut",
-                        "o2.widget.PinYin",
-                        "o2.xDesktop.Access"
-                        // "o2.xDesktop.MessageMobile"
-                    ];
-                    //o2.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
-                    o2.require("o2.widget.Common", function () {
-                        _loadProgressBar();
-                        o2.require(modules, {
-                            "onSuccess": function () {
-                                o2.requireApp("Common", "", function () { _loadProgressBar(); isLoadedB = true; _check(); })
-                            },
-                            "onEvery": function () {
-                                _loadProgressBar();
-                            }
-                        });
-                    });
-                };
-
-                var _loadContent = function () {
-                    _loadResource(function () {
+            //(function (layout) {
+                // var _loadResource = function (callback) {
+                //     // var isLoadedA = false;
+                //     // var isLoadedB = false;
+                //     //var isLoadedC = false;
+                //
+                //     var modules = [
+                //         "o2.widget._base",
+                //         "o2.xDesktop._base"
+                //     ];
+                //     //o2.xDesktop.requireApp("Common", "", null, false);
+                //     //var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
+                //
+                //     //o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
+                //     // o2.require("o2.widget.Common", function () {
+                //     //     _loadProgressBar();
+                //     o2.require(modules, {
+                //         "onSuccess": function () {
+                //             _loadProgressBar();
+                //             if (callback) callback();
+                //             //o2.requireApp("Common", "", function () { _loadProgressBar(); isLoadedB = true; _check(); })
+                //         },
+                //         "onEvery": function () {
+                //             _loadProgressBar();
+                //         }
+                //     });
+                //     // });
+                // };
+
+            //    var _loadContent = function () {
+                    //_loadResource(function () {
                         _loadProgressBar(true);
                         while (layout.readys && layout.readys.length) {
                             layout.readys.shift().apply(window);
                         }
 
-                    });
-                };
+                    //});
+            //    };
 
-                _loadContent();
-            })(layout);
+            //    _loadContent();
+            //})(layout);
         };
 
         //修改支持x-token
@@ -491,53 +486,45 @@ o2.addReady(function () {
             } else {
                 //用户未经登录
                 //打开登录页面
-                var _loadResource = function (callback) {
-                    var isLoadedA = false;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-                    //var lp = o2.session.path+"/lp/"+o2.language+".js";
-                    var modules = [
-                        "o2.xDesktop.Dialog",
-                        "o2.xDesktop.UserData",
-                        "o2.xDesktop.Access",
-                        "o2.widget.UUID",
-                        "o2.xDesktop.Menu",
-                        //"o2.xDesktop.shortcut",
-                        "o2.widget.PinYin",
-                        "o2.xDesktop.Access",
-                        //"o2.xDesktop.MessageMobile"
-                    ];
-                    //o2.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
-                    o2.require("o2.widget.Common", function () {
-                        _loadProgressBar();
-                        o2.require(modules, {
-                            "onSuccess": function () {
-                                o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
-                            },
-                            "onEvery": function () {
-                                _loadProgressBar();
-                            }
-                        });
-                    });
-                };
-                _loadResource(function () {
+                // var _loadResource = function (callback) {
+                //     var isLoadedA = false;
+                //     var isLoadedB = false;
+                //     //var isLoadedC = false;
+                //
+                //     //var lp = o2.session.path+"/lp/"+o2.language+".js";
+                //     var modules = [
+                //         "o2.xDesktop.desktopInit"
+                //     ];
+                //     //o2.xDesktop.requireApp("Common", "", null, false);
+                //     var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
+                //
+                //     o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
+                //     o2.require("o2.widget.Common", function () {
+                //         _loadProgressBar();
+                //         o2.require(modules, {
+                //             "onSuccess": function () {
+                //                 o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
+                //             },
+                //             "onEvery": function () {
+                //                 _loadProgressBar();
+                //             }
+                //         });
+                //     });
+                // };
+                //_loadResource(function () {
                     _loadProgressBar(true);
                     if (layout.yqwx) {
                         layout.openLoginQywx();
                     } else {
                         layout.openLogin();
                     }
-                });
+                //});
             }
         });
 
         layout.openLogin = function () {
-            o2.require("o2.widget.Common", null, false);
-            o2.require("o2.xDesktop.Authentication", function () {
+        //    o2.require("o2.widget.Common", null, false);
+        //    o2.require("o2.xDesktop.Authentication", function () {
                 layout.authentication = new o2.xDesktop.Authentication({
                     "style": "flat",
                     "onLogin": _load.bind(layout)
@@ -545,14 +532,14 @@ o2.addReady(function () {
                 layout.authentication.loadLogin(document.body);
                 var loadingNode = $("browser_loading");
                 if (loadingNode) loadingNode.fade("out");
-            });
+        //    });
         };
 
         layout.openLoginQywx = function () {
             console.log("开始login。。。。。。。。。。。。。");
             var uri = locate.href.toURI();
 
-            MWF.require("MWF.xDesktop.Actions.RestActions", function () {
+        //    MWF.require("MWF.xDesktop.Actions.RestActions", function () {
                 console.log("执行单点。。。。。。。。。。");
                 var action = new MWF.xDesktop.Actions.RestActions("", "x_organization_assemble_authentication", "");
                 action.getActions = function (actionCallback) {
@@ -574,7 +561,7 @@ o2.addReady(function () {
                         document.id("layout").set("html", "<div>企业微信单点异常!</div>")
                     }.bind(this)
                 });
-            });
+        //    });
         };
 
     };

+ 15 - 43
o2web/source/x_desktop/js/base_all.js → o2web/source/x_desktop/js/base_bak.js

@@ -293,38 +293,9 @@ o2.xDesktop.requireApp = function (module, clazz, callback, async) {
         layout.openApplication(null, appName, option || {}, m_status);
     };
 
-    // layout.getAppUrlMapping = function(url){
-    //     return this.getUrlMapping(url, "app");
-    // };
-    // layout.getCenterUrlMapping = function(url){
-    //     return this.getUrlMapping(url,"center");
-    // };
-    // layout.getWebUrlMapping = function(url){
-    //     return this.getUrlMapping(url, "web");
-    // };
-    // layout.getUrlMapping = function(url, type){
-    //     var urlContextMapping = layout.config.urlMapping;
-    //     if (urlContextMapping && urlContextMapping.app){
-    //         var href = url || window.location.href.toString();
-    //
-    //         for (var k in urlContextMapping[type]){
-    //             var regex = new RegExp(k);
-    //             if (regex.test(href)){
-    //                 return urlContextMapping[type][k];
-    //             }
-    //         }
-    //     }
-    //     return "";
-    // };
-
 })(layout);
 
 o2.addReady(function () {
-    // layout.desktop = new (new Class({Implements: [Options, Events]}))();
-    // layout.desktop.openApplication = layout.openApplication;
-    // layout.desktop.refreshApp = layout.refreshApp;
-    // layout.desktop.load = layout.load;
-
     //兼容方法
     Element.implement({
         "makeLnk": function (options) { }
@@ -367,27 +338,28 @@ o2.addReady(function () {
     layout.config = null;
     var configLoaded = false;
     var lpLoaded = false;
+    var commonLoaded = false;
     var lp = o2.session.path + "/lp/" + o2.language + ".js";
     o2.load(lp, function () {
         _loadProgressBar();
         lpLoaded = true;
-        if (configLoaded && lpLoaded) _getDistribute(function () { _load(); });
+        if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+    });
+    var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
+    o2.require(modules, {
+        "onSuccess": function () {
+            commonLoaded = true;
+            if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+        },
+        "onEvery": function () {
+            _loadProgressBar();
+        }
     });
-    // var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
-    // o2.require(modules, {
-    //     "onSuccess": function () {
-    //         commonLoaded = true;
-    //         if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-    //     },
-    //     "onEvery": function () {
-    //         _loadProgressBar();
-    //     }
-    // });
     o2.getJSON("../x_desktop/res/config/config.json", function (config) {
         _loadProgressBar();
         layout.config = config;
-        configLoaded = true;
-        if (configLoaded && lpLoaded) _getDistribute(function () { _load(); });
+        configLoaded = true
+        if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
     });
 
     var _getDistribute = function (callback) {
@@ -427,7 +399,7 @@ o2.addReady(function () {
                         "o2.xDesktop.Authentication",
                         // "o2.xDesktop.shortcut",
                         "o2.widget.PinYin",
-                        "o2.xDesktop.Access"
+                        //"o2.xDesktop.Access"
                         // "o2.xDesktop.MessageMobile"
                     ];
                     //o2.xDesktop.requireApp("Common", "", null, false);

+ 104 - 92
o2web/source/x_desktop/js/base_simple.js

@@ -50,18 +50,30 @@ o2.addReady(function () {
     o2.load(lp, function () {
         _loadProgressBar();
         lpLoaded = true;
-        if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-    });
-    var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
-    o2.require(modules, {
-        "onSuccess": function () {
-            commonLoaded = true;
-            if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-        },
-        "onEvery": function () {
-            _loadProgressBar();
-        }
+
+        var modules = ["o2.xDesktop.$all"];
+        o2.require(modules, {
+            "onSuccess": function () {
+                commonLoaded = true;
+                if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+            },
+            "onEvery": function () {
+                _loadProgressBar();
+            }
+        });
+
+        //if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
     });
+    // var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
+    // o2.require(modules, {
+    //     "onSuccess": function () {
+    //         commonLoaded = true;
+    //         if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+    //     },
+    //     "onEvery": function () {
+    //         _loadProgressBar();
+    //     }
+    // });
     o2.getJSON("../x_desktop/res/config/config.json", function (config) {
         _loadProgressBar();
         layout.config = config;
@@ -87,53 +99,53 @@ o2.addReady(function () {
             layout.user = json.data;
             layout.session = {};
             layout.session.user = json.data;
-            (function (layout) {
-                var _loadResource = function (callback) {
-                    var isLoadedA = false;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-                    var modules = [
-                        "o2.xDesktop.Dialog",
-                        "o2.xDesktop.UserData",
-                        "o2.xDesktop.Access",
-                        "o2.widget.UUID",
-                        "o2.xDesktop.Menu",
-                        "o2.xDesktop.Authentication",
-                        // "o2.xDesktop.shortcut",
-                        "o2.widget.PinYin",
-                        "o2.xDesktop.Access"
-                        // "o2.xDesktop.MessageMobile"
-                    ];
-                    //o2.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
-                    o2.require("o2.widget.Common", function () {
-                        _loadProgressBar();
-                        o2.require(modules, {
-                            "onSuccess": function () {
-                                o2.requireApp("Common", "", function () { _loadProgressBar(); isLoadedB = true; _check(); })
-                            },
-                            "onEvery": function () {
-                                _loadProgressBar();
-                            }
-                        });
-                    });
-                };
-
-                var _loadContent = function () {
-                    //_loadResource(function () {
+            // (function (layout) {
+            //     var _loadResource = function (callback) {
+            //         var isLoadedA = false;
+            //         var isLoadedB = false;
+            //         //var isLoadedC = false;
+            //
+            //         var modules = [
+            //             "o2.xDesktop.Dialog",
+            //             "o2.xDesktop.UserData",
+            //             "o2.xDesktop.Access",
+            //             "o2.widget.UUID",
+            //             "o2.xDesktop.Menu",
+            //             "o2.xDesktop.Authentication",
+            //             // "o2.xDesktop.shortcut",
+            //             "o2.widget.PinYin",
+            //             "o2.xDesktop.Access"
+            //             // "o2.xDesktop.MessageMobile"
+            //         ];
+            //         //o2.xDesktop.requireApp("Common", "", null, false);
+            //         var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
+            //
+            //         o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
+            //         o2.require("o2.widget.Common", function () {
+            //             _loadProgressBar();
+            //             o2.require(modules, {
+            //                 "onSuccess": function () {
+            //                     o2.requireApp("Common", "", function () { _loadProgressBar(); isLoadedB = true; _check(); })
+            //                 },
+            //                 "onEvery": function () {
+            //                     _loadProgressBar();
+            //                 }
+            //             });
+            //         });
+            //     };
+            //
+            //     var _loadContent = function () {
+            //         //_loadResource(function () {
                         _loadProgressBar(true);
                         while (layout.readys && layout.readys.length) {
                             layout.readys.shift().apply(window);
                         }
-
-                    //});
-                };
-
-                _loadContent();
-            })(layout);
+            //
+            //         //});
+            //     };
+            //
+            //     _loadContent();
+            // })(layout);
         };
         //先判断用户是否登录
         o2.Actions.get("x_organization_assemble_authentication").getAuthentication(function (json) {
@@ -157,49 +169,49 @@ o2.addReady(function () {
             } else {
                 //用户未经登录
                 //打开登录页面
-                var _loadResource = function (callback) {
-                    var isLoadedA = true;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-                    //var lp = o2.session.path+"/lp/"+o2.language+".js";
-                    var modules = [
-                        // "o2.xDesktop.Dialog",
-                        "o2.xDesktop.UserData",
-                        // "o2.xDesktop.Access",
-                        // "o2.widget.UUID",
-                        // "o2.xDesktop.Menu",
-                        // //"o2.xDesktop.shortcut",
-                        // "o2.widget.PinYin",
-                        // "o2.xDesktop.Access",
-                        //"o2.xDesktop.MessageMobile"
-                    ];
-                    //o2.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    //o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
-                    o2.require("o2.widget.Common", function () {
-                        _loadProgressBar();
-                        o2.require(modules, {
-                            "onSuccess": function () {
-                                o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
-                            },
-                            "onEvery": function () {
-                                _loadProgressBar();
-                            }
-                        });
-                    });
-                };
-                _loadResource(function () {
+                // var _loadResource = function (callback) {
+                //     var isLoadedA = true;
+                //     var isLoadedB = false;
+                //     //var isLoadedC = false;
+                //
+                //     //var lp = o2.session.path+"/lp/"+o2.language+".js";
+                //     var modules = [
+                //         // "o2.xDesktop.Dialog",
+                //         "o2.xDesktop.UserData",
+                //         // "o2.xDesktop.Access",
+                //         // "o2.widget.UUID",
+                //         // "o2.xDesktop.Menu",
+                //         // //"o2.xDesktop.shortcut",
+                //         // "o2.widget.PinYin",
+                //         // "o2.xDesktop.Access",
+                //         //"o2.xDesktop.MessageMobile"
+                //     ];
+                //     //o2.xDesktop.requireApp("Common", "", null, false);
+                //     var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
+                //
+                //     //o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { _loadProgressBar(); isLoadedA = true; _check(); });
+                //     o2.require("o2.widget.Common", function () {
+                //         _loadProgressBar();
+                //         o2.require(modules, {
+                //             "onSuccess": function () {
+                //                 o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
+                //             },
+                //             "onEvery": function () {
+                //                 _loadProgressBar();
+                //             }
+                //         });
+                //     });
+                // };
+                //_loadResource(function () {
                     _loadProgressBar(true);
                     layout.openLogin();
-                });
+                //});
             }
         });
 
         layout.openLogin = function () {
-            o2.require("o2.widget.Common", null, false);
-            o2.require("o2.xDesktop.Authentication", function () {
+            //o2.require("o2.widget.Common", null, false);
+            //o2.require("o2.xDesktop.Authentication", function () {
                 layout.authentication = new o2.xDesktop.Authentication({
                     "style": "flat",
                     "onLogin": _load.bind(layout)
@@ -207,7 +219,7 @@ o2.addReady(function () {
                 layout.authentication.loadLogin(document.body);
                 var loadingNode = $("browser_loading");
                 if (loadingNode) loadingNode.fade("out");
-            });
+            //});
         };
     };
 });

+ 58 - 47
o2web/source/x_desktop/js/base_simple_anonymous.js

@@ -48,15 +48,26 @@ o2.addReady(function () {
     var lp = o2.session.path + "/lp/" + o2.language + ".js";
     o2.load(lp, function () {
         lpLoaded = true;
-        if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-    });
-    var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
-    o2.require(modules, {
-        "onSuccess": function () {
-            commonLoaded = true;
-            if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
-        }
+
+        var modules = ["o2.xDesktop.$all"];
+        o2.require(modules, {
+            "onSuccess": function () {
+                commonLoaded = true;
+                if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+            },
+            "onEvery": function () {
+                _loadProgressBar();
+            }
+        });
+        //if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
     });
+    // var modules = ["o2.xDesktop.Common", "o2.xDesktop.Actions.RestActions", "o2.xAction.RestActions"];
+    // o2.require(modules, {
+    //     "onSuccess": function () {
+    //         commonLoaded = true;
+    //         if (configLoaded && commonLoaded && lpLoaded) _getDistribute(function () { _load(); });
+    //     }
+    // });
     o2.getJSON("../x_desktop/res/config/config.json", function (config) {
         layout.config = config;
         configLoaded = true
@@ -80,48 +91,48 @@ o2.addReady(function () {
             // layout.user = json.data;
             // layout.session = {};
             // layout.session.user = json.data;
-            (function (layout) {
-                var _loadResource = function (callback) {
-                    var isLoadedA = false;
-                    var isLoadedB = false;
-                    //var isLoadedC = false;
-
-                    var modules = [
-                        "o2.xDesktop.Dialog",
-                        "o2.xDesktop.UserData",
-                        "o2.xDesktop.Access",
-                        "o2.widget.UUID",
-                        "o2.xDesktop.Menu",
-                        "o2.xDesktop.Authentication",
-                        // "o2.xDesktop.shortcut",
-                        "o2.widget.PinYin",
-                        "o2.xDesktop.Access"
-                        // "o2.xDesktop.MessageMobile"
-                    ];
-                    //o2.xDesktop.requireApp("Common", "", null, false);
-                    var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
-
-                    o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { isLoadedA = true; _check(); });
-                    o2.require("o2.widget.Common", function () {
-                        o2.require(modules, {
-                            "onSuccess": function () {
-                                o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
-                            }
-                        });
-                    });
-                };
-
-                var _loadContent = function () {
-                    //_loadResource(function () {
+            // (function (layout) {
+            //     var _loadResource = function (callback) {
+            //         var isLoadedA = false;
+            //         var isLoadedB = false;
+            //         //var isLoadedC = false;
+            //
+            //         var modules = [
+            //             "o2.xDesktop.Dialog",
+            //             "o2.xDesktop.UserData",
+            //             "o2.xDesktop.Access",
+            //             "o2.widget.UUID",
+            //             "o2.xDesktop.Menu",
+            //             "o2.xDesktop.Authentication",
+            //             // "o2.xDesktop.shortcut",
+            //             "o2.widget.PinYin",
+            //             "o2.xDesktop.Access"
+            //             // "o2.xDesktop.MessageMobile"
+            //         ];
+            //         //o2.xDesktop.requireApp("Common", "", null, false);
+            //         var _check = function () { if (isLoadedA && isLoadedB) if (callback) callback(); };
+            //
+            //         o2.load(["../o2_lib/mootools/plugin/mBox.min.js"], function () { isLoadedA = true; _check(); });
+            //         o2.require("o2.widget.Common", function () {
+            //             o2.require(modules, {
+            //                 "onSuccess": function () {
+            //                     o2.requireApp("Common", "", function () { isLoadedB = true; _check(); })
+            //                 }
+            //             });
+            //         });
+            //     };
+            //
+            //     var _loadContent = function () {
+            //         //_loadResource(function () {
                         while (layout.readys && layout.readys.length) {
                             layout.readys.shift().apply(window);
                         }
-
-                    //});
-                };
-
-                _loadContent();
-            })(layout);
+            //
+            //         //});
+            //     };
+            //
+            //     _loadContent();
+            // })(layout);
         };
         // var json = {
         //     user: "anonymous",

+ 0 - 1
o2web/source/x_desktop/oauth.html

@@ -12,7 +12,6 @@
     <!--    <script src="res/framework/mootools/mootools-more-1.4.0.1-all_2.js"></script>-->
 
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
     <script src="js/base_simple_anonymous.js"></script>
     <script>

+ 1 - 2
o2web/source/x_desktop/oauth2.html

@@ -6,8 +6,7 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
-        <script src="../o2_core/o2.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
+        <script src="../o2_core/o2.min.js"></script>
         <script src="js/base_simple.min.js"></script>
         <script src="js/oauth2.js"></script>
 

+ 1 - 2
o2web/source/x_desktop/portal.html

@@ -6,8 +6,7 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
-        <script src="../o2_core/o2.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
+        <script src="../o2_core/o2.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
         <script src="js/base.min.js"></script>
         <script src="js/portal.min.js"></script>

+ 0 - 1
o2web/source/x_desktop/portalmobile.html

@@ -6,7 +6,6 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
         <script src="js/base.min.js"></script>
         <script src="js/portal.min.js"></script>

+ 1 - 2
o2web/source/x_desktop/preview.html

@@ -6,9 +6,8 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
-    <script src="js/base.js"></script>
+    <script src="js/base.min.js"></script>
 
     <title>FORM PREVIEW</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

+ 1 - 2
o2web/source/x_desktop/printWork.html

@@ -6,8 +6,7 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
-        <script src="js/base.js"></script>
+        <script src="js/base.min.js"></script>
         <script src="js/printWork.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
 

+ 1 - 2
o2web/source/x_desktop/printcmsdoc.html

@@ -6,8 +6,7 @@
         <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
-        <script src="js/base.js"></script>
+        <script src="js/base.min.js"></script>
         <script src="js/printCMSDoc.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
 

+ 0 - 1
o2web/source/x_desktop/processViewer.html

@@ -6,7 +6,6 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 
     <title>FORM PREVIEW</title>

+ 0 - 1
o2web/source/x_desktop/qiyeweixinsso.html

@@ -6,7 +6,6 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="js/weixinsso.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 

+ 0 - 1
o2web/source/x_desktop/qywxstartprocess.html

@@ -9,7 +9,6 @@
 
     <script>layout.yqwx = true;</script>
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
     <script src="js/base.min.js"></script>
     <script src="js/qywxStartProcess.min.js"></script>

+ 6 - 0
o2web/source/x_desktop/res/config/config.json

@@ -19,5 +19,11 @@
     "enable": false,
     "portal": "b82d7669-85d6-4c10-8151-c4d1f18ba6ef",
     "page": ""
+  },
+  "urlMapping": {
+    "172.16.96.134:20030": "172.16.96.134/tzgsoa/center",
+    "172.16.96.134:20020": "172.16.96.134/tzgsoa/app",
+    "ng.o2oa.net:20030": "ng.o2oa.net/tzgsoa/center",
+    "ng.o2oa.net:20020": "ng.o2oa.net/tzgsoa/app"
   }
 }

+ 0 - 1
o2web/source/x_desktop/smapsso.html

@@ -5,7 +5,6 @@
     <meta charset="UTF-8">
     <title>登录中...</title>
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
     <script>
         function getServiceAddress(config, callback){

+ 0 - 1
o2web/source/x_desktop/sso.html

@@ -5,7 +5,6 @@
     <meta charset="UTF-8">
     <title></title>
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
     <script>
         function getServiceAddress(config, callback){

+ 0 - 1
o2web/source/x_desktop/weixinsso.html

@@ -6,7 +6,6 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="js/weixinsso.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
 

+ 2 - 3
o2web/source/x_desktop/work.html

@@ -7,10 +7,9 @@
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
-        <script src="js/base.js"></script>
-        <script src="js/work.js"></script>
+        <script src="js/base.min.js"></script>
+        <script src="js/work.min.js"></script>
 
         <title>WORK</title>
         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

+ 2 - 3
o2web/source/x_desktop/workmobile.html

@@ -7,11 +7,10 @@
         <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
         <script src="../o2_core/o2.min.js"></script>
-        <script src="../o2_core/compatible.min.js"></script>
         <script src="../o2_lib/Decimal.js"></script>
         <script src="js/o2m.api.js"></script>
-        <script src="js/base.js"></script>
-        <script src="js/work.js"></script>
+        <script src="js/base.min.js"></script>
+        <script src="js/work.min.js"></script>
         <script>layout.mobile = true;</script>
         <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />
         <meta content="yes" name="apple-mobile-web-app-capable" />

+ 0 - 1
o2web/source/x_desktop/workmobilewithaction.html

@@ -8,7 +8,6 @@
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
 
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script src="../o2_lib/Decimal.js"></script>
     <script src="js/o2m.api.js"></script>
     <script src="js/base.min.js"></script>

+ 0 - 1
o2web/source/x_desktop/zhengwuDingdingSso.html

@@ -6,7 +6,6 @@
     <link rel="stylesheet" href="css/mBoxNotice.css" charset="UTF-8" />
     <link rel="stylesheet" href="css/mBoxTooltip.css" charset="UTF-8" />
     <script src="../o2_core/o2.min.js"></script>
-    <script src="../o2_core/compatible.min.js"></script>
     <script type="text/javascript" src="http://g.alicdn.com/ilw/ding/0.7.3/scripts/dingtalk.js"></script>
     <script src="js/zhengwuDingdingSso.js"></script>
     <script src="../o2_lib/Decimal.js"></script>

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio