Пример #1
0
        it('setPosition when resize', function(done) {
            overlay.hide().destroy();
            overlay = new Overlay();
            var setPosition = sinon.spy(overlay, '_setPosition');
            expect(setPosition.called).not.to.be.ok();
            overlay.render();
            expect(setPosition.callCount).to.be(1);
            overlay.show();
            expect(setPosition.callCount).to.be(2);

            $(window).resize();

            setTimeout(function() {
                expect(setPosition.callCount).to.be(3);

                overlay.set("visible", false);

                $(window).resize();

                setTimeout(function () {
                    expect(setPosition.callCount).to.be(3);
                    done();
                }, 100);
            }, 100);
        });
Пример #2
0
 function showImmediately() {
   _$jscoverage['/bubble.js'].functionData[9]++;
   _$jscoverage['/bubble.js'].lineData[185]++;
   var xy = getXy(bubble);
   _$jscoverage['/bubble.js'].lineData[186]++;
   if (visit36_186_1(xy)) {
     _$jscoverage['/bubble.js'].lineData[187]++;
     bubble.move(xy[0], xy[1]);
     _$jscoverage['/bubble.js'].lineData[188]++;
     var archor = getTopPosition(bubble);
     _$jscoverage['/bubble.js'].lineData[189]++;
     if (visit37_189_1(archor)) {
       _$jscoverage['/bubble.js'].lineData[190]++;
       xy[1] = archor.get('y') + archor.get('el').outerHeight();
       _$jscoverage['/bubble.js'].lineData[191]++;
       bubble.move(xy[0], xy[1]);
     }
     _$jscoverage['/bubble.js'].lineData[193]++;
     if (visit38_193_1(!bubble.get('visible'))) {
       _$jscoverage['/bubble.js'].lineData[194]++;
       bubble.show();
     } else {
       _$jscoverage['/bubble.js'].lineData[196]++;
       logger.debug('already show by selectionChange');
     }
   }
 }
Пример #3
0
        it("对齐居中有效", function () {

            var o = new Overlay({
                width: 400,
                elCls: "popup",
                resize: {
                    handlers: ["t"]
                },
                content: "render by javascript"
            });

            o.set("align", {
                points: ['cc', 'cc']
            });
            o.show();

            expect(parseInt(o.get('el').css('left'), 10))
                .toBeEqual(Math.ceil((Dom.viewportWidth() - o.get('el').outerWidth()) / 2));


            expect(parseInt(o.get('el').css("top"), 10))
                .toBeEqual(Math.ceil((Dom.viewportHeight() - o.get('el').outerHeight()) / 2));

            o.destroy();

        });
Пример #4
0
 store.on("pending", function() {
   o.get("el").css(css);
   o.center();
   o.show();
   setTimeout(function() {
     store.retrySave()
   }, 1E3)
 });
Пример #5
0
 it('set align to null', function() {
     overlay.hide().destroy();
     overlay = new Overlay({
         align: null
     });
     var pin = sinon.spy(Position, 'pin');
     overlay.show();            
     expect(pin.called).not.to.be.ok();
 });
Пример #6
0
 store.on('pending', function () {
     o.get('el').css(css);
     o.center();
     o.show();
     // 轮训,直到用户允许
     setTimeout(function () {
         store.retrySave();
     }, 1000);
 });
Пример #7
0
 it('setPosition', function() {
     overlay.hide().destroy();
     overlay = new Overlay();
     var setPosition = sinon.spy(overlay, '_setPosition');
     expect(setPosition.called).not.to.be.ok();
     overlay.render();
     expect(setPosition.calledOnce).to.be.ok();
     overlay.show();
     expect(setPosition.calledTwice).to.be.ok();
 });
Пример #8
0
        it("show/hide 事件顺利触发", function () {

            var hideCall = jasmine.createSpy(),
                showCall = jasmine.createSpy();

            o.show();

            o.on('hide', function () {
                hideCall();
            });
            o.on('show', function () {
                showCall();
            });

            o.hide();
            o.show();
            expect(hideCall).toHaveBeenCalled();
            expect(showCall).toHaveBeenCalled();
            o.detach("show hide");

        });
