Mobilemode_trace.js 1.76 KB
define('Mobilemode_trace', ['utils'], function(_u) {
    var ADMIN_SET = "Mobilemode_Admin_Set";

    var Mobilemode_Admin_Set = {
        // appId: appHomepageId
        pageHistory: {},
        // appid: [formmodeappid, moduleid]
        moduleHistory: {},
        /* 拖动的记录 
        ** status: 0|1|2|3 初始状态|与属性配置同列|与插件列表同列|在属性配置左侧
        ** isUpperHalf: 页面树是否是在上半区
        ** $elstyle: 页面树的样式
        ** $refstyle: 依赖(属性配置或插件列表)样式
        ** $constyle: 容器样式
        */
        dragulaHistory: {},
        /**
         * 左右拉伸
         * width: right-container的宽度
         */
        colstretchHistroy: {},
        getAdminSet: function() {
            var adminSet = localStorage.getItem(ADMIN_SET) || "{}";

            return JSON.parse(adminSet);
        },
        isexist: function(key) {
            return !!this[key];
        }
    };

    (function() {
        var adminSet = localStorage.getItem(ADMIN_SET);

        if(adminSet) return;

        localStorage.setItem(ADMIN_SET, "{}");
    }());

    return {
        DRAGULA: "dragulaHistory",
        COL_STRETCH: "colstretchHistroy",
        get: function(key) {
            if(!Mobilemode_Admin_Set.isexist(key)) return;

            var adminSet = Mobilemode_Admin_Set.getAdminSet(),
                item = adminSet[key];

            return item || {};
        },
        set: function(key, value) {
            if(!_u.isString(value)) {
                value = _u.extend(this.get(key), value);
            }

            var adminSet = Mobilemode_Admin_Set.getAdminSet();

            adminSet[key] = value;
            localStorage.setItem(ADMIN_SET, JSON.stringify(adminSet));
        }
    }
});