Пример #9
0
 function showImmediately() {
     var xy = getXy(bubble);
     if (xy) {
         bubble.move(xy[0], xy[1]);
         var archor = getTopPosition(bubble);
         if (archor) {
             xy[1] = archor.get('y') + archor.get('el').outerHeight();
             bubble.move(xy[0], xy[1]);
         }
         if (!bubble.get('visible')) {
             bubble.show();
         }
     }
 }
Пример #10
0
  store.on('pending', function() {
  _$jscoverage['/local-storage.js'].functionData[3]++;
  _$jscoverage['/local-storage.js'].lineData[68]++;
  o.get('el').css(css);
  _$jscoverage['/local-storage.js'].lineData[69]++;
  o.center();
  _$jscoverage['/local-storage.js'].lineData[70]++;
  o.show();
  _$jscoverage['/local-storage.js'].lineData[72]++;
  setTimeout(function() {
  _$jscoverage['/local-storage.js'].functionData[4]++;
  _$jscoverage['/local-storage.js'].lineData[73]++;
  store.retrySave();
}, 1000);
});
Пример #11
0
 function showImmediately() {
     var xy = getXy(bubble);
     if (xy) {
         bubble.move(xy[0], xy[1]);
         var archor = getTopPosition(bubble);
         if (archor) {
             xy[1] = archor.get('y') + archor.get('el').outerHeight();
             bubble.move(xy[0], xy[1]);
         }
         if (!bubble.get('visible')) {
             bubble.show();
         } else {
             logger.debug('already show by selectionChange');
         }
     }
 }
Пример #12
0
 function showImmediately() {
   var xy = getXy(bubble);
   if(xy) {
     bubble.move(xy[0], xy[1]);
     var archor = getTopPosition(bubble);
     if(archor) {
       xy[1] = archor.get("y") + archor.get("el").outerHeight();
       bubble.move(xy[0], xy[1])
     }
     if(!bubble.get("visible")) {
       bubble.show()
     }else {
       logger.debug("already show by selectionChange")
     }
   }
 }
Пример #13
0
KISSY.add("editor/plugin/local-storage", ["editor", "overlay", "./flash-bridge"], function(S, require) {
  var Editor = require("editor");
  var Overlay = require("overlay");
  var FlashBridge = require("./flash-bridge");
  var ie = S.UA.ieMode;
  if((!ie || ie > 8) && window.localStorage) {
    return window.localStorage
  }
  var swfSrc = Editor.Utils.debugUrl("plugin/local-storage/assets/swfstore.swf?t=" + +new Date);
  var css = {width:215, border:"1px solid red"}, reverseCss = {width:0, border:"none"};
  var o = new Overlay({prefixCls:"ks-editor-", elStyle:{background:"white"}, width:"0px", content:"<h1 style='" + "text-align:center;'>\u8bf7\u70b9\u51fb\u5141\u8bb8</h1>" + "<div class='storage-container'></div>", zIndex:Editor.baseZIndex(Editor.ZIndexManager.STORE_FLASH_SHOW)});
  o.render();
  o.show();
  var store = new FlashBridge({src:swfSrc, render:o.get("contentEl").one(".storage-container"), params:{flashVars:{useCompression:true}}, attrs:{height:138, width:"100%"}, methods:["setItem", "removeItem", "getItem", "setMinDiskSpace", "getValueOf"]});
  S.ready(function() {
    setTimeout(function() {
      o.center()
    }, 0)
  });
  store.on("pending", function() {
    o.get("el").css(css);
    o.center();
    o.show();
    setTimeout(function() {
      store.retrySave()
    }, 1E3)
  });
  store.on("save", function() {
    o.get("el").css(reverseCss)
  });
  var oldSet = store.setItem;
  S.mix(store, {_ke:1, getItem:function(k) {
    return this["getValueOf"](k)
  }, retrySave:function() {
    var self = this;
    self.setItem(self.lastSave.k, self.lastSave.v)
  }, setItem:function(k, v) {
    var self = this;
    self.lastSave = {k:k, v:v};
    oldSet.call(self, k, v)
  }});
  store.on("contentReady", function() {
    store._ready = 1
  });
  return store
});
Пример #14
0
Dialog.prototype.show = function(){
  var overlay = this._overlay;

  this.emit('show');

  if (overlay) {
    overlay.show();
    this.el.addClass('modal');
  }

  // escape
  if (!overlay || overlay.closable) this.escapable();

  this.el.appendTo('body');
  this.el.css({ marginLeft: -(this.el.width() / 2) + 'px' });
  this.emit('show');
  return this;
};
KISSY.add('kg/editor-plugins/1.1.0/local-storage',["editor","overlay","./flash-bridge","util","ua"],function(S ,require, exports, module) {
/**
 * @ignore
 * localStorage support for ie<8
 * @author yiminghe@gmail.com
 */

var Editor = require('editor');
var Overlay = require('overlay');
var FlashBridge = require('./flash-bridge');
var util = require('util');
var ie = require('ua').ieMode;

// 原生或者已经定义过立即返回
// ie 使用 flash 模拟的 localStorage,序列化性能不行
if ((!ie || ie > 8) && window.localStorage) {
    //原生的立即可用
    module.exports = window.localStorage;
} else {

// 国产浏览器用随机数/时间戳试试 ! 是可以的
    var swfSrc = Editor.Utils.debugUrl('plugin/local-storage/assets/swfstore.swf?refresh=' + (+new Date()));

    var css = {
        width: 215,
        border: '1px solid red'
    }, reverseCss = {
        width: 0,
        border: 'none'
    };

//Dialog 不行
    var o = new Overlay({
        prefixCls: 'ks-editor-',
        elStyle: {
            background: 'white'
        },
        width: '0px',
        content: '<h1 style="' + 'text-align:center;">请点击允许</h1>' +
            '<div class="storage-container"></div>',
        zIndex: Editor.baseZIndex(Editor.ZIndexManager.STORE_FLASH_SHOW)
    });
    o.render();
    o.show();

    var store = new FlashBridge({
        src: swfSrc,
        render: o.get('contentEl').one('.storage-container'),
        params: {
            flashVars: {
                useCompression: true
            }
        },
        attrs: {
            height: 138,
            width: '100%'
        },
        methods: ['setItem', 'removeItem', 'getItem', 'setMinDiskSpace', 'getValueOf']
    });

// 必须在视窗范围内才可以初始化,触发 contentReady 事件
    util.ready(function () {
        setTimeout(function () {
            o.center();
        }, 0);
    });

    store.on('pending', function () {
        o.get('el').css(css);
        o.center();
        o.show();
        // 轮训,直到用户允许
        setTimeout(function () {
            store.retrySave();
        }, 1000);
    });

    store.on('save', function () {
        o.get('el').css(reverseCss);
    });

    var oldSet = store.setItem;

    util.mix(store, {
        _ke: 1,
        getItem: function (k) {
            return this.getValueOf(k);
        },
        retrySave: function () {
            var self = this;
            self.setItem(self.lastSave.k, self.lastSave.v);
        },
        setItem: function (k, v) {
            var self = this;
            self.lastSave = {k: k, v: v};
            oldSet.call(self, k, v);
        }
    });

//非原生,等待flash通知
    store.on('contentReady', function () {
        store._ready = 1;
    });

    /*
     'quotaExceededError'
     'error'
     'save'
     'inadequateDimensions'
     */

    module.exports = store;
}
});
Пример #16
0
        $("#J_uploadImage").click(function(){
            if(!$("#photoDialog")[0]){
                var html = "";
                html += '<div id="photoDialog" class="g-dialog photo-dialog">';
                html += '<div class="dialog-content">';
                html += '<div class="hd"><h3>上传图片</h3></div>';
                html += '<div class="bd clearfix">';
                html += '<form id="faceUpload" name="faceUpload" enctype="multipart/form-data" method="post" target="photo-frame" action="/uploadPic/select">';
                html += '<div class="photo-row clearfix">';
                html += '<input type="button" value="上传图片" class="bbl-btn upload-cover" />';
                html += '<input type="file" class="upload-btn" name="filedata" id="J_FilePath" />';
                html += '</div>';
                html += '<div class="photo-row pt10 pb15">';
                html += '<span class="gc6">支持JPG、GIF、PNG格式,且文件小于2M</span>';
                html += '</div>';
                html += '<div class="photo-row">';
                html += '<div class="photo-box">';
                html += '<span><img src="/assets/img/ui/blank.gif" id="photo" alt="" /> </span>';
                html += '</div>';
                html += '</div>';
                html += '</form>';
                html += '<form class="mt20" id="faceUpload2" name="faceUpload2" enctype="multipart/form-data" method="post" action="/site/doUploadPic">';
                html += '<input type="hidden" value="" name="thumb-path" id="thumb-path" />';
                html += '<input type="hidden" value="" name="area-x1" id="area-x1" />';
                html += '<input type="hidden" value="" name="area-y1" id="area-y1" />';
                html += '<input type="hidden" value="" name="area-x2" id="area-x2" />';
                html += '<input type="hidden" value="" name="area-y2" id="area-y2" />';
                html += '<div class="photo-row face-submit dn">';
                html += '<input type="submit" class="bbl-btn submit" value="保存图片"/>';
                html += '<span id="J_Waiting" class="ml10 gc6 dn"><img src="/assets/img/ui/loading16.gif">请耐心等待…</span>';
                html += '</div>';
                html += '</form>';
                html += '<iframe style="width:0px;height:0px;padding:0px;" src="" frameborder="0" name="photo-frame"></iframe>';
                html += '</div>';
                html += '<a class="close" href="javascript:;"></a>';
                html += '</div>';
                html += '</div>';
            //    $("body").append(html);
                uploadOverlay = new Overlay({
                    template:html,
                    width:450,
                    zIndex: 9999,
                    align: {
                        selfXY: [ "50%", "50%" ],
                        baseXY: [ "50%", "50%" ]
                    }
                });
                uploadOverlay.show();
                Mask.set({ backgroundColor:'#000', opacity:0.3 }).show();


            }else{
                uploadOverlay = new Overlay({
                    template:'#photoDialog',
                    width: 450,
                    zIndex: 9999,
                    align: {
                        selfXY: [ "50%", "50%" ],
                        baseXY: [ "50%", "50%" ]
                    }
                });
                uploadOverlay.show();
                Mask.show()
            }
            $("#J_FilePath").change(function(){
                $("#faceUpload").submit();
                $('#photo').attr("src","/assets/img/ui/loading1.gif");
            });
            $("#faceUpload2").submit(function(){
                $this = $(this);
                $("#faceUpload2 input[type=submit]")[0].disabled = "disabled";
                $("#faceUpload2 input[type=submit]").removeClass("bbl-btn").addClass("disabled");
                $("#J_Waiting").show();
                $.post($this.attr("action"),$this.serializeArray(),function(data){
                    $("#J_Waiting").hide();
                    $("#faceUpload2 input[type=submit]")[0].disabled = "";
                    $("#faceUpload2 input[type=submit]").removeClass("disabled").addClass("bbl-btn");
                    if(data.code=="100"){
                        uploadOverlay.hide()
                        Mask.hide()

                        $("#J_uploadImgShow").attr("src",data.src)
                        $(".site-logo").show()
                        $("#faceUpload")[0].reset();
                        $("#faceUpload2")[0].reset();
                        $("#J_uploadImg").val(data.src)
                        $("#faceUpload2 .face-submit").hide();
                        $.smeite.photoarea.cancelSelection();

                    }
                });
                return false;
            });
            $("#photoDialog .close").unbind("click").click(function(){
                $("#faceUpload")[0].reset();
                $("#faceUpload2")[0].reset();
                $('#photo').attr("src","");
                $("#faceUpload2 .face-submit").hide();
                if($.smeite.photoarea!=null){
                    $.smeite.photoarea.cancelSelection();
                }
                uploadOverlay.hide()
                Mask.hide()
            });
        });
Пример #17
0
 exports.loading = function() {
     !maskCount && mask.show();
     maskCount++;
 };
Пример #18
0
KISSY.add(function(S, require) {
  _$jscoverage['/local-storage.js'].functionData[0]++;
  _$jscoverage['/local-storage.js'].lineData[7]++;
  var Editor = require('editor');
  _$jscoverage['/local-storage.js'].lineData[8]++;
  var Overlay = require('overlay');
  _$jscoverage['/local-storage.js'].lineData[9]++;
  var FlashBridge = require('./flash-bridge');
  _$jscoverage['/local-storage.js'].lineData[11]++;
  var ie = S.UA.ieMode;
  _$jscoverage['/local-storage.js'].lineData[15]++;
  if (visit1_15_1((visit2_15_2(!ie || visit3_15_3(ie > 8))) && window.localStorage)) {
    _$jscoverage['/local-storage.js'].lineData[17]++;
    return window.localStorage;
  }
  _$jscoverage['/local-storage.js'].lineData[21]++;
  var swfSrc = Editor.Utils.debugUrl('plugin/local-storage/assets/swfstore.swf?t=' + (+new Date()));
  _$jscoverage['/local-storage.js'].lineData[23]++;
  var css = {
  width: 215, 
  border: '1px solid red'}, reverseCss = {
  width: 0, 
  border: 'none'};
  _$jscoverage['/local-storage.js'].lineData[32]++;
  var o = new Overlay({
  prefixCls: 'ks-editor-', 
  elStyle: {
  background: 'white'}, 
  width: '0px', 
  content: '<h1 style="' + 'text-align:center;">\u8bf7\u70b9\u51fb\u5141\u8bb8</h1>' + '<div class="storage-container"></div>', 
  zIndex: Editor.baseZIndex(Editor.ZIndexManager.STORE_FLASH_SHOW)});
  _$jscoverage['/local-storage.js'].lineData[42]++;
  o.render();
  _$jscoverage['/local-storage.js'].lineData[43]++;
  o.show();
  _$jscoverage['/local-storage.js'].lineData[45]++;
  var store = new FlashBridge({
  src: swfSrc, 
  render: o.get('contentEl').one('.storage-container'), 
  params: {
  flashVars: {
  useCompression: true}}, 
  attrs: {
  height: 138, 
  width: '100%'}, 
  methods: ['setItem', 'removeItem', 'getItem', 'setMinDiskSpace', 'getValueOf']});
  _$jscoverage['/local-storage.js'].lineData[61]++;
  S.ready(function() {
  _$jscoverage['/local-storage.js'].functionData[1]++;
  _$jscoverage['/local-storage.js'].lineData[62]++;
  setTimeout(function() {
  _$jscoverage['/local-storage.js'].functionData[2]++;
  _$jscoverage['/local-storage.js'].lineData[63]++;
  o.center();
}, 0);
});
  _$jscoverage['/local-storage.js'].lineData[67]++;
  store.on('pending', function() {
  _$jscoverage['/local-storage.js'].functionData[3]++;
  _$jscoverage['/local-storage.js'].lineData[68]++;
  o.get('el').css(css);
  _$jscoverage['/local-storage.js'].lineData[69]++;
  o.center();
  _$jscoverage['/local-storage.js'].lineData[70]++;
  o.show();
  _$jscoverage['/local-storage.js'].lineData[72]++;
  setTimeout(function() {
  _$jscoverage['/local-storage.js'].functionData[4]++;
  _$jscoverage['/local-storage.js'].lineData[73]++;
  store.retrySave();
}, 1000);
});
  _$jscoverage['/local-storage.js'].lineData[77]++;
  store.on('save', function() {
  _$jscoverage['/local-storage.js'].functionData[5]++;
  _$jscoverage['/local-storage.js'].lineData[78]++;
  o.get('el').css(reverseCss);
});
  _$jscoverage['/local-storage.js'].lineData[81]++;
  var oldSet = store.setItem;
  _$jscoverage['/local-storage.js'].lineData[83]++;
  S.mix(store, {
  _ke: 1, 
  getItem: function(k) {
  _$jscoverage['/local-storage.js'].functionData[6]++;
  _$jscoverage['/local-storage.js'].lineData[86]++;
  return this.getValueOf(k);
}, 
  retrySave: function() {
  _$jscoverage['/local-storage.js'].functionData[7]++;
  _$jscoverage['/local-storage.js'].lineData[89]++;
  var self = this;
  _$jscoverage['/local-storage.js'].lineData[90]++;
  self.setItem(self.lastSave.k, self.lastSave.v);
}, 
  setItem: function(k, v) {
  _$jscoverage['/local-storage.js'].functionData[8]++;
  _$jscoverage['/local-storage.js'].lineData[93]++;
  var self = this;
  _$jscoverage['/local-storage.js'].lineData[94]++;
  self.lastSave = {
  k: k, 
  v: v};
  _$jscoverage['/local-storage.js'].lineData[95]++;
  oldSet.call(self, k, v);
}});
  _$jscoverage['/local-storage.js'].lineData[100]++;
  store.on('contentReady', function() {
  _$jscoverage['/local-storage.js'].functionData[9]++;
  _$jscoverage['/local-storage.js'].lineData[101]++;
  store._ready = 1;
});
  _$jscoverage['/local-storage.js'].lineData[111]++;
  return store;
});
Пример #19
0
], function (S, require) {
    var Editor = require('editor');
    var Overlay = require('overlay');
    var FlashBridge = require('./flash-bridge');
    var ie = S.UA.ieMode;    // 原生或者已经定义过立即返回
                             // ie 使用 flash 模拟的 localStorage,序列化性能不行
    // 原生或者已经定义过立即返回
    // ie 使用 flash 模拟的 localStorage,序列化性能不行
    if ((!ie || ie > 8) && window.localStorage) {
        //原生的立即可用
        return window.localStorage;
    }    // 国产浏览器用随机数/时间戳试试 ! 是可以的
    // 国产浏览器用随机数/时间戳试试 ! 是可以的
    var swfSrc = Editor.Utils.debugUrl('plugin/local-storage/assets/swfstore.swf?t=' + +new Date());
    var css = {
            width: 215,
            border: '1px solid red'
        }, reverseCss = {
            width: 0,
            border: 'none'
        };    //Dialog 不行
    //Dialog 不行
    var o = new Overlay({
            prefixCls: 'ks-editor-',
            elStyle: { background: 'white' },
            width: '0px',
            content: '<h1 style="' + 'text-align:center;">\u8BF7\u70B9\u51FB\u5141\u8BB8</h1>' + '<div class="storage-container"></div>',
            zIndex: Editor.baseZIndex(Editor.ZIndexManager.STORE_FLASH_SHOW)
        });
    o.render();
    o.show();
    var store = new FlashBridge({
            src: swfSrc,
            render: o.get('contentEl').one('.storage-container'),
            params: { flashVars: { useCompression: true } },
            attrs: {
                height: 138,
                width: '100%'
            },
            methods: [
                'setItem',
                'removeItem',
                'getItem',
                'setMinDiskSpace',
                'getValueOf'
            ]
        });    // 必须在视窗范围内才可以初始化,触发 contentReady 事件
    // 必须在视窗范围内才可以初始化,触发 contentReady 事件
    S.ready(function () {
        setTimeout(function () {
            o.center();
        }, 0);
    });
    store.on('pending', function () {
        o.get('el').css(css);
        o.center();
        o.show();    // 轮训,直到用户允许
        // 轮训,直到用户允许
        setTimeout(function () {
            store.retrySave();
        }, 1000);
    });
    store.on('save', function () {
        o.get('el').css(reverseCss);
    });
    var oldSet = store.setItem;
    S.mix(store, {
        _ke: 1,
        getItem: function (k) {
            return this.getValueOf(k);
        },
        retrySave: function () {
            var self = this;
            self.setItem(self.lastSave.k, self.lastSave.v);
        },
        setItem: function (k, v) {
            var self = this;
            self.lastSave = {
                k: k,
                v: v
            };
            oldSet.call(self, k, v);
        }
    });    //非原生,等待flash通知
    //非原生,等待flash通知
    store.on('contentReady', function () {
        store._ready = 1;
    });    /*
     'quotaExceededError'
     'error'
     'save'
     'inadequateDimensions'
     */
    /*
     'quotaExceededError'
     'error'
     'save'
     'inadequateDimensions'
     */
    return store;
});